@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap";:root{color:#172033;font-synthesis:none;text-rendering:optimizelegibility;background:#edf2f7;font-family:Plus Jakarta Sans,Aptos,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:#edf2f7;min-width:320px}body{background-color:#edf2f7;background-image:linear-gradient(90deg,#0f172a12 1px,#0000 1px),linear-gradient(#0f172a0e 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:32px 32px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;min-width:320px;min-height:100vh;margin:0}button,input,textarea,select{font:inherit;min-height:44px}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid color-mix(in srgb, var(--focus) 74%, transparent);outline-offset:3px}.calendar-shell{--shell-bg:#0b1222;--panel:#111a2c;--panel-soft:#162238;--panel-muted:#0f1728;--tile:#18243a;--tile-hover:#1d2b46;--text:#f8fbff;--heading:#fff;--muted:#9fb0ca;--soft-muted:#7f8ea7;--line:#26364f;--line-strong:#3b5275;--primary:#2f6df6;--primary-strong:#2358d8;--primary-soft:#dbe8ff;--primary-text:#fff;--accent:#f6c84c;--accent-soft:#3a3218;--accent-text:#101727;--teal:#2dd4bf;--danger:#ef5f6f;--danger-soft:#331b25;--focus:#82b1ff;--shadow:0 24px 64px #040a1642;width:min(1220px,100vw - 28px);min-height:calc(100vh - 56px);color:var(--text);background:linear-gradient(90deg, #ffffff0b 1px, transparent 1px), linear-gradient(#ffffff0a 1px, transparent 1px), var(--shell-bg);box-shadow:var(--shadow);background-size:56px 56px,56px 56px,auto;border:1px solid #2f6df6;border-radius:8px;margin:28px auto;padding:28px}.calendar-shell[data-theme=light]{--shell-bg:#f8fafc;--panel:#fff;--panel-soft:#eef4fb;--panel-muted:#f5f8fc;--tile:#fff;--tile-hover:#edf4ff;--text:#1e293b;--heading:#0f172a;--muted:#64748b;--soft-muted:#8290a3;--line:#d6e0ed;--line-strong:#aebfd4;--primary:#2563eb;--primary-strong:#1d4ed8;--primary-soft:#e8f1ff;--primary-text:#fff;--accent:#f59e0b;--accent-soft:#fff4dc;--accent-text:#5a3404;--teal:#0f766e;--danger:#b42318;--danger-soft:#fff0ed;--focus:#f97316;--shadow:0 22px 54px #1e293b1f;background:linear-gradient(90deg, #2563eb0f 1px, transparent 1px), linear-gradient(#0f766e0d 1px, transparent 1px), var(--shell-bg);background-size:56px 56px,56px 56px,auto;border-color:#93b4e8}.shell-header{align-items:center;gap:14px;margin-bottom:28px;display:flex}.brand-mark{color:#fff;background:var(--primary);border:1px solid color-mix(in srgb, var(--primary) 74%, #fff);border-radius:8px;flex:none;place-items:center;width:50px;height:50px;display:grid;box-shadow:inset 0 -10px 18px #03071224}.shell-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;margin-left:auto;display:flex}.eyebrow,.section-label{color:var(--muted);letter-spacing:0;text-transform:uppercase;margin:0;font-size:12px;font-weight:800}h1,h2{letter-spacing:0;margin:0}h1{color:var(--heading);font-size:34px;line-height:1.04}h2{color:var(--heading);overflow-wrap:anywhere;font-size:23px;line-height:1.18}.status-panel,.identity-panel,.tool-panel,.feature-panel,.event-list,.event-detail,.calendar-board-panel{border:1px solid var(--line);background:color-mix(in srgb, var(--panel) 94%, transparent);box-shadow:none;border-radius:8px}.status-panel{min-height:96px;color:var(--primary-soft);align-items:center;gap:10px;padding:24px;font-weight:800;display:flex}.calendar-shell[data-theme=light] .status-panel{color:var(--primary-strong)}.status-panel.error,.inline-error{color:var(--danger);border-color:color-mix(in srgb, var(--danger) 55%, var(--line));background:var(--danger-soft)}.spin{animation:1.1s linear infinite spin}.calendar-workspace{gap:14px;display:grid}.calendar-board-panel{padding:18px}.calendar-board-header{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:16px;display:flex}.board-control-stack{justify-items:end;gap:10px;width:min(43vw,430px);min-width:0;display:grid}.view-tabs,.workspace-tabs{gap:6px;width:100%;min-width:0;display:grid}.view-tabs,.calendar-nav{grid-template-columns:repeat(3,minmax(0,1fr))}.workspace-tabs{grid-template-columns:repeat(4,minmax(0,1fr))}.view-tab,.workspace-tabs a{border:1px solid var(--line-strong);width:100%;min-width:0;min-height:76px;color:var(--primary);background:var(--primary-soft);box-shadow:none;border-radius:8px;justify-content:center;align-items:flex-start;padding:9px 12px;font-size:13px;font-weight:900;text-decoration:none;display:inline-flex}.calendar-shell[data-theme=dark] .view-tab,.calendar-shell[data-theme=dark] .workspace-tabs a{color:#fff;background:#e7f0ff}.calendar-shell[data-theme=dark] .view-tab:not([aria-selected=true]),.calendar-shell[data-theme=dark] .workspace-tabs a{color:#2358d8}.view-tab:hover,.workspace-tabs a:hover{color:var(--primary-text);border-color:var(--primary);background:var(--primary);box-shadow:none}.view-tab[aria-selected=true]{color:var(--primary-text);border-color:var(--primary);background:var(--primary)}.calendar-nav,.button-row{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.calendar-nav{width:100%;display:grid}.compact-button,.header-action{min-width:0;min-height:38px;padding:8px 12px;font-size:13px}.header-action{border-color:var(--line-strong);color:var(--primary);background:var(--primary-soft)}.primary-header-action{color:var(--primary-text);border-color:var(--primary);background:var(--primary)}.theme-toggle{width:44px;color:var(--heading);background:var(--panel-soft);padding:0}.calendar-panel{gap:12px;display:grid}.calendar-panel h2{font-size:21px}.month-calendar-grid,.week-calendar-grid,.year-calendar-grid{min-width:0;display:grid}.month-calendar-grid{border:1px solid var(--line-strong);background:var(--line);border-radius:8px;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;overflow:hidden}.calendar-weekday{min-height:34px;color:var(--muted);background:var(--panel-soft);text-transform:uppercase;place-items:center;font-size:12px;font-weight:900;display:grid}.month-day{min-width:0;min-height:116px;color:var(--text);background:var(--panel-muted);box-shadow:none;text-align:left;border:0;border-radius:0;align-content:start;padding:8px}.month-day:hover,.week-day:hover,.year-month:hover{background:var(--tile-hover);box-shadow:none}.muted-day{color:var(--soft-muted);background:color-mix(in srgb, var(--panel-muted) 78%, #000)}.calendar-shell[data-theme=light] .muted-day{background:#f0f4f9}.today-day{box-shadow:inset 0 0 0 2px var(--accent)}.day-number{min-width:25px;height:25px;color:var(--heading);border-radius:7px;justify-content:center;align-items:center;font-size:13px;font-weight:900;display:inline-flex}.today-day .day-number{color:var(--accent-text);background:var(--accent)}.calendar-event-stack{gap:6px;min-width:0;margin-top:8px;display:grid}.calendar-event-chip,.calendar-more-chip,.empty-calendar-slot{text-overflow:ellipsis;white-space:nowrap;border-radius:7px;min-width:0;font-size:12px;font-weight:900;line-height:1.25;display:block;overflow:hidden}.calendar-event-chip{color:var(--accent-text);background:var(--accent);border:1px solid color-mix(in srgb, var(--accent) 72%, #fff);padding:6px 7px}.calendar-more-chip,.empty-calendar-slot{color:var(--muted)}.week-calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}.week-day{border:1px solid var(--line);background:var(--tile);border-radius:8px;min-width:0;min-height:188px;padding:12px}.week-day-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:8px;padding-bottom:10px;display:flex}.week-day-header span{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:900}.week-day-header strong{color:var(--heading);font-size:24px}.week-event-card{border:1px solid color-mix(in srgb, var(--primary) 44%, var(--line));border-left:4px solid var(--primary);background:color-mix(in srgb, var(--primary) 14%, var(--tile));border-radius:8px;gap:4px;min-width:0;padding:8px;display:grid}.week-event-card strong,.week-event-card span{overflow-wrap:anywhere;min-width:0}.week-event-card strong{color:var(--heading);font-size:13px}.week-event-card span{color:var(--muted);font-size:12px;font-weight:800}.year-calendar-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.year-month{border:1px solid var(--line);background:var(--tile);border-radius:8px;min-width:0;padding:12px}.year-month-header{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.year-month-header h3{color:var(--heading);margin:0;font-size:17px;line-height:1.1}.year-month-header span{color:var(--muted);font-size:12px;font-weight:800}.year-month-days{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin-top:10px;display:grid}.year-month-days span{aspect-ratio:1;background:color-mix(in srgb, var(--primary) 25%, var(--line));border-radius:4px}.year-month-days .muted-dot{background:color-mix(in srgb, var(--line) 50%, transparent)}.year-month-days .event-dot{background:var(--accent)}.identity-panel{padding:18px}.identity-primary{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:18px;padding-bottom:16px;display:flex}.verified-icon{color:var(--teal);flex:none}.identity-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0;display:grid}.fact{border:1px solid var(--line);background:var(--panel-soft);border-radius:8px;align-items:center;gap:12px;min-width:0;padding:12px;display:flex}.fact svg{color:var(--primary);flex:none}.fact strong{color:var(--heading);overflow-wrap:anywhere;margin-top:4px;display:block}.token-section+.token-section{margin-top:14px}.token-row{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.token,.empty-token{overflow-wrap:anywhere;border-radius:8px;align-items:center;min-height:32px;padding:6px 10px;font-size:13px;font-weight:800;display:inline-flex}.token{color:var(--primary);background:var(--primary-soft);border:1px solid color-mix(in srgb, var(--primary) 35%, var(--line))}.empty-token{color:var(--muted);background:var(--panel-soft);border:1px dashed var(--line-strong)}.workspace-grid{grid-template-columns:minmax(280px,.82fr) minmax(360px,1.18fr);gap:14px;display:grid}.tool-panel,.feature-panel,.event-list,.event-detail{padding:18px}.tool-panel{align-content:start;gap:14px;display:grid}.tool-panel h2,.event-list h2,.event-detail h2,.feature-panel h2{font-size:19px}label{color:var(--muted);gap:7px;font-size:13px;font-weight:800;display:grid}input,textarea,select{border:1px solid var(--line-strong);width:100%;color:var(--text);background:var(--panel-muted);border-radius:8px;padding:10px 12px;transition:border-color .18s,box-shadow .18s,background-color .18s}input:hover,textarea:hover,select:hover{border-color:var(--primary)}textarea{resize:vertical}button{border:1px solid var(--primary-strong);min-height:44px;color:var(--primary-text);background:var(--primary);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:8px;font-weight:900;transition:background-color .18s,border-color .18s,color .18s,box-shadow .18s,transform .18s;display:inline-flex}button:hover{background:var(--primary-strong);box-shadow:0 10px 26px color-mix(in srgb, var(--primary) 28%, transparent);transform:translateY(-1px)}button:disabled{cursor:not-allowed;color:var(--soft-muted);border-color:var(--line);background:var(--panel-soft);box-shadow:none;transform:none}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.three-fields{grid-template-columns:repeat(3,minmax(0,1fr))}.calendar-list{gap:8px;display:grid}.calendar-pill{border:1px solid color-mix(in srgb, var(--primary) 34%, var(--line));width:fit-content;max-width:100%;color:var(--primary);background:var(--primary-soft);border-radius:8px;align-items:center;gap:8px;padding:8px 10px;font-weight:800;display:inline-flex}.calendar-pill span{overflow-wrap:anywhere}.feature-grid{grid-template-columns:repeat(2,minmax(320px,1fr));gap:14px;display:grid}.feature-panel{align-content:start;gap:14px;display:grid}.feature-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.feature-heading svg{color:var(--primary);flex:none}.compact-form{gap:12px;display:grid}.reserve-form{border-top:1px solid var(--line);padding-top:12px}.compact-list{gap:8px;display:grid}.compact-row{border:1px solid var(--line);background:var(--tile);border-radius:8px;gap:3px;min-width:0;padding:10px;display:grid}.compact-row strong,.compact-row span{overflow-wrap:anywhere;min-width:0}.compact-row strong{color:var(--heading);font-size:14px}.compact-row span{color:var(--muted);font-size:12px;font-weight:800}.signal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.automation-list{flex-wrap:wrap;gap:8px;display:flex}.ics-textarea,.ics-output{font-family:Consolas,Cascadia Mono,monospace;font-size:12px}.ics-output{min-height:64px;color:var(--muted);background:var(--panel-muted)}.event-board{grid-template-columns:minmax(360px,1.05fr) minmax(340px,.95fr);gap:14px;display:grid}.event-list-header{margin-bottom:12px}.event-row{border-top:1px solid var(--line);width:100%;min-height:68px;color:inherit;text-align:left;box-shadow:none;background:0 0;border-bottom:0;border-left:0;border-right:0;border-radius:0;grid-template-columns:124px minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px 10px;display:grid}.event-row:hover,.event-row[aria-pressed=true]{background:var(--tile-hover);box-shadow:none;transform:none}.event-row[aria-pressed=true]{box-shadow:inset 4px 0 0 var(--accent)}.event-row time{color:var(--primary);font-size:13px;font-weight:900}.event-row h3,.event-row p,.empty-state,.muted,.privacy-note,.detail-copy p{margin:0}.event-row h3{color:var(--heading);font-size:16px}.event-row p,.empty-state,.muted,.privacy-note,.detail-copy p{color:var(--muted)}.sensitivity{color:var(--accent-text);background:var(--accent-soft);border:1px solid color-mix(in srgb, var(--accent) 42%, var(--line));text-transform:capitalize;border-radius:8px;padding:5px 8px;font-size:12px;font-weight:900}.detail-state,.detail-meta,.rsvp-panel,.attendee-row,.invite-form{gap:10px;display:grid}.detail-state{color:var(--primary);grid-template-columns:auto 1fr;align-items:center;font-weight:800}.detail-stack{gap:16px;display:grid}.detail-meta{flex-wrap:wrap;gap:8px;display:flex}.meta-pill,.response-status{border:1px solid color-mix(in srgb, var(--primary) 34%, var(--line));min-height:30px;color:var(--primary);background:var(--primary-soft);text-transform:capitalize;border-radius:8px;align-items:center;gap:6px;padding:5px 8px;font-size:12px;font-weight:900;display:inline-flex}.privacy-note{border:1px solid color-mix(in srgb, var(--accent) 42%, var(--line));background:var(--accent-soft);border-radius:8px;padding:12px;font-weight:800}.recurring-badge{vertical-align:middle;min-height:22px;margin-left:8px}.occurrence-form{border:1px solid color-mix(in srgb, var(--primary) 34%, var(--line));background:var(--primary-soft);border-radius:8px;padding:12px}.availability-strip{border:1px solid var(--line);border-radius:8px;gap:8px;padding:12px;display:grid}.availability-token.tentative{opacity:.72}.availability-conflict{color:var(--accent-text);background:var(--accent-soft);border:1px solid color-mix(in srgb, var(--accent) 42%, var(--line));border-radius:8px;padding:8px 10px;font-weight:800}.booking-page{max-width:760px}.resource-policy{color:var(--muted);text-transform:capitalize;font-size:12px}.booking-card{border:1px solid var(--line);background:var(--panel);border-radius:12px;gap:18px;padding:20px;display:grid}.booking-heading{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.verified-pill{color:var(--primary);text-transform:none}.slot-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px;display:grid}.slot-button{border:1px solid var(--line);color:inherit;cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:8px;padding:10px 12px;font-weight:700;display:inline-flex}.slot-button.selected{border-color:color-mix(in srgb, var(--primary) 60%, var(--line));background:var(--primary-soft);color:var(--primary)}.booking-confirmed{border:1px solid color-mix(in srgb, var(--primary) 40%, var(--line));background:var(--primary-soft);color:var(--primary);border-radius:10px;grid-template-columns:auto 1fr;align-items:center;gap:12px;padding:14px;display:grid}.detail-copy{gap:6px;display:grid}.rsvp-panel{border:1px solid var(--line);background:var(--panel-soft);border-radius:8px;grid-template-columns:minmax(130px,.65fr) minmax(240px,1.35fr);align-items:center;padding:12px}.rsvp-actions{flex-wrap:wrap;gap:8px;display:flex}.secondary-button{color:var(--primary);border-color:color-mix(in srgb, var(--primary) 34%, var(--line));background:var(--primary-soft)}.secondary-button:hover{color:var(--primary-text);border-color:var(--primary-strong);background:var(--primary-strong)}.danger-button{border-color:var(--danger);background:var(--danger)}.danger-button:hover{border-color:color-mix(in srgb, var(--danger) 74%, #000);background:color-mix(in srgb, var(--danger) 82%, #000)}.attendee-section{gap:10px;display:grid}.attendee-list{gap:8px;display:grid}.attendee-row{border:1px solid var(--line);background:var(--tile);border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;padding:10px}.attendee-row svg{color:var(--primary)}.attendee-row strong,.attendee-row div span{overflow-wrap:anywhere;display:block}.attendee-row div span{color:var(--muted);text-transform:capitalize;font-size:12px;font-weight:800}.invite-form{border-top:1px solid var(--line);grid-template-columns:minmax(200px,1fr) 150px auto;align-items:end;padding-top:14px}.inline-error{border:1px solid;border-radius:8px;margin-bottom:0;padding:10px 12px;font-weight:800}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}@media (width<=960px){.calendar-board-header{flex-direction:column;align-items:stretch}.shell-actions{grid-template-columns:repeat(3,minmax(0,1fr));justify-items:stretch;width:100%;display:grid}.board-control-stack{justify-items:stretch;width:100%}.view-tabs,.workspace-tabs,.calendar-nav{justify-content:stretch;display:grid}.workspace-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.view-tab,.workspace-tabs a,.calendar-nav .compact-button,.shell-actions .header-action{flex:none;align-items:center;width:100%;min-width:0;min-height:50px}.workspace-tabs a[href=\#ics-panel]{grid-column:1/-1}.workspace-grid,.feature-grid,.event-board,.week-calendar-grid,.three-fields,.signal-grid{grid-template-columns:1fr}.year-calendar-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=680px){body{background-size:28px 28px}.calendar-shell{width:min(100vw - 18px,1220px);min-height:calc(100vh - 18px);margin:9px auto;padding:16px}.shell-header{flex-wrap:wrap;align-items:flex-start}.shell-actions{margin-left:0}.shell-actions .theme-toggle{justify-self:stretch}.calendar-board-panel{padding:14px}.month-day{min-height:84px;padding:5px}.day-number{min-width:22px;height:22px;font-size:12px}.calendar-event-chip,.calendar-more-chip,.empty-calendar-slot{font-size:11px}.month-calendar-grid .calendar-event-chip{color:#0000;border-radius:999px;min-height:8px;padding:0;font-size:0}.year-calendar-grid{grid-template-columns:1fr}.identity-panel,.tool-panel,.feature-panel,.event-list,.event-detail{padding:16px}.identity-grid,.field-grid,.event-row,.rsvp-panel,.invite-form,.attendee-row{grid-template-columns:1fr}.event-row{gap:8px}h1{font-size:28px}h2{font-size:21px}}
