@font-face{font-family:GT-Walsheim;src:url(/fonts/GT-Walsheim-Light-subset.woff2) format("woff2");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:GT-Walsheim;src:url(/fonts/GT-Walsheim-Regular-subset.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:GT-Walsheim;src:url(/fonts/GT-Walsheim-Medium-subset.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Simplon BP;src:url(/fonts/SimplonBP-Light.woff2) format("woff2");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Simplon BP;src:url(/fonts/SimplonBP-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Simplon BP;src:url(/fonts/SimplonBP-Medium.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Simplon BP;src:url(/fonts/SimplonBP-Bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Simplon Mono;src:url(/fonts/SimplonMono-Regular-subset.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Simplon Mono;src:url(/fonts/SimplonMono-Medium.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}:root{--waymo-white: #ffffff;--waymo-black: #000000;--waymo-ink: #23233c;--waymo-navy: #050f1e;--waymo-navy-2: #132237;--waymo-navy-3: #1f2a39;--waymo-navy-4: #2f3e4f;--waymo-blue: #006fee;--waymo-blue-bright: #0077ff;--waymo-blue-deep: #033098;--waymo-blue-panel: #061e4d;--waymo-teal: #00e89d;--waymo-teal-2: #00eba7;--waymo-teal-deep: #00929d;--waymo-muted: #5d6e83;--waymo-muted-2: #7c899a;--waymo-muted-3: #949a9f;--waymo-muted-4: #a2abb9;--waymo-border: #ccd3dc;--waymo-border-soft: #e5e9f0;--waymo-surface: #fafafb;--waymo-surface-2: #f4f6f9;--waymo-surface-3: #f2f2f2;--waymo-danger: #ea0000;--waymo-warn: #ffcd55;--waymo-ok: #1e7e34;--waymo-mist: #ecf0f6;--waymo-teal-mist: #ecf3f0;--waymo-font-sans: "GT-Walsheim", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;--waymo-font-display: "Simplon BP", "GT-Walsheim", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--waymo-font-mono: "Simplon Mono", "Roboto Mono", Menlo, Monaco, monospace;color-scheme:dark;--bg: var(--waymo-black);--bg-elevated: var(--waymo-navy);--panel: var(--waymo-navy-2);--panel-2: var(--waymo-navy-3);--border: var(--waymo-navy-4);--border-strong: var(--waymo-muted-2);--text: var(--waymo-white);--muted: var(--waymo-muted-4);--accent: var(--waymo-blue);--accent-soft: color-mix(in srgb, var(--waymo-blue) 18%, transparent);--accent-2: var(--waymo-teal);--navy: var(--waymo-navy);--warn: var(--waymo-warn);--danger: var(--waymo-danger);--ok: var(--waymo-teal-deep);--ink: var(--waymo-black);--road: var(--waymo-navy-2);--font-display: var(--waymo-font-display);--font-body: var(--waymo-font-sans);--font-mono: var(--waymo-font-mono);font-family:var(--font-body)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased}a{color:inherit}button,input,select{font:inherit}.sf-brand,.sf-brand-btn{font-family:var(--font-display);font-weight:700;font-size:1.15rem;letter-spacing:-.02em;color:var(--text);text-decoration:none;background:none;border:none;padding:0;cursor:pointer}.sf-brand:hover,.sf-brand-btn:hover{color:var(--accent)}.sf-btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;border-radius:40px;padding:.55rem 1.35rem;font-weight:500;font-size:.92rem;cursor:pointer;text-decoration:none;border:1px solid transparent;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease}.sf-btn-primary{background:var(--accent);color:var(--waymo-white);border-color:var(--accent)}.sf-btn-primary:hover{background:var(--waymo-blue-bright);border-color:var(--waymo-blue-bright);color:var(--waymo-white);transform:translateY(-1px)}.sf-btn-ghost{background:transparent;color:var(--text);border-color:var(--border-strong)}.sf-btn-ghost:hover{border-color:var(--accent);color:var(--accent)}.sf-btn-lg{padding:.75rem 1.35rem;font-size:1rem}.sf-link,.sf-link-btn{color:var(--muted);text-decoration:none;background:none;border:none;cursor:pointer;font-size:.9rem;font-weight:500;padding:0}.sf-link:hover,.sf-link-btn:hover{color:var(--accent)}.sf-home{min-height:100vh;background:radial-gradient(ellipse 85% 55% at 78% 8%,color-mix(in srgb,var(--waymo-teal) 10%,transparent),transparent 52%),radial-gradient(ellipse 60% 45% at 8% 88%,color-mix(in srgb,var(--waymo-blue) 12%,transparent),transparent 48%),linear-gradient(180deg,var(--waymo-black) 0%,var(--waymo-navy) 55%,var(--waymo-black) 100%)}.sf-topnav{position:absolute;z-index:5;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:1.15rem clamp(1.25rem,4vw,3rem)}.sf-topnav-actions{display:flex;align-items:center;gap:1.1rem}.sf-hero{position:relative;min-height:100vh;min-height:100dvh;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:stretch;overflow:hidden}.sf-hero-copy{position:relative;z-index:2;display:flex;flex-direction:column;justify-content:center;padding:clamp(5.5rem,12vh,8rem) clamp(1.25rem,4vw,3rem) 3rem;max-width:36rem}.sf-brand-hero{margin:0 0 1rem;font-family:var(--font-display);font-size:clamp(2.6rem,5.5vw,4.25rem);font-weight:800;letter-spacing:-.045em;line-height:1;color:var(--text);animation:brand-in .9s ease both}.sf-brand-hero span{color:var(--accent)}.sf-hero-copy h1{margin:0;font-family:var(--font-display);font-size:clamp(1.45rem,2.6vw,2rem);font-weight:600;letter-spacing:-.025em;line-height:1.25;color:var(--text);animation:rise-in .85s .12s ease both}.sf-hero-lead{margin:1.1rem 0 0;font-size:clamp(1rem,1.4vw,1.12rem);line-height:1.55;color:var(--muted);max-width:30rem;animation:rise-in .85s .22s ease both}.sf-cta-group{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.75rem;animation:rise-in .85s .32s ease both}.hero-visual{position:relative;min-height:100%;overflow:hidden;animation:fade-in 1.2s .2s ease both}.hero-canvas{display:block;width:100%;height:100%;min-height:100vh;min-height:100dvh}.hero-visual-fade{pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,var(--bg) 0%,rgba(5,15,30,.6) 26%,transparent 58%),linear-gradient(180deg,rgba(5,15,30,.4) 0%,transparent 22%,rgba(5,15,30,.55) 100%)}.sf-section{padding:clamp(3.5rem,8vh,5.5rem) clamp(1.25rem,4vw,3rem);border-top:1px solid var(--border)}.sf-section-alt{background:linear-gradient(180deg,#132237b3,#050f1e59),repeating-linear-gradient(-12deg,transparent,transparent 11px,rgba(0,111,238,.025) 11px,rgba(0,111,238,.025) 12px)}.sf-section-cta{text-align:center;background:radial-gradient(ellipse 60% 80% at 50% 100%,rgba(0,111,238,.09),transparent 70%)}.sf-section-inner{max-width:42rem;margin:0 auto}.sf-section-cta .sf-section-inner{max-width:34rem}.sf-section h2{margin:0 0 .75rem;font-family:var(--font-display);font-size:clamp(1.5rem,2.4vw,1.85rem);font-weight:700;letter-spacing:-.03em}.sf-section p{margin:0;color:var(--muted);font-size:1.05rem;line-height:1.6}.sf-source-list{margin:1.5rem 0 0;padding:0;list-style:none;display:grid;gap:.65rem}.sf-source-list li{position:relative;padding-left:1.15rem;color:var(--text);font-size:.95rem;line-height:1.45}.sf-source-list li:before{content:"";position:absolute;left:0;top:.55em;width:.45rem;height:.45rem;border-radius:1px;background:var(--accent)}.sf-coverage-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2rem}.sf-coverage-item{display:flex;flex-direction:column;gap:.35rem}.sf-coverage-n{font-family:var(--font-display);font-size:clamp(2rem,4vw,2.75rem);font-weight:700;letter-spacing:-.04em;color:var(--accent);font-variant-numeric:tabular-nums}.sf-coverage-l{color:var(--muted);font-size:.9rem}.sf-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;padding:1.5rem clamp(1.25rem,4vw,3rem) 2rem;border-top:1px solid var(--border);color:var(--muted);font-size:.85rem}@keyframes brand-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes rise-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes select-pulse{0%{background-position:0% 50%}to{background-position:100% 50%}}@keyframes rail-in{0%{opacity:0;transform:translate(-6px)}to{opacity:1;transform:none}}.sf-app{min-height:100vh;display:flex;flex-direction:column;background:radial-gradient(ellipse 70% 35% at 100% 0%,rgba(0,111,238,.05),transparent 55%),var(--bg)}.sf-header{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;padding:1rem 1.25rem .75rem;border-bottom:1px solid var(--border);background:linear-gradient(180deg,var(--waymo-navy-2),var(--bg))}.sf-header-right{display:flex;align-items:center;gap:1rem}.tagline{margin:.35rem 0 0;color:var(--muted);font-size:.85rem;max-width:52rem}.health{font-size:.8rem;color:var(--accent-2);white-space:nowrap}.sf-tabs{display:flex;gap:.25rem;padding:.5rem 1.25rem;border-bottom:1px solid var(--border)}.sf-tabs button{background:transparent;border:1px solid transparent;color:var(--muted);padding:.4rem .8rem;border-radius:4px;cursor:pointer}.sf-tabs button.active{color:var(--text);border-color:var(--border);background:var(--panel)}.sf-main{display:grid;grid-template-columns:minmax(300px,360px) 1fr;min-height:0;flex:1}.sf-sidebar{border-right:1px solid var(--border);background:linear-gradient(180deg,rgba(0,111,238,.03),transparent 120px),var(--panel);display:flex;flex-direction:column;min-height:calc(100vh - 120px)}.filters{display:flex;flex-direction:column;gap:.9rem;padding:1rem 1rem 1.05rem;border-bottom:1px solid var(--border);background:linear-gradient(180deg,rgba(0,111,238,.05),transparent 90%),#050f1e59}.filter-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding-bottom:.55rem;border-bottom:1px solid var(--border)}.filter-head h2{margin:0;font-family:var(--font-display);font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text)}.filter-head-hint{font-size:.72rem;color:var(--muted)}.filter-count{font-size:.72rem;color:var(--muted);font-variant-numeric:tabular-nums}.filter-field{display:grid;gap:.35rem}.filter-field-flush{gap:0}.filter-label{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.filter-input,.filter-select,.filters input,.filters select{background:var(--panel-2);border:1px solid var(--border);color:var(--text);border-radius:4px;padding:.55rem .65rem;width:100%;min-height:2.35rem;transition:border-color .15s ease,background .15s ease}.filter-input::placeholder{color:var(--waymo-muted-3)}.filter-input:hover,.filter-select:hover,.filters input:hover,.filters select:hover{border-color:var(--border-strong)}.filter-input:focus,.filter-select:focus,.filters input:focus,.filters select:focus{outline:none;border-color:var(--accent);background:var(--waymo-navy-3)}.filter-block{display:grid;gap:.45rem}.filter-block-label{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem}.filter-block-hint{font-size:.68rem;color:var(--muted)}.filter-grid{display:grid;grid-template-columns:1fr 1fr;gap:.65rem}.filter-field-wide{grid-column:1 / -1}.family-rail{display:flex;gap:.35rem;overflow-x:auto;padding:.05rem 0 .15rem;scrollbar-width:thin;animation:rail-in .4s ease both}.family-chip{flex:0 0 auto;border:1px solid var(--border);background:var(--panel-2);color:var(--muted);border-radius:3px;padding:.38rem .6rem;font-size:.74rem;font-weight:600;letter-spacing:.01em;cursor:pointer;white-space:nowrap;transition:color .15s ease,border-color .15s ease,background .15s ease}.family-chip:hover{color:var(--text);border-color:var(--border-strong)}.family-chip.active{color:var(--waymo-white);background:var(--accent);border-color:var(--accent)}.family-chip:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.filter-active{display:flex;flex-wrap:wrap;gap:.35rem;padding-top:.15rem}.filter-tag{display:inline-flex;align-items:center;gap:.15rem;max-width:100%;border:1px solid rgba(0,111,238,.35);background:var(--accent-soft);color:var(--text);border-radius:3px;padding:.28rem .5rem;font-size:.72rem;font-weight:600;cursor:pointer;text-align:left}.filter-tag:hover{border-color:var(--accent);color:var(--accent)}.filter-clear{background:none;border:1px solid var(--border);color:var(--muted);font-size:.72rem;font-weight:600;cursor:pointer;padding:.28rem .55rem;border-radius:3px;transition:color .15s ease,border-color .15s ease}.filter-clear:hover{color:var(--accent);border-color:var(--accent)}.scenario-list-head{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;padding:.7rem 1rem .55rem;border-bottom:1px solid var(--border);background:#050f1e33;position:sticky;top:0;z-index:1}.scenario-list-head h2{margin:0;font-family:var(--font-display);font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text)}.scenario-list{overflow:auto;flex:1;scroll-padding-top:.5rem}.scenario-row{display:grid;grid-template-columns:4px 1fr;gap:0;width:100%;text-align:left;background:transparent;border:none;border-bottom:1px solid var(--border);color:var(--text);padding:0;cursor:pointer;transition:background .15s ease}.scenario-row-accent{background:transparent;transition:background .2s ease}.scenario-row-body{padding:.7rem .8rem .7rem .7rem;min-width:0}.scenario-row:hover{background:#006fee0a}.scenario-row:hover .scenario-row-accent{background:#006fee59}.scenario-row.selected{background:var(--accent-soft)}.scenario-row.selected .scenario-row-accent{background:var(--accent)}.scenario-row:focus-visible{outline:none;background:#006fee14;box-shadow:inset 0 0 0 1px var(--accent)}.row-top{display:flex;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.25rem}.family{font-size:.68rem;text-transform:uppercase;letter-spacing:.05em;color:var(--accent-2);font-weight:600}.diff{font-size:.65rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);border:1px solid var(--border);border-radius:2px;padding:.1rem .35rem;font-weight:600}.diff.hard,.diff.unpreventable{color:var(--danger);border-color:#ea000059}.diff.medium{color:var(--warn);border-color:#ffcd5559}.diff.easy{color:var(--ok);border-color:#00929d59}.row-name{font-size:.84rem;line-height:1.35;font-weight:550;letter-spacing:-.01em}.scenario-row.selected .row-name{color:var(--text)}.row-meta{margin-top:.3rem;font-size:.72rem;color:var(--muted);display:flex;flex-wrap:wrap;gap:.35rem .65rem}.row-meta span{display:inline-flex;align-items:center;gap:.25rem}.row-meta .meta-dot{width:.28rem;height:.28rem;border-radius:1px;background:var(--border-strong)}.sf-stage{display:flex;flex-direction:column;min-width:0}.viewer-wrap{position:relative;height:min(52vh,520px);background:var(--ink);border-bottom:1px solid var(--border)}.viewer-canvas{width:100%;height:100%}.overlay{position:absolute;z-index:2;top:.75rem;left:.75rem;background:#050f1ec7;border:1px solid var(--border);padding:.4rem .7rem;border-radius:4px;font-size:.85rem}.overlay.error{color:var(--waymo-danger);border-color:var(--danger)}.playback{display:flex;align-items:center;gap:.75rem;padding:.55rem .9rem;border-bottom:1px solid var(--border);background:var(--panel)}.playback button{background:var(--accent);color:var(--waymo-white);border:none;border-radius:40px;padding:.35rem .9rem;cursor:pointer;font-weight:500}.playback button:hover:not(:disabled){background:var(--waymo-blue-bright);color:var(--waymo-white)}.playback button:disabled{opacity:.45;cursor:not-allowed}.playback input[type=range]{flex:1}.frame-label{font-size:.8rem;color:var(--muted);min-width:8rem}.chk{font-size:.8rem;color:var(--muted);display:flex;gap:.3rem;align-items:center}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;padding:.75rem}.card{background:var(--panel);border:1px solid var(--border);border-radius:6px;padding:.75rem .9rem}.card h3{margin:0 0 .5rem;font-family:var(--font-display);font-size:.9rem;color:var(--accent)}.card dl{display:grid;grid-template-columns:9rem 1fr;gap:.25rem .5rem;margin:0;font-size:.82rem}.card dt{color:var(--muted)}.card dd{margin:0;word-break:break-word}.hint{margin:.7rem 0 0;color:var(--muted);font-size:.78rem;line-height:1.4}.odd-json{margin:.5rem 0 0;background:var(--panel-2);border-radius:4px;padding:.5rem;font-size:.72rem;max-height:8rem;overflow:auto;color:var(--waymo-muted-2)}.sf-panel{padding:1rem 1.25rem 2rem}.stat-row{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;margin-bottom:1.25rem}.stat{background:var(--panel);border:1px solid var(--border);border-radius:6px;padding:.9rem}.stat .n{font-family:var(--font-display);font-size:1.6rem;color:var(--accent);font-variant-numeric:tabular-nums}.stat .l{color:var(--muted);font-size:.8rem}.bars{display:grid;gap:.35rem;margin-bottom:1.25rem}.bar-row{display:grid;grid-template-columns:10rem 1fr 3rem;gap:.5rem;align-items:center;font-size:.8rem}.bar-track{height:.55rem;background:var(--panel-2);border-radius:2px;overflow:hidden}.bar-fill{height:100%;background:linear-gradient(90deg,var(--accent-2),var(--accent))}.bar-n{text-align:right;color:var(--muted);font-variant-numeric:tabular-nums}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.gap-list{display:grid;gap:.6rem}.gap-card{background:var(--panel);border:1px solid var(--border);border-radius:6px;padding:.75rem .9rem}.gap-card header{display:flex;justify-content:space-between;gap:1rem;margin-bottom:.35rem;font-size:.8rem;color:var(--muted)}.gap-card p{margin:0;font-size:.86rem;line-height:1.4}.empty{padding:1.25rem 1rem;color:var(--muted);text-align:center;font-size:.9rem}@media(max-width:980px){.sf-hero{grid-template-columns:1fr;min-height:auto}.sf-hero-copy{max-width:none;padding-bottom:1.5rem}.hero-visual,.hero-canvas{min-height:48vh}.hero-visual-fade{background:linear-gradient(180deg,var(--bg) 0%,transparent 35%,rgba(5,15,30,.55) 100%)}.sf-coverage-row{grid-template-columns:1fr;gap:1.15rem}.sf-main,.detail-grid,.stat-row,.two-col{grid-template-columns:1fr}.sf-sidebar{min-height:320px;max-height:48vh}.filter-grid{grid-template-columns:1fr 1fr}}@media(prefers-reduced-motion:reduce){.sf-brand-hero,.sf-hero-copy h1,.sf-hero-lead,.sf-cta-group,.hero-visual,.family-rail{animation:none}}
