@font-face{font-family:Archivo;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/b06b356f834173cc-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Archivo;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/23d669af23d19c95-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-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Archivo;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/1a4aa50920b5315c-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:Archivo;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/b06b356f834173cc-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Archivo;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/23d669af23d19c95-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-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Archivo;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/1a4aa50920b5315c-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:Archivo;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/b06b356f834173cc-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Archivo;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/23d669af23d19c95-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-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Archivo;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/1a4aa50920b5315c-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:Archivo;font-style:normal;font-weight:800;font-stretch:100%;font-display:swap;src:url(/_next/static/media/b06b356f834173cc-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Archivo;font-style:normal;font-weight:800;font-stretch:100%;font-display:swap;src:url(/_next/static/media/23d669af23d19c95-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-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Archivo;font-style:normal;font-weight:800;font-stretch:100%;font-display:swap;src:url(/_next/static/media/1a4aa50920b5315c-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:Archivo Fallback;src:local("Arial");ascent-override:88.96%;descent-override:21.28%;line-gap-override:0.00%;size-adjust:98.70%}.__className_ffde3e{font-family:Archivo,Archivo Fallback;font-style:normal}.__variable_ffde3e{--font-archivo:"Archivo","Archivo Fallback"}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/edc640959b0c7826-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ac0e76ddaeeb7981-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/64d784ea54a4acde-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ff71da380fbe67dd-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/6d831b18ae5b01dc-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-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/558ca1a6aa3cb55e-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:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/edc640959b0c7826-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ac0e76ddaeeb7981-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/64d784ea54a4acde-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ff71da380fbe67dd-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/6d831b18ae5b01dc-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-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/558ca1a6aa3cb55e-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:JetBrains Mono Fallback;src:local("Arial");ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.00%;size-adjust:134.59%}.__className_6d24ac{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.__variable_6d24ac{--font-jetbrains-mono:"JetBrains Mono","JetBrains Mono Fallback"}:root{--brand:#2e56ea;--brand-strong:#1e3a8a;--brand-tint:#e8edfd;--brand-mist:#a6b6f0;--brand-on:#ffffff;--accent:#f2620f;--accent-hover:#f98545;--accent-text:#c94f08;--font-ui:var(--font-archivo),"Helvetica Neue",-apple-system,"Segoe UI",Roboto,sans-serif;--font-mono:var(--font-jetbrains-mono),ui-monospace,"SF Mono",Menlo,monospace;--bg:#fafafb;--surface:#ffffff;--surface-sunken:#f3f3f4;--border:#e0e0e1;--border-strong:#d0d0d1;--text:#282828;--text-soft:#424242;--text-faint:#6e7477;--danger:#b42318;--danger-tint:#fdecea;--success:#187a48;--warning:#b45309;--ink:var(--text);--ink-soft:var(--text-soft);--line:var(--border);--wash:var(--surface-sunken);--radius-chip:3px;--radius-btn:4px;--radius-m:14px;--radius-l:16px;--shadow-1:0 1px 2px rgb(40 40 40/0.05);--shadow-2:0 4px 16px rgb(40 40 40/0.08);--shadow-float:0 28px 70px rgba(2,11,36,0.34);--z-nav:10;--z-overlay:20;--ease-out:cubic-bezier(0.16,1,0.3,1);--duration-stagger:40ms;--duration-micro:80ms;--duration-quick:150ms;--duration-fast:250ms;--duration-medium:350ms;--duration-slow:400ms;--ease-smooth-out:cubic-bezier(0.22,1,0.36,1);--ease-bounce:cubic-bezier(0.34,1.36,0.64,1);--dropdown-open-dur:250ms;--dropdown-close-dur:150ms;--dropdown-pre-scale:0.97;--dropdown-closing-scale:0.99;--dropdown-ease:cubic-bezier(0.22,1,0.36,1);--badge-slide-dur:260ms;--badge-pop-dur:500ms;--badge-pop-ease:cubic-bezier(0.34,1.36,0.64,1);--shake-distance:6px;--shake-overshoot:4px;--shake-dur-a:80ms;--shake-dur-b:60ms;--toast-open:350ms;--toast-close:250ms;--toast-distance:16px;--toast-blur:2px;--toast-scale:0.97;--toast-ease:cubic-bezier(0.22,1,0.36,1);--tabs-dur:250ms;--tabs-ease:cubic-bezier(0.22,1,0.36,1);--tabs-text-muted:var(--text-soft);--tabs-text-active:var(--text);--tabs-bar-bg:var(--surface-sunken);--tabs-pill-bg:var(--surface)}*{box-sizing:border-box}body,html{height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-ui);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}::selection{background:var(--brand-tint)}.mono{font-family:var(--font-mono);font-size:.86em;letter-spacing:0}:is(a,button,input,select,summary,textarea):focus-visible{outline:3px solid var(--accent);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:after,:before{transition:none!important;animation:none!important}}.brandmark{display:inline-flex;align-items:center;gap:9px;flex-wrap:wrap}.brandmark svg{flex:none}.brandmark .word{font-weight:800;font-size:1.08rem;letter-spacing:-.02em;display:inline-flex;align-items:baseline;gap:.35em;text-transform:lowercase}.brandmark .suite{font-weight:500;color:var(--accent-text);letter-spacing:-.01em}.brandmark--inverted .word{color:var(--brand-on)}.brandmark--inverted .suite{color:var(--accent)}.platform-seal{flex-basis:100%;font-family:var(--font-mono);font-size:.58rem;font-weight:500;letter-spacing:.14em;color:var(--brand-mist);margin-left:calc(22px + 9px)}.brandmark--inverted .platform-seal{color:rgba(255,255,255,.55)}.brandmark--hero{gap:14px}.brandmark--hero .word{font-size:clamp(2.1rem,4.2vw,3.25rem);font-weight:800;letter-spacing:-.035em;line-height:1}.brandmark--hero .suite{font-weight:500}.brandmark--hero .platform-seal{margin-left:calc(40px + 14px);margin-top:4px;font-size:.68rem;letter-spacing:.16em}.login{min-height:100dvh;display:grid;grid-template-columns:1.12fr 1fr}@media (max-width:900px){.login{grid-template-columns:1fr}}.login-brand{position:relative;background:radial-gradient(ellipse 90% 70% at 12% 18%,rgb(46 86 234/.45),transparent 55%),radial-gradient(ellipse 70% 60% at 88% 88%,rgb(242 98 15/.18),transparent 50%),linear-gradient(165deg,#152a6e 0,var(--brand-strong) 48%,#152048 100%);color:var(--brand-on);padding:clamp(36px,7vw,80px);display:flex;flex-direction:column;justify-content:space-between;gap:40px;overflow:hidden}@media (max-width:900px){.login-brand{display:none}}.login-brand-body{max-width:34rem}.login-lede{margin:0;font-size:clamp(1.15rem,1.8vw,1.45rem);line-height:1.35;font-weight:600;letter-spacing:-.015em;color:rgba(255,255,255,.92);max-width:28ch;text-wrap:balance}.login-formula{margin:14px 0 0;font-family:var(--font-mono);font-size:.78rem;font-weight:500;letter-spacing:.02em;color:rgba(255,255,255,.62)}.login-points{margin:28px 0 0;padding:0;list-style:none;display:grid;grid-gap:12px;gap:12px;max-width:42ch}.login-points li{display:flex;gap:12px;align-items:flex-start;font-size:.92rem;color:rgba(255,255,255,.7)}.login-points svg{flex:none;margin-top:2px;color:var(--accent)}.login-brand .foot{font-size:.85rem;color:rgba(255,255,255,.5)}.login-pane{position:relative;display:grid;place-items:center;padding:32px 20px;background:radial-gradient(ellipse 80% 50% at 100% 0,rgb(46 86 234/.06),transparent 55%),var(--bg)}.login-form{width:min(400px,100%);display:grid;grid-gap:18px;gap:18px}.login-form-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;min-height:28px}.login-form-top .mobile-mark{margin-bottom:0}.login-form-title{margin:0 0 4px;font-size:1.45rem;letter-spacing:-.02em;font-weight:700}.login-form header p{margin:0;color:var(--text-soft);font-size:.94rem}.mfa-reveal{justify-self:start;background:none;border:0;padding:0;font:inherit;font-size:.85rem;font-weight:600;color:var(--brand);cursor:pointer;text-decoration:underline;text-underline-offset:3px}.mfa-reveal:hover{color:var(--brand-strong)}.mobile-mark{display:none}@media (max-width:900px){.mobile-mark{display:flex}}.field{display:grid;grid-gap:6px;gap:6px}.field>span{font-size:.82rem;font-weight:600;color:var(--text-soft)}input,select,textarea{height:44px;padding:0 13px;border:1px solid var(--border-strong);border-radius:var(--radius-btn);background:var(--surface);color:var(--text);font:inherit;font-size:.94rem;transition:border-color .14s var(--ease-out)}textarea{height:auto;min-height:64px;padding:10px 13px;resize:vertical}input::placeholder{color:var(--text-faint)}input:hover,select:hover,textarea:hover{border-color:#b8b8b9}.btn{height:44px;padding:0 18px;border:none;border-radius:var(--radius-btn);background:var(--brand);color:var(--brand-on);font:inherit;font-size:1.0625rem;font-weight:700;cursor:pointer;transition:background .14s var(--ease-out),transform 80ms var(--ease-out)}.btn:hover{background:var(--brand-strong)}.btn:active{transform:translateY(1px)}.btn[disabled]{opacity:.65;cursor:default}.btn-cta{background:var(--accent)}.btn-cta:hover{background:var(--accent-hover)}.btn-ghost{background:transparent;color:var(--text-soft);border:1px solid var(--border-strong);font-weight:600;font-size:.94rem}.btn-ghost:hover{background:var(--surface-sunken);color:var(--text)}.btn-sm{height:32px;padding:0 12px;font-size:.875rem;font-weight:600}.alert{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:var(--radius-m);background:var(--danger-tint);color:var(--danger);font-size:.9rem;margin:0}.msg-ok{color:var(--success);margin:0;font-size:.94rem}.demo-users{border:1px solid var(--border);border-radius:var(--radius-m);background:var(--surface-sunken);font-size:.85rem}.demo-users summary{padding:10px 14px;cursor:pointer;color:var(--text-soft);font-weight:600;list-style:none;display:flex;align-items:center;gap:8px}.demo-users summary::-webkit-details-marker{display:none}.demo-users[open] summary{border-bottom:1px solid var(--border)}.demo-users ul{margin:0;padding:10px 14px;list-style:none;display:grid;grid-gap:6px;gap:6px}.demo-users button{background:none;border:none;padding:2px 0;font:inherit;font-family:var(--font-mono);font-size:.8rem;color:var(--brand);cursor:pointer;text-align:left}.demo-users button:hover{text-decoration:underline}.demo-users .role{color:var(--text-faint)}.app-layout{min-height:100dvh;display:grid;grid-template-columns:240px minmax(0,1fr)}.nav-burger{display:none;flex-direction:column;justify-content:center;gap:5px;width:40px;height:40px;padding:8px;border:1px solid var(--border);border-radius:var(--radius-btn);background:var(--surface);cursor:pointer}.nav-burger span{display:block;height:2px;width:100%;background:var(--text);border-radius:1px}.topbar-mobile-brand{display:none;align-items:center}.nav-drawer-root{position:fixed;inset:0;z-index:80}.nav-drawer-backdrop{position:absolute;inset:0;border:0;background:rgb(14 18 32/.48);cursor:pointer;animation:backdrop-in var(--duration-fast) var(--ease-smooth-out)}@keyframes backdrop-in{0%{opacity:0}to{opacity:1}}.nav-drawer{position:absolute;inset:0 auto 0 0;width:min(300px,86vw);background:var(--surface);padding:16px 12px;display:flex;flex-direction:column;gap:12px;box-shadow:var(--shadow-float);transform:translateX(-100%);animation:panel-in var(--duration-fast) var(--ease-smooth-out) forwards}.nav-drawer-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 4px 8px;border-bottom:1px solid var(--border);flex:none}@keyframes panel-in{to{transform:translateX(0)}}.sidenav{position:-webkit-sticky;position:sticky;top:0;height:100dvh;display:flex;flex-direction:column;background:var(--surface);border-right:1px solid var(--border);padding:16px 12px}@media (max-width:900px){.app-layout{grid-template-columns:1fr}.sidenav{display:none}.nav-burger{display:inline-flex}.topbar-mobile-brand{display:flex}}.t-page-enter{animation:page-enter var(--duration-fast) var(--ease-smooth-out)}@keyframes page-enter{0%{opacity:0;transform:translateY(6px);filter:blur(2px)}to{opacity:1;transform:none;filter:none}}.t-dropdown{transform-origin:top right;transform:scale(var(--dropdown-pre-scale));opacity:0;pointer-events:none;transition:transform var(--dropdown-open-dur) var(--dropdown-ease),opacity var(--dropdown-open-dur) var(--dropdown-ease)}.t-dropdown.is-open{transform:scale(1);opacity:1;pointer-events:auto}.t-dropdown.is-closing{transform:scale(var(--dropdown-closing-scale));opacity:0;pointer-events:none;transition:transform var(--dropdown-close-dur) var(--dropdown-ease),opacity var(--dropdown-close-dur) var(--dropdown-ease)}@keyframes badge-pop{0%{transform:scale(.4);opacity:0}60%{transform:scale(1.12);opacity:1}to{transform:scale(1)}}.alert.is-shaking,.login-form.is-shaking{animation:err-shake .28s var(--ease-smooth-out)}@keyframes err-shake{0%,to{transform:translateX(0)}20%{transform:translateX(calc(var(--shake-distance) * -1))}40%{transform:translateX(var(--shake-overshoot))}60%{transform:translateX(calc(var(--shake-distance) * -.6))}80%{transform:translateX(calc(var(--shake-overshoot) * .5))}}.btn-loading{position:relative;pointer-events:none}.btn-loading:after{content:"";width:14px;height:14px;margin-left:8px;border:2px solid rgb(255 255 255/.35);border-top-color:#fff;border-radius:50%;display:inline-block;vertical-align:-2px;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.empty-cta{margin-top:12px}.pw-field{position:relative;display:block}.pw-field input{width:100%;padding-right:72px}.pw-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:none;border:0;cursor:pointer;font-size:12px;color:var(--text-faint)}.pw-toggle:hover{color:var(--text)}.caps-hint{color:var(--warning)}.check-row{display:flex;align-items:center;gap:8px;font-size:.85rem;color:var(--text-soft);margin:4px 0 8px}.t-toast{position:fixed;left:50%;bottom:24px;z-index:calc(var(--z-overlay) + 10);transform:translateX(-50%) translateY(var(--toast-distance)) scale(var(--toast-scale));opacity:0;filter:blur(var(--toast-blur));padding:10px 16px;border-radius:var(--radius-btn);background:var(--text);color:#fff;font-size:.9rem;font-weight:600;box-shadow:var(--shadow-float);pointer-events:none;transition:opacity var(--toast-close) var(--toast-ease),transform var(--toast-close) var(--toast-ease),filter var(--toast-close) var(--toast-ease)}.t-toast.is-open{opacity:1;transform:translateX(-50%) translateY(0) scale(1);filter:blur(0);transition:opacity var(--toast-open) var(--toast-ease),transform var(--toast-open) var(--toast-ease),filter var(--toast-open) var(--toast-ease)}.t-tabs{flex-wrap:wrap;gap:2px;padding:3px;border-radius:var(--radius-btn);background:var(--tabs-bar-bg);max-width:100%}.t-tab,.t-tabs{position:relative;display:inline-flex;align-items:center}.t-tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;min-height:34px;padding:6px 12px;color:var(--tabs-text-muted);cursor:pointer;border-radius:calc(var(--radius-btn) - 1px);z-index:1;font:inherit;font-size:.88rem;gap:6px;transition:color var(--tabs-dur) var(--tabs-ease)}.t-tab:not([aria-selected=true]):hover,.t-tab[aria-selected=true]{color:var(--tabs-text-active)}.t-tab--locked{opacity:.65}.t-tabs-pill{position:absolute;top:3px;left:0;height:calc(100% - 6px);border-radius:calc(var(--radius-btn) - 1px);background:var(--tabs-pill-bg);box-shadow:var(--shadow-1);z-index:0;transition:transform var(--tabs-dur) var(--tabs-ease),width var(--tabs-dur) var(--tabs-ease);pointer-events:none}@media (prefers-reduced-motion:reduce){.alert.is-shaking,.bell-dot,.btn-loading:after,.login-form.is-shaking,.nav-drawer,.nav-drawer-backdrop,.t-page-enter{animation:none!important}.t-dropdown,.t-tab,.t-tabs-pill,.t-toast{transition:none!important}}.sidenav-brand{padding:4px 8px 20px}.sidenav-nav{display:grid;grid-gap:4px;gap:4px;flex:1 1}.sidenav-nav--drawer{flex:none;align-content:start}.nav-drawer .sidenav-foot{margin-top:auto}.sidenav-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:none;border-radius:var(--radius-btn);background:transparent;color:var(--text-soft);font:inherit;font-size:.9rem;font-weight:600;text-align:left;cursor:pointer;transition:background .14s var(--ease-out),color .14s var(--ease-out)}.sidenav-item:hover{background:var(--surface-sunken);color:var(--text)}.sidenav-item--active{background:var(--brand-tint);color:var(--brand-strong)}.sidenav-item--locked{opacity:.55}.sidenav-ico{width:20px;height:20px;display:grid;place-items:center;flex:none}.sidenav-label{min-width:0;line-height:1.3}.sidenav-foot{padding:12px 8px 4px}.sidenav-foot .platform-seal{margin-left:0}.app-main{display:flex;flex-direction:column;min-width:0}.app-content{flex:1 1;width:100%;max-width:1080px;margin:0 auto;padding:clamp(20px,3vw,36px) clamp(16px,4vw,40px) 56px}.stat-grid{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:16px}.stat-tile{border:1px solid var(--border);border-radius:var(--radius-m);padding:14px 16px;min-width:150px;flex:1 1 150px;background:var(--surface)}.stat-tile__label{font-size:.75rem;color:var(--text-soft);margin-bottom:4px}.stat-tile__value{font-size:1.375rem;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:-.02em}.stat-tile__hint{font-size:.69rem;color:var(--text-faint);margin-top:2px}.status-card{border:1px solid var(--border);border-radius:var(--radius-m);padding:14px;flex:1 1 210px;background:var(--surface)}.status-card__title{font-size:.8125rem;font-weight:700}.status-list{list-style:none;margin:8px 0 0;padding:0;display:grid;grid-gap:6px;gap:6px}.status-list li{font-size:.8125rem}.status-bar{height:4px;border-radius:2px;background:var(--surface-sunken);margin-top:2px}.status-bar__fill{height:4px;border-radius:2px;background:var(--brand)}.workbench-toolbar{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:10px}.form-grid{display:grid;grid-gap:12px;gap:12px;max-width:420px;margin-top:12px}.budget-admin{display:grid;grid-gap:20px;gap:20px}.budget-admin-head{display:flex;gap:16px;align-items:flex-start;justify-content:space-between}.budget-admin-head h2{margin:0 0 4px;font-size:1.05rem}.budget-admin-head p{margin:0;max-width:68ch;color:var(--text-soft)}.table-scroll{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius-card)}@media (max-width:640px){.budget-admin-head{align-items:stretch;flex-direction:column}}.form-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.page-title{margin:0 0 16px;font-size:1.25rem;font-weight:700;letter-spacing:-.02em}.admin-tag{display:inline-block;font-family:var(--font-mono);border:1px solid var(--border);border-radius:var(--radius-chip);padding:2px 9px;font-size:.75rem;margin:0 4px 4px 0}.shell{min-height:100dvh;display:flex;flex-direction:column}.topbar{position:-webkit-sticky;position:sticky;top:0;z-index:var(--z-nav);display:flex;align-items:center;gap:14px;padding:0 clamp(16px,4vw,40px);height:60px;background:var(--surface);border-bottom:1px solid var(--border)}.topbar .brandmark .word{font-size:.98rem}.topbar .spacer{flex:1 1}.company-switch select{height:38px;max-width:min(280px,42vw);border-color:var(--border);background:var(--surface);font-size:.87rem}@media (max-width:900px){.company-switch select{max-width:140px}.topbar .btn-sm{flex:none}}.lang-toggle{display:inline-flex;border:1px solid var(--border);border-radius:999px;overflow:hidden}.lang-toggle button{border:none;background:none;font:inherit;font-size:.76rem;font-weight:700;padding:5px 10px;cursor:pointer;color:var(--text-faint)}.lang-toggle button[aria-pressed=true]{background:var(--brand-tint);color:var(--brand)}.user-chip{display:flex;align-items:center;gap:10px}.avatar{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--brand-tint);color:var(--brand);font-size:.76rem;font-weight:700}.user-chip .name{font-size:.88rem;font-weight:600}@media (max-width:700px){.user-chip .name{display:none}}.home{width:100%;max-width:1080px;margin:0 auto;padding:clamp(24px,4vw,44px) clamp(16px,4vw,40px) 64px}.home-head{margin-bottom:26px}.home-head h1{margin:0;font-size:clamp(1.5rem,2.6vw,1.85rem);letter-spacing:-.025em;font-weight:700}.home-head p{margin:4px 0 0;color:var(--text-soft);font-size:.95rem}.intake{display:flex;gap:10px;align-items:center;padding:8px 8px 8px 18px;border:1px solid var(--border-strong);border-radius:var(--radius-l);background:var(--surface);box-shadow:var(--shadow-1);margin-bottom:36px;width:100%;font:inherit;color:inherit;cursor:pointer;text-align:left;transition:border-color .14s var(--ease-out),box-shadow .14s var(--ease-out)}.intake:focus-within,.intake:hover{border-color:var(--brand);box-shadow:var(--shadow-2)}.intake>svg{color:var(--brand);flex:none}.intake-prompt{color:var(--text-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.intake input,.intake-prompt{flex:1 1;font-size:.98rem;min-width:0}.intake input{border:none;height:44px;padding:0;background:none}.intake input:focus-visible{outline:none}.pill{flex:none;font-family:var(--font-mono);font-size:.71rem;font-weight:500;padding:3px 10px;border-radius:var(--radius-chip);border:1px solid var(--border);background:transparent;color:var(--accent-text)}.home-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);grid-gap:clamp(24px,3vw,40px);gap:clamp(24px,3vw,40px);align-items:start}@media (max-width:860px){.home-grid{grid-template-columns:minmax(0,1fr)}}.section-title{margin:0 0 14px;font-size:.82rem;font-weight:700;color:var(--text-faint);text-transform:uppercase;letter-spacing:.04em}.action-list{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:8px;gap:8px}.action-row{display:flex;align-items:center;gap:14px;padding:14px 16px;border:1px solid var(--border);border-radius:var(--radius-m);background:var(--surface);text-align:left;font:inherit;cursor:pointer;width:100%;transition:border-color .14s var(--ease-out),background .14s var(--ease-out)}.action-row:hover{border-color:var(--brand);background:#fcfdff;box-shadow:var(--shadow-1)}.action-row .ico{width:38px;height:38px;flex:none;border-radius:var(--radius-btn);display:grid;place-items:center;background:var(--brand-tint);color:var(--brand)}.action-row .txt{min-width:0;flex:1 1}.action-row .txt b{display:block;font-weight:600;font-size:.95rem}.action-row .txt span{display:block;color:var(--text-soft);font-size:.85rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.action-row .chev{color:var(--text-faint);flex:none;transition:transform .14s var(--ease-out)}.action-row:hover .chev{transform:translateX(2px);color:var(--brand)}.action-row--locked{opacity:.58;border-style:dashed}.action-row--locked:hover{opacity:.72}.action-row--locked .ico,.ent-lock-hint{color:var(--text-faint)}.ent-lock-hint{display:flex;align-items:center;gap:6px;font-size:.78rem;margin-top:4px}.ent-readonly-badge{margin-left:8px;vertical-align:middle}.nav-tab--locked{opacity:.58}.nav-tab--locked[aria-pressed=true]{opacity:.85}.upgrade-view{max-width:520px;margin:0 auto}.upgrade-card{border:1px solid var(--border);border-radius:var(--radius-l);padding:24px;background:var(--surface);box-shadow:var(--shadow-1)}.upgrade-plan-name{font-size:1.25rem;font-weight:700;letter-spacing:-.01em}.upgrade-price{font-family:var(--font-mono);font-size:1.25rem;font-weight:500;color:var(--accent-text);margin-top:6px}.grace-banner{display:flex;flex-direction:column;gap:4px;background:#fdf3e3;color:#8a5a00;border:1px solid #e8c98a;border-radius:var(--radius-m);padding:12px 16px;margin-bottom:16px;font-size:.9rem}.grace-banner b{font-weight:600}.renewal-view{max-width:520px;margin:40px auto}.panel{border:1px solid var(--border);border-radius:var(--radius-l);background:var(--surface);padding:20px;box-shadow:var(--shadow-1)}.panel+.panel{margin-top:20px}.empty{display:grid;justify-items:center;text-align:center;grid-gap:10px;gap:10px;padding:26px 8px;color:var(--text-soft)}.empty svg{color:var(--text-faint)}.empty b{font-size:.92rem;color:var(--text);font-weight:600}.empty p{margin:0;font-size:.85rem;max-width:30ch}.env-meta{display:grid;grid-gap:10px;gap:10px;font-size:.85rem}.env-meta .row{display:flex;justify-content:space-between;gap:12px;align-items:baseline}.env-meta .k{color:var(--text-faint)}.env-meta .v{font-family:var(--font-mono);font-size:.8rem;font-weight:500;text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.skeleton{border-radius:var(--radius-btn);background:linear-gradient(90deg,var(--surface-sunken) 25%,var(--border) 50%,var(--surface-sunken) 75%);background-size:200% 100%;animation:shimmer 1.4s linear infinite}@keyframes shimmer{to{background-position:-200% 0}}.nova-panel{background:var(--brand-tint);border:1px solid var(--brand-mist);border-radius:var(--radius-m);padding:14px;margin-top:14px}.nova-badge{display:inline-flex;align-items:center;gap:6px;font-size:.75rem;font-weight:600;color:var(--brand-strong)}.nova-badge:before{content:"";width:8px;height:8px;border-radius:999px;background:var(--brand)}.nova-badge--working{color:var(--accent-text)}.nova-badge--working:before{background:var(--accent)}.nova-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-m);padding:10px 14px}.portal-shell{min-height:100dvh;background:#f5f6f3}.portal-login{min-height:100dvh;display:grid;grid-template-columns:minmax(300px,.9fr) minmax(420px,1.1fr);align-items:center;grid-gap:clamp(40px,8vw,120px);gap:clamp(40px,8vw,120px);padding:clamp(28px,6vw,84px)}.portal-login-aside{max-width:540px}.portal-login-aside h1{margin:14px 0 18px;font-size:clamp(2.8rem,5.8vw,5.8rem);line-height:.92;letter-spacing:-.065em;font-weight:720}.portal-login-aside>p:not(.portal-eyebrow){max-width:480px;font-size:1.08rem;line-height:1.65;color:var(--text-soft)}.portal-login-proof{display:flex;flex-wrap:wrap;gap:8px;margin-top:30px}.portal-login-proof span{padding:7px 11px;border:1px solid var(--border);border-radius:999px;background:rgba(255,255,255,.6);font:500 .76rem var(--font-mono)}.portal-form{justify-self:end;width:min(440px,100%);display:grid;grid-gap:16px;gap:16px;padding:34px;box-shadow:0 28px 80px rgba(25,31,26,.08)}.portal-form header{margin:8px 0 4px}.portal-form h2,.portal-modal h2{margin:2px 0 6px;font-size:1.55rem;letter-spacing:-.03em}.portal-help{margin:2px 0 0;color:var(--text-faint);font-size:.78rem;text-align:center}.portal-eyebrow,.portal-kicker{margin:0;font:600 .68rem/1.2 var(--font-mono);letter-spacing:.09em;text-transform:uppercase;color:var(--text-faint)}.portal-workspace{min-height:100dvh;display:grid;grid-template-columns:232px minmax(0,1fr);background:#f5f6f3}.portal-sidebar{position:-webkit-sticky;position:sticky;top:0;height:100dvh;display:flex;flex-direction:column;gap:30px;padding:24px 16px 18px;color:#f4f7f4;background:#0d241a}.portal-sidebar nav{display:grid;grid-gap:4px;gap:4px}.portal-sidebar nav button{display:flex;align-items:center;gap:12px;width:100%;padding:10px 11px;border:0;border-radius:8px;color:#aebbb3;background:transparent;font:500 .86rem var(--font-sans);text-align:left;cursor:pointer}.portal-sidebar nav button>span{width:18px;color:#7f9387;font-size:1rem;text-align:center}.portal-sidebar nav button.active,.portal-sidebar nav button:hover{color:#fff;background:rgba(255,255,255,.09)}.portal-sidebar nav button b{min-width:20px;margin-left:auto;padding:2px 5px;border-radius:999px;color:#0d241a;background:#d9ea7d;font:700 .65rem var(--font-mono);text-align:center}.portal-account{margin-top:auto;display:grid;padding:12px 10px 0;border-top:1px solid rgba(255,255,255,.13)}.portal-account span{font-size:.82rem;font-weight:600}.portal-account small{overflow:hidden;margin:3px 0 8px;color:#82968a;font-size:.68rem;text-overflow:ellipsis}.portal-account button{width:max-content;padding:0;border:0;color:#b8c6bd;background:transparent;font-size:.72rem;cursor:pointer}.portal-main{min-width:0;padding:0 clamp(22px,4vw,60px) 60px}.portal-topbar{min-height:92px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--border)}.portal-topbar h1{margin:3px 0 0;font-size:1.15rem;letter-spacing:-.02em}.portal-readiness{display:flex;align-items:center;gap:8px;color:var(--text-soft);font-size:.76rem}.portal-readiness span{width:8px;height:8px;border-radius:50%;background:#cb8b32;box-shadow:0 0 0 4px rgba(203,139,50,.12)}.portal-readiness.ready span{background:#3b8c64;box-shadow:0 0 0 4px rgba(59,140,100,.12)}.portal-mobile-nav{display:none}.portal-view{display:grid;grid-gap:24px;gap:24px;padding-top:28px}.portal-hero{min-height:210px;display:flex;align-items:flex-end;justify-content:space-between;gap:30px;padding:clamp(26px,4vw,48px);border-radius:16px;color:#eef7f0;background:radial-gradient(circle at 80% 0,rgba(206,229,130,.2),transparent 33%),#123426}.portal-hero h2{max-width:620px;margin:9px 0 12px;font-size:clamp(2rem,4vw,3.65rem);line-height:.98;letter-spacing:-.055em}.portal-hero p:not(.portal-kicker){max-width:570px;margin:0;color:#b9cbc0}.portal-hero .portal-kicker{color:#a7cbb4}.portal-hero .btn{flex:none;color:#14271c;background:#d9ea7d;border-color:#d9ea7d}.portal-metrics{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:12px;gap:12px}.portal-metrics article{display:grid;grid-gap:5px;gap:5px;padding:19px;border:1px solid var(--border);border-radius:12px;background:rgba(255,255,255,.72)}.portal-metrics article>span,.portal-metrics small{color:var(--text-faint);font-size:.72rem}.portal-metrics strong{font-size:clamp(1.45rem,2vw,2.1rem);letter-spacing:-.045em}.portal-grid-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px}.portal-section{display:grid;align-content:start;grid-gap:13px;gap:13px;padding:22px}.portal-section h3{margin:0;font-size:1.05rem}.portal-section-head,.portal-title{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.portal-section-head h3{margin:3px 0 0}.portal-section-head button{border:0;color:var(--brand);background:none;font-size:.76rem;cursor:pointer}.portal-compact-row{display:grid;grid-template-columns:1fr auto auto;align-items:center;grid-gap:14px;gap:14px;padding:12px 0;border-top:1px solid var(--border)}.portal-check>div,.portal-compact-row>div,.portal-document>div{display:grid;grid-gap:3px;gap:3px}.portal-check small,.portal-compact-row small,.portal-document small,.portal-product small{color:var(--text-faint);font-size:.72rem}.portal-compact-row strong{font:600 .78rem var(--font-mono)}.portal-check{display:flex;align-items:center;gap:11px;padding:10px 0;border-top:1px solid var(--border)}.portal-check>span{width:26px;height:26px;display:grid;place-items:center;flex:none;border-radius:50%;color:#fff;background:#b97d2a;font-size:.72rem}.portal-check>span.ok{background:#3b8c64}.portal-title{min-height:94px}.portal-title h2{margin:5px 0 6px;font-size:clamp(1.7rem,3vw,2.5rem);letter-spacing:-.045em}.portal-title p:not(.portal-kicker){margin:0;color:var(--text-soft)}.portal-card-list{display:grid;grid-gap:12px;gap:12px}.portal-order{padding:22px}.portal-order header{display:grid;grid-template-columns:1fr auto auto;align-items:center;grid-gap:16px;gap:16px}.portal-order h3{margin:4px 0 0;font-size:1.1rem}.portal-order header>strong{font:650 1.05rem var(--font-mono)}.portal-order-lines{display:grid;grid-gap:8px;gap:8px;margin:18px 0;padding:14px 0;border-block:1px solid var(--border)}.portal-order-lines div{display:flex;justify-content:space-between;gap:18px;font-size:.83rem}.portal-order-lines small{color:var(--text-soft);white-space:nowrap}.portal-order footer{display:flex;justify-content:flex-end;gap:8px}.portal-table-wrap{overflow-x:auto;padding:8px 14px 14px}.portal-table-wrap td b,.portal-table-wrap td small{display:block}.portal-table-wrap td small{margin-top:3px;color:var(--text-faint);font-size:.68rem}.portal-track{display:flex;align-items:center;gap:4px;min-width:190px;color:var(--text-soft);font-size:.7rem}.portal-track-step{display:flex;align-items:center;gap:3px}.portal-track-dot{width:8px;height:8px;border-radius:50%;background:var(--border-strong)}.portal-track-dot--on{background:var(--brand)}.portal-track-line{width:14px;height:2px;background:var(--border)}.portal-track-line--on{background:var(--brand)}.portal-catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:14px;gap:14px}.portal-product{display:grid;align-content:start;grid-gap:12px;gap:12px;min-height:220px;padding:20px}.portal-product header{display:flex;align-items:center;justify-content:space-between;gap:10px}.portal-product h3{margin:5px 0 0;font-size:1.05rem}.portal-product>p{min-height:42px;margin:0;color:var(--text-soft);font-size:.8rem;line-height:1.55}.portal-product>div{display:grid;grid-gap:3px;gap:3px;margin-top:auto}.portal-product>div strong{font-size:1.2rem}.portal-product aside{display:grid;grid-gap:3px;gap:3px;padding:9px;border-left:2px solid #b97d2a;background:#fbf5e9;font-size:.72rem}.portal-empty{margin:0;padding:20px;color:var(--text-faint);text-align:center}.portal-empty-large{grid-column:1/-1;min-height:230px;display:grid;place-items:center;align-content:center;grid-gap:8px;gap:8px}.portal-empty-large p{margin:0}.portal-details{display:grid;grid-gap:0;gap:0;margin:0}.portal-details div{display:grid;grid-template-columns:140px 1fr;grid-gap:14px;gap:14px;padding:11px 0;border-top:1px solid var(--border)}.portal-details dt{color:var(--text-faint);font-size:.72rem}.portal-details dd{margin:0;font-size:.82rem}.portal-note{margin:0;padding:10px 12px;border-radius:7px;color:var(--text-soft);background:var(--surface-sunken);font-size:.74rem;line-height:1.45}.portal-document{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 0;border-top:1px solid var(--border)}.portal-subheading{margin-top:18px!important}.portal-modal-backdrop{position:fixed;inset:0;z-index:var(--z-overlay);display:grid;place-items:center;padding:20px;background:rgba(6,18,12,.62);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.portal-modal{width:min(620px,100%);max-height:calc(100dvh - 40px);overflow-y:auto;padding:26px;box-shadow:0 32px 90px rgba(0,0,0,.24)}.portal-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.portal-modal-head>button{border:0;color:var(--text-soft);background:transparent;font-size:1.6rem;cursor:pointer}.portal-modal-form{display:grid;grid-gap:14px;gap:14px;margin-top:15px}.portal-upload{position:relative;display:grid;place-items:center;min-height:82px;border:1px dashed var(--brand);border-radius:9px;color:var(--brand);background:var(--brand-tint);font-weight:600;cursor:pointer}.portal-upload input{position:absolute;inset:0;opacity:0;cursor:pointer}.portal-divider{display:flex;align-items:center;gap:10px;color:var(--text-faint);font-size:.7rem}.portal-divider:after,.portal-divider:before{content:"";height:1px;flex:1 1;background:var(--border)}.portal-form-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:12px;gap:12px}.portal-span{grid-column:1/-1}.portal-form-grid select,.portal-form-grid textarea{width:100%;padding:10px 12px;border:1px solid var(--border-strong);border-radius:var(--radius-btn);color:var(--text);background:var(--surface);font:inherit}@media (max-width:1000px){.portal-catalog-grid,.portal-metrics{grid-template-columns:repeat(2,1fr)}}@media (max-width:760px){.portal-login{grid-template-columns:1fr;padding:28px 18px}.portal-login-aside{display:none}.portal-form{justify-self:center;padding:26px 22px}.portal-workspace{display:block}.portal-sidebar{display:none}.portal-main{padding:0 16px 40px}.portal-topbar{min-height:78px}.portal-mobile-nav{display:flex;overflow-x:auto;gap:5px;padding:10px 0;border-bottom:1px solid var(--border)}.portal-mobile-nav button{padding:7px 10px;border:0;border-radius:7px;color:var(--text-soft);background:transparent;white-space:nowrap}.portal-mobile-nav button.active{color:var(--brand);background:var(--brand-tint)}.portal-hero{align-items:flex-start;flex-direction:column;min-height:250px}.portal-catalog-grid,.portal-grid-two{grid-template-columns:1fr}.portal-order header{grid-template-columns:1fr auto}.portal-order header>strong{grid-column:1/-1}.portal-title{align-items:flex-start;flex-direction:column}}@media (max-width:480px){.portal-form-grid,.portal-metrics{grid-template-columns:1fr}.portal-span{grid-column:auto}}.enterprise-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:22px}.enterprise-head .page-title{margin:5px 0 7px}.enterprise-tabs{display:flex;gap:3px;padding:3px;border:1px solid var(--border);border-radius:9px;background:var(--surface-sunken)}.enterprise-tabs button{padding:7px 12px;border:0;border-radius:6px;color:var(--text-soft);background:transparent;font:500 .78rem var(--font-sans);cursor:pointer}.enterprise-tabs button.active{color:var(--text);background:var(--surface);box-shadow:0 1px 3px rgba(0,0,0,.06)}.enterprise-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(320px,.7fr);grid-gap:16px;gap:16px}.enterprise-grid>.panel{overflow-x:auto;padding:20px}.enterprise-grid h2{margin:0 0 14px;font-size:1rem}.enterprise-inline-form{display:grid;grid-template-columns:100px minmax(160px,1fr) 70px 80px 120px auto;grid-gap:6px;gap:6px;margin-bottom:16px}.enterprise-inline-form input,.enterprise-inline-form select{min-width:0;padding:8px 9px;border:1px solid var(--border-strong);border-radius:6px;color:var(--text);background:var(--surface);font:inherit;font-size:.78rem}.enterprise-form{display:grid;grid-gap:12px;gap:12px}.enterprise-connector{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:11px 0;border-top:1px solid var(--border)}.enterprise-connector>div{display:grid;grid-gap:3px;gap:3px}.enterprise-connector small,.enterprise-grid td small{display:block;margin-top:3px;color:var(--text-faint);font-size:.7rem}.enterprise-actions{display:flex;flex-wrap:wrap;gap:8px}.enterprise-actions button{min-width:44px;min-height:44px;padding:8px 12px;white-space:nowrap;border:1px solid var(--border);border-radius:5px;color:var(--brand);background:var(--surface);cursor:pointer}.enterprise-section-title{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.enterprise-section-title h2{margin-bottom:4px}.extraction-job{border-top:1px solid var(--border)}.extraction-job summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 2px;cursor:pointer}.extraction-job summary>span:first-child{display:grid;grid-gap:3px;gap:3px}.extraction-job summary small{color:var(--text-faint)}.extraction-result{padding:0 2px 16px}.extraction-result pre{max-height:320px;overflow:auto;padding:12px;border-radius:7px;color:var(--text);background:var(--surface-sunken);font-size:.72rem;white-space:pre-wrap}.erp-card{border-top:1px solid var(--border)}.erp-card .enterprise-connector{border:0}.erp-actions{display:flex;flex-wrap:wrap;gap:6px;padding-bottom:12px}.erp-actions button,.erp-actions label{padding:6px 9px;border:1px solid var(--border);border-radius:6px;color:var(--brand);background:var(--surface);font:500 .7rem var(--font-sans);cursor:pointer}.erp-actions input{display:none}@media (max-width:1050px){.enterprise-grid{grid-template-columns:1fr}.enterprise-inline-form{grid-template-columns:repeat(3,1fr)}}@media (max-width:650px){.enterprise-head{align-items:flex-start;flex-direction:column}.enterprise-inline-form{grid-template-columns:1fr}}.analytics-depth{margin-top:16px}.analytics-budget{display:grid;grid-template-columns:40px minmax(80px,1fr) auto;align-items:center;grid-gap:9px;gap:9px;margin-top:12px;font-size:.72rem}.analytics-budget>div{height:6px;overflow:hidden;border-radius:999px;background:var(--border)}.analytics-budget i{display:block;height:100%;border-radius:inherit;background:var(--brand)}.report-builder{display:grid;grid-template-columns:repeat(2,minmax(140px,1fr));grid-gap:10px;gap:10px;margin-top:15px}.report-builder .btn{align-self:end}.report-result{max-width:100%;overflow-x:auto;margin-top:18px}.ai-evidence-row,.report-result{border-top:1px solid var(--border)}.ai-evidence-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 0}.ai-evidence-row>div:first-child{display:grid;grid-gap:3px;gap:3px}.ai-evidence-row small{color:var(--text-faint)}@media (max-width:650px){.report-builder{grid-template-columns:1fr}.ai-evidence-row{align-items:flex-start;flex-direction:column}}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.panel-head .section-title{margin:0}.req-panel{max-width:980px;margin:0 auto}.table,.tbl{width:100%;border-collapse:collapse;font-size:.92rem}.table th,.tbl th{text-align:left;font-family:var(--font-mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-faint);font-weight:500;padding:8px 10px}.table td,.table th,.tbl td,.tbl th{border-bottom:1px solid var(--border)}.table td,.tbl td{padding:10px}.table .num{text-align:right}.table tbody tr[role=link]{cursor:pointer;transition:background .12s var(--ease-out)}.table tbody tr[role=link]:hover,.tbl tbody tr:hover{background:var(--surface-sunken)}.rowlink{cursor:pointer}.rowlink:hover td{background:var(--surface-sunken)}.badge,.pill-status{display:inline-block;font-family:var(--font-mono);font-size:.72rem;font-weight:500;padding:2px 10px;border-radius:var(--radius-chip);border:1px solid var(--border);background:transparent;white-space:nowrap}.badge-neutral,.pill-neutral{color:var(--text-soft)}.badge-info,.badge-ok,.pill-info,.pill-ok{color:var(--brand);border-color:var(--brand-mist)}.badge-bad,.pill-err{color:var(--danger);border-color:#f0b8b4}.badge-warn,.pill-warn{color:var(--accent-text);border-color:#f0c9a8}.req-form{display:grid;grid-gap:16px;gap:16px}.req-form textarea{height:auto;min-height:64px;padding:10px 14px;font:inherit;border:1px solid var(--border-strong);border-radius:var(--radius-btn);background:var(--surface);color:var(--text);resize:vertical}.lines{display:grid;grid-gap:12px;gap:12px;border:0;padding:0;margin:0}.lines legend{padding:0;margin-bottom:4px}.line-row{display:flex;gap:10px;align-items:flex-end}.line-row .grow{flex:1 1}.line-row .w-qty{width:90px}.line-row .w-uom{width:110px}.line-row .w-price{width:150px}.line-del{height:44px;width:36px;display:grid;place-items:center;flex:none;border:1px solid var(--border-strong);border-radius:var(--radius-btn);background:var(--surface);color:var(--text-faint);cursor:pointer}.line-del:hover{color:var(--danger);border-color:var(--danger)}.req-form-foot{display:flex;align-items:center;justify-content:space-between;gap:14px;border-top:1px solid var(--border);padding-top:14px;flex-wrap:wrap}.req-form-foot .total small{color:var(--text-faint);font-weight:400}.req-head h2{margin:0 0 2px;font-size:1.3rem;letter-spacing:-.01em;font-weight:700}.req-head{margin-bottom:16px}.req-head .mono{margin:0 0 6px}.req-head .mono,.soft{color:var(--text-soft)}.chain{list-style:none;margin:0 0 16px;padding:0;display:grid;grid-gap:8px;gap:8px}.chain li{display:flex;gap:10px;align-items:baseline;font-size:.92rem}.chain-ico{color:var(--text-faint)}.chain-approved .chain-ico{color:var(--brand)}.chain-rejected .chain-ico{color:var(--danger)}.req-actions{display:flex;gap:10px;align-items:flex-end;margin-top:16px;flex-wrap:wrap}.req-actions.decide .grow{flex:1 1;min-width:220px}.btn-danger{background:var(--danger)}.btn-danger:hover{background:#8f1c13}.bell,.bell-wrap{position:relative}.bell{height:36px;width:36px;display:grid;place-items:center;border:1px solid var(--border-strong);border-radius:var(--radius-btn);background:var(--surface);color:var(--text-soft);cursor:pointer}.bell:hover{color:var(--text);background:var(--surface-sunken)}.bell-dot{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:var(--brand);color:#fff;font-family:var(--font-mono);font-size:.65rem;font-weight:700;display:grid;place-items:center;animation:badge-pop var(--badge-pop-dur) var(--badge-pop-ease)}.bell-pop{position:absolute;right:0;top:44px;width:min(360px,86vw);z-index:var(--z-overlay);box-shadow:var(--shadow-float)}.notif-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:4px;gap:4px}.notif-list button{width:100%;text-align:left;padding:8px 10px;border:0;border-radius:var(--radius-btn);background:transparent;color:var(--text-soft);font:inherit;font-size:.88rem;cursor:pointer}.notif-list button:hover{background:var(--surface-sunken)}.notif-list button.unread{color:var(--text);font-weight:600}@media (max-width:720px){.line-row{flex-wrap:wrap}.line-row .grow{flex-basis:100%}}.portal-onboarding-shell{max-width:960px;margin:0 auto}.portal-onboarding-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;padding:24px 0}.portal-onboarding .portal-title h2{font-size:1.75rem;letter-spacing:-.02em}.portal-onboarding p{max-width:70ch}.portal-requirements{list-style:none;margin:0;padding:0}.portal-requirement{border-top:1px solid var(--border,#d8dce2);padding:20px 0}.portal-requirement h4{margin:0 0 8px;font-size:1rem}.portal-requirement p{margin:8px 0}.requirements-editor-fields{min-width:0;border:0;padding:0;display:grid;grid-gap:16px;gap:16px}.requirements-editor-row{border:1px solid var(--line,#d7dbe0);border-radius:8px;padding:20px;display:grid;grid-gap:16px;gap:16px;min-width:0}.requirements-editor-row .field{margin-bottom:12px}.portal-onboarding input[type=file]{min-width:0;max-width:100%;box-sizing:border-box}.portal-extraction{margin:20px 0;padding:16px 0;border-top:1px solid var(--line,#d7dbe0)}.portal-extraction h5{font-size:1rem;margin:0 0 8px}.portal-extraction-actions{display:flex;flex-wrap:wrap;gap:8px}.portal-extracted-fields{margin:16px 0}.portal-extracted-fields>div{padding:12px 0;border-bottom:1px solid var(--line,#d7dbe0)}.portal-extracted-fields dt{font-weight:600}.portal-extracted-fields dd{margin:4px 0 0;overflow-wrap:anywhere}.portal-extracted-fields small{display:block;margin-top:4px}.portal-notifications .portal-actions,.portal-onboarding .portal-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.portal-unread-description{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap;border:0}@media (max-width:600px){.topbar{height:auto;min-height:60px;flex-wrap:wrap;gap:8px;padding:8px 16px}.topbar .spacer{display:none}.topbar .nav-burger{flex-shrink:0}.topbar-mobile-brand{flex:1 1}.topbar .company-switch{order:1;flex-basis:100%;min-width:0}.topbar .company-switch select{width:100%;max-width:100%}.supplier-offers-table thead{position:absolute;width:1px;height:1px;overflow:hidden;-webkit-clip-path:inset(50%);clip-path:inset(50%)}.supplier-offers-table tbody{display:block}.supplier-offers-table tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);border-bottom:1px solid var(--border)}.supplier-offers-table td{display:block;min-width:0;border-bottom:0;overflow-wrap:anywhere}.supplier-offers-table td:first-child,.supplier-offers-table td:last-child{grid-column:1/-1}}.external-connections{margin-top:24px;padding:20px;min-width:0}.external-connections h2{margin:0 0 12px;font-size:1.1rem}.external-connections p{max-width:72ch;line-height:1.6;overflow-wrap:anywhere}.external-connections .enterprise-form{max-width:560px;margin:24px 0 16px;gap:10px}.external-connections label{font-size:.85rem;font-weight:600;display:grid;grid-gap:8px;gap:8px}.external-connections input,.external-connections select{width:100%;min-width:0;padding:10px 12px}.external-connections button,.external-connections input,.external-connections select{min-height:44px;border:1px solid var(--border-strong);border-radius:var(--radius-btn);background:var(--surface);color:var(--text);font:inherit}.external-connections button{padding:10px 14px;font-size:.85rem;font-weight:600;cursor:pointer}.external-connections form>button{margin-top:8px;background:var(--brand);border-color:var(--brand);color:var(--brand-on)}.external-connections button:hover:not(:disabled){border-color:var(--brand)}.external-connections button:disabled{opacity:.55;cursor:default}.external-connections :is(button,input,select):focus-visible{outline:2px solid var(--brand);outline-offset:3px}.external-connections ul{list-style:none;padding:0;display:grid;grid-gap:16px;gap:16px;margin:20px 0}.external-connections li{min-width:0;padding:16px;border:1px solid var(--border);border-radius:var(--radius-btn)}.external-connections h3{margin:0 0 10px;font-size:1rem;overflow-wrap:anywhere}.external-connections li p{font-size:.85rem;color:var(--text-soft)}.external-connections nav{display:flex;flex-wrap:wrap;gap:8px}.external-connections li button{margin:4px 8px 4px 0}.external-connections [role=alert]{padding:12px;background:var(--danger-tint);color:var(--danger);border-radius:var(--radius-btn)}.external-connections [role=status]{padding:12px;background:var(--surface-sunken);border-radius:var(--radius-btn)}.bell-pop{max-height:min(640px,75dvh);overflow-y:auto}.bell-pop nav{display:flex;flex-wrap:wrap;gap:8px}.notif-list button{min-height:44px;overflow-wrap:anywhere}@media (max-width:720px){.bell-pop{position:fixed;inset:76px 12px auto;width:auto;max-height:calc(100dvh - 96px)}}.setup-steps{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px;padding:0;margin:28px 0 24px}.setup-steps li{display:flex;align-items:center;gap:8px;border-bottom:2px solid var(--border-strong);padding-bottom:12px;color:var(--text-soft);font-size:.875rem}.setup-steps li>span{display:grid;place-items:center;flex:none;width:28px;height:28px;border:1px solid var(--text-faint);border-radius:50%}.setup-steps li[aria-current=step]{color:var(--brand-strong);border-bottom-color:var(--brand)}.setup-steps li[aria-current=step]>span{background:var(--brand);color:var(--brand-on);border-color:var(--brand)}@media (max-width:480px){.setup-steps li{align-items:flex-start;flex-direction:column}}