@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap";:root{color-scheme:light;font-family:DM Sans,Noto Sans Sinhala,Noto Sans Tamil,system-ui,sans-serif;color:#16221f;background:#f3f4ed;font-synthesis:none;text-rendering:optimizeLegibility;--ink: #15211f;--ink-2: #25332f;--muted: #6c7772;--line: #dfe3d9;--surface: #ffffff;--surface-soft: #f7f8f3;--lime: #d8ff52;--lime-dark: #a9d61c;--amber: #f6c453;--coral: #ff6e57;--teal: #2bc2a7;--shadow: 0 18px 50px rgba(32, 48, 43, .08)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 82% 2%,rgba(216,255,82,.12),transparent 24rem),#f3f4ed;overflow-x:hidden}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid rgba(43,194,167,.38);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app-shell{min-height:100vh}.topbar{width:min(1480px,calc(100% - 48px));min-height:74px;margin:0 auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid rgba(38,55,50,.12)}.brand-mark{display:inline-flex;align-items:center;gap:11px;justify-self:start;font-family:Manrope,sans-serif}.brand-mark>span:last-child{display:flex;align-items:baseline;letter-spacing:-.04em;font-size:20px}.brand-mark strong{font-weight:800}.brand-mark em{margin-left:4px;color:#7b8916;font-size:12px;font-style:normal;font-weight:800;letter-spacing:.04em}.logo-disc{position:relative;width:32px;height:32px;border:7px dotted var(--ink);border-radius:50%;animation:slowSpin 18s linear infinite}.logo-disc:before,.logo-disc:after{content:"";position:absolute;inset:4px;border:1.5px solid var(--ink);border-radius:50%}.logo-disc:after{inset:8px;background:var(--lime);border:0}@keyframes slowSpin{to{transform:rotate(360deg)}}.topbar nav{display:flex;align-items:center;gap:6px}.topbar nav a,.topbar nav button{min-height:40px;padding:0 14px;display:inline-flex;align-items:center;gap:7px;border:0;border-radius:10px;background:transparent;color:#46534f;font-size:14px;font-weight:600;cursor:pointer;transition:background .16s ease,color .16s ease}.topbar nav a:hover,.topbar nav button:hover{color:var(--ink);background:#ffffffb8}.header-status{justify-self:end;display:flex;align-items:center;gap:8px;color:#65716d;font-size:12px;font-weight:600}.header-status span{width:8px;height:8px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 5px #2bc2a71f}main{width:min(1480px,calc(100% - 48px));margin:0 auto}.intro{padding:66px 0 44px;display:grid;grid-template-columns:1.3fr .7fr;align-items:end;gap:80px}.intro>*{min-width:0}.eyebrow{display:flex;align-items:center;gap:7px;color:#65726e;font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.intro h1{margin:14px 0 0;max-width:850px;color:var(--ink);font-family:Manrope,sans-serif;font-size:clamp(48px,6.2vw,94px);font-weight:800;line-height:.92;letter-spacing:-.072em}.intro h1 span{color:#98a39c}.intro>p{max-width:440px;margin:0 0 5px;color:#596660;font-size:17px;line-height:1.65}.intro>p strong{color:var(--ink);white-space:nowrap}.simulator-grid{scroll-margin-top:16px;display:grid;grid-template-columns:390px minmax(0,1fr);gap:20px;align-items:start}.control-panel{padding:24px;background:var(--surface);border:1px solid rgba(35,52,47,.1);border-radius:24px;box-shadow:var(--shadow)}.panel-heading{display:flex;justify-content:space-between;align-items:center;padding-bottom:20px;border-bottom:1px solid var(--line)}.panel-heading>svg{color:#79847f}.panel-heading span,.result-heading>div>span,.card-title-row>div>span,.safety-banner>div>span{color:#89928e;font-size:10px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.panel-heading h2,.result-heading h2,.card-title-row h2{margin:4px 0 0;font-family:Manrope,sans-serif;font-size:18px;font-weight:750;letter-spacing:-.025em}.field-group{margin-top:20px}.field-group.compact{margin-top:0}.field-group.compact.spaced-field{margin-top:20px}.field-group>label,.segmented-control-wrap>label,.range-control label{display:block;margin-bottom:9px;color:#56625e;font-size:12px;font-weight:700}.brand-pills{display:flex;gap:6px;padding-bottom:4px;overflow-x:auto;scrollbar-width:thin}.brand-pills button,.brand-filter button{min-height:34px;padding:0 12px;flex:0 0 auto;border:1px solid var(--line);border-radius:999px;background:#fff;color:#68736e;font-size:11px;font-weight:700;cursor:pointer;transition:.15s ease}.brand-pills button:hover,.brand-filter button:hover{border-color:#aeb8b1;color:var(--ink)}.brand-pills button.active,.brand-filter button.active{border-color:var(--ink);background:var(--ink);color:#fff}.select-wrap{position:relative}.select-wrap select{width:100%;height:46px;padding:0 42px 0 14px;appearance:none;border:1px solid var(--line);border-radius:12px;background:#fafbf8;color:var(--ink);font-size:13px;font-weight:650;cursor:pointer}.select-wrap>svg{position:absolute;top:15px;right:14px;color:#7d8883;pointer-events:none}.selected-bike-card{position:relative;margin-top:12px;overflow:hidden;border:1px solid #dfe5d8;border-radius:14px;background:linear-gradient(135deg,#f5f8ed,#fbfcf7)}.bike-reference-image{position:relative;margin:0;overflow:hidden;background:radial-gradient(circle at 50% 58%,rgba(216,255,82,.22),transparent 42%),linear-gradient(145deg,#f1f4e9,#fbfcf7)}.bike-reference-image:before{content:"";position:absolute;inset:auto 12% 10px;height:12px;border-radius:50%;background:#1e2c271f;filter:blur(8px)}.bike-reference-image img{position:relative;z-index:1;width:100%;height:100%;display:block;object-fit:contain;transition:opacity .18s ease,transform .24s ease}.bike-reference-image.selected{height:142px;padding:12px 18px 25px;border-bottom:1px solid rgba(38,55,50,.09)}.selected-bike-card:hover .bike-reference-image.selected img{transform:scale(1.025)}.bike-reference-image.is-loading img{opacity:0}.bike-reference-image.is-loading{animation:photoLoading 1.15s ease-in-out infinite alternate}@keyframes photoLoading{0%{background-color:#f3f5ed}to{background-color:#e9eee2}}.bike-reference-image figcaption{position:absolute;z-index:2;right:9px;bottom:7px;left:9px;display:flex;align-items:center;justify-content:space-between;gap:8px;color:#6f7c76;font-size:8px;font-weight:750}.bike-reference-image figcaption span,.bike-reference-image figcaption a{display:inline-flex;align-items:center;gap:4px}.bike-reference-image figcaption span{letter-spacing:.05em;text-transform:uppercase}.bike-reference-image figcaption a{padding:3px 6px;border:1px solid rgba(38,55,50,.11);border-radius:999px;background:#ffffffc7;transition:border-color .15s ease,color .15s ease}.bike-reference-image figcaption a:hover{border-color:#aeb8b1;color:var(--ink)}.bike-photo-fallback{position:relative;z-index:1;width:100%;height:100%;display:flex;align-items:center;justify-content:center;gap:8px;color:#84908a;font-size:9px;font-weight:700}.selected-bike-summary{min-height:88px;padding:13px 12px;display:grid;grid-template-columns:46px minmax(0,1fr);gap:12px;align-items:start}.bike-avatar{width:46px;height:46px;display:grid;place-items:center;border-radius:12px;background:var(--ink);color:var(--lime)}.selected-bike-copy{min-width:0;padding-right:2px}.selected-bike-copy>span{display:block;margin-bottom:2px;color:#83908a;font-size:10px;font-weight:700;text-transform:uppercase}.selected-bike-copy>strong{display:block;overflow:hidden;font-family:Manrope,sans-serif;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.brake-spec-line{margin-top:8px;display:flex;align-items:center;gap:7px;color:#5c6964;font-size:10px;font-weight:600}.brake-spec-line i{width:3px;height:3px;border-radius:50%;background:#9ba59f}.brake-badge{display:inline-flex;align-items:center;justify-content:center;gap:5px;width:fit-content;min-height:24px;padding:0 8px;border:1px solid #d8ded7;border-radius:999px;background:#fff;color:#65716d;font-size:9px;font-weight:800;white-space:nowrap}.selected-bike-card>.brake-badge{position:absolute;right:10px;bottom:10px}.brake-badge.abs{border-color:#2bc2a759;background:#edfaf6;color:#137e6c}.data-warning{margin-top:9px;padding:9px 10px;display:flex;align-items:flex-start;gap:7px;border-radius:9px;background:#fff7e5;color:#886426;font-size:10px;line-height:1.45}.data-warning svg{flex:0 0 auto}.speed-ceiling-control{margin-top:20px}.speed-mode-switch{margin-top:9px;padding:4px;display:grid;grid-template-columns:1fr 1fr;gap:4px;border-radius:11px;background:#edf0e9}.speed-mode-switch button{min-width:0;min-height:48px;padding:7px 9px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:2px;border:0;border-radius:8px;background:transparent;color:#75817c;cursor:pointer;transition:background .15s ease,color .15s ease,box-shadow .15s ease}.speed-mode-switch button span{font-size:9px;font-weight:750}.speed-mode-switch button strong{font-family:Manrope,sans-serif;font-size:12px;font-variant-numeric:tabular-nums}.speed-mode-switch button.active{background:#fff;color:var(--ink);box-shadow:0 2px 8px #1e2b271a}.speed-mode-switch button.active strong{color:#758817}.speed-basis{margin-top:6px;display:block;color:#929c97;font-size:8px}.lab-speed-warning{margin-top:9px;padding:9px 10px;display:flex;align-items:flex-start;gap:7px;border:1px solid rgba(219,103,72,.18);border-radius:9px;background:#fff0ea;color:#9a4a36;font-size:9px;font-weight:650;line-height:1.45}.lab-speed-warning svg{flex:0 0 auto}.hazard-card{margin-top:20px;padding:14px;border:1px solid #e2e5dc;border-radius:16px;background:radial-gradient(circle at 100% 0,rgba(246,196,83,.13),transparent 8rem),#fafbf7;box-shadow:inset 0 1px #ffffffbf}.hazard-card-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.hazard-card-heading>div{display:flex;align-items:center;gap:7px;color:#596660}.hazard-card-heading>div svg{color:#c17433}.hazard-card-heading>div span{font-size:10px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.hazard-card-heading>strong{padding:5px 8px;border-radius:999px;background:#fff3dc;color:#885b1f;font-size:10px;font-weight:800;font-variant-numeric:tabular-nums}.obstacle-grid{margin-top:12px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.obstacle-grid button{position:relative;min-width:0;min-height:54px;padding:7px 5px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;border:1px solid #dfe3da;border-radius:10px;background:#ffffffe6;color:#77827d;font-size:9px;font-weight:700;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease,transform .15s ease}.obstacle-grid button:hover{border-color:#aeb8b1;color:var(--ink);transform:translateY(-1px)}.obstacle-grid button.active{border-color:var(--ink);background:var(--ink);color:#fff;box-shadow:0 7px 16px #15211f21}.obstacle-grid button.active>svg:first-child{color:var(--lime)}.obstacle-grid button.active>svg:last-child{position:absolute;top:4px;right:4px;padding:1px;border-radius:50%;background:var(--lime);color:var(--ink)}.hazard-card .range-control{margin-top:16px}.reaction-profile-control{margin-top:20px}.reaction-profile-control label{display:block;margin-bottom:2px;color:#56625e;font-size:12px;font-weight:700}.reaction-profile-control .control-label-row>strong{padding:5px 8px;border:1px solid #dfe3da;border-radius:8px;background:#fafbf8;color:var(--ink);font-size:11px;font-weight:800;font-variant-numeric:tabular-nums}.reaction-presets{margin-top:10px;padding:3px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px;border-radius:11px;background:#eef0ea}.reaction-presets button{min-width:0;min-height:48px;padding:5px 3px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border:0;border-radius:8px;background:transparent;color:#707c76;cursor:pointer;transition:background .15s ease,color .15s ease,box-shadow .15s ease}.reaction-presets button span{overflow-wrap:anywhere;font-size:9px;font-weight:800;line-height:1.15;text-align:center}.reaction-presets button small{color:#98a19d;font-size:8px;font-weight:700;font-variant-numeric:tabular-nums}.reaction-presets button:hover{color:var(--ink)}.reaction-presets button.active{background:#fff;color:var(--ink);box-shadow:0 2px 8px #1e2b271c}.reaction-presets button.active small{color:#758817}.water-warning{margin-top:8px;padding:10px 11px;display:flex;align-items:flex-start;gap:8px;border:1px solid rgba(196,127,33,.18);border-radius:10px;background:#fff5df;color:#835d21;font-size:9px;font-weight:650;line-height:1.45}.water-warning svg{flex:0 0 auto;color:#b77527}.range-control{margin-top:22px}.control-label-row{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.control-label-row label{margin-bottom:2px}.control-hint{display:block;color:#98a19d;font-size:9px}.number-field{height:34px;display:flex;align-items:center;border:1px solid var(--line);border-radius:9px;background:#fafbf8;overflow:hidden}.number-field input{width:48px;padding:0 2px 0 8px;border:0;outline:0;background:transparent;color:var(--ink);font-size:13px;font-weight:750;text-align:right;font-variant-numeric:tabular-nums}.number-field input::-webkit-inner-spin-button{appearance:none}.number-field span{padding:0 8px 0 4px;color:#8d9792;font-size:10px;font-weight:700}.range-input{width:100%;height:4px;margin:15px 0 0;appearance:none;border-radius:999px;background:linear-gradient(to right,var(--ink) 0 var(--range-progress),#e4e8df var(--range-progress) 100%);cursor:pointer}.range-input::-webkit-slider-thumb{width:18px;height:18px;appearance:none;border:4px solid #fff;border-radius:50%;background:var(--ink);box-shadow:0 0 0 1px var(--ink),0 3px 8px #0000002e}.range-input::-moz-range-thumb{width:11px;height:11px;border:4px solid #fff;border-radius:50%;background:var(--ink);box-shadow:0 0 0 1px var(--ink)}.range-ends{margin-top:5px;display:flex;justify-content:space-between;color:#a6aea9;font-size:8px;font-variant-numeric:tabular-nums}.surface-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:5px}.surface-grid button{position:relative;min-width:0;min-height:57px;padding:7px 2px 6px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;border:1px solid var(--line);border-radius:10px;background:#fff;color:#7c8681;font-size:9px;font-weight:700;cursor:pointer}.surface-grid button:hover{border-color:#b4bdb7}.surface-grid button.active{border-color:var(--ink);background:var(--ink);color:#fff}.surface-check{position:absolute;top:4px;right:4px;padding:1px;border-radius:50%;background:var(--lime);color:var(--ink)}.advanced-toggle{width:100%;min-height:45px;margin-top:20px;padding:0 3px;display:flex;justify-content:space-between;align-items:center;border:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:transparent;color:#56635f;font-size:11px;font-weight:700;cursor:pointer}.advanced-toggle>span{display:flex;align-items:center;gap:7px}.advanced-toggle svg{transition:transform .18s ease}.advanced-toggle .rotated{transform:rotate(180deg)}.advanced-controls{padding:0 2px 8px;animation:reveal .18s ease-out}@keyframes reveal{0%{opacity:0;transform:translateY(-4px)}}.segmented-control-wrap{margin:20px 0}.segmented-control{padding:3px;display:grid;grid-template-columns:repeat(3,1fr);border-radius:10px;background:#eef0ea}.segmented-control button{min-height:34px;border:0;border-radius:8px;background:transparent;color:#75807b;font-size:10px;font-weight:700;cursor:pointer}.segmented-control button.active{background:#fff;color:var(--ink);box-shadow:0 2px 7px #1e2b271a}.simulate-button{width:100%;min-height:64px;margin-top:20px;padding:8px 14px;display:flex;align-items:center;gap:12px;border:0;border-radius:15px;background:var(--lime);color:var(--ink);box-shadow:0 10px 24px #a8cb3433;font-family:Manrope,sans-serif;font-size:14px;font-weight:800;text-align:left;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease}.simulate-button:hover{transform:translateY(-2px);box-shadow:0 14px 28px #a8cb3447}.simulate-button:active{transform:translateY(0)}.simulate-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;background:var(--ink);color:var(--lime)}.simulate-button>span:last-child{display:flex;flex-direction:column}.simulate-button small{margin-top:1px;color:#5c681c;font-family:DM Sans,sans-serif;font-size:9px;font-weight:700}.simulation-panel{min-width:0}.scene-card{position:relative;height:548px;overflow:hidden;border:1px solid rgba(255,255,255,.08);border-radius:24px;background:#13201f;box-shadow:0 24px 50px #1826222b}.canvas-wrap{position:absolute;inset:0 0 68px}.canvas-wrap canvas{display:block}.scene-fallback{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:9px;background:#13201f;color:#a8b7b1;font-size:11px;font-weight:700}.loader-disc{width:22px;height:22px;border:3px dotted var(--lime);border-radius:50%;animation:slowSpin 1.8s linear infinite}.scene-topline{position:absolute;z-index:4;top:18px;left:18px;right:18px;display:flex;align-items:center;justify-content:space-between;pointer-events:none}.phase-pill{min-height:31px;padding:0 12px;display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(255,255,255,.12);border-radius:999px;background:#0c1715bd;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#eef4ec;font-size:10px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.phase-pill i{width:7px;height:7px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 5px #2bc2a726}.phase-braking i{background:var(--coral);box-shadow:0 0 0 5px #ff6e5726;animation:phasePulse .6s ease-in-out infinite alternate}.phase-stopped i{background:var(--lime);box-shadow:0 0 0 5px #d8ff5226}.phase-impact{border-color:#ff6e5757;background:#471713d6;color:#fff4f1}.phase-impact i{background:var(--coral);box-shadow:0 0 0 5px #ff6e5733;animation:phasePulse .42s ease-in-out infinite alternate}@keyframes phasePulse{to{opacity:.4}}.scene-condition{display:flex;gap:6px}.scene-condition span{min-height:28px;padding:0 10px;display:inline-flex;align-items:center;border-radius:8px;background:#0d18169e;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#ebf1edbd;font-size:9px;font-weight:600}.telemetry{position:absolute;z-index:4;bottom:86px;left:18px;display:flex;overflow:hidden;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:#0c1715b8;-webkit-backdrop-filter:blur(13px);backdrop-filter:blur(13px);pointer-events:none}.telemetry>div{min-width:110px;min-height:58px;padding:10px 13px;display:flex;align-items:center;gap:9px;color:#9daba5;border-right:1px solid rgba(255,255,255,.08)}.telemetry>div:last-child{border-right:0}.telemetry>div>span{display:grid;grid-template-columns:auto auto;column-gap:4px;align-items:baseline;color:#8f9d97;font-size:8px;text-transform:uppercase}.telemetry strong{grid-row:2;color:#fff;font-family:Manrope,sans-serif;font-size:19px;font-weight:750;font-variant-numeric:tabular-nums}.telemetry em{grid-row:2;color:#95a39e;font-size:8px;font-style:normal;font-weight:700}.playback-bar{position:absolute;z-index:5;right:0;bottom:0;left:0;height:68px;padding:0 17px;display:grid;grid-template-columns:40px minmax(120px,1fr) auto 38px 38px;align-items:center;gap:13px;border-top:1px solid rgba(255,255,255,.08);background:#0d1a17f5}.play-button,.sound-toggle,.reset-playback{width:38px;height:38px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.12);border-radius:10px;background:#23332f;color:var(--lime);cursor:pointer}.reset-playback{color:#9eaca6}.sound-toggle{color:var(--lime)}.sound-toggle.muted{color:#9eaca6}.sound-toggle.unavailable{color:#e3a15c}.timeline-track{position:relative;height:4px;border-radius:999px;background:#ffffff21}.timeline-track>span{position:absolute;inset:0 auto 0 0;display:block;border-radius:inherit}.timeline-reaction{z-index:1;background:#f6c45366}.timeline-progress{z-index:2;background:var(--lime)}.timeline-progress.collision{background:linear-gradient(90deg,var(--lime),#f6c453 62%,var(--coral))}.timeline-track i{position:absolute;z-index:3;top:50%;width:10px;height:10px;border:2px solid #14211f;border-radius:50%;background:var(--lime);transform:translate(-50%,-50%)}.timeline-track i.collision{background:var(--coral);box-shadow:0 0 0 4px #ff6e5726}.timeline>div:last-child{margin-top:7px;display:flex;justify-content:space-between;color:#71807a;font-size:8px;font-weight:700;text-transform:uppercase}.playback-speeds{padding:3px;display:flex;border-radius:8px;background:#1c2c29}.playback-speeds button{min-width:31px;height:28px;padding:0 5px;border:0;border-radius:6px;background:transparent;color:#71817b;font-size:8px;font-weight:800;cursor:pointer}.playback-speeds button.active{background:#334640;color:#f3f6f2}.outcome-banner{min-height:96px;margin-top:10px;padding:15px 17px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;border:1px solid;border-radius:18px;box-shadow:0 10px 28px #20302b0f}.outcome-banner.safe{border-color:#2bc2a74d;background:linear-gradient(135deg,#edf9f5,#f8fbf5)}.outcome-banner.close{border-color:#c98e214d;background:linear-gradient(135deg,#fff5df,#fffaf0)}.outcome-banner.no-stop{border-color:#cf742352;background:linear-gradient(135deg,#fff1dd,#fff9ed)}.outcome-banner.collision{border-color:#ff6e5752;background:linear-gradient(135deg,#fff0ed,#fff8f5)}.outcome-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:13px}.outcome-banner.safe .outcome-icon{background:#d8f4eb;color:#137e6c}.outcome-banner.close .outcome-icon{background:#ffe7b5;color:#8c601d}.outcome-banner.no-stop .outcome-icon{background:#ffdfad;color:#9a551d}.outcome-banner.collision .outcome-icon{background:#ffd9d2;color:#b23e2d}.outcome-banner>div{min-width:0}.outcome-banner>div>span{display:block;margin-bottom:2px;color:#71807a;font-size:9px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.outcome-banner.collision>div>span{color:#a4483a}.outcome-banner.no-stop>div>span{color:#97561f}.outcome-banner>div>strong{display:block;color:var(--ink);font-family:Manrope,sans-serif;font-size:clamp(18px,2.1vw,25px);font-weight:800;line-height:1.08;letter-spacing:-.04em;font-variant-numeric:tabular-nums}.outcome-banner>div>p{margin:5px 0 0;color:#68756f;font-size:9px;font-weight:600;line-height:1.45}.outcome-object{min-height:32px;padding:0 10px;display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(35,52,47,.1);border-radius:999px;background:#ffffffb8;color:#596660;font-size:9px;font-weight:800;white-space:nowrap}.outcome-banner.collision .outcome-object{border-color:#b23e2d29;color:#984539}.outcome-banner.no-stop .outcome-object{border-color:#9a551d29;color:#8d562b}.result-heading{min-height:86px;padding:21px 2px 13px;display:flex;justify-content:space-between;align-items:center}.confidence-tag{padding:6px 9px;border-radius:999px;background:#e7f5ee;color:#277861;font-size:9px;font-weight:800;text-transform:uppercase}.confidence-tag.confidence-c{background:#fff2dc;color:#93601c}.metrics-grid{display:grid;grid-template-columns:1.4fr 1.4fr 1fr 1fr;gap:10px}.metric-card{position:relative;min-height:126px;padding:18px;overflow:hidden;border:1px solid rgba(33,51,45,.09);border-radius:18px;background:#fff}.metric-card.lime{background:var(--lime)}.metric-card.dark{border-color:var(--ink);background:var(--ink);color:#fff}.metric-icon{position:absolute;top:16px;right:16px;width:32px;height:32px;display:grid;place-items:center;border:1px solid rgba(21,33,31,.12);border-radius:10px;color:#68736f}.metric-card.dark .metric-icon{border-color:#ffffff1f;color:var(--lime)}.metric-value{margin-top:31px;font-family:Manrope,sans-serif;font-size:32px;font-weight:800;line-height:1;letter-spacing:-.055em;font-variant-numeric:tabular-nums}.metric-card.large .metric-value{font-size:clamp(34px,3vw,46px)}.metric-value span{margin-left:5px;color:#75807b;font-family:DM Sans,sans-serif;font-size:11px;font-weight:700;letter-spacing:0}.metric-card.dark .metric-value span{color:#92a09b}.metric-card p{margin:8px 0 0;color:#75817c;font-size:10px;font-weight:700}.metric-card.lime p{color:#556118}.distance-breakdown{margin-top:10px;padding:19px 20px 17px;border:1px solid rgba(33,51,45,.09);border-radius:18px;background:#fff}.breakdown-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.breakdown-heading>div:first-child{display:flex;align-items:baseline;gap:7px}.breakdown-heading span{color:#7e8984;font-size:10px;font-weight:700;text-transform:uppercase}.breakdown-heading strong{font-family:Manrope,sans-serif;font-size:23px;font-weight:800;letter-spacing:-.04em}.breakdown-heading small{color:#8e9893;font-size:10px}.range-estimate{color:#86908c;font-size:10px}.range-estimate strong{margin-left:4px;font-family:DM Sans,sans-serif;font-size:11px;letter-spacing:0}.distance-bar{position:relative;height:22px;margin-top:15px;display:flex;overflow:hidden;border-radius:7px;background:#e7ebe3}.distance-bar>span{position:relative;min-width:1px;display:block}.distance-bar i{position:absolute;left:7px;top:5px;overflow:hidden;color:#28352e;font-size:8px;font-style:normal;font-weight:800;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.reaction-segment{background:repeating-linear-gradient(135deg,#f6c453 0 5px,#f9cf71 5px 10px)}.braking-segment{background:var(--lime);border-left:2px solid #fff}.clearance-segment{border-left:2px solid #fff;background:repeating-linear-gradient(135deg,#d9f3ec 0 5px,#eaf8f3 5px 10px)}.clearance-segment i{color:#277861}.distance-bar>.distance-future-shade{position:absolute;z-index:2;top:0;bottom:0;min-width:0;border-left:1px solid rgba(255,255,255,.8);background:#f4f7f1ad;pointer-events:none;transition:left 45ms linear,width 45ms linear}.distance-bar>.distance-live-marker{position:absolute;z-index:6;top:50%;width:20px;min-width:20px;height:20px;display:grid;place-items:center;border:2px solid rgba(255,255,255,.9);border-radius:50%;background:var(--ink);color:var(--lime);box-shadow:0 2px 7px #13201d47;pointer-events:none;transform:translate(-50%,-50%);transition:left 45ms linear,background .14s ease,color .14s ease}.distance-bar>.distance-live-marker.phase-reaction{color:#f6c453}.distance-bar>.distance-live-marker.phase-impact{background:#9f3527;color:#fff}.distance-bar>.distance-live-marker.phase-stopped{background:#176f60;color:#fff}.distance-bar>.obstacle-marker{position:absolute;z-index:4;top:0;bottom:0;width:3px;min-width:3px;border-radius:0;background:#168b76;box-shadow:0 0 0 1px #ffffffd9;transform:translate(-100%)}.distance-bar>.obstacle-marker.collision{background:var(--coral)}.distance-bar>.obstacle-marker.no-stop{background:#d17a28}.distance-bar>.obstacle-marker i{top:5px;right:6px;left:auto;color:#1f4038}.distance-bar>.obstacle-marker.collision i{right:auto;left:7px;color:#8e3023}.distance-bar>.obstacle-marker.no-stop i{color:#8f501c}.breakdown-scale{margin-top:7px;display:grid;grid-template-columns:1fr 1fr 1fr;color:#9ba39f;font-size:8px}.breakdown-scale span:nth-child(2){text-align:center}.breakdown-scale span:last-child{text-align:right}.result-insight{margin-top:10px;padding:12px 15px;display:flex;align-items:flex-start;gap:10px;border:1px solid rgba(33,51,45,.09);border-radius:14px;background:#f8f9f5}.insight-icon{width:28px;height:28px;flex:0 0 auto;display:grid;place-items:center;border-radius:8px;background:#e8ece5;color:#5e6b65}.result-insight p{margin:2px 0 0;color:#6d7973;font-size:10px;line-height:1.55}.result-insight strong{color:#3e4a46}.analysis-grid{margin-top:20px;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(340px,.5fr);gap:20px}.analysis-card{padding:22px;border:1px solid rgba(33,51,45,.09);border-radius:22px;background:#fff}.card-title-row{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.card-title-row>svg{color:#67746e}.chart-legend{display:flex;align-items:center;gap:14px;color:#7c8782;font-size:9px;font-weight:700}.chart-legend span{display:flex;align-items:center;gap:5px}.chart-legend i{width:8px;height:8px;border-radius:2px}.legend-reaction{background:var(--amber)}.legend-braking{background:var(--lime);border:1px solid #bedf47}.chart-wrap{width:100%;margin-top:14px;overflow:hidden}.chart-wrap svg{width:100%;height:auto;display:block}.chart-grid{stroke:#e7ebe4;stroke-width:1;stroke-dasharray:3 5}.chart-label{fill:#a0a9a4;font-family:DM Sans,sans-serif;font-size:8px;font-weight:600}.chart-label.emphasis{fill:#ae8127;font-weight:800;text-transform:uppercase}.reaction-fill{fill:#f6c4531a}.reaction-line{stroke:#e0ad45;stroke-width:1;stroke-dasharray:4 4}.speed-line{stroke:#22342e;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.cursor-line{stroke:#24a88f;stroke-width:1;stroke-dasharray:2 3}.cursor-point{fill:var(--lime);stroke:#182722;stroke-width:3}.spec-list{margin:19px 0 0}.spec-list>div{min-height:52px;padding:9px 0;display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid #edf0eb}.spec-list dt{color:#7b8681;font-size:10px;font-weight:650}.spec-list dd{margin:0;color:#27342f;font-size:11px;font-weight:750;text-align:right}.spec-list dd small{display:block;color:#9aa39e;font-size:8px;font-weight:600}.spec-note{margin:13px 0 0;padding:9px;display:flex;align-items:flex-start;gap:7px;border-radius:9px;background:#fff6e3;color:#826225;font-size:9px;line-height:1.5}.spec-note svg{flex:0 0 auto}.spec-source{min-height:36px;margin-top:12px;display:inline-flex;align-items:center;gap:6px;color:#397965;font-size:9px;font-weight:750}.database-section{scroll-margin-top:20px;margin-top:76px;padding:34px;border:1px solid rgba(33,51,45,.1);border-radius:28px;background:#fff;box-shadow:var(--shadow)}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px}.section-heading h2{margin:9px 0 5px;font-family:Manrope,sans-serif;font-size:clamp(27px,3vw,42px);line-height:1;letter-spacing:-.05em}.section-heading p{margin:0;color:#78837e;font-size:12px}.database-legend{display:flex;gap:13px;color:#84908a;font-size:9px;font-weight:650}.database-legend span{display:flex;align-items:center;gap:5px}.confidence-dot{width:8px;height:8px;border-radius:50%}.confidence-dot.b{background:var(--teal)}.confidence-dot.c{background:var(--amber)}.database-toolbar{margin-top:28px;padding:12px;display:flex;align-items:center;gap:14px;border:1px solid #e5e9e2;border-radius:16px;background:#f8f9f5}.search-field{width:260px;min-width:230px;height:40px;padding:0 11px;display:flex;align-items:center;gap:8px;border:1px solid #dde2da;border-radius:10px;background:#fff;color:#8a958f}.search-field input{width:100%;border:0;outline:0;background:transparent;color:var(--ink);font-size:11px}.search-field input::placeholder{color:#a3aaa6}.brand-filter{display:flex;gap:5px;overflow-x:auto;scrollbar-width:none}.brand-filter::-webkit-scrollbar{display:none}.brand-filter button{min-height:32px;padding:0 11px;font-size:9px}.catalog-summary{margin:16px 2px 8px;color:#89938f;font-size:9px;font-weight:650;text-transform:uppercase}.catalog-summary strong{color:var(--ink)}.bike-table-wrap{overflow-x:auto;border:1px solid #e4e8e1;border-radius:14px}.bike-table{width:100%;min-width:980px;border-collapse:collapse;text-align:left}.bike-table th{height:40px;padding:0 14px;border-bottom:1px solid #e1e6de;background:#f6f8f3;color:#89938e;font-size:8px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.bike-table td{min-height:62px;padding:11px 14px;border-bottom:1px solid #edf0eb;color:#52605a;font-size:10px;vertical-align:middle}.bike-table tbody tr:last-child td{border-bottom:0}.bike-table tbody tr{transition:background .13s ease}.bike-table tbody tr:hover{background:#fafbf8}.bike-table tbody tr.selected{background:#f7fbe9}.bike-table td:first-child{width:320px}.table-model-cell{display:grid;grid-template-columns:76px minmax(0,1fr);align-items:center;gap:11px}.table-model-cell>div{min-width:0}.bike-reference-image.table{width:76px;height:54px;padding:4px;border:1px solid #e1e6de;border-radius:9px;background:radial-gradient(circle at 50% 60%,rgba(216,255,82,.18),transparent 50%),#f8faf5}.bike-reference-image.table:before{right:15%;bottom:5px;left:15%;height:5px;filter:blur(4px)}.bike-reference-image.table .bike-photo-fallback{border-radius:7px;background:#eef1e9}.table-brand{display:block;margin-bottom:2px;color:#929b96;font-size:8px;font-weight:800;text-transform:uppercase}.bike-table td strong{display:block;color:#27342f;font-family:Manrope,sans-serif;font-size:11px;font-weight:750}.bike-table td small{display:block;margin-top:2px;color:#9aa39e;font-size:8px}.variant-note{display:block;max-width:240px;margin-top:3px;color:#9b7a35;font-size:8px;line-height:1.35}.confidence{width:23px;height:23px;display:inline-grid;place-items:center;border-radius:6px;background:#e6f5ee;color:#237a60;font-size:9px;font-weight:900}.confidence-c{background:#fff1d7;color:#93631f}.source-link{width:26px;height:26px;margin-left:4px;display:inline-grid;place-items:center;color:#7a8680;vertical-align:middle}.table-select{min-width:72px;min-height:32px;padding:0 10px;display:inline-flex;align-items:center;justify-content:center;gap:4px;border:1px solid #dce1d9;border-radius:8px;background:#fff;color:#4e5b56;font-size:9px;font-weight:750;cursor:pointer}.selected .table-select{border-color:var(--ink);background:var(--ink);color:#fff}.database-note{max-width:1000px;margin:14px 2px 0;color:#8a948f;font-size:9px;line-height:1.55}.empty-state{padding:60px 20px;color:#8a948f;text-align:center}.safety-banner{margin:20px 0 70px;padding:30px 34px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:22px;border-radius:24px;background:var(--ink);color:#fff}.safety-symbol{width:58px;height:58px;display:grid;place-items:center;border-radius:16px;background:#263b35;color:var(--amber)}.safety-banner h2{margin:4px 0 3px;font-family:Manrope,sans-serif;font-size:20px;letter-spacing:-.03em}.safety-banner p{max-width:820px;margin:0;color:#95a59f;font-size:10px;line-height:1.55}.safety-banner button{min-height:42px;padding:0 15px;display:inline-flex;align-items:center;gap:7px;border:1px solid rgba(255,255,255,.14);border-radius:11px;background:#263934;color:#e9f0ec;font-size:10px;font-weight:750;cursor:pointer}footer{width:min(1480px,calc(100% - 48px));min-height:92px;margin:0 auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-top:1px solid rgba(38,55,50,.12);color:#85908a;font-size:9px}footer p:last-child{justify-self:end}.brand-mark.compact .logo-disc{width:26px;height:26px;border-width:6px}.brand-mark.compact>span:last-child{font-size:16px}.modal-backdrop{position:fixed;z-index:50;inset:0;padding:24px;display:grid;place-items:center;overflow-y:auto;background:#0a1412a8;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:fadeIn .16s ease}@keyframes fadeIn{0%{opacity:0}}.info-modal{position:relative;width:min(780px,100%);max-height:calc(100vh - 48px);padding:35px;overflow-y:auto;border-radius:24px;background:#fff;box-shadow:0 30px 80px #0000003d}.modal-close{position:absolute;top:20px;right:20px}.icon-button{width:40px;height:40px;display:grid;place-items:center;border:1px solid #e0e5dd;border-radius:10px;background:#fff;cursor:pointer}.info-modal h2{margin:12px 0 6px;font-family:Manrope,sans-serif;font-size:32px;letter-spacing:-.05em}.modal-lede{max-width:650px;margin:0;color:#69756f;font-size:13px;line-height:1.6}.formula-card{margin-top:22px;padding:15px;display:flex;flex-direction:column;gap:7px;border-radius:12px;background:#14211f;color:#fff}.formula-card span{color:#8fa09a;font-size:9px;font-weight:800;text-transform:uppercase}.formula-card code{color:var(--lime);font-size:12px}.method-grid{margin-top:20px;display:grid;grid-template-columns:1fr 1fr;gap:10px}.method-grid>div{padding:15px;border:1px solid #e3e7e0;border-radius:12px}.method-grid h3{margin:0 0 5px;font-family:Manrope,sans-serif;font-size:12px}.method-grid p{margin:0;color:#78837d;font-size:10px;line-height:1.55}.safety-callout{margin-top:18px;padding:13px 14px;display:flex;align-items:flex-start;gap:10px;border-radius:12px;background:#fff2de;color:#805e20}.safety-callout svg{flex:0 0 auto}.safety-callout p{margin:0;font-size:10px;line-height:1.55}.method-links{margin-top:14px;display:flex;flex-wrap:wrap;gap:8px}.method-links a{min-height:34px;padding:0 10px;display:inline-flex;align-items:center;gap:5px;border:1px solid #e0e5dd;border-radius:9px;color:#567068;font-size:9px;font-weight:700}@media(max-width:1180px){.simulator-grid{grid-template-columns:350px minmax(0,1fr)}.control-panel{padding:20px}.metrics-grid{grid-template-columns:repeat(2,1fr)}.metric-card{min-height:115px}.database-toolbar{align-items:stretch;flex-direction:column}.search-field{width:100%}}@media(max-width:900px){.topbar,main,footer{width:min(100% - 28px,760px)}.topbar{grid-template-columns:1fr auto}.topbar nav{display:none}.intro{padding:46px 0 32px;grid-template-columns:1fr;gap:22px}.intro>p{max-width:600px}.simulator-grid{display:flex;flex-direction:column;width:100%;min-width:0}.control-panel,.simulation-panel{width:100%;min-width:0;max-width:100%}.control-panel{order:1}.simulation-panel{order:2;scroll-margin-top:10px}.analysis-grid{grid-template-columns:1fr}.section-heading{align-items:flex-start;flex-direction:column;gap:12px}.database-section{margin-top:46px;padding:24px}.safety-banner{grid-template-columns:auto 1fr}.safety-banner button{grid-column:2;justify-self:start}}@media(max-width:620px){.topbar,main,footer{width:calc(100% - 20px)}.topbar{min-height:62px}.header-status{font-size:0}.intro{padding-top:38px}.intro h1{font-size:clamp(45px,14vw,66px);overflow-wrap:anywhere}.intro h1 span{display:block;max-width:100%;font-size:.8em;white-space:normal}.intro>p{font-size:14px}.scene-card{height:460px;border-radius:20px}.canvas-wrap{inset-bottom:64px}.scene-condition{display:none}.telemetry{right:12px;bottom:78px;left:12px}.telemetry>div{min-width:0;flex:1;padding:8px}.telemetry>div>svg{display:none}.playback-bar{height:64px;padding:0 11px;grid-template-columns:38px minmax(70px,1fr) auto 38px 38px;gap:7px}.playback-speeds button{min-width:28px}.result-heading{padding-right:4px;padding-left:4px}.result-heading h2{font-size:15px}.metrics-grid{grid-template-columns:1fr 1fr}.metric-card{min-height:122px;padding:14px}.metric-card.large .metric-value,.metric-value{font-size:31px}.breakdown-heading{align-items:flex-start;flex-direction:column;gap:7px}.breakdown-scale{font-size:7px}.control-panel{padding-right:18px;padding-left:18px;border-radius:20px}.hazard-card{padding:12px}.obstacle-grid button{min-height:50px}.outcome-banner{min-height:0;padding:14px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:11px;border-radius:15px}.outcome-icon{width:39px;height:39px;border-radius:11px}.outcome-banner>div>strong{font-size:18px}.outcome-object{min-height:28px;grid-column:2;justify-self:start}.distance-bar>.obstacle-marker i{display:none}.analysis-card{padding:17px;border-radius:18px}.chart-legend{display:none}.database-section{padding:19px 14px;border-radius:20px}.database-legend{flex-direction:column;gap:5px}.database-toolbar{padding:9px}.safety-banner{padding:23px 19px;grid-template-columns:1fr;gap:13px}.safety-banner button{grid-column:auto}footer{padding:22px 0;display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 20px}footer p{margin:0}footer>p:first-of-type{width:100%;order:3}.modal-backdrop{padding:10px}.info-modal{max-height:calc(100vh - 20px);padding:28px 20px;border-radius:18px}.info-modal h2{padding-right:40px;font-size:27px}.method-grid{grid-template-columns:1fr}}@media(max-width:420px){.playback-bar{grid-template-columns:38px minmax(70px,1fr) 38px 38px;gap:6px}.playback-speeds{display:none}.reaction-presets{grid-template-columns:repeat(2,minmax(0,1fr))}.reaction-presets button{min-height:42px}.hazard-card-heading>strong{font-size:9px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
