:root{color:#edf6f2;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#0f1717;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:400;line-height:1.45}*{box-sizing:border-box}html,body,#root{min-width:320px;min-height:100%;margin:0}body{min-height:100svh;overflow:hidden}button,input,textarea{letter-spacing:0}button:focus-visible,input:focus-visible,textarea:focus-visible,a:focus-visible{outline-offset:2px;outline:3px solid #f2c75c}.app-shell{color:#edf6f2;background:#0f1717;min-height:100svh;position:relative;overflow:hidden}.game-canvas{position:absolute;inset:0}.game-canvas canvas{width:100%;height:100%;display:block}.hud{z-index:4;color:#edf6f2;position:absolute}.is-opening .top-hud,.is-opening .clinic-status-panel,.is-opening .left-panel,.is-opening .map-labels,.is-opening .feedback-stack,.is-opening .inventory-bar,.is-opening .action-dock,.is-opening .reticle,.is-opening .interaction-prompt,.is-opening .safety-note{display:none}.top-hud{pointer-events:none;flex-wrap:wrap;align-items:stretch;gap:8px;display:flex;top:14px;left:14px;right:14px}.brand-chip,.status-item,.objective-chip,.left-panel,.clinic-status-panel,.inventory-bar,.action-dock,.interaction-prompt,.modal,.title-overlay,.how-to-card,.disruption-card,.feedback,.map-label,.safety-note{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#0f1717c7;border:1px solid #ddece53d;box-shadow:0 18px 40px #00000042}.brand-chip,.status-item,.objective-chip{border-radius:8px;align-items:center;gap:8px;min-height:48px;padding:8px 12px;display:flex}.brand-chip{background:#195650db;font-weight:700}.status-item{min-width:118px}.objective-chip{border-color:#f2c75c80;flex-direction:column;flex:360px;justify-content:center;align-items:flex-start;gap:2px;min-width:min(420px,100%)}.status-item span,.metric span,.objective-chip span{color:#edf6f2b8;text-transform:uppercase;font-size:.74rem}.status-item strong,.metric strong{margin-left:auto;font-size:.9rem}.objective-chip strong{font-size:1rem}.status-item.ok{border-color:#77d3a18c}.status-item.warn{border-color:#f2c75c9e}.status-item.bad{border-color:#ed6d5bb8}.reticle{z-index:3;pointer-events:none;width:16px;height:16px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.reticle:before,.reticle:after{content:"";background:#edf6f2e0;position:absolute}.reticle:before{width:2px;height:16px;top:0;left:7px}.reticle:after{width:16px;height:2px;top:7px;left:0}.interaction-prompt{z-index:6;color:#edf6f2;cursor:pointer;border-radius:8px;align-items:center;gap:10px;padding:9px 13px;display:flex;position:absolute;top:calc(50% + 34px);left:50%;transform:translate(-50%)}.interaction-prompt span{color:#0f1717;background:#edf6f2;border-radius:5px;place-items:center;width:24px;height:24px;font-weight:700;display:grid}.left-panel{border-radius:8px;width:min(320px,100vw - 28px);padding:14px;top:84px;left:14px}.clinic-status-panel{border-radius:8px;width:min(300px,100vw - 28px);padding:14px;top:84px;right:14px}.clinic-status-panel.warning{border-color:#f2c75cb8}.panel-heading{align-items:center;gap:9px;font-weight:700;display:flex}.scenario-label,.clinic-status-panel p{color:#edf6f2b8;margin:8px 0 0;font-size:.88rem}.clinic-status-panel dl{gap:7px;margin:12px 0;display:grid}.clinic-status-panel dl div{justify-content:space-between;gap:12px;display:flex}.clinic-status-panel dt{color:#edf6f2b3}.clinic-status-panel dd{margin:0;font-weight:800}.clinic-status-panel button{color:#edf6f2;cursor:pointer;background:#edf6f217;border:1px solid #edf6f238;border-radius:7px;width:100%;margin-top:10px;padding:9px 10px;font-weight:700}.queue-list{gap:8px;margin-top:12px;display:grid}.queue-item{color:#edf6f2;text-align:left;cursor:pointer;background:#edf6f212;border:1px solid #edf6f229;border-radius:7px;grid-template-columns:auto 1fr;align-items:center;gap:4px 8px;width:100%;padding:10px;display:grid}.queue-item em{color:#edf6f2ad;grid-column:2;font-size:.82rem;font-style:normal}.queue-item.high{border-color:#ed6d5b94}.queue-item.complete{opacity:.72;border-color:#77d3a173}.score-ring{--score:78%;background:conic-gradient(#77d3a1 var(--score), #edf6f22e 0);border-radius:50%;place-items:center;width:88px;height:88px;margin:12px auto 0;display:grid}.score-ring strong,.score-ring span{grid-area:1/1}.score-ring strong{font-size:1.5rem}.score-ring span{color:#edf6f2bd;margin-top:42px;font-size:.74rem}.map-labels{pointer-events:none;z-index:3;inset:0}.map-label{color:#edf6f2;text-align:left;cursor:pointer;pointer-events:auto;border-radius:8px;gap:2px;min-width:132px;padding:7px 9px;display:grid;position:absolute;transform:translate(-50%,-50%)}.map-label strong{font-size:.78rem}.map-label span{color:#edf6f2b3;font-size:.68rem}.feedback-stack{gap:8px;width:min(460px,100vw - 660px);min-width:260px;display:grid;top:84px;left:50%;transform:translate(-50%)}.feedback{color:#edf6f2;border-radius:8px;align-items:center;gap:8px;padding:9px 11px;display:flex}.feedback.good{border-color:#77d3a18c}.feedback.warn{border-color:#f2c75ca6}.inventory-bar{border-radius:8px;align-items:center;gap:8px;max-width:min(860px,100vw - 132px);padding:8px;display:flex;bottom:16px;left:50%;transform:translate(-50%)}.inventory-slot{color:#edf6f2;background:#edf6f214;border:1px solid #edf6f247;border-radius:7px;place-items:center;width:42px;height:42px;display:grid;position:relative}.inventory-slot span{color:#edf6f2b3;font-size:.7rem;position:absolute;top:3px;left:5px}.inventory-slot i{border-radius:4px;width:22px;height:22px;display:block;box-shadow:inset 0 0 0 2px #0000001f}.inventory-bar p{color:#edf6f2c7;min-width:min(280px,32vw);margin:0 8px;font-size:.86rem}.action-dock{border-radius:8px;gap:8px;padding:8px;display:grid;bottom:16px;right:16px}.icon-button{color:#edf6f2;cursor:pointer;background:#edf6f21a;border:1px solid #edf6f240;border-radius:7px;place-items:center;width:42px;height:42px;display:grid}.speed-text{font-size:.9rem;font-weight:800}.icon-button:hover,.inventory-slot:hover,.title-actions button:hover,.button-row button:hover,.query-row button:hover,.record-list button:hover,.care-gap-list button:hover,.patient-summary button:hover,.how-to-card button:hover,.disruption-card button:hover,.clinic-status-panel button:hover{background:#77d3a12e;border-color:#77d3a185}.title-overlay,.how-to-card,.disruption-card{z-index:8;border-radius:8px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.title-overlay{text-align:center;place-items:center;gap:24px;width:min(760px,100vw - 32px);min-height:360px;padding:38px;display:grid}.title-copy p{color:#f2c75c;text-transform:uppercase;margin:0 0 10px;font-size:.84rem;font-weight:700}.title-copy h1{color:#edf6f2;margin:0;font-size:clamp(3rem,8vw,6.4rem);line-height:1}.title-copy span{color:#edf6f2c7;margin-top:14px;font-size:1.05rem;display:block}.goal-flow{gap:6px;margin-top:18px;display:grid}.goal-flow strong{color:#f2c75c;text-transform:uppercase;font-size:.84rem}.goal-flow p{margin:0;font-weight:800}.title-actions,.button-row,.query-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.title-actions button,.button-row button,.query-row button,.care-gap-list button,.export-box a,.patient-summary button,.how-to-card button,.disruption-card button{color:#edf6f2;font:inherit;cursor:pointer;background:#edf6f21a;border:1px solid #edf6f242;border-radius:7px;padding:10px 14px;font-weight:700;text-decoration:none}.how-to-card,.disruption-card{z-index:9;width:min(440px,100vw - 32px);padding:18px}.how-to-card header{justify-content:space-between;align-items:center;gap:12px;display:flex}.how-to-card h2,.disruption-card h2{color:#edf6f2;margin:0}.how-to-card header button{width:32px;height:32px;padding:0}.how-to-card ol{color:#edf6f2d1;margin:14px 0;padding-left:24px}.disruption-card{border-color:#f2c75cb8}.disruption-card h3{color:#f2c75c;text-transform:uppercase;margin:14px 0 4px;font-size:.92rem}.disruption-card p{color:#edf6f2c7}.modal-backdrop{z-index:10;background:#05090a80;place-items:center;padding:24px;display:grid;position:absolute;inset:0}.modal{color:#edf6f2;border-radius:8px;width:min(1080px,100%);max-height:min(760px,100svh - 48px);overflow:auto}.modal>header{z-index:2;background:#0f1717eb;border-bottom:1px solid #edf6f22e;justify-content:space-between;align-items:center;gap:16px;padding:16px 18px;display:flex;position:sticky;top:0}.modal h2,.modal h3{color:#edf6f2;margin:0}.modal h2{font-size:1.2rem}.modal h3{margin-top:18px;font-size:1rem}.modal>header button{color:#edf6f2;cursor:pointer;background:#edf6f214;border:1px solid #edf6f23d;border-radius:7px;width:34px;height:34px;font-size:1.3rem}.modal-grid,.stack-panel{padding:18px}.two-columns{grid-template-columns:300px minmax(0,1fr);gap:16px;display:grid}.record-list{align-content:start;gap:8px;display:grid}.record-list button{color:#edf6f2;text-align:left;cursor:pointer;background:#edf6f20f;border:1px solid #edf6f229;border-radius:7px;grid-template-columns:auto 1fr;align-items:center;gap:8px;width:100%;padding:10px;display:grid}.record-list button.active{background:#77d3a129;border-color:#77d3a1b3}.record-list em{color:#edf6f2a3;grid-column:1/-1;font-size:.8rem;font-style:normal}.patient-summary,.assistant-box,.evidence-panel,.care-gap-list article,.failure-list article,.metric,.export-box,.comparison-table,.bottleneck-list article,.day-explain{background:#edf6f212;border:1px solid #edf6f229;border-radius:8px}.patient-summary,.assistant-box,.day-explain,.bottleneck-list article{padding:14px}.patient-card-header{justify-content:space-between;align-items:start;gap:14px;display:flex}.patient-card-header button{flex:none}.patient-id{color:#f2c75c;text-transform:uppercase;margin:0;font-size:.78rem;font-weight:800}.patient-summary p,.assistant-box p,.day-explain p{color:#edf6f2c7;margin:8px 0 0}.patient-summary dl{grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0;display:grid}.patient-summary dl div,.metric{padding:10px}.patient-summary dt{color:#edf6f29e;text-transform:uppercase;font-size:.76rem}.patient-summary dd{margin:4px 0 0;font-weight:700}.next-action-box{background:#77d3a11f;border:1px solid #77d3a173;border-radius:8px;gap:8px;margin-top:12px;padding:13px;display:grid}.next-action-box span{color:#f2c75c;text-transform:uppercase;font-size:.78rem;font-weight:800}.next-action-box strong{font-size:1.12rem}.next-action-box button{background:#77d3a138;justify-self:start}.next-action-box button:disabled{opacity:.55;cursor:not-allowed}.patient-flow{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin:12px 0;padding:0;list-style:none;display:grid}.patient-flow li{text-align:center;background:#edf6f20d;border:1px solid #edf6f224;border-radius:8px;place-items:center;gap:2px;min-height:62px;font-size:.76rem;display:grid}.patient-flow li.done{color:#77d3a1;border-color:#77d3a17a}.patient-flow li.current{background:#f2c75c1f;border-color:#f2c75cb3}.care-gap-list,.failure-list{gap:10px;margin-top:10px;display:grid}.care-gap-list article,.failure-list article{padding:12px}.care-gap-list article.resolved{opacity:.65}.care-gap-list article>div{justify-content:space-between;gap:12px;display:flex}.care-gap-list p,.failure-list p,.failure-list span,.disclaimer{color:#edf6f2b8}.query-row{margin-top:10px}.query-row input{color:#edf6f2;min-width:0;font:inherit;background:#00000038;border:1px solid #edf6f23d;border-radius:7px;flex:260px;padding:11px 12px}.evidence-panel{margin-top:12px;padding:14px}.evidence-panel ul{margin:8px 0 0;padding-left:18px}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.metric{grid-template-columns:auto 1fr;align-items:center;gap:8px;display:grid}.metric strong{grid-column:1/-1;margin:0;font-size:1.2rem}.assistant-box .button-row{margin-top:12px}.timeline{gap:10px;margin:12px 0 0;padding:0;list-style:none;display:grid}.timeline li{border-bottom:1px solid #edf6f21f;grid-template-columns:132px 120px 1fr;align-items:start;gap:12px;padding:10px 0;display:grid}.timeline time{color:#f2c75c}.timeline span{color:#edf6f2bd}.comparison-table{border-collapse:collapse;width:100%;overflow:hidden}.comparison-table th,.comparison-table td{text-align:left;border-bottom:1px solid #edf6f21f;padding:10px 12px}.comparison-table th{color:#f2c75c}.bottleneck-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.bottleneck-list article span{color:#f2c75c;text-transform:uppercase;font-size:.75rem;font-weight:800}.bottleneck-list article strong{margin:6px 0;font-size:1.1rem;display:block}.bottleneck-flow{flex-wrap:wrap;align-items:center;gap:8px;margin-top:14px;display:flex}.bottleneck-flow span{background:#edf6f212;border:1px solid #edf6f22e;border-radius:7px;padding:9px 12px;font-weight:800}.bottleneck-flow .hot{background:#f2c75c24;border-color:#f2c75cb8}.export-box{gap:10px;padding:12px;display:grid}.export-box textarea{resize:vertical;color:#edf6f2;background:#00000038;border:1px solid #edf6f238;border-radius:7px;width:100%;min-height:180px;padding:12px;font:.84rem/1.5 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.safety-note{z-index:4;color:#edf6f2b8;border-radius:8px;max-width:300px;padding:8px 10px;font-size:.74rem;position:absolute;bottom:16px;left:14px}@media (width<=980px){.left-panel,.clinic-status-panel,.feedback-stack,.map-labels,.safety-note{display:none}.inventory-bar{max-width:none;left:12px;right:66px;overflow-x:auto;transform:none}.inventory-bar p{display:none}.two-columns,.metric-grid,.patient-summary dl,.bottleneck-list{grid-template-columns:1fr}.patient-flow{grid-template-columns:repeat(2,minmax(0,1fr))}.timeline li{grid-template-columns:1fr;gap:4px}.title-overlay{min-height:300px;padding:24px}}
