@import url("https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,300;0,14..32,400;0,14..32,500;0,14..32,600;0,14..32,700;0,14..32,800;1,14..32,400&display=swap");:root{--brand-50:#eff8ff;--brand-100:#dbeffe;--brand-200:#bfe3fe;--brand-300:#93d0fd;--brand-400:#60b5fb;--brand-500:#3b96f8;--brand-600:#1d76f0;--brand-700:#1660dc;--brand-800:#184db2;--brand-900:#1a448c;--brand-950:#0f172a;--sidebar-bg:#0f172a;--sidebar-border:hsla(0,0%,100%,.06);--sidebar-hover:hsla(0,0%,100%,.06);--sidebar-active-bg:rgba(59,150,248,.18);--sidebar-text:hsla(0,0%,100%,.55);--sidebar-text-hover:hsla(0,0%,100%,.9);--sidebar-text-active:#fff;--sidebar-accent:#3b96f8;--gray-50:#f8fafc;--gray-75:#f4f6f9;--gray-100:#f1f5f9;--gray-150:#e9eef5;--gray-200:#e2e8f0;--gray-300:#cbd5e1;--gray-400:#94a3b8;--gray-500:#64748b;--gray-600:#475569;--gray-700:#334155;--gray-800:#1e293b;--gray-900:#0f172a;--bg:#f4f6fa;--panel:#fff;--border:#e3e8f0;--border-strong:#cdd5e0;--ink:#0f172a;--ink-2:#1e293b;--muted:#64748b;--muted-2:#94a3b8;--brand:var(--brand-600);--brand-light:var(--brand-50);--ok:#059669;--ok-bg:#ecfdf5;--ok-border:#a7f3d0;--warn:#d97706;--warn-bg:#fffbeb;--warn-border:#fcd34d;--danger:#dc2626;--danger-bg:#fef2f2;--danger-border:#fca5a5;--info:#4f46e5;--info-bg:#eef2ff;--info-border:#c7d2fe;--shadow-xs:0 1px 2px 0 rgba(15,23,42,.04);--shadow-sm:0 1px 3px 0 rgba(15,23,42,.08),0 1px 2px -1px rgba(15,23,42,.06);--shadow-md:0 4px 8px -2px rgba(15,23,42,.1),0 2px 4px -2px rgba(15,23,42,.06);--shadow-lg:0 12px 24px -4px rgba(15,23,42,.12),0 4px 8px -4px rgba(15,23,42,.06);--shadow-xl:0 24px 40px -8px rgba(15,23,42,.16),0 8px 16px -8px rgba(15,23,42,.08);--shadow-brand:0 4px 12px rgba(29,118,240,.28);--shadow-inner:inset 0 1px 2px rgba(15,23,42,.06);--sidebar-width:240px;--header-height:60px;--radius-xs:4px;--radius-sm:6px;--radius:10px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-full:9999px;--ease-out:cubic-bezier(0.16,1,0.3,1);--ease-in-out:cubic-bezier(0.4,0,0.2,1);--dur-fast:120ms;--dur:180ms;--dur-slow:280ms}*,:after,:before{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg);color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:var(--brand);text-decoration:none}button{font:inherit;cursor:pointer}.appshell{display:flex;min-height:100vh;background:var(--bg)}.sidebar{width:var(--sidebar-width);background:var(--sidebar-bg);display:flex;flex-direction:column;flex-shrink:0;position:fixed;top:0;left:0;height:100vh;overflow-y:auto;overflow-x:hidden;z-index:40;scrollbar-width:none}.sidebar::-webkit-scrollbar{display:none}.sidebar-logo{gap:11px;padding:18px 16px 14px;border-bottom:1px solid var(--sidebar-border);margin-bottom:6px}.sidebar-logo,.sidebar-logo-icon{display:flex;align-items:center;flex-shrink:0}.sidebar-logo-icon{width:34px;height:34px;justify-content:center;background:linear-gradient(135deg,var(--brand-700),var(--brand-500));border-radius:var(--radius);box-shadow:0 2px 8px rgba(29,118,240,.35)}.sidebar-logo-text{display:flex;flex-direction:column;min-width:0}.sidebar-logo-text strong{font-size:13.5px;font-weight:700;color:#fff;letter-spacing:-.015em;line-height:1.2;white-space:nowrap}.sidebar-logo-text span{font-size:10px;color:hsla(0,0%,100%,.38);font-weight:500;text-transform:uppercase;letter-spacing:.09em;margin-top:1px}.sidebar nav{display:flex;flex-direction:column;padding:4px 10px;flex:1 1;gap:1px}.sidebar-section-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:hsla(0,0%,100%,.22);padding:12px 8px 4px;margin-top:2px}.sidebar nav a{display:flex;align-items:center;gap:10px;color:var(--sidebar-text);padding:8px 10px;border-radius:var(--radius-sm);font-size:13.5px;font-weight:500;transition:background var(--dur-fast),color var(--dur-fast);position:relative;text-decoration:none;white-space:nowrap}.sidebar nav a:hover{background:var(--sidebar-hover);color:var(--sidebar-text-hover)}.sidebar nav a.active{background:var(--sidebar-active-bg);color:var(--sidebar-text-active);font-weight:600}.sidebar nav a.active:before{content:"";position:absolute;left:-10px;top:50%;transform:translateY(-50%);width:3px;height:18px;background:var(--sidebar-accent);border-radius:0 3px 3px 0}.nav-icon{width:17px;height:17px;flex-shrink:0;opacity:.65;transition:opacity var(--dur-fast)}.sidebar nav a.active .nav-icon,.sidebar nav a:hover .nav-icon{opacity:1}.sidebar-footer{padding:10px;border-top:1px solid var(--sidebar-border);margin-top:auto;flex-shrink:0}.sidebar-user{display:flex;align-items:center;gap:9px;padding:8px 10px;border-radius:var(--radius);cursor:pointer;transition:background var(--dur-fast)}.sidebar-user:hover{background:var(--sidebar-hover)}.sidebar-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--brand-600),var(--brand-400));display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#fff;flex-shrink:0;box-shadow:0 0 0 2px hsla(0,0%,100%,.12)}.sidebar-user-info{flex:1 1;min-width:0}.sidebar-user-name{font-size:12.5px;font-weight:600;color:hsla(0,0%,100%,.9)}.sidebar-user-name,.sidebar-user-role{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.sidebar-user-role{font-size:11px;color:hsla(0,0%,100%,.32);margin-top:1px}.logout-btn{background:none;border:none;padding:5px;border-radius:var(--radius-sm);color:hsla(0,0%,100%,.28);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:color var(--dur-fast),background var(--dur-fast)}.logout-btn:hover{color:hsla(0,0%,100%,.72);background:hsla(0,0%,100%,.08)}.content{flex:1 1;margin-left:var(--sidebar-width);min-width:0;display:flex;flex-direction:column}.topbar{justify-content:space-between;gap:16px;height:var(--header-height);padding:0 28px;background:hsla(0,0%,100%,.9);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border);position:-webkit-sticky;position:sticky;top:0;z-index:30}.topbar,.topbar-left{display:flex;align-items:center}.topbar-left{gap:12px}.topbar-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.topbar-status{display:inline-flex;align-items:center;gap:7px;padding:5px 12px;background:var(--ok-bg);border:1px solid var(--ok-border);border-radius:var(--radius-full);font-size:12px;font-weight:600;color:var(--ok);white-space:nowrap}.topbar-status .dot{width:7px;height:7px;border-radius:50%;background:var(--ok);flex-shrink:0;box-shadow:0 0 0 3px rgba(5,150,105,.18);animation:pulse-dot 2.4s ease-in-out infinite}@keyframes pulse-dot{0%,to{box-shadow:0 0 0 3px rgba(5,150,105,.18)}50%{box-shadow:0 0 0 5px rgba(5,150,105,.08)}}.topbar-date{font-size:12.5px;color:var(--muted);font-weight:500;white-space:nowrap;padding:4px 10px;background:var(--gray-100);border-radius:var(--radius-full);border:1px solid var(--border)}.topbar-divider{width:1px;height:22px;background:var(--border);flex-shrink:0}.topbar-user-chip{display:flex;align-items:center;gap:8px;padding:4px 10px 4px 5px;border:1px solid var(--border);border-radius:var(--radius-full);background:var(--panel);cursor:pointer;transition:all var(--dur-fast);box-shadow:var(--shadow-xs)}.topbar-user-chip:hover{background:var(--gray-50);border-color:var(--gray-300);box-shadow:var(--shadow-sm)}.topbar-user-avatar{width:26px;height:26px;border-radius:50%;background:linear-gradient(135deg,var(--brand-600),var(--brand-400));display:flex;align-items:center;justify-content:center;font-size:10.5px;font-weight:700;color:#fff;flex-shrink:0}.topbar-user-name{font-size:12.5px;font-weight:600;color:var(--ink-2);white-space:nowrap}.page-body{flex:1 1;padding:24px 28px 48px;min-width:0}.page-header{margin-bottom:24px}.page-title{font-size:17px;font-weight:800;color:var(--ink);letter-spacing:-.025em;margin:0 0 4px;line-height:1.2}.page-subtitle{font-size:13.5px;color:var(--muted);margin:0;line-height:1.5;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.page-header-copy{flex:1 1;min-width:0}.page-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.page-header:has(.page-actions){display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px;box-shadow:var(--shadow-sm);margin-bottom:20px}.card-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:20px;gap:16px}.card-header-left{flex:1 1;min-width:0}.card h2,.card-title{margin:0 0 3px;font-size:15px;font-weight:700;color:var(--ink);letter-spacing:-.015em}.card .hint,.card-hint{margin:0;color:var(--muted);font-size:13px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));grid-gap:16px;gap:16px;margin-bottom:24px}.stat-card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px 22px 18px;box-shadow:var(--shadow-sm);position:relative;overflow:hidden;transition:box-shadow var(--dur),transform var(--dur)}.stat-card:after{bottom:0;left:0;right:0;height:3px;opacity:.85}.stat-card:after,.stat-card:before{content:"";position:absolute;background:var(--stat-accent,var(--brand-500))}.stat-card:before{top:-18px;right:-18px;width:80px;height:80px;border-radius:50%;opacity:.05;pointer-events:none}.stat-card.accent-ok{--stat-accent:var(--ok)}.stat-card.accent-warn{--stat-accent:var(--warn)}.stat-card.accent-info{--stat-accent:var(--info)}.stat-card.accent-brand{--stat-accent:var(--brand-500)}.stat-card.accent-danger{--stat-accent:var(--danger)}.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.stat-icon{width:38px;height:38px;border-radius:var(--radius);display:flex;align-items:center;justify-content:center;margin-bottom:15px;flex-shrink:0;background:var(--brand-light)}.stat-icon.ok{background:var(--ok-bg)}.stat-icon.warn{background:var(--warn-bg)}.stat-icon.info{background:var(--info-bg)}.stat-icon.danger{background:var(--danger-bg)}.stat-value{font-size:28px;font-weight:800;color:var(--ink);letter-spacing:-.04em;line-height:1;margin-bottom:5px}.stat-label{font-size:12.5px;color:var(--muted);font-weight:500;line-height:1.4}.stat-subtext{font-size:11.5px;color:var(--muted-2);margin-top:3px}.table-wrapper{overflow-x:auto;margin:0 -24px;padding:0 24px;scrollbar-width:thin;scrollbar-color:var(--gray-200) transparent}.table-wrapper::-webkit-scrollbar{height:4px}.table-wrapper::-webkit-scrollbar-track{background:transparent}.table-wrapper::-webkit-scrollbar-thumb{background:var(--gray-200);border-radius:2px}table{width:100%;border-collapse:collapse;font-size:13.5px}thead tr{border-bottom:1.5px solid var(--gray-150)}th{text-align:left;padding:9px 14px;color:var(--gray-500);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.07em;white-space:nowrap;background:var(--gray-50)}th:first-child{border-radius:var(--radius-sm) 0 0 var(--radius-sm)}th:last-child{border-radius:0 var(--radius-sm) var(--radius-sm) 0}td{text-align:left;padding:13px 14px;border-bottom:1px solid var(--gray-100);vertical-align:middle;color:var(--gray-800)}tbody tr{transition:background var(--dur-fast)}tbody tr:hover{background:var(--gray-50)}tbody tr:last-child td{border-bottom:none}.summary-table td:first-child{font-weight:600;color:var(--gray-600);font-size:13px;width:160px;white-space:nowrap}.summary-table td:last-child{color:var(--ink-2);font-size:13.5px}.mono{font-family:SF Mono,Fira Code,Cascadia Code,monospace;padding:2px 7px;border-radius:var(--radius-xs);border:1px solid var(--gray-150)}.badge,.mono{font-size:11.5px;color:var(--gray-600);background:var(--gray-100)}.badge{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:var(--radius-full);font-weight:600;letter-spacing:.01em;white-space:nowrap;border:1px solid var(--gray-200)}.badge.ok{background:var(--ok-bg);color:var(--ok);border-color:var(--ok-border)}.badge.warn{background:var(--warn-bg);color:var(--warn);border-color:var(--warn-border)}.badge.danger{background:var(--danger-bg);color:var(--danger);border-color:var(--danger-border)}.badge.info{background:var(--info-bg);color:var(--info);border-color:var(--info-border)}.badge.brand{background:var(--brand-50);color:var(--brand-700);border-color:var(--brand-200)}.badge-dot{width:5px;height:5px;border-radius:50%;background:currentColor;flex-shrink:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:8px 16px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);color:var(--gray-700);font-weight:600;font-size:13.5px;line-height:1;transition:all var(--dur-fast);box-shadow:var(--shadow-xs);white-space:nowrap;text-decoration:none}.btn:hover{background:var(--gray-50);border-color:var(--gray-300);box-shadow:var(--shadow-sm);color:var(--ink)}.btn:active{transform:scale(.98)}.btn.primary{background:var(--brand-600);border-color:var(--brand-600);color:#fff;box-shadow:var(--shadow-brand)}.btn.primary:hover{background:var(--brand-700);border-color:var(--brand-700);box-shadow:0 4px 14px rgba(29,118,240,.35)}.btn.danger{background:var(--danger);border-color:var(--danger);color:#fff;box-shadow:0 1px 3px rgba(220,38,38,.3)}.btn.danger:hover{background:#b91c1c;border-color:#b91c1c}.btn.ghost{background:transparent;color:var(--gray-600);border:1px solid var(--border);box-shadow:none}.btn.ghost:hover{background:var(--gray-50);border-color:var(--gray-300);color:var(--ink)}.btn.sm{padding:5px 12px;font-size:12.5px;border-radius:var(--radius-sm)}.btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;pointer-events:none}.filter-tabs{display:flex;gap:5px;flex-wrap:wrap}.filter-tab{display:inline-flex;align-items:center;gap:5px;padding:6px 14px;border-radius:var(--radius-full);border:1px solid var(--border);background:var(--panel);color:var(--gray-600);font-size:13px;font-weight:500;cursor:pointer;transition:all var(--dur-fast);box-shadow:var(--shadow-xs)}.filter-tab:hover{background:var(--gray-50);border-color:var(--gray-300);color:var(--ink)}.filter-tab.active{background:var(--brand-600);border-color:var(--brand-600);color:#fff;font-weight:600;box-shadow:0 1px 4px rgba(29,118,240,.28)}.field{display:flex;flex-direction:column;gap:6px}.field label{font-weight:600;font-size:12px;color:var(--gray-600);letter-spacing:.02em;text-transform:uppercase}.field input,.field select,.field textarea{padding:10px 13px;border:1.5px solid var(--border);border-radius:var(--radius);font:inherit;font-size:14px;background:var(--panel);color:var(--ink);transition:border-color var(--dur-fast),box-shadow var(--dur-fast);outline:none;box-shadow:var(--shadow-inner)}.field input:hover,.field select:hover,.field textarea:hover{border-color:var(--gray-300)}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--brand-500);box-shadow:0 0 0 3px rgba(59,150,248,.14)}.field input::placeholder{color:var(--gray-300)}.error{background:var(--danger-bg);color:var(--danger);border:1px solid var(--danger-border);border-left:3px solid var(--danger);border-radius:var(--radius)}.error,.notice{display:flex;align-items:flex-start;gap:10px;padding:12px 16px;margin-bottom:16px;font-size:13.5px;font-weight:500}.notice{background:var(--ok-bg);color:var(--ok);border:1px solid var(--ok-border);border-left:3px solid var(--ok);border-radius:var(--radius)}.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:56px 24px;color:var(--muted);text-align:center;gap:8px}.empty-icon{font-size:40px;opacity:.4;margin-bottom:6px}.empty-title{font-size:14.5px;font-weight:700;color:var(--gray-600)}.empty-desc{font-size:13px;color:var(--gray-400);max-width:300px;line-height:1.5}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-line,.skeleton-row{height:14px;background:linear-gradient(90deg,var(--gray-100) 25%,var(--gray-150) 50%,var(--gray-100) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-sm);margin-bottom:10px}.skeleton-line{margin-bottom:0}.skeleton-avatar{background:linear-gradient(90deg,var(--gray-100) 25%,var(--gray-150) 50%,var(--gray-100) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}.avatar,.skeleton-avatar{border-radius:50%;flex-shrink:0}.avatar{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;font-size:12.5px;font-weight:700;color:var(--brand-700);background:var(--brand-50);border:1.5px solid var(--brand-100);text-transform:uppercase;letter-spacing:.02em}.avatar.ok{color:var(--ok);background:var(--ok-bg);border-color:var(--ok-border)}.avatar.warn{color:var(--warn);background:var(--warn-bg);border-color:var(--warn-border)}.avatar.info{color:var(--info);background:var(--info-bg);border-color:var(--info-border)}.avatar.gray{color:var(--gray-500);background:var(--gray-100);border-color:var(--gray-200)}.avatar-cell{display:flex;align-items:center;gap:10px;min-width:0}.avatar-body{min-width:0}.avatar-body strong{font-weight:600;color:var(--ink-2);font-size:13.5px}.avatar-body span,.avatar-body strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.avatar-body span{font-size:12px;color:var(--muted);margin-top:1px}.spark-row{display:grid;grid-template-columns:180px 1fr 90px;align-items:center;grid-gap:14px;gap:14px;padding:10px 0;border-bottom:1px solid var(--gray-100)}.spark-row:last-child{border-bottom:none}.spark-row.best-day .spark-label{font-weight:700;color:var(--ink)}.spark-label{font-size:12.5px;color:var(--gray-700);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;gap:6px}.spark-track{height:8px;background:var(--gray-100);border-radius:var(--radius-full);overflow:hidden;border:1px solid var(--gray-150)}.spark-fill{height:100%;background:linear-gradient(90deg,var(--brand-500),var(--brand-400));border-radius:var(--radius-full);transition:width .45s var(--ease-out);min-width:4px}.spark-row.best-day .spark-fill{background:linear-gradient(90deg,var(--ok),#34d399);opacity:1!important}.spark-value{font-size:13px;font-weight:700;color:var(--ink-2);text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.earnings-summary{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px;margin-bottom:20px;padding:16px;background:var(--gray-50);border-radius:var(--radius);border:1px solid var(--gray-150)}.earnings-summary-item{display:flex;flex-direction:column;gap:3px}.earnings-summary-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}.earnings-summary-value{font-size:22px;font-weight:800;color:var(--ink);letter-spacing:-.03em;line-height:1}.earnings-summary-sub{font-size:11.5px;color:var(--muted-2)}.modal-overlay{position:fixed;inset:0;background:rgba(15,23,42,.45);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:100;animation:modal-fade var(--dur-fast) ease-out}@keyframes modal-fade{0%{opacity:0}to{opacity:1}}.modal{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);width:90%;max-width:560px;max-height:85vh;overflow-y:auto;animation:modal-slide var(--dur) var(--ease-out)}@keyframes modal-slide{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:18px 22px 14px;border-bottom:1px solid var(--border)}.modal-header h2{font-size:15px;font-weight:700;margin:0;color:var(--ink)}.modal-close{width:28px;height:28px;background:var(--gray-100);border:1px solid var(--border);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--gray-500);cursor:pointer;font-size:14px;transition:all var(--dur-fast)}.modal-close:hover{background:var(--gray-200);color:var(--ink)}.modal-body{padding:22px}.login-page{display:flex;min-height:100vh;background:var(--sidebar-bg);align-items:center;justify-content:center;padding:24px;position:relative;overflow:hidden}.login-page:before{top:-30%;left:-15%;width:65%;height:90%;background:radial-gradient(ellipse at center,rgba(29,118,240,.14) 0,transparent 70%)}.login-page:after,.login-page:before{content:"";position:absolute;pointer-events:none}.login-page:after{bottom:-25%;right:-10%;width:55%;height:75%;background:radial-gradient(ellipse at center,rgba(99,102,241,.1) 0,transparent 70%)}.login-card{background:var(--panel);border-radius:var(--radius-xl);padding:40px;width:100%;max-width:420px;box-shadow:var(--shadow-xl),0 0 0 1px hsla(0,0%,100%,.04);position:relative;z-index:1}.login-logo{gap:12px;margin-bottom:32px}.login-logo,.login-logo-icon{display:flex;align-items:center}.login-logo-icon{justify-content:center;width:44px;height:44px;background:linear-gradient(135deg,var(--brand-700),var(--brand-500));border-radius:var(--radius-md);box-shadow:var(--shadow-brand)}.login-logo-text strong{display:block;font-size:16px;font-weight:800;color:var(--ink);letter-spacing:-.02em}.login-logo-text span{display:block;font-size:12px;color:var(--muted);margin-top:2px}.login-title{font-size:22px;font-weight:800;color:var(--ink);letter-spacing:-.03em;margin:0 0 6px}.login-subtitle{font-size:13.5px;color:var(--muted);margin:0 0 28px;line-height:1.55}.flex{gap:8px}.flex,.flex-between{display:flex;align-items:center}.flex-between{justify-content:space-between;gap:12px}.muted{color:var(--muted)}.text-sm{font-size:12.5px}.font-mono{font-family:SF Mono,Fira Code,monospace}.mt-4{margin-top:16px}.mb-4{margin-bottom:16px}.divider{height:1px;background:var(--border);margin:20px 0}.fade-in{animation:page-fade var(--dur-slow) var(--ease-out)}@keyframes page-fade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.btn:focus-visible,.filter-tab:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--brand-400);outline-offset:2px}@media (max-width:1024px){.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:900px){:root{--sidebar-width:64px}.logout-btn,.sidebar nav a span,.sidebar-logo-text,.sidebar-section-label,.sidebar-user-info{display:none}.sidebar-logo{padding:16px 14px;justify-content:center}.sidebar-logo-icon{margin:0}.sidebar nav a{justify-content:center;padding:10px}.sidebar-user{justify-content:center;padding:8px}.page-body{padding:20px 16px 40px}.topbar{padding:0 16px}}@media (max-width:640px){.stats-grid{grid-template-columns:1fr 1fr}.page-title{font-size:15px}.spark-row{grid-template-columns:120px 1fr 80px;gap:10px}}