:root{--bg:#071014;--panel:#0d1a20;--panel2:#12252d;--text:#eaf7f6;--muted:#8da5a9;--line:#1f3a44;--accent:#00e0a4;--amber:#ffc857;--danger:#ff5c7a;--blue:#39a7ff}*{box-sizing:border-box}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:radial-gradient(circle at top left,#12323a,#071014 45%,#05090b);color:var(--text)}.shell{min-height:100vh;display:flex}.sidebar{width:290px;background:linear-gradient(180deg,#0b1c22,#071014);border-right:1px solid var(--line);padding:22px;position:sticky;top:0;height:100vh}.brand{display:flex;gap:13px;align-items:center;margin-bottom:30px}.brand-icon{width:48px;height:48px;border-radius:16px;background:linear-gradient(135deg,var(--accent),var(--blue));display:grid;place-items:center;font-size:24px;box-shadow:0 0 30px #00e0a433}.brand h1{margin:0;font-size:23px}.brand p{margin:3px 0 0;color:var(--muted);font-size:12px}.nav{width:100%;text-align:left;margin:7px 0;padding:13px 14px;border:1px solid transparent;border-radius:14px;background:transparent;color:var(--muted);cursor:pointer;font-weight:700}.nav:hover,.nav.active{background:#10252d;color:var(--text);border-color:#1f4751}.status-card{margin-top:26px;padding:14px;border:1px solid var(--line);border-radius:16px;background:#0a171c;color:var(--muted);font-size:13px}.dot{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--amber);margin-right:8px}.dot.ok{background:var(--accent);box-shadow:0 0 15px var(--accent)}.main{flex:1;padding:24px;max-width:1500px}.topbar{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:22px}.topbar h2{margin:0;font-size:32px}.topbar p{margin:5px 0;color:var(--muted)}.authbox{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.input{background:#09171c;border:1px solid var(--line);border-radius:13px;color:var(--text);padding:12px 13px;outline:none}.input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #00e0a422}.authbox .input{width:190px}.btn{border:1px solid #27505c;border-radius:13px;background:#112830;color:var(--text);padding:12px 14px;font-weight:800;cursor:pointer}.btn:hover{filter:brightness(1.15)}.btn.primary{background:linear-gradient(135deg,#00a878,var(--accent));color:#03100d;border:0}.btn.danger{background:#32111a;color:#ffd9df;border-color:#6b2030}.view{display:none}.view.active{display:block}.hero,.panel{background:linear-gradient(145deg,#0d1a20,#0a1519);border:1px solid var(--line);border-radius:24px;padding:24px;box-shadow:0 20px 60px #00000035}.hero{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.hero h3{font-size:28px;margin:0 0 8px}.hero p{color:var(--muted);margin:0}.hero-badge{border:1px solid #00e0a466;color:var(--accent);padding:10px 13px;border-radius:999px;font-weight:900}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.stat{background:#0c1b21;border:1px solid var(--line);border-radius:20px;padding:20px}.stat b{font-size:30px;display:block}.stat span{color:var(--muted)}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px}.toolbar{display:flex;gap:10px;align-items:center;margin-bottom:15px;flex-wrap:wrap}.grow{flex:1;min-width:260px}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:14px}.card{position:relative;background:linear-gradient(180deg,#10242b,#0b171c);border:1px solid var(--line);border-radius:20px;padding:16px;overflow:hidden}.card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--accent),var(--blue))}.card h3{margin:6px 0 8px;font-size:18px}.meta{display:flex;gap:6px;flex-wrap:wrap;margin:9px 0}.pill{font-size:12px;border:1px solid #2a4e58;border-radius:999px;color:#bdd2d5;padding:5px 8px;background:#0a181d}.muted{color:var(--muted)}.small{font-size:12px}.part-img{width:100%;height:150px;object-fit:cover;border-radius:14px;margin-bottom:10px;background:#071014;border:1px solid var(--line)}.card-actions{display:flex;gap:8px;margin-top:12px}.mini-results{display:grid;gap:8px;margin-top:12px}.mini{padding:10px;border:1px solid var(--line);border-radius:14px;background:#0a171c}.cpu-help{margin-bottom:12px}.helpbox{background:#11252d;border:1px solid #294c58;border-radius:18px;padding:16px;color:#cfe4e4}.ev-menu{display:flex;gap:10px;margin:14px 0}.ev-card{padding:16px;border:1px solid var(--line);border-radius:18px;background:#0d2028;color:var(--text);font-weight:900}.placeholder{border:1px dashed #335a66;border-radius:18px;padding:25px;color:var(--muted);background:#08151a}.admin-grid{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.notice{margin-top:12px;color:var(--muted)}dialog{border:1px solid var(--line);border-radius:22px;background:#0b171c;color:var(--text);width:min(780px,95vw);box-shadow:0 30px 100px #000}dialog::backdrop{background:#0009}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.field.full{grid-column:1/-1}.field label{display:block;color:var(--muted);font-size:12px;margin:3px 0 5px}.field input,.field textarea,.field select{width:100%;background:#071014;border:1px solid var(--line);border-radius:12px;color:var(--text);padding:11px}.field textarea{min-height:92px}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}@media(max-width:850px){.shell{display:block}.sidebar{width:auto;height:auto;position:relative}.main{padding:16px}.stats,.grid2{grid-template-columns:1fr}.topbar{display:block}.formgrid{grid-template-columns:1fr}.authbox{justify-content:flex-start;margin-top:12px}.cards{grid-template-columns:1fr}}
.lookup-intro{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:14px;padding:18px 20px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(135deg,#10242b,#08151a);box-shadow:0 20px 60px #00000025}.lookup-intro h3{margin:0 0 6px;font-size:23px}.lookup-intro p{margin:0;color:var(--muted)}.lookup-badge{font-weight:1000;letter-spacing:.08em;font-size:12px;border:1px solid #00e0a466;color:var(--accent);border-radius:999px;padding:10px 14px;background:#05231d}.lookup-badge.warning{border-color:#ffc85766;color:var(--amber);background:#261b05}.toolbar.guided{padding:12px;border:1px solid var(--line);border-radius:20px;background:#09171c}.toolbar.guided select{min-width:180px}.prompt-card{margin:12px 0}.prompt-inner{display:flex;gap:16px;align-items:flex-start;border:1px dashed #315965;background:#08151a;border-radius:22px;padding:22px;color:var(--muted)}.prompt-inner h3{color:var(--text);margin:0 0 6px}.prompt-inner p{margin:0;line-height:1.45}.prompt-icon{width:52px;height:52px;display:grid;place-items:center;border-radius:18px;background:#10252d;font-size:26px;box-shadow:inset 0 0 0 1px #244852}.prompt-icon.warning{background:#281c08;box-shadow:inset 0 0 0 1px #5d4318}.result-summary{border:1px solid var(--line);border-radius:16px;background:#0b171c;color:var(--muted);padding:12px 14px}.result-summary b{color:var(--accent);font-size:20px}.technical-cards{grid-template-columns:repeat(auto-fill,minmax(340px,1fr))}.part-card .card-kicker,.card-kicker{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--accent);font-weight:900}.part-number{display:inline-block;font-size:24px;font-weight:1000;color:#03100d;background:linear-gradient(135deg,var(--accent),#bfffee);border-radius:14px;padding:8px 12px;margin:6px 0 4px}.fault-console{display:grid;grid-template-columns:1.1fr .65fr 1.2fr auto auto;gap:10px;align-items:end;margin-bottom:14px;padding:14px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(180deg,#0b1b21,#08151a)}.console-row label{display:block;font-size:12px;color:var(--muted);margin:0 0 5px;font-weight:800}.console-row .input{width:100%}.fault-results{display:grid;gap:14px}.fault-card{display:grid;grid-template-columns:132px 1fr;border:1px solid var(--line);border-radius:24px;overflow:hidden;background:linear-gradient(180deg,#10242b,#0b171c);box-shadow:0 18px 50px #00000025}.fault-code-block{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;background:radial-gradient(circle at top,#4a3612,#171006);border-right:1px solid #5d4318;color:var(--amber);padding:18px}.fault-code-block span{font-size:11px;letter-spacing:.16em;font-weight:1000;color:#ffe2a0}.fault-code-block b{font-size:42px;line-height:1}.fault-code-block em{font-style:normal;font-size:12px;border:1px solid #ffc85766;border-radius:999px;padding:5px 8px;color:#ffe2a0}.fault-body{padding:18px}.fault-body h3{margin:5px 0 12px;font-size:21px}.solution-box{border:1px solid #1e4f46;background:#08221d;border-radius:18px;padding:14px}.solution-box b{color:var(--accent)}.solution-box p,.refs p{margin:6px 0 0;color:#cfe4e4;white-space:pre-wrap}.refs{margin-top:10px;border:1px solid #294c58;background:#0a171c;border-radius:16px;padding:12px}.refs b{color:#9edcff}@media(max-width:950px){.fault-console{grid-template-columns:1fr}.fault-card{grid-template-columns:1fr}.fault-code-block{border-right:0;border-bottom:1px solid #5d4318}.toolbar.guided select,.toolbar.guided .input{width:100%;min-width:0}.lookup-intro{display:block}.lookup-badge{display:inline-block;margin-top:12px}}

/* Guided diagnostic console upgrade */
.diagnostic-layout{display:grid;grid-template-columns:360px 1fr;gap:18px;margin-bottom:16px;align-items:stretch}
.pump-visual{background:linear-gradient(180deg,#192a30,#081115);border:1px solid #31545f;border-radius:28px;padding:18px;box-shadow:0 24px 70px #0008,inset 0 1px 0 #ffffff18;position:relative;overflow:hidden}
.pump-visual:before{content:"";position:absolute;inset:-80px auto auto -80px;width:220px;height:220px;background:radial-gradient(circle,#00e0a42b,transparent 65%)}
.pump-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;position:relative;z-index:1}.pump-brand{font-size:12px;letter-spacing:.16em;color:#bde5e2;font-weight:900}.pump-status-light{width:14px;height:14px;border-radius:50%;background:#6b2732;box-shadow:0 0 12px #ff5c7a55}.pump-status-light.active{background:var(--accent);box-shadow:0 0 18px var(--accent)}
.pump-screen{background:linear-gradient(180deg,#05110d,#09251d);border:2px solid #2a5f55;border-radius:18px;padding:18px;min-height:170px;box-shadow:inset 0 0 35px #00e0a421,0 0 20px #00e0a414;font-family:Consolas,Menlo,monospace;color:#73ffd9;text-shadow:0 0 12px #00e0a4}
.screen-line{font-size:13px;letter-spacing:.08em;color:#b2ffed;min-height:22px}.screen-small{color:#74bdb0}.screen-code{font-size:46px;font-weight:900;letter-spacing:.06em;margin:22px 0 18px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pump-keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px}.pump-keypad span{height:34px;border-radius:10px;background:#0b181d;border:1px solid #2b4d57;color:#9bb7bb;display:grid;place-items:center;font-size:12px;font-weight:900;box-shadow:inset 0 -2px 0 #0005}
.diagnostic-console{margin:0;display:flex;flex-direction:column;justify-content:center}.console-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.console-title b{font-size:18px}.console-title span{color:var(--accent);font-size:12px;text-transform:uppercase;letter-spacing:.12em;font-weight:900}.quick-fault-actions{display:flex;gap:10px;flex-wrap:wrap}.diag-card{border-left:4px solid #31545f}.diag-card.primary-match{border-color:var(--accent);box-shadow:0 0 0 1px #00e0a42e,0 20px 60px #0005}.diagnostic-summary{border-color:#00e0a455;background:#09241d}.diag-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(220px,.8fr);gap:12px}.no-match{border-color:#6b2030;background:#170b10}
@media(max-width:900px){.diagnostic-layout{grid-template-columns:1fr}.pump-visual{max-width:520px}.diag-grid{grid-template-columns:1fr}.screen-code{font-size:38px}.sidebar{position:relative;height:auto;width:100%}.shell{display:block}}


/* Red & white petrol pump diagnostic upgrade */
:root{--accent:#e11d2f;--accent2:#ffffff;--danger:#e11d2f;--panel:#151821;--panel2:#1d222c;--line:#ffffff22;--text:#f8fafc;--muted:#b7c0ca;}
body{background:radial-gradient(circle at top right,#3b0a12 0,#12141a 34%,#07080c 100%);}
.sidebar{border-right:1px solid #ffffff1f;background:linear-gradient(180deg,#120f12,#211015 52%,#11131a)}
.brand-icon,.hero-badge,.lookup-badge,.btn.primary{background:#e11d2f;color:#fff;box-shadow:0 10px 30px #e11d2f33;border-color:#ff9aa3}
.nav.active{background:linear-gradient(90deg,#e11d2f,#ff4d5c);color:white;box-shadow:0 10px 30px #e11d2f33}
.stat b,.card-kicker,.console-title span,.lookup-intro h3{color:#ff3d4f}.btn{border:1px solid #ffffff26}.btn.primary:hover{background:#b50e1e}.dot.ok{background:#24d17e}
.pump-visual{background:linear-gradient(180deg,#f8fafc 0%,#dce2ea 35%,#aeb6c2 100%);border:6px solid #e11d2f;border-radius:24px;box-shadow:0 30px 90px #0008, inset 0 0 0 2px #fff;position:relative;color:#111}
.pump-visual:before{content:"";position:absolute;inset:12px;border:2px solid #11182722;border-radius:16px;pointer-events:none}.pump-head{background:#e11d2f;color:#fff;border-radius:14px 14px 6px 6px;margin:10px;padding:12px 14px}.pump-brand{font-weight:1000;letter-spacing:.18em}.pump-status-light{background:#fff;border:2px solid #991b1b}.pump-status-light.active{background:#16a34a;box-shadow:0 0 18px #16a34a}
.pump-screen{margin:14px;background:#111;border:5px solid #333;border-radius:14px;padding:18px;text-align:center;box-shadow:inset 0 0 35px #e11d2f44}.screen-small,.screen-line{color:#ff4d5c;text-transform:uppercase;letter-spacing:.12em}.screen-module{font-size:18px;color:#fff;background:#e11d2f;border-radius:8px;display:inline-block;padding:4px 12px;margin:6px 0 2px;font-weight:900;letter-spacing:.12em}.screen-code{color:#fff;font-size:48px;text-shadow:0 0 14px #ff4d5c;font-family:ui-monospace,Menlo,Consolas,monospace}.pump-keypad span{background:#ffffff;color:#111;border:1px solid #9aa3ad;box-shadow:inset 0 -3px 0 #c6ccd4}.fault-console{background:linear-gradient(180deg,#1d222c,#151821);border:1px solid #ffffff24}.diag-card.primary-match{border-color:#e11d2f;box-shadow:0 0 0 1px #e11d2f44,0 20px 60px #0005}.diagnostic-summary{background:#2a1015;border-color:#e11d2f66}.fault-code-block{background:linear-gradient(180deg,#e11d2f,#8f0c18);color:#fff}.solution-box b,.refs b{color:#ff5666}.optional-field{transition:.2s ease}.helpbox{border-left:4px solid #e11d2f;background:#1d1115}.prompt-icon.warning{background:#e11d2f;color:#fff}.no-match{border-color:#e11d2f;background:#1f1014}

/* === Production light petrol-pump theme upgrade === */
:root{
  --bg:#f5f7fb;--panel:#ffffff;--panel2:#fff7f7;--text:#202733;--muted:#667085;--line:#d9e0ea;
  --accent:#d71920;--accent2:#a70f15;--amber:#ffb703;--danger:#b42318;--blue:#175cd3;--green:#00875a;
  --soft-red:#fff1f1;--soft-grey:#eef2f7;--shadow:0 18px 48px rgba(16,24,40,.10)
}
body{background:linear-gradient(135deg,#ffffff 0%,#f6f8fb 42%,#ffecec 100%);color:var(--text)}
.shell{background:linear-gradient(120deg,rgba(215,25,32,.08),transparent 35%)}
.sidebar{background:linear-gradient(180deg,#ffffff,#f8fafc);border-right:1px solid var(--line);box-shadow:8px 0 30px rgba(16,24,40,.06)}
.brand-icon{background:linear-gradient(135deg,#d71920,#ff6b6b);color:#fff;box-shadow:0 10px 25px rgba(215,25,32,.25)}
.brand h1{color:#111827}.brand p,.topbar p,.muted{color:var(--muted)}
.nav{color:#475467;border:1px solid transparent}.nav:hover,.nav.active{background:#fff1f1;color:#b42318;border-color:#ffd1d1;box-shadow:0 8px 20px rgba(215,25,32,.08)}
.status-card{background:#ffffff;border-color:var(--line);box-shadow:var(--shadow);color:#344054}.dot.ok{background:var(--green);box-shadow:0 0 12px rgba(0,135,90,.35)}
.main{max-width:1580px}.topbar{background:rgba(255,255,255,.72);border:1px solid rgba(217,224,234,.8);border-radius:24px;padding:18px 20px;box-shadow:var(--shadow);backdrop-filter:blur(8px)}
.input{background:#ffffff;border:1px solid #cfd6e2;color:#101828;box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}
.input:focus{border-color:#d71920;box-shadow:0 0 0 4px rgba(215,25,32,.12)}
.btn{background:#ffffff;color:#243041;border:1px solid #cfd6e2;box-shadow:0 8px 18px rgba(16,24,40,.06)}
.btn.primary{background:linear-gradient(135deg,#d71920,#ff4d55);color:#fff;border:0}.btn.danger{background:#fff1f1;color:#b42318;border-color:#ffb3b8}
.hero,.panel,.lookup-intro,.prompt-card,.result-summary,.helpbox{background:#ffffff;border:1px solid var(--line);box-shadow:var(--shadow)}
.hero{position:relative;overflow:hidden}.hero:after{content:'⛽';position:absolute;right:36px;bottom:-35px;font-size:150px;opacity:.055;transform:rotate(-10deg)}
.hero h3,.lookup-intro h3{color:#101828}.hero-badge,.lookup-badge{background:#fff1f1;border-color:#ffb5b5;color:#b42318}.lookup-badge.warning{background:#fff1f1;color:#b42318}
.stat{background:#ffffff;border-color:#e4e9f2;box-shadow:var(--shadow)}.stat b{color:#b42318}.stat span{color:#667085}
.mini{background:#f8fafc;border:1px solid #e4e9f2;color:#1d2939}.pill{background:#f2f4f7;color:#344054;border:1px solid #d0d5dd}.small{font-size:12px}

/* Guided parts drill-down */
.parts-explorer{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr));gap:14px;margin:16px 0}.step-card{display:flex;gap:12px;align-items:stretch;background:#fff;border:1px solid #e4e9f2;border-radius:20px;padding:14px;box-shadow:var(--shadow)}
.step-card>span,.step-no{width:34px;height:34px;border-radius:999px;background:#d71920;color:#fff;display:grid;place-items:center;font-weight:900;flex:0 0 34px}.step-card b{display:block;margin-bottom:8px;color:#101828}.step-card>div{flex:1}.step-card .input{width:100%}.part-action-bar{background:#fff;border:1px solid #e4e9f2;border-radius:20px;padding:14px;box-shadow:var(--shadow)}
.prompt-icon.petrol{background:#fff1f1;color:#d71920}.quick-chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.chipbtn{border:1px solid #ffd1d1;background:#fff7f7;color:#b42318;border-radius:999px;padding:8px 12px;font-weight:800;cursor:pointer}.chipbtn:hover{background:#ffe5e5}
.cards.technical-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(430px,1fr));gap:16px}.part-card{background:#fff;border:1px solid #e4e9f2;border-radius:24px;box-shadow:var(--shadow);padding:16px;display:grid;grid-template-columns:110px 1fr;gap:16px;position:relative;overflow:hidden}.part-card:before{content:'';position:absolute;inset:0 0 auto 0;height:5px;background:linear-gradient(90deg,#d71920,#ff8a8a)}.part-media{width:110px;height:110px;border-radius:18px;background:#f2f4f7;border:1px solid #e4e9f2;display:grid;place-items:center;overflow:hidden}.part-img{width:100%;height:100%;object-fit:cover}.part-placeholder{font-size:36px;color:#98a2b3}.part-main h3{margin:4px 0;font-size:24px;color:#101828}.part-desc{margin:0 0 10px;color:#344054;font-weight:700}.part-path{display:flex;gap:7px;flex-wrap:wrap}.part-path .pill small{display:block;text-transform:uppercase;font-size:9px;letter-spacing:.06em;color:#667085}.service-note{background:#f8fafc;border:1px solid #e4e9f2;border-radius:16px;padding:10px 12px;margin-top:12px}.service-note p{margin:5px 0 0;color:#475467}.parts-summary span,.diagnostic-summary span{margin-left:10px;color:#667085;font-weight:700}

/* Fault diagnostic console */
.diagnostic-layout{display:grid;grid-template-columns:minmax(330px,460px) 1fr;gap:20px;align-items:start}.pump-visual{background:linear-gradient(180deg,#f5f5f5,#d8dde6);border:1px solid #c8d0dc;border-radius:30px;box-shadow:var(--shadow);padding:18px;position:relative}.pump-visual:before{content:'';position:absolute;left:35px;right:35px;top:0;height:7px;background:#d71920;border-radius:0 0 14px 14px}.pump-head{background:#d71920;color:#fff;border-radius:20px 20px 10px 10px;padding:14px 16px;display:flex;justify-content:space-between;align-items:center}.pump-brand{font-weight:950;letter-spacing:.08em}.pump-status-light{width:15px;height:15px;border-radius:50%;background:#ffe0e0;border:2px solid #fff}.pump-status-light.active{background:#00c781;box-shadow:0 0 18px rgba(0,199,129,.8)}
.pump-screen{background:#111827;border:8px solid #2a3443;border-radius:22px;margin:16px 0;padding:20px;min-height:190px;box-shadow:inset 0 0 25px rgba(0,0,0,.9),0 10px 24px rgba(16,24,40,.16)}.screen-line{font-family:Consolas,monospace;color:#fff;font-weight:900;text-shadow:0 0 9px rgba(255,255,255,.45);line-height:1.25}.screen-small{font-size:18px;color:#b8f7ff}.screen-module{font-family:Consolas,monospace;color:#ffdfdf;font-weight:900;margin-top:10px;font-size:20px;text-shadow:0 0 10px rgba(255,80,80,.75)}.screen-code{font-family:Consolas,monospace;color:#ff5454;font-size:43px;font-weight:950;letter-spacing:.04em;text-shadow:0 0 16px rgba(255,84,84,.9);margin:8px 0}.pump-keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.pump-keypad span{background:#fff;border:1px solid #cfd6e2;border-radius:12px;text-align:center;padding:10px;font-weight:900;color:#344054;box-shadow:inset 0 -2px 0 #e4e9f2}
.diagnostic-console{background:#fff;border:1px solid #e4e9f2;border-radius:28px;padding:20px;box-shadow:var(--shadow)}.engineer-panel-head{display:flex;gap:14px;align-items:center;border-bottom:1px solid #e4e9f2;padding-bottom:14px;margin-bottom:16px}.engineer-panel-head b{display:block;font-size:22px;color:#101828}.engineer-panel-head span{color:#667085}.tool-icon{width:52px;height:52px;border-radius:18px;background:#fff1f1;color:#d71920;display:grid;place-items:center;font-size:26px}.diagnostic-steps{display:grid;gap:12px}.diag-step{display:flex;gap:12px;background:#f8fafc;border:1px solid #e4e9f2;border-radius:18px;padding:13px;align-items:flex-start}.diag-step>div{flex:1}.diag-step label,.quick-search-panel label{display:block;font-weight:900;color:#344054;margin-bottom:8px}.quick-search-panel{margin-top:14px;background:#fff7f7;border:1px solid #ffd6d6;border-radius:18px;padding:14px}.quick-fault-actions{display:flex;gap:10px;margin-top:14px}.fault-results{display:grid;gap:14px;margin-top:16px}.diag-card{display:grid;grid-template-columns:150px 1fr;background:#fff;border:1px solid #e4e9f2;border-radius:24px;box-shadow:var(--shadow);overflow:hidden}.diag-card.primary-match{border-color:#ffb3b8}.fault-code-block{background:linear-gradient(180deg,#d71920,#941016);color:#fff;padding:18px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}.fault-code-block span{font-size:11px;font-weight:950;letter-spacing:.08em;opacity:.9}.fault-code-block b{font-size:42px;line-height:1}.fault-code-block em{font-style:normal;margin-top:8px;background:rgba(255,255,255,.18);border-radius:999px;padding:5px 10px;font-size:12px}.fault-body{padding:18px}.fault-body h3{margin:4px 0 14px;color:#101828}.diag-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:12px}.solution-box,.refs{background:#f8fafc;border:1px solid #e4e9f2;border-radius:16px;padding:12px}.solution-box p,.refs p{margin:6px 0 0;color:#475467}.card-kicker{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#b42318;font-weight:950}.helpbox{margin:16px 0;border-left:5px solid #d71920}.no-match{color:#344054}.result-summary b{color:#b42318}

/* Admin and dialogs */
dialog{border:0;border-radius:24px;box-shadow:0 30px 90px rgba(16,24,40,.25);background:#fff;color:#101828;max-width:900px;width:calc(100% - 28px)}.formgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.field.full{grid-column:1/-1}.field label{display:block;font-weight:900;margin-bottom:6px;color:#344054}.field input,.field textarea{width:100%;border:1px solid #cfd6e2;border-radius:13px;padding:12px}.field textarea{min-height:110px}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}.ev-card{background:#fff;border:1px solid #e4e9f2;color:#344054;border-radius:18px;padding:14px 18px;font-weight:900}.ev-card.active{background:#fff1f1;color:#b42318;border-color:#ffc0c0}

@media(max-width:1050px){.shell{display:block}.sidebar{position:relative;width:auto;height:auto}.main{padding:14px}.topbar,.hero{display:block}.parts-explorer{grid-template-columns:1fr 1fr}.diagnostic-layout{grid-template-columns:1fr}.cards.technical-cards{grid-template-columns:1fr}.diag-grid{grid-template-columns:1fr}}
@media(max-width:620px){.parts-explorer{grid-template-columns:1fr}.part-card,.diag-card{grid-template-columns:1fr}.part-media{width:100%;height:170px}.authbox .input{width:100%}.formgrid{grid-template-columns:1fr}.screen-code{font-size:34px}}

/* === Final responsive engineer UI patch === */
.main{padding:18px 22px}.lookup-intro{margin-bottom:12px}.diagnostic-layout{grid-template-columns:minmax(360px,430px) minmax(320px,520px);gap:14px;align-items:stretch}.pump-visual,.diagnostic-console{height:100%}.pump-visual{padding:14px;border-radius:24px}.pump-head{padding:10px 14px;border-radius:16px 16px 8px 8px}.pump-brand{font-size:13px}.pump-screen{margin:12px 0;padding:16px;min-height:166px;border-width:7px}.screen-small{font-size:16px}.screen-module{font-size:18px;color:#fff;text-shadow:0 0 12px rgba(255,255,255,.55),0 0 8px rgba(255,80,80,.9)}.screen-code{font-size:39px;margin:6px 0;color:#ff6969}.screen-line:not(.screen-small){font-size:13px;color:#fff;letter-spacing:.04em;text-shadow:0 0 11px rgba(255,255,255,.75)}
.keypad-mode{display:flex;gap:8px;margin:2px 0 10px}.mode-btn{flex:1;border:1px solid #d0d5dd;background:#fff;color:#344054;border-radius:999px;padding:9px 10px;font-weight:900;cursor:pointer}.mode-btn.active{background:#d71920;color:#fff;border-color:#d71920;box-shadow:0 9px 18px rgba(215,25,32,.18)}.pump-keypad{gap:7px}.pump-keypad button{background:#fff;border:1px solid #cfd6e2;border-radius:12px;text-align:center;padding:10px;font-weight:950;color:#344054;box-shadow:inset 0 -2px 0 #e4e9f2;cursor:pointer}.pump-keypad button:active{transform:translateY(1px);box-shadow:none;background:#fff1f1;color:#b42318}
.compact-console{padding:15px;border-radius:24px}.engineer-panel-head{padding-bottom:10px;margin-bottom:11px}.engineer-panel-head b{font-size:19px}.engineer-panel-head span{font-size:13px}.tool-icon{width:44px;height:44px;border-radius:14px}.compact-steps{gap:8px}.diag-step{padding:10px;border-radius:15px}.primary-step{align-items:center}.inline-code-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.inline-code-grid .diag-step{min-height:102px}.step-no{width:28px;height:28px;flex-basis:28px;font-size:13px}.diag-step label,.quick-search-panel label{font-size:12px}.code-input{font-size:22px;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.quick-search-panel{margin-top:9px;padding:11px;border-radius:15px}.quick-fault-actions{margin-top:10px}.cpu-help{margin-top:10px}.helpbox{padding:12px 14px;border-radius:16px}.prompt-card{margin-top:12px}.fault-results{margin-top:12px}.diag-card{grid-template-columns:130px 1fr}.fault-code-block{padding:15px}.fault-code-block b{font-size:34px}.fault-body{padding:15px}.fault-body h3{font-size:18px;margin-bottom:10px}.solution-box,.refs{padding:10px}.diag-grid{gap:9px}.card-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.btn{padding:10px 14px}.authbox{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.authbox .input{max-width:180px}
.parts-explorer{grid-template-columns:repeat(4,minmax(150px,1fr));gap:10px}.step-card{padding:11px;border-radius:17px;gap:9px}.step-card>span{width:28px;height:28px;flex-basis:28px}.step-card b{font-size:13px}.part-action-bar{padding:11px}.cards.technical-cards{grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:12px}.part-card{grid-template-columns:92px 1fr;gap:12px;padding:13px;border-radius:20px}.part-media{width:92px;height:92px}.part-main h3{font-size:20px}.part-desc{font-size:14px}.pill{font-size:12px;padding:5px 8px}
@media(max-width:1180px){.diagnostic-layout{grid-template-columns:420px 1fr}.inline-code-grid{grid-template-columns:1fr}.inline-code-grid .diag-step{min-height:auto}.parts-explorer{grid-template-columns:1fr 1fr}}
@media(max-width:900px){.diagnostic-layout{grid-template-columns:1fr}.pump-visual{max-width:480px;margin:auto}.diagnostic-console{max-width:640px;margin:auto;width:100%}.topbar{gap:12px}.cards.technical-cards{grid-template-columns:1fr}}
@media(max-width:620px){body{font-size:15px}.main{padding:10px}.sidebar{padding:10px}.brand{margin-bottom:10px}.nav{display:inline-flex;margin:4px 3px;width:auto}.status-card{margin-top:8px}.topbar{padding:12px;border-radius:18px}.topbar h2{font-size:24px}.authbox{width:100%}.authbox .input,.authbox .btn{max-width:none;width:100%}.lookup-intro{padding:13px;border-radius:18px}.lookup-intro h3{font-size:20px}.diagnostic-layout{gap:10px}.pump-visual{padding:10px;border-radius:20px}.pump-screen{min-height:145px;padding:13px}.screen-code{font-size:34px}.screen-module{font-size:16px}.screen-line:not(.screen-small){font-size:11px}.pump-keypad button{padding:12px 8px;font-size:15px}.engineer-panel-head{align-items:flex-start}.diagnostic-console{padding:12px;border-radius:18px}.diag-card{grid-template-columns:1fr}.fault-code-block{min-height:115px}.diag-grid{grid-template-columns:1fr}.parts-explorer{grid-template-columns:1fr}.part-card{grid-template-columns:1fr}.part-media{width:100%;height:160px}.part-action-bar{display:block}.part-action-bar .input{width:100%;margin-bottom:8px}.quick-fault-actions{display:grid;grid-template-columns:1fr 1fr}.quick-fault-actions .btn{width:100%}}


/* === Module letter keypad and overlap fix === */
.diagnostic-layout{align-items:start;overflow:visible}.pump-visual,.diagnostic-console{position:relative;z-index:1;overflow:visible}.pump-visual{min-width:0}.diagnostic-console{min-width:0}.keypad-mode{position:relative;z-index:3;background:transparent}.pump-keypad{position:relative;z-index:2}.pump-keypad.letter-mode{grid-template-columns:repeat(5,1fr);gap:6px}.pump-keypad.letter-mode button{padding:9px 6px;font-size:13px}.pump-keypad.letter-mode button[data-key="ENT"]{grid-column:span 2;background:#d71920;color:#fff;border-color:#d71920}.pump-keypad.letter-mode button[data-key="CLR"],.pump-keypad.letter-mode button[data-key="DEL"]{background:#fff1f1;color:#b42318;border-color:#ffc9c9}.mode-btn{white-space:nowrap}.mode-btn.active::after{content:' active';font-size:10px;font-weight:800;opacity:.8;text-transform:uppercase;margin-left:4px}.code-input{text-transform:uppercase}.inline-code-grid{position:relative;z-index:4}.diag-step{position:relative;z-index:4}.pump-screen{position:relative;z-index:1}.screen-module{background:#d71920;color:#fff;border-radius:9px;padding:4px 12px;display:inline-block;box-shadow:0 0 18px rgba(215,25,32,.35)}
@media(max-width:900px){.diagnostic-layout{grid-template-columns:1fr!important}.pump-visual,.diagnostic-console{max-width:560px}.pump-keypad.letter-mode{grid-template-columns:repeat(6,1fr)}.pump-keypad.letter-mode button{font-size:12px;padding:10px 4px}}
@media(max-width:520px){.pump-keypad.letter-mode{grid-template-columns:repeat(4,1fr)}.pump-keypad.letter-mode button{font-size:14px;padding:12px 4px}.pump-keypad.letter-mode button[data-key="ENT"]{grid-column:span 2}.mode-btn.active::after{content:''}}

/* Multi-line parts lookup - mirrors the original spreadsheet search style */
.multi-search-panel{background:#fff;border:1px solid rgba(128,0,0,.14);border-radius:24px;padding:18px;box-shadow:0 14px 35px rgba(60,20,20,.08);margin:14px 0}
.search-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:14px}
.search-head h3{margin:0 0 4px;font-size:1.25rem}.search-head p{margin:0;color:#6b5f5f}.sheet-style{background:#ffe9e9;color:#a40018;border:1px solid #ffd2d2;border-radius:999px;padding:8px 12px;font-weight:800;font-size:.8rem;white-space:nowrap}
.multi-search-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.multi-search-grid label{display:flex;flex-direction:column;gap:6px;font-weight:800;color:#3a2d2d}.multi-search-grid label span{font-size:.85rem;color:#b2001c}.multi-search-grid .input{background:#fff;border:2px solid #f1d2d2;border-radius:15px;min-height:46px;font-weight:700}.multi-search-grid .input:focus{border-color:#e4002b;box-shadow:0 0 0 4px rgba(228,0,43,.11)}
@media(max-width:760px){.multi-search-grid{grid-template-columns:1fr}.search-head{flex-direction:column}.sheet-style{width:max-content}.multi-search-panel{padding:14px;border-radius:18px}}

/* === CPU dropdown right panel + keypad-only input fix === */
.diagnostic-layout{
  grid-template-columns:minmax(320px,440px) minmax(300px,520px)!important;
  align-items:start!important;
  gap:16px!important;
}
.pump-visual{position:relative!important;z-index:1!important;overflow:hidden!important;align-self:start!important;}
.keypad-only-console{position:relative!important;z-index:1!important;align-self:start!important;min-height:auto!important;justify-content:flex-start!important;}
.clean-console-steps{display:block!important;}
.keypad-only-console .primary-step{margin-bottom:12px;}
.keypad-only-console input[type="hidden"]{display:none!important;}
.cpu-example-panel{margin:12px 0 0;}
.example-empty,.example-card{background:#fff;border:1px solid #e4e9f2;border-radius:18px;padding:14px;box-shadow:0 10px 26px rgba(16,24,40,.06);}
.example-empty b{display:block;color:#101828;margin-bottom:5px;font-size:16px}.example-empty span{color:#667085;line-height:1.4}
.example-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.example-title b{font-size:20px;color:#101828}.example-title span{font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:950;color:#b42318;background:#fff1f1;border:1px solid #ffd6d6;border-radius:999px;padding:6px 9px;white-space:nowrap}
.example-card p{margin:0 0 12px;color:#475467;line-height:1.4}.example-row{display:grid;grid-template-columns:120px 1fr;gap:8px;padding:9px 0;border-top:1px solid #eef2f6}.example-row strong{color:#344054;font-size:13px}.example-row span{color:#101828;font-weight:750}.example-current{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.example-current span{background:#f8fafc;border:1px solid #e4e9f2;border-radius:999px;padding:8px 10px;color:#475467}.example-current b{color:#d71920}
.pump-keypad{margin-top:10px!important}.pump-screen{margin-bottom:10px!important}.keypad-mode{margin-top:0!important}
@media(max-width:1050px){.diagnostic-layout{grid-template-columns:1fr!important}.pump-visual,.keypad-only-console{max-width:620px!important;width:100%;margin:0 auto!important}.example-row{grid-template-columns:1fr}.example-title{align-items:flex-start;flex-direction:column}}
@media(max-width:620px){.pump-visual,.keypad-only-console{max-width:none!important}.example-current{display:grid;grid-template-columns:1fr}.example-current span{width:100%}.keypad-only-console .diag-step{padding:12px}.example-card,.example-empty{padding:12px;border-radius:16px}}

/* === Secure EV / Zenobē LV access section === */
.ev-layout{display:grid;grid-template-columns:250px 1fr;gap:16px;align-items:start}.ev-menu-panel{background:#fff;border:1px solid #e4e9f2;border-radius:22px;padding:14px;box-shadow:var(--shadow);display:grid;gap:10px}.ev-warning{background:#fff7ed;border:1px solid #fed7aa;border-radius:18px;padding:12px;color:#7c2d12}.ev-warning b{display:block;margin-bottom:4px}.ev-warning span{font-size:13px;line-height:1.4}.ev-main-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:14px}.ev-main-head .input{max-width:320px}.secure-lock{text-align:center;padding:34px 18px;background:#f8fafc;border:1px dashed #cfd6e2;border-radius:22px}.lock-icon{font-size:42px;margin-bottom:10px}.secure-tools{display:flex;justify-content:space-between;gap:14px;align-items:center;background:#f8fafc;border:1px solid #e4e9f2;border-radius:18px;padding:14px;margin-bottom:14px}.secure-tools h3{margin:0 0 4px}.secure-tools p{margin:0;color:#667085}.secure-list{display:grid;gap:12px}.secure-card{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center;background:#fff;border:1px solid #e4e9f2;border-radius:20px;padding:14px;box-shadow:0 10px 24px rgba(16,24,40,.05)}.secure-card h3{margin:4px 0;color:#101828}.secure-card p{margin:3px 0;color:#475467}.secure-code{display:flex;align-items:center;gap:8px;background:#111827;color:#fff;border-radius:16px;padding:10px 12px;font-family:Consolas,monospace;font-weight:950;letter-spacing:.12em;min-width:150px;justify-content:space-between}.btn.small{padding:7px 10px;font-size:12px}
@media(max-width:900px){.ev-layout{grid-template-columns:1fr}.ev-main-head{flex-direction:column}.ev-main-head .input{max-width:none;width:100%}.secure-card{grid-template-columns:1fr}.secure-code{width:100%}}

.common-part-card{
  width:100%;
  text-align:left;
  border:1px solid rgba(220,38,38,.16);
  background:linear-gradient(135deg,#fff,#fff7f7);
  border-radius:18px;
  padding:12px 14px;
  display:grid;
  gap:4px;
  box-shadow:0 8px 22px rgba(15,23,42,.06);
  cursor:pointer;
}
.common-part-card:hover{transform:translateY(-1px);border-color:rgba(220,38,38,.35)}
.common-part-card b{font-size:1.05rem;color:#991b1b;letter-spacing:.02em}
.common-part-card span{color:#334155;line-height:1.25}
.common-part-card .common-part-title{font-size:.78rem;text-transform:uppercase;font-weight:900;color:#64748b;letter-spacing:.06em}
.common-part-card em{font-style:normal;font-size:.78rem;font-weight:800;color:#b91c1c;background:#fee2e2;border-radius:999px;padding:3px 8px;width:max-content;max-width:100%}
#commonPartSearches.quick-chip-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}
@media(max-width:680px){#commonPartSearches.quick-chip-row{grid-template-columns:1fr}.common-part-card{padding:11px 12px}}

/* DFAS Centre test-build additions */
.engineer-gate{position:fixed;inset:0;background:linear-gradient(135deg,#f8fafc,#fff 45%,#fff1f1);z-index:99999;display:flex;align-items:center;justify-content:center;padding:22px}
.gate-box{background:#fff;width:min(430px,100%);border:1px solid #f0d1d1;border-radius:24px;box-shadow:0 24px 70px rgba(120,0,0,.18);padding:28px;text-align:center}
.gate-icon{margin:0 auto 12px}.gate-box h2{margin:0;color:#b60000;font-size:32px}.gate-box p{color:#6b7280;margin:6px 0 20px}.gate-box label{display:block;text-align:left;font-weight:800;margin:10px 0 6px}.gate-box .remember{display:flex;gap:8px;align-items:center;font-weight:600;color:#555}.gate-box .remember input{width:auto}.quicktip-card h3{font-size:18px}.quicktips-panel{margin-bottom:18px}.quick-chip-row{display:flex;gap:10px;flex-wrap:wrap}.quick-chip{border:1px solid #e5e7eb;background:#fff;border-radius:999px;padding:9px 13px;cursor:pointer;font-weight:700}.quick-chip:hover{border-color:#c60000;color:#c60000}


/* DFAS Tools rebuild */
.tool-panel{overflow:hidden;}
.clean-tool-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:14px;}
.clean-tool-head h3{margin:0 0 6px;font-size:1.35rem;}
.clean-tool-head p{margin:0;color:#667085;}
.tool-actions{display:flex;gap:10px;flex-wrap:wrap;}
.tool-search-row{display:flex;gap:10px;align-items:center;margin:12px 0 18px;}
.tool-search-row .input{flex:1;min-width:0;}
.tool-results{display:grid;gap:14px;}
.result-count{padding:10px 14px;border-radius:14px;background:#fff;border:1px solid rgba(160,40,40,.18);color:#334155;}
.clean-tool-card{background:#fff;border:1px solid rgba(160,40,40,.18);border-radius:20px;padding:18px;box-shadow:0 10px 28px rgba(15,23,42,.06);overflow:hidden;}
.tool-card-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;border-bottom:1px solid rgba(15,23,42,.08);padding-bottom:12px;margin-bottom:12px;}
.tool-card-head h3{margin:3px 0 5px;font-size:1.15rem;line-height:1.25;}
.tool-card-head p{margin:0;color:#667085;word-break:break-word;}
.tool-grid.clean{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;}
.tool-field{background:#f8fafc;border:1px solid #e5e7eb;border-radius:14px;padding:10px;min-width:0;}
.tool-field span{display:block;font-size:.74rem;text-transform:uppercase;letter-spacing:.05em;color:#8a1f2d;font-weight:800;margin-bottom:5px;}
.tool-field b{font-size:.95rem;color:#1f2937;word-break:break-word;white-space:normal;}
.tool-empty{text-align:center;padding:28px;}
.btn.small{padding:8px 10px;font-size:.85rem;}
.card-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;}

@media (max-width: 760px){
  .clean-tool-head{display:block;}
  .tool-actions{margin-top:12px;}
  .tool-search-row{flex-direction:column;align-items:stretch;}
  .tool-card-head{display:block;}
  .card-actions{margin-top:12px;justify-content:flex-start;}
  .tool-grid.clean{grid-template-columns:1fr;}
  .clean-tool-card{padding:14px;border-radius:16px;}
}

/* DFAS Centre polish pass */
.brand-icon.tsg-logo{
  font-weight:900;
  letter-spacing:.5px;
  font-size:15px;
  background:linear-gradient(135deg,#d5001c,#a80016);
  color:#fff;
}
.nav{display:flex;align-items:center;gap:10px;text-align:left;}
.nav-ico{width:22px;height:22px;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;background:#f1f3f6;color:#b00020;font-weight:900;font-size:13px;flex:0 0 22px;}
.nav.active .nav-ico{background:#fff;color:#c8001d;box-shadow:0 1px 4px rgba(180,0,20,.18)}
.topbar{align-items:center;gap:18px;}
.authbox{display:flex;justify-content:flex-end;align-items:center;gap:10px;min-width:auto;}
.login-only-btn{min-width:90px;box-shadow:0 8px 18px rgba(210,0,30,.18);}
.login-dialog{border:none;border-radius:24px;padding:0;box-shadow:0 30px 80px rgba(20,20,30,.28);max-width:430px;width:min(92vw,430px);}
.login-dialog::backdrop{background:rgba(15,18,25,.42);backdrop-filter:blur(4px);}
.login-form{padding:28px;display:grid;gap:12px;background:#fff;border-radius:24px;}
.login-form h3{margin:0;font-size:26px;}
.login-form label{font-size:13px;font-weight:800;color:#50515a;}
.login-form .dialog-actions{margin-top:10px;display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap;}
.lookup-intro,.hero,.panel,.pump-visual,.fault-console,.multi-search-panel{box-shadow:0 12px 34px rgba(30,35,45,.06);}
.lookup-intro p,.hero p,.panel p,.search-head p,.engineer-panel-head span,.cpu-example-panel p,.tool-head p{color:#667085;line-height:1.35;}
.fault-console{padding:26px;border:1px solid rgba(180,0,20,.10);background:linear-gradient(180deg,#fff,#fbfbfc);}
.engineer-panel-head{display:flex;align-items:center;gap:14px;padding-bottom:16px;margin-bottom:18px;border-bottom:1px solid #eceef2;}
.engineer-panel-head .tool-icon{width:42px;height:42px;border-radius:14px;background:#fff0f3;color:#c9001d;display:flex;align-items:center;justify-content:center;font-size:20px;}
.engineer-panel-head b{display:block;font-size:22px;margin-bottom:2px;}
.clean-console-steps,.diagnostic-steps{display:grid;gap:14px;}
.diag-step{background:#fff;border:1px solid #e7e9ee;border-radius:18px;padding:16px;box-shadow:0 8px 20px rgba(30,35,45,.04);}
.diag-step label{font-weight:800;font-size:13px;color:#30333b;}
.cpu-example-panel{background:#fff;border:1px solid #e8eaf0;border-radius:20px;padding:18px;margin-top:16px;box-shadow:0 8px 24px rgba(30,35,45,.04);}
.cpu-example-panel h3{margin-top:0;font-size:22px;}
.quick-search-panel{background:#fff;border:1px solid #e8eaf0;border-radius:18px;padding:15px;margin-top:16px;}
.quick-search-panel label{display:block;font-size:13px;font-weight:900;color:#a80016;margin-bottom:8px;}
.quick-fault-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:14px;}
.tool-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0 0;}
.tool-tab{border:1px solid #dfe3ea;background:#fff;border-radius:999px;padding:10px 16px;font-weight:800;color:#30333b;cursor:pointer;}
.tool-tab.active{background:#c9001d;color:#fff;border-color:#c9001d;box-shadow:0 8px 18px rgba(201,0,29,.16);}
.clean-tool-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:16px;}
.tool-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end;}
.tool-search-row{display:flex;gap:10px;margin-bottom:18px;}
.tool-search-row .input{flex:1;}
.clean-tool-card{background:#fff;border:1px solid #e5e8ee;border-left:5px solid #c9001d;border-radius:18px;padding:18px;margin:12px 0;box-shadow:0 8px 24px rgba(30,35,45,.05);overflow:hidden;}
.tool-card-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;border-bottom:1px solid #eef0f3;padding-bottom:12px;margin-bottom:12px;}
.tool-card-head h3{margin:.2rem 0;font-size:21px;}
.tool-card-head p{margin:0;color:#667085;}
.tool-grid.clean{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;}
.tool-field{background:#f8f9fb;border:1px solid #eceef2;border-radius:14px;padding:10px 12px;min-width:0;}
.tool-field span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:#7d8390;font-weight:900;margin-bottom:3px;}
.tool-field b{display:block;color:#20242c;font-size:14px;overflow-wrap:anywhere;}
.tool-empty{text-align:center;padding:30px;color:#667085;}
.btn.small{padding:8px 12px;font-size:13px;}
.btn.danger,.btn.small.danger{background:#fff0f3;color:#b00020;border:1px solid #ffc5cf;}
.main .lookup-intro .lookup-badge{font-size:12px;letter-spacing:.08em;}
@media (max-width: 760px){
  .topbar{flex-direction:column;align-items:stretch;}
  .authbox{justify-content:flex-start;}
  .login-only-btn{width:100%;}
  .fault-console{padding:18px;}
  .quick-fault-actions,.tool-search-row,.clean-tool-head,.tool-card-head{flex-direction:column;align-items:stretch;}
  .tool-actions{justify-content:flex-start;}
}


/* DFAS right-panel polish patch */
.cpu-example-top{
  order: 1;
  margin: 0 0 14px 0;
}
.clean-console-steps{
  order: 2;
  margin-top: 0;
}
.keypad-only-console .quick-search-panel{order:3}
.keypad-only-console .quick-fault-actions{order:4}
.stacked-step{
  display:block !important;
  padding:14px 16px !important;
}
.stacked-step .step-no{display:none !important}
.stacked-step label{
  display:block;
  margin-bottom:8px;
  font-size:.82rem;
  font-weight:800;
  color:#222;
  letter-spacing:.02em;
}
.stacked-step select.input{
  width:100%;
}
.cpu-example-panel{
  width:100%;
}
.cpu-example-panel .example-empty,
.cpu-example-panel .example-card{
  border:1px solid rgba(190,0,20,.12);
  background:#fff;
  border-radius:18px;
  padding:16px 18px;
  box-shadow:0 8px 24px rgba(30,30,30,.05);
}
.cpu-example-panel .example-empty b,
.cpu-example-panel .example-title b{
  font-size:1.1rem;
  color:#1e2633;
}
.cpu-example-panel .example-empty span{
  display:block;
  margin-top:4px;
  color:#68707d;
  line-height:1.35;
}
.fault-console{
  gap:14px !important;
}
.engineer-panel-head{
  margin-bottom:4px;
}
.quick-search-panel{
  background:#fff;
  border:1px solid rgba(190,0,20,.12);
  border-radius:18px;
  padding:14px 16px;
}
.quick-fault-actions{
  display:flex;
  gap:10px;
  justify-content:flex-end;
  flex-wrap:wrap;
}
.lookup-intro p,
.search-head p,
.engineer-panel-head span{
  color:#697280;
}
@media(max-width:820px){
  .diagnostic-layout{grid-template-columns:1fr !important}
  .pump-visual{max-width:100%}
  .fault-console{padding:16px}
  .quick-fault-actions .btn{flex:1}
}

/* === Rebuild fix: readable forms/dialog inputs === */
.input,
input,
textarea,
select,
dialog input,
dialog textarea,
dialog select,
.field input,
.field textarea,
.login-form input{
  background:#ffffff !important;
  color:#101828 !important;
  caret-color:#101828 !important;
}
.input::placeholder,
input::placeholder,
textarea::placeholder{
  color:#667085 !important;
  opacity:1 !important;
}

/* Rebuild additions */
.brand-icon.has-logo{background:#fff;padding:3px;overflow:hidden}
.brand-icon.has-logo img{width:100%;height:100%;object-fit:contain;border-radius:12px}
.nav[data-view="admin"]{display:none}
.user-table{display:grid;gap:8px;margin-top:12px}
.user-row{display:grid;grid-template-columns:1.4fr .5fr .8fr;gap:10px;align-items:center;padding:10px 12px;border:1px solid #e5e7eb;border-radius:14px;background:#fff}
.user-row.head{background:#f8fafc;font-size:13px;color:#475467;text-transform:uppercase;letter-spacing:.05em}
.add-new-input{background:#fff}
#recordDialog .input, #recordDialog select, #recordDialog textarea{width:100%}
#saveRecordBtn:disabled,.btn:disabled{opacity:.65;cursor:not-allowed}
.ev-card{cursor:pointer;text-align:left}
.ev-card.active{border-color:#d71920;background:#fff1f1;color:#b42318;font-weight:900}

/* v3 admin/user permission polish */
.user-row-wide{grid-template-columns:1.2fr .8fr 2fr;align-items:start;gap:14px}
.perm-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:6px 12px;font-size:12px}
.checkline{display:block;margin:3px 0;font-size:12px}
.ev-card.sub{margin-left:14px;opacity:.92;font-size:13px}
.brand-icon.has-logo img{max-width:100%;max-height:100%;object-fit:contain;border-radius:8px}

/* v5 admin submenu, clean dashboard, OEM page */
.admin-subnav{display:none;margin:-2px 0 8px 28px;border-left:1px solid rgba(200,0,29,.18);padding-left:10px}
.nav.subnav{font-size:13px;padding:9px 10px;margin:4px 0;border-radius:12px}
.nav.subnav .nav-ico{font-size:10px;width:24px;flex-basis:24px}
.dashboard-stats{grid-template-columns:repeat(3,1fr)}
.oem-panel{margin-top:14px}.oem-panel .ev-main-head{align-items:center}.oem-panel .input{width:min(420px,100%)}
.admin-user-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.admin-user-actions .btn{padding:7px 9px}
@media(max-width:850px){.dashboard-stats{grid-template-columns:1fr}.admin-subnav{margin-left:0}.user-row,.user-row-wide{grid-template-columns:1fr}}

.ev-add-main{width:100%;justify-content:center;margin-bottom:2px}.ev-menu-row{display:flex;align-items:center;justify-content:space-between;gap:8px;background:#fff;border:1px solid #e4e9f2;color:#344054;border-radius:18px;padding:14px 12px;font-weight:900;cursor:pointer}.ev-menu-row:hover{border-color:#ffc0c0}.ev-menu-row.active{background:#fff1f1;color:#b42318;border-color:#ffc0c0}.ev-menu-row.sub{margin-left:18px;font-size:13px;padding:12px}.ev-child-list{display:grid;gap:8px}.ev-menu-actions{display:flex;gap:4px;flex-shrink:0}.mini-btn{border:1px solid #e4e9f2;background:#f8fafc;color:#344054;border-radius:9px;font-weight:900;min-width:25px;height:25px;cursor:pointer}.mini-btn:hover{background:#fff}.mini-btn.danger{color:#b42318;background:#fff1f1;border-color:#ffc0c0}.ev-menu-name{min-width:0;overflow:hidden;text-overflow:ellipsis}.dashboard-common-parts{margin-top:16px}.dashboard-common-parts .secure-tools{margin-bottom:12px}


/* Admin menu lives below the database connection card */
.admin-nav-section{margin-top:14px;padding-top:14px;border-top:1px solid rgba(200,0,29,.16)}
.admin-nav-title{font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:#b42318;margin:0 0 8px 10px}
.admin-nav-section .admin-subnav{display:block;margin:2px 0 6px 14px;border-left:1px solid rgba(200,0,29,.18);padding-left:8px}
.admin-nav-section:empty{display:none}

/* === DFAS technical polish pass: theme + tidy fault finder + remove duplicate page banners === */
:root{--tech-red:#d71920;--tech-red-dark:#a60f19;--tech-slate:#202733;--tech-line:#e3e8ef;--tech-card:#ffffff;--tech-soft:#f6f8fb;--tech-ink:#101828;--tech-muted:#667085;--shadow-soft:0 14px 40px rgba(16,24,40,.08)}
body{background:linear-gradient(135deg,#f4f6f9 0%,#eef2f6 48%,#f8fafc 100%);}
.sidebar{background:linear-gradient(180deg,#fff 0%,#f7f9fc 100%)!important;border-right:1px solid #dfe5ee!important;box-shadow:10px 0 34px rgba(16,24,40,.07);}
.brand{padding-bottom:16px;border-bottom:1px solid #edf1f6;margin-bottom:18px;}
.brand-icon{background:#fff!important;color:var(--tech-red)!important;border:1px solid #eee;box-shadow:0 10px 24px rgba(215,25,32,.12)!important;font-weight:1000;}
.brand h1{font-size:22px;letter-spacing:-.02em}.brand p{font-weight:700;color:#667085!important}
.nav{min-height:44px;border-radius:14px!important;margin:5px 0!important;padding:11px 12px!important;color:#344054!important;font-weight:850!important;letter-spacing:-.01em;transition:all .16s ease;}
.nav:hover{transform:translateX(2px);background:#fff5f5!important;border-color:#ffd3d6!important;color:#b42318!important;}
.nav.active{background:linear-gradient(135deg,#fff0f1,#ffffff)!important;color:#b42318!important;border-color:#ffc7cc!important;box-shadow:0 10px 24px rgba(215,25,32,.10)!important;}
.nav-ico{width:26px!important;height:26px!important;border-radius:10px!important;background:linear-gradient(135deg,#f2f4f7,#fff)!important;border:1px solid #e5e9f0;color:#b42318!important;font-size:14px!important;box-shadow:inset 0 1px 0 #fff;}
.nav.active .nav-ico{background:linear-gradient(135deg,#d71920,#a60f19)!important;color:#fff!important;border-color:#d71920;box-shadow:0 8px 18px rgba(215,25,32,.24)!important;}
.status-card{background:linear-gradient(135deg,#ffffff,#f7fafc)!important;border:1px solid #e3e8ef!important;box-shadow:var(--shadow-soft);font-weight:800;color:#344054!important;}
.admin-nav-section{margin-top:12px!important;padding-top:14px!important;border-top:1px dashed #d5dce7!important;}
.admin-nav-title{padding:0 0 4px 8px;color:#8a1020!important;letter-spacing:.12em!important;}
.main{max-width:1600px!important;padding:20px 24px!important;}
.topbar{background:rgba(255,255,255,.86)!important;border:1px solid #e3e8ef!important;box-shadow:var(--shadow-soft)!important;border-radius:28px!important;margin-bottom:18px!important;}
.topbar h2{font-size:34px;letter-spacing:-.035em;color:var(--tech-ink)}
.btn{border-radius:14px!important;box-shadow:0 2px 0 rgba(16,24,40,.03);}
.btn.primary{background:linear-gradient(135deg,#e31b2d,#b5121e)!important;color:#fff!important;box-shadow:0 12px 24px rgba(215,25,32,.22)!important;}
.panel,.multi-search-panel,.prompt-inner,.result-summary,.helpbox{border:1px solid #e3e8ef!important;background:#fff!important;box-shadow:var(--shadow-soft)!important;}
/* Remove duplicate second banners under the main topbar */
.lookup-intro{display:none!important;}
/* Dashboard */
.dashboard-stats{grid-template-columns:repeat(3,minmax(0,1fr));}
.stat{background:linear-gradient(180deg,#fff,#f8fafc)!important;border-color:#e3e8ef!important;box-shadow:var(--shadow-soft);}
.stat b{color:#b42318}.dashboard-common-parts{margin-top:16px;}
/* Fault finder layout refresh */
#faults .diagnostic-layout{display:grid!important;grid-template-columns:minmax(360px,430px) minmax(420px,1fr)!important;gap:22px!important;align-items:start!important;}
#faults .pump-visual{border-radius:28px!important;background:linear-gradient(180deg,#f4f5f7,#dce1e8)!important;border:1px solid #cdd5df!important;box-shadow:0 22px 48px rgba(16,24,40,.13)!important;overflow:hidden!important;}
#faults .pump-head{border-radius:18px 18px 10px 10px!important;background:linear-gradient(135deg,#d71920,#9f1019)!important;}
#faults .pump-screen{background:radial-gradient(circle at 50% 0,#1e2a36,#080a0f 58%)!important;border-color:#253041!important;border-width:6px!important;box-shadow:inset 0 0 42px rgba(215,25,32,.35),0 10px 24px rgba(16,24,40,.15)!important;}
#faults .screen-small{color:#88f7ff!important}.screen-code{color:#ff5b66!important}.screen-line:not(.screen-small){color:#fff!important;}
#faults .keypad-mode{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;margin:10px 0!important;}
#faults .mode-btn{border-radius:12px!important;border:1px solid #e0e6ef;background:#fff;color:#344054;font-weight:900;}
#faults .mode-btn.active{background:linear-gradient(135deg,#d71920,#a60f19)!important;color:#fff!important;border-color:#d71920!important;}
#faults .pump-keypad{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:9px!important;}
#faults .pump-keypad button{border-radius:13px!important;border:1px solid #cdd5df!important;background:linear-gradient(180deg,#fff,#eef2f7)!important;color:#172033!important;font-weight:950!important;box-shadow:inset 0 -3px 0 #d9dee8;}
#faults .fault-console{height:auto!important;min-height:0!important;border-radius:28px!important;padding:20px!important;background:linear-gradient(180deg,#ffffff,#f8fafc)!important;border:1px solid #e3e8ef!important;box-shadow:var(--shadow-soft)!important;display:flex!important;flex-direction:column!important;gap:14px!important;}
#faults .engineer-panel-head{display:flex!important;align-items:center!important;gap:12px!important;padding:14px 16px!important;border:1px solid #edf1f6!important;border-radius:20px!important;background:#fff!important;}
#faults .engineer-panel-head .tool-icon{width:42px;height:42px;border-radius:14px;background:linear-gradient(135deg,#d71920,#a60f19);display:grid;place-items:center;color:#fff;box-shadow:0 10px 22px rgba(215,25,32,.24);}
#faults .engineer-panel-head b{display:block;font-size:20px;color:#101828;}#faults .engineer-panel-head span{font-size:13px;color:#667085;}
#faults .cpu-example-panel{order:3;}
#faults .diagnostic-steps{order:1;margin:0!important;}
#faults .diag-step{display:grid!important;grid-template-columns:1fr 1fr!important;gap:12px!important;padding:16px!important;border:1px solid #e3e8ef!important;border-radius:20px!important;background:#fff!important;}
#faults .diag-step label{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:#667085;font-weight:950;margin-bottom:6px;display:block;}
#faults .diag-step .input,#faults .quick-search-panel .input{width:100%!important;background:#f8fafc!important;border:1px solid #d9e1ea!important;color:#101828!important;}
#faults .quick-search-panel{order:2;padding:16px!important;border:1px solid #e3e8ef;border-radius:20px;background:#fff;}
#faults .quick-search-panel label{display:block;margin-bottom:8px;font-size:12px;text-transform:uppercase;letter-spacing:.06em;font-weight:950;color:#667085;}
#faults .quick-fault-actions{order:4;display:flex!important;gap:10px!important;justify-content:flex-end!important;margin-top:0!important;}
#faultPrompt{margin-top:18px!important}.fault-results{margin-top:14px!important;}
.fault-card{border-color:#e3e8ef!important;background:#fff!important;box-shadow:var(--shadow-soft)!important;}.fault-body h3{color:#101828!important}.fault-code-block{background:linear-gradient(180deg,#d71920,#99111a)!important;color:#fff!important;}.solution-box{background:#fff7f7!important;border-color:#ffd4d7!important}.solution-box p,.refs p{color:#344054!important}.refs{background:#f8fafc!important;border-color:#e3e8ef!important;}
.login-dialog .login-form{padding:10px}.login-dialog h3{font-size:34px;letter-spacing:-.035em;margin:0 0 10px}.login-dialog .input{background:#f8fafc!important;color:#101828!important;border-color:#d9e1ea!important}.login-dialog .notice{min-height:22px;color:#b42318;font-weight:700;}
@media(max-width:1100px){#faults .diagnostic-layout{grid-template-columns:1fr!important}#faults .pump-visual,#faults .fault-console{max-width:680px;margin:0 auto;width:100%}.dashboard-stats{grid-template-columns:1fr}}
@media(max-width:620px){#faults .diag-step{grid-template-columns:1fr!important}.main{padding:12px!important}.topbar h2{font-size:26px}.quick-fault-actions{display:grid!important;grid-template-columns:1fr 1fr}.lookup-intro{display:none!important}}

/* Patch: integrated fault console selectors, shared parts, and quick tips toolbar */
#faults .pump-selectors{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:8px 0 12px;position:relative;z-index:2}
#faults .pump-selectors label{display:block;background:linear-gradient(180deg,#ffffff,#f4f6f9);border:1px solid #ccd4df;border-radius:14px;padding:9px;box-shadow:inset 0 1px 0 #fff;min-width:0}
#faults .pump-selectors span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:950;color:#667085;margin-bottom:5px}
#faults .pump-selectors .input{width:100%!important;background:#fff!important;border:1px solid #d9e1ea!important;border-radius:11px!important;color:#101828!important;font-weight:800;font-size:13px;padding:9px 10px!important}
#faults .fault-console{min-height:360px!important;justify-content:flex-start!important}
#faults .result-guidance-panel{border:1px dashed #d6dce6;border-radius:18px;background:#fff;padding:16px;color:#475467;line-height:1.45;flex:1;display:flex;flex-direction:column;justify-content:center}
#faults .result-guidance-panel b{display:block;color:#101828;font-size:18px;margin-bottom:4px}
#faults .result-guidance-panel p{margin:0;color:#667085}
#faults .quick-search-panel,#faults .diagnostic-steps{display:none!important}
#faults .quick-fault-actions{margin-top:auto!important}
.shared-badge{display:inline-flex;align-items:center;gap:4px;background:#fff1f1;color:#b42318;border:1px solid #ffc7cc;border-radius:999px;padding:4px 8px;margin-left:8px;font-size:10px;font-weight:950;letter-spacing:.04em;vertical-align:middle}
.shared-part-card{border-top-color:#d71920!important;box-shadow:0 16px 34px rgba(183,28,28,.10)!important}
.fits-block{margin:10px 0;padding:10px;border:1px solid #e5e9f0;border-radius:14px;background:#f8fafc}
.fits-block b{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#667085;margin-bottom:7px}
.fit-chip{display:inline-flex;margin:3px 5px 3px 0;padding:6px 9px;border-radius:999px;background:#fff;border:1px solid #ffd0d4;color:#991b1b;font-weight:850;font-size:12px}
.shared-path{margin-top:4px!important}
.quicktips-toolbar{align-items:flex-start!important;gap:14px!important}
.quicktips-actions{display:flex;gap:10px;align-items:center;justify-content:flex-end;flex-wrap:wrap;min-width:min(540px,100%)}
.quicktips-actions .input{min-width:280px;flex:1}
#quickTipUploadSlot .btn{white-space:nowrap}
@media(max-width:760px){#faults .pump-selectors{grid-template-columns:1fr}.quicktips-toolbar{display:block!important}.quicktips-actions{display:grid;grid-template-columns:1fr;margin-top:12px;min-width:0}.quicktips-actions .input,#quickTipUploadSlot .btn{width:100%;min-width:0}.shared-badge{margin-left:0;margin-top:6px}}

/* Patch: fault guidance now lives in the result panel, no extra floating guidance boxes */
#faults #cpuExamplePanel,#faults #cpuHelp{display:none!important}
#faults #faultPrompt:empty{display:none!important}
#faults .result-guidance-panel .example-row{display:grid;grid-template-columns:120px 1fr;gap:10px;align-items:start;border-top:1px solid #eef2f6;margin-top:10px;padding-top:10px}
#faults .result-guidance-panel .example-row strong{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:#344054}
#faults .result-guidance-panel .result-mini{margin-top:12px;padding:10px;border-radius:12px;background:#f8fafc;border:1px solid #e4e7ec;display:grid;gap:3px}
#faults .result-guidance-panel .result-mini strong{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:#344054;margin:0}
.fit-manufacturer{display:grid;grid-template-columns:120px 1fr;gap:8px;align-items:start;border-top:1px solid #eef2f6;padding-top:8px;margin-top:8px}
.fit-manufacturer:first-of-type{border-top:0;margin-top:0;padding-top:0}
.fit-manufacturer strong{font-size:12px;color:#344054;margin-top:6px}
@media(max-width:760px){.fit-manufacturer,#faults .result-guidance-panel .example-row{grid-template-columns:1fr}.fit-manufacturer strong{margin-top:0}}

/* ATC Measure Tool rebuild */
.atc-head{border-bottom:1px solid #eef0f3;padding-bottom:12px;}
.atc-layout{display:grid;grid-template-columns:minmax(260px,.9fr) minmax(300px,1.1fr);gap:16px;margin-top:14px;}
.atc-panel{background:#fff;border:1px solid #e6e9ef;border-radius:18px;padding:18px;box-shadow:0 8px 24px rgba(30,35,45,.05);}
.atc-panel h3{margin-top:0;}
.atc-input-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;}
.atc-table-inputs{display:grid;gap:8px;}
.atc-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;align-items:center;}
.atc-row.head{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:#6b7280;font-weight:900;}
.atc-measure-table{margin-top:14px;border:1px solid #e8eaf0;border-radius:16px;overflow:hidden;background:#fff;}
.atc-measure-table .atc-row{grid-template-columns:repeat(5,minmax(0,1fr));padding:9px 12px;border-bottom:1px solid #eef0f3;}
.atc-measure-table .atc-row:last-child{border-bottom:0;}
.atc-result-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;margin-bottom:12px;}
.atc-warning{background:#fff6e5!important;border-color:#ffd899!important;}
.atc-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin:12px 0;}
.atc-summary div{background:#101828;color:white;border-radius:16px;padding:14px;}
.atc-summary span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:#c9d2e3;font-weight:900;margin-bottom:4px;}
.atc-summary b{font-size:22px;}
@media(max-width:900px){.atc-layout{grid-template-columns:1fr}.atc-row,.atc-measure-table .atc-row{grid-template-columns:1fr}.atc-row.head{display:none}}
.nav-folder{cursor:default;opacity:.96}.nav-folder.active{background:rgba(79,140,255,.14)}

/* DFAS Tools dropdown fix: allow main-menu folder submenus to open */
#mainNav .admin-subnav.open{display:block;margin:2px 0 8px 16px;border-left:1px solid rgba(200,0,29,.18);padding-left:8px;}
#mainNav .nav-folder{cursor:pointer;}
.nav-caret{margin-left:auto;font-size:12px;opacity:.65;transition:transform .16s ease;}
.nav-folder.open .nav-caret{transform:rotate(180deg);}


/* Final theme uplift + DFAS Tools page cleanup */
:root{--dfas-red:#c8102e;--dfas-red-dark:#9f1024;--dfas-charcoal:#18202b;--dfas-muted:#667085;--dfas-border:#e6ebf2;--dfas-soft:#f7f9fc;--dfas-card:#ffffff;--dfas-shadow:0 18px 42px rgba(16,24,40,.08)}
body{background:radial-gradient(circle at top left,#ffffff 0,#f6f7fb 35%,#edeff4 100%)!important;color:#101828!important}
.main{background:linear-gradient(180deg,#f8fafc 0%,#f1f4f8 100%);min-height:100vh;}
.sidebar{background:linear-gradient(180deg,#ffffff 0%,#f9fbfd 100%)!important;border-right:1px solid #dce3ec!important;box-shadow:12px 0 34px rgba(16,24,40,.07)!important;}
.brand-icon{background:#fff!important;box-shadow:0 12px 24px rgba(16,24,40,.08)!important;border:1px solid #eef2f6!important;overflow:hidden;}
.brand h1{letter-spacing:-.03em;color:#111827}.brand p{color:#667085!important;font-weight:750;}
.topbar{background:rgba(255,255,255,.86);border:1px solid #e6ebf2;border-radius:26px;padding:22px 24px;box-shadow:var(--dfas-shadow);backdrop-filter:blur(10px);}
.topbar h2{letter-spacing:-.045em;color:#111827}.topbar p{color:#667085!important;font-weight:650;}
.nav{position:relative;overflow:hidden;min-height:48px;border-radius:16px!important;margin:6px 0!important;padding:12px 13px!important;color:#344054!important;font-weight:900!important;letter-spacing:-.015em;border:1px solid transparent!important;}
.nav:before{content:"";position:absolute;left:0;top:9px;bottom:9px;width:4px;border-radius:0 6px 6px 0;background:transparent;}
.nav:hover{background:#fff!important;border-color:#ffe0e4!important;color:#a50f22!important;transform:translateX(2px);box-shadow:0 10px 22px rgba(16,24,40,.05)!important;}
.nav.active{background:linear-gradient(135deg,#fff1f3,#ffffff)!important;color:#a50f22!important;border-color:#ffc9d1!important;box-shadow:0 14px 28px rgba(200,16,46,.12)!important;}
.nav.active:before{background:linear-gradient(180deg,#e11d35,#9f1024);}
.nav-ico{width:32px!important;height:32px!important;border-radius:12px!important;background:linear-gradient(145deg,#f8fafc,#ffffff)!important;border:1px solid #e5ebf3!important;color:#a50f22!important;font-size:11px!important;font-weight:1000!important;letter-spacing:.025em;box-shadow:inset 0 1px 0 #fff,0 4px 10px rgba(16,24,40,.04)!important;}
.nav.active .nav-ico{background:linear-gradient(135deg,#d71920,#9f1024)!important;color:#fff!important;border-color:#c8102e!important;box-shadow:0 9px 18px rgba(200,16,46,.25)!important;}
.nav-folder .nav-ico{font-size:14px!important}.nav-caret{margin-left:auto;color:#667085;}
#mainNav .admin-subnav.open{background:linear-gradient(180deg,rgba(255,255,255,.72),rgba(255,255,255,.25));border-left:1px solid #ffd0d6!important;border-radius:0 0 0 14px;}
.admin-nav-section{border-top:1px dashed #ccd5e0!important;background:linear-gradient(180deg,rgba(255,255,255,.45),rgba(255,255,255,.16));border-radius:16px;padding:14px 4px 4px!important;}
.admin-nav-title{color:#8a1020!important;letter-spacing:.14em!important;}
.status-card{border-radius:18px!important;background:linear-gradient(135deg,#fff,#f8fafc)!important;box-shadow:0 10px 24px rgba(16,24,40,.07)!important;}
.panel,.hero,.tool-panel,.atc-panel{background:rgba(255,255,255,.9)!important;border:1px solid var(--dfas-border)!important;box-shadow:var(--dfas-shadow)!important;}
.btn{border-radius:14px!important;border-color:#d7dee8!important;background:#fff;color:#344054!important;font-weight:900!important;}
.btn.primary{background:linear-gradient(135deg,#d71920,#a60f19)!important;color:#fff!important;border:0!important;box-shadow:0 12px 26px rgba(200,16,46,.22)!important;}
.btn.danger,.btn.small.danger{background:#fff1f3!important;color:#a50f22!important;border-color:#ffc9d1!important;}
.input,.field input,.field textarea,.field select{background:#fff!important;border:1px solid #dbe3ee!important;color:#101828!important;border-radius:14px!important;}
.input:focus,.field input:focus,.field textarea:focus,.field select:focus{border-color:#c8102e!important;box-shadow:0 0 0 4px rgba(200,16,46,.10)!important;outline:none;}
#tools .tool-tabs{display:none!important;}
#tools .tool-panel{margin-top:0!important;padding:26px!important;}
.clean-tool-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-bottom:14px;margin-bottom:14px;border-bottom:1px solid #eef2f6;}
.clean-tool-head h3{font-size:26px;margin:0 0 6px;letter-spacing:-.035em;color:#101828;}
.clean-tool-head p{margin:0;color:#667085!important;font-weight:650;}
.atc-panel h3{letter-spacing:-.03em;color:#101828}.atc-summary div{background:linear-gradient(135deg,#202733,#111827)!important;}
.oem-panel{border-top:4px solid #c8102e!important;}
#oemparts .topbar-icon,.oem-badge{background:linear-gradient(135deg,#d71920,#9f1024);color:white;border-radius:14px;padding:6px 10px;font-weight:1000;}
.card,.clean-tool-card,.part-card,.shared-part-card{border-radius:22px!important;box-shadow:var(--dfas-shadow)!important;}
.card:before{background:linear-gradient(90deg,#c8102e,#ff6b7c)!important;}
@media(max-width:850px){.topbar{padding:18px}.sidebar{box-shadow:none!important}.clean-tool-head{display:block}.tool-actions{margin-top:12px}.nav{min-height:46px}.nav-ico{width:30px!important;height:30px!important}}

/* Part image viewer + dashboard common part thumbnails */
.part-image-button{display:block;width:100%;height:100%;padding:0;border:0;background:transparent;cursor:zoom-in;position:relative;color:inherit}
.part-image-button .part-img{width:100%;height:100%;object-fit:cover;margin:0;border:0;border-radius:0;background:#f2f4f7}
.part-image-button span{position:absolute;left:8px;right:8px;bottom:8px;text-align:center;font-size:11px;font-weight:900;color:#fff;background:rgba(0,0,0,.55);border-radius:999px;padding:4px 7px;opacity:0;transition:opacity .15s ease}
.part-image-button:hover span{opacity:1}
.image-dialog{width:min(980px,96vw);padding:0;background:#0b1117;border:1px solid rgba(255,255,255,.18)}
.image-dialog-card{padding:14px}.image-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.image-dialog-head h3{margin:0;color:#fff}.image-dialog img{display:block;max-width:100%;max-height:78vh;margin:auto;border-radius:18px;background:#fff;object-fit:contain;box-shadow:0 20px 80px rgba(0,0,0,.45)}
.common-part-card-with-image{display:grid;grid-template-columns:82px 1fr;grid-template-rows:auto auto auto auto;column-gap:12px;align-items:start;text-align:left;min-height:118px}
.common-part-card-with-image .common-part-image{grid-row:1/5;width:82px;height:82px;border-radius:16px;overflow:hidden;border:1px solid #e4e9f2;background:#f8fafc;display:grid;place-items:center;position:relative;color:#94a3b8;font-size:28px}
.common-part-card-with-image .common-part-image img{width:100%;height:100%;object-fit:cover;display:block}.common-part-card-with-image .common-part-image span{position:absolute;left:6px;right:6px;bottom:6px;background:rgba(0,0,0,.58);color:#fff;border-radius:999px;font-size:10px;text-align:center;font-weight:900;padding:2px 5px;opacity:0}.common-part-card-with-image .common-part-image:hover span{opacity:1}.common-part-card-with-image .placeholder-mini{font-size:30px}
@media(max-width:680px){.common-part-card-with-image{grid-template-columns:74px 1fr}.common-part-card-with-image .common-part-image{width:74px;height:74px}.image-dialog img{max-height:70vh}}

/* Polished red technical menu icons */
.nav-ico svg{width:18px;height:18px;display:block;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
.nav-ico{color:#b42318!important;}
.nav:not(.active) .nav-ico svg{filter:drop-shadow(0 1px 0 rgba(255,255,255,.7));}
.nav.active .nav-ico svg{color:#fff;}
.nav.subnav .nav-ico svg{width:16px;height:16px;}
#mainNav .nav .nav-ico{font-size:0!important;}
#mainNav .nav .nav-ico:empty:after{content:"•";font-size:14px;}


/* Admin dropdown safety fix */
.admin-nav-section .admin-subnav{display:none;margin:2px 0 6px 14px;border-left:1px solid rgba(200,0,29,.18);padding-left:8px;}
.admin-nav-section .admin-subnav.open{display:block;}
.admin-nav-section .nav-folder{cursor:pointer;}
.admin-nav-section .nav-folder .nav-caret{display:inline-block;}
.admin-nav-section .nav-folder.open .nav-caret{transform:rotate(180deg);}

/* Admin dropdown safety fix: keep the separate Admin section reachable under Database connected. */
.sidebar{overflow-y:auto!important;max-height:100vh!important;padding-bottom:34px!important;}
.admin-nav-section{display:block!important;margin-bottom:18px!important;}
.admin-nav-section .admin-root-toggle{display:flex!important;align-items:center!important;}
.admin-nav-section .admin-subnav{display:none!important;margin:2px 0 8px 16px!important;border-left:1px solid rgba(200,0,29,.18)!important;padding-left:8px!important;}
.admin-nav-section .admin-subnav.open{display:block!important;}
.admin-nav-section .nav.subnav{display:flex!important;align-items:center!important;min-height:44px!important;}
.admin-nav-section .admin-root-toggle.open .nav-caret{transform:rotate(180deg)!important;}

/* Admin moved out of the left sidebar and into the top account controls. */
.admin-nav-section{display:none!important;}
.sidebar{overflow-y:visible!important;max-height:none!important;padding-bottom:22px!important;}
.top-admin-dropdown{position:relative;display:inline-block;}
.top-admin-dropdown summary{list-style:none;}
.top-admin-dropdown summary::-webkit-details-marker{display:none;}
.top-admin-summary{display:inline-flex!important;align-items:center;gap:8px;background:#fff;border:1px solid #d8e0ea;color:#111827;box-shadow:0 6px 18px rgba(16,24,40,.06);}
.top-admin-summary.active,.top-admin-dropdown[open] .top-admin-summary{background:linear-gradient(135deg,#b42318,#c8001d);border-color:#b42318;color:#fff;}
.top-admin-icon svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
.top-admin-caret{font-size:12px;transition:.18s ease;}
.top-admin-dropdown[open] .top-admin-caret{transform:rotate(180deg);}
.top-admin-menu{position:absolute;right:0;top:calc(100% + 10px);width:230px;padding:8px;background:#fff;border:1px solid #d8e0ea;border-radius:18px;box-shadow:0 24px 60px rgba(16,24,40,.18);z-index:80;display:grid;gap:6px;}
.top-admin-item{display:flex;align-items:center;gap:10px;width:100%;border:0;background:transparent;color:#111827;text-align:left;border-radius:13px;padding:10px 12px;cursor:pointer;font:inherit;}
.top-admin-item:hover,.top-admin-item.active{background:#fff0f2;color:#a30f1d;}
.top-admin-item span{width:30px;height:30px;border-radius:10px;display:grid;place-items:center;background:#fff5f6;border:1px solid #f3ccd2;color:#a30f1d;}
.top-admin-item svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
@media(max-width:720px){.top-admin-menu{right:auto;left:0}.top-admin-dropdown,.top-admin-summary{width:100%;}.top-admin-summary{justify-content:center}.authbox{align-items:stretch}}

/* Fault result: keep reference documents in the top result panel and remove duplicate lower card clutter */
#faults .result-guidance-panel .fault-result-combined{display:grid;grid-template-columns:minmax(240px,1fr) minmax(280px,1.05fr);gap:18px;align-items:stretch;width:100%}
#faults .result-guidance-panel .fault-result-left,#faults .result-guidance-panel .fault-result-right{min-width:0}
#faults .result-guidance-panel .result-refs{height:100%;border:1px solid #e4e7ec;background:#f8fafc;border-radius:16px;padding:14px;color:#344054}
#faults .result-guidance-panel .result-refs strong{display:block;font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:#b42318;margin-bottom:8px}
#faults .result-guidance-panel .result-refs div{font-size:14px;line-height:1.55;white-space:pre-wrap}
#faults .result-guidance-panel .result-refs.empty{opacity:.75}
#faults .result-guidance-panel .result-refs a{font-weight:900;color:#8f1119;text-decoration:underline;text-underline-offset:2px}
#faults .result-guidance-panel .fault-result-right{border:1px solid #e4e7ec;background:#fff;border-radius:16px;padding:14px}
#faults .result-guidance-panel .inline-result-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
@media(max-width:860px){#faults .result-guidance-panel .fault-result-combined{grid-template-columns:1fr}}

/* Safe app-only repair: OEM layout restored to wide list with scrollable category tree */
#oemparts .oem-panel{padding:18px!important;}
#oemPartsList.cards.technical-cards{display:block!important;}
.oem-layout{display:grid;grid-template-columns:270px minmax(0,1fr);gap:18px;align-items:start;}
.oem-tree{position:sticky;top:18px;max-height:calc(100vh - 190px);overflow:auto;background:#fff;border:1px solid #e4e9f2;border-radius:22px;padding:12px;box-shadow:0 12px 32px rgba(16,24,40,.08);}
.oem-tree-title{font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:1000;color:#667085;margin:4px 6px 10px;}
.oem-tree-group{margin-top:6px;}
.oem-tree-btn{width:100%;border:1px solid transparent;background:transparent;color:#344054;border-radius:14px;padding:10px 10px;display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer;text-align:left;font-weight:900;}
.oem-tree-btn:hover{background:#f8fafc;border-color:#e4e9f2;}
.oem-tree-btn.active{background:#fff1f2;border-color:#f5b5bd;color:#b31325;box-shadow:inset 4px 0 0 #d71920;}
.oem-tree-btn.child{padding-left:22px;font-size:13px;font-weight:800;color:#667085;}
.oem-tree-btn.child:before{content:'›';color:#d71920;margin-right:4px;}
.oem-tree-btn span{font-size:11px;background:#f2f4f7;border:1px solid #e4e9f2;color:#667085;border-radius:999px;padding:3px 7px;}
.oem-results{display:grid;gap:14px;min-width:0;}
.oem-list-card{display:grid;grid-template-columns:minmax(0,1fr) 210px;gap:14px;background:#fff;border:1px solid #e4e9f2;border-radius:24px;box-shadow:0 14px 36px rgba(16,24,40,.08);padding:16px;position:relative;overflow:hidden;}
.oem-list-card:before{content:'';position:absolute;inset:0 0 auto 0;height:5px;background:linear-gradient(90deg,#d71920,#ff8a8a);}
.oem-card-main h3{margin:6px 0 4px;font-size:28px;color:#101828;letter-spacing:.01em;}
.oem-list-card .part-desc{font-size:15px;line-height:1.42;color:#344054;margin:0 0 10px;font-weight:750;}
.oem-linked-bar{margin-top:12px;border:1px solid #86efac;background:#f0fdf4;border-radius:16px;padding:10px 12px;display:grid;gap:6px;color:#14532d;}
.oem-linked-bar b{color:#15803d;}
.oem-linked-bar span{display:block;font-size:13px;}
.linked-tsg-badge{background:#dcfce7!important;color:#166534!important;border:1px solid #86efac!important;}
.oem-only-badge{background:#f8fafc;color:#667085;border-color:#e4e9f2;}
.oem-ref-tile{border:1px solid #e4e9f2;background:linear-gradient(180deg,#f8fafc,#fff);border-radius:18px;padding:13px;display:flex;flex-direction:column;gap:7px;align-self:stretch;justify-content:center;}
.oem-ref-tile span{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#667085;font-weight:1000;}
.oem-ref-tile b{font-size:13px;color:#101828;word-break:break-word;}
.oem-ref-tile em{font-style:normal;color:#b31325;font-weight:900;}
@media(max-width:980px){.oem-layout{grid-template-columns:1fr}.oem-tree{position:relative;top:auto;max-height:260px}.oem-list-card{grid-template-columns:1fr}.oem-ref-tile{display:block}.oem-card-main h3{font-size:23px}}
.ref-doc-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.35rem 0;border-bottom:1px solid rgba(30,41,59,.08)}
.ref-doc-row:last-child{border-bottom:0}.ref-doc-row span{font-size:.92rem;line-height:1.35}.ref-doc-row .btn{padding:.45rem .7rem;white-space:nowrap}.manual-links .btn{margin-left:.5rem}.oem-ref-tile b{word-break:break-word}.oem-results .oem-list-card{width:100%}

/* OEM database cleanup: cleaner database-driven cards and TSG diagram button placement */
.oem-list-card.compact-oem-card{grid-template-columns:minmax(0,1fr) 185px;align-items:stretch;}
.oem-list-card.compact-oem-card h3{margin:6px 0 4px;font-size:24px;letter-spacing:-.02em;color:#101828;}
.oem-clean-meta{margin:8px 0 2px;}
.oem-list-card .service-note{font-size:13px;}
.clean-ref-tile{justify-content:flex-start;min-height:112px;}
.clean-ref-tile b{font-size:13px;line-height:1.25;}
.clean-ref-tile em{display:inline-block;margin-top:2px;font-size:12px;}
.tsg-diagram-actions{margin-top:12px;border:1px solid #b7ebc6;background:#f0fff4;border-radius:16px;padding:11px 12px;display:grid;gap:8px;grid-column:1/-1;}
.tsg-diagram-actions b{color:#087443;font-size:11px;text-transform:uppercase;letter-spacing:.08em;}
.tsg-diagram-actions span{color:#344054;font-weight:800;font-size:13px;}
.tsg-diagram-actions .btn{width:max-content;}
.part-card .tsg-diagram-actions{align-self:start;}
@media(max-width:980px){.oem-list-card.compact-oem-card{grid-template-columns:1fr}.clean-ref-tile{min-height:0}.tsg-diagram-actions .btn{width:100%;}}


/* DFAS secure user-name dropdown header */
.top-user-dropdown{position:relative;display:inline-flex;align-items:center}
.top-user-summary{list-style:none;display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(120,40,55,.18);background:#fff;color:#241b1e;border-radius:999px;padding:8px 12px;font-weight:800;cursor:pointer;box-shadow:0 4px 14px rgba(0,0,0,.04)}
.top-user-summary::-webkit-details-marker{display:none}
.top-user-name{white-space:nowrap}
.top-admin-role-badge{display:inline-flex;align-items:center;border-radius:999px;background:#b8334b;color:#fff;font-size:11px;font-weight:900;line-height:1;padding:4px 7px;text-transform:uppercase;letter-spacing:.04em}
.top-user-dropdown .top-admin-menu{right:0;left:auto;min-width:190px}
.top-admin-item.danger{color:#92263b}


/* Main header dropdown v4 polish */
.top-admin-role-badge{gap:3px}
.top-admin-item.danger span{font-weight:900}


/* DFAS main role display v7 */
.role-owner,.role-admin{background:#b8334b!important;color:#fff!important}
.role-moderator{background:#2467d6!important;color:#fff!important}
.top-engineer-text{font-weight:900;color:#3a3033;display:inline-flex;gap:4px;align-items:center}


/* DFAS v8 main app: old inline admin portal must not show in normal app pages */
body:not(.admin-page) .admin-portal,
body:not(.admin-page) .admin-inline-portal,
body:not(.admin-page) .admin-control-centre,
body:not(.admin-page) .admin-manager,
body:not(.admin-page) .menu-manager-panel,
body:not(.admin-page) [data-admin-portal],
body:not(.admin-page) [data-admin-only]{
  display:none!important;
}


/* DFAS v10 fault UI helpers */
.inline-check{display:flex!important;gap:8px;align-items:center;font-weight:800}
.inline-check input{width:auto!important}


/* DFAS v11 moderator/admin access cleanup */
.access-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}
.access-row{border:1px solid rgba(80,30,40,.12);border-radius:14px;background:#fff;padding:10px;display:grid;grid-template-columns:1fr 120px;align-items:center}
.inline-check{display:flex!important;gap:8px;align-items:center;font-weight:800}
.inline-check input{width:auto!important}
.clean-auth-block{min-height:100vh;display:grid;place-items:center;background:#f7f3f2}
.clean-auth-block .auth-card{max-width:560px}
.auth-logo-mark{width:56px;height:56px;border-radius:18px;background:#fff;border:1px solid rgba(80,30,40,.14);display:grid;place-items:center;font-weight:900;color:#b8334b;margin-bottom:14px}

/* DFAS locked core: hide old inline admin blocks in main app */
#dfasAdminPortalRoot,#dfasAdminControlCentreMount,#dfasIntegratedAdminMount,#dfasAdminPortalOpenBtn,#dfasAdminControlCentre,#dfasAdminV2Root,.dfas-admin-portal-root,.dfas-admin-control-centre{display:none!important}


/* DFAS site designer + database activity light */
.db-light,.database-light,#dbLight,#databaseLight,[data-db-light]{
  position:relative;
}
.db-ready,.database-light.db-ready,#dbLight.db-ready,#databaseLight.db-ready,[data-db-light].db-ready{
  background:#19a64a!important;
  box-shadow:0 0 0 0 rgba(25,166,74,.55);
}
.db-active,.database-light.db-active,#dbLight.db-active,#databaseLight.db-active,[data-db-light].db-active{
  background:#21d35b!important;
  animation:dfasDbPulse .55s infinite;
}
.db-loading,.database-light.db-loading,#dbLight.db-loading,#databaseLight.db-loading,[data-db-light].db-loading{
  background:#ffb020!important;
  animation:dfasDbPulse .9s infinite;
}
.db-error,.database-light.db-error,#dbLight.db-error,#databaseLight.db-error,[data-db-light].db-error{
  background:#d91f3c!important;
}
.db-unknown,.database-light.db-unknown,#dbLight.db-unknown,#databaseLight.db-unknown,[data-db-light].db-unknown{
  background:#9aa0a6!important;
}
@keyframes dfasDbPulse{
  0%{box-shadow:0 0 0 0 rgba(33,211,91,.75);transform:scale(1)}
  70%{box-shadow:0 0 0 8px rgba(33,211,91,0);transform:scale(1.08)}
  100%{box-shadow:0 0 0 0 rgba(33,211,91,0);transform:scale(1)}
}
.site-designer .designer-layout{
  display:grid;
  grid-template-columns:minmax(0,1.8fr) minmax(280px,.9fr);
  gap:18px;
  align-items:start;
}
.site-designer .designer-main,.site-designer .designer-side{
  border:1px solid rgba(90,30,45,.12);
  border-radius:20px;
  padding:16px;
  background:rgba(255,255,255,.72);
}
.site-designer h3{
  margin:18px 0 10px;
}
.site-preview{
  border-radius:22px;
  padding:16px;
  min-height:150px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(0,0,0,.08);
}
.site-preview-card{
  width:100%;
  padding:18px;
  box-shadow:0 10px 30px rgba(0,0,0,.08);
}
.site-preview-pill{
  width:55px;
  height:8px;
  border-radius:999px;
  margin-bottom:12px;
}
.site-preview button{
  border:none;
  color:white;
  padding:9px 14px;
  border-radius:12px;
  font-weight:800;
}
.menu-tree-preview{
  display:flex;
  flex-direction:column;
  gap:8px;
}
.menu-tree-item{
  border:1px solid rgba(0,0,0,.1);
  border-radius:14px;
  padding:10px;
  background:#fff;
}
.menu-tree-item span,.menu-tree-children span{
  color:#777;
  font-size:12px;
  margin-left:6px;
}
.menu-tree-children{
  margin-top:8px;
  padding-left:14px;
  display:flex;
  flex-direction:column;
  gap:4px;
}
.form-grid.one{
  grid-template-columns:1fr;
}
@media(max-width:950px){
  .site-designer .designer-layout{grid-template-columns:1fr}
}


/* DFAS locked built-in manual/page viewer */
.dfas-locked-viewer{display:none;position:fixed;inset:0;z-index:99999}
.dfas-locked-viewer.open{display:block}
.dfas-locked-viewer-backdrop{position:absolute;inset:0;background:rgba(10,10,12,.72);backdrop-filter:blur(3px)}
.dfas-locked-viewer-panel{position:absolute;inset:18px;display:flex;flex-direction:column;background:#f7f7f7;border-radius:22px;overflow:hidden;box-shadow:0 30px 90px rgba(0,0,0,.45)}
.dfas-locked-viewer-head,.dfas-locked-viewer-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;background:#fff;border-bottom:1px solid rgba(0,0,0,.08)}
.dfas-locked-viewer-foot{border-top:1px solid rgba(0,0,0,.08);border-bottom:0;justify-content:center}
.dfas-locked-viewer-body{flex:1;overflow:auto;display:flex;justify-content:center;align-items:flex-start;padding:14px;background:#3d3d3d;user-select:none;-webkit-user-select:none}
.dfas-locked-viewer-body canvas{background:#fff;box-shadow:0 8px 32px rgba(0,0,0,.4);max-width:100%;height:auto}
.dfas-viewer-fallback{color:#222;background:#fff;border-radius:18px;padding:18px;max-width:760px;margin:auto}
body.dfas-viewer-open{overflow:hidden}
@media(max-width:700px){.dfas-locked-viewer-panel{inset:6px;border-radius:14px}.dfas-locked-viewer-head,.dfas-locked-viewer-foot{padding:10px;flex-wrap:wrap}.dfas-locked-viewer-foot .btn{flex:1}}


/* DFAS diagram callout highlight overlay */
.dfas-locked-viewer-body{position:relative}
.dfas-callout-status{margin-left:10px;font-size:12px;color:#777}
.dfas-callout-status[data-state="ok"]{color:#168a3a;font-weight:800}
.dfas-callout-status[data-state="miss"]{color:#b5122b;font-weight:800}
.dfas-callout-highlight-layer{
  position:absolute;
  pointer-events:none;
  z-index:5;
}
.dfas-callout-ring{
  position:absolute;
  border:5px solid #e00022;
  border-radius:999px;
  box-shadow:0 0 0 3px rgba(255,255,255,.75),0 0 16px rgba(224,0,34,.55);
}
.dfas-callout-pulse{
  position:absolute;
  border:3px solid rgba(224,0,34,.55);
  border-radius:999px;
  animation:dfasCalloutPulse 1.2s infinite;
}
@keyframes dfasCalloutPulse{
  0%{transform:scale(1);opacity:.85}
  80%{transform:scale(1.35);opacity:0}
  100%{transform:scale(1.35);opacity:0}
}


/* Manual TSG <-> OEM link editor */
.link-editor-box{
  border:1px solid rgba(23,125,70,.22);
  background:rgba(225,247,235,.55);
  border-radius:16px;
  padding:12px;
  margin:10px 0;
}
.link-editor-box label{
  display:block;
  font-weight:900;
  margin-bottom:6px;
  color:#166b3a;
}
.link-editor-box textarea{
  width:100%;
  min-height:78px;
  resize:vertical;
}
.manual-link-tag{
  display:inline-block;
  margin-left:6px;
  color:#166b3a;
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
}
#dfasAutoScanOemLinksBtn{
  margin-left:10px;
}
.oem-linked-bar .manual-link-tag{
  margin-left:4px;
}


/* DFAS mobile + viewer cleanup */
@media (max-width: 820px){
  body{font-size:15px!important; overflow-x:hidden!important;}
  .app-shell,.layout,.main-layout,.page-shell{display:block!important; width:100%!important; max-width:100%!important;}
  .sidebar,.side-nav,.app-sidebar{
    position:relative!important;
    width:100%!important;
    max-width:100%!important;
    min-height:0!important;
    border-radius:0 0 20px 20px!important;
    padding:12px!important;
  }
  .main,.content,.page-content,main{
    width:100%!important;
    max-width:100%!important;
    padding:12px!important;
    margin:0!important;
  }
  .hero,.page-hero,.admin-hero,.portal-hero,.card.hero-card{
    min-height:0!important;
    padding:18px!important;
    margin:10px!important;
    border-radius:22px!important;
  }
  .hero h1,.page-hero h1,.admin-hero h1,.portal-hero h1,
  #pageTitle,.page-title{
    font-size:clamp(30px,8vw,46px)!important;
    line-height:1.05!important;
    margin-bottom:8px!important;
  }
  .hero p,.page-hero p,.admin-hero p,.portal-hero p,#pageSub{
    font-size:17px!important;
    line-height:1.35!important;
    margin:0 0 12px!important;
  }
  .admin-hero .muted,
  .portal-hero .muted,
  .hero .muted{
    display:none!important;
  }
  .toolbar,.nav-row,.top-actions,.button-row,.card-actions{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:10px!important;
  }
  .toolbar .btn,.nav-row .btn,.top-actions .btn,.button-row .btn,.card-actions .btn,button,.btn{
    min-height:44px!important;
    font-size:15px!important;
  }
  .search-grid,.form-grid,.parts-search-grid,.grid{
    grid-template-columns:1fr!important;
  }
  input,select,textarea{
    width:100%!important;
    max-width:100%!important;
    font-size:16px!important;
  }
  #dfasPartsBatch.dfas-parts-grid,
  #dfasPartsBatch.parts-grid,
  #dfasPartsBatch.cards-grid,
  #dfasPartsBatch.results-grid,
  .parts-grid,.cards-grid,.results-grid{
    grid-template-columns:1fr!important;
    gap:14px!important;
  }
  .part-card,.oem-list-card,.technical-card,.card,.panel{
    width:100%!important;
    max-width:100%!important;
    border-radius:20px!important;
  }
  .stats,.stat-grid,.dashboard-stats{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
    overflow:visible!important;
  }
  .muted.notice-copy,.helper-copy,.database-driven-copy{
    display:none!important;
  }
  .dfas-locked-viewer-panel{
    inset:0!important;
    border-radius:0!important;
  }
  .dfas-locked-viewer-head{
    position:sticky!important;
    top:0!important;
    z-index:10!important;
    padding:10px!important;
  }
  .dfas-locked-viewer-body{
    padding:8px!important;
    align-items:flex-start!important;
  }
  .dfas-locked-viewer-foot{
    display:none!important;
  }
  .dfas-callout-status{
    display:block!important;
    margin-left:0!important;
    margin-top:4px!important;
  }
}
.dfas-locked-viewer-foot #dfasLockedPrevBtn,
.dfas-locked-viewer-foot #dfasLockedNextBtn{
  display:none!important;
}
.dfas-locked-viewer-foot #dfasLockedHomeBtn{
  pointer-events:none;
  opacity:.78;
}


/* Hide legacy inline admin panels in main app */
#dfasAdminPortalRoot,
#dfasAdminControlCentreMount,
#dfasIntegratedAdminMount,
#dfasAdminPortalShortcuts,
.dfas-admin-portal-root,
.dfas-admin-control-centre,
.dfas-admin-panel{
  display:none!important;
}
.manual-link-missing{
  display:inline-block;
  margin-left:6px;
  color:#9a6a00;
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
}


/* Remove legacy inline admin buttons from main app */
#dfasAdminPortalRoot,
#dfasAdminControlCentreMount,
#dfasIntegratedAdminMount,
#dfasAdminPortalShortcuts,
.dfas-admin-portal-root,
.dfas-admin-control-centre,
.dfas-admin-panel{
  display:none!important;
}
.manual-link-missing{
  display:inline-block;
  margin-left:6px;
  color:#9a6a00;
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
}


/* Final OEM diagram/manual-link card layout */
.tsg-oem-diagram-row{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:10px!important;
}
.tsg-oem-diagram-row .btn{
  align-self:center!important;
  margin-top:4px!important;
}
.tsg-diagram-actions .manual-link-tag{
  margin-left:6px;
}


/* DFAS safe OEM diagram row layout */
.tsg-oem-diagram-row{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:10px!important;
}
.tsg-oem-diagram-row .btn{
  align-self:center!important;
  margin-top:4px!important;
}


/* DFAS visible card and OEM diagram button repair */
#dfasPartsBatch .part-card,
#dfasPartsBatch .technical-card,
#dfasPartsBatch .dfas-fallback-card{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
}
.tsg-oem-diagram-row button,
.tsg-oem-diagram-row .btn,
.tsg-diagram-actions .tsg-oem-diagram-row button,
.tsg-diagram-actions .tsg-oem-diagram-row .btn{
  display:inline-flex!important;
  visibility:visible!important;
  opacity:1!important;
}


/* DFAS fault keypad hotfix */
#pumpKeypad button,
#pumpKeypad .fault-key,
.fault-keypad button{
  pointer-events:auto!important;
  cursor:pointer!important;
  user-select:none!important;
  touch-action:manipulation!important;
}


/* DFAS force manual link and keypad visibility */
.tsg-diagram-actions,
.tsg-oem-diagram-row{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:10px!important;
  visibility:visible!important;
  opacity:1!important;
}
#pumpKeypad button,
#pumpKeypad .fault-key{
  pointer-events:auto!important;
  cursor:pointer!important;
  touch-action:manipulation!important;
  user-select:none!important;
}


/* DFAS controlled TSG manual link and locked viewer support */
.safe-oem-link-box,
.tsg-diagram-actions{
  visibility:visible!important;
  opacity:1!important;
}
.tsg-diagram-actions .btn,
.tsg-diagram-actions button{
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
}
.manual-link-missing{
  display:inline-block;
  margin-left:6px;
  color:#8a5b00;
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
}


/* DFAS row-aware PDF marker */
.dfas-row-highlight-ring{
  border-radius:10px!important;
  min-width:44px!important;
  min-height:22px!important;
}


/* DFAS logged out write-control visibility */
body.dfas-logged-out button[data-dfas-hardwired-add-part],
body.dfas-logged-out button[data-dfas-hardwired-add-fault]{
  display:none!important;
}


/* DFAS terminal boot loader */
#dfasBootOverlay{
  position:fixed;
  inset:0;
  z-index:999999;
  display:flex;
  align-items:center;
  justify-content:center;
  background:
    radial-gradient(circle at top left, rgba(0,180,120,.18), transparent 34%),
    linear-gradient(135deg,#06110f,#081614 42%,#020404);
  color:#d7fff1;
  font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;
  transition:opacity .35s ease, transform .35s ease;
}
#dfasBootOverlay.done{
  opacity:0;
  pointer-events:none;
  transform:scale(1.015);
}
.dfas-boot-window{
  width:min(760px,92vw);
  border:1px solid rgba(66,255,190,.35);
  border-radius:18px;
  background:rgba(0,10,9,.84);
  box-shadow:0 24px 90px rgba(0,0,0,.55), inset 0 0 40px rgba(0,255,170,.05);
  overflow:hidden;
}
.dfas-boot-head{
  display:flex;
  align-items:center;
  gap:9px;
  padding:13px 16px;
  border-bottom:1px solid rgba(66,255,190,.25);
  background:rgba(255,255,255,.035);
  letter-spacing:.08em;
  font-size:13px;
}
.dfas-boot-dot{
  width:11px;
  height:11px;
  border-radius:50%;
  display:inline-block;
}
.dfas-boot-dot.red{background:#ff5f56}
.dfas-boot-dot.amber{background:#ffbd2e}
.dfas-boot-dot.green{background:#27c93f}
.dfas-boot-body{
  padding:18px;
}
#dfasBootLog{
  min-height:260px;
  margin:0 0 16px;
  white-space:pre-wrap;
  line-height:1.55;
  font-size:14px;
  color:#c7ffea;
  text-shadow:0 0 8px rgba(76,255,195,.18);
}
.dfas-boot-bar{
  height:10px;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  overflow:hidden;
  border:1px solid rgba(255,255,255,.08);
}
.dfas-boot-bar span{
  display:block;
  height:100%;
  width:0%;
  border-radius:999px;
  background:linear-gradient(90deg,#00ffa3,#4de0ff);
  box-shadow:0 0 18px rgba(0,255,180,.55);
  transition:width .25s ease;
}
@media (max-width:700px){
  .dfas-boot-window{width:94vw;border-radius:14px}
  #dfasBootLog{min-height:220px;font-size:12px}
  .dfas-boot-head{font-size:12px}
}


/* DFAS themed terminal boot loader override */
#dfasBootOverlay{
  position:fixed;
  inset:0;
  z-index:999999;
  display:flex;
  align-items:center;
  justify-content:center;
  background:
    radial-gradient(circle at 20% 10%, rgba(190,24,64,.12), transparent 34%),
    linear-gradient(135deg,#fff7f8,#f6f8fb 48%,#eef3f7);
  color:#111827;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  transition:opacity .35s ease, transform .35s ease;
}
#dfasBootOverlay.done{
  opacity:0;
  pointer-events:none;
  transform:scale(1.01);
}
.dfas-boot-window{
  width:min(820px,92vw);
  border:1px solid rgba(148,163,184,.28);
  border-radius:28px;
  background:rgba(255,255,255,.94);
  box-shadow:0 24px 90px rgba(15,23,42,.16);
  overflow:hidden;
}
.dfas-boot-brand{
  display:flex;
  align-items:center;
  gap:16px;
  padding:24px 26px 18px;
}
.dfas-boot-logo{
  width:52px;
  height:52px;
  border-radius:16px;
  display:grid;
  place-items:center;
  font-weight:950;
  color:#be123c;
  background:#fff;
  box-shadow:0 10px 26px rgba(15,23,42,.10);
  border:1px solid rgba(148,163,184,.24);
}
.dfas-boot-brand h1{
  margin:0;
  font-size:34px;
  line-height:1;
  letter-spacing:-.04em;
}
.dfas-boot-brand p{
  margin:7px 0 0;
  color:#64748b;
  font-weight:700;
}
.dfas-boot-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:0 26px 16px;
  border-bottom:1px solid rgba(148,163,184,.22);
}
.dfas-boot-pill{
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  padding:9px 14px;
  background:#be123c;
  color:#fff;
  font-weight:900;
  font-size:12px;
  letter-spacing:.08em;
}
.dfas-boot-live{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:#334155;
  font-weight:850;
}
.dfas-boot-live i{
  width:10px;
  height:10px;
  border-radius:50%;
  background:#10b981;
  box-shadow:0 0 0 6px rgba(16,185,129,.12);
  animation:dfasBootPulse 1.1s infinite;
}
@keyframes dfasBootPulse{
  0%,100%{transform:scale(1);opacity:1}
  50%{transform:scale(.72);opacity:.65}
}
.dfas-boot-body{
  padding:22px 26px 26px;
}
#dfasBootLog{
  min-height:290px;
  margin:0 0 18px;
  padding:18px;
  border-radius:18px;
  white-space:pre-wrap;
  line-height:1.55;
  font-size:14px;
  color:#0f172a;
  background:
    linear-gradient(180deg,rgba(248,250,252,.98),rgba(241,245,249,.98));
  border:1px solid rgba(148,163,184,.25);
  font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8);
}
.dfas-boot-bar{
  height:12px;
  border-radius:999px;
  background:#e2e8f0;
  overflow:hidden;
  border:1px solid rgba(148,163,184,.35);
}
.dfas-boot-bar span{
  display:block;
  height:100%;
  width:0%;
  border-radius:999px;
  background:linear-gradient(90deg,#be123c,#ef4444);
  box-shadow:0 0 20px rgba(190,18,60,.28);
  transition:width .25s ease;
}
.dfas-boot-foot{
  margin-top:12px;
  color:#64748b;
  font-size:13px;
  font-weight:800;
}
@media (max-width:700px){
  .dfas-boot-window{width:94vw;border-radius:20px}
  .dfas-boot-brand{padding:20px 18px 14px}
  .dfas-boot-brand h1{font-size:27px}
  .dfas-boot-head{padding:0 18px 14px;align-items:flex-start;flex-direction:column}
  .dfas-boot-body{padding:18px}
  #dfasBootLog{min-height:235px;font-size:12px;padding:14px}
}
