/* MUTANT G03 — ONE VIAL. Reuses the approved G02 camera and Tripo environment. */
.g03-tracker{position:absolute;z-index:16;top:136px;left:22px;width:min(270px,28vw);padding:11px 13px;background:linear-gradient(145deg,#2a1539f0,#130a1be6);border:1px solid #d7ff8075;box-shadow:3px 4px 0 #e94da46b;pointer-events:none}
.g03-tracker-tag{display:block;color:#f792cf;font:900 9px/1.35 var(--mono);letter-spacing:.09em}
.g03-tracker b{display:block;margin:5px 0 5px;font:950 16px/1.07 var(--heavy);color:#e8ff9a}
.g03-tracker small{display:block;color:#e0c9e4;font:780 9px/1.4 var(--mono)}
.g03-backdrop{position:absolute;z-index:27;inset:0;display:flex;align-items:center;justify-content:center;padding:20px;background:#08040fd9;backdrop-filter:blur(6px)}
.g03-device{width:min(1050px,100%);max-height:min(94vh,820px);overflow:auto;border:2px solid var(--acid);background:radial-gradient(ellipse at 8% 15%,#54305b4a,transparent 60%),linear-gradient(140deg,#2a1637,#0f0a1b 86%);box-shadow:8px 8px 0 #ee48aa,0 20px 70px #000a}
.g03-device-header{display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid #dfff8272;padding:12px 18px;background:#0e0b16;color:#f1bde4;font:880 10px/1.4 var(--mono);letter-spacing:.03em}
.g03-device-header button{cursor:pointer;padding:9px 11px;color:var(--acid);background:#2c1738;border:1px solid #e5ff876e;font:850 10px var(--mono)}
.g03-device-header button:hover{background:#51315d}
.g03-device-layout{display:grid;grid-template-columns:1fr .94fr;gap:0}
.g03-device-control{padding:27px 28px 30px;border-right:1px solid #a36fb073}
.g03-title-kicker{color:#f899c5;font:850 11px var(--mono)}
.g03-device h2{margin:12px 0 15px;color:#fff;font:950 clamp(40px,5.2vw,73px)/.9 var(--heavy)}
.g03-device h2 em{color:var(--acid);font-style:normal}
#g03Instruction{color:#e7d8eb;line-height:1.6;min-height:48px;font-size:14px}
.g03-gauge{margin:21px 0 18px;border:1px solid #926cae;background:#120c1c;padding:18px}
.g03-gauge-label{display:flex;align-items:center;justify-content:space-between;gap:10px}
.g03-gauge label{font:840 10px var(--mono);color:#d4bbdf}
.g03-gauge output{font:950 32px var(--mono);color:var(--acid);font-variant-numeric:tabular-nums}
.g03-gauge input{width:100%;margin:19px 0 13px;accent-color:var(--acid);cursor:pointer}
.g03-gauge input:disabled{opacity:.4;cursor:not-allowed}
.g03-target{display:flex;justify-content:space-between;align-items:center;gap:5px;font:780 9px/1.5 var(--mono);color:#ac9bb4}
.g03-target b{color:#dfff83;text-align:center}
.g03-scan{border:0;background:var(--acid);color:#211224;width:100%;font:950 15px var(--mono);padding:15px;box-shadow:5px 5px 0 #ea53ab;cursor:pointer}
.g03-scan:disabled{background:#51435b;color:#bbb1c5;box-shadow:none;cursor:not-allowed}
.g03-scan:not(:disabled):hover{filter:brightness(1.08)}
.g03-scan-status{margin-top:15px}
.g03-scan-status progress{width:100%;height:12px;accent-color:var(--acid);background:#120b1b}
.g03-scan-status small{display:block;margin-top:8px;font:820 10px/1.45 var(--mono);color:#e9bede}
.g03-device-results{padding:25px 24px 26px;display:flex;flex-direction:column;gap:13px;background:linear-gradient(150deg,#21112f,#1a1025)}
.g03-data-caption{font:900 10px var(--mono);color:var(--acid);letter-spacing:.045em}
.g03-result{padding:20px 16px;background:#0b0a17;border:1px solid #9f71ab;min-height:145px}
.g03-result strong{display:block;color:#ffb7e0;font:900 clamp(20px,2.5vw,32px)/1 var(--heavy)}
.g03-result span{display:block;color:#d9c9de;margin-top:10px;font:780 11px/1.65 var(--mono);white-space:pre-wrap}
.g03-result[data-quality="clean"]{border-color:var(--acid);box-shadow:inset 0 0 19px #9cff3322}
.g03-result[data-quality="clean"] strong{color:var(--acid)}
.g03-result[data-quality="uncertain"]{border-color:#ffab89}
.g03-result[data-quality="contaminated"]{border-color:#fa608e}
.g03-report-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.g03-report-actions button{font:870 9px/1.4 var(--mono);min-height:58px;padding:8px 7px;background:#2d1b3c;border:1px solid #a578bb;color:#ecdbe9;cursor:pointer}
.g03-report-actions button:nth-child(1){color:#b0ffe2}
.g03-report-actions button:nth-child(2){color:#dfff8b}
.g03-report-actions button:nth-child(3){color:#ffa8dc}
.g03-report-actions button[aria-pressed="true"]{background:#6c3566;border-color:var(--acid);box-shadow:inset 0 0 0 1px #e6ff94}
.g03-report-actions button:disabled{opacity:.3;cursor:not-allowed}
.g03-audit{background:#0d0b18;padding:13px;border:1px solid #73578b}
.g03-audit span{font:850 9px/1.2 var(--mono);color:#ffaed5;display:block;margin-bottom:8px}
.g03-audit code{font:750 10px/1.55 var(--mono);white-space:pre-wrap;color:#dcd0df;display:block;min-height:40px}
.g03-tg{border-top:1px solid #896ba5;padding-top:12px;display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:auto}
.g03-tg-title{grid-column:1/-1;font:900 10px var(--mono);color:var(--acid)}
.g03-tg button{background:#1f1a2b;color:#ddff9d;border:1px solid #a6da6f;padding:11px 9px;cursor:pointer;font:880 10px var(--mono)}
.g03-tg button:disabled{opacity:.32;cursor:not-allowed}
.g03-tg small{grid-column:1/-1;font:750 9px/1.55 var(--mono);color:#c9b8d3}
.g03-restart{align-self:flex-start;background:transparent;border:1px solid #a77daf;color:#e2c0e0;font:840 9px var(--mono);padding:8px 12px;cursor:pointer;margin-top:5px}
.g03-restart:hover{background:#40294a}
.g03-device button:focus-visible,.g03-device input:focus-visible{outline:2px solid var(--acid);outline-offset:3px}
.g03-tracker[data-phase="carried"]{border-color:#83eeed}
.g03-tracker[data-phase="report"]{border-color:var(--acid);box-shadow:3px 4px 0 #d4ff6a77}
@media(max-width:940px){.g03-tracker{left:12px;top:125px;width:240px}.g03-device-layout{grid-template-columns:1fr}.g03-device{max-width:600px}.g03-device-control{border-right:none;border-bottom:1px solid #9a73b7}.g03-device h2{font-size:46px}.g03-device-control{padding:22px}.g03-device-results{padding:22px}}
@media(max-width:670px){.g03-tracker{left:10px;top:97px;width:min(225px,51vw);padding:8px 9px}.g03-tracker b{font-size:12px}.g03-tracker small{font-size:7px}.g03-backdrop{padding:8px}.g03-device{max-height:calc(100dvh - 16px);box-shadow:3px 4px 0 #ee48aa}.g03-device-header{padding:10px;font-size:8px}.g03-device-header button{font-size:8px}.g03-device-control{padding:17px 15px}.g03-device-results{padding:15px}.g03-device h2{font-size:38px}.g03-gauge{padding:12px}.g03-report-actions button{font-size:8px;min-height:49px}.g03-result{min-height:90px;padding:12px}.g03-result strong{font-size:20px}.g03-tg button{font-size:9px}.g03-target{font-size:7px}.g03-device{font-size:12px}}
@media(prefers-reduced-motion:reduce){.g03-result,.g03-tracker{transition:none!important}}
