:root{color-scheme:dark;font-family:Aptos,Bahnschrift,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;--font-display: "Aptos Display", "Bahnschrift SemiBold", "Segoe UI", sans-serif;--bg-color: #0a0f1c;--page-gradient: radial-gradient(circle at top left, rgba(0, 210, 255, .16), transparent 32%), radial-gradient(circle at top right, rgba(255, 51, 102, .12), transparent 28%), linear-gradient(180deg, #0a0f1c 0%, #0e1423 100%);--card-color: rgba(19, 27, 47, .88);--card-solid: #131b2f;--surface-muted: rgba(19, 27, 47, .7);--surface-subtle: rgba(255, 255, 255, .03);--surface-hover: rgba(0, 210, 255, .06);--text-color: #e2e8f0;--text-muted: rgba(226, 232, 240, .68);--text-soft: rgba(226, 232, 240, .52);--primary: #00d2ff;--primary-soft: rgba(0, 210, 255, .12);--secondary: #ff3366;--secondary-soft: rgba(255, 51, 102, .12);--success: #00d2ff;--error: #ff3366;--border-color: rgba(255, 255, 255, .05);--shadow: 0 8px 32px rgba(0, 0, 0, .3);--focus-ring: rgba(0, 210, 255, .2);--sidebar-background: rgba(7, 11, 21, .86);--sidebar-accent: rgba(0, 210, 255, .1);--sidebar-text: #e2e8f0;--topbar-background: rgba(10, 15, 28, .74);--topbar-meta-background: rgba(0, 210, 255, .1);--topbar-meta-text: #00d2ff;--input-background: rgba(19, 27, 47, .8);--button-primary-text: #06101f;--button-ghost-bg: rgba(255, 255, 255, .03);--button-ghost-text: var(--text-color);--button-ghost-border: rgba(255, 255, 255, .08);--state-error-bg: rgba(255, 51, 102, .08);--state-success-bg: rgba(0, 210, 255, .08);--table-hover: rgba(0, 210, 255, .05);--hero-border: rgba(0, 210, 255, .2);--chart-grid: rgba(226, 232, 240, .05);--chart-axis-text: #e2e8f0;--panel-overlay: linear-gradient(180deg, rgba(255, 255, 255, .04), rgba(255, 255, 255, 0));--desk-top: #8B6B43;--desk-side: #6A4E2D;--desk-front: #5A4022;color:var(--text-color);background:var(--bg-color);line-height:1.5;font-weight:400;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}:root[data-theme=light]{color-scheme:light;--bg-color: #f3f4f6;--page-gradient: radial-gradient(circle at top left, rgba(59, 130, 246, .12), transparent 30%), radial-gradient(circle at top right, rgba(249, 115, 22, .1), transparent 24%), linear-gradient(180deg, #f8fafc 0%, #f3f4f6 100%);--card-color: rgba(255, 255, 255, .95);--card-solid: #ffffff;--surface-muted: rgba(255, 255, 255, .78);--surface-subtle: rgba(31, 41, 55, .03);--surface-hover: rgba(59, 130, 246, .06);--text-color: #1f2937;--text-muted: #6b7280;--text-soft: rgba(107, 114, 128, .78);--primary: #3b82f6;--primary-soft: rgba(59, 130, 246, .1);--secondary: #f97316;--secondary-soft: rgba(249, 115, 22, .12);--success: #3b82f6;--error: #f97316;--border-color: rgba(0, 0, 0, .05);--shadow: 0 4px 6px -1px rgba(0, 0, 0, .1);--focus-ring: rgba(59, 130, 246, .18);--sidebar-background: rgba(255, 255, 255, .84);--sidebar-accent: rgba(59, 130, 246, .1);--sidebar-text: #1f2937;--topbar-background: rgba(255, 255, 255, .72);--topbar-meta-background: rgba(59, 130, 246, .12);--topbar-meta-text: #2563eb;--input-background: rgba(255, 255, 255, .94);--button-primary-text: #ffffff;--button-ghost-bg: rgba(255, 255, 255, .78);--button-ghost-text: #1f2937;--button-ghost-border: rgba(0, 0, 0, .08);--state-error-bg: rgba(249, 115, 22, .08);--state-success-bg: rgba(59, 130, 246, .08);--table-hover: rgba(59, 130, 246, .05);--hero-border: rgba(59, 130, 246, .2);--chart-grid: rgba(0, 0, 0, .05);--chart-axis-text: #1f2937;--panel-overlay: linear-gradient(180deg, rgba(255, 255, 255, .92), rgba(255, 255, 255, .68));--desk-top: #E5C07B;--desk-side: #D4A373;--desk-front: #C38D59}*{box-sizing:border-box}html,body{margin:0;min-width:320px;min-height:100vh;background:var(--bg-color)}body{background-image:var(--page-gradient);background-attachment:fixed;color:var(--text-color);transition:background-color .18s ease,color .18s ease}a{color:inherit}button,input,textarea,select{font:inherit}button{border:1px solid transparent;border-radius:14px;padding:10px 14px;cursor:pointer;transition:background-color .14s ease,border-color .14s ease,color .14s ease,transform .14s ease,box-shadow .14s ease}button:hover{transform:translateY(-1px)}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,a:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}#root{min-height:100vh}.app-shell{min-height:100vh;display:grid;grid-template-columns:280px 1fr}.app-sidebar{padding:28px 22px;background:var(--sidebar-background);color:var(--sidebar-text);border-right:1px solid var(--border-color);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.sidebar-brand h1{margin:6px 0 10px;font-family:var(--font-display);font-size:24px;line-height:1.1}.sidebar-eyebrow{margin:0;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-muted)}.sidebar-summary{margin:0 0 24px;color:var(--text-muted);font-size:14px}.sidebar-nav{display:grid;gap:10px}.nav-link{display:grid;gap:4px;padding:14px 16px;border-radius:16px;text-decoration:none;background:transparent;border:1px solid var(--button-ghost-border);transition:background-color .12s ease,border-color .12s ease,transform .12s ease}.nav-link:hover{background:var(--surface-hover);transform:translate(2px)}.nav-link-active{background:var(--sidebar-accent);border-color:color-mix(in srgb,var(--primary) 34%,transparent)}.nav-link-label{font-weight:600}.nav-link-description{font-size:13px;color:var(--text-muted)}.app-main{min-width:0;display:flex;flex-direction:column}.app-topbar{position:sticky;top:0;z-index:30;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:22px 28px;border-bottom:1px solid var(--border-color);background:var(--topbar-background);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.app-topbar h2{margin:4px 0 0;font-family:var(--font-display);font-size:26px}.topbar-label{margin:0;color:var(--text-muted);font-size:13px}.topbar-meta{display:inline-flex;align-items:center;gap:10px;padding:10px 14px;border-radius:999px;background:var(--topbar-meta-background);color:var(--topbar-meta-text);font-size:14px;font-weight:600}.topbar-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end}.status-dot{width:10px;height:10px;border-radius:50%;background:var(--primary);box-shadow:0 0 12px color-mix(in srgb,var(--primary) 60%,transparent)}.theme-toggle-button{display:inline-flex;align-items:center;gap:10px;padding-inline:12px;background:var(--button-ghost-bg);color:var(--button-ghost-text);border-color:var(--button-ghost-border);box-shadow:var(--shadow)}.theme-toggle-button:hover{border-color:color-mix(in srgb,var(--primary) 30%,var(--button-ghost-border))}.theme-toggle-icon{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--primary-soft);color:var(--primary)}.theme-toggle-icon svg{width:18px;height:18px}.theme-toggle-copy{font-weight:700}.user-badge{display:flex;align-items:center;gap:14px;padding:10px 14px;border-radius:16px;background:var(--card-color);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border-color);box-shadow:var(--shadow)}.user-badge strong{display:block;font-size:14px}.user-badge p{margin:4px 0 0;color:var(--text-muted);font-size:12px}.app-content{padding:28px}.page-stack{display:grid;gap:20px}.panel{position:relative;overflow:hidden;padding:24px;border:1px solid var(--border-color);border-radius:20px;background:var(--panel-overlay),var(--card-color);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:var(--shadow)}.panel-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px}.panel-header-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:12px}.csv-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.csv-preview-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1500;display:grid;place-items:center;padding:20px;background:color-mix(in srgb,#0f172a 38%,transparent)}.csv-preview-modal{width:min(980px,100%);max-height:calc(100vh - 40px);overflow:auto;padding:20px;border:1px solid var(--border-color);border-radius:16px;background:var(--card-color);box-shadow:var(--shadow)}.csv-preview-header{margin-bottom:12px}.csv-preview-header h3{margin:0}.panel-title{margin:0;font-family:var(--font-display);font-size:22px}.panel-description{margin:8px 0 0;color:var(--text-muted)}.filter-bar{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:20px}.field-control{display:grid;gap:8px;min-width:180px}.field-control span{color:var(--text-muted);font-size:13px;font-weight:600}.field-control input,.field-control select,.field-control textarea{min-height:44px;padding:10px 12px;border:1px solid var(--border-color);border-radius:12px;background:var(--input-background);color:var(--text-color);box-shadow:inset 0 1px #ffffff08}.field-control input::placeholder,.field-control textarea::placeholder{color:var(--text-soft)}.field-control input:focus,.field-control select:focus,.field-control textarea:focus{outline:none;border-color:color-mix(in srgb,var(--primary) 50%,transparent);box-shadow:0 0 0 3px var(--focus-ring)}.field-control textarea{min-height:96px;resize:vertical}.dashboard-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.summary-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px}.filter-bar{display:grid;grid-template-columns:minmax(220px,280px) minmax(260px,1fr);gap:16px;align-items:end}.filter-field{min-width:0}.filter-field-wide{width:100%}.status-toggle{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.status-toggle-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--button-ghost-border);border-radius:14px;background:var(--button-ghost-bg);color:var(--button-ghost-text);font:inherit;font-weight:600;padding:12px 14px;cursor:pointer;transition:transform .18s ease,border-color .18s ease,background .18s ease,color .18s ease,box-shadow .18s ease}.status-toggle-button:hover{transform:translateY(-1px)}.status-toggle-button.is-active{background:var(--primary);color:var(--button-primary-text);border-color:color-mix(in srgb,var(--primary) 88%,transparent);box-shadow:var(--shadow)}.summary-card,.stat-card,.info-card,.tag-item,.compare-item,.timeline-item,.interactive-item{padding:18px;border-radius:18px;background:var(--surface-muted);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border-color);box-shadow:var(--shadow)}.summary-label{display:block;color:var(--text-muted);font-size:13px}.summary-value{display:block;margin-top:10px;font-family:var(--font-display);font-size:26px}.summary-footnote{display:inline-flex;margin-top:8px;color:var(--text-soft);font-size:12px}.auth-state-shell,.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px}.login-shell{background-image:var(--page-gradient)}.login-panel{width:min(100%,460px);display:grid;gap:18px;padding:32px;border:1px solid var(--border-color);border-radius:24px;background:var(--card-color);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:var(--shadow)}.login-brand h1{margin:8px 0 10px;font-family:var(--font-display);font-size:30px;line-height:1.15}.login-eyebrow,.hero-eyebrow,.dashboard-panel-eyebrow{margin:0;color:var(--primary);font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.login-description,.hero-description,.cell-subtext,.state-message p,.timeline-head span,.timeline-meta,.compare-item-note,.compare-item-values span,.empty-copy{color:var(--text-muted)}.login-form{display:grid;gap:16px}.primary-button{background:var(--primary);color:var(--button-primary-text);border-color:color-mix(in srgb,var(--primary) 88%,transparent);box-shadow:var(--shadow);font-weight:700}.primary-button:hover{filter:brightness(1.04)}.ghost-button{background:var(--button-ghost-bg);color:var(--button-ghost-text);border-color:var(--button-ghost-border);font-weight:600}.toggle-chip{min-width:88px;min-height:36px;padding:0 14px;border:1px solid var(--border-color);border-radius:999px;background:var(--surface-subtle);color:var(--text-color);font-weight:600}.toggle-chip.is-active{background:var(--primary-soft);color:var(--primary);border-color:color-mix(in srgb,var(--primary) 24%,transparent)}.member-name-wall{display:flex;flex-wrap:wrap;gap:10px}.member-name-wall-legend{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.member-name-chip{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:6px 12px;border-radius:999px;border:1px solid var(--border-color);background:var(--surface-muted);color:var(--text-color);font-weight:600;transition:filter .16s ease}.member-name-chip.is-in-project{background:var(--primary-soft);color:var(--primary);border-color:color-mix(in srgb,var(--primary) 28%,transparent)}.member-name-chip.is-not-in-project{background:color-mix(in srgb,#ef4444 18%,var(--card-solid));color:#ef4444;border-color:color-mix(in srgb,#ef4444 34%,transparent)}button.member-name-chip{cursor:pointer}button.member-name-chip:hover:not(:disabled){filter:brightness(1.04)}button.member-name-chip:disabled{cursor:not-allowed;opacity:.66}span.member-name-chip{cursor:default}.primary-button:disabled,.ghost-button:disabled{cursor:not-allowed;opacity:.6;transform:none}.login-hint{padding:16px 18px;border-radius:16px;background:var(--surface-muted);border:1px dashed var(--border-color)}.login-hint strong{display:block;margin-bottom:8px}.login-hint p{margin:4px 0;color:var(--text-muted)}.hero-card,.project-info-band{display:flex;justify-content:space-between;gap:18px;padding:22px;border-radius:20px;border:1px solid var(--hero-border);background:var(--card-color);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:var(--shadow)}.hero-card h3,.project-info-main h3{margin:8px 0 6px;font-family:var(--font-display);font-size:28px}.project-info-main{display:grid;gap:6px}.project-info-meta,.hero-badges{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:flex-start;gap:10px}.split-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.list-detail-grid{display:grid;grid-template-columns:340px minmax(0,1fr);gap:20px}.stat-label,.stat-note{display:block}.stat-label{color:var(--text-muted);font-size:14px}.stat-value{display:block;margin:10px 0 6px;font-family:var(--font-display);font-size:28px}.stat-note{color:var(--text-muted);font-size:13px}.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0}.detail-grid div{padding:16px;border-radius:16px;background:var(--surface-muted);border:1px solid var(--border-color);box-shadow:var(--shadow)}.detail-grid dt{margin:0 0 8px;color:var(--text-muted);font-size:14px}.detail-grid dd{margin:0;font-weight:600}.compact-detail-grid{margin-bottom:16px}.compact-detail-grid div{padding:12px 14px}.project-base-lead-pill{margin-left:8px}.form-hint{margin:0;padding:14px 16px;border-radius:14px;border:1px dashed var(--border-color);background:var(--surface-muted);color:var(--text-muted);font-size:14px}.tag-list{display:flex;flex-wrap:wrap;gap:12px;padding:0;margin:0;list-style:none}.tag-item small{color:var(--text-muted)}.state-message{padding:16px 18px;border-radius:16px;border:1px solid var(--border-color);background:var(--surface-muted);box-shadow:var(--shadow)}.state-message-error{border-color:color-mix(in srgb,var(--error) 30%,transparent);background:var(--state-error-bg)}.state-message-error strong,.state-message-error p{color:var(--error)}.state-message-success{border-color:color-mix(in srgb,var(--success) 30%,transparent);background:var(--state-success-bg)}.state-message-success strong,.state-message-success p{color:var(--success)}.form-card{display:grid;gap:18px;padding:18px;border:1px solid var(--border-color);border-radius:18px;background:var(--surface-muted);box-shadow:var(--shadow)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.form-field{min-width:0}.form-field-span-2{grid-column:span 2}.form-actions{display:flex;flex-wrap:wrap;gap:12px}.field-error{color:var(--error);font-size:12px}.checkbox-field{display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid var(--border-color);border-radius:12px;background:var(--input-background);font-weight:600}.checkbox-field input{width:16px;height:16px}.table-shell{overflow-x:auto}.account-mapping-table-shell{max-width:100%}.compact-table th,.compact-table td{padding-top:10px;padding-bottom:10px}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{padding:14px 12px;text-align:left;border-bottom:1px solid var(--border-color);vertical-align:top}.data-table thead th{color:var(--text-muted);font-size:13px;font-weight:600}.data-table tbody tr:hover,.data-table tbody tr.is-selected{background:var(--table-hover)}.account-mapping-table{min-width:max-content}.account-mapping-table th,.account-mapping-table td{min-width:132px;white-space:nowrap}.account-mapping-table .account-mapping-employee-column{left:0;min-width:160px;position:sticky;z-index:1}.account-mapping-table th.account-mapping-employee-column{background:var(--card-solid);z-index:2}.account-mapping-table td.account-mapping-employee-column{background:var(--card-solid)}.account-mapping-select{width:168px;min-height:36px;border:1px solid var(--border-color);border-radius:8px;background:var(--input-background);color:var(--text-color)}.table-select{width:min(260px,100%);min-height:36px;border:1px solid var(--border-color);border-radius:8px;background:var(--input-background);color:var(--text-color)}.inline-toggle{display:inline-flex;align-items:center;gap:8px;color:var(--text-color);font-weight:600}.permission-tag-list{gap:8px}.permission-tag-list .pill{white-space:nowrap}.table-link,.ghost-link{color:var(--primary);text-decoration:none;font-weight:600}.table-link:hover,.ghost-link:hover{text-decoration:underline}.attendance-filter-bar{grid-template-columns:minmax(200px,220px) minmax(180px,220px) minmax(0,1fr)}.attendance-filter-actions{justify-content:flex-end;align-self:end}.attendance-matrix-shell{border:1px solid var(--border-color);border-radius:16px;background:var(--surface-muted)}.attendance-matrix-table{min-width:1360px}.attendance-matrix-table th,.attendance-matrix-table td{min-width:110px}.attendance-matrix-table .attendance-sticky-column{position:sticky;left:0;background:var(--card-solid);z-index:2}.attendance-matrix-table th.attendance-sticky-column{z-index:4}.attendance-matrix-table .attendance-sticky-name{left:0;min-width:170px}.attendance-matrix-table .attendance-sticky-role{left:170px;min-width:160px}.attendance-matrix-table .attendance-sticky-status{left:330px;min-width:130px}.attendance-sunday-column{background:color-mix(in srgb,var(--surface-subtle) 85%,#d1d5db 15%)}.attendance-cell-button{width:100%;min-height:64px;display:grid;justify-items:start;gap:6px;padding:8px;border-radius:10px;border:1px solid transparent;background:transparent;text-align:left}.attendance-cell-button:hover{background:var(--surface-hover);border-color:color-mix(in srgb,var(--primary) 26%,transparent)}.attendance-cell-readonly{cursor:not-allowed;opacity:.75}.attendance-cell-locked{border-color:color-mix(in srgb,#ef4444 32%,transparent);background:color-mix(in srgb,#ef4444 8%,var(--card-solid))}.attendance-cell-empty{width:100%;min-height:44px;border-radius:8px;background:color-mix(in srgb,var(--surface-subtle) 75%,transparent)}.attendance-cell-stack{width:100%;display:grid;gap:6px}.attendance-half-line{display:flex;align-items:center;gap:6px}.attendance-half-label{color:var(--text-muted);font-size:12px;min-width:34px}.attendance-pill-normal{background:color-mix(in srgb,#10b981 14%,var(--card-solid));color:#047857;border-color:color-mix(in srgb,#10b981 30%,transparent)}.attendance-pill-training{background:color-mix(in srgb,#8b5cf6 16%,var(--card-solid));color:#8b5cf6;border-color:color-mix(in srgb,#8b5cf6 30%,transparent)}.attendance-pill-leave{background:color-mix(in srgb,#d946ef 18%,var(--card-solid));color:#a21caf;border-color:color-mix(in srgb,#d946ef 32%,transparent)}.attendance-pill-compensatory{background:color-mix(in srgb,#f59e0b 16%,var(--card-solid));color:#b45309;border-color:color-mix(in srgb,#f59e0b 28%,transparent)}.attendance-pill-rest{background:color-mix(in srgb,#6b7280 14%,var(--card-solid));color:#4b5563;border-color:color-mix(in srgb,#6b7280 28%,transparent)}.attendance-pill-overtime{background:color-mix(in srgb,#f97316 16%,var(--card-solid));color:#ea580c;border-color:color-mix(in srgb,#f97316 30%,transparent)}.attendance-pill-home{background:color-mix(in srgb,#22c55e 16%,var(--card-solid));color:#16a34a;border-color:color-mix(in srgb,#22c55e 30%,transparent)}.attendance-pill-onboarding{background:color-mix(in srgb,#3b82f6 16%,var(--card-solid));color:#2563eb;border-color:color-mix(in srgb,#3b82f6 28%,transparent)}.attendance-pill-resigned{background:color-mix(in srgb,#ef4444 18%,var(--card-solid));color:#dc2626;border-color:color-mix(in srgb,#ef4444 36%,transparent)}.attendance-pill-absent{background:color-mix(in srgb,#dc2626 24%,var(--card-solid));color:#b91c1c;border-color:color-mix(in srgb,#dc2626 40%,transparent)}.attendance-pill-half-day{background:color-mix(in srgb,#f59e0b 20%,var(--card-solid));color:#b45309;border-color:color-mix(in srgb,#f59e0b 34%,transparent)}.attendance-pill-unknown{background:color-mix(in srgb,#94a3b8 16%,var(--card-solid));color:#64748b;border-color:color-mix(in srgb,#94a3b8 30%,transparent)}.attendance-edit-modal{width:min(680px,100%)}.pill{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;background:var(--primary-soft);color:var(--primary);font-size:13px;font-weight:600;border:1px solid color-mix(in srgb,var(--primary) 22%,transparent)}.pill-neutral{background:var(--surface-subtle);color:var(--text-color);border-color:var(--border-color)}.pill-warning{background:color-mix(in srgb,#f59e0b 18%,var(--card-solid));color:#b45309;border-color:color-mix(in srgb,#f59e0b 30%,transparent)}.pill-error{background:color-mix(in srgb,#ef4444 18%,var(--card-solid));color:#ef4444;border-color:color-mix(in srgb,#ef4444 36%,transparent)}.timeline-list,.interactive-list,.compare-list{display:grid;gap:12px}.timeline-head,.compare-item-header{display:flex;justify-content:space-between;gap:16px;align-items:center}.timeline-copy{margin:10px 0 6px}.interactive-item{display:grid;gap:4px;width:100%;text-align:left}.interactive-item span{color:var(--text-muted);font-size:13px}.interactive-item-active{border-color:color-mix(in srgb,var(--primary) 34%,transparent);background:var(--primary-soft)}.compare-item-values{text-align:right}.compare-item-values strong{display:block;font-family:var(--font-display);font-size:20px}.compare-bar-track{height:12px;border-radius:999px;background:color-mix(in srgb,var(--text-color) 10%,transparent);overflow:hidden}.compare-bar-fill{height:100%;border-radius:999px;background:var(--primary)}.dashboard-secondary-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:16px}.info-card h3{margin:0 0 14px;font-size:18px}.single-column-grid{grid-template-columns:1fr}.dashboard-board{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;min-height:calc(100vh - 128px);padding:24px;background:transparent}.dashboard-panel{min-height:340px;padding:22px;border-radius:24px;border:1px solid var(--border-color);background:var(--panel-overlay),var(--card-color);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.dashboard-panel-heading,.revenue-chart-header{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:16px}.dashboard-panel-heading h3,.revenue-chart-header h3{margin:6px 0 0;font-family:var(--font-display);font-size:20px}.dashboard-panel-badge{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:var(--surface-subtle);border:1px solid var(--border-color);color:var(--text-muted);font-size:12px;font-weight:600}.dashboard-chart{height:290px;width:100%}.revenue-summary-grid{margin-bottom:20px}.revenue-table-shell{margin-bottom:24px}.highlight-number{color:var(--primary);font-weight:700}.revenue-chart-shell{padding:20px;border-radius:22px;border:1px solid var(--border-color);background:var(--surface-muted);box-shadow:var(--shadow)}.revenue-chart-header p{margin:8px 0 0;color:var(--text-muted)}@media (max-width: 1180px){.dashboard-board,.dashboard-grid,.detail-grid,.form-grid,.summary-strip,.filter-bar,.split-grid,.list-detail-grid,.dashboard-secondary-grid{grid-template-columns:1fr}.form-field-span-2{grid-column:span 1}.hero-card,.project-info-band{flex-direction:column}.hero-badges,.project-info-meta{justify-content:flex-start}.dashboard-board{min-height:auto}.attendance-filter-bar{grid-template-columns:1fr}.attendance-matrix-table .attendance-sticky-column{position:static}}@media (max-width: 1024px){.app-shell{grid-template-columns:1fr}.app-sidebar{border-right:none;border-bottom:1px solid var(--border-color)}}@media (max-width: 640px){.app-topbar,.app-content,.app-sidebar,.dashboard-board{padding:20px}.app-topbar{flex-direction:column;align-items:flex-start}.topbar-actions{width:100%;justify-content:flex-start}.theme-toggle-button,.user-badge{width:100%;justify-content:space-between}.panel,.dashboard-panel,.revenue-chart-shell{padding:18px}.panel-header,.panel-header-actions,.form-actions,.compare-item-header,.dashboard-panel-heading,.revenue-chart-header{align-items:stretch;flex-direction:column}.compare-item-values{text-align:left}}
