
:root{
 --bg:#030506;--panel:#080d10;--panel2:#0d1317;--line:rgba(255,255,255,.10);
 --bronze:#d89a43;--bronze2:#f1b45d;--text:#f4f6f7;--muted:#929ba1;
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:Inter,Arial,sans-serif}
button,input,select,textarea{font:inherit}button{touch-action:manipulation}
#portal{min-height:100vh}
.shell{min-height:100vh;display:grid;grid-template-columns:238px minmax(0,1fr);grid-template-rows:74px minmax(0,1fr)}
.top{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 18px;border-bottom:1px solid var(--line);background:#05080a;position:sticky;top:0;z-index:40}
.brand{display:flex;align-items:center;gap:12px}.brand img{width:136px;height:50px;object-fit:contain}.brand b{display:block;color:var(--bronze2);font-size:12px;letter-spacing:.1em}.brand small{display:block;color:var(--muted);font-size:7px;margin-top:3px}
.topactions{display:flex;gap:7px}.btn{min-height:40px;border:1px solid #344148;border-radius:8px;background:#070b0e;color:#eef1f2;padding:0 13px;font-size:8px;font-weight:850;cursor:pointer}.btn.gold{border-color:#d99d47;background:linear-gradient(180deg,#f1b55d,#9b692d);color:#080604}.btn.red{border-color:#743838;color:#ffc2c2}.btn:disabled{opacity:.45;cursor:not-allowed}
.side{grid-column:1;grid-row:2;padding:14px;border-right:1px solid var(--line);background:#05080a;display:flex;flex-direction:column;gap:6px;position:sticky;top:74px;height:calc(100vh - 74px)}
.side button{min-height:47px;border:1px solid transparent;border-radius:9px;background:transparent;color:#c9ced1;padding:0 11px;text-align:left;cursor:pointer}.side button.active,.side button:hover{border-color:#4d3a22;background:#120e09;color:var(--bronze2)}.grow{flex:1}
.main{grid-column:2;grid-row:2;padding:12px;min-width:0}.page{max-width:1540px;margin:0 auto;display:grid;gap:9px}
.hero{height:346px;position:relative;overflow:hidden;border:1px solid var(--line);border-radius:15px;background:#080d10}.hero img{width:100%;height:100%;object-fit:cover;display:block}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,4,5,.88),rgba(2,4,5,.46) 50%,rgba(2,4,5,.06))}
.copy{position:absolute;left:29px;top:29px;z-index:2;max-width:670px}.kicker{color:var(--bronze2);font-size:7px;letter-spacing:.14em;font-weight:900}.hero h1{font-size:44px;line-height:.94;margin:8px 0 13px;letter-spacing:-.04em}.hero h1 em{font-style:normal;color:var(--bronze2)}.hero p{font-size:10px;line-height:1.65;color:#d0d5d7;max-width:610px}.heroactions{display:flex;gap:8px;margin-top:16px}
.rolebadge{position:absolute;right:18px;bottom:16px;z-index:2;border:1px solid rgba(216,154,67,.45);border-radius:9px;background:rgba(4,7,9,.84);padding:10px 13px;text-align:right}.rolebadge b{display:block;color:var(--bronze2);font-size:12px}.rolebadge small{font-size:7px;color:#a6adb2}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.stat,.card{border:1px solid var(--line);border-radius:10px;background:var(--panel);padding:12px}.stat span{display:block;color:var(--muted);font-size:7px}.stat b{display:block;color:var(--bronze2);font-size:21px;margin:3px 0}.stat small{font-size:7px;color:#9aa2a7}
.quick{display:grid;grid-template-columns:repeat(6,1fr);gap:7px}.quick button{min-height:108px;border:1px solid var(--line);border-radius:10px;background:linear-gradient(180deg,#0d1215,#070a0c);color:#fff;text-align:left;padding:12px;cursor:pointer}.quick button:hover{border-color:var(--bronze)}.quick i{display:block;color:var(--bronze2);font-style:normal;font-size:20px;margin-bottom:8px}.quick b{display:block;font-size:9px}.quick span{display:block;color:var(--muted);font-size:7px;line-height:1.45;margin-top:4px}
.grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:9px}.head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.head h2{margin:3px 0}.note{font-size:8px;color:var(--muted);line-height:1.55}
.list{display:grid;gap:6px}.order{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;border:1px solid var(--line);border-radius:9px;background:#05080a;padding:11px}.order h3{font-size:11px;margin:5px 0 3px}.order p,.order small{font-size:7px;color:#9ca4a9;margin:0}.order strong{color:var(--bronze2)}
.tags{display:flex;gap:5px;flex-wrap:wrap}.tags span{font-size:6px;border:1px solid #4c3920;border-radius:999px;padding:4px 6px;color:var(--bronze2)}
.flow{display:grid;gap:7px;margin-top:9px}.flow span{display:grid;grid-template-columns:24px 1fr;gap:7px;align-items:center;font-size:8px;color:#c3c8cb}.flow b{width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:#24190d;color:var(--bronze2)}
.form{display:grid;gap:10px}.formgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.form label{font-size:7px;color:#aab2b7}.form input,.form select,.form textarea,.search{width:100%;margin-top:5px;border:1px solid #303a40;border-radius:8px;background:#05080a;color:#fff;padding:11px}.form textarea{min-height:92px}.wide{grid-column:1/-1}
.stagegrid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.stage{min-height:116px;border:1px solid var(--line);border-radius:10px;background:#070b0d;color:#fff;text-align:left;padding:12px;cursor:pointer}.stage.active{border-color:var(--bronze2);background:#120e09}.stage h3{margin:7px 0}.stage b{color:var(--bronze2)}
.optgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.opt{border:1px solid var(--line);border-radius:9px;background:#070a0c;color:#fff;padding:10px;display:grid;grid-template-columns:1fr auto;gap:8px;text-align:left;cursor:pointer}.opt.active{border-color:var(--bronze);background:#110d08}.opt b{color:var(--bronze2)}
.vehicles{display:grid;gap:6px;max-height:520px;overflow:auto;margin-top:10px}.vehicle{display:flex;justify-content:space-between;gap:10px;border:1px solid var(--line);border-radius:9px;background:#06090b;color:#fff;padding:10px;text-align:left;cursor:pointer}.vehicle:hover{border-color:var(--bronze)}.vehicle small{display:block;color:var(--muted);margin-top:3px}
.file{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;border:1px solid var(--line);border-radius:8px;padding:10px;margin-top:6px}.empty{padding:24px;border:1px dashed #39444a;border-radius:9px;text-align:center;color:#98a0a6}
.mnav{display:none}
.login{min-height:100vh;display:grid;place-items:center;padding:18px}.loginbox{width:min(460px,94vw);border:1px solid var(--line);border-radius:14px;background:#080c0f;padding:20px}.loginbox img{width:180px;display:block;margin:0 auto 14px}.loginbox h1{text-align:center;margin:0 0 5px}.loginbox p{text-align:center;color:var(--muted);font-size:9px}.loginbox label{display:block;font-size:8px;color:#aab2b7;margin-top:9px}.loginbox input{width:100%;margin-top:5px;border:1px solid #303a40;border-radius:8px;background:#05080a;color:#fff;padding:12px}.loginbox .btn{width:100%;margin-top:12px}
@media(max-width:1180px){.quick{grid-template-columns:repeat(3,1fr)}.grid{grid-template-columns:minmax(0,1fr) 285px}}
@media(max-width:820px){.shell{display:block;padding-bottom:70px}.top{height:66px}.side{display:none}.main{padding:7px}.hero{height:430px}.copy{left:17px;right:17px;top:22px}.hero h1{font-size:34px}.rolebadge{left:17px;right:auto}.stats{grid-template-columns:1fr 1fr}.quick{grid-template-columns:1fr 1fr}.grid{grid-template-columns:1fr}.formgrid{grid-template-columns:1fr 1fr}.stagegrid{grid-template-columns:1fr 1fr}.optgrid{grid-template-columns:1fr 1fr}.mnav{position:fixed;left:0;right:0;bottom:0;z-index:60;height:64px;background:#06090b;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(5,1fr)}.mnav button{border:0;background:transparent;color:#aab1b5;font-size:7px}.mnav button.active{color:var(--bronze2)}}
@media(max-width:520px){.heroactions{display:grid}.heroactions .btn{width:100%}.quick{grid-template-columns:1fr}.formgrid,.stagegrid,.optgrid{grid-template-columns:1fr}.order{grid-template-columns:1fr}.top .brand div{display:none}}

/* v31 — Tuner is a pure File-Service portal */
.t31-page{max-width:1240px;margin:0 auto;display:grid;gap:10px}
.t31-hero{border:1px solid var(--line);border-radius:15px;background:linear-gradient(135deg,#0a0f12,#05080a);padding:22px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center}
.t31-hero h1{margin:5px 0 8px;font-size:34px;line-height:1}.t31-hero h1 em{font-style:normal;color:var(--bronze2)}.t31-hero p{margin:0;color:#cbd1d4;font-size:9px;line-height:1.6;max-width:720px}
.t31-flow{display:grid;grid-template-columns:repeat(5,1fr);gap:7px}
.t31-step{border:1px solid var(--line);border-radius:10px;background:#080d10;padding:11px;min-height:86px}.t31-step b{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#24190d;color:var(--bronze2);margin-bottom:7px}.t31-step span{display:block;font-size:8px;font-weight:800}.t31-step small{display:block;font-size:7px;color:var(--muted);margin-top:4px;line-height:1.4}
.t31-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.t31-action{min-height:105px;border:1px solid var(--line);border-radius:11px;background:linear-gradient(180deg,#0d1215,#070a0c);color:#fff;padding:13px;text-align:left;cursor:pointer}.t31-action:hover{border-color:var(--bronze)}.t31-action i{display:block;color:var(--bronze2);font-style:normal;font-size:22px;margin-bottom:9px}.t31-action b{display:block;font-size:10px}.t31-action span{display:block;font-size:7px;color:var(--muted);margin-top:4px}
.t31-order{border:1px solid var(--line);border-radius:10px;background:#06090b;padding:12px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center}.t31-order h3{margin:5px 0 3px;font-size:11px}.t31-order p,.t31-order small{margin:0;font-size:7px;color:var(--muted)}.t31-order-right{display:grid;gap:7px;justify-items:end}.t31-status{display:flex;gap:5px;flex-wrap:wrap}.t31-status span{font-size:6px;border:1px solid #4b3920;border-radius:999px;padding:4px 6px;color:var(--bronze2)}
.t31-form{display:grid;gap:10px}.t31-section{border:1px solid var(--line);border-radius:11px;background:var(--panel);padding:13px}.t31-section h2{margin:4px 0 10px}
.t31-search{display:grid;grid-template-columns:1fr auto;gap:7px}.t31-results{display:grid;gap:6px;max-height:320px;overflow:auto;margin-top:8px}.t31-vehicle{display:flex;justify-content:space-between;gap:10px;border:1px solid var(--line);border-radius:9px;background:#05080a;color:#fff;padding:10px;text-align:left;cursor:pointer}.t31-vehicle.selected{border-color:var(--bronze2);background:#120e09}.t31-vehicle small{display:block;color:var(--muted);margin-top:3px}
.t31-stagegrid{display:grid;grid-template-columns:repeat(5,1fr);gap:7px}.t31-stage{min-height:98px;border:1px solid var(--line);border-radius:10px;background:#070b0d;color:#fff;padding:11px;text-align:left;cursor:pointer}.t31-stage.active{border-color:var(--bronze2);background:#120e09}.t31-stage b{display:block;color:var(--bronze2);margin-top:8px}
.t31-optgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.t31-opt{border:1px solid var(--line);border-radius:9px;background:#070a0c;color:#fff;padding:10px;display:grid;grid-template-columns:1fr auto;gap:8px;text-align:left;cursor:pointer}.t31-opt.active{border-color:var(--bronze);background:#110d08}.t31-opt b{color:var(--bronze2)}
.t31-tech{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.t31-tech label,.t31-upload label{font-size:7px;color:#aab2b7}.t31-tech input,.t31-tech select,.t31-tech textarea,.t31-upload input{width:100%;margin-top:5px;border:1px solid #303a40;border-radius:8px;background:#05080a;color:#fff;padding:11px}.t31-tech textarea{min-height:90px}.t31-wide{grid-column:1/-1}
.t31-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center}.t31-price strong{font-size:26px;color:var(--bronze2)}
.t31-download{border:1px solid var(--line);border-radius:9px;background:#05080a;padding:11px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}.t31-download small{display:block;color:var(--muted);margin-top:3px}
@media(max-width:900px){.t31-flow{grid-template-columns:1fr 1fr 1fr}.t31-stagegrid{grid-template-columns:1fr 1fr}.t31-optgrid{grid-template-columns:1fr 1fr}.t31-tech{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.t31-hero{grid-template-columns:1fr}.t31-actions{grid-template-columns:1fr}.t31-flow{grid-template-columns:1fr}.t31-stagegrid,.t31-optgrid,.t31-tech{grid-template-columns:1fr}.t31-order,.t31-summary,.t31-download{grid-template-columns:1fr}.t31-order-right{justify-items:start}.t31-search{grid-template-columns:1fr}}

/* v38 full vehicle database + complete options */
.vehicle-filters{display:grid;grid-template-columns:220px minmax(0,1fr);gap:8px}
.vehicle-full{align-items:flex-start}
.vehicle-main{min-width:0;display:grid;gap:3px}
.vehicle-main small{line-height:1.45}
.vehicle-main strong{color:var(--bronze2)}
.vehicle-ecu{min-width:155px;text-align:right;display:grid;gap:4px}
.vehicle-ecu b{color:var(--bronze2);font-size:7px;letter-spacing:.08em}
.vehicle-ecu small{font-size:7px;color:#abb2b6}
.opt small,.t31-opt small{display:block;color:var(--muted);font-size:6px;margin-top:3px;line-height:1.3}

/* One clear option illustration system in Community, Werkstatt and Tuner. */
.opt,.t31-opt{grid-template-columns:52px minmax(0,1fr) auto;align-items:center;min-height:68px}
.opt>img,.t31-opt>img{width:52px;height:52px;object-fit:cover;border-radius:9px;border:1px solid #30363b}
.opt>strong,.t31-opt>strong{color:var(--bronze2);white-space:nowrap}
@media(max-width:520px){
 .opt,.t31-opt{grid-template-columns:48px minmax(0,1fr) auto;padding:8px;gap:7px}
 .opt>img,.t31-opt>img{width:48px;height:48px}
 .opt>strong,.t31-opt>strong{font-size:9px}
}
@media(max-width:720px){
  .vehicle-filters{grid-template-columns:1fr}
  .vehicle-full{display:grid;grid-template-columns:1fr}
  .vehicle-ecu{text-align:left;min-width:0;border-top:1px solid var(--line);padding-top:7px;margin-top:4px}
}

/* v39 selectable vehicle hierarchy + stage PS/Nm */
.vehicle-select-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.vehicle-select-grid label{font-size:7px;color:#aab2b7}
.power-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:9px}
.power-strip span{border:1px solid var(--line);border-radius:8px;background:#05080a;padding:8px}
.power-strip span b{display:block;color:var(--muted);font-size:6px;text-transform:uppercase;letter-spacing:.08em}
.power-strip span strong{display:block;color:var(--bronze2);font-size:10px;margin-top:3px}
.stage small,.t31-stage small{display:block;color:var(--muted);font-size:6px;margin-top:6px}
.t31-stage strong{display:block;color:var(--bronze2);font-size:8px;margin-top:7px}
@media(max-width:820px){.vehicle-select-grid{grid-template-columns:1fr 1fr}.power-strip{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.vehicle-select-grid,.power-strip{grid-template-columns:1fr}}

/* v40 picker reliability */
.vehicle-select-grid select:disabled{opacity:.5}
.vehicle-select-grid option{background:#05080a;color:#fff}

/* v41 automatic Workshop travel calculation */
.travel-box{border:1px solid rgba(216,154,67,.38);border-radius:10px;background:#0b0a08;padding:12px}
.travel-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-top:8px}
.travel-grid span,.price-summary span{border:1px solid var(--line);border-radius:8px;background:#05080a;padding:9px}
.travel-grid b,.price-summary b{display:block;color:var(--muted);font-size:6px;text-transform:uppercase;letter-spacing:.07em}
.travel-grid strong,.price-summary strong{display:block;color:var(--bronze2);font-size:11px;margin-top:4px}
.price-summary{display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:7px}
.price-summary .total{border-color:var(--bronze);background:#120e09}
.price-summary .total strong{font-size:16px}
@media(max-width:720px){.travel-grid{grid-template-columns:1fr 1fr}.price-summary{grid-template-columns:1fr}}

/* v42 profile invoices + diagram documents */
.doc-list{display:grid;gap:7px}
.doc-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid var(--line);border-radius:9px;background:#05080a;padding:11px}
.doc-row b{font-size:9px}.doc-row small{display:block;color:var(--muted);font-size:7px;margin-top:3px}.doc-row strong{color:var(--bronze2)}
@media(max-width:560px){.doc-row{grid-template-columns:1fr}}

/* v45 country selector */
.formgrid select{width:100%;background:#080b0d;color:#fff;border:1px solid var(--line);border-radius:8px;padding:10px}
.workshop-order-side{display:flex;flex-direction:column;align-items:flex-end;gap:10px}.workshop-order-side .btn{white-space:nowrap}.workshop-order small{display:block;margin-top:4px}.appointment-row strong{max-width:220px;text-align:right}
@media(max-width:720px){.workshop-order{align-items:stretch!important}.workshop-order-side{align-items:stretch}.workshop-order-side strong{text-align:left}.appointment-row strong{max-width:none;text-align:left}}

@media(max-width:820px){.mnav.partner-nav{display:flex;overflow-x:auto;justify-content:flex-start;gap:4px}.mnav.partner-nav button{flex:0 0 auto;min-width:88px;padding:6px 12px;font-size:10px;white-space:nowrap}.mnav.partner-nav button[data-nav="diagrams"]{min-width:145px}}
