.calendar-panel{--calendar-line:#a8c3db26;--calendar-muted:#9cb1c4;min-width:0;margin-bottom:20px;border:1px solid var(--calendar-line);border-radius:13px;padding:24px;color:#dfebf5;background:radial-gradient(ellipse at 100% 0,#78cfce0d,transparent 55%),linear-gradient(135deg,#152638da,#0c1825ee);box-shadow:inset 0 1px #ffffff04}.calendar-panel [hidden]{display:none!important}.calendar-panel button:focus-visible,.calendar-panel a:focus-visible,.calendar-panel select:focus-visible{outline:2px solid #afdcd7;outline-offset:3px}.calendar-panel .btn{min-height:36px;font-size:10px;padding:9px 12px;white-space:normal;line-height:1.5}
.calendar-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:17px}.calendar-heading>div{min-width:0}.calendar-heading .eyebrow{display:block;font-size:8px;letter-spacing:1.7px;color:#8fabbd;margin-bottom:8px}.calendar-heading h2{display:flex;align-items:center;gap:9px;font-size:21px;font-weight:500;letter-spacing:-.6px;margin:0}.calendar-heading h2 svg{width:20px;height:20px;color:#a1d1d1}.calendar-heading p{font-size:11px;color:var(--calendar-muted);line-height:1.7;margin:8px 0 0}.calendar-heading>.btn{flex-shrink:0}.calendar-toolbar{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:13px 0 16px;border-top:1px solid var(--calendar-line);font-size:10px;color:#b2ccda}.calendar-toolbar>[data-calendar-scope]{overflow-wrap:anywhere}.calendar-sync-controls{display:flex;align-items:flex-end;gap:9px;flex-shrink:0;max-width:65%}.calendar-sync-controls label{display:grid;gap:5px;min-width:0;margin:0;font-size:9px;color:#9db7c8}.calendar-sync-controls select{width:210px;max-width:100%;min-height:36px;padding:8px 26px 8px 10px;border:1px solid #abc5da36;border-radius:7px;font-size:10px;background:#0d1c2b;color:#d0e2ee}.calendar-sync-controls>.btn{flex-shrink:0}
.calendar-accounts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:18px}.calendar-account{padding:15px;border:1px solid #b4d1e426;border-radius:9px;background:#0a172453;min-width:0}.calendar-account-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.calendar-account-head>div{min-width:0}.calendar-account-head strong{display:block;font-size:12px;font-weight:500;line-height:1.5;overflow-wrap:anywhere}.calendar-account-head span:not(.calendar-state){display:block;color:#a5becf;font-size:10px;line-height:1.6;margin-top:3px;overflow-wrap:anywhere}.calendar-account-head small{display:block;color:#7e9cad;font-size:9px;line-height:1.6;margin-top:4px}.calendar-state{display:inline-flex;align-items:center;border:1px solid #98b9cf37;border-radius:5px;padding:4px 6px;max-width:100%;font-size:8px;line-height:1.5;color:#adbfcd;background:#99b9cf08;overflow-wrap:anywhere}.calendar-account-head>.calendar-state{flex-shrink:0;max-width:45%}.calendar-state.good{color:#b4e2d7;border-color:#a3d7c53b;background:#83c4b609}.calendar-state.attention{color:#e5c4a9;border-color:#d3ae7e40;background:#ce9c6509}.calendar-state.pending{color:#c3dfea;border-color:#a6d5e54b}.calendar-account-meta{display:grid;gap:5px;border-top:1px solid #a5c8d819;padding-top:10px;margin-top:11px;font-size:9px;color:#829faf;line-height:1.65;overflow-wrap:anywhere}.calendar-account-meta b{font-weight:400;color:#b7cedb}.calendar-account-error,.calendar-account-note{font-size:10px;line-height:1.7;margin:10px 0 0;overflow-wrap:anywhere}.calendar-account-error{color:#ebbfab}.calendar-account-note{color:#90aaba}
.calendar-range{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;color:#9fb8c9;font-size:10px;line-height:1.6;margin:0 0 12px}.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin-bottom:19px}.calendar-day{display:grid;place-items:center;gap:6px;padding:11px 4px;background:#08172580;border:1px solid #a6c7db24;border-radius:8px;color:#a3bccd;min-width:0;cursor:pointer;transition:border-color .18s,background .18s}.calendar-day>span{font-size:9px}.calendar-day>strong{font-size:21px;line-height:1.1;font-weight:450;color:#c9dce7}.calendar-day>small{font-size:8px;color:#7e9aac}.calendar-day:hover{border-color:#a9d5d44d}.calendar-day[aria-pressed=true]{border-color:#9ad5cc60;background:linear-gradient(150deg,#568b892a,#234b5714);box-shadow:inset 0 1px #ceeee515}.calendar-day[aria-pressed=true]>strong{color:#d7f0e8}.calendar-day[aria-pressed=true]>small{color:#a5c9c7}.calendar-agenda-heading{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:0 0 14px;border-bottom:1px solid var(--calendar-line)}.calendar-agenda-heading h3{margin:0;font-size:13px;line-height:1.5;font-weight:500;color:#d8e8f2}.calendar-agenda-heading .calendar-state{flex-shrink:0;max-width:45%}
.calendar-event{display:flex;align-items:flex-start;gap:20px;padding:18px 0;border-bottom:1px solid #a6c8df1a;min-width:0}.calendar-event:last-child{border-bottom:0}.calendar-event-time{flex:0 0 155px;min-width:0;display:grid;gap:6px;font-size:11px;line-height:1.6;color:#aacee0;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.calendar-event-time small{font-size:9px;color:#8eabbc}.calendar-event-time.all-day>span{font-size:10px;letter-spacing:.3px;color:#dfc799}.calendar-event-body{min-width:0;flex:1}.calendar-event h4{font-size:13px;line-height:1.6;margin:0;font-weight:500;color:#e3edf5;overflow-wrap:anywhere}.calendar-event-source{display:flex;gap:4px 11px;flex-wrap:wrap;font-size:9px;line-height:1.6;color:#92adbf;margin-top:7px;overflow-wrap:anywhere}.calendar-event-source>span:first-child{color:#b8d1dc}.calendar-source-zone{font-size:9px;line-height:1.6;margin:7px 0 0;color:#819eaf}.calendar-source-zone.attention{color:#d7b59b}.calendar-event-link{font-size:10px;line-height:1.6;color:#add9db;display:inline-flex;gap:6px;flex-shrink:0;padding:2px 0}.calendar-event-link:hover{color:#d2f8f1;text-decoration:underline}.calendar-coverage-note{font-size:10px;line-height:1.7;margin:12px 0 0;color:#d4b99e}
.calendar-empty{padding:18px 0;color:var(--calendar-muted)}.calendar-empty strong{display:block;color:#cadce8;font-size:12px;line-height:1.6;font-weight:500}.calendar-empty p{font-size:11px;line-height:1.7;margin:6px 0 0;max-width:640px}.calendar-feedback{margin:0 0 14px;border:1px solid #9bcebf3b;border-radius:8px;padding:12px 14px;background:#78b6a50b;font-size:11px;line-height:1.7;color:#b9ded2;overflow-wrap:anywhere}.calendar-feedback.calendar-error{color:#eec8b4;border-color:#d8ab8542;background:#bd79480c}.calendar-loading{display:flex;gap:9px;align-items:center;min-height:65px;font-size:11px;color:#9bb6c8}.calendar-loading>span{width:5px;height:5px;border-radius:50%;background:#9ad3cc;animation:calendar-pulse 1.7s ease-in-out infinite alternate}.calendar-footer{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:9px;color:#7e9aaa;line-height:1.65;margin-top:16px;padding-top:13px;border-top:1px solid var(--calendar-line)}.calendar-panel[data-stale=true] [data-calendar-updated]{color:#d3b393}
@keyframes calendar-pulse{to{opacity:.4}}
.calendar-event-title{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;min-width:0}.calendar-state.tentative{color:#e2c59b;border-color:#d1b57f45;background:#c7a56b0c}
@media(max-width:1150px){.calendar-panel{padding:20px}.calendar-account-head{flex-wrap:wrap}.calendar-account-head>.calendar-state{max-width:100%}.calendar-sync-controls{max-width:70%}.calendar-event{gap:14px}.calendar-event-time{flex-basis:135px}}
@media(max-width:850px){.calendar-accounts{grid-template-columns:minmax(0,1fr)}.calendar-account-head{flex-wrap:nowrap}.calendar-account-head>.calendar-state{max-width:45%}.calendar-toolbar{align-items:flex-start;flex-direction:column}.calendar-sync-controls{max-width:none;width:100%}.calendar-sync-controls label{flex:1}.calendar-sync-controls select{width:100%}.calendar-panel{margin-bottom:16px}.calendar-event{flex-wrap:wrap}.calendar-event-time{flex-basis:125px}.calendar-event-link{margin-left:139px}}
@media(max-width:520px){.calendar-panel{padding:21px 18px}.calendar-heading{align-items:flex-start;gap:10px}.calendar-heading h2{font-size:20px;gap:7px}.calendar-heading h2 svg{width:18px;height:18px}.calendar-heading .eyebrow{font-size:7px;letter-spacing:1.3px}.calendar-heading>.btn{font-size:9px;padding:7px 9px}.calendar-sync-controls{align-items:stretch;flex-direction:column}.calendar-sync-controls .btn{align-self:flex-start}.calendar-days{gap:4px}.calendar-day{padding:11px 2px}.calendar-day>strong{font-size:18px}.calendar-day>span{font-size:8px}.calendar-day>small{font-size:7px}.calendar-range{font-size:9px;gap:4px}.calendar-event{gap:8px;display:block;padding:16px 0}.calendar-event-time{font-size:10px;display:flex;gap:8px;flex-wrap:wrap;margin-bottom:7px}.calendar-event-time small{font-size:9px}.calendar-event h4{font-size:12px}.calendar-event-link{margin:10px 0 0}.calendar-account{padding:13px}.calendar-account-head{flex-wrap:wrap;gap:8px}.calendar-account-head>.calendar-state{max-width:100%}.calendar-agenda-heading{align-items:flex-start}.calendar-agenda-heading h3{font-size:12px}.calendar-footer{font-size:8px}.calendar-empty p{font-size:10px}}
@media(prefers-reduced-motion:reduce){.calendar-loading>span{animation:none}.calendar-day{transition:none}}
@media(max-width:1000px){.calendar-event{display:block}.calendar-event-time{display:flex;flex-wrap:wrap;gap:6px 12px;margin-bottom:8px}.calendar-event-link{margin:10px 0 0}}
