@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&family=Noto+Sans+JP:wght@400;500;600;700&display=swap');
:root{--bg:#071321;--panel:#0b1b2a;--panel2:#0f2334;--panel3:#142c3d;--line:#244052;--line2:#1b3344;--ink:#f0f6fa;--muted:#90a8b8;--soft:#b8ccd7;--mint:#55e9ca;--mint2:#1fbdac;--sky:#7dbbd3;--amber:#ffcb7e;--red:#ff8e8f;--white:#fff;--shadow:0 18px 65px rgba(0,0,0,.23)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.52 'DM Sans','Noto Sans JP',system-ui,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}a{color:var(--mint)}a:hover{text-decoration-color:var(--mint)}input,select,textarea{color:var(--ink);background:#0a1c2b;border:1px solid #29465a;border-radius:11px;padding:13px 15px;outline:0;width:100%;transition:border .2s,box-shadow .2s}input:focus,select:focus,textarea:focus{border-color:var(--mint);box-shadow:0 0 0 3px rgba(85,233,202,.09)}select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='13' height='8' viewBox='0 0 13 8'%3E%3Cpath d='m1 1 5.5 5L12 1' fill='none' stroke='%23a2bbc6' stroke-width='2'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 15px center;padding-right:34px}option{background:#102a39}textarea{resize:vertical;min-height:120px}
.app-shell{display:flex;min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;width:251px;flex:none;padding:28px 19px 18px;background:#081621;border-right:1px solid var(--line2);display:flex;flex-direction:column;z-index:20}.brand{display:flex;align-items:center;gap:12px;padding:0 7px 28px}.brand-emblem{width:43px;height:43px;border:1px solid rgba(85,233,202,.34);background:linear-gradient(145deg,#133a46,#09232e);border-radius:12px;color:var(--mint);display:grid;place-items:center;box-shadow:0 0 33px rgba(61,202,176,.08)}.brand-emblem svg{width:33px}.brand strong{display:block;font:700 22px 'Space Grotesk',sans-serif;letter-spacing:-1px;line-height:1.2}.brand strong span{color:var(--mint)}.brand small{color:#7d9cad;font-size:8px;letter-spacing:2px;font-weight:700}.sidebar-caption{font-size:10px;letter-spacing:1.45px;color:#64869a;font-weight:700;padding:0 13px 12px}.nav-list{display:grid;gap:5px}.nav-item{appearance:none;border:1px solid transparent;background:transparent;display:flex;align-items:center;gap:11px;color:#9eb4c1;text-align:left;border-radius:11px;padding:13px 13px;width:100%;font-size:12.5px;font-weight:600;transition:.2s}.nav-item:hover{background:#122938;color:#fff}.nav-item.active{background:linear-gradient(90deg,rgba(82,232,203,.15),rgba(82,232,203,.04));border-color:rgba(85,233,202,.15);color:#ebfff9}.nav-glyph{color:var(--mint);width:23px;font-size:19px;text-align:center;line-height:1}.sidebar-spacer{flex:1}.side-card{margin:0 5px 22px;border:1px solid #1e4650;border-radius:13px;padding:14px;background:linear-gradient(135deg,#0b2932,#102336)}.side-card>span:nth-child(2){font-size:9px;letter-spacing:1.4px;color:var(--mint);margin-left:6px;font-weight:700}.side-card strong,.side-card small{display:block}.side-card strong{font:600 19px 'Space Grotesk';margin-top:7px}.side-card small{font-size:10px;color:#7f9ba9;margin-top:4px}.live-dot{display:inline-block;height:7px;width:7px;background:var(--mint);border-radius:50%;box-shadow:0 0 13px rgba(85,233,202,.5)}.sidebar-footer{border-top:1px solid #1b3545;padding:15px 7px;color:#849cab;font-size:10px;letter-spacing:1px}.sidebar-footer span{float:right}.sidebar-footer small{font-size:10px;letter-spacing:0;color:#5f7e90}
.main-panel{min-width:0;flex:1;display:flex;flex-direction:column;background:radial-gradient(ellipse at 50% -200px,rgba(22,70,88,.24),transparent 600px),var(--bg)}.topbar{height:74px;border-bottom:1px solid #1b3344;padding:0 clamp(24px,4.1vw,72px);display:flex;align-items:center;justify-content:space-between;gap:20px;background:rgba(7,20,32,.85);position:sticky;top:0;z-index:10;backdrop-filter:blur(15px)}.breadcrumb{display:flex;gap:12px;align-items:center;font-size:11px;color:#7793a3}.breadcrumb strong{color:#e4f4f7}.separator{color:#476378}.top-actions{display:flex;gap:12px;align-items:center}.demo-chip,.lang-toggle,.top-cta{border:1px solid #2a4657;border-radius:8px;padding:9px 11px;background:#0c2433;color:#b9d0da;font-size:10px;font-weight:700;letter-spacing:.8px;white-space:nowrap}.demo-chip{border-color:#35535b;display:flex;gap:8px;align-items:center}.lang-toggle:hover,.top-cta:hover{border-color:var(--mint);color:#fff}.top-cta{background:#183b40;border-color:#255d61;color:var(--mint)}.top-cta span{margin-left:8px}#view{width:100%;max-width:1540px;margin:0 auto;padding:clamp(24px,3.5vw,57px) clamp(24px,4.1vw,72px) 70px;flex:1}.global-footer{padding:23px clamp(24px,4.1vw,72px);border-top:1px solid #1b3344;color:#5f7e90;font-size:9.5px;letter-spacing:1.3px;display:flex;justify-content:space-between;gap:15px}
.eyebrow{font-size:10px;letter-spacing:2.5px;font-weight:700;color:var(--mint);text-transform:uppercase}.eyebrow .dash{display:inline-block;width:24px;height:1px;background:var(--mint);vertical-align:middle;margin-right:12px}.hero{border:1px solid #264656;border-radius:22px;min-height:460px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 77% 54%,rgba(52,164,169,.25),transparent 35%),linear-gradient(145deg,#13334a 0%,#092333 50%,#071722 100%);padding:48px clamp(30px,4vw,57px);box-shadow:var(--shadow)}.hero:before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(120,222,220,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(120,222,220,.045) 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(90deg,transparent 20%,#000)}.hero-copy{position:relative;z-index:2;max-width:56%}.hero h1{font:600 clamp(35px,4.2vw,63px)/1.04 'Space Grotesk','Noto Sans JP',sans-serif;letter-spacing:-2.5px;margin:22px 0 17px}.hero h1 em{font-style:normal;color:var(--mint)}.hero p{max-width:460px;color:#abc6d0;font-size:14px;line-height:1.8}.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:29px}.btn{border:1px solid #34576a;border-radius:10px;background:#183344;color:#ecf7fb;padding:11px 16px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:700;font-size:12px;text-decoration:none;transition:.18s}.btn:hover{transform:translateY(-1px);border-color:#79d8ce}.btn.primary{background:var(--mint);border-color:var(--mint);color:#07252b}.btn.primary:hover{background:#8bf9df}.btn.outline{background:rgba(8,24,35,.65)}.btn.danger{color:#ffb3b5;border-color:#794850}.btn.small{padding:8px 12px;font-size:11px}.car-art{position:absolute;width:62%;right:-1%;bottom:-4%;opacity:.98;filter:drop-shadow(0 20px 45px rgba(0,0,0,.45))}.car-art svg{width:100%;height:auto}.hero-note{position:absolute;right:29px;top:26px;z-index:3;display:flex;gap:6px;align-items:center;color:#7bb5c0;font-size:9px;font-weight:700;letter-spacing:1px}.hero-note b{color:var(--mint)}
.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-top:16px}.stat-card{border:1px solid var(--line2);background:#0c1f2f;border-radius:14px;padding:20px;min-width:0}.stat-card small{display:block;color:#89a9b9;font-size:10px;letter-spacing:1px;text-transform:uppercase}.stat-card strong{font:600 32px/1.2 'Space Grotesk',sans-serif;display:block;margin:10px 0 2px}.stat-card .suffix{color:var(--mint)}.stat-card span{font-size:11px;color:#6f91a1}.section-title{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin:37px 0 18px}.section-title h2{font:600 clamp(22px,2.5vw,31px)/1.2 'Space Grotesk','Noto Sans JP';letter-spacing:-.8px;margin:6px 0}.section-title p{margin:5px 0 0;color:var(--muted);max-width:680px}.pill{border:1px solid #32505a;background:#18313c;border-radius:100px;color:#9bc0cb;font-size:9px;padding:6px 10px;font-weight:700;letter-spacing:1px;white-space:nowrap}.pill.green{color:var(--mint);border-color:#295951;background:#123b37}.pill.amber{color:var(--amber);border-color:#65533c;background:#302b28}.pill.red{color:var(--red);border-color:#5f3a41;background:#30232e}
.card{background:linear-gradient(160deg,#0e2333,#0a1d2b);border:1px solid var(--line);border-radius:16px;padding:22px;min-width:0}.card h3{font:600 17px 'Space Grotesk','Noto Sans JP';margin:0 0 9px}.card p{color:#91acbb;margin:0;line-height:1.7;font-size:12px}.card .card-index{font:600 12px 'Space Grotesk';color:var(--mint);letter-spacing:2px}.card:hoverable:hover{border-color:var(--mint)}.feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.feature-card{min-height:185px}.feature-card .feature-icon{height:36px;width:36px;border:1px solid #315a62;border-radius:10px;background:#123a3d;color:var(--mint);display:grid;place-items:center;margin-bottom:19px;font-size:20px}.feature-card h3{font-size:15px}.feature-card .tag{margin-top:16px;color:#64bfb2;font-size:10px}.info-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:14px}.mini-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:11px}.step-card{position:relative;border:1px solid #2a4352;border-radius:11px;padding:16px;background:#102736}.step-num{display:block;font:600 11px 'Space Grotesk';color:var(--mint);margin-bottom:9px}.step-card strong{display:block;font-size:12px}.step-card small{font-size:10px;color:#849fab;display:block;margin-top:6px}
.page-hero{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:0 0 28px}.page-hero h1{font:600 clamp(29px,3.5vw,45px)/1.12 'Space Grotesk','Noto Sans JP';letter-spacing:-1.5px;margin:12px 0}.page-hero p{font-size:13px;color:#a5becc;max-width:720px;line-height:1.8;margin:0}.search-row{display:flex;gap:10px;align-items:center;margin:18px 0 12px}.search-row input{font-size:15px}.sample-row{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:25px}.sample-chip{border:1px solid #305063;border-radius:100px;padding:8px 13px;background:#132c3d;color:#afc8d3;font-size:11px}.sample-chip:hover,.sample-chip.active{color:#02242b;background:var(--mint);border-color:var(--mint)}.split-view{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);gap:16px}.passport-header{display:flex;justify-content:space-between;gap:20px;align-items:start;margin-bottom:20px}.passport-header h2{font:600 29px 'Space Grotesk','Noto Sans JP';margin:3px 0}.overline{font-size:9.5px;color:var(--mint);letter-spacing:1.8px;text-transform:uppercase;font-weight:700}.muted{color:var(--muted)}.mono{font-family:ui-monospace,Consolas,monospace}.keyline{height:1px;background:var(--line);margin:20px 0}.detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.detail-box{background:#112c3e;border:1px solid #24465c;border-radius:10px;padding:12px}.detail-box small{display:block;color:#80a1b2;font-size:10px}.detail-box strong{display:block;font:600 20px 'Space Grotesk';margin-top:4px}.detail-box span{font-size:10px;color:var(--muted)}.timeline-chart{width:100%;height:205px;border-radius:12px;background:#081b28;border:1px solid #203f50;margin:18px 0}.chart-legend{display:flex;flex-wrap:wrap;gap:16px;color:#8fabb9;font-size:10px}.legend-dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:5px;background:var(--mint)}.legend-dot.red{background:var(--red)}.record-list{display:grid;gap:9px}.record{border:1px solid #264455;border-radius:12px;padding:13px 14px;background:#0c2230;display:grid;grid-template-columns:104px 1fr auto;gap:12px;align-items:start}.record time{font:600 10px ui-monospace,monospace;color:#89a8b9}.record strong{display:block;font-size:12px}.record small{color:#7e9daf;font-size:10px}.record .rec-mile{font:600 12px 'Space Grotesk';text-align:right}.record .rec-mile span{display:block;font:400 10px 'DM Sans';color:#7e9caf}.badge-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:5px}.tiny-pill{border:1px solid #305663;color:#83bfcc;border-radius:5px;padding:2px 5px;font-size:8px;letter-spacing:.3px}.tiny-pill.red{color:#ff9c9c;border-color:#78424b}.tiny-pill.green{color:var(--mint);border-color:#2f655a}
.trust-list{display:grid;gap:12px}.trust-line{display:flex;align-items:start;gap:12px;padding:12px;border:1px solid #2a4657;border-radius:10px;background:#0c2331}.trust-icon{width:27px;height:27px;display:grid;place-items:center;border:1px solid #3c6372;border-radius:50%;color:#7eb7c9;flex:none}.trust-line.good .trust-icon{color:var(--mint);border-color:#347366}.trust-line strong{display:block;font-size:11px}.trust-line small{color:#87a7b5;font-size:10px}.note-box{background:#2c2a28;border:1px solid #695342;color:#dfbe94;border-radius:12px;padding:14px;font-size:11px;line-height:1.65}.note-box strong{color:#ffe1a4}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.field label{display:block;font-size:10px;font-weight:700;color:#98b4c3;letter-spacing:.3px;margin-bottom:8px}.field.full{grid-column:1/-1}.field small{color:#668da0;display:block;margin-top:6px;font-size:9px}.form-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:19px}.ai-panel{background:linear-gradient(135deg,#11333c,#112838);border:1px solid #24635d;border-radius:14px;padding:17px;margin-top:19px}.ai-panel .ai-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.ai-panel p{font-size:11px;color:#9abfc3;line-height:1.7}.confidence{height:5px;border-radius:20px;background:#204652;overflow:hidden;margin-top:10px}.confidence i{display:block;height:100%;width:91%;background:linear-gradient(90deg,var(--mint2),var(--mint))}
.right-stack{display:grid;gap:14px;align-content:start}.coverage-table,.spec-table{border-collapse:collapse;width:100%}.coverage-table th,.coverage-table td,.spec-table th,.spec-table td{text-align:left;border-bottom:1px solid #233e4c;padding:11px 9px;font-size:11px;vertical-align:top}.coverage-table th,.spec-table th{color:#84adbb;font-size:10px;font-weight:700}.coverage-table td:first-child,.spec-table td:first-child{color:#dfedf2;font-weight:600}.coverage-table tr:last-child td,.spec-table tr:last-child td{border:0}.coverage-table td:last-child{text-align:right}.range-graphic{position:relative;height:18px;margin:20px 0 34px;border-radius:20px;background:linear-gradient(90deg,#366b83 0 30%,#3fccb6 30% 72%,#cba660 72% 100%)}.range-indicator{position:absolute;left:50%;top:-7px;width:2px;height:33px;background:#fff}.range-indicator:after{content:'';position:absolute;top:-4px;left:-4px;border-left:5px solid transparent;border-right:5px solid transparent;border-top:7px solid #fff}.range-labels{display:flex;justify-content:space-between;color:#8dabba;font-size:10px}.market-big{font:600 42px 'Space Grotesk';letter-spacing:-1px}.market-big span{font-size:17px;color:var(--mint)}.data-table{border-collapse:collapse;width:100%}.data-table th,.data-table td{text-align:left;padding:13px;border-bottom:1px solid var(--line2);font-size:11px}.data-table th{color:#749fb0;letter-spacing:1px;font-size:9px;text-transform:uppercase}.data-table td{color:#c4dbe4}.data-table tr:last-child td{border:0}.list-check{list-style:none;margin:10px 0 0;padding:0}.list-check li{padding:8px 0;border-bottom:1px solid #1f3947;font-size:11px;color:#abc3cc}.list-check li:before{content:'✓';color:var(--mint);margin-right:10px}.list-check li:last-child{border:0}.trust-diagram{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.trust-node{border:1px solid #2d5661;border-radius:14px;background:#0f2a39;padding:20px}.trust-node .num{font:600 28px 'Space Grotesk';color:#4c908e}.trust-node h3{font-size:15px;margin:9px 0}.trust-node p{font-size:11px;color:#8cacb8}.trust-node .eyebrow{letter-spacing:1.4px;font-size:9px}.flow-diagram{display:flex;align-items:center;justify-content:space-between;gap:5px;flex-wrap:wrap;margin:18px 0}.flow-box{flex:1;min-width:130px;padding:17px;text-align:center;background:#123344;border:1px solid #2c6170;border-radius:12px}.flow-box strong{display:block;color:#dfedf3}.flow-box small{font-size:10px;color:#7daebd}.flow-arrow{color:var(--mint);font-size:20px}.roadmap-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.roadmap-card{border-left:3px solid var(--mint)}.roadmap-card h3{font-size:18px}.roadmap-card ul{padding-left:19px;color:#9ebcc8;font-size:11px;line-height:1.9}.code-panel{position:relative;background:#06121b;border:1px solid #294252;border-radius:11px;overflow:hidden}.code-head{display:flex;justify-content:space-between;background:#102939;padding:10px 14px;border-bottom:1px solid #2b4555;color:#79b6c8;font-size:10px;font-weight:700}.code-panel pre{padding:15px;overflow:auto;margin:0;color:#b7d8d5;font:11px/1.6 ui-monospace,'SFMono-Regular',Consolas,monospace}.method{color:var(--mint);font-weight:700;font-size:10px;margin-right:8px}.endpoint{padding:11px 0;border-bottom:1px solid #213b49;color:#aec5d2;font-size:11px}.endpoint:last-child{border:0}.circle-kpi{width:86px;height:86px;border-radius:50%;border:8px solid #235b60;border-right-color:var(--mint);border-top-color:var(--mint);display:grid;place-items:center;font:600 21px 'Space Grotesk';color:var(--mint)}.empty-state{padding:45px;text-align:center;background:#102838;border:1px dashed #3b6270;border-radius:15px;color:#aac5d0}.empty-state strong{display:block;color:#eff8fa;font-size:18px;margin-bottom:7px}.engineer-bar{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.toast{position:fixed;bottom:24px;right:24px;z-index:9999;background:#1a4a48;border:1px solid #5bebcb;border-radius:12px;box-shadow:var(--shadow);padding:13px 18px;color:#e5fff8;font-size:12px;font-weight:700;max-width:350px;opacity:0;transform:translateY(10px);pointer-events:none;transition:.25s}.toast.visible{opacity:1;transform:translateY(0)}
@media(max-width:1200px){.sidebar{width:215px;padding:22px 12px}.brand strong{font-size:19px}.topbar{padding:0 26px}#view{padding:28px 26px 60px}.hero-copy{max-width:60%}.hero h1{font-size:48px}.car-art{width:60%}.demo-chip{display:none}.feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.sidebar{position:sticky;width:76px;padding:20px 8px}.brand{padding:0 8px 20px}.brand>div:last-child,.sidebar-caption,.nav-item>span:last-child,.sidebar-spacer,.side-card,.sidebar-footer{display:none}.nav-item{justify-content:center;padding:14px}.nav-glyph{width:28px}.topbar{height:62px}.top-cta{display:none}.hero{padding:34px;min-height:410px}.hero h1{font-size:44px}.hero-copy{max-width:65%}.car-art{width:61%;right:-6%;bottom:0}.stat-grid{grid-template-columns:repeat(2,1fr)}.info-grid,.split-view{grid-template-columns:1fr}}
@media(max-width:650px){.app-shell{display:block}.sidebar{position:sticky;top:0;width:100%;height:auto;padding:8px 12px;display:flex;flex-direction:row;align-items:center;gap:12px;overflow-x:auto;border-bottom:1px solid var(--line);border-right:0}.brand{padding:0 8px 0 0}.brand-emblem{width:36px;height:36px;flex:none}.brand>div:last-child{display:none}.nav-list{display:flex;gap:4px;min-width:max-content}.nav-item{padding:11px 12px;flex:none}.nav-glyph{font-size:16px}.topbar{position:relative;padding:0 17px;height:51px}.breadcrumb{font-size:10px;gap:6px}.breadcrumbs-root{display:none}.lang-toggle{padding:7px 9px}.global-footer{padding:20px;font-size:8px}#view{padding:20px 16px 45px}.hero{min-height:555px;padding:28px 24px}.hero-copy{max-width:100%}.hero h1{font-size:42px}.hero p{font-size:12px}.hero-note{top:auto;bottom:12px;left:22px}.car-art{width:110%;right:-22%;bottom:19px;opacity:.56}.hero-actions{position:relative;z-index:5}.stat-card{padding:15px}.stat-card strong{font-size:26px}.stat-card small{font-size:9px}.feature-grid,.trust-diagram,.roadmap-grid,.form-grid,.mini-steps{grid-template-columns:1fr}.field.full{grid-column:auto}.detail-grid{grid-template-columns:repeat(2,1fr)}.record{grid-template-columns:85px 1fr}.rec-mile{grid-column:2;text-align:left!important}.page-hero{display:block}.search-row{flex-wrap:wrap}.search-row .btn{width:100%}.passport-header{flex-wrap:wrap}.section-title{align-items:start;flex-wrap:wrap}.flow-arrow{display:none}.flow-diagram{display:grid;grid-template-columns:1fr 1fr}.flow-box{min-width:0}.global-footer span:last-child{display:none}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* ---------- additive: live frontend (API banner, proof ladder states, modal, workshop stepper, AI research) ---------- */
.api-banner{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:16px clamp(24px,4.1vw,72px) 0;padding:12px 16px;border:1px solid #8a6a2e;border-radius:12px;background:linear-gradient(90deg,#3a2f1c,#2c2a28);color:#ffe1a4;font-size:12px}.api-banner[hidden]{display:none}.api-banner strong{color:#ffd27a}.api-banner .banner-icon{width:22px;height:22px;border-radius:50%;background:#ffcb7e;color:#2a1d08;display:grid;place-items:center;font-weight:800;flex:none}.api-banner .banner-sub{color:#c9a86a;font-family:ui-monospace,monospace;font-size:10px}.api-banner .btn{margin-left:auto}
.live-dot.off{background:var(--amber);box-shadow:0 0 13px rgba(255,203,126,.5)}.demo-chip.online{border-color:#2f6a5f;color:#9fe9d6}.demo-chip.offline{border-color:#7a5a2e;color:#ffd79a}
.trust-line.bad .trust-icon{color:var(--red);border-color:#7a4147}.trust-line.bad{border-color:#5a3540}.trust-line.pending .trust-icon{color:var(--amber);border-color:#6e5a36}.trust-line.warn .trust-icon{color:var(--amber);border-color:#6e5a36}.trust-line.warn{border-color:#5c4a2b}.trust-line.neutral .trust-icon{color:#7eb7c9}.trust-line small{word-break:break-word}.trust-line a{color:var(--mint)}
.link-mini{color:var(--mint);text-decoration:none;font-size:10px;border-bottom:1px dotted rgba(85,233,202,.45)}.link-mini:hover{border-bottom-style:solid}.link-btn{appearance:none;background:transparent;border:0;padding:0;color:var(--mint);font-size:10px;font-weight:700;cursor:pointer;text-decoration:underline dotted}.link-btn:hover{text-decoration-style:solid}
.record{cursor:pointer;transition:border-color .15s,background .15s}.record:hover{border-color:#3c6a7c}.record.selected{border-color:var(--mint);background:#0e2a3a;box-shadow:0 0 0 1px rgba(85,233,202,.25) inset}.record.dim{opacity:.62}.record:focus-visible{outline:2px solid var(--mint);outline-offset:2px}.rec-actions{display:flex;gap:8px;justify-content:flex-end;align-items:center;margin-top:6px;flex-wrap:wrap}.tiny-pill.amber{color:var(--amber);border-color:#6e5a36}.tiny-pill.dim{color:#6f8c99;border-color:#2b4452}.tiny-pill a{color:inherit}
.legend-dot.white{background:#fff}.empty-chart{display:grid;place-items:center;color:#7195a4;font-size:12px}
.correction-row{display:flex;justify-content:space-between;gap:12px;align-items:start;padding:10px 0;border-top:1px solid #1f3947}.correction-row:first-of-type{border-top:0;margin-top:8px}.correction-row strong{display:block;font-size:11px;color:#dfedf2}.correction-row small{display:block;color:#7e9daf;font-size:10px;margin-top:3px;word-break:break-all}
.match-row{display:flex;justify-content:space-between;gap:10px;align-items:start;padding:9px 0;border-top:1px solid #1f3947;font-size:11px;margin-top:8px}.match-row small{color:#7e9daf;font-size:9px}
.kv-table{border-collapse:collapse;width:100%;margin-top:8px}.kv-table td{padding:6px 8px;border-bottom:1px solid #1f3947;font-size:10.5px;vertical-align:top}.kv-table td:first-child{color:#84adbb;white-space:nowrap;width:34%}.kv-table tr:last-child td{border:0}.kv-table .wrap,.mono.wrap{word-break:break-all;white-space:normal}
.modal-backdrop{position:fixed;inset:0;z-index:500;background:rgba(3,10,17,.78);backdrop-filter:blur(6px);display:grid;place-items:center;padding:20px}.modal-backdrop[hidden]{display:none}.modal{position:relative;width:min(1080px,100%);max-height:calc(100vh - 40px);overflow:auto;background:linear-gradient(160deg,#0e2333,#0a1d2b);border:1px solid #2d5061;border-radius:18px;padding:24px;box-shadow:var(--shadow)}.modal-close{position:absolute;top:14px;right:14px;width:34px;height:34px;border-radius:50%;border:1px solid #34576a;background:#183344;color:#ecf7fb;font-size:14px}.modal-close:hover{border-color:var(--mint)}.modal-head{margin-bottom:14px;padding-right:44px}.modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.modal .code-panel pre{max-height:220px}
.inline-field{display:flex;gap:8px;align-items:center}.inline-field input{flex:1;min-width:0}.shop-me{font-size:11px;color:#b8ccd7;line-height:1.9}
.photo-grid{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.photo-thumb{position:relative;width:86px}.photo-thumb img,.photo-thumb .photo-doc{width:86px;height:64px;object-fit:cover;border-radius:8px;border:1px solid #2c4a5c;background:#0a1c2b;display:grid;place-items:center;color:#7eb7c9;font-size:11px;font-weight:700}.photo-thumb small{display:block;font-size:9px;color:#86a5b4;margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.photo-x{position:absolute;top:-6px;right:-6px;width:20px;height:20px;border-radius:50%;border:1px solid #5f3a41;background:#30232e;color:#ff9c9c;font-size:10px;line-height:1}
.stepper{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:16px}.step{text-align:center;padding:10px 6px;border:1px solid #2a4657;border-radius:10px;background:#0c2331;color:#7e9daf}.step span{display:grid;place-items:center;width:26px;height:26px;margin:0 auto 6px;border-radius:50%;border:1px solid #3c6372;font-size:11px;font-weight:700}.step small{font-size:10px;display:block}.step.active{border-color:var(--amber);color:#ffe1a4}.step.active span{border-color:var(--amber);color:var(--amber)}.step.done{border-color:#295951;color:#c9f5ea}.step.done span{background:var(--mint);border-color:var(--mint);color:#07252b}.step.bad{border-color:#5f3a41;color:#ffb3b5}.receipt-card{margin-top:12px;padding:14px;border:1px solid #295951;border-radius:12px;background:#0e2a2c}
.grant-card{padding:12px;border:1px solid #2a4657;border-radius:10px;background:#0c2331;margin-top:10px}
.ai-answer{font-size:12px;line-height:1.75;color:#d7e7ee;padding:12px 14px;border-radius:12px;background:#0c2331;border:1px solid #244052}.ai-answer.rtl{text-align:right}
.cite-chip{border:1px solid #2f655a;background:#123b37;color:var(--mint);border-radius:6px;padding:3px 7px;font-size:9px;font-family:ui-monospace,monospace;cursor:pointer}.cite-chip:hover{background:#1a5048}
.quick-prompts{display:flex;flex-wrap:wrap;gap:7px;margin:8px 0 14px}.quick-prompts .sample-chip{font-size:10px;padding:6px 10px}
.chat-log{display:grid;gap:10px;min-height:220px;max-height:460px;overflow:auto;padding:14px;border:1px solid #244052;border-radius:14px;background:#081b28}.chat-empty{align-self:center;text-align:center;font-size:12px;padding:40px 10px}.chat-msg{display:flex}.chat-msg.user{justify-content:flex-end}.chat-bubble{max-width:88%;padding:10px 13px;border-radius:12px;font-size:12px;line-height:1.7;border:1px solid #244052;background:#0f2334;color:#dfedf2}.chat-msg.user .chat-bubble{background:#143d3b;border-color:#2f655a}.chat-bubble.bad{border-color:#5f3a41}.chat-bubble[dir=rtl]{text-align:right}.cursor{color:var(--mint);animation:blink 1s steps(1) infinite}@keyframes blink{50%{opacity:0}}
.chat-input-row{display:flex;gap:8px;margin-top:12px}.chat-input-row input{flex:1;min-width:0}
.asset-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.asset-card{appearance:none;text-align:left;border:1px solid #264455;border-radius:10px;padding:10px;background:#0c2230;color:#dfedf2;display:grid;gap:3px;cursor:pointer}.asset-card:hover{border-color:var(--mint)}.asset-card strong{font-size:12px}.asset-card .mono{font-size:10px;color:#89a8b9}.asset-card small{font-size:9.5px;color:#7e9daf}
.flag-row{display:flex;gap:10px;align-items:start;padding:8px 0;border-top:1px solid #1f3947;font-size:11px}.flag-row:first-of-type{border-top:0}.flag-row .tiny-pill{flex:none;margin-top:2px}
.empty-state span{display:block;font-size:11px;color:#8fabb9;margin-top:4px;word-break:break-all}
.field label .link-btn{margin-left:6px}
@media(max-width:900px){.modal-grid{grid-template-columns:1fr}.api-banner{margin:12px 26px 0}}
@media(max-width:650px){.api-banner{margin:10px 16px 0}.api-banner .btn{margin-left:0}.stepper{grid-template-columns:repeat(2,1fr)}.record .rec-actions{justify-content:flex-start}.detail-grid{grid-template-columns:1fr 1fr}.inline-field{flex-wrap:wrap}.inline-field .btn{width:100%}.chat-bubble{max-width:100%}.modal{padding:18px 14px}.engineer-bar .btn{width:100%}.form-actions .field{width:100%}.sample-row{overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px}.sample-chip{flex:none}.chart-legend{gap:8px}.passport-header .pill{align-self:flex-start}}
/* ---------- additive: overflow hardening + 4-up detail grid ---------- */
.modal-grid>div{min-width:0}.modal .code-panel pre{white-space:pre-wrap;word-break:break-all}.link-mini,.endpoint,.kv-table .mono{word-break:break-all}.pill.wrap{white-space:normal;display:inline-block;line-height:1.5;text-align:left}
.detail-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.table-scroll{overflow-x:auto;max-width:100%}
@media(max-width:900px){.detail-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.data-table,.spec-table{display:block;overflow-x:auto;max-width:100%}.data-table td,.spec-table td{min-width:120px}.spec-table td:first-child{min-width:90px}.endpoint{font-size:10px}}
.search-row .btn{white-space:nowrap}

/* 2026-10-30 — long ids / urls must never widen the page */
.chat-log,.chat-msg,.chat-bubble,#fleet-results,#review-output,#export-summary,.match-row,.kv-table td{min-width:0;overflow-wrap:anywhere;word-break:break-word}
.chat-bubble{box-sizing:border-box}
.id-chip{display:inline-block;padding:0 6px;border-radius:6px;background:#0b2a3a;border:1px solid #244052;color:#9fd6cf;font-size:10px;vertical-align:baseline}
