:root{--ink:#19211e;--cream:#ded6bd;--paper:#c8bea1;--machine:#222b29;--machine2:#34403b;--dark:#0d1412;--line:#53615b;--glow:#b8e3c1;--dim:#71977b;--amber:#e5ae55;--red:#d65d50;--blue:#769aa2}
*{box-sizing:border-box}html{background:#111513}body{margin:0;min-width:1120px;min-height:100vh;color:var(--cream);background:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),radial-gradient(circle at 50% -20%,#47534d,#202825 43%,#101513 100%);background-size:5px 5px,auto;font-family:"Bahnschrift","Arial Narrow","Malgun Gothic",sans-serif}button{font:inherit}.hidden{display:none!important}
.scanlines{position:fixed;inset:0;z-index:50;pointer-events:none;opacity:.1;mix-blend-mode:overlay;background:repeating-linear-gradient(0deg,transparent 0 3px,rgba(205,255,218,.25) 4px)}
.app-shell{position:relative;width:min(1540px,calc(100vw - 30px));min-height:calc(100vh - 20px);margin:10px auto;border:2px solid #090d0b;outline:1px solid #52605a;background:var(--machine);box-shadow:0 28px 90px #000,inset 0 1px rgba(255,255,255,.08)}
.app-shell:before,.app-shell:after{content:"";position:absolute;z-index:5;top:7px;width:9px;height:9px;border-radius:50%;background:#0c100f;box-shadow:inset 1px 1px #56625e,0 0 0 1px #080b0a}.app-shell:before{left:7px}.app-shell:after{right:7px}
.topbar{display:flex;align-items:center;min-height:76px;padding:12px 32px;border-bottom:2px solid #0d1311;background:linear-gradient(90deg,rgba(255,255,255,.05),transparent 20%),linear-gradient(#3a4642,#28322f);box-shadow:inset 0 -1px #52605a,0 3px 10px #111}.topbar:before{content:"HA";display:grid;place-items:center;width:39px;height:39px;margin-right:15px;color:var(--machine);border-radius:50%;background:var(--amber);font:900 16px Georgia;box-shadow:0 0 0 3px var(--machine2),0 0 0 4px var(--amber)}.topbar>div:first-child{flex:1}
.eyebrow,.system-label{margin:0 0 5px;color:var(--amber);font:800 9px Consolas,monospace;letter-spacing:.22em}h1{margin:0;color:#edf0e7;font-size:25px;letter-spacing:.055em;text-shadow:0 2px #111}h1 span{color:var(--amber)}h2{margin:6px 0 15px;font-size:29px}
.status-cluster{display:flex;gap:7px}.status-cluster div,.sound-toggle{display:grid;gap:5px;min-width:90px;padding:8px 10px;border:1px solid #121816;background:#1b2421;box-shadow:inset 0 0 12px #101513,0 1px rgba(255,255,255,.08)}small{color:#9e967e;font:800 9px Consolas,monospace;letter-spacing:.1em}.status-cluster strong{color:var(--glow);font:800 16px Consolas,monospace;text-shadow:0 0 8px rgba(184,227,193,.3)}.sound-toggle{min-width:60px;color:var(--glow);text-align:left;cursor:pointer}.sound-toggle:hover{border-color:var(--amber)}.sound-toggle strong{font-size:12px}.sound-toggle.muted strong{color:var(--red)}
.directive-bar{display:grid;grid-template-columns:150px 1fr 90px;align-items:center;min-height:37px;padding:0 30px;color:var(--ink);border-bottom:2px solid #111715;background:repeating-linear-gradient(-45deg,#d8cda9 0 12px,#cec29e 12px 24px);font:800 9px Consolas,monospace}.directive-bar span{color:#712f28}.directive-bar strong{font-size:11px}.directive-bar i{text-align:right;font-style:normal}
.screen{min-height:calc(100vh - 140px)}.briefing-screen,.news-screen{display:grid;place-items:center;padding:45px;background:radial-gradient(circle,#34413c,#161d1a 70%)}
.briefing-card,.news-card{position:relative;width:min(740px,76vw);padding:44px 48px;color:var(--ink);border:1px solid #716b58;background:linear-gradient(90deg,transparent 40px,rgba(142,52,43,.2) 41px 42px,transparent 43px),repeating-linear-gradient(0deg,rgba(55,65,59,.06) 0 1px,transparent 1px 27px),var(--paper);box-shadow:12px 14px rgba(6,9,8,.35),0 30px 80px #000;transform:rotate(-.2deg)}.briefing-card:before,.news-card:before{content:"HUMANET // INTERNAL";position:absolute;right:28px;top:25px;padding:6px 9px;color:#8d3c33;border:2px solid rgba(141,60,51,.62);font:900 9px Consolas;transform:rotate(2deg)}.briefing-card .system-label,.news-card .system-label{color:#7d342d}.briefing-card p,.briefing-card li{color:#38413d;line-height:1.68}.briefing-card ul{margin:22px 0 30px;padding-left:20px}
.primary-button,.secondary-button{min-height:42px;padding:11px 20px;border:1px solid #0d1210;font-weight:900;cursor:pointer;box-shadow:inset 0 1px rgba(255,255,255,.18),0 3px #101512;transition:.08s}.primary-button{color:#151c19;background:var(--amber)}.secondary-button{color:var(--cream);background:#35413d}.primary-button:hover,.secondary-button:hover{filter:brightness(1.1)}.primary-button:active,.secondary-button:active{transform:translateY(2px);box-shadow:0 1px #101512}
.work-screen{display:grid;grid-template-columns:285px minmax(440px,1fr) 345px;grid-template-rows:minmax(555px,calc(100vh - 243px)) 88px;gap:10px;padding:12px;background:linear-gradient(rgba(255,255,255,.016) 50%,transparent 50%),#1a211f;background-size:100% 4px}
.panel{position:relative;border:1px solid #0c110f;outline:1px solid #47534e;background:var(--machine2);box-shadow:inset 0 0 0 2px #26302d,4px 5px 12px rgba(4,7,6,.72)}.profile-panel{overflow-y:auto}.panel-heading{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:center;min-height:36px;padding:0 13px;color:#c9c2a9;border-bottom:2px solid #121816;background:linear-gradient(#414c48,#2c3733);box-shadow:inset 0 -1px #4c5954;font:800 9px Consolas;letter-spacing:.12em}.risk-badge{padding:4px 6px;color:#191814;background:var(--amber);letter-spacing:0}
.portrait-wrap{position:relative;margin:16px;padding:6px;border:1px solid #101513;background:#1b2421;box-shadow:inset 0 0 18px #000}.portrait{position:relative;display:grid;place-items:center;height:165px;overflow:hidden;color:var(--glow);border:1px solid #52675e;background:radial-gradient(ellipse at 50% 38%,rgba(184,227,193,.15) 0 18%,transparent 19%),radial-gradient(ellipse at 50% 120%,rgba(184,227,193,.1) 0 45%,transparent 46%),repeating-linear-gradient(0deg,rgba(184,227,193,.025) 0 2px,transparent 2px 5px),#0d1713;font:900 60px Consolas;text-shadow:0 0 22px rgba(184,227,193,.46)}.portrait:before{content:"BIOMETRIC FEED / NO COLOR";position:absolute;top:8px;left:8px;color:var(--dim);font:700 7px Consolas}.portrait:after{content:"";position:absolute;left:0;right:0;height:1px;background:rgba(184,227,193,.4);box-shadow:0 0 8px var(--glow);animation:scan 3s linear infinite}@keyframes scan{from{top:8%}to{top:92%}}.live-dot{position:absolute;bottom:12px;left:14px;color:var(--glow);font:800 8px Consolas}.live-dot i{display:inline-block;width:6px;height:6px;margin-right:4px;border-radius:50%;background:var(--red);box-shadow:0 0 7px var(--red)}.signal-bars{position:absolute;right:14px;bottom:12px;display:flex;align-items:end;gap:2px;height:19px}.signal-bars i{width:3px;height:30%;background:var(--glow);animation:signal 1.1s infinite alternate}.signal-bars i:nth-child(2n){height:80%;animation-delay:-.5s}@keyframes signal{to{height:100%;opacity:.35}}
.profile-data{margin:0 17px;padding:8px 11px;color:var(--ink);border:1px solid #7d7765;background:var(--paper);box-shadow:3px 3px rgba(0,0,0,.22);transform:rotate(.1deg)}.profile-data div{display:grid;grid-template-columns:1fr 1.25fr;padding:5px 0;border-bottom:1px solid rgba(55,65,59,.24)}.profile-data dt{color:#5e625a;font:800 8px Consolas}.profile-data dd{margin:0;text-align:right;font:900 10px Consolas}
.benchmark-panel{margin:12px 17px 7px;padding:10px;border:1px solid #111715;background:#17201d;box-shadow:inset 0 0 13px #080d0b}.benchmark-heading{display:flex;justify-content:space-between;color:var(--dim);font:800 8px Consolas}.benchmark-heading strong{color:var(--amber)}.speed-scale{position:relative;height:9px;margin:13px 0 8px;background:#2b3632}.speed-scale .range{position:absolute;top:0;height:100%;opacity:.78}.ai-range{left:1.3%;width:6.2%;background:var(--blue)}.human-range{left:20%;width:60%;background:var(--dim)}.speed-scale>i{position:absolute;top:-5px;width:2px;height:19px;background:var(--amber);transition:left .45s}.speed-scale>i b{position:absolute;top:-2px;left:-3px;width:8px;height:8px;transform:rotate(45deg);background:var(--amber)}.scale-labels{display:grid;grid-template-columns:27px 1fr 1fr 25px;color:#697a73;font:700 6px Consolas}.scale-labels span{text-align:center}.deep-metrics{margin:7px 17px 16px;padding:6px 10px;border-left:3px solid #53635c;background:#242e2b}.metric-row{display:flex;justify-content:space-between;padding:5px 0;border-bottom:1px dashed #4d5954;color:#aeb8b1;font:800 8px Consolas}.metric-row strong{color:var(--glow)}.metric-row.locked{opacity:.23}.metric-row.just-unlocked{animation:unlock 1.2s}@keyframes unlock{from{background:rgba(184,227,193,.35)}to{background:transparent}}
.terminal-panel{display:flex;flex-direction:column}.connection{color:var(--glow)}.chat-log{flex:1;overflow:auto;padding:23px 25px;border:8px solid #1c2522;background:repeating-linear-gradient(0deg,rgba(184,227,193,.024) 0 1px,transparent 1px 4px),radial-gradient(circle,#17241f,#0b1210);box-shadow:inset 0 0 35px #020403}.chat-log:before{content:"TRANSCRIPT RECORD // MONITORED";color:#526b5d;font:700 7px Consolas}.message{max-width:78%;margin:17px 0;padding:12px 14px;line-height:1.55;border:1px solid #42574c;background:#182720;box-shadow:3px 4px #060a08;font:12px Consolas,"Malgun Gothic",monospace}.message.system{margin-left:auto;color:#282d29;border-color:#756e5c;background:var(--paper)}.message small{display:block;margin-bottom:6px;color:var(--amber)}.message.system small{color:#7d342d}
.question-row{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;padding:11px;border-top:2px solid #111715;background:#222c29}.question-button,.test-button{position:relative;color:#d3d7cb;border:1px solid #111715;outline:1px solid #4b5752;background:linear-gradient(#3b4843,#29332f);cursor:pointer;box-shadow:inset 0 1px rgba(255,255,255,.08),0 3px #101512;transition:.08s}.question-button{min-height:58px;padding:9px 12px;font-size:11px}.question-button:before{content:"ASK";display:block;margin-bottom:4px;color:var(--amber);font:800 7px Consolas}.question-button:hover,.test-button:hover{color:#fff;outline-color:var(--amber)}.question-button:active,.test-button:active{transform:translateY(2px);box-shadow:inset 0 2px 4px #111}button:disabled{cursor:not-allowed;opacity:.34}
.test-list{display:grid;gap:7px;padding:13px}.test-button{min-height:58px;padding:11px 12px 11px 45px;text-align:left}.test-button:before{content:"01";position:absolute;left:12px;top:13px;color:var(--amber);font:900 16px Consolas}.test-button:nth-child(2):before{content:"02"}.test-button:nth-child(3):before{content:"03"}.test-button span{display:block;margin-bottom:5px;font-weight:900}.test-button small{font-size:7px}.test-button.running{color:var(--amber);outline-color:var(--amber);animation:pulse .45s infinite alternate}@keyframes pulse{to{filter:brightness(1.35)}}
.evidence-log{margin:0 13px 10px;min-height:165px;padding:14px;color:var(--ink);border:1px solid #7b7460;background:var(--paper);box-shadow:3px 4px rgba(0,0,0,.25);transform:rotate(-.1deg)}.evidence-log:before{content:"ANALYSIS OUTPUT";display:block;padding-bottom:7px;border-bottom:2px solid #6f6957;color:#6d332d;font:900 8px Consolas}.evidence-item{margin:10px 0 0;padding-bottom:10px;color:#303935;border-bottom:1px dashed #89816c;font-size:11px;line-height:1.5}.evidence-item strong{display:block;color:#7d342d;font:900 8px Consolas}.empty-state{color:#6b6b60;font-size:11px}.confidence-block{margin:0 13px 13px;padding:11px;border:1px solid #101513;background:#161e1b}.confidence-block>div:first-child{display:flex;justify-content:space-between;color:var(--dim);font:800 8px Consolas}.confidence-block strong{color:var(--amber)}.confidence-track{height:7px;margin:9px 0;background:#303a36;overflow:hidden}.confidence-track i{display:block;height:100%;background:repeating-linear-gradient(90deg,var(--dim) 0 7px,transparent 7px 9px);transition:width .35s}.confidence-block small{font-size:6px}
.decision-panel{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;padding:12px 17px;background:linear-gradient(#35413d,#252f2c)}.decision-panel p{margin:4px 0;color:#8f9a94;font-size:10px}.decision-buttons{display:flex;gap:10px}.decision{position:relative;min-width:170px;min-height:51px;padding:12px 16px 12px 42px;color:#e9e7d9;border:1px solid #0a0e0c;background:linear-gradient(#46534e,#28322f);font-weight:900;cursor:pointer;box-shadow:inset 0 1px rgba(255,255,255,.12),0 4px #101512}.decision:before{content:"";position:absolute;left:14px;top:17px;width:13px;height:13px;border:2px solid;border-radius:50%}.decision.approve{color:var(--glow)}.decision.quarantine{color:var(--amber)}.decision.delete{color:#ef776a}.decision:hover{filter:brightness(1.2)}.decision:active{transform:translateY(3px);box-shadow:0 1px #111}
.directive-document{margin:25px 0;padding:18px;border:2px solid #8b3d35}.directive-document small{display:block;margin-bottom:8px;color:#7d342d}.news-list{display:grid;gap:9px;max-height:380px;margin:24px 0;overflow:auto}.news-item{padding:13px;color:#303935;border-left:4px solid #8b3d35;background:rgba(255,255,255,.14);line-height:1.5}.score-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-bottom:24px}.score-grid div{padding:14px;border:1px solid #817965}.score-grid strong{display:block;margin-top:6px;color:#74352e;font:900 23px Consolas}
.modal{position:fixed;inset:0;z-index:60;display:grid;place-items:center;background:rgba(3,6,5,.84);backdrop-filter:blur(3px)}.modal-card{position:relative;width:500px;padding:35px;color:var(--ink);border:1px solid #706957;background:var(--paper);box-shadow:12px 15px rgba(0,0,0,.45),0 30px 90px #000;transform:rotate(-.3deg)}.modal-card:before{content:"DECISION ORDER";position:absolute;right:24px;top:20px;color:#7d342d;border:2px solid #98574f;padding:5px 8px;font:900 8px Consolas;transform:rotate(3deg)}.modal-card .system-label{color:#7d342d}.modal-card>p:not(.system-label){color:#424944;line-height:1.6}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}
::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#141b18}::-webkit-scrollbar-thumb{background:#56635e;border:2px solid #141b18}@media(max-height:760px){.work-screen{grid-template-rows:560px 82px}.portrait{height:130px}.profile-data div{padding:3px 0}.evidence-log{min-height:125px}}

/* Security handbook and progressive inspection console */
.evidence-panel{display:flex;flex-direction:column;overflow:hidden}.manual-panel{margin:10px 12px 6px;color:var(--ink);border:1px solid #756e5c;background:var(--paper);box-shadow:3px 4px rgba(0,0,0,.27);transform:rotate(.08deg)}.manual-title{display:flex;justify-content:space-between;align-items:center;padding:9px 10px;border-bottom:2px solid #756e5c;background:rgba(255,255,255,.12)}.manual-title small{display:block;color:#76382f;font-size:6px}.manual-title strong{display:block;margin-top:3px;font-size:12px}.manual-title b{padding:4px 6px;color:#76382f;border:1px solid #8d5048;font:900 7px Consolas;transform:rotate(2deg)}.security-rules{max-height:145px;overflow-y:auto;padding:6px 9px}.security-rule{display:grid;grid-template-columns:27px 1fr;gap:7px;padding:6px 0;border-bottom:1px dashed #908873;font-size:9px;line-height:1.35}.security-rule:last-child{border:0}.security-rule b{color:#76382f;font:900 8px Consolas}.security-rule p{margin:0}.security-rule em{display:block;margin-top:3px;color:#6f564f;font-size:8px;font-style:normal}.security-rule.amendment{margin:3px -4px;padding:6px 4px;background:rgba(214,93,80,.12)}.security-rule.new-rule{animation:ruleStamp .8s ease-out}@keyframes ruleStamp{0%{transform:scale(1.08);background:rgba(214,93,80,.38)}100%{transform:none;background:transparent}}.subsection-label{display:flex;justify-content:space-between;padding:5px 13px;color:#c9c2a9;font:800 8px Consolas;letter-spacing:.09em}.subsection-label small{font-size:6px}.test-list{grid-template-columns:1fr 1fr;padding-top:4px}.test-button{min-height:51px;padding:8px 7px 8px 35px}.test-button:before{left:9px;top:11px;font-size:13px}.test-button:nth-child(4):before{content:"04"}.test-button span{font-size:10px}.test-button small{font-size:6px}.evidence-log{min-height:105px;max-height:145px;overflow-y:auto}.confidence-block{margin-top:auto}

.outcome-explain{margin:-6px 0 15px;color:#545a53;font-size:11px}.news-item{border-left-width:5px}.news-item p{margin:8px 0 0}.outcome-head{display:flex;align-items:center;gap:6px}.outcome-head strong{margin-right:auto;font-size:12px}.outcome-head span{padding:4px 6px;border:1px solid;font:900 7px Consolas;letter-spacing:.04em}.company-correct,.social-positive{color:#315e43;border-color:#4f7b5e!important;background:rgba(79,123,94,.1)}.company-wrong,.social-negative{color:#8a352e;border-color:#a75349!important;background:rgba(167,83,73,.1)}.company-deferred,.company-unresolved,.social-mixed{color:#765d27;border-color:#9a7b38!important;background:rgba(154,123,56,.1)}.outcome-correct{border-left-color:#4f7b5e}.outcome-wrong{border-left-color:#a75349}.outcome-deferred,.outcome-unresolved{border-left-color:#9a7b38}
.decision-audit{margin-top:9px;border-top:1px dashed currentColor;padding-top:7px;font-size:9px}.decision-audit summary{cursor:pointer;font-weight:900;text-decoration:underline}.decision-audit ul{margin:7px 0;padding-left:18px}.decision-audit li{margin:4px 0;line-height:1.45}.decision-audit p{font-size:9px}

/* 1-bit institutional terminal art direction: deliberately non-SaaS */
:root{--ink:#151512;--cream:#e7e0c9;--paper:#e7e0c9;--machine:#151512;--machine2:#151512;--dark:#151512;--line:#e7e0c9;--glow:#e7e0c9;--dim:#aaa58f;--amber:#e7e0c9;--red:#e7e0c9;--blue:#e7e0c9}
body{color:var(--cream);background:#151512;background-image:radial-gradient(#4c4a40 18%,transparent 19%);background-size:3px 3px;font-family:Consolas,"Malgun Gothic",monospace}.scanlines{opacity:.07;mix-blend-mode:normal;background:repeating-linear-gradient(0deg,transparent 0 3px,#e7e0c9 4px)}
.app-shell{margin:8px auto;border:3px solid var(--cream);outline:3px solid var(--ink);background:var(--ink);box-shadow:8px 8px 0 #000}.app-shell:before,.app-shell:after{display:none}
.topbar{min-height:61px;padding:7px 12px;color:var(--ink);border:0;border-bottom:3px solid var(--cream);background:var(--cream);box-shadow:none}.topbar:before{content:"H";width:36px;height:36px;margin-right:9px;color:var(--cream);border:0;border-radius:0;background:var(--ink);box-shadow:none;font:900 22px Consolas}.eyebrow{color:#555247;font-size:8px}h1{color:var(--ink);font:900 22px Consolas,"Malgun Gothic";text-shadow:none}h1 span{color:var(--ink);text-decoration:underline}
.status-cluster{gap:3px}.status-cluster div,.sound-toggle{min-width:78px;padding:5px 7px;color:var(--cream);border:2px solid var(--ink);background:var(--ink);box-shadow:none}.status-cluster small{color:#aaa58f}.status-cluster strong{color:var(--cream);font-size:13px;text-shadow:none}.sound-toggle{min-width:50px}.sound-toggle.muted strong{color:var(--cream);text-decoration:line-through}
.directive-bar{min-height:30px;padding:0 12px;color:var(--cream);border:0;border-bottom:3px solid var(--cream);background:var(--ink);box-shadow:none}.directive-bar span{color:var(--cream);text-decoration:underline}.directive-bar strong{font-size:10px}
.directive-bar b{margin-left:auto;padding:3px 7px;border:1px solid currentColor;font-size:8px;white-space:nowrap}.directive-bar i{margin-left:8px}.briefing-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.briefing-actions .primary-button,.briefing-actions .secondary-button{margin-top:0}
.directive-bar b.policy-warning{color:var(--ink);background:var(--cream);animation:warning-blink .9s steps(2,end) infinite}
.work-screen{gap:4px;padding:4px;background:var(--ink);background-image:radial-gradient(#59564a 14%,transparent 15%);background-size:4px 4px}.panel{border:2px solid var(--cream);outline:0;background:var(--ink);box-shadow:none}.panel:after{display:none}.panel-heading{min-height:28px;padding:0 7px;color:var(--ink);border:0;border-bottom:2px solid var(--cream);background:var(--cream);box-shadow:none;font-size:8px}.risk-badge{padding:2px 4px;color:var(--cream);border:1px solid var(--cream);background:var(--ink)}
.portrait-wrap{margin:5px;padding:2px;border:2px solid var(--cream);background:var(--ink);box-shadow:none}.portrait{height:176px;border:0;background:var(--cream);filter:none;text-shadow:none}.portrait:before,.portrait:after{display:none}#portraitCanvas{display:block;width:100%;height:100%;object-fit:cover;image-rendering:pixelated;image-rendering:crisp-edges}.live-dot{bottom:5px;left:6px;padding:2px 4px;color:var(--cream);background:var(--ink)}.live-dot i{border-radius:0;background:var(--cream);box-shadow:none}.signal-bars{right:6px;bottom:6px}.signal-bars i{background:var(--ink)}
.profile-data{margin:4px;padding:6px 8px;color:var(--cream);border:2px solid var(--cream);background:var(--ink);box-shadow:none;transform:none}.profile-data div{border-bottom:1px dotted var(--cream)}.profile-data dt{color:#aaa58f}.benchmark-panel{margin:4px;padding:7px;border:2px solid var(--cream);background:var(--ink);box-shadow:none}.benchmark-heading{color:#aaa58f}.benchmark-heading strong{color:var(--cream)}.speed-scale{height:8px;background:#555247}.ai-range{background:repeating-linear-gradient(90deg,var(--cream) 0 1px,transparent 1px 2px)}.human-range{border:1px solid var(--cream);background:transparent}.speed-scale>i,.speed-scale>i b{background:var(--cream)}.deep-metrics{margin:4px;padding:4px 8px;border:2px solid var(--cream);background:var(--ink)}.metric-row{border-bottom:1px dotted #aaa58f}.metric-row strong{color:var(--cream)}
.chat-log{padding:12px;border:0;background:var(--ink);box-shadow:none}.chat-log:before{color:#aaa58f}.message{margin:12px 0;padding:8px 10px;color:var(--cream);border:2px solid var(--cream);background:var(--ink);box-shadow:3px 3px 0 #777365;font-size:12px}.message.system{color:var(--ink);border-color:var(--cream);background:var(--cream)}.message small{color:var(--cream);text-decoration:underline}.message.system small{color:var(--ink)}
.question-row{gap:3px;padding:4px;border-top:2px solid var(--cream);background:var(--ink)}.question-button,.test-button{color:var(--cream);border:2px solid var(--cream);outline:0;background:var(--ink);box-shadow:none}.question-button:before{color:#aaa58f}.question-button:hover,.test-button:hover{color:var(--ink);background:var(--cream);outline:0}.question-button:active,.test-button:active{transform:none;box-shadow:inset 0 0 0 2px var(--ink)}
.manual-panel{margin:4px;color:var(--ink);border:2px solid var(--cream);background:var(--cream);box-shadow:none;transform:none}.manual-title{padding:6px;border-bottom:2px solid var(--ink);background:var(--cream)}.manual-title small,.manual-title b{color:var(--ink)}.manual-title b{border:2px solid var(--ink)}.security-rules{max-height:128px}.security-rule{border-bottom:1px dotted var(--ink)}.security-rule b{color:var(--ink)}.security-rule em{color:#555247}.security-rule.amendment{background:repeating-linear-gradient(-45deg,transparent 0 3px,rgba(21,21,18,.12) 3px 4px)}.subsection-label{color:var(--cream)}
.test-list{gap:3px;padding:3px}.test-button{min-height:47px}.test-button:before{color:#aaa58f}.test-button.running{color:var(--ink);background:var(--cream);outline:0;animation:none}.evidence-log{margin:3px;min-height:94px;color:var(--ink);border:2px solid var(--cream);background:var(--cream);box-shadow:none;transform:none}.evidence-log:before{border-bottom:2px solid var(--ink);color:var(--ink)}.evidence-item{color:var(--ink);border-bottom:1px dotted var(--ink)}.evidence-item strong{color:var(--ink)}.confidence-block{margin:3px;padding:7px;border:2px solid var(--cream);background:var(--ink);box-shadow:none}.confidence-block>div:first-child{color:#aaa58f}.confidence-block strong{color:var(--cream)}.confidence-track{background:#555247}.confidence-track i{background:repeating-linear-gradient(90deg,var(--cream) 0 4px,transparent 4px 6px)}
.decision-panel{padding:7px;background:var(--ink)}.decision{min-height:45px;color:var(--cream)!important;border:2px solid var(--cream);background:var(--ink);box-shadow:3px 3px 0 #777365}.decision:hover{color:var(--ink)!important;background:var(--cream);filter:none}.decision:active{transform:translate(2px,2px);box-shadow:1px 1px #777365}
.briefing-screen,.news-screen{background:var(--ink);background-image:radial-gradient(#555247 14%,transparent 15%);background-size:4px 4px}.briefing-card,.news-card{color:var(--ink);border:3px solid var(--cream);background:var(--cream);box-shadow:8px 8px 0 #777365;transform:none}.briefing-card:before,.news-card:before{color:var(--ink);border:2px solid var(--ink)}.briefing-card .system-label,.news-card .system-label{color:var(--ink)}.primary-button{color:var(--cream);border:2px solid var(--ink);background:var(--ink);box-shadow:3px 3px #777365}.secondary-button{color:var(--ink);border:2px solid var(--ink);background:var(--cream);box-shadow:3px 3px #777365}.modal{background:rgba(21,21,18,.9);backdrop-filter:none}.modal-card{border:3px solid var(--ink);background:var(--cream);box-shadow:8px 8px #777365;transform:none}.modal-card:before{color:var(--ink);border-color:var(--ink)}
.outcome-head span{border:2px solid var(--ink)!important;color:var(--ink);background:transparent}.company-wrong,.social-negative{background:repeating-linear-gradient(-45deg,transparent 0 2px,rgba(21,21,18,.18) 2px 3px)}.news-item{color:var(--ink);border-left:6px solid var(--ink);background:transparent}.score-grid div{border:2px solid var(--ink)}.score-grid strong{color:var(--ink)}

.packet-telemetry{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;padding:3px;border-bottom:2px solid var(--cream);background:var(--cream)}.packet-telemetry span{padding:4px 6px;color:#aaa58f;background:var(--ink);font:700 7px Consolas;letter-spacing:.06em}.packet-telemetry b{float:right;color:var(--cream);font-size:8px}.packet-telemetry .transmitting{animation:packetBlink .35s steps(1) infinite}@keyframes packetBlink{50%{color:var(--ink);background:var(--cream)}}.typing-cursor{display:inline-block;width:7px;height:12px;margin-left:2px;vertical-align:-2px;background:var(--cream);animation:cursorBlink .6s steps(1) infinite}.message.system .typing-cursor{background:var(--ink)}@keyframes cursorBlink{50%{opacity:0}}.message .deleted-text{color:#777365;text-decoration:line-through}.archive-button{min-width:58px}.archive-modal{padding:25px}.archive-card{width:min(1100px,92vw);height:min(760px,88vh);padding:12px;color:var(--cream);border:3px solid var(--cream);background:var(--ink);box-shadow:8px 8px #777365}.archive-heading{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;border-bottom:3px double var(--cream)}.archive-heading h2{margin:3px 0 0;font-size:22px}.archive-filters{display:flex;flex-wrap:wrap;gap:4px;padding:9px 0}.archive-filter{padding:5px 8px;color:var(--cream);border:2px solid var(--cream);background:var(--ink);font:800 9px Consolas;cursor:pointer}.archive-filter.active,.archive-filter:hover{color:var(--ink);background:var(--cream)}.archive-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;max-height:calc(100% - 105px);overflow-y:auto}.archive-file{min-height:118px;padding:8px;color:var(--ink);border:2px solid var(--cream);background:var(--cream)}.archive-file header{display:flex;justify-content:space-between;padding-bottom:5px;border-bottom:2px solid var(--ink);font:900 8px Consolas}.archive-file h3{margin:8px 0 3px;font-size:13px}.archive-file p{margin:3px 0;font-size:9px;line-height:1.4}.archive-file .file-status{display:inline-block;margin-top:6px;padding:3px 5px;color:var(--cream);background:var(--ink);font:800 7px Consolas}.archive-file.locked-file{display:grid;place-items:center;color:#aaa58f;border-style:dashed;background:repeating-linear-gradient(-45deg,#151512 0 3px,#2e2d27 3px 4px)}.archive-file.locked-file strong{font:900 11px Consolas}
.network-state {
  display: grid;
  grid-template-columns: repeat(3, minmax(76px, 1fr));
  gap: 4px;
  min-width: 290px;
}

.network-state span {
  border: 1px solid currentColor;
  padding: 6px 8px;
  font: 700 10px/1.1 "Courier New", monospace;
  letter-spacing: .06em;
}

.network-state strong {
  display: block;
  margin-top: 4px;
  font-size: 17px;
}

.ending-report {
  margin: 14px 0;
  border: 3px double currentColor;
  padding: 14px;
  background: repeating-linear-gradient(0deg, transparent 0 3px, rgba(0,0,0,.05) 3px 4px);
}

.ending-report small,
.ending-report strong { display: block; }
.ending-report strong { margin: 5px 0; font-size: 18px; }

@media (max-width: 920px) {
  .network-state { min-width: 100%; }
}
.operations-bar {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(5, minmax(110px, 1fr));
  border: 2px solid currentColor;
  background: #151512;
  color: #e7e0c9;
  box-shadow: 4px 4px 0 #151512;
}

.operations-bar span { padding: 7px 10px; border-right: 1px solid currentColor; }
.operations-bar span:last-child { border-right: 0; }
.operations-bar small, .operations-bar b { display: block; font-family: "Courier New", monospace; }
.operations-bar small { font-size: 9px; opacity: .72; }
.operations-bar b { margin-top: 3px; font-size: 13px; letter-spacing: .05em; }
.operations-bar .urgent { animation: warning-blink .45s steps(2, end) infinite; }
.operations-bar.critical { color: #151512; background: #e7e0c9; animation: warning-blink .7s steps(2, end) infinite; }

.world-dossier {
  margin-bottom: 18px;
  padding: 13px;
  border: 3px double currentColor;
  text-align: left;
  background: repeating-linear-gradient(0deg, transparent 0 3px, rgba(0,0,0,.055) 3px 4px);
}
.world-dossier small, .world-dossier strong { display: block; }
.world-dossier strong { margin: 6px 0; font-size: 18px; }
.world-dossier p { margin: 0; line-height: 1.55; }

.decision-stamp {
  position: fixed;
  z-index: 2000;
  left: 50%;
  top: 48%;
  transform: translate(-50%, -50%) rotate(-7deg) scale(1);
  padding: 12px 28px;
  border: 7px double currentColor;
  background: #e7e0c9;
  font: 900 42px/1 "Courier New", monospace;
  letter-spacing: .08em;
  pointer-events: none;
  animation: stamp-hit .62s steps(4, end) both;
}
.decision-stamp.stamp-human { color: #24442d; }
.decision-stamp.stamp-unknown { color: #725916; }
.decision-stamp.stamp-bot { color: #6d211c; }

@keyframes stamp-hit {
  0% { transform: translate(-50%, -50%) rotate(-7deg) scale(2.4); opacity: 0; }
  35% { transform: translate(-50%, -50%) rotate(-7deg) scale(.92); opacity: 1; }
  55% { transform: translate(-50%, -50%) rotate(-7deg) scale(1); opacity: 1; }
  100% { transform: translate(-50%, -50%) rotate(-7deg) scale(1); opacity: 0; }
}

@keyframes warning-blink { 50% { filter: invert(1); } }

@media (max-width: 920px) {
  .operations-bar { grid-template-columns: repeat(2, 1fr); }
  .operations-bar span { border-bottom: 1px solid currentColor; }
}
.captcha-machine {
  width: min(760px, calc(100vw - 30px));
  max-height: min(760px, calc(100vh - 30px));
  overflow: auto;
  padding: 18px;
  border: 4px double #151512;
  background: #e7e0c9;
  color: #151512;
  box-shadow: 10px 10px 0 #151512;
}
.captcha-machine > header { display:flex; justify-content:space-between; gap:16px; align-items:start; border-bottom:2px solid currentColor; padding-bottom:10px; }
.captcha-machine h2 { margin:3px 0 0; font:900 22px/1 "Courier New",monospace; }
.captcha-tabs { display:grid; grid-template-columns:repeat(3,1fr); gap:5px; margin:14px 0; }
.captcha-type { border:2px solid currentColor; padding:9px; background:transparent; color:inherit; font-weight:800; }
.captcha-type.active { color:#e7e0c9; background:#151512; }
.captcha-stage { min-height:245px; display:grid; place-items:center; padding:18px; border:2px solid currentColor; background:repeating-linear-gradient(0deg,transparent 0 3px,rgba(0,0,0,.06) 3px 4px); text-align:center; }
.captcha-stage { position:relative; overflow:hidden; }
.remote-cursor { position:absolute; z-index:12; left:8%; top:10%; width:0; height:0; opacity:0; pointer-events:none; border-top:18px solid #151512; border-right:11px solid transparent; filter:drop-shadow(2px 2px 0 #e7e0c9); transition:left .22s steps(5,end),top .22s steps(5,end),transform .08s; }
.remote-cursor::after { content:"REMOTE"; position:absolute; left:7px; top:-18px; padding:2px 4px; color:#e7e0c9; background:#151512; font:700 8px/1 "Courier New",monospace; }
.remote-cursor.online { opacity:1; }
.remote-cursor.clicking { transform:scale(.72); filter:drop-shadow(0 0 4px #151512); }
.remote-cursor.api-route { left:50%!important; top:50%!important; opacity:.28; animation:api-glitch .12s steps(2,end) infinite; }
.remote-input { display:flex; align-items:center; width:min(430px,90%); min-height:42px; margin-top:9px; border:2px solid currentColor; background:#eee7d0; text-align:left; }
.remote-input span { align-self:stretch; display:grid; place-items:center; min-width:105px; padding:0 8px; color:#e7e0c9; background:#151512; font:700 9px/1 "Courier New",monospace; }
.remote-input b { padding:7px 8px; font:800 20px/1 "Courier New",monospace; letter-spacing:.16em; }
.remote-input > i { width:8px; height:20px; background:#151512; animation:cursor-blink .55s steps(2,end) infinite; }
.remote-input.backspacing { animation:input-error .12s steps(2,end) 2; }
.remote-input.thinking > i { animation-duration:1.1s; }
.paradox-input { width:100%; margin-top:16px; }
.paradox-input b { min-height:34px; font-size:14px; line-height:1.45; letter-spacing:0; }
.glyph-captcha { position:relative; display:flex; align-items:center; justify-content:center; width:min(430px,90%); height:120px; overflow:hidden; border:3px solid currentColor; background:#d6ceb5; }
.glyph-captcha i { position:relative; z-index:2; display:inline-block; transform:translateY(var(--y)) rotate(var(--r)); margin:0 7px; font:900 44px/1 Georgia,serif; font-style:normal; text-shadow:2px 1px 0 #e7e0c9; }
.noise-line { position:absolute; z-index:3; left:-5%; width:110%; height:3px; background:#151512; transform:rotate(-8deg); }
.noise-line.n1 { top:38%; }.noise-line.n2 { top:67%; transform:rotate(11deg); }
.tile-captcha { display:grid; grid-template-columns:repeat(3,82px); gap:4px; }
.captcha-tile { aspect-ratio:1; border:2px solid currentColor; color:inherit; background:#d7d0ba; background-image:repeating-linear-gradient(45deg,transparent 0 5px,rgba(0,0,0,.12) 5px 6px); }
.captcha-tile span { font-size:11px; font-weight:800; }
.captcha-tile.remote-selected { color:#e7e0c9; background:#151512; outline:3px double #e7e0c9; outline-offset:-6px; transform:scale(.94); }
.captcha-stage.batch-solved .captcha-tile.remote-selected { animation:batch-lock .18s steps(2,end) 2; }
.tile-1,.tile-3 { filter:contrast(1.35); }.tile-2 { background-color:#bdb59d; }.tile-4 { background-image:repeating-radial-gradient(circle,#151512 0 1px,transparent 1px 6px); }
.paradox-captcha { max-width:520px; border:3px double currentColor; padding:24px; }
.paradox-captcha strong { display:block; margin:14px 0; font-size:22px; }
.captcha-readout { display:grid; grid-template-columns:repeat(4,1fr); border:2px solid currentColor; border-top:0; }
.captcha-readout span { padding:8px; border-right:1px solid currentColor; font:700 10px/1.2 "Courier New",monospace; }
.captcha-readout span:last-child { border-right:0; }.captcha-readout b { display:block; margin-top:4px; font-size:12px; }
.captcha-result { min-height:48px; margin:12px 0; padding:10px; border-left:5px solid currentColor; background:rgba(0,0,0,.07); line-height:1.5; }
.captcha-actions { display:flex; justify-content:flex-end; gap:8px; }
@media (max-width:620px) { .captcha-tabs,.captcha-readout { grid-template-columns:1fr 1fr; }.captcha-machine > header { flex-direction:column; }.tile-captcha { grid-template-columns:repeat(3,64px); } }
@keyframes cursor-blink { 50% { opacity:0; } }
@keyframes input-error { 50% { transform:translateX(3px); background:#151512; color:#e7e0c9; } }
@keyframes batch-lock { 50% { filter:invert(1); } }
@keyframes api-glitch { 50% { transform:translate(8px,-5px) scaleX(1.8); } }

button:focus-visible,
[tabindex]:focus-visible {
  outline: 3px double currentColor;
  outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    scroll-behavior: auto !important;
    animation-duration: .001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .001ms !important;
  }
}
.followup-row {
  margin: 6px 10px 10px 42px;
  padding: 7px;
  border-left: 3px double currentColor;
  background: rgba(0,0,0,.055);
}
.followup-row small { display:block; margin-bottom:5px; font:700 8px/1 "Courier New",monospace; letter-spacing:.12em; opacity:.66; }
.followup-button { width:100%; border:1px dashed currentColor; padding:7px 9px; color:inherit; background:transparent; text-align:left; font-weight:700; line-height:1.4; }
.followup-button:hover:not(:disabled) { color:#e7e0c9; background:#151512; }
.followup-button:disabled { opacity:.45; }

/* Responsive inspection desk */
body { min-width: 0; overflow-x: hidden; }
.app-shell { width: min(1540px, calc(100% - 16px)); }
.directive-bar { grid-template-columns: 150px minmax(0, 1fr) auto 90px; gap: 8px; }
.work-screen {
  grid-template-rows: auto auto minmax(555px, calc(100vh - 340px)) 88px;
}

@media (max-width: 1100px) {
  .app-shell { width: calc(100% - 12px); margin: 6px auto; }
  .topbar { flex-wrap: wrap; gap: 8px; }
  .topbar > div:first-child { min-width: 0; }
  .status-cluster {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
  .status-cluster div, .sound-toggle { min-width: 0; }
  .directive-bar { grid-template-columns: auto minmax(0, 1fr) auto auto; gap: 8px; }
  .work-screen {
    grid-template-columns: 280px minmax(0, 1fr);
    grid-template-rows: auto auto minmax(580px, auto) auto auto;
  }
  .profile-panel { grid-column: 1; }
  .terminal-panel { grid-column: 2; }
  .evidence-panel { grid-column: 1 / -1; min-height: 520px; }
  .decision-panel, .operations-bar { grid-column: 1 / -1; }
  .decision-panel { flex-direction: column; align-items: stretch; gap: 10px; }
  .decision-buttons { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .decision { min-width: 0; }
  .archive-grid { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 700px) {
  .app-shell { width: calc(100% - 8px); margin: 4px auto; box-shadow: 4px 4px 0 #000; }
  .topbar { padding: 8px; }
  .topbar:before { flex: 0 0 36px; }
  .topbar > div:first-child { flex: 1 1 calc(100% - 52px); }
  h1 { font-size: 18px; line-height: 1.05; overflow-wrap: anywhere; }
  .status-cluster { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .status-cluster div, .sound-toggle { min-height: 48px; padding: 5px; }
  .status-cluster strong { font-size: 12px; overflow-wrap: anywhere; }
  .directive-bar {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 5px 8px;
    padding: 7px 9px;
  }
  .directive-bar strong { grid-column: 1 / -1; grid-row: 2; line-height: 1.4; }
  .directive-bar i { margin-left: 0; }
  .screen { min-height: calc(100vh - 140px); }
  .briefing-screen, .news-screen { padding: 12px; }
  .briefing-card, .news-card { width: 100%; padding: 52px 18px 24px; }
  .briefing-card:before, .news-card:before { top: 16px; right: 16px; }
  .work-screen {
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: auto;
    gap: 6px;
    padding: 4px;
  }
  .operations-bar, .profile-panel, .terminal-panel, .evidence-panel, .decision-panel { grid-column: 1; }
  .operations-bar { grid-template-columns: repeat(2, minmax(0, 1fr)); box-shadow: none; }
  .operations-bar span { min-width: 0; border-bottom: 1px solid currentColor; }
  .operations-bar span:nth-child(2n) { border-right: 0; }
  .operations-bar span:last-child { grid-column: 1 / -1; }
  .profile-panel { overflow: visible; }
  .portrait { height: 220px; }
  .terminal-panel { min-height: 570px; }
  .chat-log { min-height: 330px; padding: 8px; }
  .message { max-width: 95%; font-size: 13px; }
  .question-row { grid-template-columns: 1fr; }
  .question-button { min-height: 48px; }
  .evidence-panel { min-height: 650px; overflow: visible; }
  .security-rules, .evidence-log { max-height: none; }
  .test-list { grid-template-columns: 1fr; }
  .test-button { min-height: 48px; }
  .decision-panel { flex-direction: column; align-items: stretch; gap: 10px; }
  .network-state { width: 100%; min-width: 0; }
  .decision-buttons { display: grid; grid-template-columns: 1fr; }
  .decision { width: 100%; min-width: 0; min-height: 48px; }
  .modal { padding: 12px; }
  .modal-card { width: 100%; max-height: calc(100vh - 24px); overflow: auto; padding: 52px 18px 24px; }
  .modal-card:before { top: 16px; right: 16px; }
  .modal-actions { flex-direction: column-reverse; }
  .modal-actions button { width: 100%; min-height: 48px; }
  .archive-modal { padding: 8px; }
  .archive-card { width: 100%; height: calc(100vh - 16px); padding: 8px; box-shadow: none; }
  .archive-grid { grid-template-columns: 1fr; }
  .archive-heading h2 { font-size: 17px; }
  .packet-telemetry { grid-template-columns: repeat(2, 1fr); }
  .captcha-machine { width: calc(100vw - 24px); padding: 12px; box-shadow: 5px 5px 0 #151512; }
  .captcha-actions { flex-direction: column; }
  .captcha-actions button { width: 100%; min-height: 48px; }
}

.inspector-status {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 3px;
  padding: 3px;
  color: var(--cream);
  border: 2px solid var(--cream);
  background: var(--ink);
}
.inspector-status span { display: grid; grid-template-columns: 1fr auto; gap: 3px 8px; min-width: 0; padding: 6px 8px; border: 1px dotted currentColor; }
.inspector-status small { font: 800 8px/1 Consolas; letter-spacing: .08em; }
.inspector-status b { font: 900 15px/1 Consolas; }
.inspector-status em { grid-column: 1 / -1; color: #aaa58f; font: 700 8px/1.25 Consolas; font-style: normal; }
.test-button.access-locked::after { content: "LOCKED"; color: currentColor; font: 900 8px Consolas; }

@media (max-width: 700px) {
  .inspector-status { grid-template-columns: 1fr; }
  .inspector-status span { min-height: 48px; }
}

@media (max-width: 400px) {
  .topbar:before { width: 32px; height: 32px; flex-basis: 32px; }
  .eyebrow { letter-spacing: .12em; }
  h1 { font-size: 16px; }
  .status-cluster small { font-size: 7px; letter-spacing: .04em; }
  .status-cluster strong { font-size: 11px; }
  .network-state { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .network-state span { padding: 6px 4px; font-size: 8px; }
  .network-state strong { font-size: 13px; }
}

/* Evidence linking desk */
.evidence-token {
  display: grid;
  width: 100%;
  grid-template-columns: 48px minmax(90px, .55fr) minmax(0, 1fr);
  gap: 7px;
  align-items: start;
  padding: 7px;
  color: var(--ink);
  border: 0;
  border-bottom: 1px dotted var(--ink);
  background: transparent;
  text-align: left;
  cursor: pointer;
}
.evidence-token small { padding: 2px 3px; color: var(--cream); background: var(--ink); font: 800 8px/1 Consolas; text-align: center; }
.evidence-token strong { color: var(--ink); font-size: 10px; line-height: 1.35; }
.evidence-token span { font-size: 9px; line-height: 1.45; }
.evidence-token:hover, .evidence-token.selected { outline: 2px solid var(--ink); outline-offset: -3px; background: rgba(21,21,18,.12); }
.evidence-token.selected::after { content: "SELECTED"; grid-column: 1 / -1; font: 900 8px/1 Consolas; letter-spacing: .14em; }
.evidence-workspace { margin: 3px; padding: 7px; color: var(--ink); border: 2px solid var(--cream); background: var(--cream); }
.evidence-workspace-heading { display: flex; justify-content: space-between; gap: 8px; padding-bottom: 6px; border-bottom: 2px solid var(--ink); font: 800 9px/1.2 Consolas; }
.selected-evidence-summary { min-height: 34px; margin: 6px 0; padding: 6px; border: 1px dashed var(--ink); font-size: 9px; line-height: 1.45; }
.relation-buttons { display: grid; grid-template-columns: repeat(3, 1fr); gap: 4px; }
.relation-buttons button { min-height: 34px; color: var(--ink); border: 2px solid var(--ink); background: transparent; font: 900 9px Consolas; }
.relation-buttons button:hover:not(:disabled) { color: var(--cream); background: var(--ink); }
.relation-buttons button:disabled { opacity: .35; }
.basis-axis { display:grid;grid-template-columns:auto 1fr 1fr;gap:4px;align-items:center;margin-top:5px;padding-top:5px;border-top:1px dotted var(--ink); }
.basis-axis span { font:900 8px/1 Consolas;letter-spacing:.08em; }
.basis-axis button { min-height:32px;color:var(--ink);border:1px solid var(--ink);background:transparent;font:800 8px Consolas; }
.basis-axis button.active { color:var(--cream);background:var(--ink);outline:2px double var(--ink);outline-offset:2px; }
.future-principle { display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin-top:6px;padding:6px;border:3px double var(--ink); }
.future-principle span { grid-column:1 / -1;font:900 9px/1 Consolas;letter-spacing:.08em; }
.future-principle button { min-height:38px;color:var(--ink);border:2px solid var(--ink);background:transparent;font:800 8px/1.25 Consolas; }
.future-principle button.active { color:var(--cream);background:var(--ink); }
.basis-log { max-height: 74px; overflow: auto; }
.basis-entry { margin: 5px 0 0; padding: 5px; border-left: 4px solid var(--ink); font-size: 8px; line-height: 1.4; }
.basis-entry.invalid { border-left-style: double; text-decoration: line-through; opacity: .7; }
.decision-gate-reason { margin: 6px 0 0; padding: 6px; color: var(--cream); background: var(--ink); font: 800 9px/1.4 Consolas; }
.decision-gate-reason.ready::before { content: "✓ "; }
.decision-gate-reason:not(.ready)::before { content: "LOCKED · "; }
.decision:disabled { cursor: not-allowed; opacity: .38; box-shadow: none; }

@media (max-width: 700px) {
  .evidence-token { grid-template-columns: 52px minmax(100px, .6fr) minmax(0, 1fr); min-height: 48px; }
  .relation-buttons button { min-height: 48px; }
  .basis-axis { grid-template-columns:1fr 1fr; }.basis-axis span { grid-column:1 / -1; }.basis-axis button { min-height:48px; }
  .future-principle { grid-template-columns:1fr; }.future-principle span { grid-column:1; }.future-principle button { min-height:48px; }
}

.news-screen.ending-lucid { background-color:#263a2b; }
.news-screen.ending-iron_gate { background-color:#3b2421; }
.news-screen.ending-infiltration { background-color:#30263d; }
.news-screen.ending-collapse { background-color:#111; filter:contrast(1.18); }
.news-screen.ending-border { background-color:#3c3826; }
.ending-lucid .ending-report { box-shadow:inset 0 0 0 6px rgba(36,68,45,.22); }
.ending-iron_gate .ending-report { border-style:solid; }
.ending-infiltration .ending-report { transform:skew(-.5deg); }
.ending-collapse .ending-report { border-style:dashed; }
.ending-border .ending-report { border-style:double; }

.profile-toggle { display:none;color:inherit;border:1px solid currentColor;background:transparent;font:800 9px Consolas; }

@media (max-width:700px) {
  .profile-toggle { display:block;min-height:40px;padding:6px; }
  .profile-panel.collapsed > :not(.panel-heading) { display:none; }
  .profile-panel.collapsed { min-height:0; }
  .evidence-token span,.basis-entry,.decision-gate-reason,.security-rule p,.archive-file p { font-size:10px; }
}

/* UI refinement 24 — an administrative desk, not a uniform dashboard */
:root {
  --stamp: #8d2d24;
  --pencil: #294b57;
  --paper-shadow: #777365;
}

.topbar {
  position: relative;
  align-items: flex-start;
  padding-bottom: 11px;
}
.topbar::after {
  content: "FORM HN–20  /  INTERNAL REVIEW COPY";
  position: absolute;
  left: 58px;
  bottom: 5px;
  color: #6c685c;
  font: 800 7px/1 Consolas, monospace;
  letter-spacing: .16em;
}
.topbar h1 { letter-spacing: -.025em; }
.status-cluster { align-self: center; transform: rotate(.08deg); }
.status-cluster > div,
.status-cluster > button { border-width: 0 0 0 2px; }
.status-cluster > :nth-child(2n) { transform: translateY(2px); }

.directive-bar {
  position: relative;
  border-bottom: 0;
  box-shadow: inset 0 -2px var(--cream);
}
.directive-bar::before {
  content: "오늘의 명령";
  position: absolute;
  left: 12px;
  bottom: -8px;
  z-index: 4;
  padding: 2px 5px;
  color: var(--cream);
  background: var(--stamp);
  font: 900 7px/1 "Malgun Gothic", sans-serif;
  transform: rotate(-1.5deg);
}

.operations-bar {
  border: 0;
  border-top: 2px solid var(--cream);
  border-bottom: 2px solid var(--cream);
  box-shadow: none;
}
.operations-bar span {
  position: relative;
  border-right: 1px dotted var(--cream);
}
.operations-bar span::after {
  content: "";
  position: absolute;
  right: -3px;
  top: 50%;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--ink);
  outline: 1px solid var(--cream);
}
.operations-bar span:last-child::after { display: none; }

.inspector-status {
  position: relative;
  grid-template-columns: 1.15fr .85fr 1fr;
  gap: 0;
  padding: 0 0 0 76px;
  border: 0;
  border-bottom: 1px solid var(--cream);
}
.inspector-status::before {
  content: "INSPECTOR\A LEDGER";
  white-space: pre;
  position: absolute;
  inset: 0 auto 0 0;
  display: grid;
  place-content: center;
  width: 70px;
  color: var(--ink);
  background: var(--cream);
  font: 900 9px/1.2 Consolas, monospace;
  text-align: center;
}
.inspector-status span {
  min-height: 42px;
  padding: 7px 10px;
  border: 0;
  border-right: 1px dotted var(--cream);
}
.inspector-status span:last-child { border-right: 0; }
.inspector-status b { font-size: 18px; }

.profile-panel {
  z-index: 2;
  transform: rotate(-.08deg);
  transform-origin: top right;
  border-color: var(--paper-shadow);
  background: var(--cream);
}
.profile-panel .panel-heading {
  justify-content: flex-start;
  gap: 9px;
  border-bottom: 3px double var(--ink);
}
.profile-panel .panel-heading::before { content: "FILE 01"; color: var(--stamp); }
.profile-panel .risk-badge { margin-left: auto; transform: rotate(1.5deg); }
.profile-panel .portrait-wrap { transform: rotate(.16deg); }

.terminal-panel {
  z-index: 3;
  margin: 6px 0 -3px;
  border-width: 3px;
  box-shadow: 5px 5px 0 #050504;
}
.terminal-panel .panel-heading {
  color: var(--cream);
  border-bottom: 0;
  background: var(--ink);
}
.terminal-panel .panel-heading::before { content: "LIVE / "; color: #aaa58f; }
.terminal-panel .chat-log { border-top: 1px dotted #777365; }
.message.applicant { margin-left: 18px; border-left-width: 5px; }
.message.system { margin-right: 16px; border-right: 5px solid var(--ink); }
.question-button { border-top-width: 4px; text-align: left; }
.question-button::before { content: "Q / REC"; }

.evidence-panel {
  z-index: 1;
  transform: rotate(.06deg);
  transform-origin: top left;
  border-color: var(--paper-shadow);
}
.evidence-panel > .panel-heading {
  justify-content: flex-start;
  gap: 10px;
  color: var(--cream);
  background: var(--stamp);
}
.evidence-panel > .panel-heading::before { content: "REVIEW COPY"; }
.evidence-panel #ruleCount { margin-left: auto; }
.manual-panel { box-shadow: 4px 4px 0 var(--paper-shadow); }
.security-rule[role="button"] { cursor: pointer; }
.security-rule[role="button"]:hover { background: rgba(141,45,36,.1); }

.evidence-log {
  position: relative;
  border: 0;
  border-top: 3px double var(--ink);
  border-bottom: 2px solid var(--ink);
  box-shadow: none;
}
.evidence-log::after {
  content: "검토자 표시";
  position: absolute;
  right: 8px;
  top: 6px;
  color: var(--stamp);
  font: 900 8px/1 "Malgun Gothic", sans-serif;
  transform: rotate(-2deg);
}
.evidence-token { position: relative; padding-left: 11px; }
.evidence-token::before {
  content: "";
  position: absolute;
  left: 0;
  top: 8px;
  bottom: 8px;
  width: 3px;
  background: var(--pencil);
}
.evidence-token.source-rule::before { background: var(--stamp); }
.evidence-token.selected {
  outline: 0;
  background: repeating-linear-gradient(-7deg, transparent 0 7px, rgba(141,45,36,.12) 7px 8px);
}
.evidence-token.selected::after { color: var(--stamp); text-align: right; }

.evidence-workspace {
  position: relative;
  margin-top: 8px;
  border: 0;
  border-top: 2px solid var(--ink);
  box-shadow: inset 5px 0 var(--stamp);
}
.evidence-workspace::before {
  content: "BASIS FORM / 2 CLUES MIN.";
  position: absolute;
  right: 8px;
  top: -9px;
  padding: 2px 5px;
  color: var(--cream);
  background: var(--ink);
  font: 800 7px/1 Consolas, monospace;
}
.relation-buttons { grid-template-columns: .85fr 1.3fr .85fr; }
.relation-buttons [data-relation="contradiction"] {
  color: var(--stamp);
  border-color: var(--stamp);
  font-size: 11px;
}
.basis-axis button { position: relative; padding-left: 21px; text-align: left; }
.basis-axis button::before {
  content: "";
  position: absolute;
  left: 7px;
  top: 50%;
  width: 8px;
  height: 8px;
  border: 1px solid currentColor;
  transform: translateY(-50%);
}
.basis-axis button.active::before { background: currentColor; box-shadow: inset 0 0 0 2px var(--ink); }
.basis-entry.valid { color: var(--stamp); border-left-color: var(--stamp); }

.decision-panel {
  position: relative;
  border-top: 5px double var(--cream);
}
.decision-panel::before {
  content: "AUTHORIZED SIGNATURE __________________";
  position: absolute;
  right: 18px;
  top: -9px;
  padding: 0 5px;
  color: #aaa58f;
  background: var(--ink);
  font: 700 7px/1 Consolas, monospace;
}
.mobile-decision-toggle { display:none; }
.decision { text-align: left; box-shadow: none; }
.decision::before { border-radius: 0; transform: rotate(45deg); }
.decision.delete { color: #f0d6cf !important; border-color: var(--stamp); background: var(--stamp); }
.decision.quarantine { border-style: dashed; }

@media (max-width: 1100px) {
  .profile-panel,.terminal-panel,.evidence-panel { transform: none; }
}

@media (max-width: 700px) {
  .topbar { align-items:center; }
  .topbar::before { flex:0 0 32px;width:32px;height:32px;margin-right:8px;font-size:18px; }
  .topbar > div:first-child { flex:1 1 0;min-width:0; }
  .topbar h1 { white-space:nowrap;font-size:15px;letter-spacing:-.055em; }
  .topbar .eyebrow { overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:7px; }
  .topbar::after { left:51px;bottom:3px;max-width:calc(100% - 62px);overflow:hidden;white-space:nowrap; }
  .status-cluster { width:100%;grid-template-columns:repeat(3,minmax(0,1fr)); }
  .status-cluster > * { width:auto;min-width:0!important;overflow:hidden; }
  .status-cluster > :nth-child(2n) { transform: none; }
  .inspector-status { grid-template-columns:1fr;padding-left:0; }
  .inspector-status::before { position:relative;inset:auto;width:auto;min-height:30px;font-size:8px;white-space:normal; }
  .inspector-status span { min-height: 46px; }
  .message { font-size: 16px; line-height: 1.62; }
  .question-button { min-height: 64px; font-size: 15px; line-height: 1.45; }
  .test-button span { font-size: 14px; }
  .test-button small,.subsection-label small { font-size: 10px; }
  .security-rule p,.evidence-token span,.selected-evidence-summary,.basis-entry,.decision-gate-reason { font-size: 13px; line-height: 1.5; }
  .evidence-token strong { font-size: 12px; }
  .evidence-token small { font-size: 10px; }
  .decision-panel {
    position: sticky;
    bottom: 0;
    z-index: 40;
    gap: 5px;
    padding: 5px;
    background: rgba(21,21,18,.97);
  }
  .mobile-decision-toggle { display:block;width:100%;min-height:46px;padding:8px;color:var(--ink);border:2px solid var(--cream);background:var(--cream);font:900 12px/1.2 "Malgun Gothic",sans-serif;text-align:center; }
  .decision-panel.mobile-collapsed { display:block;min-height:0;padding:3px;border:0;background:transparent; }
  .decision-panel.mobile-collapsed::before { display:none; }
  .decision-panel.mobile-collapsed > :not(.mobile-decision-toggle) { display:none; }
  .decision-panel > div:nth-child(2) { display: none; }
  .decision-buttons { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 3px; }
  .decision { min-height: 56px; padding: 6px 5px 6px 25px; font-size: 11px; line-height: 1.2; }
  .decision::before { left: 9px; top: 20px; width: 9px; height: 9px; }
}

/* UI grit 26 — low-resolution bureaucratic border post */
:root {
  --ink: #171812;
  --cream: #d1c49b;
  --paper: #c4b58c;
  --machine: #20231b;
  --machine2: #303326;
  --dim: #8f896f;
  --stamp: #7e3028;
  --pencil: #334c4b;
  --paper-shadow: #625e4b;
}

html { background: #11130f; }
body {
  background-color: #1d2019;
  background-image:
    repeating-linear-gradient(90deg, transparent 0 19px, rgba(0,0,0,.12) 19px 20px),
    repeating-linear-gradient(0deg, #272a20 0 2px, #1d2019 2px 5px);
}
body::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 49;
  pointer-events: none;
  opacity: .17;
  background:
    repeating-linear-gradient(83deg, transparent 0 73px, #0b0c09 74px 75px, transparent 76px 131px),
    repeating-linear-gradient(0deg, transparent 0 11px, rgba(209,196,155,.18) 12px, transparent 13px 29px);
  image-rendering: pixelated;
}
.scanlines {
  opacity: .12;
  background: repeating-linear-gradient(0deg, transparent 0 2px, rgba(10,11,8,.8) 3px 4px);
}

.app-shell {
  border-color: #b7ab87;
  outline: 4px solid #090a07;
  background: #171812;
  box-shadow: 7px 0 #080906, -4px 0 #34362a, 11px 11px 0 #080906;
}
.topbar {
  background-color: #c9bb92;
  background-image:
    repeating-linear-gradient(0deg, transparent 0 7px, rgba(23,24,18,.08) 7px 8px),
    repeating-linear-gradient(93deg, transparent 0 47px, rgba(23,24,18,.05) 48px 49px);
  border-bottom-color: #171812;
}
.topbar::before { box-shadow: 3px 3px 0 #6f684f; }
.topbar h1 { text-shadow: 1px 0 #756e55; }
.status-cluster > div,
.status-cluster > button {
  background-color: #171812;
  background-image: repeating-linear-gradient(0deg, transparent 0 4px, rgba(209,196,155,.07) 4px 5px);
  box-shadow: 2px 2px 0 #766f57;
}
.directive-bar {
  background-color: #171812;
  background-image: repeating-linear-gradient(90deg, transparent 0 31px, rgba(209,196,155,.08) 31px 32px);
}
.operations-bar,
.inspector-status {
  background-color: #171812;
  background-image: repeating-linear-gradient(0deg, transparent 0 6px, rgba(209,196,155,.055) 6px 7px);
}

.panel {
  border-color: #cfc39a;
  background-color: #171812;
  background-image:
    repeating-linear-gradient(0deg, transparent 0 5px, rgba(209,196,155,.045) 5px 6px);
  box-shadow: 3px 3px 0 #080906, -1px -1px 0 #736b53;
}
.panel-heading {
  background-color: #cfc39a;
  background-image: repeating-linear-gradient(90deg, transparent 0 43px, rgba(23,24,18,.09) 43px 44px);
}
.profile-panel,
.evidence-panel { filter: saturate(.82) contrast(1.04); }
.profile-panel { transform: rotate(-.16deg) translateY(1px); }
.evidence-panel { transform: rotate(.13deg) translateY(2px); }
.portrait {
  background-color: #c9bd95;
  background-image:
    repeating-linear-gradient(0deg, transparent 0 3px, rgba(23,24,18,.12) 3px 4px),
    repeating-linear-gradient(90deg, transparent 0 5px, rgba(23,24,18,.055) 5px 6px);
  filter: sepia(.18) contrast(1.18);
}
#portraitCanvas { filter: contrast(1.22) sepia(.18); }
.profile-data,
.manual-panel,
.evidence-log,
.evidence-workspace,
.briefing-card,
.news-card,
.modal-card {
  background-color: #c8ba90;
  background-image:
    repeating-linear-gradient(0deg, transparent 0 17px, rgba(23,24,18,.075) 17px 18px),
    repeating-linear-gradient(91deg, transparent 0 61px, rgba(126,48,40,.045) 61px 62px);
}
.profile-data { box-shadow: 3px 3px 0 #716a53; }
.manual-panel { box-shadow: 4px 3px 0 #6d664f; transform: rotate(-.11deg); }
.evidence-log { transform: rotate(.12deg); }
.security-rule:nth-child(2n) { transform: translateX(1px); }

.terminal-panel {
  background-color: #11130e;
  background-image:
    repeating-linear-gradient(0deg, transparent 0 3px, rgba(209,196,155,.055) 3px 4px);
  box-shadow: 5px 5px 0 #050603;
}
.chat-log {
  background-color: #10120d;
  background-image:
    repeating-linear-gradient(0deg, transparent 0 3px, rgba(209,196,155,.065) 3px 4px),
    repeating-linear-gradient(90deg, transparent 0 127px, rgba(209,196,155,.025) 127px 128px);
}
.message { box-shadow: 4px 4px 0 #050603; }
.message.applicant { transform: translateX(-2px); }
.message.system { transform: rotate(-.12deg); }
.question-button,
.test-button,
.decision {
  background-color: #171812;
  background-image: repeating-linear-gradient(0deg, transparent 0 5px, rgba(209,196,155,.07) 5px 6px);
  box-shadow: 3px 3px 0 #080906;
}
.question-button:nth-child(2n),
.test-button:nth-child(2n) { transform: translateY(1px); }

.evidence-workspace { padding: 8px; }
.evidence-workspace-heading { margin-bottom: 6px; }
.evidence-step {
  position: relative;
  margin-top: 5px;
  padding: 5px 5px 6px 11px;
  border-left: 4px solid #756d54;
  background: rgba(23,24,18,.045);
}
.evidence-step-label {
  display: grid;
  grid-template-columns: 24px 1fr auto;
  align-items: center;
  min-height: 22px;
  color: var(--ink);
  font: 900 8px/1 Consolas, "Malgun Gothic", monospace;
  letter-spacing: .06em;
}
.evidence-step-label b {
  display: grid;
  place-items: center;
  width: 19px;
  height: 19px;
  color: var(--cream);
  background: var(--ink);
  font-size: 9px;
}
.evidence-step-label em {
  padding: 2px 4px;
  border: 1px solid currentColor;
  font-style: normal;
  letter-spacing: 0;
}
.evidence-step.step-locked { opacity: .48; border-left-style: dotted; }
.evidence-step.step-active {
  border-left-color: var(--stamp);
  background: repeating-linear-gradient(-7deg, transparent 0 8px, rgba(126,48,40,.1) 8px 9px);
}
.evidence-step.step-active .evidence-step-label em {
  color: var(--cream);
  border-color: var(--stamp);
  background: var(--stamp);
}
.evidence-step.step-complete { border-left-color: var(--ink); }
.evidence-step.step-complete .evidence-step-label b::after {
  content: "✓";
  position: absolute;
  margin: 0 0 15px 17px;
  color: var(--stamp);
  font-size: 15px;
  transform: rotate(-9deg);
}
.selected-evidence-summary { margin-bottom: 0; background: rgba(209,196,155,.24); }
.relation-buttons { margin-top: 5px; }
.relation-buttons button,
.basis-axis button {
  box-shadow: 2px 2px 0 #726a52;
}
.relation-buttons button:active:not(:disabled),
.basis-axis button:active:not(:disabled) {
  transform: translate(2px,2px);
  box-shadow: none;
}
.basis-axis {
  grid-template-columns: 1fr 1fr;
  margin: 4px 0 0;
  padding: 0;
  border: 0;
}
.basis-axis button:disabled { opacity: .28; }
.basis-entry { position: relative; padding-right: 62px; }
.basis-entry.valid::after {
  content: "승인";
  position: absolute;
  right: 5px;
  top: 50%;
  padding: 2px 7px;
  color: var(--stamp);
  border: 2px solid var(--stamp);
  font: 900 9px/1 "Malgun Gothic", sans-serif;
  transform: translateY(-50%) rotate(-4deg);
}
.basis-entry.invalid::after {
  content: "기각";
  float: right;
  color: var(--stamp);
  font-weight: 900;
}
.decision-gate-reason { border: 2px solid var(--ink); }
.decision-gate-reason.ready {
  color: #d8caa0;
  border-color: var(--stamp);
  background: var(--stamp);
}
.decision-panel.decision-revealed { animation: decisionStamp .75s steps(3,end); }
@keyframes decisionStamp {
  0% { transform: translateY(100%); }
  55% { transform: translateY(-4px); }
  100% { transform: translateY(0); }
}

@media (max-width: 700px) {
  body::before { opacity: .1; }
  .profile-panel,
  .evidence-panel { transform: none; }
  .evidence-step { padding: 7px 6px 8px 11px; }
  .evidence-step-label { min-height: 27px; font-size: 10px; }
  .evidence-step-label b { width: 23px; height: 23px; }
  .relation-buttons { grid-template-columns: 1fr; }
  .relation-buttons button { min-height: 48px; font-size: 12px; text-align: left; padding-left: 12px; }
  .basis-axis button { font-size: 11px; }
}

/* Scene mode 28 — the interface becomes a physical inspection booth */
.inspection-scene {
  position: relative;
  flex: 0 0 214px;
  overflow: hidden;
  border-bottom: 4px solid #0a0b08;
  background: #29291e url("assets/inspection-booth-v1.png") center 43% / cover no-repeat;
  image-rendering: pixelated;
  box-shadow: inset 0 0 0 3px #625d48, inset 0 -8px #181913;
}
.inspection-scene::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 4;
  pointer-events: none;
  background:
    repeating-linear-gradient(0deg, transparent 0 3px, rgba(8,9,6,.24) 3px 4px),
    linear-gradient(90deg, rgba(8,9,6,.2), transparent 25% 75%, rgba(8,9,6,.2));
}
.inspection-feed-label {
  position: absolute;
  z-index: 7;
  top: 8px;
  left: 9px;
  padding: 3px 6px;
  color: #c8ba90;
  border: 2px solid #6d674f;
  background: #14150f;
  font: 900 7px/1 Consolas, monospace;
  letter-spacing: .08em;
}
.booth-portrait {
  position: absolute;
  z-index: 2;
  left: 50%;
  top: 26px;
  width: 142px;
  height: 136px;
  overflow: hidden;
  transform: translateX(-50%);
  filter: sepia(.45) hue-rotate(112deg) saturate(.7) contrast(1.35) brightness(.76);
}
.booth-portrait::after {
  content: "";
  position: absolute;
  inset: 0;
  border-bottom: 9px solid #1b1d16;
  background: linear-gradient(90deg, rgba(15,17,13,.72), transparent 18% 82%, rgba(15,17,13,.72));
  pointer-events: none;
}
#boothPortraitCanvas {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  image-rendering: pixelated;
  image-rendering: crisp-edges;
  mix-blend-mode: screen;
}
.booth-speech {
  position: absolute;
  z-index: 8;
  left: 16px;
  bottom: 13px;
  width: min(56%, 390px);
  padding: 7px 9px;
  color: #171812;
  border: 3px solid #171812;
  background: #d4c9a4;
  box-shadow: 4px 4px 0 #0a0b08;
}
.booth-speech::after {
  content: "";
  position: absolute;
  right: -13px;
  bottom: 7px;
  width: 16px;
  height: 16px;
  border-right: 3px solid #171812;
  border-bottom: 3px solid #171812;
  background: #d4c9a4;
  transform: rotate(-45deg);
}
.booth-speech small {
  display: block;
  overflow: hidden;
  margin-bottom: 3px;
  color: #71362f;
  font-size: 8px;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.booth-speech p {
  display: -webkit-box;
  overflow: hidden;
  min-height: 28px;
  margin: 0;
  font: 900 11px/1.3 Consolas, "Malgun Gothic", monospace;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.counter-pass-slot {
  position: absolute;
  z-index: 6;
  right: 16px;
  bottom: 13px;
  width: 102px;
  height: 24px;
  border: 3px solid #171812;
  background: repeating-linear-gradient(90deg, #68634b 0 5px, #2c2e23 5px 8px);
  box-shadow: 3px 3px 0 #0b0c09;
}
.counter-pass-slot::before {
  content: "DOCUMENT SLOT";
  position: absolute;
  left: 5px;
  top: -13px;
  color: #b6ab87;
  font: 900 6px/1 Consolas, monospace;
}

@media (min-width: 1101px) {
  .work-screen {
    grid-template-rows: auto auto minmax(650px, calc(100vh - 365px)) 122px;
    perspective: 1200px;
  }
  .profile-panel {
    margin: 12px -9px 9px 6px;
    transform: rotate(-.42deg) translateZ(18px);
    box-shadow: 7px 9px 0 #090a07;
  }
  .terminal-panel {
    margin: 1px 0;
    transform: translateZ(0);
  }
  .evidence-panel {
    margin: 18px 6px 7px -12px;
    transform: rotate(.38deg) translateZ(26px);
    box-shadow: -5px 9px 0 #090a07;
  }
}

.decision-panel {
  min-height: 112px;
  align-items: flex-end;
  background:
    repeating-linear-gradient(90deg, transparent 0 37px, rgba(209,196,155,.045) 37px 38px),
    #202219;
}
.decision-buttons {
  align-items: flex-end;
  gap: 12px;
  padding-top: 33px;
}
.decision {
  min-width: 150px;
  min-height: 62px;
  padding: 26px 10px 8px;
  color: #d9cda6 !important;
  border: 4px solid #171812;
  background: #544f3e;
  box-shadow: inset 0 5px rgba(255,255,255,.08), 0 6px 0 #11120d, 0 8px 0 #080906;
  font: 900 13px/1 Consolas, "Malgun Gothic", monospace;
  text-align: center;
  text-shadow: 2px 2px #171812;
}
.decision::before {
  content: "";
  position: absolute;
  left: 50%;
  top: -36px;
  width: 48px;
  height: 43px;
  border: 4px solid #171812;
  border-radius: 48% 48% 12% 12%;
  background:
    linear-gradient(90deg, rgba(255,255,255,.12), transparent 32% 70%, rgba(0,0,0,.22)),
    #686254;
  box-shadow: inset 0 6px #827b69, 0 5px #10110d;
  transform: translateX(-50%);
}
.decision::after {
  position: absolute;
  inset: auto 4px 5px;
  padding: 4px;
  border: 2px solid currentColor;
  background: rgba(23,24,18,.25);
  letter-spacing: .12em;
}
.decision.approve {
  color: #d4eca4 !important;
  border-color: #263410;
  background: #58731d;
}
.decision.approve::after { content: "APPROVE"; }
.decision.quarantine {
  color: #f0d592 !important;
  border-color: #4e3814;
  border-style: solid;
  background: #8a6925;
}
.decision.quarantine::after { content: "HOLD"; }
.decision.delete {
  color: #ffb4a1 !important;
  border-color: #3a100d;
  background: #8e251e;
}
.decision.delete::after { content: "DENY"; }
.decision:hover:not(:disabled) {
  color: #fff4cf !important;
  filter: brightness(1.12);
  transform: translateY(-2px);
}
.decision:active:not(:disabled) {
  transform: translateY(5px);
  box-shadow: inset 0 5px rgba(255,255,255,.06), 0 1px #080906;
}
.decision:active:not(:disabled)::before { top: -31px; }
.decision:disabled { filter: grayscale(.72); }

@media (max-width: 700px) {
  .inspection-scene { flex-basis: 196px; }
  .booth-portrait { top: 24px; width: 128px; height: 122px; }
  .booth-speech { left: 9px; bottom: 10px; width: calc(100% - 106px); padding: 6px 7px; }
  .booth-speech p { font-size: 10px; }
  .counter-pass-slot { right: 8px; bottom: 10px; width: 78px; }
  .decision-panel { min-height: auto; }
  .decision-buttons { gap: 4px; padding-top: 31px; }
  .decision {
    min-width: 0;
    min-height: 66px;
    padding: 27px 3px 5px;
    border-width: 3px;
    font-size: 9px;
  }
  .decision::before { top: -29px; width: 36px; height: 36px; border-width: 3px; }
  .decision::after { inset: auto 2px 4px; padding: 3px 1px; font-size: 8px; }
}

/* Evidence desk 29 — prevent accumulated case material from being clipped */
.evidence-desk-jump {
  min-height: 22px;
  margin-left: auto;
  padding: 3px 7px;
  color: var(--cream);
  border: 2px solid var(--cream);
  background: var(--ink);
  box-shadow: 2px 2px 0 rgba(23,24,18,.45);
  font: 900 8px/1 "Malgun Gothic", Consolas, monospace;
  cursor: pointer;
}
.evidence-desk-jump:hover,
.evidence-desk-jump:focus-visible {
  color: var(--ink);
  background: var(--cream);
}
.evidence-panel > .panel-heading #ruleCount { margin-left: 6px; }
#evidenceWorkspaceTitle { scroll-margin-top: 38px; }

@media (min-width: 1101px) {
  .work-screen {
    grid-template-columns: 250px minmax(480px, 1fr) minmax(365px, 400px);
  }
  .evidence-panel {
    display: flex;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
    scroll-behavior: smooth;
  }
  .evidence-panel > * { flex: 0 0 auto; }
  .evidence-panel > .panel-heading {
    position: sticky;
    top: 0;
    z-index: 30;
    box-shadow: 0 4px 0 rgba(23,24,18,.55);
  }
  .evidence-panel .confidence-block { margin-top: 4px; }
  .evidence-panel .evidence-workspace {
    min-height: 258px;
    padding-bottom: 10px;
  }
  .evidence-panel::-webkit-scrollbar { width: 12px; }
  .evidence-panel::-webkit-scrollbar-track {
    border-left: 2px solid var(--ink);
    background: #837a5e;
  }
  .evidence-panel::-webkit-scrollbar-thumb {
    border: 3px solid #837a5e;
    background: var(--ink);
  }
}

@media (min-width: 1101px) and (max-height: 900px) {
  .security-rules { max-height: 96px; }
  .manual-title { padding-block: 5px; }
  .test-list { gap: 2px; }
  .test-button { min-height: 43px; }
  .evidence-log { max-height: 126px; }
}

@media (max-width: 1100px) {
  .evidence-desk-jump { min-height: 36px; }
}

/* Mobile work trays 30 — one physical surface at a time */
.mobile-workspace-nav { display: none; }

@media (max-width: 700px) {
  .mobile-workspace-nav {
    position: sticky;
    top: 0;
    z-index: 36;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 3px;
    padding: 4px;
    border: 2px solid var(--cream);
    background:
      repeating-linear-gradient(0deg, transparent 0 4px, rgba(209,196,155,.06) 4px 5px),
      var(--ink);
    box-shadow: 0 5px 0 rgba(8,9,6,.75);
  }
  .mobile-workspace-nav button {
    display: grid;
    grid-template-columns: 22px 1fr;
    align-items: center;
    min-width: 0;
    min-height: 48px;
    padding: 4px;
    color: var(--cream);
    border: 2px solid #746d55;
    background: #24261d;
    font: 900 10px/1.15 "Malgun Gothic", Consolas, monospace;
    text-align: left;
  }
  .mobile-workspace-nav button b {
    display: grid;
    place-items: center;
    width: 19px;
    height: 22px;
    color: var(--ink);
    background: #827a5e;
    font: 900 8px/1 Consolas, monospace;
  }
  .mobile-workspace-nav button span {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
  }
  .mobile-workspace-nav button.active {
    color: var(--ink);
    border-color: var(--cream);
    background: var(--cream);
    box-shadow: inset 0 -4px var(--stamp);
  }
  .mobile-workspace-nav button.active b {
    color: var(--cream);
    background: var(--stamp);
  }

  .work-screen[data-mobile-view="terminal"] > .profile-panel,
  .work-screen[data-mobile-view="terminal"] > .evidence-panel,
  .work-screen[data-mobile-view="profile"] > .terminal-panel,
  .work-screen[data-mobile-view="profile"] > .evidence-panel,
  .work-screen[data-mobile-view="evidence"] > .profile-panel,
  .work-screen[data-mobile-view="evidence"] > .terminal-panel {
    display: none;
  }

  .work-screen[data-mobile-view="terminal"] > .terminal-panel,
  .work-screen[data-mobile-view="profile"] > .profile-panel,
  .work-screen[data-mobile-view="evidence"] > .evidence-panel {
    display: flex;
    min-height: 0;
  }

  .terminal-panel .chat-log {
    flex: 0 0 auto;
    min-height: 280px;
    height: 42vh;
    max-height: 360px;
    overflow-y: auto;
    overscroll-behavior: contain;
  }
  .profile-panel {
    flex-direction: column;
    max-height: calc(100dvh - 245px);
    overflow-y: auto;
    overscroll-behavior: contain;
  }
  .evidence-panel {
    max-height: calc(100dvh - 225px);
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
  }
  .evidence-panel > * { flex: 0 0 auto; }
  .evidence-panel > .panel-heading {
    position: sticky;
    top: 0;
    z-index: 30;
    box-shadow: 0 4px 0 rgba(23,24,18,.55);
  }
  .evidence-panel .confidence-block { margin-top: 4px; }
  .evidence-panel .evidence-workspace { min-height: 390px; }
  #evidenceWorkspaceTitle { scroll-margin-top: 42px; }

  .decision-panel:not(.mobile-collapsed) {
    align-items: stretch;
    max-height: 62vh;
    overflow-y: auto;
    overscroll-behavior: contain;
  }
  .decision-buttons {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 7px;
    row-gap: 39px;
    padding: 31px 3px 4px;
  }
  .decision {
    min-height: 68px;
    padding: 24px 4px 5px;
    font-size: 0;
  }
  .decision::after {
    inset: auto 3px 5px;
    padding: 5px 2px;
    font: 900 11px/1.05 "Malgun Gothic", Consolas, monospace;
    letter-spacing: 0;
  }
  .decision.approve::after { content: "인간 승인"; }
  .decision.quarantine::after { content: "판정 보류"; }
  .decision.delete {
    grid-column: 1 / -1;
    width: 100%;
  }
  .decision.delete::after { content: "자동화 개체 삭제"; }
}

/* Evidence desk 33 — readable case board with assisted comparison */
.evidence-section-label { align-items:end;margin-top:5px;padding:7px 12px 5px;border-top:2px solid #5d5a48;letter-spacing:.05em; }
.evidence-section-label span { color:#d8cba2;font-size:9px; }
.evidence-section-label small { max-width:62%;color:#aaa184;text-align:right;line-height:1.3; }
.collected-label { margin-top:2px;border-top:4px double #5d5a48; }
.evidence-log::before { content:"EVIDENCE FILE // 두 기록을 선택"; }
.evidence-log { max-height:210px;padding:9px; }
.evidence-token { grid-template-columns:48px minmax(84px,.62fr) minmax(0,1fr);gap:5px 7px;min-height:58px;margin-top:6px;padding:8px 7px 8px 12px; }
.evidence-token .evidence-summary { display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-weight:700; }
.evidence-token .evidence-clue { grid-column:2/-1;justify-self:start;padding:2px 5px;color:var(--stamp);border:1px solid currentColor;font:900 8px/1.1 "Malgun Gothic",Consolas,monospace;font-style:normal;letter-spacing:.02em; }
.evidence-token .evidence-full { display:none;grid-column:1/-1;padding:7px 8px;border-top:1px dashed var(--ink);background:rgba(255,255,255,.13);line-height:1.55; }
.evidence-token.selected .evidence-summary { -webkit-line-clamp:3; }
.evidence-token.selected .evidence-full { display:block;max-height:76px;overflow:auto;overscroll-behavior:contain; }
.evidence-token.selected::after { content:"선택됨 · 원문 펼침"; }
.selected-evidence-summary { display:grid;gap:5px; }
.selected-evidence-line { display:grid;grid-template-columns:23px minmax(0,1fr);gap:6px;align-items:start; }
.selected-evidence-line b { display:grid;place-items:center;width:21px;height:21px;color:var(--cream);background:var(--ink);font:900 10px/1 Consolas,monospace; }
.selected-evidence-line i { font-style:normal; }
.selected-evidence-waiting { padding-left:29px;color:var(--stamp);font-weight:900; }
.relation-recommendation { min-height:41px;margin:6px 0;padding:7px 8px 7px 24px;color:var(--ink);border:1px dashed var(--ink);background:rgba(209,196,155,.35);font:800 12px/1.45 "Malgun Gothic",Consolas,monospace; }
.relation-recommendation::before { content:"?";float:left;margin-left:-18px;padding:1px 4px;color:var(--cream);background:var(--ink); }
.relation-recommendation.no-relation { color:var(--stamp);border-color:var(--stamp); }
.relation-recommendation.no-relation::before { content:"!";background:var(--stamp); }
.relation-buttons { grid-template-columns:1fr;gap:6px; }
.relation-buttons button { position:relative;display:grid;grid-template-columns:58px 1fr;align-items:center;min-height:50px;padding:7px 8px;text-align:left; }
.relation-buttons button b { font:900 12px/1 "Malgun Gothic",Consolas,monospace; }
.relation-buttons button span { font:700 10px/1.3 "Malgun Gothic",Consolas,monospace; }
.relation-buttons button.recommended { color:var(--cream);border-color:var(--stamp);background:var(--stamp);outline:2px solid var(--stamp);outline-offset:2px; }
.relation-buttons button.recommended::after { content:"분석 권고";position:absolute;right:5px;top:-8px;padding:2px 5px;color:var(--stamp);border:1px solid var(--stamp);background:var(--paper);font:900 8px/1 "Malgun Gothic",Consolas,monospace;transform:rotate(-2deg); }
.basis-entry.invalid { text-decoration:none;opacity:1; }
.basis-entry.invalid::before { content:"다음 시도: ";font-weight:900; }

@media (min-width:701px) {
  .evidence-log { max-height:190px; }
  .relation-recommendation { min-height:34px;font-size:9px; }
  .relation-buttons { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .relation-buttons button { grid-template-columns:1fr;min-height:47px;padding:6px;text-align:center; }
  .relation-buttons button b { font-size:10px; }
  .relation-buttons button span { margin-top:3px;font-size:7px; }
}

@media (prefers-reduced-motion:reduce) {
  .relation-buttons button.recommended { transition:none; }
}
