/* FIRELINE v1.0 independent firefighter/EMS UI. No SCALE DOM dependency. */
:root{color-scheme:dark;font:16px/1.5 system-ui,Segoe UI,Arial,sans-serif;background:#0b1014;color:#f4f1e8}
*{box-sizing:border-box}body{margin:0;min-height:100vh;background:linear-gradient(90deg,#641d19 0 6px,transparent 6px calc(100% - 6px),#641d19 calc(100% - 6px)),repeating-linear-gradient(125deg,#131a1e 0 5px,#192226 5px 10px)}
button,select,input{font:inherit}button,select{cursor:pointer}button{min-height:42px}input,select{min-height:44px;max-width:100%}input[type=checkbox]{min-height:0}
button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #ffc26b;outline-offset:2px}
[hidden]{display:none!important}small{font-size:.81rem;color:#b9c7c8}p{margin:.6rem 0 1rem}h1,h2,h3{margin:0 0 .4rem;line-height:1.2}
.shell{max-width:1150px;margin:auto;padding:0 clamp(12px,3vw,28px)}
.top{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;padding:20px;margin:20px 0 15px;background:linear-gradient(110deg,#5f191c,#253037 47%,#121c23);border:2px solid #adb4b2;border-top:7px solid #a42d22;box-shadow:0 7px 19px #0009}
.brand{display:flex;gap:16px;align-items:center}.brand img{width:64px;height:64px}.brand small{letter-spacing:.1em;color:#ffd1a0}.brand h1{font-size:clamp(1.9rem,4vw,3rem);letter-spacing:.08em;color:#fff2da}.brand p{color:#eec2a3;margin:0}.identity{text-align:right;display:grid;gap:4px;font:700 .76rem ui-monospace,Consolas,monospace;letter-spacing:.08em}.identity span{color:#ffca88}
.notice,.fireems-caution{padding:14px 18px;background:#3b2b23;border:2px solid #c68a48;color:#ffe0bd;border-radius:5px}
.fireems-deck{padding:clamp(14px,3vw,28px);margin:14px 0 28px;border:2px solid #9ba9ac;border-left:7px solid #a72a20;background:linear-gradient(145deg,#1d2d32,#111b22);box-shadow:inset 0 0 0 2px #0a1419,0 12px 24px #0009}
.fireems-heading,.fl-embedded-head{display:flex;justify-content:space-between;gap:14px;align-items:center;flex-wrap:wrap}.fireems-heading{border-bottom:2px solid #bb8d55;padding-bottom:13px;margin-bottom:19px}
.fireems-heading h2{font-size:clamp(1.4rem,3vw,2.2rem);letter-spacing:.04em}.section-kicker,.fireems-label{font:700 .75rem ui-monospace,Consolas,monospace;letter-spacing:.08em;color:#ffbf7c}
.fireems-fields,.fl-embedded-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}
.fireems-fields label,.fl-embedded-grid label,.fl-coefficient-guide label{display:grid;gap:5px;font:800 .79rem ui-monospace,Consolas,monospace;letter-spacing:.02em;color:#ffe0ad}
.fireems-fields input,.fireems-fields select,.fl-embedded input,.fl-embedded select{display:block;width:100%;padding:9px 12px;background:#0a151b;color:#f5f1e5;border:1px solid #8a9a9a;border-bottom:3px solid #c0bab1;border-radius:4px}
.fireems-output{grid-column:1/-1;padding:14px;background:#112127;border:1px solid #71858b;border-left:5px solid #a93625;display:grid;gap:5px}
.fireems-result{font-size:clamp(1.6rem,4vw,3rem);font-weight:900;color:#ffe49b;font-variant-numeric:tabular-nums}
.fireems-calculate{padding:10px 18px;background:linear-gradient(#d54d35,#87231d);border:1px solid #ffb66b;border-radius:4px;color:white;font-weight:900}
.fl-embedded{padding:18px;margin:18px 0;border:1px solid #a38e79;background:#15242b;border-radius:5px}
.fl-embedded-head{border-left:5px solid #bb3827;background:linear-gradient(90deg,#532523,#23353b);padding:12px;margin:14px 0;font-size:.93rem}
.fl-steps{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.fl-steps span{padding:7px 10px;background:#263b40;border:1px solid #71898d;font-weight:700;font-size:.75rem}
.fl-guide,.fl-breakdown,.fl-operator-readiness{padding:10px 12px;color:#d9e4e5;background:#1b3037;border-left:3px solid #d29b61;font-size:.88rem}
.fl-embedded-grid{margin:13px 0}.fl-advanced{padding:13px;background:#1b2930;border:1px solid #7d8b91}
.fl-advanced>summary,.fl-coefficient-guide>summary{cursor:pointer;font-weight:800;color:#ffcc83}
.fl-nozzle-section{padding:13px;border:1px solid #8d9d9e;background:#12252b}
.fl-pressure-confirm{display:flex!important;gap:10px;align-items:center;grid-column:1/-1;font-family:system-ui!important}
.fl-pressure-confirm input{width:20px;min-width:20px}
.fl-nozzle-readout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.fl-nozzle-readout strong{padding:10px;background:#0b3035;border:1px solid #688d91}.fl-nozzle-readout small{grid-column:1/-1}
.fl-final-panel{margin:18px 0;padding:16px;background:linear-gradient(130deg,#2c2521,#13262a);border:2px solid #d2a160}
.fl-final-panel[data-complete=yes]{border-color:#86c5ac;background:#17362f}
.fl-final-panel[data-complete=no]{border-color:#e9a75e;background:#38261f}
.fl-final-status{color:#ffce89;font-weight:900;letter-spacing:.05em}
.fl-final-number{display:flex;align-items:baseline;gap:12px}.fl-final-number strong{font:900 clamp(2.1rem,6vw,4.5rem) ui-monospace,Consolas,monospace;color:#fff1bd}.fl-final-number span{font-weight:800}
.fl-final-nozzle{padding:9px;background:#16393d}
button:hover:not(:disabled){filter:brightness(1.12)}
.fireems-caution{margin-top:20px}footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;border-top:1px solid #5b686b;padding:18px 3px 30px;color:#a8babb;font:.73rem ui-monospace,Consolas,monospace}
@media(max-width:700px){.fireems-fields,.fl-embedded-grid,.fl-nozzle-readout{grid-template-columns:1fr}.identity{text-align:left}.top{padding:14px}.fireems-deck{padding:13px}.fl-nozzle-readout small{grid-column:1}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
