@font-face{font-family:BHD Sans;src:url(../fonts/public-sans-400.woff) format("woff");font-display:swap;font-weight:400}@font-face{font-family:BHD Sans;src:url(../fonts/public-sans-600.woff) format("woff");font-display:swap;font-weight:600}
:root{--v8-bg:#080c11;--v8-surface:#111921;--v8-raised:#16232c;--v8-line:#2a3944;--v8-text:#edf6f5;--v8-muted:#adc0c9;--v8-accent:#42ead5;--v8-warm:#ffb46d;color-scheme:dark}
html{scroll-behavior:smooth}body{background:var(--v8-bg)!important;color:var(--v8-text)!important;font-family:"BHD Sans",system-ui,sans-serif!important;-webkit-font-smoothing:antialiased}
body .bg-darkbg,body .bg-gray-900{background-color:var(--v8-bg)!important}body .bg-card,body .bg-gray-800{background-color:var(--v8-surface)!important}body .text-primary{color:var(--v8-accent)!important}body .border-primary{border-color:var(--v8-accent)!important}body .bg-primary{background-color:var(--v8-accent)!important;color:#06201e!important}
body .text-gray-400{color:var(--v8-muted)!important}body .text-gray-500{color:#9aaeb9!important}body .border-gray-700,body .border-gray-800{border-color:var(--v8-line)!important}
body input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),body textarea,body select{background-color:#0c141c!important;border-color:#354b57!important;color:var(--v8-text)!important;border-radius:9px}
body input::placeholder,body textarea::placeholder{color:#8b9fac!important}body button,body a{touch-action:manipulation}body :focus-visible{outline:2px solid var(--v8-accent)!important;outline-offset:4px}body h1{letter-spacing:-.045em!important;line-height:1.1}body h2{letter-spacing:-.03em}body main{min-width:0}body main>header{border-color:var(--v8-line)!important}
body aside{background:#0d141c!important;border-color:var(--v8-line)!important}body aside a{border-radius:9px!important}body aside a:hover{background:#182831!important}body aside a.bg-primary\/10{background:#163b3b!important;border-color:#276c65!important}
body .login-card{background:#101a23!important;backdrop-filter:none!important;border:1px solid #344b57!important;box-shadow:0 24px 100px #0007!important}body .login-card:before{display:none!important}
.bhd-sidebar-language{padding:14px 18px;border-top:1px solid var(--v8-line)}.bhd-language{display:flex;align-items:center;gap:8px;color:var(--v8-muted);font-size:12px}.bhd-language select{width:100%;max-width:190px;padding:9px 12px;border:1px solid var(--v8-line)}
.bhd-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}
.v8-main{margin-inline-start:256px;padding:32px;min-height:100vh}.v8-wrap{max-width:1480px;margin:auto}.v8-top{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin:8px 0 30px}.v8-top h1{font-size:clamp(30px,3.5vw,48px);font-weight:600;margin:0 0 14px}.v8-top p{color:var(--v8-muted);font-size:14px;line-height:1.7;max-width:720px;margin:0}
.v8-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:20px;align-items:start}.v8-card{background:var(--v8-surface);border:1px solid var(--v8-line);border-radius:15px;padding:24px}.v8-card h2{font-size:20px;font-weight:600;margin:0 0 15px}.v8-card p{font-size:13px;line-height:1.7;color:var(--v8-muted)}
.v8-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:18px}.v8-button,.v8-file-label{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:12px 17px;font-size:13px;font-weight:600;border:1px solid #348d83;border-radius:9px;background:var(--v8-accent);color:#062320;cursor:pointer;text-decoration:none;min-height:44px}.v8-button.secondary{background:#172832;color:var(--v8-text);border-color:#38525e}.v8-button:disabled{cursor:wait;opacity:.55}
.v8-file-label input{position:absolute;width:1px;height:1px;opacity:0}.v8-file-label:focus-within{outline:2px solid #fff;outline-offset:3px}.v8-meta{font-size:12px;color:var(--v8-muted);line-height:1.6}.v8-muted{color:var(--v8-muted)}.v8-count{padding:8px 12px;border:1px solid #32675f;border-radius:8px;font-size:12px;color:#b6fff0;background:#17332f}
.v8-plot{width:100%;height:420px;display:block;background:#0a1118;border:1px solid var(--v8-line);border-radius:10px;touch-action:none}.v8-plot-controls{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:14px}.v8-plot-controls label{font-size:12px;color:var(--v8-muted);display:flex;align-items:center;gap:8px}.v8-plot-controls input{width:110px;padding:7px 9px}.v8-cursor{min-height:24px;font-size:12px;font-variant-numeric:tabular-nums;color:#d4eee8;margin:12px 0}.v8-channels{max-height:520px;overflow:auto;display:flex;flex-direction:column;gap:2px}.v8-channel{display:flex;gap:10px;align-items:flex-start;padding:10px 7px;font-size:12px;line-height:1.5;border-bottom:1px solid #22313a;cursor:pointer}.v8-channel input{margin-top:3px;accent-color:var(--v8-accent)}.v8-channel small{display:block;color:var(--v8-muted);font-variant-numeric:tabular-nums}
.v8-report{white-space:pre-wrap;line-height:1.85;font-size:14px;overflow-wrap:anywhere}.v8-message{margin:12px 0;padding:13px 16px;border:1px solid #52616a;background:#1c2c34;border-radius:9px;font-size:13px;line-height:1.7}.v8-message.error{background:#381b20;border-color:#a65866;color:#ffd8dd}.v8-message.success{background:#15342e;border-color:#388672;color:#d8fff1}.v8-empty{padding:52px 20px;text-align:center;border:1px dashed #42535f;border-radius:10px;color:var(--v8-muted);font-size:14px;line-height:1.7}.v8-settings{display:flex;flex-wrap:wrap;gap:14px;margin:20px 0}.v8-settings label{display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--v8-muted)}.v8-settings select{padding:8px;border:1px solid var(--v8-line);min-width:140px}
.v8-terminal{height:160px;width:100%;border:1px solid #31524f;background:#081311;border-radius:12px;display:block}.v8-analysis-stage{display:flex;align-items:center;gap:10px;color:#b5fff0;font-size:12px;line-height:1.6;margin-top:12px}.v8-dot{width:7px;height:7px;flex:none;border-radius:50%;background:var(--v8-accent);box-shadow:0 0 16px #42ead599}
.v8-spinner{display:inline-block;width:17px;height:17px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:v8spin .65s linear infinite;vertical-align:middle}.bhd-submit-busy{display:flex;gap:10px;align-items:center;justify-content:center}#mainForm[aria-busy=true] button[type=submit]{opacity:.8;cursor:wait}
#ecu-loading-progress{display:none!important}#ecu-loading .w-full.bg-gray-700{display:none}body [id=ecu-confidence]{text-transform:none;letter-spacing:normal}
.v8-auth{min-height:100vh;display:grid;place-items:center;padding:30px}.v8-auth-card{width:min(100%,480px);padding:36px;background:#111d26;border:1px solid #3b5360;border-radius:18px}.v8-auth-card h1{font-size:35px;margin:20px 0}.v8-auth-card p{color:var(--v8-muted);font-size:14px;line-height:1.75}.v8-auth-card label{display:block;font-size:13px;margin:19px 0 8px}.v8-auth-card input{display:block;width:100%;padding:13px;border:1px solid #455b68}.v8-auth-card button{margin:24px 0 14px;width:100%}.v8-auth-card a{color:var(--v8-accent);font-size:13px}.v8-auth-top{display:flex;justify-content:space-between;align-items:center}.v8-auth-logo{font-size:19px;font-weight:600;letter-spacing:-.04em}.v8-auth-top .bhd-language select{max-width:130px}
[dir=rtl] .md\:ml-64{margin-left:0!important;margin-right:16rem}[dir=rtl] #mobile-sidebar{left:auto;right:0}[dir=rtl] #mobile-sidebar.-translate-x-full{transform:translateX(100%)}[dir=rtl] aside .mr-3{margin-right:0;margin-left:.75rem}
@keyframes v8spin{to{transform:rotate(360deg)}}
@media(max-width:1100px){.v8-layout{grid-template-columns:minmax(0,1fr) 260px}.v8-main{padding:25px}.v8-card{padding:18px}}
@media(max-width:767px){.v8-main{margin-inline-start:0;padding:82px 15px 100px}.v8-top{display:block}.v8-top .v8-count{display:inline-block;margin-top:15px}.v8-layout{grid-template-columns:1fr}.v8-plot{height:310px}.v8-channels{max-height:260px}.v8-settings label,.v8-settings select{flex:1}.v8-auth-card{padding:24px}[dir=rtl] .md\:ml-64{margin-right:0!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.v8-spinner{animation:none}.v8-dot{box-shadow:none}}
.bhd-scan-canvas{display:block;width:100%;height:190px;border-radius:12px;margin-bottom:14px;border:1px solid #23454d}.bhd-language-float{position:fixed;inset-inline-end:18px;bottom:20px;z-index:90}.bhd-language-float select{background:#111c25;color:#ddf4f2;border:1px solid #38535d;border-radius:9px;padding:8px;max-width:130px} .bhd-language{display:block;margin:8px 12px}.bhd-language select{width:100%;padding:9px;border:1px solid #34505b;border-radius:8px;background:#0a161e;color:#dcefee}.v8-tag{display:inline-flex;align-items:center;padding:5px 9px;border:1px solid #2d4852;border-radius:6px;font:11px ui-monospace,monospace;color:#42ead5}.v8-status-dot{width:6px;height:6px;background:#42ead5;box-shadow:0 0 14px #42ead566;border-radius:50%;display:inline-block;margin-inline-end:7px}.v8-filedrop{display:grid;gap:12px;min-height:160px;border:1px dashed #3e6871;background:linear-gradient(120deg,#102329,#101921);border-radius:14px;padding:26px;position:relative;overflow:hidden}.v8-filedrop input{max-width:100%}.v8-data-table{width:100%;border-collapse:collapse;font-size:12px;text-align:start}.v8-data-table th,.v8-data-table td{padding:12px;border-bottom:1px solid #263942;text-align:start}.v8-data-table th{color:#a8c5cc;font-weight:500}.v8-unit-note{font-size:12px;color:#a8c5cc}.v8-channel{display:grid;grid-template-columns:auto 1fr;gap:9px;padding:12px;border-bottom:1px solid #293840}.v8-channel small{display:block;color:#9bb4c0;font-variant-numeric:tabular-nums;margin-top:5px}.v8-check{accent-color:#42ead5}.v8-loader{display:flex;gap:10px;align-items:center;color:#42ead5}.v8-stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.v8-stat{border:1px solid #293d45;border-radius:10px;padding:14px;background:#0d171e}.v8-stat strong{display:block;font-size:22px;margin-top:7px}.v8-auth-brand{font-size:13px;letter-spacing:.12em;color:#42ead5}.v8-auth input{width:100%;box-sizing:border-box}.v8-auth label{display:block;margin:20px 0 8px;color:#b4c7d1}.v8-auth button{width:100%;margin-top:24px}.v8-auth nav{display:flex;gap:18px;flex-wrap:wrap;margin-top:20px}.v8-field{display:grid;gap:6px}.v8-field select,.v8-field input{width:100%;min-height:40px}.v8-cursor{min-height:36px;display:flex;gap:15px;align-items:center;flex-wrap:wrap;font:12px ui-monospace,monospace;color:#d8ebed}.v8-cursor span{white-space:nowrap}.v8-hscroll{overflow:auto}button:disabled{cursor:wait;opacity:.65}@media(max-width:767px){.bhd-language-float{bottom:78px;inset-inline-end:12px}.v8-stat-grid{grid-template-columns:1fr}.v8-toolbar{flex-wrap:wrap}}

.v8-main h1{font-size:clamp(28px,3.4vw,43px);font-weight:600;margin:12px 0 14px}.v8-eyebrow{font:11px ui-monospace,monospace!important;letter-spacing:.16em;text-transform:uppercase;color:#76a4ac!important;margin:0 0 12px!important}.v8-toolbar{justify-content:space-between}.v8-toolbar>div:first-child>p{max-width:700px}.v8-terminal:where(dl){height:auto;min-height:260px;padding:18px;display:grid;grid-template-columns:120px minmax(0,1fr);align-content:start;gap:14px;font:12px ui-monospace,monospace;box-sizing:border-box}.v8-terminal dt{color:#86adb5}.v8-terminal dd{margin:0;overflow-wrap:anywhere}.v8-plot{touch-action:pan-y}.v8-dashboard-hero{display:grid;grid-template-columns:minmax(0,1fr) 35%;gap:30px;min-height:270px;border:1px solid #2c4850;background:linear-gradient(110deg,#142a30,#0c1820 65%);border-radius:20px;padding:36px;margin-bottom:28px;overflow:hidden;position:relative}.v8-dashboard-hero h1{font-size:clamp(32px,3.8vw,54px);font-weight:600;line-height:1.05;max-width:650px;margin:12px 0 18px}.v8-dashboard-hero p{color:#acc7ce;font-size:14px;line-height:1.7;max-width:580px}.v8-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.v8-calibration-art{display:flex;align-items:center;justify-content:center;position:relative;min-height:220px;perspective:600px}.v8-calibration-art svg{width:100%;height:auto;transform:rotateX(22deg) rotateZ(-10deg);filter:drop-shadow(0 14px 24px #31e8c82a)}.v8-calibration-art:after{content:'BHD / CALIBRATION LAB';position:absolute;bottom:0;font:9px ui-monospace,monospace;letter-spacing:.2em;color:#668d98}.v8-dashboard .bg-gradient-to-r.from-blue-900{background:#111d26!important;border-color:#31515a!important}.v8-dashboard main .shadow-lg,.v8-dashboard main .shadow-xl{box-shadow:none!important}.v8-dashboard .grid>a:hover{border-color:#42ead5!important;box-shadow:0 8px 25px #0003!important}.v8-dashboard aside h1{font-size:16px!important}.v8-tools-shortcuts{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0}.v8-tools-shortcuts a{font-size:12px;padding:10px 14px;border:1px solid #324650;background:#111c24;border-radius:9px;color:#c2d8df}.v8-tools-shortcuts a:hover{color:#42ead5;border-color:#42988f}.v8-grid-sweep{animation:v8sweep 4s ease-in-out infinite alternate;opacity:.8}@keyframes v8sweep{from{opacity:.35}to{opacity:1}}@media(prefers-reduced-motion:reduce){.v8-grid-sweep{animation:none}}@media(max-width:767px){.v8-dashboard-hero{grid-template-columns:1fr;padding:24px}.v8-calibration-art{display:none}.v8-dashboard main>.p-8{padding:20px 15px}.v8-dashboard-hero h1{font-size:36px}}

.v8-dashboard main a.bg-primary .text-white,.v8-dashboard main a.bg-primary .text-blue-100{color:#06201e!important}.v8-dashboard main a.bg-primary>div.mt-4{color:#06201e!important;background:#ffffff44!important}.bhd-spinner,.v8-spinner{flex:none}.v8-settings{display:block}.v8-auth{box-sizing:border-box}.v8-auth-card{box-sizing:border-box}dl.v8-terminal dd{unicode-bidi:plaintext}.v8-message[hidden],#log-results[hidden]{display:none!important}
