*{box-sizing:border-box} :root{--bg:#07120d;--bg2:#0a1912;--panel:#0c1d15;--panel2:#10281d;--line:#6bf4b1;--line2:#295c47;--text:#e4fff3;--muted:#9dbbad;--amber:#ffd15a;--red:#ff766f;--blue:#7fd7ff;--purple:#d8a4ff;--shadow:rgba(77,255,170,.13)}
html{background:#030806;color:var(--text);font-family:ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",monospace}body{margin:0;min-height:100vh;background:radial-gradient(circle at 45% -20%,#133829 0,#08150f 38%,#030806 78%);font-size:15px}.scanlines{pointer-events:none;position:fixed;inset:0;z-index:9999;opacity:.06;background:repeating-linear-gradient(0deg,transparent 0 3px,#fff 4px);mix-blend-mode:screen}.shell{width:min(1500px,calc(100% - 24px));margin:auto}.topbar{padding:22px 0 12px;display:flex;gap:18px;align-items:flex-end;justify-content:space-between}.brand h1{margin:0;color:#b9ffdc;font-size:clamp(1.7rem,4vw,3.2rem);letter-spacing:.06em;text-shadow:0 0 16px var(--shadow)}.brand small{color:var(--muted)}.buildbadge{border:1px solid var(--line2);padding:8px 10px;border-radius:8px;background:#07130e;color:#bfffe0;text-align:right}.nav{display:flex;gap:8px;overflow:auto;position:sticky;top:0;z-index:20;padding:9px 0;background:rgba(3,8,6,.94);backdrop-filter:blur(7px);border-top:1px solid #133d2d;border-bottom:1px solid #133d2d}.nav button,.btn{font:inherit;color:#c9ffe3;background:#0a1a13;border:1px solid #2b694f;border-radius:7px;padding:8px 11px;cursor:pointer}.nav button:hover,.btn:hover{border-color:var(--line);background:#0f271c}.nav button.active{background:#173b2b;border-color:var(--line);box-shadow:0 0 13px var(--shadow)}.view{display:none;padding:20px 0 55px}.view.active{display:block}.panel{background:linear-gradient(180deg,rgba(16,40,29,.96),rgba(8,21,15,.96));border:1px solid #285f48;border-radius:11px;padding:15px;box-shadow:0 16px 45px rgba(0,0,0,.24)}.panel h2,.panel h3{margin-top:0;color:#baffdc}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.sim-layout{display:grid;grid-template-columns:330px minmax(380px,1fr) minmax(320px,.8fr);gap:14px}.label{display:block;color:var(--muted);font-size:.82rem;margin-bottom:4px}.field{margin-bottom:10px}input,select{width:100%;background:#06110c;color:var(--text);border:1px solid #285f48;border-radius:6px;padding:7px;font:inherit}input[type=checkbox]{width:auto;accent-color:#6bf4b1}.body{position:relative;height:510px;margin:auto;width:250px}.part{position:absolute;border:1px solid #3d8464;background:#0b2419;color:#d8ffeb;text-align:center;cursor:pointer;display:grid;place-items:center;transition:.15s;border-radius:13px;font-size:.78rem;overflow:hidden}.part:hover,.part.sel{border-color:#a8ffcf;background:#174431;box-shadow:0 0 14px var(--shadow)}.part.bad{box-shadow:inset 0 0 20px rgba(255,105,92,.25);border-color:#a55}.head{left:90px;top:5px;width:70px;height:70px;border-radius:50%}.chest{left:70px;top:82px;width:110px;height:118px}.groin{left:82px;top:205px;width:86px;height:58px}.larm{left:18px;top:86px;width:47px;height:120px}.rarm{right:18px;top:86px;width:47px;height:120px}.lhand{left:9px;top:211px;width:48px;height:52px}.rhand{right:9px;top:211px;width:48px;height:52px}.lleg{left:71px;top:270px;width:48px;height:150px}.rleg{right:71px;top:270px;width:48px;height:150px}.lfoot{left:57px;top:427px;width:62px;height:45px}.rfoot{right:57px;top:427px;width:62px;height:45px}.statusline{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0}.tag{display:inline-flex;align-items:center;gap:5px;border:1px solid #39785c;border-radius:999px;padding:3px 8px;font-size:.78rem;color:#bfffe0;background:#07150f}.tag.red{border-color:#87443e;color:#ffaaa4}.tag.amber{border-color:#816b2b;color:#ffe08a}.tag.blue{border-color:#386d82;color:#a8e8ff}.metric{display:grid;grid-template-columns:1fr auto;gap:10px;padding:7px 0;border-bottom:1px solid #183b2c}.metric:last-child{border-bottom:0}.metric b{color:#d8ffeb}.bar{height:8px;background:#06110c;border:1px solid #285f48;border-radius:5px;overflow:hidden;margin-top:4px}.bar>i{display:block;height:100%;background:linear-gradient(90deg,#4cd98f,#d2ff87);width:0}.action-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.action{border:1px solid #2d694f;background:#081811;border-radius:8px;padding:8px;cursor:pointer;color:var(--text);text-align:left;font:inherit}.action:hover{border-color:var(--line)}.action img{width:42px;height:42px;object-fit:contain;image-rendering:pixelated;float:left;margin-right:8px}.action small{display:block;color:var(--muted)}.log{height:180px;overflow:auto;background:#030b07;border:1px solid #214d3a;border-radius:7px;padding:8px;font-size:.82rem}.log div{padding:2px 0;border-bottom:1px dotted #143326}.ok{color:#83ffb7}.warn{color:var(--amber)}.err{color:#ff918a}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:12px}.card{background:#091811;border:1px solid #285f48;border-radius:10px;padding:12px;display:grid;grid-template-columns:74px 1fr;gap:10px;cursor:pointer;min-height:112px}.card:hover{border-color:#70dca7;background:#0c2117}.spritebox{height:74px;width:74px;display:grid;place-items:center;background:#050d09;border:1px solid #1e4836;border-radius:8px}.spritebox img{max-width:64px;max-height:64px;image-rendering:pixelated}.card h3{font-size:1rem;margin:0 0 4px;color:#d8ffeb}.card p{margin:0;color:var(--muted);font-size:.8rem}.toolbar{display:grid;grid-template-columns:minmax(220px,1fr) 220px;gap:8px;margin-bottom:13px}.drawer{position:fixed;right:0;top:0;height:100vh;width:min(560px,95vw);background:#07140e;border-left:1px solid #4a9672;z-index:200;padding:18px;overflow:auto;transform:translateX(102%);transition:.2s;box-shadow:-25px 0 70px #000}.drawer.open{transform:translateX(0)}.drawer-head{display:flex;justify-content:space-between;gap:12px}.drawer img.big{width:128px;height:128px;object-fit:contain;image-rendering:pixelated;background:#030a07;border:1px solid #285f48;border-radius:9px}.kv{width:100%;border-collapse:collapse}.kv td{border-bottom:1px solid #173a2b;padding:6px;vertical-align:top}.kv td:first-child{color:#99bcae;width:42%}.code{white-space:pre-wrap;word-break:break-word;background:#030b07;border:1px solid #1c4734;border-radius:7px;padding:9px;color:#bfffe0;font-size:.8rem}.drugrow{display:grid;grid-template-columns:64px minmax(150px,1fr) repeat(4,minmax(75px,.5fr));gap:8px;align-items:center;padding:8px;border-bottom:1px solid #173a2b}.drugrow img{width:48px;height:48px;object-fit:contain;image-rendering:pixelated}.surgery-layout{display:grid;grid-template-columns:310px 1fr 360px;gap:14px}.toolrack{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.toolbtn{background:#07140e;border:1px solid #285f48;color:var(--text);border-radius:8px;padding:7px;cursor:pointer;font:inherit;min-height:92px}.toolbtn:hover{border-color:var(--line)}.toolbtn img{width:45px;height:45px;object-fit:contain;image-rendering:pixelated;display:block;margin:auto}.gates{display:flex;flex-wrap:wrap;gap:6px}.gate{padding:4px 7px;border-radius:5px;border:1px solid #426f5a;background:#10261c;font-size:.78rem}.oplist{display:grid;gap:7px}.op{border:1px solid #275e47;border-radius:7px;padding:8px;background:#081711}.op.valid{border-color:#5fd899}.op.blocked{opacity:.54}.op strong{color:#c9ffe3}.exact{color:#8bffc0}.model{color:#ffd878}.fidelity{display:grid;grid-template-columns:1fr 1fr;gap:15px}.fidelity ul{margin:0;padding-left:20px}.source-table{width:100%;border-collapse:collapse}.source-table th,.source-table td{text-align:left;padding:8px;border-bottom:1px solid #193c2d}.source-table th{color:#aefbd0}.empty{padding:30px;text-align:center;color:var(--muted)}.flash{animation:flash .35s}@keyframes flash{50%{box-shadow:0 0 25px rgba(116,255,180,.45)}}.loadblock{border:1px solid #285f48;border-radius:10px;background:#081711;padding:12px;margin:10px 0}.loadhead{display:flex;gap:12px;align-items:center}.loadhead h3{margin:5px 0}.nested{margin:10px 0 0 86px;padding:10px;border-left:2px solid #285f48;background:#06110c;border-radius:0 8px 8px 0}.nested h4{display:flex;gap:8px;align-items:center;margin:0 0 8px;color:#baffdc}.loadgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(235px,1fr));gap:7px}.loaditem{display:flex;gap:8px;align-items:center;border:1px solid #1e4836;border-radius:7px;padding:6px;background:#091811;cursor:pointer}.loaditem:hover{border-color:var(--line)}.loaditem small{display:block;color:var(--muted);font-size:.74rem}.miniSprite{width:42px;height:42px;display:grid;place-items:center;flex:0 0 42px}.miniSprite img{max-width:38px;max-height:38px;object-fit:contain;image-rendering:pixelated}.small{color:var(--muted);font-size:.85rem}@media(max-width:1150px){.sim-layout,.surgery-layout{grid-template-columns:1fr 1fr}.sim-layout>*:last-child,.surgery-layout>*:last-child{grid-column:1/-1}}@media(max-width:750px){.nested{margin-left:0}.loadgrid{grid-template-columns:1fr}.grid2,.grid3,.sim-layout,.surgery-layout,.fidelity{grid-template-columns:1fr}.toolbar{grid-template-columns:1fr}.drugrow{grid-template-columns:50px 1fr}.drugrow>*:nth-child(n+3){grid-column:2}.action-grid{grid-template-columns:1fr}.topbar{align-items:flex-start;flex-direction:column}.buildbadge{text-align:left}}

/* Unified trauma/surgery simulator v2 */
.sim-banner{margin-bottom:14px}.trauma-layout{display:grid;grid-template-columns:330px minmax(420px,1fr) minmax(360px,.9fr);gap:14px}.action-layout{display:grid;grid-template-columns:1fr 1.15fr 1fr;gap:14px}.surgery-unified{display:grid;grid-template-columns:1fr 1.1fr 1fr;gap:14px}.injury-matrix{display:grid;grid-template-columns:1fr 1fr;gap:5px}.injury-row{font:inherit;text-align:left;background:#07140e;border:1px solid #245840;color:#d5ffea;border-radius:6px;padding:7px;cursor:pointer;display:grid;grid-template-columns:55px 1fr;gap:2px 6px}.injury-row small{grid-column:1/-1;color:#8fb5a4}.injury-row.sel{border-color:#6bf4b1;background:#143929}.organ-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.organ-cell{padding:7px;border:1px solid #214e3a;border-radius:7px;background:#07140e}.organ-cell.selected-organ{border-color:#4cae7f;background:#0d2419}.medication-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;max-height:500px;overflow:auto;padding-right:3px}.compact-action{width:100%;margin-bottom:7px;grid-template-columns:42px 1fr}.compact-action img{width:34px;height:34px}.tall-log{min-height:440px;max-height:680px}.warning{border-left-color:#ffd15a!important}.action small{line-height:1.25}.op.valid{box-shadow:inset 3px 0 #65e6a7}.op.blocked{opacity:.55}.selected-organ input{border-color:#4cae7f}
@media(max-width:1250px){.trauma-layout{grid-template-columns:320px 1fr}.trauma-layout>div:last-child{grid-column:1/-1}.action-layout,.surgery-unified{grid-template-columns:1fr 1fr}.action-layout>div:last-child,.surgery-unified>div:last-child{grid-column:1/-1}}
@media(max-width:780px){.trauma-layout,.action-layout,.surgery-unified{grid-template-columns:1fr}.trauma-layout>div:last-child,.action-layout>div:last-child,.surgery-unified>div:last-child{grid-column:auto}.organ-grid,.medication-grid{grid-template-columns:1fr 1fr}.injury-matrix{grid-template-columns:1fr}}



/* Simple first-aid simulator */
.fa-layout{display:grid;grid-template-columns:.8fr 1fr 1.1fr;gap:14px}.fa-actions{display:grid;grid-template-columns:1fr 1.15fr 1fr;gap:14px}.fa-presets{display:grid;grid-template-columns:1fr 1fr;gap:7px}.fa-preset{font:inherit;text-align:left;color:#dcfff0;background:#07140e;border:1px solid #285f48;border-radius:7px;padding:9px;cursor:pointer}.fa-preset:hover{border-color:var(--line);background:#10281d}.fa-preset b{display:block;color:#baffdc}.fa-preset small{display:block;color:var(--muted);margin-top:3px}.fa-injury-summary{display:grid;grid-template-columns:1fr 1fr;gap:5px;max-height:210px;overflow:auto}.fa-zone-row{font:inherit;text-align:left;color:#d5ffea;background:#07140e;border:1px solid #245840;border-radius:6px;padding:6px 8px;cursor:pointer}.fa-zone-row.sel{border-color:#6bf4b1;background:#143929}.fa-zone-row.bad{box-shadow:inset 3px 0 #ffb45a}.fa-zone-row small{display:block;color:#9dbbad}.fa-med-grid{max-height:550px}.action:disabled,.btn:disabled,.fa-preset:disabled{opacity:.38;cursor:not-allowed;filter:grayscale(.6)}.fa-danger{border-left:4px solid var(--red);padding-left:12px}.fa-ok{border-left:4px solid var(--line);padding-left:12px}.fa-warn{border-left:4px solid var(--amber);padding-left:12px}.mini-progress{height:8px;border-radius:999px;background:#06110c;border:1px solid #285f48;overflow:hidden;margin-top:5px}.mini-progress i{display:block;height:100%;background:#6bf4b1}
@media(max-width:1200px){.fa-layout{grid-template-columns:1fr 1fr}.fa-layout>div:last-child{grid-column:1/-1}.fa-actions{grid-template-columns:1fr 1fr}.fa-actions>div:last-child{grid-column:1/-1}}
@media(max-width:780px){.fa-layout,.fa-actions{grid-template-columns:1fr}.fa-layout>div:last-child,.fa-actions>div:last-child{grid-column:auto}.fa-presets,.fa-injury-summary{grid-template-columns:1fr}}

/* Public release polish */
:root{--panelSoft:#0a1711;--cyan:#7fd7ff}
body{line-height:1.45}.scanlines{opacity:.035}.brand small{display:block;margin-top:5px;max-width:820px}.buildbadge small{color:var(--muted)}
button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--line);outline-offset:2px}
.nav button{white-space:nowrap}.nav::-webkit-scrollbar{height:6px}.nav::-webkit-scrollbar-thumb{background:#285f48;border-radius:99px}
.hero{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(260px,.7fr);gap:18px;align-items:center;margin-bottom:14px;background:linear-gradient(135deg,rgba(23,66,47,.96),rgba(8,21,15,.96))}.hero h2{font-size:clamp(1.55rem,3vw,2.4rem);margin:.25rem 0}.hero p{max-width:900px;margin-bottom:0}.eyebrow{font-size:.76rem;color:var(--line);letter-spacing:.14em;font-weight:700}.hero-badges{display:flex;flex-wrap:wrap;gap:7px;justify-content:flex-end}.exact-badge{border-color:#3f8e67;color:#8bffc0}.model-badge{border-color:#8b6f25;color:#ffd878}
.home-paths{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:14px}.path-card{position:relative;text-align:left;color:var(--text);background:linear-gradient(180deg,#10281d,#081711);border:1px solid #285f48;border-radius:11px;padding:18px;cursor:pointer;font:inherit;min-height:200px;overflow:hidden}.path-card:hover{border-color:var(--line);transform:translateY(-1px);box-shadow:0 12px 35px rgba(0,0,0,.25)}.path-card h3{margin:28px 0 8px;color:#caffdf;font-size:1.05rem}.path-card p{color:var(--muted);margin:0 0 13px}.path-card b{color:var(--line)}.path-num{position:absolute;top:10px;right:14px;font-size:2.2rem;color:rgba(107,244,177,.18);font-weight:800}
.home-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:14px}.quick-aid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.quick-row{display:grid;grid-template-columns:48px minmax(0,1fr);gap:9px;align-items:center;background:#07140e;border:1px solid #214e3a;border-radius:8px;padding:8px}.quick-row img{width:42px;height:42px;object-fit:contain;image-rendering:pixelated}.quick-row b{display:block;color:#d9ffeb}.quick-row small{display:block;color:var(--muted);line-height:1.25}.rule-list{display:grid;gap:8px}.rule-list>div{padding:9px 10px;border-left:3px solid #3d8464;background:#07140e;border-radius:0 7px 7px 0}.rule-list b,.rule-list span{display:block}.rule-list span{color:var(--muted);font-size:.84rem;margin-top:2px}.release-note{border-color:#6d5c23;background:#1a170b;color:#ffe69b}
.advanced{margin:0 0 12px;border:1px solid #214e3a;background:#06110c;border-radius:7px;padding:7px 9px}.advanced summary{cursor:pointer;color:#baffdc}.advanced select{margin-top:5px}
.footer{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;color:#73998a;border-top:1px solid #173a2b;padding:22px 0 38px;font-size:.78rem}
.op.valid::before{content:'READY';float:right;font-size:.68rem;color:#8bffc0;border:1px solid #34785a;border-radius:999px;padding:2px 6px}.op.blocked::before{content:'LOCKED';float:right;font-size:.68rem;color:#9dbbad;border:1px solid #365244;border-radius:999px;padding:2px 6px}
.action,.toolbtn,.card,.loaditem,.injury-row,.fa-zone-row,.fa-preset,.path-card{transition:border-color .14s,background .14s,transform .14s,box-shadow .14s}
.action:active,.toolbtn:active,.path-card:active{transform:translateY(1px)}
.small code,.panel code{color:#adf4ce}.callout{border-left:3px solid #3d8464;padding:10px 12px;background:#07140e;border-radius:0 7px 7px 0}
@media(max-width:980px){.hero,.home-grid{grid-template-columns:1fr}.hero-badges{justify-content:flex-start}.home-paths{grid-template-columns:1fr 1fr}.home-paths .path-card:last-child{grid-column:1/-1;min-height:150px}}
@media(max-width:650px){body{font-size:14px}.shell{width:min(100% - 14px,1500px)}.scanlines{display:none}.home-paths,.quick-aid{grid-template-columns:1fr}.home-paths .path-card:last-child{grid-column:auto}.path-card{min-height:155px;padding:15px}.nav{margin-left:-7px;margin-right:-7px;padding-left:7px;padding-right:7px}.nav button{padding:8px 9px}.panel{padding:12px}.body{transform:scale(.9);transform-origin:top center;margin-bottom:-45px}.footer{padding-bottom:24px}}

/* Release interaction/help cards */
kbd{display:inline-block;padding:1px 5px;border:1px solid #426f5a;border-bottom-width:2px;border-radius:4px;background:#050d09;color:#eafff4;font:inherit;font-size:.83em}.interaction-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.interaction-card{display:grid;grid-template-columns:auto 1fr;gap:6px 8px;align-items:start;padding:11px;background:#07140e;border:1px solid #214e3a;border-radius:8px}.interaction-card>.tag{grid-row:1/3}.interaction-card>b{color:#d9ffeb}.interaction-card>span:last-child{grid-column:2;color:var(--muted);font-size:.84rem;line-height:1.35}.ui-badge{border-color:#4b7185;color:#9fe3ff;background:#08151b}
@media(max-width:1050px){.interaction-grid{grid-template-columns:1fr 1fr}}@media(max-width:650px){.interaction-grid{grid-template-columns:1fr}}


/* Discord/public-guide readability additions */
.workflow-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:14px}.workflow-strip>div{background:#07140e;border:1px solid #214e3a;border-radius:8px;padding:10px}.workflow-strip b{display:block;color:#baffdc;margin-bottom:4px}.workflow-strip span{display:block;color:var(--muted);font-size:.82rem;line-height:1.3}.procedure-panel{margin-bottom:14px}.procedure-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.procedure-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:12px 0}.procedure-grid article{background:#07140e;border:1px solid #214e3a;border-radius:8px;padding:11px}.procedure-grid h3{font-size:.94rem;margin:0 0 6px;color:#caffdf}.procedure-grid p{margin:0;color:#d9f7e8;font-size:.83rem;line-height:1.45}.procedure-grid small{display:block;color:var(--muted);margin-top:7px;line-height:1.3}.med-provenance{grid-column:1/-1;margin-bottom:2px}.sim-banner h2{margin:.3rem 0}.sim-banner p{margin-bottom:0}
@media(max-width:1050px){.workflow-strip{grid-template-columns:1fr 1fr}.procedure-grid{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.workflow-strip,.procedure-grid{grid-template-columns:1fr}.procedure-head{display:block}.procedure-head>.tag{margin-top:5px}}

.update-badge{border-color:#5d62b8!important;color:#c8caff!important;background:#111336!important}.medical-update-panel{margin-top:14px;border-color:#4d5895}.update-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.update-grid article{border:1px solid #343d72;background:#090d24;border-radius:9px;padding:12px}.update-grid h3{margin:0 0 7px;color:#d7dbff}.scan-advice{border:1px solid #3b755a;border-radius:8px;background:#07150f;padding:10px;margin:8px 0}.scan-advice strong{display:block;font-size:1.05rem}.scan-advice.defib{border-color:#5ea781}.scan-advice.surgery{border-color:#9a7435;background:#211a0c}.scan-advice.gone{border-color:#963e3e;background:#210b0b}.anesthesia-board{border:1px solid #386751;border-radius:8px;padding:10px;background:#06130d;margin-bottom:9px}.anesthesia-board .metric b.on{color:#9dffd0}.anesthesia-board .metric b.off{color:#ffcf7a}.action[disabled],.btn[disabled]{opacity:.45;cursor:not-allowed}@media(max-width:900px){.update-grid{grid-template-columns:1fr}}

/* Real-time simulator release 1.2 */
.realtime-panel{margin-top:14px;border-color:#2e7a5c;background:linear-gradient(180deg,rgba(26,73,54,.42),rgba(8,22,17,.92))}
.rt-head{display:flex;gap:16px;align-items:flex-start;justify-content:space-between;flex-wrap:wrap}
.rt-clock{font-size:2.25rem;line-height:1;font-weight:900;letter-spacing:.06em;color:#c8ffe5;text-shadow:0 0 16px rgba(94,255,181,.18)}
.rt-sub{display:block;color:#89bca7;font-size:.78rem;margin-top:5px;letter-spacing:.05em}
.rt-controls{display:flex;gap:7px;flex-wrap:wrap;align-items:center}
.rt-controls .btn{min-width:84px}
.rt-controls select{width:auto;min-width:82px}
.rt-run{border-color:#42d898!important;color:#caffe7!important}
.rt-pause{border-color:#d9b54a!important;color:#ffe99b!important}
.rt-monitor{display:grid;grid-template-columns:repeat(6,minmax(110px,1fr));gap:8px;margin-top:13px}
.rt-monitor .rt-cell{border:1px solid #24483b;background:#07120e;border-radius:9px;padding:9px 10px;min-width:0}
.rt-monitor small{display:block;color:#789d8d;font-size:.68rem;text-transform:uppercase;letter-spacing:.07em}
.rt-monitor b{display:block;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rt-action{margin-top:12px;border:1px solid #315d4c;background:#081711;border-radius:10px;padding:11px 12px}
.rt-action.idle{opacity:.72}
.rt-action-top{display:flex;justify-content:space-between;gap:12px;align-items:center}
.rt-action-title{font-weight:800;color:#d5ffec}
.rt-action-time{font-variant-numeric:tabular-nums;color:#ffe49a}
.rt-progress{height:10px;border-radius:999px;background:#020705;border:1px solid #284d3e;overflow:hidden;margin-top:8px}
.rt-progress>i{display:block;height:100%;width:0;background:linear-gradient(90deg,#3fc98f,#85ffd0);transition:width .08s linear}
.rt-action-bottom{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-top:8px;color:#89ad9e;font-size:.78rem}
.rt-model-settings{margin-top:10px}
.rt-model-settings summary{cursor:pointer;color:#a5d8c2}
.rt-model-grid{display:grid;grid-template-columns:repeat(3,minmax(180px,1fr));gap:8px;margin-top:9px}
.rt-model-grid label{border:1px solid #294d3f;background:#07120e;border-radius:8px;padding:9px;display:flex;gap:8px;align-items:flex-start}
.rt-model-grid input{width:auto;margin-top:2px}
.rt-model-note{color:#d6b765}
.rt-pulse{animation:rtpulse 1.25s ease-in-out infinite}
@keyframes rtpulse{50%{box-shadow:0 0 0 2px rgba(71,224,159,.12),0 0 18px rgba(71,224,159,.12)}}
.rt-critical{color:#ff8d8d!important}.rt-warning{color:#ffd477!important}.rt-good{color:#83efb8!important}
@media(max-width:900px){.rt-monitor{grid-template-columns:repeat(3,1fr)}.rt-model-grid{grid-template-columns:1fr}}
@media(max-width:520px){.rt-monitor{grid-template-columns:repeat(2,1fr)}.rt-clock{font-size:1.9rem}.rt-controls .btn{min-width:70px;padding-left:8px;padding-right:8px}}


/* v1.2.1 — First Aid timer directly below Scenario */
.fa-stack{display:grid;gap:14px;align-content:start;min-width:0}
.fa-stack #faRealtimePanel{margin-top:0}
.fa-stack #faRealtimePanel .rt-head{display:grid;grid-template-columns:1fr;gap:12px}
.fa-stack #faRealtimePanel .rt-controls{display:grid;grid-template-columns:1fr 1fr;gap:7px;width:100%}
.fa-stack #faRealtimePanel .rt-controls .btn{min-width:0;width:100%}
.fa-stack #faRealtimePanel .rt-controls label{grid-column:1/-1}
.fa-stack #faRealtimePanel .rt-controls select{width:100%}
.fa-stack #faRealtimePanel .rt-monitor{grid-template-columns:1fr 1fr}
.fa-stack #faRealtimePanel .rt-action-bottom{align-items:flex-start;flex-direction:column}
.fa-stack #faRealtimePanel .rt-action-bottom .btn{width:100%}
.fa-stack #faRealtimePanel .rt-model-grid{grid-template-columns:1fr}
@media(max-width:1200px){
  .fa-stack #faRealtimePanel .rt-monitor{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:780px){
  .fa-stack #faRealtimePanel .rt-controls{grid-template-columns:1fr 1fr}
  .fa-stack #faRealtimePanel .rt-monitor{grid-template-columns:repeat(2,1fr)}
}


/* v1.2.3 responsive flow */
.fa-top{display:grid;gap:14px}
.fa-top-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;align-items:start}
.fa-top-row>.panel{height:auto;align-self:start;min-width:0}
.fa-timer-row,.fa-injury-row{display:block;min-width:0}
.fa-timer-row #faRealtimePanel,.fa-injury-row>.panel{width:100%;margin:0}
#faRealtimePanel .rt-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}
#faRealtimePanel .rt-controls{display:flex;gap:7px;flex-wrap:wrap;align-items:end}
#faRealtimePanel .rt-controls label{min-width:115px}
#faRealtimePanel .rt-monitor{grid-template-columns:repeat(6,minmax(0,1fr))}
#faRealtimePanel .rt-action-bottom{flex-direction:row;align-items:center}
#faRealtimePanel .rt-model-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
#sim .procedure-panel + .sim-banner{margin-top:14px}
#sim .sim-banner + #advRealtimePanel{margin-top:14px}
#advRealtimePanel{width:100%}
@media(max-width:1050px){
  .fa-top-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  #faRealtimePanel .rt-monitor{grid-template-columns:repeat(3,minmax(0,1fr))}
  #faRealtimePanel .rt-model-grid{grid-template-columns:1fr}
  .fa-actions{grid-template-columns:1fr 1fr}
  .fa-actions>div:last-child{grid-column:1/-1}
  .procedure-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:680px){
  .wrap{width:min(100% - 18px,1180px)}
  .fa-top-row{grid-template-columns:1fr}
  #faRealtimePanel .rt-head{display:grid;grid-template-columns:1fr}
  #faRealtimePanel .rt-controls{display:grid;grid-template-columns:1fr 1fr;width:100%}
  #faRealtimePanel .rt-controls .btn{width:100%;min-width:0}
  #faRealtimePanel .rt-controls label{grid-column:1/-1;width:100%}
  #faRealtimePanel .rt-controls select{width:100%}
  #faRealtimePanel .rt-monitor{grid-template-columns:repeat(2,minmax(0,1fr))}
  #faRealtimePanel .rt-action-bottom{flex-direction:column;align-items:stretch}
  #faRealtimePanel .rt-action-bottom .btn{width:100%}
  .fa-actions{grid-template-columns:1fr}
  .fa-actions>div:last-child{grid-column:auto}
  .fa-presets{grid-template-columns:1fr 1fr}
  .procedure-grid{grid-template-columns:1fr}
  .workflow-strip{grid-template-columns:1fr 1fr}
}
@media(max-width:430px){
  .fa-presets,.workflow-strip{grid-template-columns:1fr}
  #faRealtimePanel .rt-monitor{grid-template-columns:1fr 1fr}
  .rt-clock{font-size:1.75rem}
}


/* v1.2.4 — Advanced surgery screen workflow */
.surgery-workbench{
  display:grid;
  grid-template-columns:330px minmax(0,1fr);
  gap:14px;
  align-items:start;
}
.surgery-right-stack{
  display:grid;
  gap:14px;
  min-width:0;
  align-content:start;
}
.surgery-review{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:14px;
  margin-top:14px;
  align-items:start;
}
.surgery-support{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1.15fr) minmax(0,1fr);
  gap:14px;
  margin-top:14px;
  align-items:start;
}
.surgery-workbench>.panel,
.surgery-right-stack>.panel,
.surgery-review>.panel,
.surgery-support>.panel{
  min-width:0;
  height:auto;
  align-self:start;
}
.surgery-right-stack .toolrack{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.surgery-next-callout{margin:10px 0}
.surgery-log{min-height:320px;max-height:540px}
#sim #fieldActions[hidden]{display:none!important}

/* Preserve the requested two-column arrangement in phone Desktop Site mode. */
@media(max-width:1050px){
  .surgery-workbench{grid-template-columns:300px minmax(0,1fr)}
  .surgery-right-stack .toolrack{grid-template-columns:repeat(3,minmax(0,1fr))}
  .surgery-review{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .surgery-support{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .surgery-support>.panel:last-child{grid-column:1/-1}
}

/* Normal mobile view: same information hierarchy, one readable column. */
@media(max-width:680px){
  .surgery-workbench,
  .surgery-review,
  .surgery-support{grid-template-columns:1fr}
  .surgery-support>.panel:last-child{grid-column:auto}
  .surgery-right-stack .toolrack{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:430px){
  .surgery-right-stack .toolrack{grid-template-columns:repeat(2,minmax(0,1fr))}
}


/* v1.2.5 — operation priority queue */
.operation-queue-summary{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  align-items:center;
  margin:9px 0;
}
.op-scroll-menu{
  max-height:430px;
  overflow-y:auto;
  overscroll-behavior:contain;
  scrollbar-gutter:stable;
  border:1px solid #214d3a;
  border-radius:8px;
  background:#050e0a;
  padding:7px;
}
.op-scroll-menu::-webkit-scrollbar{width:10px}
.op-scroll-menu::-webkit-scrollbar-track{background:#06110c}
.op-scroll-menu::-webkit-scrollbar-thumb{
  background:#2c684f;
  border:2px solid #06110c;
  border-radius:999px;
}
.op-group-title{
  position:sticky;
  top:-7px;
  z-index:2;
  margin:0 -7px 7px;
  padding:7px 9px;
  background:rgba(7,20,14,.97);
  border-bottom:1px solid #285f48;
  color:#aefbd0;
  font-size:.78rem;
  letter-spacing:.06em;
}
.op-group-title.blocked-title{
  margin-top:8px;
  color:#9cab9f;
  border-top:1px solid #193c2d;
}
.op-menu-item{
  position:relative;
  margin-bottom:7px;
  transition:border-color .12s,background .12s,opacity .12s;
}
.op-menu-item:last-child{margin-bottom:0}
.op-menu-item.valid{
  border-color:#63d99d;
  background:#0b2117;
  box-shadow:inset 3px 0 0 #63d99d;
}
.op-menu-item.valid:hover{
  border-color:#a7ffd0;
  background:#102c1f;
}
.op-menu-item.blocked{
  opacity:.43;
  filter:saturate(.55);
  background:#07110d;
}
.op-menu-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:8px;
  margin-bottom:5px;
}
.op-menu-head strong{min-width:0}
.op-state{
  flex:0 0 auto;
  border:1px solid #3a765b;
  border-radius:999px;
  padding:2px 7px;
  font-size:.7rem;
  line-height:1.35;
}
.op-state.ready{
  color:#aaffce;
  border-color:#4dbb84;
  background:#0b2a1c;
}
.op-state.blocked{
  color:#9ba9a0;
  border-color:#49564e;
  background:#111713;
}
.op-reason{
  display:block;
  margin-top:5px;
  color:#a6bbae;
}
.op-menu-item.valid .op-reason{color:#a9d9c1}
.op-empty-ready{
  padding:9px;
  margin-bottom:7px;
  border:1px dashed #4f5d55;
  border-radius:7px;
  color:#a8b7ae;
}
@media(max-width:680px){
  .op-scroll-menu{max-height:360px}
}


/* v1.2.7 — Medical Mixing Simulator */
.mix-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;align-items:start}
.mix-bottom{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;margin-top:14px;align-items:start}
.mix-recipe-card{margin-top:12px;padding:12px;border:1px solid #2d6d50;border-radius:9px;background:#071711}
.mix-recipe-card h3{margin:0 0 7px}
.mix-equation{display:flex;flex-wrap:wrap;gap:7px;align-items:center;margin-top:8px}
.mix-equation .chem{border:1px solid #3d7c5f;background:#0a2117;border-radius:7px;padding:5px 8px;color:#c5ffe0}
.mix-equation .plus{color:#87a897;font-weight:bold}
.mix-chain{display:grid;gap:7px}
.mix-chain-step{display:grid;grid-template-columns:28px minmax(0,1fr);gap:8px;align-items:start;padding:8px 9px;border:1px solid #244d3b;border-radius:8px;background:#07130e}
.mix-chain-step b:first-child{display:grid;place-items:center;width:24px;height:24px;border-radius:999px;border:1px solid #458266;color:#a9ffd0}
.mix-vessel{display:grid;grid-template-columns:150px minmax(0,1fr);gap:18px;align-items:center}
.mix-beaker{position:relative;height:180px;border:3px solid #90b7a7;border-top:0;border-radius:0 0 22px 22px;overflow:hidden;background:linear-gradient(90deg,rgba(255,255,255,.04),rgba(255,255,255,.01))}
.mix-beaker:before,.mix-beaker:after{content:"";position:absolute;top:0;width:28px;height:3px;background:#90b7a7}
.mix-beaker:before{left:0}.mix-beaker:after{right:0}
.mix-liquid{position:absolute;left:0;right:0;bottom:0;height:0%;background:linear-gradient(180deg,rgba(81,231,170,.62),rgba(32,136,98,.72));transition:height .18s ease}
.mix-beaker-label{position:absolute;left:0;right:0;bottom:8px;text-align:center;z-index:2;color:#d4ffeb;font-size:.76rem;letter-spacing:.08em}
.mix-vessel-readout{display:grid;gap:8px}
.mix-vessel-readout>div{border:1px solid #244d3b;background:#07130e;border-radius:8px;padding:9px 10px}
.mix-vessel-readout b{display:block;margin-top:2px}
.mix-contents{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-bottom:10px}
.mix-content-chip{display:flex;justify-content:space-between;gap:8px;padding:7px 9px;border:1px solid #2a5b45;border-radius:7px;background:#07130e}
.mix-reagents{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}
.mix-reagent-btn{min-height:94px;text-align:left;padding:9px;border:1px solid #2c634b;background:#071711;border-radius:8px;color:#d9ffed}
.mix-reagent-btn:hover{border-color:#6ad7a0;background:#0c2118}
.mix-reagent-btn b{display:block}.mix-reagent-btn small{display:block;color:#8fb6a4;margin-top:3px}
.mix-reagent-btn.required{border-color:#4fba83;box-shadow:inset 3px 0 0 #4fba83}
.mix-checklist{display:grid;gap:6px;margin-bottom:10px}
.mix-check{display:flex;justify-content:space-between;gap:10px;padding:7px 9px;border:1px solid #274e3d;border-radius:7px;background:#07130e}
.mix-check.ok{border-color:#4b9f75;color:#baffe0}.mix-check.missing{border-color:#8a6938;color:#ffe0a4}.mix-check.extra{border-color:#884b4b;color:#ffc1c1}
.mix-log{min-height:250px;max-height:390px}
.mix-reference{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.mix-ref-card{display:flex;flex-wrap:wrap;align-items:center;gap:7px;padding:11px;border:1px solid #2d624b;border-radius:9px;background:#07150f}
.mix-ref-card>b{width:100%;color:#b7ffda;font-size:1.05rem}.mix-ref-card>span{border:1px solid #375f4d;border-radius:6px;padding:3px 6px}.mix-ref-card small{width:100%;color:#91b4a4}
@media(max-width:1050px){.mix-reagents{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:680px){.mix-layout,.mix-bottom{grid-template-columns:1fr}.mix-reagents{grid-template-columns:repeat(2,minmax(0,1fr))}.mix-reference{grid-template-columns:1fr}.mix-vessel{grid-template-columns:120px minmax(0,1fr)}.mix-beaker{height:150px}}
@media(max-width:430px){.mix-contents{grid-template-columns:1fr}}


/* v1.6.0 CM-indexed runtime crosscheck + 16:9 workspace */
.compact-scroll{max-height:230px;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.injury-matrix{grid-template-columns:repeat(2,minmax(0,1fr))}.compact-toolrack{grid-template-columns:repeat(5,minmax(0,1fr));max-height:330px;overflow:auto}.compact-med-scroll{max-height:330px;overflow:auto;overscroll-behavior:contain}.mini-onboard{max-height:150px}.surgery-right-stack{gap:10px}.surgery-workbench{grid-template-columns:300px minmax(0,1fr);gap:10px}.surgery-review,.surgery-support{gap:10px;margin-top:10px}.surgery-support{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}.procedure-grid.compact-procedures{grid-template-columns:repeat(3,minmax(0,1fr))}.procedure-notices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px}.procedure-notices .callout{margin:0}.surgery-log{min-height:420px;max-height:620px}.row{display:flex;gap:7px;flex-wrap:wrap;margin-top:9px}
.fa-config-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;align-items:start}.fa-timer-row{margin-top:10px}.fa-injury-settings{margin-top:10px}.fa-injury-edit{display:grid;grid-template-columns:minmax(320px,.8fr) minmax(0,1.2fr);gap:14px;align-items:start}.fa-dashboard{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1fr) minmax(0,1.15fr);gap:10px;margin-top:10px;align-items:start}.fa-bottom-row{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:10px;margin-top:10px}.compact-presets{grid-template-columns:repeat(4,minmax(0,1fr));max-height:230px;overflow:auto}.random-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end;margin-top:9px}.fa-injury-summary{grid-template-columns:repeat(3,minmax(0,1fr));max-height:210px}.fa-log{height:300px}.fa-dashboard .panel,.fa-bottom-row .panel{height:auto;align-self:start}
.credits-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.source-cards{grid-template-columns:repeat(3,minmax(0,1fr))}
/* chemistry */
.chem-shell{display:grid;grid-template-columns:330px minmax(0,1fr);gap:10px;margin-top:10px;align-items:start}.chem-browser{position:sticky;top:58px}.chem-reaction-list{display:grid;gap:5px;margin-top:10px;max-height:67vh;overflow:auto;overscroll-behavior:contain}.chem-rx{width:100%;text-align:left;padding:8px;border:1px solid #244d3b;background:#07130e;color:var(--text);border-radius:7px;font:inherit;cursor:pointer}.chem-rx:hover,.chem-rx.sel{border-color:#68dda2;background:#0d271b}.chem-rx b,.chem-rx small{display:block}.chem-rx small{color:var(--muted);margin-top:2px}.chem-main{display:grid;gap:10px}.chem-meta{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0}.chem-formula{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:10px;border:1px solid #285f48;border-radius:8px;background:#06120d}.chem-pill{padding:5px 8px;border:1px solid #39785c;border-radius:7px;background:#0a2117}.chem-pill.catalyst{border-color:#7f6e35;color:#ffe292}.mix-batch-controls{display:grid;grid-template-columns:120px auto auto auto;gap:7px;align-items:end}.mix-exact-add{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:10px}.mix-add-btn{min-height:72px;text-align:left}.mix-vessel-wide{display:grid;grid-template-columns:130px minmax(0,1fr);gap:16px;align-items:center}.exact-contents{grid-template-columns:repeat(3,minmax(0,1fr));max-height:230px;overflow:auto}.chem-lower{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:10px;margin-top:10px}.chain-node{padding:7px 9px;border-left:2px solid #3c8764;margin:4px 0 4px calc(var(--depth,0)*14px);background:#07140e}.chain-node button{font:inherit;color:#baffdc;background:none;border:0;padding:0;cursor:pointer;text-align:left}.chain-node .raw{color:#9dbbad}.mix-log{height:360px}.danger-box{border-left-color:#a84d49;background:#24100e;color:#ffc2bd}
@media(max-width:1100px){.compact-toolrack{grid-template-columns:repeat(4,minmax(0,1fr))}.procedure-grid.compact-procedures{grid-template-columns:repeat(2,minmax(0,1fr))}.procedure-notices{grid-template-columns:1fr}.fa-dashboard{grid-template-columns:1fr 1fr}.fa-dashboard>.panel:first-child{grid-column:1/-1}.compact-presets{grid-template-columns:repeat(3,minmax(0,1fr))}.chem-shell{grid-template-columns:285px minmax(0,1fr)}.mix-exact-add{grid-template-columns:repeat(2,minmax(0,1fr))}.source-cards{grid-template-columns:1fr}}
@media(max-width:680px){.surgery-workbench,.surgery-review,.surgery-support,.fa-config-grid,.fa-injury-edit,.fa-dashboard,.fa-bottom-row,.chem-shell,.chem-lower,.credits-grid{grid-template-columns:1fr}.surgery-workbench{gap:8px}.compact-toolrack{grid-template-columns:repeat(3,minmax(0,1fr));max-height:none}.procedure-grid.compact-procedures{grid-template-columns:1fr}.fa-dashboard>.panel:first-child{grid-column:auto}.compact-presets{grid-template-columns:repeat(2,minmax(0,1fr));max-height:none}.fa-injury-summary{grid-template-columns:repeat(2,minmax(0,1fr));max-height:240px}.chem-browser{position:static}.chem-reaction-list{max-height:300px}.mix-batch-controls{grid-template-columns:1fr 1fr}.mix-vessel-wide{grid-template-columns:110px minmax(0,1fr)}.exact-contents{grid-template-columns:1fr 1fr}.mix-exact-add{grid-template-columns:1fr 1fr}.surgery-log{min-height:260px}.random-row{grid-template-columns:1fr}.credits-grid{grid-template-columns:1fr}}
@media(max-width:430px){.compact-toolrack{grid-template-columns:repeat(2,minmax(0,1fr))}.compact-presets,.fa-injury-summary,.exact-contents,.mix-exact-add{grid-template-columns:1fr}.mix-batch-controls{grid-template-columns:1fr}.mix-vessel-wide{grid-template-columns:90px minmax(0,1fr)}}


/* v1.3.0 final validation polish */
.op-menu-item.valid::before,.op-menu-item.blocked::before{display:none!important}
#faTreatmentActions{max-height:610px;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding-right:3px}
@media(max-width:680px){#faTreatmentActions{max-height:480px}}


/* v1.3.1 — responsive treatment workspace + collapsible setup */
.sim-collapse{padding:0;overflow:hidden}
.sim-collapse>summary{
  list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;
  gap:12px;padding:12px 14px;color:#caffdf;user-select:none
}
.sim-collapse>summary::-webkit-details-marker{display:none}
.sim-collapse>summary:after{content:"▸";color:#78cda3;font-size:1.1rem;flex:0 0 auto}
.sim-collapse[open]>summary:after{content:"▾"}
.sim-collapse>summary span:first-child{display:grid;gap:2px}
.sim-collapse>summary small{color:var(--muted);font-weight:400}
.sim-collapse>.collapse-body{padding:0 12px 12px}
.inline-collapse{
  margin-top:9px;border:1px solid #214e3a;border-radius:7px;background:#06110c;padding:0
}
.inline-collapse>summary{
  cursor:pointer;list-style:none;padding:8px 9px;color:#baffdc;font-weight:700
}
.inline-collapse>summary::-webkit-details-marker{display:none}
.inline-collapse>summary:after{content:" +";color:#7fc9a5}
.inline-collapse[open]>summary:after{content:" –"}
.inline-collapse>*:not(summary){margin:0 8px 8px}

.fa-setup-collapse{margin-top:10px}
.fa-setup-collapse .fa-config-grid{margin:0}
.fa-setup-collapse .fa-injury-settings{margin-top:8px}
.fa-setup-collapse .panel{
  padding:10px;background:#07160f;box-shadow:none;border-color:#214e3a
}
.fa-zone-overview{margin:0}
.fa-treatment-workspace{
  display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.55fr);
  gap:10px;margin-top:10px;align-items:start
}
.fa-patient-column,.fa-action-column{display:grid;gap:10px;align-content:start;min-width:0}
.fa-action-pair{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}
.fa-treatment-workspace .panel{padding:11px;min-width:0;height:auto;align-self:start}
.fa-treatment-workspace h2{font-size:1rem;margin-bottom:8px}
.fa-treatment-workspace h3{font-size:.9rem;margin:10px 0 6px}
.fa-treatment-workspace #faTreatmentActions{max-height:360px}
.fa-treatment-workspace #faMedicationActions{max-height:360px}
.fa-treatment-workspace .mini-onboard{max-height:110px}
.fa-log-collapse>.collapse-body{padding-top:0}
.fa-log-collapse .fa-log{height:220px}
.fa-timer-row{margin-top:10px}
#faRealtimePanel{padding:11px}
#faRealtimePanel .rt-monitor{margin-top:9px}
#faRealtimePanel .rt-action{margin-top:9px;padding:8px 10px}
#faRealtimePanel .rt-model-settings{margin-top:7px}

/* Stable, easy-to-hit touch targets. */
#firstaid .action,#firstaid .fa-preset,#firstaid .btn,
#sim .toolbtn,#sim .action{
  touch-action:manipulation;-webkit-tap-highlight-color:rgba(107,244,177,.15)
}
#firstaid .action,#firstaid .fa-preset{min-height:48px}
#firstaid button:active,#sim button:active{filter:brightness(1.16)}

/* Surgery: settings remain on the left/right, but tools and medicine occupy one action row. */
.surgery-reference-collapse{margin-bottom:10px}
.surgery-reference-collapse .procedure-head{display:none}
.surgery-reference-collapse .procedure-grid{margin-top:4px}
.surgery-workbench{grid-template-columns:270px minmax(0,1fr)}
.surgery-body-panel .body{
  transform:scale(.80);transform-origin:top center;margin-bottom:-98px
}
.surgery-action-pair{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;align-items:start
}
.surgery-action-pair>.panel{min-width:0;padding:11px}
.surgery-action-pair .compact-toolrack{
  grid-template-columns:repeat(3,minmax(0,1fr));max-height:285px
}
.surgery-action-pair .compact-med-scroll{max-height:285px}
.surgery-action-pair .toolbtn{min-height:82px}
.surgery-right-stack{gap:8px}
.surgery-review,.surgery-support{margin-top:8px}
.surgery-review>.panel,.surgery-support>.panel{padding:11px}
.surgery-review h2,.surgery-support h2{font-size:1rem}
.operation-queue-summary{margin:6px 0}
.op-scroll-menu{max-height:330px}
.surgery-log{min-height:280px;max-height:430px}

@media(max-width:1050px){
  .fa-treatment-workspace{grid-template-columns:minmax(250px,.68fr) minmax(0,1.5fr)}
  .fa-action-pair{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .surgery-workbench{grid-template-columns:250px minmax(0,1fr)}
  .surgery-action-pair{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .surgery-action-pair .compact-toolrack{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:780px){
  .fa-treatment-workspace{grid-template-columns:1fr}
  .fa-patient-column{grid-template-columns:1fr 1fr}
  .fa-action-pair{grid-template-columns:1fr 1fr}
  .surgery-workbench{grid-template-columns:1fr}
  .surgery-body-panel .body{transform:scale(.86);margin-bottom:-70px}
  .surgery-action-pair{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){
  .fa-patient-column,.fa-action-pair,.surgery-action-pair{grid-template-columns:1fr}
  .fa-config-grid,.fa-injury-edit{grid-template-columns:1fr}
  .fa-treatment-workspace #faTreatmentActions,
  .fa-treatment-workspace #faMedicationActions{max-height:none}
  .surgery-action-pair .compact-toolrack,
  .surgery-action-pair .compact-med-scroll{max-height:none}
  .sim-collapse>summary{padding:11px}
}


/* v1.4.0 — 16:9 simulation workspaces */
[hidden]{display:none!important}
.sim-setup-screen{display:grid;gap:10px;max-width:1480px;margin:auto}
.sim-setup-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 14px}
.sim-setup-head h2{margin:2px 0 4px}
.sim-setup-head p{margin:0;color:var(--muted);max-width:850px;font-size:.84rem}
.sim-setup-actions{display:flex;gap:8px;flex:0 0 auto}
.sim-start-btn{font-weight:800;letter-spacing:.04em}
.sim-setup-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;align-items:start}
.firstaid-setup-grid{grid-template-columns:1fr 1fr 1fr .86fr}
.surgery-setup-grid{grid-template-columns:1fr 1.1fr .8fr}
.sim-setup-grid>.panel{padding:11px;min-width:0}
.sim-setup-grid h2{font-size:1rem;margin-bottom:8px}
.compact-fields{gap:8px;margin-top:8px}
.compact-status{gap:5px;margin:7px 0}
.setup-overview-panel .compact-scroll{max-height:310px}
.setup-tip{font-size:.76rem;color:var(--muted);margin-top:-3px}

body.sim-fullscreen-mode .topbar{display:none}
body.sim-fullscreen-mode .view.active{padding:6px 0 10px}
body.sim-fullscreen-mode .shell{width:min(100% - 14px,1600px)}
body.sim-fullscreen-mode .footer{display:none}

.sim-runtime-shell{
  width:min(calc(100vw - 22px),calc((100dvh - 68px)*1.77778));
  height:min(calc(100dvh - 68px),calc((100vw - 22px)*.5625));
  min-height:510px;
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0,1.62fr) minmax(300px,.72fr);
  border:1px solid #2e7658;
  border-radius:12px;
  overflow:hidden;
  background:#040b07;
  box-shadow:0 20px 60px rgba(0,0,0,.35)
}
.sim-control-zone{
  min-width:0;
  display:grid;
  grid-template-columns:86px minmax(0,1fr);
  border-right:1px solid #234e3a;
  overflow:hidden
}
.sim-rail{
  display:flex;
  flex-direction:column;
  gap:5px;
  padding:7px;
  background:#06100c;
  border-right:1px solid #1c4231;
  overflow:auto
}
.sim-rail button{
  min-height:58px;
  border:1px solid #234f3b;
  border-radius:8px;
  background:#081811;
  color:#a8cabb;
  font:inherit;
  font-size:.68rem;
  cursor:pointer;
  display:grid;
  place-items:center;
  gap:2px;
  padding:5px
}
.sim-rail button span{font-size:1.15rem;line-height:1}
.sim-rail button b{font-size:.66rem;letter-spacing:.04em}
.sim-rail button:hover,.sim-rail button.active{border-color:#6ce3aa;background:#103323;color:#d7ffea}
.sim-rail .sim-rail-bottom{margin-top:auto;border-color:#625f31;color:#e5dc93}
.sim-pane-host{position:relative;min-width:0;overflow:hidden;background:linear-gradient(180deg,#0b1d15,#07120d)}
.sim-pane{
  position:absolute;inset:0;
  display:none;
  overflow:auto;
  padding:12px;
  scrollbar-gutter:stable
}
.sim-pane.active{display:block}
.sim-pane h2{font-size:1.05rem;margin:0;color:#c2ffe0}
.sim-pane-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:9px;padding-bottom:7px;border-bottom:1px solid #214b38}
.sim-subhead{margin:10px 0 6px;color:#aaffce;font-size:.75rem;font-weight:800;letter-spacing:.06em}
.hover-help{
  position:relative;
  width:22px;height:22px;border-radius:50%;
  border:1px solid #3c8261;color:#b9ffda;
  display:grid;place-items:center;cursor:help;flex:0 0 22px
}
.hover-help:after{
  content:attr(data-tip);
  position:absolute;z-index:80;right:0;top:28px;
  width:min(360px,62vw);
  padding:8px 9px;border:1px solid #4f9f78;border-radius:7px;
  background:#04100a;color:#d9ffeb;font-size:.76rem;font-weight:400;
  opacity:0;visibility:hidden;pointer-events:none;
  box-shadow:0 10px 28px #000
}
.hover-help:hover:after,.hover-help:focus:after{opacity:1;visibility:visible}
.sim-runtime-shell .action,.sim-runtime-shell .toolbtn{position:relative}
.sim-runtime-shell .action small{
  position:absolute;z-index:70;left:6px;right:6px;bottom:calc(100% + 6px);
  padding:7px 8px;border:1px solid #4e966f;border-radius:6px;
  background:#04100a;color:#d8ffeb;
  opacity:0;visibility:hidden;pointer-events:none;
  box-shadow:0 8px 25px #000
}
.sim-runtime-shell .action:hover small,.sim-runtime-shell .action:focus-visible small{opacity:1;visibility:visible}
.sim-runtime-shell .op-reason{
  position:absolute;z-index:70;left:8px;right:8px;top:calc(100% + 4px);
  padding:7px;border:1px solid #536b5e;border-radius:6px;background:#04100a;color:#d7e8df;
  opacity:0;visibility:hidden;pointer-events:none;box-shadow:0 8px 24px #000
}
.sim-runtime-shell .op-menu-item{position:relative}
.sim-runtime-shell .op-menu-item:hover .op-reason{opacity:1;visibility:visible}
.sim-runtime-shell .small.model,.sim-runtime-shell .callout .model{font-size:.72rem}

.sim-patient-stage{
  min-width:0;
  display:grid;
  grid-template-rows:auto minmax(0,1fr) auto;
  padding:10px;
  background:radial-gradient(circle at 50% 36%,#133426 0,#07140e 48%,#030906 100%);
  overflow:hidden
}
.sim-stage-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;border-bottom:1px solid #214c38;padding-bottom:7px}
.sim-stage-head h2{margin:2px 0 0;color:#d3ffe8;font-size:1.2rem}
.sim-patient-stage .runtime-body{
  transform:scale(.86);
  transform-origin:center center;
  align-self:center;
  justify-self:center;
  margin:0
}
.stage-selected-summary{border-top:1px solid #214c38;padding-top:7px;min-height:66px}
.stage-selected-summary .metric{padding:4px 0}
.runtime-selected-detail{margin-top:8px}
.runtime-selected-detail .metric{padding:5px 0}

.compact-toolrack{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.compact-toolrack .toolbtn{min-height:78px;padding:5px;font-size:.75rem}
.compact-toolrack .toolbtn img{width:38px;height:38px}
.compact-med-scroll,.runtime-actions{max-height:none}
.medication-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.runtime-actions{grid-template-columns:repeat(2,minmax(0,1fr))}
.compact-callout{padding:8px;margin:6px 0;font-size:.78rem}
.runtime-gates{margin:6px 0}
.runtime-selects{gap:7px}
.runtime-timer{margin:0;padding:10px;box-shadow:none}
.runtime-timer .rt-monitor{grid-template-columns:repeat(3,minmax(0,1fr))}
.runtime-utility-row{display:flex;gap:7px;margin-top:8px;flex-wrap:wrap}
.runtime-log{height:calc(100% - 42px);min-height:260px}
.runtime-reference{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
.runtime-reference article{border:1px solid #285a43;border-radius:7px;padding:8px;background:#07140e}
.runtime-reference article b{display:block;color:#baffda;margin-bottom:3px}
.runtime-reference article span{font-size:.76rem;color:#a5c7b7}
.op-scroll-menu{max-height:360px}
#availableOps{min-height:0}

.fa-part{
  position:absolute;border:1px solid #3d8464;background:#0b2419;color:#d8ffeb;
  text-align:center;cursor:pointer;display:grid;place-items:center;transition:.15s;
  border-radius:13px;font-size:.78rem;overflow:hidden
}
.fa-part:hover,.fa-part.sel{border-color:#a8ffcf;background:#174431;box-shadow:0 0 14px var(--shadow)}
.fa-part.bad{box-shadow:inset 0 0 20px rgba(255,105,92,.25);border-color:#a55}
.fa-part.head{left:90px;top:5px;width:70px;height:70px;border-radius:50%}
.fa-part.chest{left:70px;top:82px;width:110px;height:118px}
.fa-part.groin{left:82px;top:205px;width:86px;height:58px}
.fa-part.larm{left:18px;top:86px;width:47px;height:120px}
.fa-part.rarm{right:18px;top:86px;width:47px;height:120px}
.fa-part.lhand{left:9px;top:211px;width:48px;height:52px}
.fa-part.rhand{right:9px;top:211px;width:48px;height:52px}
.fa-part.lleg{left:71px;top:270px;width:48px;height:150px}
.fa-part.rleg{right:71px;top:270px;width:48px;height:150px}
.fa-part.lfoot{left:57px;top:427px;width:62px;height:45px}
.fa-part.rfoot{right:57px;top:427px;width:62px;height:45px}

@media(max-height:680px) and (min-width:701px){
  .sim-runtime-shell{min-height:0}
  .sim-patient-stage .runtime-body{transform:scale(.69);margin-top:-18px;margin-bottom:-48px}
  .compact-toolrack{grid-template-columns:repeat(5,minmax(0,1fr))}
  .compact-toolrack .toolbtn{min-height:66px}
  .compact-toolrack .toolbtn img{width:32px;height:32px}
  .sim-rail button{min-height:46px}
}
@media(max-width:1100px) and (min-width:701px){
  .sim-control-zone{grid-template-columns:74px minmax(0,1fr)}
  .sim-rail button{min-height:50px}
  .compact-toolrack{grid-template-columns:repeat(3,minmax(0,1fr))}
  .firstaid-setup-grid{grid-template-columns:1fr 1fr}
  .surgery-setup-grid{grid-template-columns:1fr 1fr}
  .surgery-setup-grid>.setup-overview-panel{grid-column:1/-1}
}
@media(max-width:700px){
  body.sim-fullscreen-mode .shell{width:100%}
  .sim-runtime-shell{
    width:100%;
    height:calc(100dvh - 54px);
    min-height:0;
    border-radius:0;
    grid-template-columns:1fr;
    grid-template-rows:42% 58%
  }
  .sim-patient-stage{grid-row:1;padding:7px}
  .sim-patient-stage .runtime-body{transform:scale(.48);transform-origin:center top;margin-top:-20px;margin-bottom:-230px}
  .stage-selected-summary{font-size:.78rem;min-height:44px}
  .sim-control-zone{grid-row:2;grid-template-columns:1fr;grid-template-rows:54px minmax(0,1fr);border-right:0;border-top:1px solid #234e3a}
  .sim-rail{flex-direction:row;padding:5px;overflow-x:auto;overflow-y:hidden;border-right:0;border-bottom:1px solid #1c4231}
  .sim-rail button{min-width:62px;min-height:42px;padding:3px}
  .sim-rail .sim-rail-bottom{margin-top:0;margin-left:auto}
  .sim-pane{padding:8px}
  .compact-toolrack{grid-template-columns:repeat(3,minmax(0,1fr))}
  .runtime-reference{grid-template-columns:1fr}
  .sim-setup-head{align-items:flex-start;flex-direction:column}
  .sim-setup-actions{width:100%}.sim-setup-actions .btn{flex:1}
  .sim-setup-grid,.firstaid-setup-grid,.surgery-setup-grid{grid-template-columns:1fr}
  .view{padding-top:8px}
}


/* v1.4.1 simulator page framing */
html,body{max-width:100%;overflow-x:hidden}
body.sim-page-mode .topbar{display:none}
body.sim-page-mode .footer{display:none}
body.sim-page-mode .view.active{padding:7px 0 10px}
body.sim-page-mode .drawer:not(.open){display:none}
@media(min-width:851px) and (max-width:1100px){
  .firstaid-setup-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .surgery-setup-grid{grid-template-columns:1fr 1.1fr .8fr}
  .surgery-setup-grid>.setup-overview-panel{grid-column:auto}
  .sim-setup-grid>.panel{padding:9px}
  .sim-setup-head{padding:9px 11px}
  .setup-overview-panel .compact-scroll{max-height:270px}
}
@media(max-width:700px){
  body.sim-page-mode .nav{margin-left:0;margin-right:0}
}


/* v1.4.2 — restored surgery scenarios */
.surg-scenario-panel{padding:8px 10px}
.surg-scenario-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}
.surg-scenario-head>div{display:flex;align-items:baseline;gap:9px;min-width:0}
.surg-scenario-head b{color:#c9ffe2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.surg-scenario-row{
  display:flex;gap:6px;overflow-x:auto;overscroll-behavior-x:contain;
  scrollbar-width:thin;padding-bottom:3px
}
.surg-scenario-btn{
  flex:1 0 112px;min-height:35px;padding:5px 7px;
  border:1px solid #285c45;border-radius:7px;background:#07150f;color:#d6ffea;
  font:inherit;font-size:.76rem;font-weight:700;cursor:pointer;touch-action:manipulation
}
.surg-scenario-btn:hover,.surg-scenario-btn.active{border-color:#70e6ad;background:#123a29;color:#effff7}
.surg-scenario-btn.danger{border-color:#744a45}
.surg-scenario-btn.danger.active{border-color:#ef897e;background:#3a1714}
.surg-random-row{
  display:grid;grid-template-columns:minmax(130px,210px) auto;
  gap:7px;align-items:end;margin-top:5px
}
.surg-random-row label{margin:0}
@media(min-width:1250px){
  .surg-scenario-btn{flex:1 1 0}
}
@media(max-width:700px){
  .surg-scenario-panel{padding:8px}
  .surg-scenario-btn{flex:0 0 118px}
  .surg-random-row{grid-template-columns:1fr 1fr}
}
@media(max-width:430px){
  .surg-random-row{grid-template-columns:1fr}
}


/* v1.5.0 runtime-accuracy additions */
.surgery-runtime-flags label{min-height:38px;display:flex;align-items:center;gap:6px}
.surgery-flame-check{display:flex!important;margin-top:7px;align-items:center;gap:6px}
.runtime-chem-layout{grid-template-columns:minmax(250px,.34fr) minmax(0,1fr)}
.chem-runtime-panels{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:10px}
.runtime-vessel-readout{grid-template-columns:repeat(4,minmax(0,1fr));margin:9px 0}
.runtime-mix-buttons{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.mix-add-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.mix-add-grid .btn{text-align:left;min-height:48px}
.chem-hardware-panel{margin-top:10px}
.chem-hardware-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
.chem-hardware-grid article{border:1px solid #285a43;border-radius:7px;background:#07140e;padding:8px}
.chem-hardware-grid b{display:block;color:#c1ffde;margin-bottom:3px}
.chem-hardware-grid span{font-size:.78rem;color:#acd0bf}
.chem-event{border-left:3px solid #3f8b67;padding-left:7px}
.chem-event.blast{border-color:#e27b63;color:#ffd0c6}
.chem-event.warn{border-color:#d2a34f;color:#ffe2a6}
.mix-content-chip.explosive{border-color:#9f5149}
@media(max-width:900px){
  .runtime-chem-layout{grid-template-columns:1fr}
  .chem-browser{max-height:320px}
  .chem-runtime-panels{grid-template-columns:1fr}
}
@media(max-width:600px){
  .runtime-vessel-readout{grid-template-columns:repeat(2,minmax(0,1fr))}
  .chem-hardware-grid,.mix-add-grid{grid-template-columns:1fr}
}


/* v1.6.0 runtime crosscheck */
.fa-revive-state{margin-top:7px}
.suture-actions{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:7px}
.cm-reference-policy a{color:#aaffd0}
@media(max-width:600px){.suture-actions{grid-template-columns:1fr}}
