:root{--bg:#f4f6fb;--bg-tint-1:rgba(59,130,246,.07);--bg-tint-2:rgba(124,108,246,.05);--bg-tint-3:rgba(20,184,166,.05);--surface:#ffffff;--surface-2:#f8fafc;--surface-3:#eef2f8;--surface-ink:rgba(24,32,56,.55);--line:#e3e8f0;--line-strong:#cbd5e1;--text:#11203a;--text-dim:#45526b;--muted:#64748b;--nav-bg:rgba(255,255,255,.82);--table-head:#f1f5f9;--table-row-hover:#f6f8fc;--primary:#2563eb;--primary-2:#1d4ed8;--primary-ink:#ffffff;--primary-soft:rgba(37,99,235,.10);--primary-border:rgba(37,99,235,.28);--accent:#7c3aed;--accent-2:#0284c7;--success:#16a34a;--warn:#d97706;--danger:#dc2626;--st-green-bg:rgba(22,163,74,.10);--st-green-fg:#15803d;--st-green-bd:rgba(22,163,74,.30);--st-yellow-bg:rgba(217,119,6,.10);--st-yellow-fg:#a16207;--st-yellow-bd:rgba(217,119,6,.30);--st-red-bg:rgba(220,38,38,.09);--st-red-fg:#b91c1c;--st-red-bd:rgba(220,38,38,.28);--st-blue-bg:rgba(37,99,235,.09);--st-blue-fg:#1d4ed8;--st-blue-bd:rgba(37,99,235,.30);--st-purple-bg:rgba(124,58,237,.09);--st-purple-fg:#6d28d9;--st-purple-bd:rgba(124,58,237,.30);--st-gray-bg:rgba(100,116,139,.10);--st-gray-fg:#475569;--st-gray-bd:rgba(100,116,139,.28);--radius:16px;--radius-sm:11px;--radius-lg:22px;--shadow:0 1px 2px rgba(15,23,42,.05),0 12px 32px -18px rgba(15,23,42,.18);--shadow-sm:0 1px 2px rgba(15,23,42,.06);--shadow-pop:0 12px 40px -12px rgba(15,23,42,.28);--ring:0 0 0 3px rgba(37,99,235,.18);--grad-primary:linear-gradient(135deg,#3b82f6,#2563eb);--grad-text:linear-gradient(100deg,#1e3a8a,#2563eb 55%,#0284c7);--glow:0 6px 18px -8px rgba(37,99,235,.55);--nav-h:62px}.theme-dark,:root:has(.theme-dark),body.theme-dark,body:has(.theme-dark),html.theme-dark{--bg:#0b1220;--bg-tint-1:rgba(59,130,246,.12);--bg-tint-2:rgba(124,108,246,.10);--bg-tint-3:rgba(20,184,166,.08);--surface:rgba(21,32,56,.82);--surface-2:rgba(28,40,68,.75);--surface-3:rgba(36,50,84,.85);--surface-ink:rgba(8,13,28,.6);--line:rgba(148,163,204,.16);--line-strong:rgba(148,163,204,.30);--text:#f1f5f9;--text-dim:#cbd5e1;--muted:#94a3b8;--nav-bg:rgba(10,16,32,.85);--table-head:rgba(24,34,60,.85);--table-row-hover:rgba(148,163,204,.07);--primary:#3b82f6;--primary-2:#2563eb;--primary-ink:#ffffff;--primary-soft:rgba(59,130,246,.14);--primary-border:rgba(59,130,246,.34);--accent:#a78bfa;--accent-2:#38bdf8;--success:#34d399;--warn:#fbbf24;--danger:#f87171;--st-green-bg:rgba(52,211,153,.13);--st-green-fg:#86efac;--st-green-bd:rgba(52,211,153,.32);--st-yellow-bg:rgba(251,191,36,.12);--st-yellow-fg:#fde68a;--st-yellow-bd:rgba(251,191,36,.30);--st-red-bg:rgba(248,113,113,.12);--st-red-fg:#fecaca;--st-red-bd:rgba(248,113,113,.30);--st-blue-bg:rgba(56,189,248,.12);--st-blue-fg:#bae6fd;--st-blue-bd:rgba(56,189,248,.32);--st-purple-bg:rgba(167,139,250,.13);--st-purple-fg:#ddd6fe;--st-purple-bd:rgba(167,139,250,.32);--st-gray-bg:rgba(148,163,204,.10);--st-gray-fg:#cbd5e1;--st-gray-bd:rgba(148,163,204,.28);--shadow:0 24px 60px -28px rgba(0,0,0,.8);--shadow-sm:0 10px 28px -18px rgba(0,0,0,.7);--shadow-pop:0 30px 80px -24px rgba(0,0,0,.9);--ring:0 0 0 3px rgba(59,130,246,.28);--grad-primary:linear-gradient(135deg,#60a5fa,#2563eb);--grad-text:linear-gradient(100deg,#bfdbfe,#60a5fa 45%,#a5b4fc);--glow:0 10px 30px -14px rgba(37,99,235,.8)}body.theme-dark,body:has(.theme-dark){color:var(--text);background-color:#0b1220;background-image:radial-gradient(circle at 10% 0,rgba(59,130,246,.1) 0,rgba(0,0,0,0) 45%),radial-gradient(circle at 95% 8%,rgba(124,108,246,.08) 0,rgba(0,0,0,0) 40%),radial-gradient(circle at 50% 110%,rgba(20,184,166,.07) 0,rgba(0,0,0,0) 50%)}body.theme-dark .nav,body:has(.theme-dark) .nav{background:rgba(10,16,32,.85);border-color:rgba(148,163,204,.16);color:var(--text)}body.theme-dark .footer,body:has(.theme-dark) .footer{background:transparent;border-color:rgba(148,163,204,.16);color:var(--muted)}*{box-sizing:border-box}svg{vertical-align:middle}html{background:var(--bg);scroll-behavior:smooth}body{margin:0;min-height:100vh;font-family:Inter,Segoe UI Variable Text,Segoe UI,system-ui,-apple-system,Helvetica Neue,Arial,sans-serif;font-size:14.5px;line-height:1.6;color:var(--text);background-color:var(--bg);background-image:radial-gradient(circle at 8% -4%,var(--bg-tint-1) 0,rgba(0,0,0,0) 42%),radial-gradient(circle at 96% 0,var(--bg-tint-2) 0,rgba(0,0,0,0) 38%),radial-gradient(circle at 50% 108%,var(--bg-tint-3) 0,rgba(0,0,0,0) 46%);background-attachment:fixed;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color .3s ease}::selection{background:var(--primary);color:#fff}*{scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:99px;border:3px solid transparent;background-clip:content-box}::-webkit-scrollbar-thumb:hover{background:var(--muted);background-clip:content-box}a{color:inherit;text-decoration:none}h1,h2,h3,h4{margin:0 0 8px;line-height:1.25;font-weight:700;letter-spacing:-.02em;color:var(--text)}h1{font-size:clamp(23px,3vw,30px);font-weight:750}h2{font-size:clamp(19px,2.2vw,24px);font-weight:700}h3{font-size:16px}h3,h4{font-weight:650}h4{font-size:14.5px}p{margin:0 0 10px}code{font-family:ui-monospace,Cascadia Code,Consolas,monospace;font-size:.9em;background:var(--surface-3);padding:2px 6px;border-radius:6px}button{font-family:inherit}.container{max-width:1240px;margin:0 auto;padding:24px 22px 80px}.nav{position:-webkit-sticky;position:sticky;top:0;z-index:60;background:var(--nav-bg);backdrop-filter:blur(14px) saturate(160%);-webkit-backdrop-filter:blur(14px) saturate(160%);border-bottom:1px solid var(--line)}.nav-inner{max-width:1240px;margin:0 auto;padding:11px 18px;display:flex;gap:12px}.logo,.nav-inner{align-items:center}.logo{display:inline-flex;gap:10px;font-weight:750;font-size:19px;letter-spacing:-.03em;color:var(--text)}.logo-badge{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--grad-primary);color:var(--primary-ink);box-shadow:var(--glow);flex:0 0 34px}.logo-badge svg{width:19px;height:19px}.logo span{color:var(--primary)}.nav-links{display:flex;margin-left:auto;flex-wrap:wrap}.nav-links,.nav-user{gap:8px;align-items:center}.nav-user{display:inline-flex;padding:5px 12px 5px 6px;border-radius:99px;border:1px solid var(--line-strong);background:var(--surface);font-size:12.5px;font-weight:650;color:var(--text-dim);max-width:190px}.nav-user b{color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:120px}.nav-avatar{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--primary-soft);color:var(--primary);font-size:12px;font-weight:800;flex:0 0 26px;text-transform:uppercase}.menu-btn{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;flex:0 0 38px;border-radius:11px;cursor:pointer;border:1px solid var(--line-strong);background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm);transition:background .16s ease,border-color .16s ease,transform .16s ease,box-shadow .16s ease}.menu-btn:hover{background:var(--surface-2);border-color:var(--muted);transform:translateY(-1px)}.menu-btn:active{transform:translateY(0)}.menu-btn:focus-visible{outline:none;box-shadow:var(--ring)}.menu-btn svg{width:20px;height:20px}.menu-panel{position:absolute;top:calc(100% + 10px);left:18px;z-index:70;width:min(320px,calc(100vw - 36px));background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius);box-shadow:var(--shadow-pop);padding:10px;animation:menuIn .16s ease-out}.menu-panel-overlay{position:fixed;inset:0;z-index:65;background:transparent}@keyframes menuIn{0%{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:none}}.menu-list{display:grid;grid-gap:3px;gap:3px;margin:0;padding:0;list-style:none}.menu-item{display:flex;align-items:center;gap:11px;padding:9px 11px;border-radius:12px;font-size:14px;font-weight:550;color:var(--text-dim);border:1px solid transparent;transition:background .14s ease,color .14s ease}.menu-item:hover{background:var(--surface-2);color:var(--text)}.menu-item.active{background:var(--primary-soft);border-color:var(--primary-border);color:var(--text);font-weight:650}.menu-item .side-icon{background:var(--surface-3)}.menu-item.active .side-icon{background:var(--primary-soft);color:var(--primary)}.menu-divider{height:1px;background:var(--line);margin:8px 6px}.menu-note{padding:9px 11px 6px;font-size:10.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;background:var(--surface);color:var(--text);border:1px solid var(--line-strong);border-radius:11px;padding:9px 16px;cursor:pointer;text-decoration:none;font-size:13.5px;font-weight:600;line-height:1.25;transition:transform .16s ease,box-shadow .16s ease,background .16s ease,border-color .16s ease,color .16s ease;white-space:nowrap}.btn,.btn:hover{box-shadow:var(--shadow-sm)}.btn:hover{background:var(--surface-2);border-color:var(--muted);transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn:focus-visible{outline:none;box-shadow:var(--ring)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.btn svg{width:16px;height:16px}.btn-primary{background:var(--primary);border-color:transparent;color:var(--primary-ink);box-shadow:var(--glow)}.btn-primary:hover{background:var(--primary-2);border-color:transparent;box-shadow:0 10px 26px -10px rgba(37,99,235,.65)}.btn-warn{border-color:var(--st-yellow-bd)}.btn-warn,.btn-warn:hover{background:var(--st-yellow-bg);color:var(--st-yellow-fg)}.btn-warn:hover{border-color:var(--warn);filter:brightness(1.06)}.btn-danger{background:var(--st-red-bg);border-color:var(--st-red-bd);color:var(--st-red-fg)}.btn-danger:hover{background:var(--st-red-bg);border-color:var(--danger);filter:brightness(1.06)}.btn-small{padding:7px 13px;font-size:12.5px;border-radius:10px}.btn-sm{padding:5px 10px;font-size:12px;border-radius:9px}.card{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow)}.card h3{color:var(--text)}.grid{display:grid;grid-gap:14px;gap:14px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}@media (max-width:980px){.grid-3,.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:700px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}.page-head{margin-bottom:4px}.page-title{font-size:clamp(22px,2.6vw,28px);font-weight:750;margin:0;letter-spacing:-.02em;color:var(--text)}.page-sub{margin:4px 0 0;max-width:720px}.muted,.page-sub{color:var(--muted);font-size:13.5px}.mt{margin-top:14px}.row{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.vnd{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.stat-num{font-size:clamp(22px,2.6vw,30px);font-weight:750;letter-spacing:-.02em;background:var(--grad-text);-webkit-background-clip:text;background-clip:text;color:transparent;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.stat-card{overflow:hidden}.stat-card:after{content:"";position:absolute;inset:auto -34% -62% auto;width:180px;height:180px;background:radial-gradient(circle,var(--primary-soft),transparent 72%);pointer-events:none}.stat-head{display:flex;align-items:center;gap:10px;margin-bottom:6px}.stat-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--primary-soft);border:1px solid var(--primary-border);color:var(--primary)}.stat-icon svg{width:17px;height:17px}.task-card{padding:20px}.task-card h3{font-size:16px}.input,.select,.textarea{width:100%;padding:10px 13px;border-radius:var(--radius-sm);border:1px solid var(--line-strong);background:var(--surface);color:var(--text);outline:none;font-size:14px;font-family:inherit;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease,color .16s ease}.input::placeholder,.textarea::placeholder{color:var(--muted);opacity:.8}.input:hover,.select:hover,.textarea:hover{border-color:var(--muted)}.input:focus,.select:focus,.textarea:focus{border-color:var(--primary);background:var(--surface);box-shadow:var(--ring)}.textarea{min-height:92px;resize:vertical}.select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%2394a3b8' d='M1 1l5 5 5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 13px center;padding-right:34px}.select option{background:var(--surface);color:var(--text)}.theme-dark .select option,body.theme-dark .select option{background:#141e33;color:#f1f5f9}.form{display:grid;grid-gap:12px;gap:12px;max-width:460px}.eyebrow-label,.form label{font-size:12.5px;font-weight:650;color:var(--text-dim);display:grid;grid-gap:6px;gap:6px}.field-hint{font-size:12px;color:var(--muted);margin:-4px 0 0}.badge{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:99px;font-size:11.5px;font-weight:650;border:1px solid var(--st-gray-bd);background:var(--st-gray-bg);color:var(--st-gray-fg);white-space:nowrap;line-height:1.5}.badge-green{background:var(--st-green-bg);border-color:var(--st-green-bd);color:var(--st-green-fg)}.badge-yellow{background:var(--st-yellow-bg);border-color:var(--st-yellow-bd);color:var(--st-yellow-fg)}.badge-red{background:var(--st-red-bg);border-color:var(--st-red-bd);color:var(--st-red-fg)}.badge-blue{background:var(--st-blue-bg);border-color:var(--st-blue-bd);color:var(--st-blue-fg)}.badge-purple{background:var(--st-purple-bg);border-color:var(--st-purple-bd);color:var(--st-purple-fg)}.alert{padding:11px 14px;border-radius:var(--radius-sm);font-size:13.5px;border:1px solid var(--st-gray-bd);border-left-width:3px;background:var(--st-gray-bg);color:var(--st-gray-fg)}.alert-error{background:var(--st-red-bg);border-color:var(--st-red-bd);color:var(--st-red-fg)}.alert-ok{background:var(--st-green-bg);border-color:var(--st-green-bd);color:var(--st-green-fg)}.alert a{text-decoration:underline;font-weight:600}.table-wrap{overflow-x:auto;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--surface);-webkit-overflow-scrolling:touch}table{width:100%;border-collapse:collapse;font-size:13.5px}td,th{padding:10px 13px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{color:var(--muted);font-weight:650;font-size:11px;text-transform:uppercase;letter-spacing:.09em;background:var(--table-head);position:-webkit-sticky;position:sticky;top:0;z-index:1;white-space:nowrap}tbody tr{transition:background .14s ease}tbody tr:hover{background:var(--table-row-hover)}tbody tr:last-child td{border-bottom:none}td b{font-weight:600;color:var(--text)}.hero{display:grid;grid-gap:22px;gap:22px;padding:10px 0 4px}.hero-2col{display:grid;grid-template-columns:1.12fr .88fr;grid-gap:44px;gap:44px;align-items:center;padding:26px 0 8px}@media (max-width:940px){.hero-2col{grid-template-columns:1fr;gap:24px}}.hero h1{font-size:clamp(30px,4.6vw,50px);line-height:1.08;margin:0 0 14px;letter-spacing:-.03em;font-weight:800}.hero h1 em{font-style:normal;background:var(--grad-text);-webkit-background-clip:text;background-clip:text;color:transparent}.hero .lead{color:var(--muted);font-size:16px;max-width:560px}.hero .card{padding:22px}.hero-eyebrow{display:inline-flex;align-items:center;gap:8px;margin-bottom:14px;padding:5px 13px;border-radius:99px;font-size:12.5px;font-weight:650;background:var(--primary-soft);border:1px solid var(--primary-border);color:var(--primary)}.hero-eyebrow svg{width:14px;height:14px}.step-num{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--primary);color:var(--primary-ink);font-weight:700;font-size:13.5px;box-shadow:var(--glow);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.chip{display:inline-flex;align-items:center;gap:7px;padding:6px 13px;border-radius:99px;background:var(--surface);border:1px solid var(--line-strong);font-size:12.5px;font-weight:550;color:var(--text-dim)}.chip b{color:var(--primary);font-weight:700}.section{padding:34px 0 4px}.section-title{text-align:center;margin:0 0 6px;font-size:clamp(21px,2.6vw,28px);font-weight:750;letter-spacing:-.02em;color:var(--text)}.section-sub{text-align:center;color:var(--muted);font-size:14px;max-width:620px;margin:0 auto 24px}.stat-band{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);margin:6px 0;overflow:hidden}.stat-band>div{padding:24px 16px;text-align:center}.stat-band>div+div{border-left:1px solid var(--line)}.stat-band .num{font-size:clamp(24px,3vw,34px);font-weight:750;letter-spacing:-.02em;background:var(--grad-text);-webkit-background-clip:text;background-clip:text;color:transparent;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.stat-band .lbl{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-weight:700}@media (max-width:700px){.stat-band{grid-template-columns:1fr}.stat-band>div+div{border-left:none;border-top:1px solid var(--line)}}.icon-chip{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:var(--primary-soft);border:1px solid var(--primary-border);color:var(--primary);margin-bottom:12px}.icon-chip svg{width:20px;height:20px}.icon-chip.purple{background:var(--st-purple-bg);border-color:var(--st-purple-bd);color:var(--st-purple-fg)}.activity-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;border-radius:12px;background:var(--surface-2);border:1px solid var(--line)}.activity-row .amt{color:var(--primary);font-weight:700;font-size:13.5px;white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.activity-row .ttl{font-size:13.5px;font-weight:600;color:var(--text)}.activity-row .sub{font-size:12px;color:var(--muted)}.cta-card{text-align:center;padding:44px 24px;border-radius:var(--radius-lg);background:linear-gradient(135deg,rgba(37,99,235,.06),rgba(2,132,199,.05)),var(--surface);border:1px solid var(--line);box-shadow:var(--shadow)}.cta-card h2{font-size:clamp(22px,2.8vw,30px)}.footer{border-top:1px solid var(--line);padding:26px 0 34px;color:var(--muted);font-size:13px;background:var(--surface)}.footer .container{padding:0 22px}.footer .logo{color:var(--text)}.footer .muted{color:var(--muted)}.footer a.muted{transition:color .14s ease}.footer a.muted:hover{color:var(--text)}.dash-wrap{display:flex;gap:18px;align-items:stretch}.dash-content{flex:1 1;min-width:0;padding-bottom:40px}.side-toggle{display:none}.sidebar{width:258px;flex-shrink:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:14px 10px;align-self:flex-start;position:-webkit-sticky;position:sticky;top:74px;max-height:calc(100vh - 96px);overflow-y:auto;box-shadow:var(--shadow)}.side-logo{display:flex;align-items:center;gap:10px;font-weight:700;font-size:17px;padding:6px 8px 12px;letter-spacing:-.02em;color:var(--text)}.side-logo span{color:var(--primary)}.side-logo-icon{display:inline-grid;place-items:center;background:var(--grad-primary);color:var(--primary-ink);border-radius:9px;width:30px;height:30px;flex:0 0 30px;box-shadow:var(--glow)}.side-logo-icon svg{width:16px;height:16px}.side-user{font-size:12.5px;color:var(--text-dim);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-sm);padding:9px 12px;margin-bottom:10px;line-height:1.6;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.side-user b{color:var(--text)}.side-group{margin-bottom:2px}.side-section{font-size:10.5px;font-weight:750;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);padding:13px 10px 6px}.side-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:10px;text-decoration:none;font-size:13.5px;font-weight:550;color:var(--text-dim);border:1px solid transparent;transition:background .15s ease,color .15s ease}.side-item:hover{background:var(--surface-2);color:var(--text)}.side-item.active{background:var(--primary-soft);border-color:var(--primary-border);color:var(--text);font-weight:650}.side-icon{display:grid;place-items:center;width:28px;height:28px;flex:0 0 28px;border-radius:9px;background:var(--surface-3);color:var(--text-dim)}.side-icon svg{width:15px;height:15px}.side-item.active .side-icon{background:var(--primary-soft);color:var(--primary)}.side-logout{width:100%;margin-top:12px}.side-badge{margin-left:auto}@media (max-width:980px){.dash-wrap{flex-direction:column}.dash-content{padding-bottom:20px}.side-toggle{display:inline-flex}.sidebar{display:none;width:100%;position:static;max-height:none}.sidebar.open{display:block}}.chat-fab{position:fixed;right:22px;bottom:22px;z-index:90;width:54px;height:54px;border-radius:50%;background:var(--primary);border:none;color:var(--primary-ink);cursor:pointer;box-shadow:0 14px 32px -12px rgba(37,99,235,.7);display:flex;align-items:center;justify-content:center;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.chat-fab svg{width:22px;height:22px}.chat-fab:hover{transform:translateY(-3px) scale(1.03);background:var(--primary-2)}.chat-fab:focus-visible{outline:none;box-shadow:var(--ring),0 14px 32px -12px rgba(37,99,235,.7)}.chat-badge{position:absolute;top:-3px;right:-3px;min-width:20px;height:20px;background:var(--danger);color:#fff;border-radius:99px;font-size:10.5px;font-weight:750;line-height:20px;padding:0 5px;box-shadow:0 3px 10px -3px rgba(220,38,38,.6)}.chat-panel{position:fixed;right:22px;bottom:92px;z-index:91;width:min(380px,calc(100vw - 28px));height:min(540px,calc(100vh - 136px));background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);display:flex;flex-direction:column;overflow:hidden;box-shadow:var(--shadow-pop);animation:chatIn .2s cubic-bezier(.2,.9,.3,1.15)}@keyframes chatIn{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}.chat-head{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--line);background:var(--surface-2);font-size:14px;font-weight:650;color:var(--text)}.chat-head .side-icon{background:var(--primary-soft);color:var(--primary)}.chat-head .row{gap:9px;flex-direction:row}.chat-close{background:none;border:none;color:var(--muted);font-size:15px;cursor:pointer;padding:2px 8px;border-radius:8px}.chat-close:hover{color:var(--text);background:var(--surface-3)}.chat-body{flex:1 1;overflow-y:auto;padding:15px 13px;display:flex;flex-direction:column;gap:12px}.chat-empty{color:var(--muted);font-size:13.5px;text-align:center;padding:22px 10px;line-height:1.65}.chat-msg{display:flex;flex-direction:column;max-width:85%}.chat-msg.me{align-self:flex-end;align-items:flex-end}.chat-msg.admin{align-self:flex-start;align-items:flex-start}.chat-bubble{padding:9px 13px;border-radius:14px;font-size:13.5px;line-height:1.55;word-break:break-word;white-space:pre-wrap}.chat-msg.me .chat-bubble{background:var(--primary);color:#fff;font-weight:480;border-bottom-right-radius:5px}.chat-msg.bot{align-self:flex-start;align-items:flex-start}.chat-msg.bot .chat-bubble{background:var(--st-purple-bg);color:var(--st-purple-fg);border:1px solid var(--st-purple-bd);border-bottom-left-radius:5px}.chat-msg.admin .chat-bubble{background:var(--surface-2);color:var(--text);border:1px solid var(--line-strong);border-bottom-left-radius:5px}.chat-meta{font-size:10.5px;color:var(--muted);margin-top:4px;padding:0 4px}.chat-note{align-self:center;text-align:center;font-size:12.5px;color:var(--st-green-fg);background:var(--st-green-bg);border:1px solid var(--st-green-bd);border-radius:12px;padding:10px 13px;max-width:92%}.chat-err{font-size:12.5px;color:var(--st-red-fg);background:var(--st-red-bg);border-left:3px solid var(--st-red-bd);padding:9px 14px}.chat-input-row{display:flex;gap:8px;padding:11px 13px;border-top:1px solid var(--line);background:var(--surface-2)}.chat-input-row .input{flex:1 1;min-width:0}.chat-wrap{display:grid;grid-template-columns:minmax(290px,370px) 1fr;grid-gap:16px;gap:16px;align-items:start}@media (max-width:980px){.chat-wrap{grid-template-columns:1fr}}.chat-list-item{display:block;width:100%;text-align:left;background:var(--surface-2);border:1px solid var(--line);border-radius:12px;padding:11px 13px;color:inherit;cursor:pointer;margin-bottom:9px;font-family:inherit;transition:background .15s ease,border-color .15s ease}.chat-list-item:hover{background:var(--surface-3)}.chat-list-item.active{background:var(--primary-soft);border-color:var(--primary-border)}.chat-list-item .chat-preview{font-size:12.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-scroll{max-height:420px;overflow-y:auto;background:var(--surface-2);border:1px solid var(--line);border-radius:12px;margin:10px 0;padding:14px 12px}.refbox{display:flex;gap:9px;flex-wrap:wrap}.refbox .input{flex:1 1;min-width:220px}.ladder{display:grid;grid-gap:10px;gap:10px}.ladder-row{display:flex;align-items:center;gap:13px;padding:13px 15px;border-radius:13px;border:1px solid var(--line);background:var(--surface-2)}.ladder-row.current{border-color:var(--primary-border);background:var(--primary-soft)}.ladder-icon{display:grid;place-items:center;width:38px;height:38px;flex:0 0 38px;border-radius:12px;font-size:17px;background:var(--surface-3);border:1px solid var(--line)}.ladder-row.current .ladder-icon{background:var(--primary-soft);border-color:var(--primary-border)}.progress-track{height:6px;border-radius:99px;background:var(--surface-3);overflow:hidden}.progress-fill{height:100%;border-radius:99px;background:var(--grad-primary);transition:width .4s ease}.divider{height:1px;background:var(--line);margin:16px 0;border:none}.kbd{display:inline-block;padding:2px 8px;border-radius:7px;background:var(--surface-3);border:1px solid var(--line-strong);font-family:ui-monospace,Consolas,monospace;font-size:12px;letter-spacing:.5px;color:var(--text)}@media (max-width:620px){.container{padding:16px 14px 64px}.card{padding:16px;border-radius:14px}.nav-inner{padding:9px 12px;gap:8px;flex-wrap:nowrap}.logo{font-size:16.5px}.logo-badge{width:30px;height:30px;flex:0 0 30px}.logo-badge svg{width:16px;height:16px}.nav-links{gap:5px;margin-left:auto}.nav-links .btn{padding:6px 11px;font-size:12px}.nav-user b{max-width:72px}.nav-user{padding:4px 9px 4px 5px;max-width:120px}.hero .card{padding:16px}.footer .container{padding:0 14px}.menu-panel{left:12px;width:calc(100vw - 24px)}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}