@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/6fe53d21e6e7ebd8-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/8ebc6e9dde468c4a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/9e7b0a821b9dfcb4-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/636a5ac981f94f8b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/6fe53d21e6e7ebd8-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/8ebc6e9dde468c4a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/9e7b0a821b9dfcb4-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/636a5ac981f94f8b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/6fe53d21e6e7ebd8-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/8ebc6e9dde468c4a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/9e7b0a821b9dfcb4-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/636a5ac981f94f8b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/6fe53d21e6e7ebd8-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/8ebc6e9dde468c4a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/9e7b0a821b9dfcb4-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/636a5ac981f94f8b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/6fe53d21e6e7ebd8-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/8ebc6e9dde468c4a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/9e7b0a821b9dfcb4-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/636a5ac981f94f8b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Plus Jakarta Sans Fallback;src:local("Arial");ascent-override:98.88%;descent-override:21.15%;line-gap-override:0.00%;size-adjust:104.98%}.__className_a11773{font-family:Plus Jakarta Sans,Plus Jakarta Sans Fallback;font-style:normal}.__variable_a11773{--font-sans:"Plus Jakarta Sans","Plus Jakarta Sans Fallback"}:root{--app-nav-inline-padding:32px;--app-page-max-width:1100px;--toolbar-control-height:34px;--slate-50:rgb(248 250 252);--slate-100:rgb(241 245 249);--slate-200:rgb(226 232 240);--slate-300:rgb(203 213 225);--slate-400:rgb(148 163 184);--slate-500:rgb(100 116 139);--slate-600:rgb(71 85 105);--slate-700:rgb(51 65 85);--slate-800:rgb(30 41 59);--slate-900:rgb(15 23 42);--slate-950:rgb(2 6 23);--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-pill:999px;--leading-normal:1.4;--ease-out:cubic-bezier(0.23,1,0.32,1);--ease-snappy:cubic-bezier(0.16,1,0.3,1);--z-modal:1200;--z-walkthrough:1300;--z-tooltip:1400}@media (pointer:coarse){:root{--toolbar-control-height:44px}}:root{--brand:rgb(43 127 255);--brand-hover:rgb(26 106 235);--brand-bg-subtle:rgb(43 127 255/0.14);--brand-gradient-end:rgb(29 111 230);--success:rgb(5 150 105);--warning:rgb(217 119 6);--danger:rgb(220 38 38);--surface-page:rgb(237 243 250);--page-glow:radial-gradient(circle at top left,color-mix(in srgb,var(--brand) 10%,transparent),transparent 32rem);--surface-header:rgb(255 255 255);--surface-card:rgb(255 255 255);--surface-muted:rgb(248 250 252);--surface-raised:rgb(246 249 253);--surface-toolbar:rgb(250 252 255);--surface-tinted:rgb(225 238 255);--surface-tinted-strong:rgb(211 228 252);--panel-header-bg:var(--surface-tinted-strong);--text-primary:var(--slate-900);--text-secondary:var(--slate-700);--text-muted:var(--slate-600);--text-subtle:var(--slate-400);--text-inverse:rgb(255 255 255);--page-subtitle-foreground:var(--text-secondary);--border-subtle:rgb(218 228 239);--border-default:rgb(203 216 232);--border-strong:var(--slate-400);--border-control:var(--slate-400);--control-bg:var(--surface-card);--control-bg-hover:var(--surface-raised);--control-bg-active:var(--surface-tinted-strong);--control-border:var(--border-control);--control-text:var(--text-primary);--control-placeholder:var(--text-subtle);--control-active-foreground:rgb(255 255 255);--empty-state-bg:rgb(241 247 255);--empty-state-border:var(--border-control);--empty-state-icon:var(--text-subtle);--scrim:rgb(15 23 42/0.42);--shadow-rgb:43 127 255;--shadow-sm:0 1px 2px 0 rgb(var(--shadow-rgb)/0.07);--shadow-md:0 4px 8px -1px rgb(var(--shadow-rgb)/0.12),0 2px 4px -2px rgb(var(--shadow-rgb)/0.07);--shadow-lg:0 10px 20px -3px rgb(var(--shadow-rgb)/0.14),0 4px 8px -4px rgb(var(--shadow-rgb)/0.08);--shadow-inset-border:inset 0 0 0 1px var(--border-default);--heading-accent-from:rgb(28 78 216);--heading-accent-to:rgb(14 165 233);--highlight-inset:rgb(255 255 255/0.28);--focus-ring:color-mix(in srgb,var(--brand) 20%,transparent);--tooltip-bg:var(--surface-card);--tooltip-border:var(--border-default);--tooltip-title:var(--text-primary);--tooltip-text:var(--text-secondary);--tooltip-shadow:0 8px 24px rgb(15 23 42/0.14),0 2px 6px rgb(15 23 42/0.08);--calendar-panel-bg:var(--surface-muted);--calendar-panel-border:var(--border-control);--calendar-panel-shadow:0 6px 20px rgb(15 23 42/0.09),0 2px 6px rgb(15 23 42/0.05);--calendar-panel-shadow-sm:0 2px 8px rgb(15 23 42/0.07),0 1px 2px rgb(15 23 42/0.05);--calendar-ui-heading:var(--text-primary);--calendar-ui-label:var(--text-secondary);--calendar-weekday-color:var(--slate-800);--calendar-ui-day-number:var(--text-primary);--calendar-ui-day-number-faded:var(--text-muted);--calendar-day-header-border:var(--border-strong);--calendar-day-bg:var(--border-default);--calendar-day-bg-muted:rgb(212 221 232);--calendar-day-border:var(--slate-500);--calendar-day-today-bg:rgb(224 237 251);--calendar-shift-filled-bg:var(--surface-card);--calendar-shift-filled-border:rgb(100 116 139/0.38);--calendar-shift-filled-title:var(--slate-800);--calendar-shift-unassigned-bg:rgb(254 202 210);--calendar-shift-unassigned-border:rgb(225 29 72/0.55);--calendar-shift-unassigned-title:rgb(190 18 60);--calendar-shift-meta-filled:var(--slate-600);--calendar-shift-meta-unassigned:rgb(159 18 57);--calendar-shift-shadow:0 2px 8px rgb(15 23 42/0.12),0 1px 2px rgb(15 23 42/0.06);--calendar-double-booked-bg:rgb(253 230 138);--calendar-double-booked-border:color-mix(in srgb,var(--tone-warning-dot) 82%,transparent);--calendar-double-booked-accent:var(--tone-warning-dot);--calendar-double-booked-title:var(--tone-warning-fg);--calendar-double-booked-meta:var(--tone-warning-fg);--calendar-double-booked-glow:0 0 0 1px color-mix(in srgb,var(--tone-warning-dot) 35%,transparent),0 2px 10px color-mix(in srgb,var(--tone-warning-dot) 18%,transparent);--calendar-coverage-gap:rgb(194 65 12);--calendar-highlight-user:rgb(124 58 237);--calendar-highlight-facility:rgb(13 148 136);--calendar-highlight-shift:rgb(3 105 161);--table-section-header-bg:var(--surface-tinted-strong);--table-column-header-bg:var(--surface-tinted);--table-footer-bg:var(--surface-tinted-strong);--table-row-hover-bg:var(--surface-tinted);--autofill-popover-row-hover-bg:rgb(191 219 254);--autofill-popover-row-hover-ring:rgb(96 165 250/0.62);--autofill-popover-assigned-hover-bg:rgb(220 252 231);--autofill-popover-assigned-hover-ring:rgb(34 197 94/0.58);--tone-info-bg:var(--surface-tinted);--tone-info-fg:rgb(3 105 161);--tone-info-border:rgb(186 216 245);--tone-info-dot:rgb(43 127 255);--tone-success-bg:rgb(240 253 244);--tone-success-fg:rgb(21 128 61);--tone-success-border:rgb(187 247 208);--tone-success-dot:var(--success);--tone-warning-bg:rgb(254 243 199);--tone-warning-fg:rgb(180 83 9);--tone-warning-border:rgb(253 230 138);--tone-warning-dot:var(--warning);--tone-danger-bg:rgb(254 226 226);--tone-danger-fg:rgb(185 28 28);--tone-danger-border:rgb(254 202 202);--tone-danger-dot:var(--danger);--tone-purple-bg:rgb(240 236 249);--tone-purple-fg:rgb(124 58 237);--status-create-bg:var(--tone-success-bg);--status-create-fg:var(--tone-success-fg);--status-update-bg:var(--tone-info-bg);--status-update-fg:rgb(29 78 216);--status-delete-bg:var(--tone-danger-bg);--status-delete-fg:var(--tone-danger-fg);--status-login-bg:var(--tone-success-bg);--status-login-fg:rgb(22 101 52);--status-logout-bg:var(--slate-100);--status-logout-fg:var(--slate-600);--shadow-card:var(--shadow-inset-border),0 1px 3px 0 rgb(var(--shadow-rgb)/0.08),0 2px 8px -2px rgb(var(--shadow-rgb)/0.06)}[data-theme=dark]{--brand:rgb(74 144 217);--brand-hover:rgb(90 157 226);--brand-bg-subtle:rgb(74 144 217/0.15);--brand-gradient-end:rgb(37 99 235);--success:rgb(34 197 94);--warning:rgb(251 146 60);--danger:rgb(248 113 113);--surface-page:rgb(15 23 36);--surface-header:rgb(23 34 51);--surface-card:rgb(29 41 56);--surface-muted:rgb(17 24 39);--surface-raised:rgb(36 50 71);--surface-toolbar:rgb(45 62 88);--surface-tinted:var(--brand-bg-subtle);--surface-tinted-strong:var(--brand-bg-subtle);--panel-header-bg:var(--surface-tinted);--text-primary:var(--slate-50);--text-secondary:var(--slate-200);--text-muted:var(--slate-400);--text-subtle:var(--slate-400);--text-inverse:rgb(255 255 255);--page-subtitle-foreground:var(--slate-400);--border-subtle:rgb(255 255 255/0.06);--border-default:rgb(255 255 255/0.1);--border-strong:rgb(255 255 255/0.16);--border-control:rgb(255 255 255/0.22);--control-bg:var(--surface-card);--control-bg-hover:var(--surface-raised);--control-bg-active:rgb(41 59 83);--control-border:var(--border-control);--control-text:var(--text-primary);--control-placeholder:rgb(127 141 161);--control-active-foreground:rgb(255 255 255);--empty-state-bg:var(--surface-muted);--empty-state-border:var(--border-default);--empty-state-icon:var(--text-muted);--scrim:rgb(2 6 23/0.62);--shadow-rgb:74 144 217;--shadow-sm:0 1px 2px 0 rgb(0 0 0/0.4);--shadow-md:0 4px 6px -1px rgb(0 0 0/0.4),0 2px 4px -2px rgb(0 0 0/0.4);--shadow-lg:0 10px 15px -3px rgb(0 0 0/0.4),0 4px 6px -4px rgb(0 0 0/0.4);--shadow-inset-border:inset 0 0 0 1px rgb(255 255 255/0.07);--heading-accent-from:rgb(96 165 250);--heading-accent-to:rgb(56 189 248);--highlight-inset:rgb(255 255 255/0.06);--tooltip-bg:var(--surface-muted);--tooltip-border:var(--border-strong);--tooltip-shadow:0 12px 32px rgb(0 0 0/0.46),0 2px 8px rgb(0 0 0/0.32);--calendar-panel-bg:var(--surface-card);--calendar-panel-border:var(--border-default);--calendar-panel-shadow:var(--shadow-md);--calendar-panel-shadow-sm:var(--shadow-sm);--calendar-ui-label:var(--text-secondary);--calendar-weekday-color:var(--text-secondary);--calendar-ui-day-number:var(--text-primary);--calendar-ui-day-number-faded:var(--text-muted);--calendar-day-header-border:var(--border-default);--calendar-day-today-bg:rgb(74 144 217/0.16);--calendar-day-bg:var(--surface-card);--calendar-day-bg-muted:var(--surface-muted);--calendar-day-border:var(--border-default);--calendar-coverage-gap:rgb(252 165 165);--calendar-shift-filled-bg:var(--surface-card);--calendar-shift-filled-border:rgb(148 163 184/0.3);--calendar-shift-filled-title:var(--text-secondary);--calendar-shift-unassigned-bg:rgb(63 16 24);--calendar-shift-unassigned-border:rgb(248 113 113/0.62);--calendar-double-booked-bg:rgb(62 38 5);--calendar-shift-unassigned-title:rgb(254 202 202);--calendar-shift-meta-filled:var(--text-muted);--calendar-shift-meta-unassigned:rgb(254 202 202);--calendar-shift-shadow:0 1px 2px rgb(0 0 0/0.2);--calendar-highlight-user:rgb(167 139 250);--calendar-highlight-facility:rgb(45 212 191);--calendar-highlight-shift:rgb(56 189 248);--table-section-header-bg:rgb(33 54 77);--table-column-header-bg:rgb(38 54 76);--table-footer-bg:rgb(38 54 76);--table-row-hover-bg:var(--surface-toolbar);--autofill-popover-row-hover-bg:var(--table-row-hover-bg);--autofill-popover-row-hover-ring:var(--border-strong);--autofill-popover-assigned-hover-bg:var(--tone-success-bg);--autofill-popover-assigned-hover-ring:var(--tone-success-border);--tone-info-bg:rgb(56 189 248/0.14);--tone-info-fg:rgb(125 211 252);--tone-info-border:rgb(56 189 248/0.28);--tone-info-dot:rgb(56 189 248);--tone-success-bg:rgb(34 197 94/0.16);--tone-success-fg:rgb(134 239 172);--tone-success-border:rgb(34 197 94/0.26);--tone-warning-bg:rgb(251 146 60/0.16);--tone-warning-fg:rgb(253 186 116);--tone-warning-border:rgb(251 146 60/0.28);--tone-danger-bg:rgb(248 113 113/0.16);--tone-danger-fg:rgb(252 165 165);--tone-danger-border:rgb(248 113 113/0.28);--tone-purple-bg:rgb(167 139 250/0.16);--tone-purple-fg:rgb(196 181 253);--status-update-fg:rgb(147 197 253);--status-login-fg:rgb(187 247 208);--status-logout-bg:rgb(148 163 184/0.14);--status-logout-fg:rgb(203 213 225);--shadow-card:var(--shadow-inset-border),0 1px 3px 0 rgb(0 0 0/0.3),0 2px 8px -2px rgb(0 0 0/0.2)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{font-family:var(--font-sans),"Plus Jakarta Sans",Inter,-apple-system,BlinkMacSystemFont,"Segoe UI Variable",sans-serif;color:var(--text-secondary);background:var(--surface-page);line-height:1.4;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body:after{content:"";position:fixed;inset:0;pointer-events:none;z-index:9998;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");background-repeat:repeat;background-size:128px 128px;opacity:.022;mix-blend-mode:overlay}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.2;color:var(--text-primary);letter-spacing:-.02em;text-wrap:balance}p{text-wrap:pretty}a{color:var(--brand);text-decoration:none}a:hover{text-decoration:underline}.skip-link{position:absolute;left:-9999px;top:12px;z-index:9999;padding:8px 16px;background:var(--brand);color:var(--text-inverse);font-size:14px;font-weight:600;border-radius:var(--radius-md);text-decoration:none;white-space:nowrap}.skip-link:focus-visible{left:12px;outline:2px solid var(--text-inverse);outline-offset:2px}:focus{outline:none}:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:4px}.btn:focus-visible{outline-offset:3px}.form-input:focus-visible,.form-select:focus-visible{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--focus-ring)}.app-shell{min-height:100dvh;background:var(--page-glow),var(--surface-page)}.app-shell:has(.stats-fill-layout),.viewport-lock-shell{display:flex;flex-direction:column;height:100dvh;max-height:100dvh;min-height:100dvh;overflow:hidden}.page-main{width:100%;max-width:var(--app-page-max-width);margin:0 auto;padding:32px 24px}.action-row,.page-header--actions,.section-header,.toolbar,.toolbar-group{display:flex;align-items:flex-start;gap:12px;flex-wrap:wrap}.page-header--actions,.section-header{justify-content:space-between;margin-bottom:28px}.page-header--actions{flex-wrap:nowrap}.page-header--actions>.action-row{flex-shrink:0}@media (max-width:620px){.page-header--actions{flex-wrap:wrap}.page-header--actions>.action-row{flex-shrink:1;min-width:0}}.section-header{margin-bottom:12px;align-items:center}.action-row{align-items:center;gap:8px}.action-row--end{justify-content:flex-end}.toolbar{align-items:center;gap:8px}.toolbar-group{align-items:center;gap:6px}.page-header{margin-bottom:28px}.page-title{font-size:28px;font-weight:800;color:var(--text-primary);margin-bottom:4px;letter-spacing:-.035em;line-height:1.1}.page-subtitle{font-size:14px;color:var(--page-subtitle-foreground)}.page-title-with-count{display:inline-flex;align-items:center;gap:10px}.tone-blue{background:var(--tone-info-bg);color:var(--tone-info-fg)}.tone-purple{background:var(--tone-purple-bg);color:var(--tone-purple-fg)}.tone-orange{background:var(--tone-warning-bg);color:var(--tone-warning-fg)}.flex{display:flex}.gap-3{gap:12px}.flex-shrink-0{flex-shrink:0}.grid{display:grid}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.p-0{padding:0}.p-3{padding:12px}.mb-0{margin-bottom:0}.mb-3{margin-bottom:12px}.mb-4{margin-bottom:16px}.mb-6{margin-bottom:24px}.mt-4{margin-top:16px}.mt-6{margin-top:24px}.text-sm{font-size:14px}.text-ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-muted{color:var(--text-muted)}.text-primary{color:var(--brand)}.text-success{color:var(--success)}.text-danger{color:var(--danger)}@media (max-width:760px){.col-hide-md{display:none}}@media (max-width:768px){.grid-cols-3{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.grid-cols-3{grid-template-columns:1fr}}@media (max-width:520px){.col-hide-xxs{display:none}}.card{background:var(--surface-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:24px}.panel-card{padding:0;overflow:hidden}.panel-card.panel-card--flex-fill{display:flex;flex-direction:column;flex:1 1;min-height:0}.panel-card.panel-card--flex-fill .panel-card__body{flex:1 1;min-height:0;overflow:auto;overscroll-behavior:contain;padding-bottom:24px}.panel-card.panel-card--flex-fill .panel-card__body.p-0:has(>.table-shell--body-scroll){display:flex;flex-direction:column;overflow:hidden}.panel-card__header{background:var(--panel-header-bg);padding:16px 20px;border-bottom:1px solid var(--border-default);display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:nowrap}.panel-card__header>.action-row{flex-shrink:0}.panel-card__title-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.panel-card__body{padding:20px}.panel-card.panel-card--flex-fill .panel-card__body.p-0,.panel-card__body.p-0{padding:0}.panel-empty-state{padding:24px 20px}.panel-card__title{margin:0;font-size:16px;font-weight:700;color:var(--text-primary)}.panel-card__subtitle{margin:4px 0 0;font-size:13px;color:var(--text-secondary);line-height:1.5}.list-stack{display:flex;flex-direction:column;gap:12px}.list-stack--loose{gap:32px}.detail-list{display:flex;flex-direction:column}.detail-list__item{padding:18px 20px;border-bottom:1px solid var(--border-subtle);transition:opacity .15s}.detail-list__item:last-child{border-bottom:0}.detail-list__item--dimmed{opacity:.75}.detail-list__item--busy{opacity:.6}.detail-list__header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}.detail-list__title-row{display:flex;align-items:center;gap:12px}.detail-list__icon{font-size:28px;flex-shrink:0;line-height:1}.detail-list__header>.badge{flex-shrink:0}.detail-list__title{margin-bottom:2px;color:var(--text-primary);font-size:15px;font-weight:700}.detail-list__meta{color:var(--text-subtle);font-size:12px}.detail-list__actions{margin-top:12px}.detail-list__message{color:var(--text-muted);font-size:12px;font-style:italic}.info-row{display:flex;align-items:center;gap:12px;padding:10px 16px;border-bottom:1px solid var(--border-subtle)}.info-row__body{flex:1 1;min-width:0}.info-row__title{font-size:14px;font-weight:600;color:var(--text-primary)}.info-row__meta{font-size:12px;color:var(--text-muted)}.feature-grid{display:flex;flex-wrap:wrap;gap:16px}.feature-card{flex:1 1 200px;display:flex;flex-direction:column;padding:22px}.feature-card__icon{width:38px;height:38px;display:flex;align-items:center;justify-content:center;margin-bottom:14px;border-radius:10px;background:var(--feature-icon-bg,var(--tone-info-bg));color:var(--feature-icon-fg,var(--tone-info-fg))}.feature-card__title{margin-bottom:6px;font-size:15px;font-weight:700;color:var(--text-primary)}.feature-card__desc{flex:1 1;margin:0 0 16px;color:var(--text-muted);font-size:13px;line-height:1.6}.card-list-footer{padding:10px 16px;color:var(--text-subtle);font-size:13px;text-align:center}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;font-size:14px;font-weight:600;line-height:1;letter-spacing:.01em;padding:10px 18px;border-radius:var(--radius-md);border:1px solid transparent;cursor:pointer;transition:background-color .15s var(--ease-out),border-color .15s var(--ease-out),box-shadow .15s var(--ease-out),transform .1s var(--ease-out);white-space:nowrap;text-decoration:none;font-family:inherit}.btn:active:not(:disabled){transform:scale(.97)}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:linear-gradient(180deg,color-mix(in srgb,var(--brand) 88%,white) 0,var(--brand) 100%);box-shadow:0 1px 4px rgb(var(--shadow-rgb)/.4),inset 0 1px 0 rgb(255 255 255/.12)}.btn-primary,.btn-primary:hover:not(:disabled){color:var(--text-inverse);border-color:var(--brand-hover)}.btn-primary:hover:not(:disabled){background:linear-gradient(180deg,color-mix(in srgb,var(--brand-hover) 90%,white) 0,var(--brand-hover) 100%);text-decoration:none;box-shadow:0 2px 8px rgb(var(--shadow-rgb)/.45),inset 0 1px 0 rgb(255 255 255/.12)}.btn-secondary{background:var(--surface-card);color:var(--text-secondary);border-color:var(--border-control);box-shadow:0 1px 2px rgb(var(--shadow-rgb)/.06)}.btn-secondary:hover:not(:disabled){background:var(--brand-bg-subtle);border-color:color-mix(in srgb,var(--brand) 42%,var(--border-control));color:var(--text-primary);text-decoration:none;box-shadow:0 2px 4px rgb(var(--shadow-rgb)/.08)}[data-theme=dark] .btn-secondary:hover:not(:disabled){background:var(--surface-muted);border-color:var(--control-placeholder)}.btn-danger{background:var(--danger);color:var(--text-inverse);border-color:var(--danger)}.btn-sm{font-size:13px;padding:6px 12px}.btn-control{min-height:38px}.btn-control,.btn-toolbar{font-size:13px;padding:0 12px}.btn-icon,.btn-toolbar{min-height:var(--toolbar-control-height)}.btn-icon{width:var(--toolbar-control-height);min-width:var(--toolbar-control-height);padding:0;font-size:15px;line-height:1}.btn.btn-secondary.btn-sm.btn-icon{flex-shrink:0}.btn.btn-secondary.btn-sm.btn-icon svg{display:block}.btn-danger-secondary{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 35%,transparent)}.btn-danger-secondary:hover:not(:disabled){color:var(--danger);border-color:color-mix(in srgb,var(--danger) 55%,transparent);background:var(--tone-danger-bg)}.btn-lg{font-size:16px;padding:14px 24px}[data-theme=dark] .form-input{background:var(--surface-card)}[data-theme=dark] .form-input,[data-theme=dark] .form-select{color:var(--text-primary);border-color:var(--border-control);color-scheme:dark}[data-theme=dark] .form-select{background-color:var(--surface-card);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%239ca3af' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right 10px center;background-repeat:no-repeat;background-size:20px;padding-right:36px}[data-theme=dark] input[type=date],[data-theme=dark] input[type=time]{color-scheme:dark}.form-group{margin-bottom:16px}.form-grid{display:grid;grid-gap:12px;gap:12px}.form-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}.form-field{display:grid;grid-gap:6px;gap:6px;min-width:0;font-size:13px;color:var(--text-secondary)}.form-field--inline{display:flex;align-items:center;gap:10px}.form-checkbox-scroll{display:grid;grid-gap:8px;gap:8px;max-height:160px;overflow-y:auto;overscroll-behavior:contain;padding:8px 10px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--surface-muted,var(--surface-card))}.form-label{display:block;font-size:14px;font-weight:500;color:var(--text-secondary);margin-bottom:6px}.form-input{width:100%;padding:10px 12px;font-size:14px;font-family:inherit;border:1px solid var(--border-control);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);transition:border-color .15s,box-shadow .15s;outline:none}.form-input:focus,.form-select:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--focus-ring)}.form-input::placeholder{color:var(--control-placeholder)}.form-textarea{min-height:80px;resize:vertical}.form-select{width:100%;font-size:14px;font-family:inherit;border:1px solid var(--border-control);border-radius:var(--radius-md);background-color:var(--surface-card);color:var(--text-primary);cursor:pointer;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right 10px center;background-repeat:no-repeat;background-size:20px;padding:10px 36px 10px 12px}.form-select::-ms-expand{display:none}.form-error{color:var(--danger)}.form-error,.form-hint{font-size:13px;margin-top:4px}.form-hint{color:var(--text-muted);line-height:1.4}.form-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}.badge{display:inline-flex;align-items:center;font-size:12px;font-weight:600;padding:3px 8px;border-radius:5px;white-space:nowrap;letter-spacing:.01em}.badge-primary{background:var(--brand-bg-subtle);color:var(--brand)}.badge-success{background:var(--tone-success-bg);color:var(--tone-success-fg)}.badge-warning{background:var(--tone-warning-bg);color:var(--tone-warning-fg)}.badge-danger{background:var(--tone-danger-bg);color:var(--tone-danger-fg)}.badge-gray{background:var(--border-subtle);color:var(--text-secondary)}.badge-count{border-radius:999px;font-size:11px;font-weight:700;padding:1px 7px}.badge-count--header{font-size:13px;font-weight:600;padding:2px 9px;background:var(--table-section-header-bg);color:var(--text-secondary)}.badge-on-primary{background:var(--brand);color:var(--control-active-foreground)}.table-shell{overflow-x:auto;border:1px solid var(--border-default);border-radius:var(--radius-lg)}.table-shell--body-scroll{overflow-x:auto;border:none;border-radius:0;flex:1 1;min-height:0;overflow:auto;overscroll-behavior:contain}@media (min-width:641px){.table-shell--body-scroll{overflow-x:visible;overflow:hidden}.table-shell--body-scroll table{border-collapse:separate;border-spacing:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;height:100%;min-height:0;table-layout:fixed}.table-shell--body-scroll tfoot,.table-shell--body-scroll thead{display:block;width:100%;table-layout:fixed}.table-shell--body-scroll tbody tr,.table-shell--body-scroll tfoot tr,.table-shell--body-scroll thead tr{display:grid;grid-template-columns:var(--table-column-template);width:100%;table-layout:auto}.table-shell--body-scroll td,.table-shell--body-scroll th{width:auto!important;max-width:none!important;min-width:0}.table-shell--body-scroll tfoot tr,.table-shell--body-scroll thead th{position:static}.table-shell--body-scroll tbody{display:block;min-height:0;overflow:auto;overscroll-behavior:contain}.table-shell--body-scroll .td-grid-span-4{grid-column:span 4}}.td-nowrap{white-space:nowrap}.td-center{text-align:center}.td-muted{color:var(--text-muted);font-size:13px}.td-strong{font-weight:600;color:var(--text-primary)}table{width:100%;border-collapse:collapse;font-size:14px}thead{background:var(--table-column-header-bg)}tfoot tr{background:var(--table-footer-bg)}th{padding:12px 16px;text-align:left;font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);border-bottom:1px solid var(--border-default);white-space:nowrap}td{padding:14px 16px;border-bottom:1px solid var(--border-subtle);color:var(--text-secondary)}tr:last-child td{border-bottom:none}tbody tr:hover{background:var(--table-row-hover-bg)}@media (min-width:641px){.expanded-detail-row{display:block!important}.expanded-detail-row>td{display:block;width:100%!important}}.expanded-detail-cell{padding:12px 20px 16px;background:var(--surface-tinted);border-bottom:1px solid var(--border-default)}[data-theme=dark] .expanded-detail-cell{background:var(--surface-toolbar);border-bottom-color:var(--border-strong)}.expanded-detail__label{font-size:11px;font-weight:600;color:var(--text-subtle);text-transform:uppercase;letter-spacing:.07em;margin-bottom:6px}.segmented-control{display:inline-flex;min-height:var(--toolbar-control-height);border:1px solid var(--border-control);border-radius:var(--radius-md);overflow:hidden;flex-shrink:0}.segmented-control__button{min-height:calc(var(--toolbar-control-height) - 2px);padding:0 12px;border:0;border-left:1px solid var(--border-control);background:transparent;color:var(--text-secondary);cursor:pointer;font-family:inherit;font-size:12px;font-weight:500;line-height:1}.segmented-control__button:first-child{border-left:0}.segmented-control__button[aria-pressed=true]{background:var(--brand);color:var(--control-active-foreground);font-weight:700}.segmented-control__button:disabled{cursor:not-allowed;opacity:.6}.pill-tabs{display:inline-flex;align-items:center;gap:4px;width:-moz-fit-content;width:fit-content;max-width:100%;min-height:44px;padding:4px;border:1px solid color-mix(in srgb,var(--brand) 14%,var(--border-default));border-radius:999px;background:color-mix(in srgb,var(--brand-bg-subtle) 46%,var(--surface-muted));box-shadow:inset 0 1px 0 var(--highlight-inset),var(--shadow-sm);flex-shrink:0;overflow-x:auto;scrollbar-width:none}.pill-tabs::-webkit-scrollbar{display:none}.pill-tab{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 18px;border:1px solid transparent;border-radius:999px;background:transparent;color:var(--text-secondary);cursor:pointer;font-family:inherit;font-size:14px;font-weight:700;letter-spacing:0;line-height:1;white-space:nowrap;transition:background-color .15s var(--ease-out),border-color .15s var(--ease-out),color .15s var(--ease-out),box-shadow .15s var(--ease-out)}.pill-tab:hover:not(:disabled):not(.pill-tab--active){background:color-mix(in srgb,var(--surface-card) 70%,var(--brand-bg-subtle));color:var(--text-primary)}.pill-tab--active{border-color:color-mix(in srgb,var(--brand) 20%,transparent);background:color-mix(in srgb,var(--brand-bg-subtle) 72%,var(--surface-card));color:var(--brand-hover);box-shadow:0 1px 3px rgb(var(--shadow-rgb)/.16)}.pill-tab:disabled{cursor:not-allowed;opacity:.62}.pill-tab:focus-visible{outline:2px solid var(--brand);outline-offset:3px}.center-state,.loading-state{padding:40px 24px;text-align:center;color:var(--text-muted)}.loading-state--large{padding:80px 24px}.center-state .spinner,.loading-state .spinner{margin:0 auto 12px}.center-state--compact{padding:20px 0;margin-bottom:8px}.loading-state__label{margin:0;font-size:14px;color:var(--text-muted)}.meta-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(var(--meta-grid-min,140px),1fr));grid-gap:8px 16px;gap:8px 16px;padding:14px 16px;border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--surface-muted)}.meta-grid__label{margin-bottom:3px;font-size:10px;font-weight:700;color:var(--text-subtle);text-transform:uppercase;letter-spacing:.05em}.meta-grid__value{font-size:13px;font-weight:600;color:var(--text-primary)}.note-panel{padding:8px 12px;border-left:3px solid var(--border-control);border-radius:var(--radius-md);background:var(--surface-muted);color:var(--text-secondary);font-size:13px}.modal-backdrop{position:fixed;inset:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:24px;background:var(--scrim)}.modal-card{width:100%;max-width:var(--modal-max-width,480px);max-height:calc(100dvh - 48px);overflow:auto;padding:24px}.modal-card--flex{padding:0;display:flex;flex-direction:column;overflow:hidden}.modal-card--flex .modal-flex-body{flex:1 1;min-height:0;overflow-y:auto;overscroll-behavior:contain}.modal-title{margin:0 0 16px;font-size:18px;font-weight:700}.calendar-nav-controls__jump{position:relative}.calendar-nav-label-btn{display:inline-flex;min-width:120px;min-height:var(--toolbar-control-height);align-items:center;justify-content:center;gap:6px;padding:0 8px 0 12px;border:1px solid transparent;border-radius:var(--radius-md);background:transparent;color:var(--text-primary);font-size:16px;font-weight:750;line-height:1.2;white-space:nowrap;cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease}.calendar-nav-label-btn:hover:not(:disabled){border-color:transparent;background:var(--surface-muted)}.calendar-nav-label-btn:disabled{cursor:not-allowed;opacity:.55}.calendar-nav-label-btn__chevron{display:inline-flex;flex-shrink:0;width:18px;height:18px;align-items:center;justify-content:center;border-radius:999px;background:color-mix(in srgb,var(--brand) 14%,transparent);color:var(--brand);font-size:13px;font-weight:800;line-height:1}.month-jump-popover{position:absolute;top:calc(100% + 6px);left:50%;z-index:500;width:220px;padding:10px;border:1px solid var(--border-default);border-radius:var(--radius-lg);background:var(--surface-card);box-shadow:var(--shadow-lg);transform:translateX(-50%)}.month-jump-popover__year{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:8px}.month-jump-popover__year-label{flex:1 1;color:var(--text-primary);font-size:14px;font-weight:700;text-align:center}.month-jump-popover__year-btn{display:inline-flex;width:28px;height:28px;align-items:center;justify-content:center;padding:0;border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--surface-muted);color:var(--text-secondary);font-size:16px;line-height:1;cursor:pointer}.month-jump-popover__year-btn:hover{border-color:var(--border-control);background:var(--border-subtle)}.month-jump-popover__year-btn:focus-visible{outline:2px solid var(--brand);outline-offset:1px}.month-jump-popover__grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:4px;gap:4px}.month-jump-popover__month{min-height:32px;padding:4px 2px;border:1px solid transparent;border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);font-size:12px;font-weight:600;cursor:pointer}.month-jump-popover__month:hover{border-color:var(--border-default);background:var(--surface-muted)}.month-jump-popover__month:focus-visible{outline:2px solid var(--brand);outline-offset:1px}.month-jump-popover__month.is-selected{border-color:var(--brand);background:var(--brand-bg-subtle);color:var(--brand)}[data-theme=dark] .calendar-nav-label-btn__chevron{background:color-mix(in srgb,var(--brand) 22%,transparent);color:var(--brand)}[data-theme=dark] .month-jump-popover__year-btn:hover{border-color:var(--border-control);background:color-mix(in srgb,var(--surface-muted) 70%,var(--surface-raised))}[data-theme=dark] .month-jump-popover__month:hover{border-color:var(--border-control);background:var(--surface-muted)}[data-theme=dark] .month-jump-popover__month.is-selected{border-color:var(--brand);background:color-mix(in srgb,var(--brand) 22%,var(--surface-card));color:var(--brand)}.calendar-page .calendar-nav-label-btn{color:var(--calendar-ui-heading)}.calendar-page .calendar-nav-label-btn:hover:not(:disabled){border-color:transparent;background:color-mix(in srgb,var(--calendar-panel-bg) 72%,var(--brand) 8%)}.calendar-page .month-jump-popover{background:var(--calendar-panel-bg);border-color:var(--calendar-panel-border);box-shadow:var(--shadow-lg)}[data-theme=dark] .calendar-page .calendar-nav-label-btn:hover:not(:disabled){background:color-mix(in srgb,var(--calendar-panel-bg) 70%,var(--brand) 8%);border-color:transparent}[data-theme=dark] .calendar-page .month-jump-popover{box-shadow:0 18px 44px rgb(2 6 23/.45)}.alert{padding:12px 16px;border-radius:var(--radius-md);font-size:14px;display:flex;align-items:flex-start;gap:10px}.alert-error{background:var(--tone-danger-bg);color:var(--tone-danger-fg);border:1px solid color-mix(in srgb,var(--danger) 35%,transparent)}.alert-success{background:var(--tone-success-bg);color:var(--tone-success-fg);border:1px solid color-mix(in srgb,var(--success) 35%,transparent)}.alert-warning{background:var(--tone-warning-bg);color:var(--tone-warning-fg);border:1px solid color-mix(in srgb,var(--warning) 35%,transparent)}.alert-info{background:var(--brand-bg-subtle);color:var(--brand-hover);border:1px solid var(--tone-info-border)}.alert--section{margin-bottom:20px}.alert--inset{margin-bottom:12px}.chip-dismiss{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;border-radius:50%;border:none;background:var(--border-default);color:var(--text-muted);cursor:pointer;padding:0;line-height:1;flex-shrink:0}.chip-dismiss:hover{background:var(--border-control)}.chip-dismiss svg{display:block}.leave-affected-shifts{margin-bottom:12px;flex-direction:column;gap:4px;line-height:1.35}.leave-affected-shifts__summary{font-weight:600}.leave-affected-shifts__approval-note{font-size:13px}.leave-affected-shifts__list{margin:0;padding-left:20px;font-size:13px}.leave-affected-shifts--stacked{align-items:flex-start;flex-direction:column}.import-commit-error{position:relative;align-items:flex-start;flex-direction:row}.import-commit-error--dismissible{padding-right:40px}.import-commit-error__content{display:flex;flex-direction:column;gap:8px;min-width:0;flex:1 1}.import-commit-error__summary{font-weight:600}.import-commit-error__group{display:flex;flex-direction:column;gap:4px}.import-commit-error__reason{font-size:13px;line-height:1.35}.import-commit-error__list{margin:0;padding-left:20px;font-size:13px;max-height:160px;overflow-y:auto}.import-commit-error__overflow{margin:0;padding:0;border:none;background:none;font:inherit;font-size:13px;color:var(--text-muted);cursor:pointer;text-align:left;text-decoration:underline;text-underline-offset:2px}.import-commit-error__overflow:focus-visible,.import-commit-error__overflow:hover{color:var(--danger)}.import-commit-error__overflow:focus-visible{outline:2px solid color-mix(in srgb,var(--danger) 45%,transparent);outline-offset:2px;border-radius:2px}.import-commit-error__close{position:absolute;top:8px;right:8px;display:inline-flex;align-items:center;justify-content:center;padding:5px 9px;line-height:1;border:none;border-radius:var(--radius-sm);background:transparent;color:inherit;cursor:pointer}.import-commit-error__close:hover{background:color-mix(in srgb,var(--danger) 12%,transparent)}.import-commit-error__close:focus-visible{outline:2px solid color-mix(in srgb,var(--danger) 45%,transparent);outline-offset:2px}.divider{height:1px;background:var(--border-default);margin:24px 0}.spinner{width:20px;height:20px;border:2px solid var(--border-default);border-top-color:var(--brand);border-radius:50%;animation:spin .7s linear infinite}.spinner--xs{width:12px;height:12px}.spinner--sm{width:14px;height:14px}.spinner--md{width:16px;height:16px}@keyframes spin{to{transform:rotate(1turn)}}.empty-state{text-align:center;padding:60px 24px;border:1px solid var(--empty-state-border);border-radius:var(--radius-lg);background:var(--empty-state-bg);color:var(--text-muted)}.empty-state-icon{font-size:48px;margin-bottom:16px;color:var(--empty-state-icon)}.empty-state-title{font-size:16px;font-weight:600;color:var(--text-primary);margin-bottom:8px}.empty-state-desc{font-size:14px;color:var(--text-muted);margin-bottom:20px}.empty-state--dashed{border-style:dashed}.empty-state--compact{padding:40px 20px}.empty-state-icon--compact{font-size:28px;margin-bottom:12px}.empty-state-desc--action{margin-bottom:16px}.nav-notification{position:relative}.nav-notification__button{position:relative;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--surface-raised);color:var(--text-secondary);cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.nav-notification__button:hover{background:var(--surface-muted);border-color:var(--border-control);color:var(--text-primary)}.nav-notification__button[aria-expanded=true]{background:var(--brand-bg-subtle);border-color:color-mix(in srgb,var(--brand) 35%,var(--border-default));color:var(--brand)}.nav-notification__badge{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--danger);color:var(--surface-card);font-size:10px;font-weight:700;line-height:18px;text-align:center;pointer-events:none}.notification-panel{position:absolute;top:calc(100% + 8px);right:0;width:min(360px,calc(100vw - 24px));background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:60;overflow:hidden}.notification-panel__header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px solid var(--border-subtle)}.notification-panel__title{margin:0;font-size:14px;font-weight:700;color:var(--text-primary)}.notification-panel__actions{display:flex;align-items:center;gap:8px}.notification-panel__list{max-height:360px;overflow-y:auto}.notification-panel__empty{padding:24px 16px;text-align:center;color:var(--text-muted);font-size:13px}.notification-item{display:block;width:100%;padding:12px 14px;border:0;border-bottom:1px solid var(--border-subtle);background:transparent;text-align:left;cursor:pointer;transition:background .15s ease}.notification-item:last-child{border-bottom:0}.notification-item:hover{background:var(--surface-muted)}.notification-item:focus-visible{outline:2px solid var(--brand);outline-offset:-2px}.notification-item.is-unread{background:color-mix(in srgb,var(--brand-bg-subtle) 55%,transparent)}.notification-item.is-unread:hover{background:color-mix(in srgb,var(--brand-bg-subtle) 75%,transparent)}.notification-item__title{display:block;font-size:13px;font-weight:600;color:var(--text-primary);margin-bottom:2px}.notification-item__body{display:block;font-size:12px;color:var(--text-secondary);line-height:1.45}.notification-item__meta{display:block;margin-top:4px;font-size:11px;color:var(--text-muted)}.notification-panel__footer{padding:10px 14px;border-top:1px solid var(--border-subtle);background:var(--surface-muted)}.notification-panel__footer-link{display:block;text-align:center;font-size:13px;font-weight:600;color:var(--brand);text-decoration:none}.notification-panel__footer-link:hover{text-decoration:underline}.notifications-page-list{display:flex;flex-direction:column;gap:0}.notifications-page-item{display:grid;grid-template-columns:minmax(0,1fr) max-content;align-items:start;grid-column-gap:24px;column-gap:24px;grid-row-gap:6px;row-gap:6px;width:100%;padding:18px 20px;border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--surface-card);text-align:left;cursor:pointer;transition:border-color .15s ease,background .15s ease}.notifications-page-item+.notifications-page-item{margin-top:8px}.notifications-page-item .notification-item__body,.notifications-page-item .notification-item__title{grid-column:1;margin:0}.notifications-page-item .notification-item__body{font-size:13px;line-height:1.5}.notifications-page-item .notification-item__meta{grid-column:2;grid-row:1/span 2;justify-self:end;margin:1px 0 0;text-align:right;white-space:nowrap}.notifications-page-item:hover{border-color:var(--border-control);background:var(--surface-muted)}.notifications-page-item.is-unread{border-color:color-mix(in srgb,var(--brand) 35%,var(--border-default));background:color-mix(in srgb,var(--brand-bg-subtle) 45%,var(--surface-card))}[data-theme=dark] .nav-notification__button[aria-expanded=true]{background:color-mix(in srgb,var(--brand) 18%,var(--surface-raised));border-color:color-mix(in srgb,var(--brand) 40%,var(--border-default));color:var(--brand)}[data-theme=dark] .notification-item,[data-theme=dark] .notification-panel__header{border-bottom-color:var(--border-default)}[data-theme=dark] .notification-panel__footer{background:color-mix(in srgb,var(--surface-card) 82%,var(--surface-page));border-top-color:var(--border-default)}[data-theme=dark] .notification-item.is-unread,[data-theme=dark] .notifications-page-item.is-unread{background:color-mix(in srgb,var(--brand) 12%,var(--surface-card))}[data-theme=dark] .notification-item.is-unread:hover{background:color-mix(in srgb,var(--brand) 18%,var(--surface-card))}[data-theme=dark] .calendar-page .notification-panel{box-shadow:0 18px 44px rgb(2 6 23/.45)}@media (max-width:560px){.notifications-page-item{grid-template-columns:minmax(0,1fr);column-gap:0}.notifications-page-item .notification-item__meta{grid-column:1;grid-row:auto}}.export-menu{z-index:50;min-width:168px;padding:4px;border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--surface-card);box-shadow:var(--shadow-lg)}.export-menu__item{display:block;width:100%;padding:8px 10px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-primary);font-size:13px;font-weight:500;text-align:left;cursor:pointer}.export-menu__item:focus-visible,.export-menu__item:hover{background:var(--brand-bg-subtle);outline:none}[data-theme=dark] .export-menu__item:focus-visible,[data-theme=dark] .export-menu__item:hover{background:var(--surface-muted)}.disabled-action-tooltip{display:inline-flex;outline:none}.disabled-action-tooltip:focus-visible{border-radius:var(--radius-md);box-shadow:0 0 0 3px var(--focus-ring)}.anchored-tooltip{position:fixed;z-index:var(--z-tooltip);box-sizing:border-box;width:max-content;max-width:min(260px,calc(100vw - 16px));padding:10px 12px;border:1px solid var(--tooltip-border);border-radius:var(--radius-md);background:var(--tooltip-bg);color:var(--tooltip-title);font-size:12px;line-height:1.4;pointer-events:none;box-shadow:var(--tooltip-shadow)}.anchored-tooltip__title{font-weight:700;margin-bottom:4px}.anchored-tooltip__subtitle{color:var(--tooltip-text)}.walkthrough-shield{inset:0}.walkthrough-shield,.walkthrough-shield-piece{position:fixed;z-index:var(--z-walkthrough);cursor:default}.walkthrough-spotlight{position:fixed;z-index:calc(var(--z-walkthrough) + 1);border-radius:var(--radius-md);box-shadow:0 0 0 9999px var(--scrim);pointer-events:none;transition:top .2s var(--ease-out),left .2s var(--ease-out),width .2s var(--ease-out),height .2s var(--ease-out)}.walkthrough-card{position:fixed;z-index:calc(var(--z-walkthrough) + 2);box-sizing:border-box;width:max-content;max-width:min(340px,calc(100vw - 24px));padding:16px;border:1px solid var(--tooltip-border);border-radius:var(--radius-lg);background:var(--surface-card);color:var(--text-primary);box-shadow:var(--tooltip-shadow)}.walkthrough-card__header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.walkthrough-card__step{font-size:12px;white-space:nowrap}.walkthrough-card__skip,.walkthrough-card__step{color:var(--text-muted);line-height:var(--leading-normal)}.walkthrough-card__skip{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:2px 4px;border:0;border-radius:var(--radius-sm);background:transparent;font:inherit;font-size:12px;cursor:pointer}.walkthrough-card__skip:hover{background:var(--surface-muted);color:var(--text-primary)}.walkthrough-card__title{margin:0 0 6px;font-size:15px;font-weight:600;color:var(--text-primary)}.walkthrough-card__body{margin:0;font-size:13px;line-height:var(--leading-normal);color:var(--text-secondary)}.walkthrough-card__actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:16px}.auth-shell{min-height:100dvh;display:flex;flex-direction:column;background:var(--page-glow),var(--surface-page)}.auth-panel{flex:1 1;display:flex;align-items:center;justify-content:center;padding:48px 24px}.auth-card-wrap{width:100%;max-width:400px}.auth-card-wrap--wide{max-width:460px}.auth-page-header{margin-bottom:32px;text-align:center}.auth-page-title{font-size:26px;font-weight:800;margin-bottom:8px}.auth-page-subtitle{font-size:15px;color:var(--text-muted);line-height:1.6}