.admin-app{display:flex;height:100vh;overflow:hidden;background:var(--bg);color:var(--ink)}.admin-sidebar{width:240px;flex-shrink:0;background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column;padding:0 12px 16px;overflow-y:auto}.admin-brand{padding:20px 8px 16px;border-bottom:1px solid var(--border);margin-bottom:12px}.admin-brand-label{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin-top:6px}.admin-nav-section{font-size:10.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted-2);padding:14px 8px 4px}.admin-nav-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:8px;cursor:pointer;font-size:13.5px;color:var(--muted);transition:background .12s,color .12s;-webkit-user-select:none;user-select:none}.admin-nav-item:hover{background:var(--surface-2);color:var(--ink)}.admin-nav-item.active{background:var(--accent-soft);color:var(--accent);font-weight:600}.admin-main{flex:1;overflow-y:auto;display:flex;flex-direction:column}.admin-topbar{display:flex;align-items:center;gap:12px;padding:0 28px;height:56px;border-bottom:1px solid var(--border);background:var(--surface);flex-shrink:0}.admin-topbar h1{font-size:15px;font-weight:700;flex:1}.admin-content{flex:1;padding:28px;overflow-y:auto}.admin-kpi-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:16px;margin-bottom:28px}.admin-kpi{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:20px}.admin-kpi-icon{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;margin-bottom:12px}.admin-kpi-value{font-size:28px;font-weight:700;line-height:1;margin-bottom:4px}.admin-kpi-label{font-size:12px;color:var(--muted)}.admin-table-wrap{background:var(--surface);border:1px solid var(--border);border-radius:14px;overflow:hidden}.admin-table-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border);gap:12px}.admin-table-header h3{font-size:14px;font-weight:700;margin:0}table.admin-table{width:100%;border-collapse:collapse;font-size:13.5px}table.admin-table th{text-align:left;padding:10px 20px;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted-2);background:var(--surface-2);border-bottom:1px solid var(--border)}table.admin-table td{padding:13px 20px;border-bottom:1px solid var(--border);vertical-align:middle}table.admin-table tr:last-child td{border-bottom:none}table.admin-table tbody tr:hover{background:var(--surface-2)}.admin-table-empty{text-align:center;padding:48px 20px;color:var(--muted);font-size:13px}.role-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:20px;font-size:11px;font-weight:600}.role-badge.admin{background:#ede9fe;color:#7c3aed}.role-badge.manager{background:var(--warn-soft);color:var(--warn)}.role-badge.employee{background:var(--surface-2);color:var(--muted)}[data-theme=dark] .role-badge.admin{background:#3b1d6e;color:#c4b5fd}.contract-type{display:inline-block;padding:2px 8px;border-radius:20px;font-size:11px;font-weight:600}.contract-type.FULL_TIME{background:var(--accent-soft);color:var(--accent)}.contract-type.PART_TIME{background:#fef9c3;color:#a16207}.contract-type.FIXED_TERM{background:var(--warn-soft);color:var(--warn)}.contract-type.INTERNSHIP{background:#dcfce7;color:#16a34a}.contract-type.FREELANCE{background:var(--surface-2);color:var(--muted)}[data-theme=dark] .contract-type.PART_TIME{background:#422006;color:#fde68a}[data-theme=dark] .contract-type.INTERNSHIP{background:#14532d;color:#86efac}.dept-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;display:inline-block}.dept-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.dept-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:20px;position:relative}.dept-card-stripe{position:absolute;top:0;left:0;right:0;height:4px;border-radius:14px 14px 0 0}.dept-card-name{font-size:15px;font-weight:700;margin-bottom:4px;margin-top:8px}.dept-card-count{font-size:12px;color:var(--muted);margin-bottom:14px}.dept-avatars{display:flex;gap:-4px}.dept-avatars .avatar{border:2px solid var(--surface);margin-right:-6px}.admin-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:9000;padding:24px}.admin-modal{background:var(--surface);border-radius:16px;width:100%;max-width:520px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #00000040}.admin-modal-head{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 0}.admin-modal-head h3{font-size:16px;font-weight:700}.admin-modal-body{padding:20px 24px 24px}.admin-field{margin-bottom:16px}.admin-field label{display:block;font-size:12px;font-weight:600;color:var(--muted);margin-bottom:5px;text-transform:uppercase;letter-spacing:.04em}.admin-field input,.admin-field select,.admin-field textarea{width:100%;padding:9px 12px;border:1px solid var(--border);border-radius:8px;background:var(--bg);color:var(--ink);font-size:13.5px;font-family:inherit;outline:none;box-sizing:border-box;transition:border-color .15s}.admin-field input:focus,.admin-field select:focus,.admin-field textarea:focus{border-color:var(--accent)}.admin-field textarea{resize:vertical;min-height:72px}.admin-field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.admin-modal-foot{display:flex;justify-content:flex-end;gap:10px;padding-top:8px;border-top:1px solid var(--border);margin-top:8px}.admin-search{display:flex;align-items:center;gap:8px;background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:7px 12px;font-size:13px;color:var(--muted);min-width:200px}.admin-search input{border:none;background:transparent;color:var(--ink);font-size:13px;font-family:inherit;outline:none;width:100%}.status-pill{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;font-weight:600;padding:2px 8px;border-radius:20px}.status-pill.active{background:var(--success-soft);color:var(--success)}.status-pill.inactive{background:var(--surface-2);color:var(--muted-2)}.status-pill.expiring{background:var(--warn-soft);color:var(--warn)}.status-pill.expired{background:var(--danger-soft);color:var(--danger)}.color-swatches{display:flex;gap:8px;flex-wrap:wrap;margin-top:6px}.color-swatch{width:28px;height:28px;border-radius:8px;cursor:pointer;border:2px solid transparent;transition:border-color .12s,transform .12s}.color-swatch:hover{transform:scale(1.1)}.color-swatch.selected{border-color:var(--ink)}:root,[data-theme=warm]{--bg: #faf8f4;--bg-2: #f4f0e9;--surface: #ffffff;--surface-2: #fbfaf6;--border: #ece7dc;--border-strong: #ddd6c5;--divider: #f0ebe0;--ink: #1a1815;--ink-2: #3d3934;--muted: #756f65;--muted-2: #9a9387;--faint: #b8b1a3;--accent: oklch(.52 .16 272);--accent-2: oklch(.46 .18 272);--accent-soft: oklch(.95 .03 272);--accent-ink: oklch(.32 .14 272);--success: oklch(.55 .12 152);--success-soft: oklch(.95 .04 152);--warn: oklch(.68 .13 75);--warn-soft: oklch(.96 .05 80);--danger: oklch(.55 .18 28);--danger-soft: oklch(.96 .04 28);--shadow-sm: 0 1px 0 rgba(28,24,20,.04), 0 1px 2px rgba(28,24,20,.04);--shadow-md: 0 1px 0 rgba(28,24,20,.04), 0 4px 14px rgba(28,24,20,.06);--shadow-lg: 0 1px 0 rgba(28,24,20,.04), 0 20px 50px rgba(28,24,20,.12)}[data-theme=light]{--bg: #f4f6fb;--bg-2: #eaeff8;--surface: #ffffff;--surface-2: #f8fafc;--border: #dbe2f0;--border-strong: #c4cfe6;--divider: #e4eaf6;--ink: #0e1628;--ink-2: #2a3554;--muted: #5e6e96;--muted-2: #94a3be;--faint: #b8c4d8;--accent: oklch(.44 .11 222);--accent-2: oklch(.37 .13 222);--accent-soft: oklch(.94 .04 222);--accent-ink: oklch(.27 .1 222);--success: oklch(.52 .13 152);--success-soft: oklch(.94 .05 152);--warn: oklch(.65 .14 75);--warn-soft: oklch(.95 .06 80);--danger: oklch(.52 .19 28);--danger-soft: oklch(.95 .05 28);--shadow-sm: 0 1px 0 rgba(14,22,40,.04), 0 1px 3px rgba(14,22,40,.06);--shadow-md: 0 1px 0 rgba(14,22,40,.04), 0 4px 16px rgba(14,22,40,.08);--shadow-lg: 0 1px 0 rgba(14,22,40,.04), 0 20px 50px rgba(14,22,40,.14)}[data-theme=dark]{--bg: #0d1117;--bg-2: #161b27;--surface: #1c2333;--surface-2: #1f2840;--border: #2a3350;--border-strong: #364060;--divider: #222c44;--ink: #e6eaf6;--ink-2: #b8c2dc;--muted: #7a88aa;--muted-2: #4e5a78;--faint: #2e3a58;--accent: oklch(.68 .18 248);--accent-2: oklch(.74 .2 248);--accent-soft: oklch(.22 .07 248);--accent-ink: oklch(.88 .12 248);--success: oklch(.65 .16 152);--success-soft: oklch(.18 .06 152);--warn: oklch(.76 .15 75);--warn-soft: oklch(.2 .07 75);--danger: oklch(.66 .22 28);--danger-soft: oklch(.18 .07 28);--shadow-sm: 0 1px 0 rgba(0,0,0,.3), 0 1px 3px rgba(0,0,0,.4);--shadow-md: 0 1px 0 rgba(0,0,0,.3), 0 4px 20px rgba(0,0,0,.5);--shadow-lg: 0 1px 0 rgba(0,0,0,.3), 0 24px 60px rgba(0,0,0,.6)}[data-theme=light] .sidebar{background:var(--bg-2);border-right-color:var(--border)}[data-theme=light] .sidebar .nav-item.active{background:color-mix(in oklab,var(--accent-soft) 90%,var(--bg-2));border-color:transparent;border-left:2px solid var(--accent);padding-left:8px;color:var(--accent-ink);box-shadow:none}[data-theme=light] .sidebar .nav-item.active .icon{color:var(--accent)}[data-theme=light] .sidebar .nav-item:hover{background:color-mix(in oklab,var(--surface) 70%,var(--bg-2))}[data-theme=light] .sidebar-foot>div:first-child{background:var(--surface)!important;border-color:var(--border-strong)!important}[data-theme=light] .card{border-color:transparent;border-radius:var(--r-xl);box-shadow:0 1px 3px #0e16280f,0 6px 20px #0e162812}[data-theme=light] .card-head{border-bottom-color:var(--divider);border-radius:var(--r-xl) var(--r-xl) 0 0}[data-theme=light] .card-foot{border-top-color:var(--divider);border-radius:0 0 var(--r-xl) var(--r-xl)}[data-theme=light] .topbar{background:var(--surface);-webkit-backdrop-filter:none;backdrop-filter:none;border-bottom-color:var(--border)}[data-theme=light] .btn.primary{background:var(--accent);box-shadow:0 1px #00000029,inset 0 1px #ffffff14}[data-theme=light] .btn.primary:hover{background:var(--accent-2)}[data-theme=light] .stat{border:none;border-radius:var(--r-xl);border-top:2px solid color-mix(in oklab,var(--c, var(--accent)) 55%,transparent);box-shadow:0 1px 3px #0e16280d,0 4px 14px #0e16280f}[data-theme=light] .stat.stat-hidden{border-top-color:var(--border);box-shadow:none;background:var(--surface-2)}[data-theme=light] .segment{border-radius:12px;padding:4px}[data-theme=light] .segment button{border-radius:8px}[data-theme=light] .segment button.active{box-shadow:0 1px 3px #0e162814}[data-theme=light] .sheet{border-color:transparent;border-radius:24px;box-shadow:0 8px 40px #0e16282e,0 1px #0e16280a}:root{--font-sans: "Geist", "Söhne", ui-sans-serif, system-ui, -apple-system, sans-serif;--font-mono: "Geist Mono", ui-monospace, "SF Mono", Menlo, monospace;--font-serif: "Instrument Serif", ui-serif, Georgia, serif;--r-sm: 6px;--r-md: 10px;--r-lg: 14px;--r-xl: 20px}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font-sans);background:var(--bg);color:var(--ink);font-size:14px;line-height:1.45;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-feature-settings:"ss01","cv01","cv11"}button{font:inherit;cursor:pointer}input,textarea,select{font:inherit;color:inherit}a{color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.app{display:grid;grid-template-columns:244px 1fr;min-height:100vh}.sidebar{background:transparent;border-right:1px solid var(--border);padding:18px 14px;display:flex;flex-direction:column;gap:22px;position:sticky;top:0;height:100vh}.brand{display:flex;flex-direction:column;gap:3px;padding:4px 8px 10px}.brand-logo{width:148px;height:auto;display:block}.brand-sub{font-size:10px;font-weight:500;color:var(--muted);letter-spacing:.03em;padding-left:2px}.nav-section-label{font-size:11px;color:var(--muted-2);text-transform:uppercase;letter-spacing:.07em;padding:0 8px 6px;font-weight:500}.nav{display:flex;flex-direction:column;gap:2px}.nav-item{display:flex;align-items:center;gap:10px;padding:7px 9px;border-radius:8px;color:var(--ink-2);cursor:pointer;font-size:13.5px;font-weight:450;border:1px solid transparent;transition:background .12s ease,color .12s ease;-webkit-user-select:none;user-select:none}.nav-item:hover{background:#1c181409}.nav-item.active{background:var(--surface);border-color:var(--border);color:var(--ink);box-shadow:var(--shadow-sm);font-weight:500}.nav-item .icon{color:var(--muted);width:16px;height:16px;flex-shrink:0}.nav-item.active .icon{color:var(--accent)}.nav-item .badge-count{margin-left:auto;background:var(--accent);color:#fff;border-radius:999px;font-size:11px;padding:1px 7px;font-weight:500;font-feature-settings:"tnum"}.sidebar-foot{margin-top:auto;display:flex;flex-direction:column;gap:8px}.role-switch{display:flex;background:var(--bg-2);border:1px solid var(--border);border-radius:8px;padding:3px;position:relative;gap:0}.role-switch button{flex:1;background:transparent;border:none;font-size:12px;padding:6px 8px;border-radius:6px;color:var(--muted);font-weight:500;transition:color .15s ease;position:relative;z-index:1}.role-switch button.active{color:var(--ink)}.role-switch .thumb{position:absolute;top:3px;bottom:3px;border-radius:6px;background:var(--surface);box-shadow:var(--shadow-sm);transition:transform .22s cubic-bezier(.5,1.4,.5,1),width .22s ease;z-index:0}.user-chip{display:flex;align-items:center;gap:9px;padding:7px 8px;border-radius:8px;cursor:pointer}.user-chip:hover{background:#1c181409}.theme-toggle{display:flex;align-items:center;gap:8px;padding:7px 8px;border-radius:8px;cursor:pointer;width:100%;background:none;border:none;color:var(--muted);font-size:12px;font-weight:500;transition:background .15s,color .15s}.theme-toggle:hover{background:var(--bg-2);color:var(--ink)}.theme-toggle .theme-dot{width:16px;height:16px;border-radius:50%;border:1.5px solid var(--border-strong);flex-shrink:0;display:grid;place-items:center;overflow:hidden}.theme-toggle .theme-dot:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--accent)}.theme-label-badge{margin-left:auto;font-size:10px;padding:1px 6px;border-radius:99px;background:var(--accent-soft);color:var(--accent-ink);font-weight:600}.user-chip .meta{flex:1;min-width:0}.user-chip .name{font-size:13px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-chip .role{font-size:11.5px;color:var(--muted)}.main{display:flex;flex-direction:column;min-width:0;height:100vh;overflow:hidden}.topbar{display:flex;align-items:center;gap:16px;padding:14px 28px;border-bottom:1px solid var(--border);background:color-mix(in oklab,var(--bg) 85%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);position:sticky;top:0;z-index:10}.topbar .breadcrumb{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted)}.topbar .breadcrumb .current{color:var(--ink);font-weight:500}.topbar .search{margin-left:auto;display:flex;align-items:center;gap:8px;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:6px 10px;width:240px;color:var(--muted);font-size:12.5px}.topbar .search kbd{margin-left:auto;background:var(--bg-2);border:1px solid var(--border);border-radius:4px;padding:1px 5px;font-size:10.5px;color:var(--muted);font-family:var(--font-mono)}.topbar .icon-btn{width:32px;height:32px;display:grid;place-items:center;background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--ink-2);position:relative}.topbar .icon-btn .dot{position:absolute;top:6px;right:6px;width:6px;height:6px;background:var(--accent);border-radius:50%;border:1.5px solid var(--surface)}.page{padding:28px;max-width:1280px;width:100%;margin:0 auto;flex:1;overflow-y:auto;scrollbar-width:none}.page::-webkit-scrollbar{display:none}.team-header{display:grid;grid-template-columns:1.8fr 1fr 1fr 1fr .6fr;padding:8px 18px;border-bottom:1px solid var(--divider);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.team-row{display:grid;grid-template-columns:1.8fr 1fr 1fr 1fr .6fr;align-items:center;padding:12px 18px;gap:12px;border-bottom:1px solid var(--divider)}.team-row:last-child{border-bottom:none}.team-stat-cell{display:flex;flex-direction:column;gap:5px}.team-scroll{max-height:calc(100vh - 215px);overflow-y:auto;overscroll-behavior:contain}.reports-filter-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;flex-wrap:wrap}.filter-chip{padding:5px 13px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--ink-2);font-size:12.5px;font-weight:500;cursor:pointer;transition:all .15s}.filter-chip:hover{border-color:var(--accent);color:var(--accent)}.filter-chip.active{background:var(--accent);color:#fff;border-color:var(--accent)}.members-scroll{max-height:340px;overflow-y:auto;overscroll-behavior:contain}.holiday-form{padding:16px 18px;background:var(--bg-2)}.policy-form-row td{background:var(--bg-2);padding:10px 12px}.page-reports{display:flex;flex-direction:column;height:100%;overflow:hidden;padding-bottom:0}.page-reports .page-head{flex-shrink:0}.reports-scroll{flex:1;overflow-y:auto;overscroll-behavior:contain;padding-bottom:28px}.page-balance{display:flex;flex-direction:column;padding:20px 28px 14px;height:100%;overflow:hidden;gap:0}.page-balance .page-head{margin-bottom:14px}.page-balance .bal-grid{flex-shrink:0}.bal-bookings{flex:1;min-height:0;display:flex;flex-direction:column}.bal-bookings .section-title{flex-shrink:0}.bal-bookings .card{flex:1;min-height:0;display:flex;flex-direction:column}.bal-booking-list{flex:1;overflow-y:auto;min-height:0}.page-calendar{display:flex;flex-direction:column;gap:0;padding:20px 28px 14px;height:100%;overflow:hidden}.page-calendar .page-head{margin-bottom:12px}.page-calendar .card{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column}.page-calendar .card .cal{flex:1;min-height:0;overflow:hidden}.page-calendar .cal-cell{overflow:hidden;min-height:0}.page-calendar .cal{grid-template-rows:auto repeat(6,1fr);height:100%}.page-dashboard{display:flex;flex-direction:column;gap:12px;padding:20px 28px 16px;height:100%;overflow:hidden}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:24px;flex-shrink:0}.page-head h1{font-family:var(--font-sans);font-weight:700;font-size:20px;line-height:1.2;letter-spacing:-.01em;margin:0 0 3px}.page-head .sub{color:var(--muted);font-size:13px}.page-head .actions{display:flex;gap:8px}.page-dashboard .page-head{margin-bottom:0}.page-dashboard .page-head h1{font-size:18px;margin:0 0 2px}.page-dashboard .page-head .sub{font-size:12.5px}.btn{display:inline-flex;align-items:center;gap:7px;border-radius:8px;padding:8px 13px;font-size:13px;font-weight:500;border:1px solid transparent;background:var(--surface);color:var(--ink);box-shadow:var(--shadow-sm);transition:background .12s,transform .05s,border-color .12s;white-space:nowrap}.btn .icon{width:14px;height:14px}.btn:active{transform:translateY(.5px)}.btn.primary{background:var(--ink);color:#fff;box-shadow:0 1px #0003,inset 0 1px #ffffff14}.btn.primary:hover{background:#2a2622}.btn.secondary{background:var(--surface);border-color:var(--border-strong);color:var(--ink)}.btn.secondary:hover{background:var(--bg-2)}.btn.ghost{background:transparent;box-shadow:none;color:var(--ink-2)}.btn.ghost:hover{background:#1c18140a}.btn.success{background:var(--success);color:#fff;box-shadow:0 1px #00000026,inset 0 1px #ffffff1a}.btn.success:hover{filter:brightness(1.05)}.btn.danger{background:var(--surface);border-color:var(--border-strong);color:var(--danger)}.btn.danger:hover{background:var(--danger-soft);border-color:var(--danger)}.btn.sm{padding:5px 9px;font-size:12px;border-radius:7px}.btn.lg{padding:11px 16px;font-size:14px}.btn[disabled]{opacity:.4;cursor:not-allowed}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}.card-head{padding:16px 18px;border-bottom:1px solid var(--divider);display:flex;align-items:center;justify-content:space-between;gap:12px}.card-head h3{margin:0;font-size:14px;font-weight:550;letter-spacing:-.005em}.card-head .sub{font-size:12px;color:var(--muted);margin-top:1px}.card-body{padding:18px}.card-foot{padding:12px 18px;border-top:1px solid var(--divider);display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12.5px;color:var(--muted)}.badge{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;font-weight:500;padding:2px 8px;border-radius:999px;background:var(--bg-2);color:var(--ink-2);border:1px solid var(--border);line-height:1.6}.badge .dot{width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.85}.badge.success{color:var(--success);background:var(--success-soft);border-color:transparent}.badge.warn{color:#734c00;color:oklch(.45 .13 75);background:var(--warn-soft);border-color:transparent}.badge.danger{color:var(--danger);background:var(--danger-soft);border-color:transparent}.badge.accent{color:var(--accent-ink);background:var(--accent-soft);border-color:transparent}.badge.neutral{color:var(--muted);background:var(--bg-2);border-color:transparent}.avatar{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:600;color:#fff;flex-shrink:0;letter-spacing:.01em;border:1.5px solid var(--surface)}.avatar.lg{width:40px;height:40px;font-size:14px}.avatar.sm{width:22px;height:22px;font-size:10px}.avatar.xs{width:18px;height:18px;font-size:9px;border-width:1px}.avatar-stack{display:flex}.avatar-stack .avatar{margin-left:-7px}.avatar-stack .avatar:first-child{margin-left:0}.field{display:flex;flex-direction:column;gap:6px}.field label{font-size:12px;color:var(--ink-2);font-weight:500}.field .hint{font-size:11.5px;color:var(--muted)}.input,.select,.textarea{background:var(--surface);border:1px solid var(--border-strong);border-radius:8px;padding:9px 11px;font-size:13px;color:var(--ink);outline:none;transition:border-color .12s,box-shadow .12s;width:100%}.textarea{resize:vertical;min-height:80px;line-height:1.5}.input:focus,.select:focus,.textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.input::placeholder,.textarea::placeholder{color:var(--muted-2)}.segment{display:inline-flex;background:var(--bg-2);border:1px solid var(--border);border-radius:9px;padding:3px;gap:0}.segment button{background:transparent;border:none;font-size:12.5px;padding:5px 12px;border-radius:6px;color:var(--muted);font-weight:500}.segment button.active{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-sm)}.num{font-family:var(--font-mono);font-feature-settings:"tnum","zero"}.search-modal{position:fixed;top:18vh;left:50%;transform:translate(-50%);width:min(580px,calc(100vw - 32px));background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:0 24px 64px #0000002e;z-index:300;overflow:hidden;display:flex;flex-direction:column;animation:modalIn .15s ease}.search-modal-bar{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--border)}.search-modal-input{flex:1;background:transparent;border:none;outline:none;font-size:15px;color:var(--ink);font-family:var(--font-sans)}.search-modal-input::placeholder{color:var(--muted-2)}.search-esc{font-size:10px;background:var(--surface-2);border:1px solid var(--border);border-radius:4px;padding:2px 6px;color:var(--muted);font-family:var(--font-sans)}.search-results{overflow-y:auto;max-height:360px;padding:6px 0}.search-group{padding:4px 0}.search-group-label{font-size:10.5px;font-weight:600;color:var(--muted-2);letter-spacing:.06em;text-transform:uppercase;padding:6px 16px 4px}.search-result-item{width:100%;display:flex;align-items:center;gap:10px;padding:8px 16px;background:transparent;border:none;cursor:pointer;text-align:left;font-family:var(--font-sans);font-size:13.5px;color:var(--ink);transition:background .1s}.search-result-item:hover,.search-result-item.active{background:var(--surface-2)}.search-icon-wrap{width:28px;height:28px;border-radius:var(--r-sm);background:var(--bg-2);display:grid;place-items:center;color:var(--muted);flex-shrink:0}.search-avatar{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:600;color:#fff;flex-shrink:0}.search-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 16px;color:var(--muted);font-size:13px;text-align:center}.search-footer{display:flex;gap:16px;padding:8px 16px;border-top:1px solid var(--border);font-size:11px;color:var(--muted)}.search-footer kbd{display:inline-block;background:var(--surface-2);border:1px solid var(--border);border-radius:3px;padding:1px 5px;font-size:10px;margin-right:4px;font-family:var(--font-sans)}.toast-wrap{position:fixed;bottom:24px;right:28px;z-index:999;display:flex;flex-direction:column;gap:10px;pointer-events:none}.toast{background:var(--ink);color:#fff;padding:11px 14px;border-radius:10px;font-size:13px;display:flex;align-items:center;gap:10px;box-shadow:var(--shadow-lg);pointer-events:auto;min-width:260px;animation:toastIn .25s cubic-bezier(.2,1,.3,1)}.toast .icon{width:16px;height:16px;color:#58c97d}@keyframes toastIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f0c0852;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:100;animation:fadeIn .18s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.sheet{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:860px;max-width:calc(100vw - 40px);max-height:calc(100vh - 48px);background:var(--bg);border:1px solid var(--border);border-radius:var(--r-xl);z-index:101;display:flex;flex-direction:column;animation:modalIn .22s cubic-bezier(.2,1,.3,1);box-shadow:var(--shadow-lg)}@keyframes modalIn{0%{transform:translate(-50%,-47%);opacity:0}to{transform:translate(-50%,-50%);opacity:1}}.sheet-head{padding:18px 22px 14px;border-bottom:1px solid var(--divider);display:flex;justify-content:space-between;align-items:center}.sheet-head h2{font-family:var(--font-sans);font-weight:700;font-size:16px;margin:0;letter-spacing:-.005em}.sheet-body{padding:20px 22px;flex:1;overflow:hidden;display:flex;flex-direction:column;gap:14px}.sheet-foot{padding:14px 22px;border-top:1px solid var(--divider);display:flex;justify-content:space-between;align-items:center;gap:12px;background:var(--surface-2)}.sheet.sheet-wide{width:960px}.req-star{color:var(--danger);font-size:12px;margin-left:2px}.req-info-row{display:flex;flex-direction:column;gap:4px;padding:12px 14px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);font-size:13px}.ot-radio-group{display:flex;flex-direction:column;gap:8px}.ot-radio{display:flex;align-items:center;gap:10px;padding:9px 13px;border:1px solid var(--border);border-radius:var(--r-md);cursor:pointer;font-size:13.5px;transition:background .12s,border-color .12s;-webkit-user-select:none;user-select:none}.ot-radio:hover{background:var(--surface-2)}.ot-radio.active{border-color:var(--accent);background:var(--accent-soft)}.ot-radio-dot{width:14px;height:14px;border-radius:50%;border:2px solid var(--border-strong);flex-shrink:0;transition:border-color .12s,background .12s}.ot-radio.active .ot-radio-dot{border-color:var(--accent);background:var(--accent);box-shadow:inset 0 0 0 3px var(--accent-soft)}.ot-calc-card{border:1px solid var(--border);border-radius:var(--r-md);overflow:hidden}.ot-calc-title{display:flex;align-items:center;gap:8px;padding:10px 14px;background:var(--warn-soft);font-size:12.5px;font-weight:600;color:var(--ink-2);border-bottom:1px solid var(--border)}.ot-calc-table{width:100%;border-collapse:collapse;font-size:12.5px}.ot-calc-table th{padding:8px 12px;background:var(--surface-2);color:var(--muted);font-weight:500;text-align:left;border-bottom:1px solid var(--border);font-size:11.5px}.ot-calc-table td{padding:10px 12px;color:var(--ink)}.ot-calc-table td.num{font-family:var(--font-mono);font-size:13px}.divider{height:1px;background:var(--divider);margin:12px 0}.row{display:flex;align-items:center;gap:10px}.row.spread{justify-content:space-between}.col{display:flex;flex-direction:column}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.gap-6{gap:24px}.muted{color:var(--muted)}.small{font-size:12px}.tiny{font-size:11px}.flex-1{flex:1;min-width:0}.grid{display:grid;gap:16px}.text-truncate{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.type-pto{--c: oklch(.55 .16 270)}.type-annual{--c: oklch(.58 .13 145)}.type-sick{--c: oklch(.6 .13 25)}.type-personal{--c: oklch(.62 .13 65)}.type-parental{--c: oklch(.55 .12 200)}.type-bereave{--c: oklch(.52 .05 280)}.type-holiday{--c: oklch(.58 .13 145)}.type-chip{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:500;color:var(--ink-2)}.type-chip:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--c, var(--muted))}.stat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px}.stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:16px 18px;position:relative;overflow:hidden;box-shadow:var(--shadow-sm)}.stat .label{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--muted);margin-bottom:8px;font-weight:500}.stat .num-big{font-family:var(--font-sans);font-size:32px;line-height:1;font-weight:700;letter-spacing:-.02em;color:var(--ink);display:flex;align-items:baseline;gap:6px}.stat .num-big .unit{font-family:var(--font-sans);font-size:13px;color:var(--muted);font-weight:450;letter-spacing:0}.stat .bar{margin-top:14px;height:4px;background:var(--bg-2);border-radius:999px;overflow:hidden}.stat .bar .fill{height:100%;background:var(--c, var(--accent));border-radius:999px;transition:width .6s cubic-bezier(.2,1,.3,1)}.stat .foot{margin-top:8px;font-size:11.5px;color:var(--muted);display:flex;justify-content:space-between}.page-dashboard .stat{padding:11px 14px}.page-dashboard .stat .num-big{font-size:26px}.page-dashboard .stat .bar{margin-top:8px;height:3px}.page-dashboard .stat .foot{margin-top:5px;font-size:11px}.page-dashboard .stat .label{margin-bottom:5px;font-size:11.5px}.page-dashboard .stat-grid{flex-shrink:0;gap:10px}.stat-toggle-btn{margin-left:auto;background:none;border:none;padding:2px 4px;border-radius:4px;color:var(--muted-2);cursor:pointer;display:flex;align-items:center;line-height:1;transition:color .15s,background .15s}.stat-toggle-btn:hover{color:var(--ink);background:var(--bg-2)}.stat.stat-hidden{background:var(--surface-2);opacity:.7;min-height:0}.stat.stat-hidden .label{margin-bottom:0;color:var(--muted-2)}.cal{display:grid;grid-template-columns:repeat(7,1fr);border-top:1px solid var(--divider);border-left:1px solid var(--divider);border-radius:var(--r-md);overflow:hidden}.cal-dow{font-size:11px;font-weight:500;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;padding:8px 10px;background:var(--surface-2);border-right:1px solid var(--divider);border-bottom:1px solid var(--divider)}.cal-cell{background:var(--surface);border-right:1px solid var(--divider);border-bottom:1px solid var(--divider);min-height:92px;padding:8px;display:flex;flex-direction:column;gap:4px;position:relative;font-size:12px}.cal-cell.dim{background:var(--surface-2);color:var(--muted-2)}.cal-cell.weekend{background:color-mix(in oklab,var(--surface-2),var(--bg) 50%)}.cal-cell .date{font-family:var(--font-mono);font-size:11px;color:var(--muted);align-self:flex-end}.cal-cell.today .date{background:var(--ink);color:#fff;border-radius:4px;padding:1px 5px}.cal-pill{display:flex;align-items:center;gap:5px;background:color-mix(in oklab,var(--c, var(--accent)) 14%,var(--surface));color:color-mix(in oklab,var(--c, var(--accent)) 75%,var(--ink));border-left:2px solid var(--c, var(--accent));padding:2px 6px;border-radius:4px;font-size:11px;font-weight:500;line-height:1.4}.cal-pill .avatar{width:14px;height:14px;font-size:8px;border:none}.cal-pill.more{background:transparent;border:none;color:var(--muted);padding-left:0}.req-row{display:grid;grid-template-columns:1fr auto;gap:12px;padding:14px 18px;border-bottom:1px solid var(--divider);align-items:center}.req-row:last-child{border-bottom:none}.req-row:hover{background:var(--surface-2)}.req-row .who{display:flex;align-items:center;gap:10px}.req-row .who .name{font-weight:500;font-size:13.5px}.req-row .who .meta{color:var(--muted);font-size:12px;margin-top:1px}.req-row .actions{display:flex;gap:6px}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--border);margin-bottom:0}.tabs button{background:transparent;border:none;padding:10px 14px;font-size:13px;color:var(--muted);font-weight:500;border-bottom:2px solid transparent;margin-bottom:-1px}.tabs button.active{color:var(--ink);border-bottom-color:var(--ink)}.empty{padding:40px 20px;text-align:center;color:var(--muted);font-size:13px}.activity{display:flex;flex-direction:column}.act{display:flex;gap:12px;padding:12px 0;border-bottom:1px dashed var(--divider);align-items:flex-start}.act:last-child{border-bottom:none}.act .dot-col{width:8px;position:relative;align-self:stretch;display:flex;justify-content:center}.act .dot-col:before{content:"";position:absolute;top:6px;width:8px;height:8px;border-radius:50%;background:var(--c, var(--muted-2));border:2px solid var(--surface);box-shadow:0 0 0 1px var(--c, var(--muted-2))}.act .copy{flex:1}.act .copy .who{font-weight:500}.act .when{font-size:11.5px;color:var(--muted-2);white-space:nowrap}.conflict-card{background:var(--warn-soft);border:1px solid color-mix(in oklab,var(--warn) 30%,transparent);border-radius:10px;padding:11px 13px;display:flex;gap:10px;font-size:12.5px}.conflict-card .icon{color:var(--warn);flex-shrink:0;margin-top:1px}.daterange{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;align-items:center}.daterange .arrow{color:var(--muted)}.days-summary{display:flex;justify-content:space-between;align-items:center;background:var(--surface-2);border:1px solid var(--border);border-radius:10px;padding:12px 14px;font-size:13px}.days-summary .big{font-family:var(--font-sans);font-size:24px;font-weight:700;line-height:1;letter-spacing:-.02em}.days-summary .label{font-size:11.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.mini-cal{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;-webkit-user-select:none;user-select:none}.mini-cal .dow{font-size:10px;color:var(--muted-2);text-transform:uppercase;text-align:center;padding:4px 0;font-weight:500;letter-spacing:.06em}.mini-cal .d{aspect-ratio:1 / 1;display:grid;place-items:center;font-size:12.5px;border-radius:6px;color:var(--ink-2);font-family:var(--font-mono);cursor:pointer;border:1px solid transparent}.mini-cal .d:hover:not(.dim):not(.disabled){background:var(--bg-2)}.mini-cal .d.dim{color:var(--muted-2);opacity:.55}.mini-cal .d.today{border-color:var(--border-strong)}.mini-cal .d.in-range{background:var(--accent-soft);color:var(--accent-ink);border-radius:0}.mini-cal .d.range-start{background:var(--accent);color:#fff;border-top-left-radius:6px;border-bottom-left-radius:6px}.mini-cal .d.range-end{background:var(--accent);color:#fff;border-top-right-radius:6px;border-bottom-right-radius:6px}.mini-cal .d.single{background:var(--accent);color:#fff;border-radius:6px}.mini-cal .d.disabled{color:var(--muted-2);cursor:not-allowed;opacity:.4}.mini-cal .d.weekend{color:var(--muted-2);background:var(--bg-2);cursor:default;opacity:.5}.mini-cal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:13px;font-weight:500}.mini-cal-head .nav-btn{width:24px;height:24px;border-radius:6px;background:transparent;border:1px solid var(--border);display:grid;place-items:center;color:var(--ink-2)}.mini-cal-head .nav-btn:hover{background:var(--bg-2)}.type-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.type-radio{border:1px solid var(--border);border-radius:9px;padding:10px 12px;background:var(--surface);cursor:pointer;display:flex;flex-direction:column;gap:2px;transition:all .12s ease}.type-radio:hover{border-color:var(--border-strong)}.type-radio.active{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 3px color-mix(in oklab,var(--accent) 12%,transparent)}.type-radio .name{font-weight:500;font-size:13px;display:flex;align-items:center;gap:6px}.type-radio .balance{font-size:11.5px;color:var(--muted)}.notif-pop{position:fixed;top:62px;right:24px;width:360px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);z-index:200;overflow:hidden;animation:popIn .18s ease}@keyframes popIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.notif-pop .head{padding:12px 14px;border-bottom:1px solid var(--divider);display:flex;justify-content:space-between;align-items:center}.notif-pop .head h4{margin:0;font-size:13px;font-weight:600}.notif-pop .list{max-height:calc(100vh - 140px);overflow-y:auto;scrollbar-width:none}.notif-pop .list::-webkit-scrollbar{display:none}.notif-pop .n{padding:11px 14px;border-bottom:1px solid var(--divider);display:flex;gap:10px;cursor:pointer}.notif-pop .n:hover{background:var(--surface-2)}.notif-pop .n:last-child{border-bottom:none}.notif-pop .n .body{flex:1}.notif-pop .n .title{font-size:12.5px;font-weight:500}.notif-pop .n .meta{font-size:11.5px;color:var(--muted);margin-top:2px}.notif-pop .n.unread{background:color-mix(in oklab,var(--accent-soft) 50%,var(--surface))}.notif-pop .n.unread .title:after{content:"";display:inline-block;width:6px;height:6px;background:var(--accent);border-radius:50%;margin-left:6px;vertical-align:middle}.two-col{display:grid;grid-template-columns:1.5fr 1fr;gap:14px}.page-dashboard .two-col{flex-shrink:0}.section-title{display:flex;align-items:center;justify-content:space-between;margin:24px 0 12px}.page-dashboard .section-title{margin:4px 0 6px;flex-shrink:0}.section-title h2{font-size:13px;font-weight:600;margin:0;letter-spacing:-.005em}.section-title .link{font-size:12px;color:var(--muted);text-decoration:none}.section-title .link:hover{color:var(--ink);text-decoration:underline}.dash-recent,.dash-recent .card{flex:1;min-height:0;display:flex;flex-direction:column}.dash-recent .card .req-list{flex:1;overflow-y:auto;min-height:0}.av-0{background:#546bbd}.av-1{background:#b14e49}.av-2{background:#38853e}.av-3{background:#a75c00;background:oklch(.55 .13 60)}.av-4{background:#008287;background:oklch(.55 .13 200)}.av-5{background:#9256a0}.av-6{background:#817200;background:oklch(.55 .13 100)}.av-7{background:#ac4c6e}.auth{min-height:100vh;display:grid;grid-template-columns:1.05fr 1fr;background:var(--bg)}.auth.auth-centered{grid-template-columns:1fr;place-items:center}.auth.auth-centered .auth-form-wrap{width:100%;max-width:480px}.auth-aside{background:var(--ink);color:#f6f3ed;position:relative;overflow:hidden;padding:40px;display:flex;flex-direction:column;gap:40px}.auth-aside:before{content:"";position:absolute;inset:-10% -20% auto auto;width:120%;height:90%;background:radial-gradient(60% 60% at 70% 30%,oklch(.45 .18 272 / .65),transparent 60%),radial-gradient(50% 50% at 20% 90%,oklch(.5 .13 25 / .35),transparent 65%);pointer-events:none}.auth-aside .brand{color:#fff;z-index:1}.auth-aside .brand-mark{background:#fff;color:var(--ink)}.auth-aside .brand-mark:after{background:radial-gradient(120% 80% at 100% 0%,oklch(.7 .18 272 / .7) 0%,transparent 60%)}.auth-aside .brand-name{color:#fff}.auth-aside .brand-name .accent{color:#92a8ff;color:oklch(.75 .16 272)}.auth-aside .pitch{margin-top:auto;position:relative;z-index:1;max-width:460px}.auth-aside .pitch h1{font-family:var(--font-sans);font-weight:800;font-size:36px;line-height:1.1;margin:0 0 18px;letter-spacing:-.02em}.auth-aside .pitch p{font-size:14.5px;line-height:1.55;color:#ffffff9e;margin:0;max-width:380px}.auth-aside .testimonial{position:relative;z-index:1;border-top:1px solid rgba(255,255,255,.12);padding-top:18px;margin-top:22px;display:flex;gap:12px;align-items:center;font-size:13px;color:#ffffffb8}.auth-aside .testimonial .who{font-weight:500;color:#fff}.auth-aside .preview{position:relative;z-index:1;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:14px;font-size:12px;color:#ffffffd9;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.auth-aside .preview .row{gap:8px}.auth-aside .preview .pill{background:#ffffff14;border-radius:999px;padding:3px 10px;font-size:11px}.auth-aside .preview .bars{display:grid;grid-template-columns:repeat(28,1fr);gap:2px;margin-top:12px}.auth-aside .preview .bar{height:18px;background:#ffffff14;border-radius:3px}.auth-aside .preview .bar.fill{background:#6e85f0}.auth-aside .preview .bar.fill.faded{background:#6e85f066}.auth-form-wrap{display:flex;align-items:center;justify-content:center;padding:40px;position:relative}.auth-form-wrap .top-right{position:absolute;top:28px;right:32px;display:flex;gap:10px;align-items:center;font-size:13px;color:var(--muted)}.auth-form{width:100%;max-width:380px;display:flex;flex-direction:column;gap:18px}.auth-form h2{font-family:var(--font-sans);font-weight:700;font-size:22px;line-height:1.2;letter-spacing:-.01em;margin:0}.auth-form .lead{color:var(--muted);font-size:13.5px;margin:-10px 0 6px}.auth-form .or-divider{display:flex;align-items:center;gap:10px;color:var(--muted-2);font-size:11.5px;letter-spacing:.06em;text-transform:uppercase}.auth-form .or-divider:before,.auth-form .or-divider:after{content:"";height:1px;background:var(--border);flex:1}.ms-signin-btn{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;padding:12px 20px;background:var(--surface);border:1.5px solid var(--border-strong);border-radius:var(--r-md);font-size:14.5px;font-weight:600;color:var(--ink);cursor:pointer;transition:background .15s,box-shadow .15s;box-shadow:0 1px 3px #0000000f}.ms-signin-btn:hover:not(:disabled){background:var(--bg-2);box-shadow:0 2px 8px #0000001a}.ms-signin-btn:disabled{opacity:.5;cursor:not-allowed}.auth-form .demo-row{margin-top:8px;padding:12px;background:var(--bg-2);border:1px dashed var(--border-strong);border-radius:10px;font-size:12px;color:var(--muted);display:flex;gap:8px;align-items:center;flex-wrap:wrap}.auth-form .demo-row strong{color:var(--ink);font-weight:500}.settings-layout{display:grid;grid-template-columns:200px 1fr;gap:28px;align-items:flex-start}.settings-nav{display:flex;flex-direction:column;gap:2px;position:sticky;top:80px}.page-settings{display:flex;flex-direction:column;padding:20px 28px 14px;height:100%;overflow:hidden}.page-settings .page-head{margin-bottom:14px;flex-shrink:0}.page-settings .settings-layout{flex:1;min-height:0;align-items:stretch}.page-settings .settings-nav{position:static;align-self:flex-start;padding-top:2px}.page-settings .settings-section{overflow-y:auto;min-height:0;padding-right:2px}.settings-nav button{background:transparent;border:none;text-align:left;padding:7px 10px;border-radius:8px;color:var(--muted);font-size:13px;font-weight:450;display:flex;align-items:center;gap:8px}.settings-nav button:hover{color:var(--ink)}.settings-nav button.active{background:var(--surface);color:var(--ink);border:1px solid var(--border);font-weight:500;box-shadow:var(--shadow-sm)}.settings-section{display:flex;flex-direction:column;gap:14px}.settings-section h2{font-family:var(--font-sans);font-weight:700;font-size:16px;margin:0;letter-spacing:-.005em}.settings-section .lead{color:var(--muted);font-size:13.5px;margin-top:-6px}.row-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}.row-card .item{display:grid;grid-template-columns:1.1fr 1fr auto;gap:16px;align-items:center;padding:14px 18px;border-bottom:1px solid var(--divider)}.row-card .item:last-child{border-bottom:none}.row-card .item .label-col .name{font-weight:500;font-size:13.5px}.row-card .item .label-col .hint{color:var(--muted);font-size:12px;margin-top:1px}.toggle{width:32px;height:18px;background:var(--border-strong);border-radius:999px;position:relative;cursor:pointer;transition:background .18s ease;flex-shrink:0}.toggle:after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;background:#fff;border-radius:50%;box-shadow:0 1px 3px #00000026;transition:transform .18s ease}.toggle.on{background:var(--accent)}.toggle.on:after{transform:translate(14px)}.integ-card{display:flex;align-items:center;gap:14px;padding:14px 16px;border-bottom:1px solid var(--divider)}.integ-card:last-child{border-bottom:none}.integ-card .logo{width:36px;height:36px;border-radius:8px;display:grid;place-items:center;font-size:14px;font-weight:600;color:#fff;flex-shrink:0}.integ-card .copy{flex:1;min-width:0}.integ-card .name{font-weight:500;font-size:13.5px}.integ-card .meta{color:var(--muted);font-size:12px}.policy-table{width:100%;border-collapse:separate;border-spacing:0;font-size:13px}.policy-table th,.policy-table td{padding:12px 14px;text-align:left;border-bottom:1px solid var(--divider)}.policy-table th{background:var(--surface-2);font-weight:500;font-size:11.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.policy-table tr:last-child td{border-bottom:none}.policy-table td .name-cell{display:flex;align-items:center;gap:10px}.policy-table .small-input{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:4px 8px;width:60px;text-align:center;font-family:var(--font-mono);font-size:12.5px}.danger-zone{background:var(--surface);border:1px solid color-mix(in oklab,var(--danger) 30%,var(--border));border-radius:var(--r-lg);padding:14px 18px;display:flex;align-items:center;justify-content:space-between;gap:16px}.danger-zone .copy .title{font-weight:500;color:var(--danger)}.danger-zone .copy .hint{font-size:12.5px;color:var(--muted)}.skel{background:linear-gradient(90deg,var(--bg-2),color-mix(in oklab,var(--bg-2),white 40%),var(--bg-2));background-size:200% 100%;animation:shimmer 1.4s linear infinite;border-radius:6px}[data-theme=dark] .nav-item:hover{background:#ffffff0f}[data-theme=dark] .nav-item.active{background:#ffffff14;color:var(--accent)}[data-theme=dark] .user-chip:hover{background:#ffffff0f}[data-theme=dark] .btn{background:var(--surface-2);border-color:var(--border-strong);color:var(--ink);box-shadow:0 1px #0006,0 1px 3px #0000004d}[data-theme=dark] .btn:hover{background:var(--border)}[data-theme=dark] .btn.primary{background:var(--accent);border-color:var(--accent-2);color:#fff}[data-theme=dark] .btn.primary:hover{background:var(--accent-2)}[data-theme=dark] .btn.secondary{background:var(--surface);border-color:var(--border-strong);color:var(--ink)}[data-theme=dark] .btn.secondary:hover{background:var(--surface-2)}[data-theme=dark] .btn.ghost{background:transparent;border-color:var(--border-strong);color:var(--ink-2);box-shadow:none}[data-theme=dark] .btn.ghost:hover{background:#ffffff12;border-color:var(--border-strong)}[data-theme=dark] .btn.success{background:var(--success);border-color:transparent;color:#fff}[data-theme=dark] .btn.danger{background:var(--surface);border-color:var(--danger);color:var(--danger)}[data-theme=dark] .btn.danger:hover{background:var(--danger-soft)}[data-theme=dark] .ms-signin-btn{background:var(--surface-2);border-color:var(--border-strong)}[data-theme=dark] .ms-signin-btn:hover:not(:disabled){background:var(--border)}[data-theme=dark] .role-switch{background:var(--bg)}[data-theme=dark] .role-option.active{background:var(--surface-2);color:var(--ink)}[data-theme=dark] .input,[data-theme=dark] .select,[data-theme=dark] .textarea{background:var(--bg);border-color:var(--border);color:var(--ink)}[data-theme=dark] .card{border-color:var(--border)}[data-theme=dark] .sheet{background:var(--surface);border:1px solid var(--border)}[data-theme=dark] .scrim{background:#0009}[data-theme=dark] .type-radio{border-color:var(--border)}[data-theme=dark] .type-radio.active{border-color:var(--accent);background:var(--accent-soft)}[data-theme=dark] .mini-cal-wrap{border-color:var(--border);background:var(--surface)}[data-theme=dark] .mini-cal .d:hover{background:#ffffff12}[data-theme=dark] .mini-cal .d.in-range{background:color-mix(in oklab,var(--accent-soft),transparent 20%)}[data-theme=dark] .stat{background:var(--surface)}[data-theme=dark] .brand-sub{color:var(--muted)}[data-theme=dark] .ot-calc-card{background:var(--bg-2);border-color:var(--border)}[data-theme=dark] .days-summary{background:var(--bg);border-color:var(--border)}[data-theme=dark] .auth{background:var(--bg)}[data-theme=dark] .auth-form-wrap{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);padding:32px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}
