@font-face{font-family:Sora;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/c5f10e9e72d35c52-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Sora;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/3dc379dc9b5dec12-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Sora;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/c5f10e9e72d35c52-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Sora;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/3dc379dc9b5dec12-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Sora;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/c5f10e9e72d35c52-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Sora;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/3dc379dc9b5dec12-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Sora;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/c5f10e9e72d35c52-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Sora;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/3dc379dc9b5dec12-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Sora Fallback;src:local("Arial");ascent-override:85.29%;descent-override:25.50%;line-gap-override:0.00%;size-adjust:113.73%}.__className_bf241e{font-family:Sora,Sora Fallback;font-style:normal}.__variable_bf241e{--font-sora:"Sora","Sora Fallback"}@font-face{font-family:DM Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/7ab938503e4547a1-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:DM Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/13971731025ec697-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:DM Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/7ab938503e4547a1-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:DM Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/13971731025ec697-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:DM Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/7ab938503e4547a1-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:DM Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/13971731025ec697-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:DM Sans Fallback;src:local("Arial");ascent-override:94.90%;descent-override:29.66%;line-gap-override:0.00%;size-adjust:104.53%}.__className_de2cf6{font-family:DM Sans,DM Sans Fallback;font-style:normal}.__variable_de2cf6{--font-dm-sans:"DM Sans","DM Sans Fallback"}:root{color-scheme:light;--bg:#F6F5FA;--surface:#ffffff;--surface-sunk:#FAF9FD;--chip:#EFEDF6;--line:#EDEBF4;--line-strong:#DDD9EC;--line-hair:#F4F2FA;--ink:#1C1B29;--ink-2:#4A4763;--ink-3:#6C678A;--ink-mute:#6F6B87;--ink-faint:#B3B0C4;--lav:#C7B0F7;--lav-deep:#8B6DF0;--lav-ink:#5636D4;--lav-tint:#F1EBFE;--lav-edge:#E0D3FA;--lav-ink-2:#28184F;--lav-ink-3:#5F5190;--teal:#2BB3A3;--teal-ink:#1A7C6D;--teal-tint:#E3F6F4;--rose:#F2607A;--rose-ink:#CD2A54;--rose-deep:#A8324F;--rose-tint:#FDECEF;--rose-edge:#F6DDE3;--amber:#B98A00;--amber-tint:#FDF6E3;--amber-ink:#7A6A3A;--grey-dot:#C9C6D8;--r-pill:999px;--r-xs:7px;--r-sm:11px;--r-md:14px;--r-lg:18px;--r-xl:22px;--r-2xl:24px;--shadow-sm:0 8px 22px rgba(40,30,80,.07);--shadow-md:0 12px 32px rgba(40,30,80,.09);--shadow-lg:0 18px 44px rgba(28,22,50,.30);--shadow-dlg:0 40px 90px rgba(30,20,60,.28);--font-sans:var(--font-dm-sans),ui-sans-serif,system-ui,sans-serif;--font-display:var(--font-sora),var(--font-dm-sans),ui-sans-serif,sans-serif;--font-mono:ui-monospace,Menlo,Consolas,monospace;--text-xs:11.5px;--text-sm:12.5px;--text-base:13.5px;--text-md:14.5px;--text-lg:17px;--text-xl:18px;--text-h2:23px;--text-h1:33px;--ease-out:cubic-bezier(.16,1,.3,1);--ease-move:ease;--t-fast:.16s;--t-base:.2s;--t-slow:.34s;--t-enter:.6s;--sidebar-w:268px;--sidebar-w-collapsed:88px}*,:after,:before{box-sizing:border-box}body,html{margin:0;padding:0}html{-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background:var(--bg);color:var(--ink);font-family:var(--font-sans);font-size:var(--text-md);line-height:1.6;min-height:100vh}blockquote,figure,h1,h2,h3,h4,ol,p,ul{margin:0}ol,ul{padding:0}a{color:var(--lav-ink);text-decoration:none}a:hover{color:#4A2BC2}img,svg{display:block;max-width:100%}button,input,select,textarea{font:inherit;color:inherit}::selection{background:#E7DEFD}:focus-visible{outline:2px solid var(--lav-ink);outline-offset:2px;border-radius:4px}:focus:not(:focus-visible){outline:none}.display{font-family:var(--font-display);letter-spacing:-.02em}.mono{font-family:var(--font-mono)}.mono,.tnum{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.scroller{scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent;overscroll-behavior:contain}.scroller::-webkit-scrollbar{width:8px;height:8px}.scroller::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:8px}.scroller::-webkit-scrollbar-track{background:transparent}.x-scroll{overflow-x:auto;max-width:100%}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap;border:0}.skip-link{position:fixed;top:12px;left:12px;z-index:100;transform:translateY(-200%);background:var(--ink);color:#fff;padding:10px 18px;border-radius:var(--r-md);font-weight:600;font-size:var(--text-base);transition:transform var(--t-fast) var(--ease-out)}.skip-link:focus-visible{transform:none;color:#fff}.t-xs{font-size:var(--text-xs)}.t-sm{font-size:var(--text-sm)}.t-base{font-size:var(--text-base)}.muted{color:var(--ink-3)}.faint{color:var(--ink-mute)}.pretty{text-wrap:pretty}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.page-head{position:relative;z-index:30;margin-bottom:26px}.page-head h1{font-family:var(--font-display);font-size:var(--text-h1);font-weight:700;letter-spacing:-.03em;line-height:1.1;position:relative}.page-head p{margin-top:8px;font-size:var(--text-md);color:var(--ink-3);position:relative;max-width:76ch}.page-head-row{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap}.section-title{font-family:var(--font-display);font-weight:600;font-size:var(--text-xl);letter-spacing:-.02em}.section-note{font-size:var(--text-base);color:var(--ink-3);margin-top:6px;line-height:1.6;max-width:78ch}.grid-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));grid-gap:18px;gap:18px}.grid-stats--five{grid-template-columns:repeat(auto-fit,minmax(172px,1fr))}.grid-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:18px;gap:18px}.grid-halves{display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,1fr));grid-gap:22px;gap:22px}.stack{flex-direction:column}.row,.stack{display:flex}.row{align-items:center}.wrap{flex-wrap:wrap}.gap-6{gap:6px}.gap-8{gap:8px}.gap-10{gap:10px}.gap-12{gap:12px}.gap-14{gap:14px}.gap-18{gap:18px}.gap-22{gap:22px}.mb-18{margin-bottom:18px}.mb-22{margin-bottom:22px}.push{margin-left:auto}.shell{display:flex;min-height:100vh;background:var(--bg)}.main{flex:1 1;min-width:0;padding:30px 38px 80px;overflow-x:clip}@media (max-width:720px){.main{padding:22px 18px 64px}}.sidebar{width:var(--sidebar-w);flex:none;position:-webkit-sticky;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;gap:5px;padding:24px 18px;background:var(--surface);border-right:1px solid var(--line);overflow-y:auto;overflow-x:hidden;transition:width var(--t-base) var(--ease-move)}.sidebar[data-collapsed=true]{width:var(--sidebar-w-collapsed)}.sidebar[data-collapsed=true] .collapsible{display:none}.sidebar[data-collapsed=true] .nav-item{justify-content:center;padding:11px}.brand{display:flex;align-items:center;gap:11px;padding:2px 6px 20px}.brand,.brand:hover{color:inherit}.brand-mark{width:36px;height:36px;flex:none;background:var(--ink);border-radius:var(--r-sm);display:grid;place-items:center}.brand-mark img{width:23px;height:23px;object-fit:contain;filter:brightness(0) invert(1)}.brand-name{display:block;font-family:var(--font-display);font-weight:700;font-size:var(--text-xl);letter-spacing:-.03em;line-height:1.1}.brand-sub{display:block;margin-top:2px}.brand-sub,.side-label{font-size:var(--text-xs);color:var(--ink-mute)}.side-label{padding:0 14px 8px;font-weight:500}.nav-item+.side-label,.side-label+.side-label{padding-top:18px}.nav-item{display:flex;align-items:center;gap:12px;width:100%;flex:none;padding:11px 14px;border:0;border-radius:var(--r-md);background:transparent;color:var(--ink-3);font-family:var(--font-sans);font-weight:500;font-size:var(--text-md);text-align:left;cursor:pointer;transition:background var(--t-base) var(--ease-move),color var(--t-base) var(--ease-move)}.nav-item:hover{background:#F1EFF9;color:var(--ink)}.nav-item[data-active=true]{background:var(--lav-tint);color:var(--lav-ink);font-weight:600}.nav-item svg{width:19px;height:19px;flex:none}.nav-badge{margin-left:auto;min-width:22px;height:21px;padding:0 7px;border-radius:var(--r-pill);display:inline-flex;align-items:center;justify-content:center;background:var(--chip);color:var(--ink-3);font-size:var(--text-xs);font-weight:600}.nav-item[data-active=true] .nav-badge{background:var(--lav);color:var(--lav-ink-2)}.rail-spacer{margin-top:auto}.side-card{flex:none;background:var(--lav-tint);border-radius:var(--r-lg);padding:17px;margin:18px 0 8px}.side-card-title{font-family:var(--font-display);font-weight:600;font-size:var(--text-md);color:var(--lav-ink-2)}.side-card-body{font-size:var(--text-sm);line-height:1.55;color:var(--lav-ink-3);margin:7px 0 13px}@media (max-width:900px){.sidebar{width:var(--sidebar-w-collapsed)}.sidebar .collapsible{display:none}.sidebar .nav-item{justify-content:center;padding:11px}}@media (max-width:640px){.shell{flex-direction:column}.sidebar{width:100%;height:auto;flex-direction:row;align-items:center;flex-wrap:nowrap;gap:4px;padding:10px 12px;border-right:0;border-bottom:1px solid var(--line);overflow-x:auto;overflow-y:hidden;z-index:30}.sidebar .brand{padding:0 10px 0 2px}.sidebar nav{display:flex;gap:4px}.sidebar .nav-item{width:auto;flex:none}.sidebar .nav-item--collapse,.sidebar .rail-spacer,.sidebar .search-wrap,.sidebar .side-card,.sidebar .side-label{display:none}}.search-wrap{position:relative;margin-bottom:16px}.search-wrap svg{position:absolute;left:14px;top:50%;transform:translateY(-50%);width:17px;height:17px;color:var(--ink-mute);pointer-events:none}.search{width:100%;height:44px;padding:0 44px 0 40px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-sunk);font-family:var(--font-sans);font-size:var(--text-md);color:var(--ink);transition:border-color var(--t-base) var(--ease-move),background var(--t-base) var(--ease-move)}.search:focus{border-color:var(--lav-deep);background:var(--surface)}.search::placeholder{color:var(--ink-mute)}.kbd{position:absolute;right:11px;top:50%;transform:translateY(-50%);font-size:11px;color:var(--ink-3);background:#F1EFF9;border-radius:var(--r-xs);padding:3px 7px;pointer-events:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:46px;padding:0 20px;border:0;border-radius:var(--r-md);font-family:var(--font-sans);font-weight:600;font-size:var(--text-md);white-space:nowrap;cursor:pointer;transition:background var(--t-base) var(--ease-move),transform .14s var(--ease-move),box-shadow var(--t-base) var(--ease-move),border-color var(--t-base) var(--ease-move),color var(--t-base) var(--ease-move)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn:not(:disabled):active{transform:scale(.975)}.btn--primary{background:var(--ink);color:#fff}.btn--primary:not(:disabled):hover{background:#2E2C42;box-shadow:0 8px 20px rgba(28,27,41,.22)}.btn--lav{background:var(--lav);color:var(--lav-ink-2)}.btn--lav:not(:disabled):hover{background:#B79BF3;box-shadow:0 8px 22px rgba(167,138,240,.4)}.btn--ghost{background:var(--surface);border:1px solid #e6e3f0;color:var(--ink-2)}.btn--ghost:not(:disabled):hover{border-color:var(--lav);color:var(--lav-ink)}.btn--danger{background:var(--surface);border:1px solid var(--rose-edge);color:var(--rose-ink)}.btn--danger:not(:disabled):hover{background:var(--rose-tint);border-color:var(--rose)}.btn--sm{height:38px;padding:0 15px;font-size:var(--text-base);border-radius:12px}.btn--xs{height:32px;padding:0 13px;font-size:var(--text-sm);border-radius:10px}.btn--block{width:100%}.btn svg{width:15px;height:15px;flex:none}.icon-btn{width:42px;height:42px;flex:none;border-radius:var(--r-md);border:1px solid var(--line);background:var(--surface);display:grid;place-items:center;color:var(--ink-3);cursor:pointer;position:relative;transition:border-color var(--t-base) var(--ease-move),color var(--t-base) var(--ease-move)}.icon-btn:hover{border-color:var(--lav);color:var(--lav-ink)}.icon-btn svg{width:19px;height:19px}.icon-btn-badge{position:absolute;top:-4px;right:-4px;min-width:19px;height:19px;padding:0 5px;border-radius:var(--r-pill);background:var(--rose-ink);color:#fff;font-size:10.5px;font-weight:600;display:grid;place-items:center;border:2px solid var(--bg)}.field-label{display:block;font-size:var(--text-base);font-weight:500;color:var(--ink-2);margin-bottom:7px}.input{width:100%;min-height:46px;padding:12px 15px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-sunk);font-family:var(--font-sans);font-size:var(--text-md);color:var(--ink);transition:border-color var(--t-base) var(--ease-move),background var(--t-base) var(--ease-move)}.input:focus{border-color:var(--lav-deep);background:var(--surface)}.input::placeholder{color:var(--ink-mute)}textarea.input{resize:vertical;min-height:104px;line-height:1.6}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-2xl);padding:26px 28px}.card--tight{padding:22px 24px;border-radius:var(--r-xl)}.card--sunk{background:var(--surface-sunk)}.card--lav{background:linear-gradient(158deg,#EDE4FE,#F7F3FE 62%);border-color:var(--lav-edge)}.card--interactive{cursor:pointer;text-align:left;width:100%;font:inherit;color:inherit;display:block;transition:box-shadow var(--t-base) var(--ease-move),transform var(--t-base) var(--ease-move),border-color var(--t-base) var(--ease-move)}.card--interactive:hover{box-shadow:var(--shadow-md);transform:translateY(-3px);border-color:#D9CDF8}.stat-value{font-family:var(--font-display);font-weight:700;font-size:36px;letter-spacing:-.035em;line-height:1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.stat-value--sm{font-size:30px}.stat-label{font-size:var(--text-base);color:var(--ink-3);font-weight:500}.stat-sub{font-size:var(--text-sm);color:var(--ink-mute);margin-top:10px}.stat-icon{width:34px;height:34px;flex:none;border-radius:var(--r-sm);display:grid;place-items:center}.stat-icon svg{width:17px;height:17px}.divider{height:1px;background:var(--line-hair);border:0;margin:26px 0}.chip{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;font-size:var(--text-sm);font-weight:600;padding:5px 12px;border-radius:var(--r-pill);background:var(--chip);color:var(--ink-3)}.chip--lav{background:var(--lav-tint);color:var(--lav-ink)}.chip--teal{background:var(--teal-tint);color:var(--teal-ink)}.chip--rose{background:var(--rose-tint);color:var(--rose-ink)}.chip--amber{background:var(--amber-tint);color:var(--amber-ink)}.chip--grey{background:var(--chip);color:var(--ink-3)}.chip--ghost{background:var(--bg);color:var(--ink-3);font-weight:500;padding:4px 11px;font-size:var(--text-xs)}.chip--lg{font-size:var(--text-base);padding:6px 14px}.chip--wrap{white-space:normal;text-align:left;line-height:1.5;max-width:100%}.chip--dashed{border:1px dashed var(--line-strong);color:var(--ink-3)}.dot{width:6px;height:6px;border-radius:50%;background:currentColor;flex:none}.dot--lg{width:9px;height:9px}.chart-legend{display:flex;flex-wrap:wrap;gap:6px 10px;list-style:none}.legend-key{display:inline-flex;align-items:center;gap:8px;font:inherit;font-size:var(--text-sm);cursor:pointer;padding:5px 10px;border:1px solid transparent;border-radius:var(--r-pill);background:var(--surface-sunk);color:var(--ink-2);transition:background var(--t-fast) var(--ease-move),border-color var(--t-fast) var(--ease-move),opacity var(--t-fast) var(--ease-move)}.legend-key:hover{background:var(--chip);border-color:var(--line-strong)}.legend-key[data-off=true]{color:var(--ink-3);background:transparent}.legend-key[data-off=true] .legend-swatch{background:var(--ink-faint)!important}.legend-key[aria-pressed=true][data-pinned=true]{border-color:var(--lav);background:var(--lav-tint)}.legend-swatch{width:11px;height:11px;border-radius:3px;flex:none}.legend-label{font-weight:600;color:var(--ink-2)}.legend-value{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:700;color:var(--ink-3)}.legend-meta{color:var(--ink-3);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.notif-wrap{position:relative;display:inline-flex}.notif-panel{position:absolute;top:calc(100% + 10px);right:0;z-index:60;width:min(360px,calc(100vw - 36px));background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-lg);box-shadow:var(--shadow-md);overflow:hidden;animation:pop-in var(--t-fast) var(--ease-out) both}@keyframes pop-in{0%{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.notif-panel{animation:none}}.notif-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:13px 16px;border-bottom:1px solid var(--line)}.notif-title{font-weight:700;font-size:var(--text-md);color:var(--ink)}.notif-empty{padding:20px 16px;font-size:var(--text-base);line-height:1.6;color:var(--ink-3)}.notif-list{list-style:none;max-height:min(58vh,420px);overflow-y:auto}.notif-item{display:flex;gap:11px;align-items:flex-start;padding:12px 16px;border-bottom:1px solid var(--line-hair);transition:background var(--t-fast) var(--ease-move)}.notif-item:hover{background:var(--surface-sunk)}.notif-item .dot{margin-top:5px}.notif-item-text{min-width:0;display:block;line-height:1.45}.notif-item-head{display:block;font-size:var(--text-sm);font-weight:700;color:var(--ink)}.notif-item-title{display:block;font-size:var(--text-base);color:var(--ink-2);margin-top:2px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.notif-item-detail{display:block;font-size:var(--text-xs);color:var(--ink-mute);margin-top:3px}.notif-foot{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;font-size:var(--text-sm);font-weight:600;color:var(--lav-ink);background:var(--surface-sunk);transition:background var(--t-fast) var(--ease-move)}.notif-foot:hover{background:var(--lav-tint)}.lane-bar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:20px;padding:12px 16px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-xl)}.lane-bar-count{display:inline-flex;align-items:baseline;gap:7px}.lane-bar-n{font-weight:700;font-size:21px;letter-spacing:-.03em;color:var(--ink)}.lane-bar-rule{width:1px;align-self:stretch;background:var(--line);margin-inline:2px}@media (max-width:720px){.lane-bar-rule{display:none}}.lane-chip{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;font-size:var(--text-sm);font-weight:600;padding:5px 12px;border-radius:var(--r-pill);background:var(--chip);color:var(--ink-3);transition:background var(--t-fast) var(--ease-move),color var(--t-fast) var(--ease-move)}.lane-chip:hover{background:#E7E3F4;color:var(--ink)}.lane-chip[data-active=true]{background:var(--lav-tint);color:var(--lav-ink)}.lane-chip-n{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:700;color:var(--ink-3)}.lane-chip[data-active=true] .lane-chip-n{color:inherit}.tabs{display:flex;gap:8px;flex-wrap:wrap}.tab{padding:9px 16px;border:0;border-radius:var(--r-pill);background:transparent;color:var(--ink-3);font-family:var(--font-sans);font-weight:600;font-size:var(--text-md);cursor:pointer;transition:background var(--t-fast) var(--ease-move),color var(--t-fast) var(--ease-move)}.tab:hover{color:var(--ink)}.tab[aria-selected=true],.tab[data-active=true]{background:var(--ink);color:#fff}.hover-row{border-radius:var(--r-md);transition:background var(--t-fast) var(--ease-move)}.hover-row:hover{background:var(--surface-sunk)}.list-row{width:100%;text-align:left;border:1px solid var(--line);background:var(--surface);border-radius:16px;padding:13px 15px;display:flex;flex-direction:column;gap:7px;cursor:pointer;font:inherit;color:inherit;transition:border-color var(--t-base) var(--ease-move),box-shadow var(--t-base) var(--ease-move),transform var(--t-base) var(--ease-move)}.list-row:hover{border-color:#D9CDF8;box-shadow:var(--shadow-sm);transform:translateY(-1px)}.list-row[data-active=true]{border-color:var(--lav);background:#FBF9FF;box-shadow:0 8px 24px rgba(140,110,235,.14)}.table{width:100%;border-collapse:collapse}.table th{text-align:left;font-size:var(--text-sm);color:var(--ink-mute);font-weight:500;padding:9px 8px;border-bottom:1px solid var(--chip)}.table td{padding:13px 8px;border-bottom:1px solid var(--line-hair);font-size:var(--text-md);color:var(--ink-2)}.table tbody tr{transition:background var(--t-fast) var(--ease-move)}.table tbody tr:hover{background:var(--surface-sunk)}.track{background:#F1EFF9;border-radius:var(--r-pill);overflow:hidden}.track--thin{height:9px}.track--thick{height:20px;border-radius:var(--r-xs);background:var(--bg)}.track-fill{height:100%;border-radius:inherit;background:var(--lav-deep);transform-origin:left}.backdrop{position:fixed;inset:0;z-index:40;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(28,22,50,.4);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.dialog{width:min(500px,100%);max-height:calc(100vh - 40px);overflow-y:auto;background:var(--surface);border-radius:var(--r-2xl);padding:30px;display:flex;flex-direction:column;gap:15px;box-shadow:var(--shadow-dlg)}.dialog-title{font-family:var(--font-display);font-weight:700;font-size:22px;letter-spacing:-.02em}.dialog-body{font-size:var(--text-md);line-height:1.6;color:var(--ink-3)}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:8px}.toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%);z-index:50;background:var(--ink);color:#fff;padding:15px 26px;border-radius:var(--r-pill);font-weight:600;font-size:var(--text-base);box-shadow:var(--shadow-lg);max-width:calc(100vw - 40px);text-align:center}.toast[data-tone=error]{background:var(--rose-deep)}.empty{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-2xl);padding:46px;text-align:center;color:var(--ink-3)}.empty,.notice{font-size:var(--text-md)}.notice{border-radius:16px;padding:16px 20px;line-height:1.5;display:flex;align-items:center;gap:11px;flex-wrap:wrap}.notice--lav{background:var(--lav-tint);color:#3B2A6B}.notice--teal{background:var(--teal-tint);color:#166B5E}.notice--rose{background:var(--rose-tint);color:var(--rose-deep)}.notice--grey{background:var(--bg);color:var(--ink-3)}.notice--amber{background:var(--amber-tint);color:var(--amber-ink)}.code{margin:0;background:var(--surface-sunk);border:1px solid var(--line);border-radius:16px;padding:16px;font-family:var(--font-mono);font-size:var(--text-sm);line-height:1.7;color:var(--ink-2);overflow:auto;white-space:pre-wrap;word-break:break-word}.code--dark{background:var(--ink);border-color:var(--ink);color:#D9D4EE}.log{background:var(--surface-sunk);border:1px solid var(--chip);border-radius:var(--r-lg);padding:16px;font-family:var(--font-mono);font-size:12px;line-height:1.85;overflow:auto}.event{display:grid;grid-template-columns:26px 92px 116px minmax(0,1fr);grid-gap:12px;gap:12px;align-items:baseline;padding:9px 12px;border-radius:var(--r-sm)}.event:hover{background:var(--surface-sunk)}@media (max-width:640px){.event{grid-template-columns:26px minmax(0,1fr)}.event>:nth-child(3),.event>:nth-child(4){grid-column:2}}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:24px;background:var(--bg)}.login-card{width:100%;max-width:400px;display:flex;flex-direction:column;gap:16px;padding:34px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-2xl);box-shadow:var(--shadow-sm);position:relative;z-index:1}.switch{--switch-w:46px;--switch-h:26px;--switch-pad:3px;position:relative;flex:none;width:var(--switch-w);height:var(--switch-h);padding:0;border:1px solid var(--lav-edge);border-radius:var(--r-pill);background:var(--lav-tint);cursor:pointer;transition:background var(--t-base) var(--ease-move),border-color var(--t-base) var(--ease-move)}.switch[aria-checked=true]{background:var(--rose-tint);border-color:var(--rose-edge)}.switch:after{content:"";position:absolute;top:var(--switch-pad);left:var(--switch-pad);width:calc(var(--switch-h) - var(--switch-pad) * 2 - 2px);height:calc(var(--switch-h) - var(--switch-pad) * 2 - 2px);border-radius:50%;background:var(--lav-deep);box-shadow:0 2px 5px rgba(40,30,80,.28);transition:transform var(--t-base) var(--ease-out),background var(--t-base) var(--ease-move)}.switch[aria-checked=true]:after{background:var(--rose-ink);transform:translateX(calc(var(--switch-w) - var(--switch-h)))}.switch:not(:disabled):hover{border-color:var(--lav)}.switch[aria-checked=true]:not(:disabled):hover{border-color:var(--rose)}.switch:disabled{cursor:not-allowed;opacity:.5}@media (prefers-reduced-motion:reduce){.switch,.switch:after{transition:none}}.autonomy{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:var(--r-md);background:var(--surface-sunk);border:1px solid var(--line)}.autonomy-state{font-weight:600;font-size:var(--text-base);color:var(--lav-ink)}.autonomy[data-review=on] .autonomy-state{color:var(--rose-ink)}@media (max-width:760px){.overview{display:flex;flex-direction:column}.ov-pair{display:contents}.ov-pair>:first-child{order:-1;margin-bottom:22px}.ov-pair>:last-child{order:5}.grid-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.btn--sm{min-height:44px}.btn--xs{min-height:40px}}@media (max-width:900px){.sidebar .nav-item{position:relative}.sidebar .nav-item .nav-badge.collapsible{display:inline-flex;position:absolute;top:3px;right:3px;min-width:16px;height:16px;padding:0 4px;font-size:10px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;background:var(--lav-tint);color:var(--lav-ink);border:1px solid var(--surface)}.sidebar .nav-item .nav-badge.collapsible[data-zero=true]{display:none}.sidebar .nav-item[data-active=true] .nav-badge.collapsible{background:var(--lav-deep);color:#fff}}@media (max-width:380px){.grid-cards,.grid-halves,.grid-stats{grid-template-columns:minmax(0,1fr)}.dialog-actions{flex-wrap:wrap}}@keyframes t-rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes t-fade{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes t-pop{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}@keyframes t-pulse{0%,to{opacity:1}50%{opacity:.28}}@keyframes t-bar{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes t-barw{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes t-spin{to{transform:rotate(1turn)}}@keyframes t-ring{0%{box-shadow:0 0 0 0 rgba(199,176,247,.55)}70%{box-shadow:0 0 0 12px rgba(199,176,247,0)}to{box-shadow:0 0 0 0 rgba(199,176,247,0)}}@keyframes t-draw{to{stroke-dashoffset:0}}.rise{animation:t-rise var(--t-enter) var(--ease-out) both;animation-delay:calc(var(--i, 0) * 40ms)}.fade-in{animation:t-fade var(--t-slow) var(--ease-out) both;animation-delay:calc(var(--i, 0) * 40ms)}.view-enter{animation:t-fade var(--t-slow) var(--ease-out) both}.pulse{animation:t-pulse 1.4s ease-in-out infinite}.pulse--fast{animation-duration:1.3s}.ring{animation:t-ring 2s ease-out infinite}.spinner{width:14px;height:14px;border:2px solid;border-top:2px solid transparent;border-radius:50%;opacity:.8;animation:t-spin .6s linear infinite;flex:none}.bar-grow{transform-origin:bottom;animation:t-bar .65s var(--ease-out) both;animation-delay:calc(var(--i, 0) * 16ms)}.bar-grow-x{transform-origin:left;animation:t-barw .7s var(--ease-out) both;animation-delay:calc(var(--i, 0) * 50ms)}.path-draw{stroke-dasharray:var(--len,1200);stroke-dashoffset:var(--len,1200);animation:t-draw 1.1s var(--ease-out) both}.aurora{position:absolute;z-index:0;pointer-events:none;filter:blur(46px);opacity:.62;background:radial-gradient(circle at 32% 42%,#D9C6FB,transparent 62%),radial-gradient(circle at 70% 58%,#C9EDE7,transparent 60%);width:340px;height:210px;left:-76px;top:-94px}.spotlight{position:relative}.spotlight:after{content:"";position:absolute;inset:0;border-radius:inherit;opacity:0;pointer-events:none;transition:opacity .3s var(--ease-move);background:radial-gradient(300px circle at var(--mx,50%) var(--my,0),rgba(199,176,247,.26),transparent 62%)}.spotlight:hover:after{opacity:1}.lift{transition:box-shadow var(--t-base) var(--ease-move),transform var(--t-base) var(--ease-move)}.lift:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}.isolate .isolate-item{transition:opacity var(--t-base) var(--ease-move),transform var(--t-base) var(--ease-move)}.isolate:hover .isolate-item{opacity:.38}.isolate .isolate-item:hover{opacity:1;transform:translateX(3px)}.mark-hover{transition:filter var(--t-base) var(--ease-move),transform var(--t-base) var(--ease-move)}.tip:hover .mark-hover{filter:saturate(1.35) brightness(1.04);transform:scaleY(1.025)}.svg-curve{transition:opacity .25s var(--ease-move),stroke-width .25s var(--ease-move)}.svg-dot{transition:cx .55s var(--ease-out),r var(--t-base) var(--ease-move),opacity .3s var(--ease-move)}.svg-node{transition:r var(--t-base) var(--ease-move),opacity var(--t-base) var(--ease-move);cursor:pointer}.tip{position:relative}.tip:after{content:attr(data-tip);bottom:calc(100% + 11px);transform:translate(-50%,5px);background:var(--ink);color:#F3F0FF;font-family:var(--font-sans);font-size:var(--text-xs);font-weight:500;line-height:1.5;white-space:nowrap;padding:8px 12px;border-radius:10px;box-shadow:0 12px 26px rgba(30,20,60,.2);transition:opacity var(--t-fast) var(--ease-move),transform var(--t-fast) var(--ease-move)}.tip:after,.tip:before{position:absolute;left:50%;z-index:40;opacity:0;pointer-events:none}.tip:before{content:"";bottom:calc(100% + 5px);transform:translateX(-50%);border:5px solid transparent;border-top:5px solid var(--ink);transition:opacity var(--t-fast) var(--ease-move)}.tip:focus-visible:after,.tip:hover:after{opacity:1;transform:translate(-50%)}.tip:focus-visible:before,.tip:hover:before{opacity:1}.backdrop{animation:t-fade var(--t-base) var(--ease-move) both}.dialog{animation:t-pop .3s var(--ease-out) both}.toast{animation:t-rise var(--t-slow) var(--ease-out) both}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important;animation-delay:0s!important}.aurora,.spotlight:after{display:none}.pulse{box-shadow:0 0 0 3px var(--lav-tint),0 0 0 4px var(--lav-deep);border-radius:50%}.pulse,.ring{animation:none!important}.ring{box-shadow:0 0 0 4px var(--lav-tint)}.isolate:hover .isolate-item{opacity:1}.card--interactive:hover,.isolate .isolate-item:hover,.lift:hover,.list-row:hover{transform:none}.spinner{animation:t-spin 1.6s linear infinite!important}}.tip[data-tip-edge=start]:after{left:0;transform:translateY(5px)}.tip[data-tip-edge=start]:focus-visible:after,.tip[data-tip-edge=start]:hover:after{transform:translate(0)}.tip[data-tip-edge=end]:after{left:auto;right:0;transform:translateY(5px)}.tip[data-tip-edge=end]:focus-visible:after,.tip[data-tip-edge=end]:hover:after{transform:translate(0)}