.calendar-shell{max-width:1080px;margin:auto;padding:24px 20px 60px;font-size:16px}.calendar-heading,.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.calendar-heading h1{font-size:clamp(2rem,6vw,3.8rem);margin:0}.calendar-card{background:#151218;border:1px solid #5b354c;border-radius:22px;padding:24px;margin-top:24px}.calendar-toolbar h2{font-family:inherit;font-size:1.25rem;text-transform:capitalize}.calendar-shell button{font:600 16px system-ui;min-height:44px;padding:10px 14px;border:1px solid #874363;border-radius:12px;background:#24131f;color:white;cursor:pointer}.calendar-shell button:disabled{opacity:.5;cursor:wait}.calendar-shell button:focus-visible,.calendar-shell a:focus-visible{outline:3px solid #fff;outline-offset:3px}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin:20px 0}.calendar-weekday{text-align:center;font-weight:600;color:#ff80bc;min-width:0;font-size:14px}.calendar-day{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:62px!important;padding:8px 2px!important;font-size:16px!important}.calendar-day[aria-pressed=true]{background:#ff2188;color:white;border-color:#ff80bc}.calendar-day[data-today=true]{box-shadow:inset 0 0 0 2px #fff}.calendar-day small{font-size:12px;line-height:1.2}.calendar-event{display:grid;grid-template-columns:90px minmax(0,1fr);gap:14px;border-top:1px solid #573044;padding:18px 0}.calendar-event time{font-weight:700;color:#ff80bc;font-size:20px}.calendar-event h3{font-family:inherit;font-size:18px;margin:0;overflow-wrap:anywhere}.calendar-event p{margin:6px 0;color:#cfc9d0}.calendar-event a{color:#ff80bc}.calendar-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:12px}.calendar-meta{font-size:14px;color:#c7bfca;line-height:1.6}.calendar-event[data-completed=true]{opacity:.65}#reminder-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}#reminder-form label,.calendar-toolbar label{display:grid;gap:8px;font-size:16px}.calendar-wide{grid-column:1/-1}.calendar-shell input,.calendar-shell select{min-width:0;width:100%;box-sizing:border-box;border:1px solid #6c4f63;border-radius:12px;background:#0b0b0e;color:white;padding:12px;font:16px system-ui}#save{background:#ff2188}#status{color:#ff80bc} @media(max-width:520px){.calendar-shell{padding:20px 12px}.calendar-card{padding:16px}.calendar-grid{gap:4px}.calendar-event{grid-template-columns:70px minmax(0,1fr)}#reminder-form{grid-template-columns:1fr}.calendar-heading h1{font-size:2rem}.calendar-weekday{font-size:14px}}
