:root{--ink: #16181d;--muted: #5a6172;--surface: #f4f6f9;--card: #ffffff;--primary: #1b2a5b;--primary-soft: #2c3e78;--accent: #ff5436;--accent-ink: #c8330f;--line: #d9dee7;--line-soft: #e7ebf1;--success: #17845a;--success-bg: #e4f5ee;--warn: #b5790a;--warn-bg: #fbf0dc;--danger: #c8330f;--danger-bg: #fde9e4;--font-display: "Space Grotesk", system-ui, sans-serif;--font-body: "IBM Plex Sans", system-ui, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, monospace;--maxw: 1180px;--r: 14px;--r-sm: 8px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font-body);color:var(--ink);background:var(--surface);-webkit-font-smoothing:antialiased;line-height:1.55}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,select,textarea{font-family:inherit}.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}.eyebrow{font-family:var(--font-mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#51cccc;font-weight:600}h1,h2,h3,h4{font-family:var(--font-display);font-weight:700;line-height:1.05;margin:0}h2{font-size:clamp(26px,4vw,40px);letter-spacing:-.02em}h3{font-size:20px;letter-spacing:-.01em}p{margin:0 0 1em}.lead{font-size:17px;color:#548995;max-width:62ch}.btn{font-family:var(--font-body);font-weight:600;font-size:14.5px;border:0;border-radius:999px;padding:10px 20px;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,background .12s ease;display:inline-flex;align-items:center;gap:8px}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 8px 22px #ff543652}.btn-ghost{background:transparent;color:var(--primary);border:1px solid var(--line)}.btn-ghost:hover{background:#fff;border-color:var(--primary)}.btn-dark{background:var(--primary);color:#fff}.btn-dark:hover{transform:translateY(-1px);background:var(--primary-soft)}.btn-sm{padding:6px 14px;font-size:13px;border-radius:8px}.btn-danger{background:var(--danger-bg);color:var(--danger)}.btn-danger:hover{background:var(--danger);color:#fff}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none!important}.card-surface{background:var(--card);border:1px solid var(--line);border-radius:var(--r)}.stamp{font-family:var(--font-mono);font-weight:600;font-size:10.5px;letter-spacing:.09em;text-transform:uppercase;padding:3px 9px;border-radius:6px;white-space:nowrap;display:inline-block}.st-shipped{background:#ff543624;color:var(--accent-ink)}.st-intrial{background:#1b2a5b1a;color:var(--primary)}.st-prototype{background:#5a617224;color:var(--muted)}.st-archived{background:#eee;color:#888}.st-pending{background:var(--warn-bg);color:var(--warn)}.st-underreview{background:#e6ecfb;color:var(--primary)}.st-accepted,.st-completed{background:var(--success-bg);color:var(--success)}.st-rejected{background:var(--danger-bg);color:var(--danger)}.st-inprogress{background:#ff543624;color:var(--accent-ink)}.field{margin-bottom:18px}.field label{display:block;font-family:var(--font-mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}.field input,.field select,.field textarea{width:100%;padding:11px 14px;border-radius:var(--r-sm);border:1px solid var(--line);background:#fff;font-size:14.5px;color:var(--ink);transition:border-color .12s ease,box-shadow .12s ease}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #1b2a5b1f}.field textarea{resize:vertical;min-height:90px}.alert{padding:12px 16px;border-radius:var(--r-sm);font-size:14px;margin-bottom:18px}.alert-error{background:var(--danger-bg);color:var(--danger);border:1px solid rgba(200,51,15,.25)}.alert-success{background:var(--success-bg);color:var(--success);border:1px solid rgba(23,132,90,.25)}.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r);background:var(--card)}table.data-table{width:100%;border-collapse:collapse;font-size:14px;min-width:640px}.data-table th{text-align:left;font-family:var(--font-mono);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding:14px 16px;border-bottom:1px solid var(--line);background:var(--surface);white-space:nowrap}.data-table td{padding:13px 16px;border-bottom:1px solid var(--line-soft);vertical-align:middle}.data-table tr:last-child td{border-bottom:none}.data-table tr:hover td{background:#fbfcfe}.chip{font-family:var(--font-mono);font-size:12.5px;border:1px solid var(--line);background:var(--card);color:var(--muted);padding:6px 13px;border-radius:999px;cursor:pointer}.chip:hover{border-color:var(--primary);color:var(--primary)}.chip.on{background:var(--primary);color:#fff;border-color:var(--primary)}.spinner{width:22px;height:22px;border-radius:50%;border:3px solid var(--line);border-top-color:var(--accent);animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.center-loader{display:flex;align-items:center;justify-content:center;padding:60px 0}@media (prefers-reduced-motion: reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto}}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}body{margin:0;background-color:#192d52;color:#fff}---------- nav ---------- .site-nav{position:fixed;top:0;z-index:50;width:100%;height:90px;background:transparent!important;transition:background .25s ease}.nav-inner{display:flex;align-items:center;height:100%;gap:32px}.brand{display:flex;align-items:center;flex-shrink:0}.brand-logo{height:46px;width:auto;display:block}.nav-links{display:flex;align-items:center;gap:6px;flex:1}.nav-links a{display:flex;align-items:center;font-size:14.5px;color:#fff;padding:8px 14px;border-radius:8px;white-space:nowrap;line-height:1}.nav-links a.active{color:#9eeeff;font-weight:600}.nav-right{display:flex;align-items:center;gap:12px;flex-shrink:0}.btn-cta{background:#b9f0ff;color:#0e2a4a;font-weight:600;font-size:14.5px;padding:12px 24px;border-radius:999px;border:none;cursor:pointer;white-space:nowrap;transition:opacity .2s ease}.btn-cta:hover{opacity:.9}.site-nav{position:fixed;top:0;z-index:50;width:100%;height:75px;background:transparent!important}.site-nav.scrolled{background:#2c4596!important;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.nav-inner{display:flex;align-items:center;gap:24px;height:66px}.brand{display:flex;align-items:center;gap:10px;font-family:var(--font-display);font-weight:700;font-size:18px;letter-spacing:-.01em}.brand .mark{width:32px;height:32px;border-radius:8px;background:var(--primary);display:grid;place-items:center;color:#fff;font-family:var(--font-mono);font-weight:600;font-size:13px}.brand .sub{color:var(--accent)}.nav-links{display:flex;gap:4px;color:#fff;margin-left:28px}.nav-links a{font-size:14.5px;color:#fff;padding:8px 12px;border-radius:8px}.nav-links a:hover{color:#9eeeff}.nav-links a.active{color:var(--primary);font-weight:600}.nav-right{margin-left:auto;display:flex;align-items:center;gap:10px}.nav-user{font-family:var(--font-mono);font-size:12.5px;color:var(--muted);display:flex;align-items:center;gap:8px}.avatar-pill{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;color:#fff;font-weight:600;font-size:12.5px;font-family:var(--font-display)}@media (max-width: 860px){.nav-links{display:none}}.hero{position:relative;overflow:hidden;height:120vh;background-image:url(/hero.png);background-size:cover;background-repeat:no-repeat;background-position:center;margin-top:1px}.hero .wrap{position:relative;z-index:2;display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:center;padding-top:64px;padding-bottom:70px}.hero h1{font-size:clamp(38px,6vw,66px);letter-spacing:-.03em;margin:18px 0 22px}.hero h1 .ship{color:var(--accent)}.hero-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.hero-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:40px}.hero-stats .stat b{display:block;font-family:var(--font-display);font-size:30px;color:var(--primary)}.hero-stats .stat span{font-family:var(--font-mono);font-size:12px;color:var(--muted);letter-spacing:.03em}.ledger{background:var(--primary);color:#fff;border-radius:var(--r);border:1px solid rgba(255,255,255,.12);overflow:hidden;box-shadow:0 24px 50px -20px #1b2a5b80}.ledger-head{display:flex;align-items:center;justify-content:space-between;padding:13px 16px;border-bottom:1px solid rgba(255,255,255,.12);font-family:var(--font-mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:#aeb8da}.ledger-head .dot{width:8px;height:8px;border-radius:50%;background:var(--accent);display:inline-block;margin-right:8px;animation:pulse 1.6s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}.ticker{height:268px;overflow:hidden;position:relative;-webkit-mask-image:linear-gradient(transparent,#000 12%,#000 88%,transparent)}.ticker-track{animation:scrollup 22s linear infinite}.ledger:hover .ticker-track{animation-play-state:paused}@keyframes scrollup{0%{transform:translateY(0)}to{transform:translateY(-50%)}}.ledger-row{display:flex;align-items:center;gap:12px;padding:13px 16px;border-bottom:1px solid rgba(255,255,255,.08);font-family:var(--font-mono);font-size:12.5px}.ledger-row .id{color:#8e9bc7}.ledger-row .nm{color:#fff;flex:1}section{padding:74px 0}.section-tight{padding:50px 0}.statement{background:var(--card);background-color:#192d52}.sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:30px;flex-wrap:wrap}.bluegrid{background-image:url(/bluegrid.png);width:100%;position:relative;overflow:hidden;background-size:cover;background-repeat:no-repeat;background-position:center;margin-top:1px}.cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.pcard{position:relative;min-height:420px;border-radius:32px;overflow:hidden;padding:32px;cursor:pointer;color:#dffcff;background:linear-gradient(135deg,#37237df2,#2a4296e6 45%,#e45252bf);transition:all .35s ease}.pcard:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(45deg,transparent 40%,rgba(255,255,255,.08) 50%,transparent 60%)}.pcard:hover{transform:translateY(-8px)}.pcard .thumb{height:130px;position:relative;display:grid;place-items:center;color:#fff;font-family:var(--font-display);font-weight:700;font-size:26px;background:linear-gradient(135deg,var(--primary),var(--primary-soft))}.pcard .thumb{background:transparent;height:auto;display:block;font-size:12px;color:#9eeeff}.pcard .pid{display:inline-block;margin-bottom:20px;position:static!important}.pcard .stamp{position:absolute!important;top:24px;right:24px}.pcard .body{padding:0;position:relative;z-index:2}.pcard .nm{font-size:42px;line-height:1.1;font-weight:700;color:#aef7ff;margin-bottom:24px}.pcard .tg{color:#ffffffe6;font-size:20px;line-height:1.6;margin-bottom:32px}.tags{margin-top:auto;display:flex;gap:10px;flex-wrap:wrap}.tag{background:#ffffff26;border:none;color:#fff;padding:8px 14px;border-radius:999px}.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px;align-items:center}.filters .lbl{font-family:var(--font-mono);font-size:12px;color:var(--muted);margin-right:4px;letter-spacing:.08em}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:40px}.step{position:relative;background:linear-gradient(180deg,#1f4eb4f2,#153782f2);border:1px solid rgba(80,140,255,.3);border-radius:28px;padding:32px 28px;min-height:280px;color:#fff;overflow:hidden;box-shadow:0 10px 30px #00000040,inset 0 1px #ffffff14;transition:all .3s ease}.step:hover{transform:translateY(-8px);box-shadow:0 20px 40px #00000059,0 0 20px #3b82f64d}.step .no{display:inline-block;padding:8px 14px;border-radius:999px;background:#ffffff1a;border:1px solid rgba(255,255,255,.15);color:#9ec5ff;font-size:12px;font-weight:600;letter-spacing:1px}.step h3{margin-top:24px;margin-bottom:14px;font-size:26px;font-weight:700;color:#fff}.step p{color:#fffc;line-height:1.8;font-size:15px}.step:before{content:"";position:absolute;top:-80px;right:-80px;width:180px;height:180px;background:radial-gradient(circle,rgba(255,255,255,.15),transparent 70%);pointer-events:none}.cert-band{background:var(--primary);color:#fff}.cert-band .wrap{display:grid;grid-template-columns:.95fr 1.05fr;gap:48px;align-items:center}.cert-band h2{color:#fff}.cert-band .lead{color:#c2cbe6}.cert-visual{background:var(--card);color:var(--ink);border-radius:var(--r);padding:30px;border:1px solid rgba(255,255,255,.2);box-shadow:0 30px 60px -24px #00000080;position:relative;overflow:hidden}.cert-visual:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(var(--line-soft) 1px,transparent 1px),linear-gradient(90deg,var(--line-soft) 1px,transparent 1px);background-size:26px 26px;opacity:.5}.cert-visual>*{position:relative}.cert-visual .ct-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.cert-visual .seal{width:46px;height:46px;border-radius:50%;background:var(--accent);display:grid;place-items:center;color:#fff;font-family:var(--font-mono);font-size:10px;font-weight:600;line-height:1.1;text-align:center;flex-shrink:0}.cert-visual .ct-label{font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-ink)}.cert-visual .ct-name{font-family:var(--font-display);font-weight:700;font-size:26px;margin:6px 0 4px}.cert-visual .ct-line{height:1px;background:var(--line);margin:16px 0}.cert-visual .ct-meta{display:flex;justify-content:space-between;font-family:var(--font-mono);font-size:12px;color:var(--muted)}.cert-visual .ct-proj{font-family:var(--font-mono);font-size:13px;color:var(--primary);margin-top:12px}.verify-box{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:28px}.verify-tabs{display:flex;gap:6px;margin-bottom:20px}.verify-tabs button{flex:1;padding:10px;border-radius:8px;border:1px solid var(--line);background:var(--surface);cursor:pointer;font-family:var(--font-mono);font-size:12.5px;color:var(--muted)}.verify-tabs button.on{background:var(--primary);color:#fff;border-color:var(--primary)}.closer{background:var(--card);background-color:#192d52;border-top:1px solid var(--line)}.closer .wrap{text-align:center;display:flex;flex-direction:column;align-items:center;gap:22px}.closer h2{max-width:20ch}.doors{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;width:100%;margin-top:6px;text-align:left}.door{padding:24px;background:var(--surface)}.door p{font-size:14px;color:var(--muted)}.im1{background-image:url(/colorcard1.png);background-size:cover;background-repeat:no-repeat;background-position:center}.im2{background-image:url(/colorcard4.png);background-size:cover;background-repeat:no-repeat;background-position:center}.im3{background-image:url(/colorcard3.png);background-size:cover;background-repeat:no-repeat;background-position:center}.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.news-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:22px}.news-card .cat{font-family:var(--font-mono);font-size:11px;color:var(--accent-ink);text-transform:uppercase;letter-spacing:.08em}.news-card h3{margin:10px 0 8px;font-size:18px}.news-card p{color:var(--muted);font-size:14px}.news-card .meta{font-family:var(--font-mono);font-size:11.5px;color:var(--muted);margin-top:10px}.site-footer{background:#040434;color:#c2cbe6;padding:70px 0 30px}.footer-top{display:grid;grid-template-columns:1.3fr 1.4fr 1fr 1fr;gap:40px;align-items:start}.footer-brand{display:flex;flex-direction:column;gap:20px}.footer-logo{height:46px;width:auto}.footer-brandtext{display:flex;flex-direction:column;gap:4px}.footer-title{color:#fff;font-weight:700;font-size:15px;line-height:1.4;letter-spacing:.02em}.footer-tagline{color:#8e9bc7;font-size:13px}.footer-social{display:flex;gap:10px}.social-pill{width:38px;height:38px;border-radius:8px;background:#dceeff;color:#1b2a5b;display:grid;place-items:center;font-size:15px;transition:opacity .2s ease}.social-pill:hover{opacity:.85}.footer-col h4{color:#9eeeff;font-size:16px;font-weight:600;margin:0 0 18px}.footer-col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}.footer-col a{color:#dfe6f7;font-size:14.5px}.footer-col a:hover{color:#9eeeff}.footer-col:last-child a:first-child{color:#9eeeff}.footer-bottom{margin-top:50px}.footer-line{height:1px;background:#9eeeff40;margin-bottom:24px}.footer-bottom p{text-align:center;font-size:13.5px;color:#8e9bc7;margin:0}@media (max-width: 900px){.footer-top{grid-template-columns:1fr 1fr;row-gap:40px}}@media (max-width: 620px){.footer-top{grid-template-columns:1fr}}.back-link{font-family:var(--font-mono);font-size:13px;color:var(--muted);background:none;border:0;cursor:pointer;padding:0;margin-bottom:20px}.back-link:hover{color:var(--primary)}.detail-grid{display:grid;grid-template-columns:1.4fr .6fr;gap:40px;margin-top:30px;align-items:start}.detail-block{margin-bottom:24px}.detail-block h3{font-size:15px;margin-bottom:8px}.detail-block p,.detail-block li{color:var(--muted);margin:0}.specbox{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:22px;position:sticky;top:84px}.specbox .row{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line-soft);font-size:14px}.specbox .row:last-child{border:0}.specbox .row .k{font-family:var(--font-mono);font-size:11.5px;color:var(--muted);letter-spacing:.04em}.page-head{padding:50px 0 8px}@media (max-width: 900px){.hero .wrap{grid-template-columns:1fr;gap:34px}.statement .wrap,.cert-band .wrap{grid-template-columns:1fr;gap:30px}.cards-grid,.news-grid,.steps{grid-template-columns:1fr 1fr}.detail-grid{grid-template-columns:1fr}.specbox{position:static}.doors{grid-template-columns:1fr}}@media (max-width: 620px){.cards-grid,.news-grid{grid-template-columns:1fr}.steps,.hero-stats{grid-template-columns:1fr 1fr}section{padding:50px 0}}.dash-shell{display:grid;grid-template-columns:250px 1fr;min-height:100vh;background:var(--surface)}.dash-sidebar{background:var(--primary);color:#dde3f5;padding:24px 18px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column}.dash-sidebar .brand{color:#fff;margin-bottom:34px;padding-left:6px}.dash-nav{display:flex;flex-direction:column;gap:4px;flex:1}.dash-nav a,.dash-nav button{display:flex;align-items:center;gap:10px;padding:11px 14px;border-radius:10px;font-size:14.5px;color:#c2cbe6;background:none;border:none;cursor:pointer;text-align:left;width:100%;font-family:var(--font-body)}.dash-nav a:hover,.dash-nav button:hover{background:#ffffff14;color:#fff}.dash-nav a.active{background:var(--accent);color:#fff;font-weight:600}.dash-foot{font-family:var(--font-mono);font-size:11.5px;color:#8e9bc7;padding:10px 14px;border-top:1px solid rgba(255,255,255,.12)}.dash-main{padding:30px 34px 60px;max-width:1240px;width:100%}.dash-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px;flex-wrap:wrap;gap:14px}.dash-header h1{font-size:26px}.dash-header .sub{color:var(--muted);font-size:14px;margin-top:4px}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:26px}.stat-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:20px;position:relative;overflow:hidden}.stat-card .label{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}.stat-card .value{font-family:var(--font-display);font-size:34px;color:var(--primary);margin-top:8px}.stat-card .bar{position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--accent)}.chart-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:18px;margin-bottom:22px}.chart-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:22px}.chart-card h3{font-size:15px;margin-bottom:4px}.chart-card .sub{font-family:var(--font-mono);font-size:11.5px;color:var(--muted);margin-bottom:16px;display:block}.panel{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:24px;margin-bottom:22px}.panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;flex-wrap:wrap;gap:12px}.panel-head h2{font-size:19px}.mobile-topbar{display:none}@media (max-width: 980px){.dash-shell{grid-template-columns:1fr}.dash-sidebar{display:none}.dash-main{padding:20px 18px 50px}.stat-grid{grid-template-columns:1fr 1fr}.chart-grid{grid-template-columns:1fr}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#16181d8c;display:flex;align-items:flex-start;justify-content:center;padding:40px 16px;overflow-y:auto;z-index:100}.modal-box{background:#fff;border-radius:var(--r);padding:28px;width:100%;max-width:560px;box-shadow:0 30px 60px -20px #0006}.modal-box h2{font-size:20px;margin-bottom:20px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:8px}.pill-select{display:flex;gap:6px;flex-wrap:wrap}.empty-state{text-align:center;padding:50px 20px;color:var(--muted);font-family:var(--font-mono);font-size:13.5px}.progress-track{display:flex;align-items:center;gap:0;margin:30px 0 10px}.progress-step{flex:1;text-align:center;position:relative}.progress-step .dot{width:28px;height:28px;border-radius:50%;background:var(--line-soft);color:var(--muted);display:flex;align-items:center;justify-content:center;margin:0 auto 8px;font-family:var(--font-mono);font-size:12px;font-weight:600;border:2px solid var(--line-soft)}.progress-step.done .dot{background:var(--success);border-color:var(--success);color:#fff}.progress-step.current .dot{background:var(--accent);border-color:var(--accent);color:#fff}.progress-step .lbl{font-family:var(--font-mono);font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.progress-step:before{content:"";position:absolute;top:14px;left:-50%;width:100%;height:2px;background:var(--line-soft);z-index:-1}.progress-step:first-child:before{display:none}.progress-step.done:before{background:var(--success)}.auth-shell{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.auth-visual{background:var(--primary);color:#fff;padding:50px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.auth-visual:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:40px 40px}.auth-visual>*{position:relative}.auth-visual .quote{font-family:var(--font-display);font-size:28px;font-weight:700;max-width:20ch;letter-spacing:-.01em}.auth-visual .quote-sub{color:#c2cbe6;margin-top:14px;max-width:34ch}.auth-form-side{display:flex;align-items:center;justify-content:center;padding:40px 24px}.auth-card{width:100%;max-width:400px}.auth-card .brand{margin-bottom:30px;display:flex;align-items:center;gap:10px;font-family:var(--font-display);font-weight:700;font-size:18px}.auth-card .brand .mark{width:32px;height:32px;border-radius:8px;background:var(--primary);display:grid;place-items:center;color:#fff;font-family:var(--font-mono);font-weight:600;font-size:13px}.auth-card h2{font-size:26px;margin-bottom:6px}.auth-card .sub{color:var(--muted);margin-bottom:26px;font-size:14.5px}.auth-switch{text-align:center;margin-top:20px;font-size:14px;color:var(--muted)}.auth-switch a,.auth-switch button{color:var(--accent-ink);font-weight:600;cursor:pointer;background:none;border:none;font-size:14px;font-family:inherit}.role-picker{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:20px}.role-picker button{padding:14px 10px;border-radius:var(--r-sm);border:1.5px solid var(--line);background:#fff;cursor:pointer;font-size:13.5px;font-weight:600;color:var(--muted);text-align:center}.role-picker button.on{border-color:var(--primary);background:#1b2a5b0f;color:var(--primary)}.demo-hint{margin-top:22px;padding:12px 14px;background:var(--surface);border-radius:var(--r-sm);font-family:var(--font-mono);font-size:12px;color:var(--muted);line-height:1.7}@media (max-width: 860px){.auth-shell{grid-template-columns:1fr}.auth-visual{display:none}}
