/* Desktop booth: the original 570 × 320 coordinate system at two pixels per unit. */
@font-face{font-family:VT323;src:url('./assets/vt323.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
:root{--paper:#d8d5ae;--paper-light:#e4dfb9;--ink:#454437;--faded:#85826b;--wood:#342b29;--wood-dark:#211e1e;--counter:#8b9272;--red:#ad2828;--green:#667c35;--amber:#a3853b;--pixel:VT323,'Courier New',monospace;color-scheme:dark}
*{box-sizing:border-box}
html{min-height:100%;background:#171717}
body{margin:0;min-height:100svh;display:flex;align-items:center;justify-content:center;padding:12px;background:#171717;color:#a9aa98;font:18px/1.1 var(--pixel);overflow-x:hidden}
button,input,select,textarea{font:inherit;border-radius:0}
button{color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}
button:disabled{cursor:default}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:2px solid #d6c976;outline-offset:3px}
button:disabled{outline:none}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4,p,dl,dd{margin:0}
h1,h2,h3,h4,strong,b{font-weight:400}
[hidden]{display:none!important}
canvas{display:block;image-rendering:pixelated;image-rendering:crisp-edges}
kbd{display:inline-block;border:1px solid #777362;padding:1px 4px;min-width:15px;font:11px/1 var(--pixel);text-align:center}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.app-shell{display:flex;flex-direction:column;align-items:center;width:max-content;max-width:100%}
.game-frame{position:relative;display:block;flex:none;margin:0 auto;overflow:visible}
.game-stage{position:relative;width:1140px;height:640px;flex:none;overflow:hidden;transform-origin:0 0;background:#292120;box-shadow:0 0 0 2px #39322d;isolation:isolate}

/* The call button belongs to the roof, rather than a separate toolbar. */
.courtyard{position:absolute;inset:0 0 auto;width:1140px;height:206px;overflow:hidden;background:#8b8b89;z-index:1}
.courtyard #street{position:absolute;inset:0;width:1140px;height:206px;object-fit:fill}
#next-button{position:absolute;left:296px;top:130px;width:104px;height:60px;z-index:9;padding:0;border:0;background:transparent;box-shadow:none;color:#b5b4a7;text-align:center;font-size:12px;line-height:1;overflow:visible}
#next-button::before{content:'';position:absolute;left:33px;top:5px;width:35px;height:20px;background:#898a85;clip-path:polygon(0 4px,5px 4px,5px 6px,10px 6px,10px 8px,15px 8px,15px 6px,20px 6px,20px 4px,25px 4px,25px 2px,35px 2px,35px 6px,30px 6px,30px 8px,25px 8px,25px 12px,30px 12px,30px 14px,35px 14px,35px 18px,25px 18px,25px 16px,20px 16px,20px 14px,15px 14px,15px 12px,10px 12px,10px 14px,5px 14px,5px 16px,0 16px,0 12px,5px 12px,5px 8px,0 8px)}
#next-button::after{content:'';position:absolute;left:48px;top:12px;width:5px;height:17px;background:#666761;box-shadow:2px 0 #33312e}
#next-button>span{display:none}
#next-button>b{position:absolute;left:50%;top:33px;transform:translateX(-50%);padding:3px 7px;background:#292522;color:#b5b4a7;font-size:12px;white-space:nowrap;opacity:0;pointer-events:none}
#next-button:hover:not(:disabled)::before,#next-button:focus-visible::before{background:#c1c1b4}
#next-button:hover:not(:disabled)>b,#next-button:focus-visible>b,#next-button[data-state]:not([data-state='next'])>b{opacity:1}
#next-button:focus-visible{outline:2px dashed #b5b4a7;outline-offset:-2px}
#next-button:active:not(:disabled)::before,#next-button:active:not(:disabled)::after{translate:0 2px}
#next-button:disabled{background:transparent;opacity:1}

/* Booth, countertop, and instrument console. */
.workstation{position:absolute;left:0;right:0;top:206px;bottom:0;display:grid;grid-template-columns:356px 784px;height:434px;z-index:2}
.interview{position:relative;width:356px;height:434px;min-width:0;overflow:hidden;background:#342927}
.portrait-window{position:absolute;left:0;top:0;width:356px;height:212px;overflow:hidden;background:#332725;background-image:repeating-linear-gradient(0deg,#332725 0 16px,#211d1d 16px 20px,#493632 20px 22px)}
.portrait-window canvas{position:absolute;left:50%;top:-24px;bottom:auto;width:300px;height:281px;transform:translateX(-50%);object-fit:contain}
.window-name,.window-shutter>span{display:none}
.window-shutter{display:none;position:absolute;inset:0;background:repeating-linear-gradient(0deg,#40352f 0 26px,#211d1d 26px 30px,#786956 30px 34px,#4e4238 34px 38px);box-shadow:inset 0 10px #24201e;z-index:10}
.window-shutter::before,.window-shutter::after{content:'';position:absolute;top:0;bottom:0;width:6px;background:repeating-linear-gradient(0deg,#9a8c68 0 6px,#514734 6px 12px,#26231e 12px 22px)}
.window-shutter::before{left:58px}.window-shutter::after{right:58px}
.shutter-closed .window-shutter{display:block}
.shutter-closed .dialogue{visibility:hidden}
.shutter-lever{position:absolute;right:2px;top:10px;width:18px;height:44px;padding:0;border:0;background:#5a4528;box-shadow:inset 2px 0 #8a7041;z-index:14}
.shutter-lever::before,.shutter-lever::after{content:'';position:absolute;left:5px;width:8px;height:8px;background:#a58548;clip-path:polygon(50% 0,100% 65%,65% 65%,65% 100%,35% 100%,35% 65%,0 65%)}
.shutter-lever::before{top:3px}.shutter-lever::after{bottom:3px;transform:rotate(180deg)}
.shutter-lever>span{position:absolute;left:6px;top:17px;width:6px;height:10px;background:#b69a5c;box-shadow:2px 2px #372b1e}
.shutter-closed .shutter-lever>span{top:21px}
.dialogue{position:absolute;left:8px;top:8px;max-width:320px;padding:6px 8px;background:#cfc8c5;color:#292429;box-shadow:3px 3px #251e1e;z-index:8}
.dialogue:has(p:empty){display:none}
.dialogue::after{content:'';position:absolute;left:32px;bottom:-8px;width:12px;height:8px;background:#cfc8c5;clip-path:polygon(0 0,100% 0,100% 50%,50% 50%,50% 100%,0 100%)}
.dialogue p{max-height:60px;overflow:hidden;font-size:17px;line-height:1.05}
.counter-edge{position:absolute;left:0;right:0;top:212px;height:14px;background:#909774;border-top:4px solid #b0b58c;border-bottom:4px solid #5d644b;z-index:9}
.counter-edge::before{content:'';position:absolute;left:0;top:-6px;width:40px;height:32px;background:repeating-linear-gradient(90deg,#aab385 0 4px,#677454 4px 8px);box-shadow:316px 0 #89986b}
.counter{position:absolute;left:0;right:0;top:212px;bottom:0;background:#8b9272;box-shadow:inset 0 4px #a4aa83}
.counter-documents{position:absolute;left:0;right:0;top:14px;bottom:100px;overflow:visible;z-index:6}
.counter-documents.drop-hover{background:#a2ad7a55}
.counter-paper{position:absolute;display:block;width:54px;height:72px;padding:7px 4px;border:2px solid #8d8866;background:#d3cca3;box-shadow:3px 3px #596249;color:#777458;font-size:11px;line-height:1;overflow:hidden;touch-action:none;cursor:grab;user-select:none}
.counter-paper::before{content:'';display:block;width:100%;height:7px;margin-bottom:8px;border-top:2px solid #8b896d;border-bottom:2px solid #8b896d}
.counter-paper::after{content:'';display:block;height:26px;margin-top:7px;background:repeating-linear-gradient(0deg,transparent 0 6px,#a29d7d 6px 8px)}
.counter-paper:nth-child(1){left:68px;top:18px;transform:rotate(-5deg)}
.counter-paper:nth-child(2){left:122px;top:36px;transform:rotate(3deg)}
.counter-paper:nth-child(3){left:170px;top:15px;transform:rotate(-2deg)}
.counter-paper:hover{filter:brightness(1.08)}
.counter-tray{position:absolute;left:0;right:0;bottom:0;height:100px;border-top:4px solid #b1a175;background:#6c5432;box-shadow:inset 0 3px #473a26,inset 0 -4px #493c27}
.counter-tray::before{content:'';position:absolute;left:66px;top:4px;bottom:2px;width:2px;background:repeating-linear-gradient(0deg,#9c8251 0 2px,transparent 2px 8px);box-shadow:70px 0 #826b44,150px 0 #826b44}
.counter-clock{position:absolute;left:6px;bottom:2px;width:60px;height:76px}
.clock-face{position:absolute;left:8px;top:6px;width:42px;height:42px;border:4px solid #a2874e;background:#6b542e;box-shadow:inset 2px 2px #4b3b22,2px 2px #483923;clip-path:polygon(12% 0,88% 0,100% 12%,100% 88%,88% 100%,12% 100%,0 88%,0 12%)}
.clock-face::before{content:'';position:absolute;left:17px;top:6px;width:3px;height:15px;background:#3d3524;transform:rotate(var(--hour-angle,-20deg));transform-origin:bottom center}
.clock-face::after{content:'';position:absolute;left:7px;top:19px;width:13px;height:3px;background:#3d3524;transform:rotate(var(--minute-angle,-25deg));transform-origin:right center}
.counter-clock #date-label{position:absolute;left:0;right:0;bottom:0;padding:2px 0;background:#493b26;color:#a28a52;font-size:13px;line-height:1;text-align:center;white-space:nowrap}
.bulletin-storage{position:absolute;left:80px;top:10px;width:48px;height:72px;padding:0;border:3px solid #a78e5b;background:#d2cfc5;box-shadow:inset 3px 0 #766345,3px 3px #473a26}
.bulletin-storage>span{position:absolute;inset:3px 3px 3px 5px;border-top:2px dotted #92938b;border-bottom:2px dotted #92938b;background:repeating-linear-gradient(135deg,#a7aaa1 0 4px,transparent 4px 9px);background-size:9px 100%;background-repeat:no-repeat}
.bulletin-storage[aria-expanded='true']{background:#6a5233}
.bulletin-storage[aria-expanded='true']>span{visibility:hidden}
.transcript-tool{position:absolute;left:142px;top:3px;width:76px;height:61px;padding:0;border:0;background:#c6c7ae;box-shadow:0 4px #867d57;z-index:1}
.transcript-tool::before,.transcript-tool::after{content:'';position:absolute;top:5px;bottom:4px;width:3px;background:repeating-linear-gradient(0deg,#657363 0 3px,transparent 3px 8px)}
.transcript-tool::before{left:3px}.transcript-tool::after{right:3px}
.microphone{position:absolute;left:148px;top:-4px;width:64px;height:91px;padding:0;border:0;background:transparent;z-index:3}
.microphone-grille{position:absolute;left:3px;top:0;width:58px;height:62px;border:5px solid #a88e58;border-bottom:7px solid #7e683e;background:repeating-linear-gradient(0deg,transparent 0 6px,#54452c 6px 10px),repeating-linear-gradient(90deg,#9d8350 0 7px,#655434 7px 11px);box-shadow:inset 3px 0 #6a5837,inset -3px 0 #665536;clip-path:polygon(14% 0,86% 0,100% 14%,100% 100%,0 100%,0 14%)}
.microphone-base{position:absolute;left:12px;top:62px;width:40px;height:22px;border:4px solid #8a7042;border-top:0;background:#5a462c;box-shadow:0 5px #473b25}
.microphone-base::after{content:'01';position:absolute;left:0;right:0;top:20px;color:#8a7042;font-size:14px;line-height:1;text-align:center}
.microphone>b{display:none;position:absolute;left:50%;bottom:109px;transform:translateX(-50%);color:#d8ddbc;font-size:19px;line-height:1;letter-spacing:1px;text-decoration:underline;text-underline-offset:4px;white-space:nowrap;pointer-events:none}
.can-interrogate #interrogate-button{z-index:64;cursor:pointer}
.can-interrogate #interrogate-button>b{display:block}
.can-interrogate #interrogate-button .microphone-grille{filter:brightness(1.35);outline:2px dotted #d8ddbc;outline-offset:4px}
.rulebook-tool{position:absolute;left:224px;top:14px;width:56px;height:72px;padding:0;border:0;background:transparent}
.rulebook-cover{position:absolute;inset:0;border:3px solid #aa9674;border-left:7px solid #8a775f;background:#574c50;box-shadow:3px 3px #493a2b,inset 2px 2px #887e70}
.rulebook-cover::before{content:'';position:absolute;left:14px;top:16px;width:17px;height:19px;background:#898777;clip-path:polygon(0 0,25% 15%,25% 0,75% 0,75% 15%,100% 0,100% 70%,75% 85%,60% 85%,50% 100%,40% 85%,25% 85%,0 70%)}
.rulebook-cover::after{content:'';position:absolute;left:8px;right:8px;bottom:13px;height:2px;background:#92917a;box-shadow:0 -5px #92917a}
.scale-readout{position:absolute;left:296px;top:37px;width:54px;height:28px;padding:3px 2px;border:4px solid #927746;background:#614b2d;box-shadow:inset 2px 2px #493b25;color:#b29a5e;font-size:15px;line-height:1;text-align:center}
.bulletin-storage:hover,.transcript-tool:hover,.rulebook-tool:hover{filter:brightness(1.08)}

/* The desk holds independent papers. All paper movement stops during inspection. */
.desk{position:relative;width:784px;height:434px;min-width:0;overflow:visible;background:#292020;background-image:radial-gradient(#4e3b30 1px,transparent 1px);background-size:8px 8px}
#documents{position:absolute;inset:0;width:784px;height:434px;overflow:visible;touch-action:manipulation}
.paper{position:absolute;display:block;margin:0;padding:10px 13px 8px;border:0;background:var(--paper);color:var(--ink);box-shadow:3px 0 #9d9c7a,0 3px #9d9c7a,6px 6px #1e201dcc;max-height:350px;overflow:hidden;transform:none;touch-action:none;user-select:none;cursor:grab;z-index:5}
.paper::after{content:'';position:absolute;right:0;bottom:0;width:10px;height:10px;background:#a5a27e;clip-path:polygon(100% 0,100% 100%,0 100%);pointer-events:none}
#application-paper{left:30px;top:48px;width:254px;background:#c9caa8;z-index:6}
#claim-paper{left:256px;top:98px;width:245px;z-index:7}
#reference-paper{left:490px;top:120px;width:248px;background:#d9d6b4;z-index:8}
.paper.dragging{cursor:grabbing!important;box-shadow:4px 0 #aaa47f,0 4px #aaa47f,9px 9px #191c18cf}
.paper-grip{display:flex;justify-content:space-between;align-items:center;gap:6px;padding:0 0 6px;margin-bottom:5px;border-bottom:1px solid #a6a387;color:#929077;font-size:9px;line-height:1;letter-spacing:.5px;cursor:grab;touch-action:none}
.paper.on-counter{width:54px!important;height:72px!important;padding:5px!important;box-shadow:3px 3px #596249;overflow:hidden}
.paper.on-counter>*{display:none}.paper.on-counter>.paper-grip{display:block;height:8px;overflow:hidden;font-size:0}
.application-heading{margin:7px 0 5px}.application-heading small{display:block;font-size:9px;color:#929374;letter-spacing:1px}
.application-heading h2{margin:4px 0 0;font-size:23px;line-height:1;color:#565e42}
#claimant-role{display:none}
#claim-purpose{font-size:13px;line-height:1.05;color:#7a8062;margin:5px 0 7px;max-height:28px;overflow:hidden}
.document-heading{display:flex;align-items:center;gap:7px;margin:0;color:#666750}
.document-heading>span{font-size:27px;line-height:1;flex:none;color:#8b8b68}
.document-heading h2{font-size:21px;line-height:.95;letter-spacing:.5px;overflow-wrap:break-word}
.document-heading p{font-size:8px;line-height:1.15;color:#949174;margin-top:4px;letter-spacing:.4px}
.paper-rule{height:3px;border-top:1px solid #89896a;border-bottom:1px solid #aaa788;margin:8px 0}
.document-fields,.startup-metrics{display:block;margin:0}
.evidence-field{position:relative;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.25fr);align-items:center;gap:7px;width:100%;min-height:28px;margin:0;padding:6px 0 5px;border:0;border-bottom:1px solid #aaa68a;background:none;color:#494d39;text-align:left;line-height:1;cursor:grab;box-shadow:none}
.field-label{font-size:9px;line-height:1.05;letter-spacing:.25px;overflow-wrap:anywhere;color:#79795e}
.field-value{font-size:17px;line-height:1;text-align:right;color:#4a4b39;overflow-wrap:anywhere}
#startup-metrics .evidence-field{min-height:29px;padding:5px 0}
#startup-metrics .field-label{font-size:10px}
#startup-metrics .field-value{font-size:20px;color:#4d593d}
.evidence-field:disabled{opacity:1}
.inspecting .evidence-field[aria-pressed='true']{outline:2px solid #dce1c3;outline-offset:1px;background:#eee6d6;color:#292528;box-shadow:3px 3px #231f22}
.inspecting .evidence-field[aria-pressed='true'] .field-label,.inspecting .evidence-field[aria-pressed='true'] .field-value{color:#332b36}
.document-note{font-size:13px;line-height:1.05;color:#77765d;margin:9px 0 6px;overflow-wrap:break-word}
.paper-footer{display:flex;justify-content:space-between;gap:5px;border-top:1px dotted #9f9c7e;margin-top:7px;padding-top:4px;color:#9a9678;font-size:7px;letter-spacing:.3px;line-height:1}
.file-seal{display:inline-block;border:1px solid #a59b77;padding:4px 6px;color:#aaa17b;font-size:12px;line-height:.9;margin-top:4px;letter-spacing:1px}
.file-seal small{font-size:7px;letter-spacing:1px}
#metric-scratchpad{font-size:7px;text-align:right}
#stamp-zone{position:relative;display:flex;align-items:flex-end;justify-content:center;width:100%;height:77px;margin:0 0 7px;padding:0 0 4px;border:3px dotted #b19a34;background:#ded9bd;color:#a38f2d;box-shadow:none;font-size:15px;letter-spacing:1px;cursor:grab;overflow:visible}
#stamp-zone:disabled{opacity:1}
#stamp-zone>small{display:none}
.official-stamp{position:absolute!important;inset:6px;display:flex;align-items:center;justify-content:center;border:3px solid currentColor;color:#a44c3d;box-shadow:inset 0 0 0 2px #d7d5aa,inset 0 0 0 3px currentColor;background:#d7d5aa44;font-size:24px;letter-spacing:3px;line-height:.9;transform:rotate(-6deg);pointer-events:none}
.official-stamp.offer,.official-stamp.approved{color:#5b793b}.official-stamp.pass,.official-stamp.denied{color:#a44c3d}
.booth-empty .dialogue,.booth-empty .paper:not(.auxiliary-paper),.documents-returned .paper:not(.auxiliary-paper){visibility:hidden;pointer-events:none}
.paper.arriving{animation:paper-arrive .24s steps(5,end)}
@keyframes paper-arrive{from{transform:translateY(-22px);opacity:.25}to{transform:translateY(0);opacity:1}}

/* A fixed press, with its landing position directly below the bar. */
.stamp-drawer-pull{position:absolute;right:0;top:60px;width:20px;height:90px;padding:0;border:0;background:#716c5c;box-shadow:inset 4px 0 #918977;z-index:42}
.stamp-drawer-pull>span{position:absolute;left:2px;top:28px;width:14px;height:34px;background:#3f3b32;clip-path:polygon(100% 0,100% 24%,70% 24%,70% 40%,40% 40%,40% 60%,70% 60%,70% 76%,100% 76%,100% 100%,70% 100%,70% 84%,40% 84%,40% 68%,10% 68%,10% 32%,40% 32%,40% 16%,70% 16%,70% 0)}
.stamp-drawer-pull:hover{filter:brightness(1.12)}
#stamp-rack{position:absolute;right:0;top:10px;width:560px;height:164px;padding:0;border:0;background:#615e51;box-shadow:inset 0 6px #8c8574,inset 0 -5px #88816e,0 6px #211d1b;visibility:hidden;transform:translateX(560px);transition:transform .12s steps(4,end);pointer-events:none;z-index:40}
#stamp-rack::before{content:'';position:absolute;left:0;right:0;top:52px;height:82px;background:repeating-linear-gradient(135deg,#857e6a 0 14px,#4f4b40 14px 28px);border-top:6px solid #706c5b;border-bottom:6px solid #706c5b}
.stamps-open #stamp-rack{visibility:visible;transform:translateX(0);pointer-events:auto}
.stamps-open .stamp-drawer-pull>span{transform:rotate(180deg)}
.stamp-tools{position:absolute;inset:0}
.stamp-button{position:absolute;top:40px;width:148px;height:92px;padding:0;border:0;background:none;box-shadow:0 6px #2c2821;color:#cc7765}
#pass-button{left:82px}#offer-button{left:320px}
.stamp-body{position:absolute;inset:0;display:flex;align-items:flex-end;justify-content:center;padding-bottom:7px;border:6px solid #691b1b;border-top:8px solid #ae2a27;background:#9c181d;box-shadow:inset 4px 0 #c33530,inset -5px 0 #751218,inset 0 -8px #7d171a;color:#d5645d;font-size:24px;line-height:1;letter-spacing:1px}
.approved-stamp .stamp-body{border-color:#405418;border-top-color:#5b7d20;background:#52751d;box-shadow:inset 4px 0 #719b25,inset -5px 0 #3b5716,inset 0 -8px #3b5716;color:#a3b94c}
.stamp-handle{position:absolute;left:49px;top:-40px;width:50px;height:78px;background:#45443a;box-shadow:inset 6px 0 #56574a,inset -6px 0 #33362e;z-index:3;clip-path:polygon(12% 0,88% 0,100% 12%,100% 88%,88% 100%,12% 100%,0 88%,0 12%)}
.stamp-handle i{position:absolute;left:0;top:0;width:50px;height:43px;border:6px solid #686a57;background:#8d8e77;box-shadow:inset 4px 4px #a5a58b,inset -5px -5px #777967;clip-path:polygon(24% 0,76% 0,100% 24%,100% 76%,76% 100%,24% 100%,0 76%,0 24%)}
.stamp-button:hover:not(:disabled){filter:brightness(1.08)}
.stamp-button:active:not(:disabled),.stamp-button.pressing{translate:0 28px}
.stamp-button:disabled{opacity:.75}
.stamp-alignment-label{position:absolute;left:0;right:0;bottom:0;height:22px;padding-top:4px;background:#403d34;color:#89836d;font-size:14px;line-height:1;text-align:center;letter-spacing:2px;pointer-events:none}

/* Inspection is a two-item correlation overlay, with interrogation on the mic. */
.workstation::before{content:'';position:absolute;inset:0;background:#16141566;opacity:0;z-index:50;pointer-events:none}
.workstation::after{content:'';position:absolute;inset:12px 10px 10px 12px;border:2px dotted #a52e2a;opacity:0;z-index:60;pointer-events:none}
.inspecting .workstation::before,.inspecting .workstation::after{opacity:1}
.inspecting .paper,.inspecting .paper-grip,.inspecting #stamp-zone{cursor:default}
.inspecting .evidence-field,.inspecting .scale-readout,.inspecting .counter-clock{cursor:crosshair}
.inspecting .evidence-field:hover:not(:disabled){background:#ddd8c4}
#inspection-connector{position:absolute;inset:0;width:1140px;height:434px;overflow:visible;visibility:hidden;pointer-events:none;z-index:61}
#inspection-line{fill:none;stroke:#d8ddbc;stroke-width:2;stroke-dasharray:2 3;shape-rendering:crispEdges}
#inspection-panel{position:absolute;left:580px;top:132px;right:auto;bottom:auto;width:180px;height:auto;min-height:0;max-height:none;margin:0;padding:0;border:0;background:none;box-shadow:none;visibility:hidden;pointer-events:none;text-align:center;z-index:62}
#inspection-result{color:#d8ddbc;font-size:20px;line-height:1;letter-spacing:1px;white-space:pre-line;text-shadow:2px 2px #484239}
.inspecting #inspection-connector,.inspecting #inspection-panel{visibility:visible}
.inspection-rail{display:none;position:absolute;right:60px;bottom:0;height:29px;padding:3px 14px 0 12px;background:#332323;color:#b13230;font-size:20px;line-height:1;letter-spacing:1px;z-index:63}
.inspecting .inspection-rail{display:block}
#inspect-button{position:absolute;right:0;bottom:0;width:60px;height:46px;padding:0;border:0;background:#ad2728;box-shadow:inset 0 -8px #671c1e;clip-path:polygon(50% 0,100% 65%,100% 85%,85% 100%,15% 100%,0 85%,0 65%);z-index:64}
#inspect-button::before{content:'';position:absolute;left:26px;top:12px;width:8px;height:16px;background:#efaa80}
#inspect-button::after{content:'';position:absolute;left:26px;top:32px;width:8px;height:6px;background:#efaa80}
#inspect-button:hover:not(:disabled){filter:brightness(1.12)}
#inspect-button[aria-pressed='true']{background:#ad2728;clip-path:polygon(18px 0,100% 0,100% 100%,0 100%,0 18px);box-shadow:none}
#inspect-button[aria-pressed='true']::before,#inspect-button[aria-pressed='true']::after{left:19px;top:21px;width:24px;height:6px;background:#211b1d}
#inspect-button[aria-pressed='true']::before{transform:rotate(45deg)}
#inspect-button[aria-pressed='true']::after{transform:rotate(-45deg)}
#inspect-button:disabled{opacity:.45}
#decision-receipt{position:absolute;right:80px;bottom:12px;width:285px;max-height:190px;overflow:auto;padding:10px 12px;border-top:3px dotted #aaa183;border-bottom:3px dotted #aaa183;background:#ded5b5;color:#59513b;box-shadow:4px 4px #20241bc9;font-size:14px;line-height:1.15;z-index:44}
.decision-receipt strong{display:block;color:#5e703e;font-size:16px;margin-bottom:5px}
.decision-receipt.wrong{background:#d9bea1}.decision-receipt.wrong strong{color:#914e3d}
.decision-receipt p{margin:4px 0;font-size:14px;line-height:1.15}
.decision-receipt small{display:block;font-size:11px;color:#927e5e;margin-top:6px}
.decision-receipt button{font-size:12px;line-height:1.1;padding:5px 7px;background:#bcb18b;border:1px solid #9c9068;color:#5a553e}
#pause-button{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;padding:0}
#pause-button:focus-visible{left:4px;bottom:4px;width:32px;height:28px;margin:0;clip:auto;background:#75623e;color:#c0ab73;z-index:80;font-size:23px;line-height:22px}

/* Desktop dialogs remain physical objects inside the document area. */
#modal{position:absolute;left:100px;top:5px;right:auto;bottom:auto;width:500px;height:auto;max-width:none;max-height:385px;margin:0;padding:0;overflow:auto;overscroll-behavior:contain;background:#d7d1ae;color:#484632;border:3px solid #959274;box-shadow:4px 0 #b6ac85,0 4px #b6ac85,8px 8px #1c211bb3;font-family:var(--pixel);z-index:60;scrollbar-width:thin;scrollbar-color:#9c9674 #d4cdaa}
#modal::backdrop{background:#141813a6}
#modal:not([open]){display:none}
.modal-top{position:sticky;left:0;right:0;top:0;display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:25px;padding:4px 8px;background:#666752;color:#cecaab;border-bottom:2px solid #949076;font-size:11px;line-height:1;letter-spacing:.7px;cursor:move;z-index:6;touch-action:none}
.modal-top button{flex:none;display:block;width:22px;height:18px;padding:0;background:#595b49;color:#e4dcbc;border:1px solid #8b8e73;font-size:21px;line-height:14px;cursor:pointer}
.modal-content{padding:16px 18px 18px;font-size:18px;line-height:1.2}
.modal-content h2{font-size:29px;line-height:1;letter-spacing:1px;color:#4e513a;margin:4px 0 8px;font-weight:400}
.modal-eyebrow{color:#8a8468;font-size:10px;line-height:1.1;letter-spacing:1px}
.modal-subtitle{font-size:16px;line-height:1.2;color:#868065;margin:0 0 15px}
.modal-note{margin:13px 0 0;padding:9px 11px;border-left:3px solid #969269;background:#c4c09b;color:#6d6c4e;font-size:15px;line-height:1.2}
.modal-action{display:block;width:100%;margin:14px 0 0;padding:7px 10px;border:2px solid #96906a;background:#c0bb90;box-shadow:2px 2px #a7a07a;color:#575b3e;font-size:18px;line-height:1;letter-spacing:.6px;text-align:center}
.modal-action.secondary{margin-top:8px;background:#d3cba6;color:#78704e;border-color:#aaa17b;box-shadow:none;font-size:16px;padding:6px 9px}
.modal-action:hover:not(:disabled){background:#e3d9ac;border-color:#807e57}.modal-action:active:not(:disabled){translate:1px 1px;box-shadow:1px 1px #a7a07a}
.memo-body{font-size:19px;line-height:1.3;color:#69654b;margin:13px 0;padding-top:13px;border-top:1px dashed #a8a07c}
.help-steps{display:grid;gap:13px}.help-steps h3{font-size:20px;line-height:1;color:#5c5f42;margin-bottom:4px}.help-steps p{font-size:17px;line-height:1.2;color:#787455}
.shortcut-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:15px;padding-top:12px;border-top:1px dashed #aba57e;font-size:15px;color:#777451}
.shortcut-grid kbd{font-size:12px;border-color:#9b9872;color:#676d49;margin-right:5px}
#modal[data-kind='rules'],#modal.kind-rules,#modal.rules-panel{background:#d9d8b1;border-left:12px solid #a4ab7d;box-shadow:-3px 0 #656d4b,4px 0 #b6ac85,0 4px #b6ac85,8px 8px #1c211bb3}
#modal[data-kind='rules'] .modal-content,#modal.kind-rules .modal-content{padding-left:14px}
.rulebook-spread{display:grid;grid-template-columns:105px minmax(0,1fr);gap:14px;min-height:215px}
.rulebook-spread nav,.rulebook-nav{display:flex;flex-direction:column;gap:6px;border-right:1px solid #aaa981;padding:4px 10px 4px 0}
.rulebook-spread nav button,.rulebook-nav button{padding:5px 6px;border:1px solid #b5ae84;background:#c8c59a;color:#73724d;font-size:14px;line-height:1.1;text-align:left}
.rulebook-spread nav button[aria-selected='true'],.rulebook-spread nav button.active,.rulebook-nav button[aria-pressed='true']{background:#a7ad79;color:#4d5d39;border-color:#858d60}
.rulebook-page,.rulebook-content{min-width:0;padding:3px 0;color:#6f7250;font-size:17px;line-height:1.25}
.rulebook-page h3,.rulebook-content h3{font-size:23px;line-height:1;margin-bottom:9px;color:#56633e}
.rulebook-page p,.rulebook-content p{margin:8px 0}
.rulebook-page-number,.rules-page-number{font-size:11px;color:#94916b;text-align:right;margin-top:12px}
.rules-pager,.rulebook-pager{display:flex;justify-content:space-between;gap:8px;margin-top:12px;padding-top:8px;border-top:1px solid #aaa67f}
.rules-pager button,.rulebook-pager button{padding:4px 9px;background:#c5c294;color:#60673f;border:1px solid #8d9568;font-size:15px}
.mandate-rule{display:flex;gap:11px;padding:10px 0;border-top:1px dashed #aaa880}.rule-number{font-size:22px;color:#91966a}.mandate-rule h3{font-size:19px;color:#59633e}.mandate-rule p{font-size:16px;color:#7a7b54;line-height:1.2;margin-top:4px}
#modal[data-kind='calculator'],#modal.kind-calculator{width:300px;background:#aaa68c;border-color:#74765f}
#modal[data-kind='calculator'] .modal-content{padding:12px 15px}
#modal[data-kind='calculator'] h2{font-size:24px}
#modal[data-kind='calculator'] .modal-subtitle{font-size:14px;margin-bottom:10px}
.calculator-display{width:100%;height:42px;margin:5px 0 10px;padding:5px 8px;border:3px solid #5a634d;background:#384638;box-shadow:inset 2px 2px #273225;color:#b8c59b;font:28px/1 var(--pixel);text-align:right;outline-offset:2px}
.calculator-keys{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}
.calculator-keys button{height:28px;padding:2px;border:2px solid #666b52;background:#8b9273;box-shadow:2px 2px #4f5742;color:#e1dcc0;font-size:22px;line-height:1}
.calculator-keys button:nth-child(4n){background:#6c7959;color:#d1d5b1}
.calculator-keys .calc-equals{background:#a3934d;color:#f1deb1;border-color:#7a7140}.calculator-keys .calc-clear{background:#98705c;color:#e4c3a8;border-color:#775044}
.calculator-keys button:active{translate:1px 1px;box-shadow:1px 1px #4f5742}
#calculator-error{font-size:13px;color:#8f4737}
.ledger-table{width:100%;border-collapse:collapse;font-size:15px;line-height:1.15;color:#6c684c}.ledger-table th{font-size:10px;font-weight:400;letter-spacing:.5px;text-align:left;color:#8b8465;padding:6px 3px;border-bottom:2px solid #a49d75}.ledger-table td{padding:8px 3px;border-bottom:1px dashed #b0a77f}.ledger-table .correct{color:#627345}.ledger-table .incorrect{color:#a05842}
.empty-state{padding:20px 0;font-size:19px;line-height:1.3;text-align:center;color:#8a8362}
.report-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:13px 0;margin:14px 0;border-block:1px dashed #aaa17a}.report-metrics strong{display:block;font-size:27px;line-height:1;color:#61683f}.report-metrics span{display:block;font-size:10px;line-height:1.1;color:#918566;margin-top:3px}.report-copy{font-size:18px;line-height:1.25;color:#78714f}
/* Story panels use the same worn stationery as every other desk object. */
.story-envelope{margin:9px 0 12px;padding:7px 9px;border-left:3px solid #a29a68;background:#c6c19b;color:#736d4d;font-size:16px;line-height:1.15}
.story-envelope strong{font-size:18px;color:#555c3d}.story-envelope small{font-size:12px;color:#8a805c}
.story-body{margin:12px 0;font-size:18px;line-height:1.25;color:#605e43}.story-body p{margin-bottom:10px}.story-body strong{color:#535a3b}
.story-context{margin:12px 0;padding:10px 11px;background:#c7c49d;color:#76724d;border-color:#aaa378;font-size:17px;line-height:1.2}.story-context>strong,.story-context>h3{font-size:16px;color:#636a42;margin-bottom:4px}.story-context p{margin-top:5px}
.story-options{gap:8px;margin:13px 0 4px}.story-option{padding:9px 10px;border:2px solid #a6a075;background:#ccc69e;box-shadow:2px 2px #aea57c;color:#656542}.story-option strong{font-size:20px;line-height:1;color:#535d3c}.story-option p{font-size:17px;line-height:1.15;color:#7c7651;margin:5px 0}.story-option small,.story-option .story-signal{font-size:13px;color:#96815b;line-height:1.1}
.story-option:hover:not(:disabled){background:#e1d7ab;border-color:#8f9363}.story-option:disabled{opacity:.7;background:#bfb994;border-color:#9e9874}.story-option[aria-pressed='true'],.story-option.selected{background:#b8bd89;border-color:#858e5e;box-shadow:inset 3px 0 #78884f}
.career-mini{gap:9px;margin:14px 0;padding:9px 0;border-color:#aaa27b}.career-mini span{font-size:10px;color:#8c8560}.career-mini strong{font-size:24px;color:#657145;margin-top:3px}
.story-outcome{margin:13px 0 7px;padding:10px 11px;background:#c6c69b;color:#72704b;border-top:3px solid #8c9361}.story-outcome>strong{font-size:21px;color:#5b6740;margin-bottom:6px}.story-outcome p{font-size:18px;line-height:1.25;margin-top:5px}
.impact-chips{gap:5px;margin-top:9px}.impact-chips span{font-size:12px;padding:3px 5px;background:#d5cfaa;color:#81734e;border-color:#aaa075}.impact-chips .positive{color:#667940;border-color:#9eaa72}.impact-chips .negative{color:#a16a49;border-color:#b59b72}
.chapter-label{margin:14px 0 6px;font-size:11px;color:#96906c;letter-spacing:.8px}.ending-copy{font-size:20px;line-height:1.3;color:#6a6848;margin:12px 0 15px}.ending-copy p+p{margin-top:10px}
.epilogue-list{gap:9px;margin-top:14px}.epilogue-list article{padding:10px 11px;background:#c8c49d;border-left:3px solid #9c9c69}.epilogue-list h3{font-size:20px;color:#5a6541;margin-bottom:5px}.epilogue-list p{font-size:17px;line-height:1.25;color:#7d7651}
.wire-feed{gap:9px;margin-top:13px}.wire-post{padding:10px 11px;border:1px solid #a7a77f;border-left:3px solid #919b68;background:#c8c99f;color:#6a724b}.wire-post strong{font-size:19px;color:#586542}.wire-post small{font-size:12px;color:#879164}.wire-post>span,.wire-post .wire-meta{font-size:10px;color:#929a70;margin-top:4px}.wire-post p{font-size:18px;line-height:1.25;color:#69734d;margin-top:7px}.wire-post h3{font-size:18px;color:#5a6940;margin-top:7px}.wire-post.followup{margin-left:11px;background:#d1cca2;border-left-color:#a3955e}
#modal[data-kind='wire'],#modal.kind-wire{background:#30392c;color:#b7c4a0;border-color:#677458;scrollbar-color:#718363 #30392c}
#modal[data-kind='wire'] .modal-top{background:#4b5b42;border-color:#71805c;color:#a7b88f}
#modal[data-kind='wire'] .modal-content h2{color:#b6c49b}#modal[data-kind='wire'] .modal-eyebrow,#modal[data-kind='wire'] .modal-subtitle{color:#819571}
#modal[data-kind='wire'] .wire-post{background:#34412f;border-color:#5f7452;border-left-color:#7c8c5d;color:#aab891}
#modal[data-kind='wire'] .wire-post strong,#modal[data-kind='wire'] .wire-post h3{color:#c0caa0}#modal[data-kind='wire'] .wire-post p{color:#a8b692}#modal[data-kind='wire'] .wire-post small,#modal[data-kind='wire'] .wire-post .wire-meta{color:#738c65}
#modal[data-kind='wire'] .wire-post.followup{background:#414b33;border-left-color:#9c995f}
.toast{position:fixed;left:50%;bottom:18px;transform:translateX(-50%);z-index:100;max-width:min(560px,calc(100vw - 24px));padding:10px 15px;border:2px solid #8d9371;background:#d0ccaa;color:#46513b;box-shadow:4px 4px #0e150dd9;font-size:18px;line-height:1.15;text-align:center}


.rulebook-index{display:flex;flex-direction:column;gap:5px;border-right:2px solid #b4ac83;padding-right:12px}.rulebook-index .book-emblem{font-size:32px;color:#8c9166}.rulebook-index h2{font-size:17px!important;margin:0!important}.rulebook-index small{font-size:8px;margin-bottom:7px;color:#98916d}.rulebook-index button{border:1px solid #aaa17b;background:#c8c09b;color:#71694c;padding:4px;text-align:left;font-size:11px;line-height:1.1}.rulebook-index button[aria-pressed='true']{background:#a7ad7d;color:#3e4d30;border-color:#79865d}.rulebook-page>small{font-size:10px;color:#99916c}.rulebook-spread{grid-template-columns:130px 1fr}.rulebook-page p{font-size:17px;line-height:1.2}.rulebook-pager{align-items:center;font-size:12px}.rulebook-pager button:disabled{opacity:.35}.reader-receipt{margin:15px 0;padding:12px;background:#c9bd98;color:#655539;font-size:18px;line-height:1.3}.reader-receipt p{margin:8px 0}.reader-receipt small{display:block}.reader-verdict{display:block;border:3px solid currentColor;padding:8px;color:#94503b;text-align:center;font-size:29px;letter-spacing:2px}.reader-verdict.offer{color:#61763e}.reader-verdict.diligence{color:#94762e}.reader-fields .evidence-field{padding:11px 4px}.reader-fields .field-label{font-size:15px}.reader-fields .field-value{font-size:22px}#touch-reason{display:block;width:100%;margin:8px 0;padding:8px;background:#e0d4b1;color:#504932;color-scheme:light}.touch-stamps{display:flex;gap:8px;margin:16px 0}.touch-stamps button{flex:1;border:2px solid #796f4c;background:#b0a077;color:#51482f;padding:12px 5px;font-size:19px}.touch-stamps button[aria-pressed='true']{background:#7f8c57;color:#e6dcaf;border-color:#4f6038}#stamp-validation{font-size:18px;color:#963f30;margin:10px 0}

.menu-list{display:flex;flex-direction:column;margin:15px 0 3px;border-top:1px solid #aaa07b}
.menu-list button{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;min-height:37px;margin:0;padding:9px 2px;border:0;border-bottom:1px solid #b1a783;background:none;box-shadow:none;color:#595941;font-size:20px;line-height:1;text-align:left}
.menu-list button:hover:not(:disabled){background:#c3bd96;color:#3d4932}
.menu-list button:disabled{opacity:.5}
.menu-list button small,.menu-list button kbd{font-size:13px;color:#8e8060}
.bulletin-heading{display:flex;justify-content:space-between;gap:14px;margin-bottom:16px;font-size:14px;line-height:1.2}
.bulletin-heading time{font-size:12px;text-align:right;white-space:nowrap}
#modal[data-kind='memo']{width:365px;max-height:432px;left:200px;top:12px}
#modal[data-kind='memo'] h2{font-size:23px;margin-bottom:20px}
#modal[data-kind='memo'] .story-body{font-size:17px;line-height:1.2}



/* Late-shift equipment appears only when its procedure is available. */
.security-tools{position:absolute;left:8px;right:8px;top:0;display:flex;align-items:flex-start;justify-content:center;gap:6px;z-index:66}
.security-tools button{min-height:44px;margin:0;padding:9px 11px 7px;border:3px solid #373f3c;border-top:0;background:#747b6e;box-shadow:inset 3px 0 #969f8c,inset -3px -4px #505b50,3px 3px #272a25;color:#d8d6b9;font-size:17px;line-height:1;letter-spacing:.5px;animation:security-drop .12s steps(4,end)}
.security-tools button:hover:not(:disabled){filter:brightness(1.15)}
#fingerprint-button{background:#667674;color:#d6d7bc}
#detain-button{background:#855044;box-shadow:inset 3px 0 #aa725a,inset -3px -4px #5a392f,3px 3px #272a25;color:#e0c7a6}
@keyframes security-drop{from{transform:translateY(-44px)}to{transform:translateY(0)}}
#reason-button{left:-196px;top:-6px;width:140px;height:58px;box-shadow:0 5px #292e30}
#reason-button .stamp-body{padding-bottom:8px;border:5px solid #3c535a;border-top:7px solid #8da9aa;background:#6f9097;box-shadow:inset 4px 0 #a3b8b2,inset -4px 0 #536d74,inset 0 -6px #455d65;color:#ced6c3;font-size:21px;letter-spacing:1px}
#reason-button .stamp-handle{left:47px;top:-10px;width:45px;height:26px;background:#536266;box-shadow:inset 5px 0 #6d7b78,inset -5px 0 #394a50}
#reason-button .stamp-handle i{left:0;top:0;width:45px;height:19px;border:4px solid #8da5a5;background:#b1bbb0;box-shadow:none}
.reason-impression{position:absolute;left:9px;bottom:5px;padding:2px 6px;border:2px solid #5f8990;background:#d7d5aa55;color:#5c7e86;font-size:13px;line-height:1;letter-spacing:1px;transform:rotate(-3deg);pointer-events:none}
.confiscation-drawer{display:block;position:absolute;left:8px;bottom:8px;width:122px;height:52px;padding:12px 5px 4px;border:4px solid #6c6652;border-top:7px solid #a79a77;background:#4b4940;box-shadow:inset 0 7px #272e2a,inset 3px 0 #827a60,inset -3px 0 #333e35;color:#9f9c7e;font-size:10px;line-height:1;text-align:center;letter-spacing:.5px;z-index:43}
.confiscation-drawer.required{display:block}
.confiscation-drawer::before{content:'';position:absolute;left:21px;right:21px;top:5px;height:5px;background:#171f1b;box-shadow:0 2px #8a8467}
.confiscation-drawer.drop-hover{background:#6a7656;box-shadow:inset 0 7px #34442d,inset 3px 0 #a7ad7b;color:#dfdfb6}

/* Working reference documents share the desk instead of covering it with a modal. */
.auxiliary-paper{width:365px;max-height:410px;padding:10px 13px 12px;overflow:hidden;z-index:20}
.auxiliary-paper .paper-grip{margin-bottom:10px;color:#77745b;font-size:11px;line-height:1;letter-spacing:1px}
.desk-paper-content{max-height:366px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#a59c77 #d8d1ad;font-size:17px;line-height:1.18}
.desk-paper-content h2{margin:3px 0 13px;color:#51533e;font-size:24px;line-height:1;letter-spacing:1px}
.desk-paper-content h3{margin:3px 0 12px;color:#626b49;font-size:21px;line-height:1}
.desk-paper-content p{margin:8px 0}
.rules-paper{width:520px;background:#d9d8b1;border-left:10px solid #a4ab7d;box-shadow:-3px 0 #656d4b,4px 0 #b6ac85,0 4px #b6ac85,8px 8px #1c211bb3}
.rules-paper .rulebook-spread{display:grid;grid-template-columns:130px minmax(0,1fr);gap:18px;min-height:270px}
.rules-paper .rulebook-spread>aside{padding-right:12px;border-right:2px solid #b0ac83}
.rules-paper .rulebook-spread>aside h2{font-size:22px;line-height:1.15;color:#6b744e}
.rules-paper .rulebook-spread>aside small{font-size:11px;color:#929374}
.rule-fact{position:relative;display:block;width:100%;padding:8px 0;margin:5px 0;border:0;border-bottom:1px solid #b0ad83;background:transparent;color:#555f3e;text-align:left;font-size:17px;line-height:1.18;cursor:grab}
.memo-paper{width:365px;background:#ded7bb}
.memo-paper .story-body{font-size:17px;line-height:1.2}
.transcript-paper{width:280px;background:#d4d5b7;border-top:3px solid #8f987e}
.transcript-speaker{padding-top:8px;border-top:1px dotted #a1a58a;color:#8a9176;font-size:11px;line-height:1;letter-spacing:1px}
.transcript-paper .evidence-field{display:block;padding:8px 0}
.transcript-paper .field-label{display:block;font-size:10px;margin-bottom:3px}
.transcript-paper .field-value{display:block;font-size:18px;text-align:left}
.search-paper{width:260px;background:#bdb495}
.scan-fact{position:relative;display:block;width:100%;padding:0;border:0;background:#282a24;cursor:grab}
.scan-fact canvas{width:100%;height:auto;max-height:315px;object-fit:contain;image-rendering:pixelated}
.fingerprints-paper{width:440px;background:#d7d1b7}
.fingerprint-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:12px}
.fingerprint-row button{position:relative;display:block;min-width:0;padding:7px;border:1px solid #a29e86;background:#c9c7ac;color:#737963;text-align:left;cursor:grab}
.fingerprint-row button>span{display:block;padding-bottom:6px;border-bottom:1px dotted #9a9c85;font-size:11px;line-height:1;letter-spacing:1px}
.fingerprint-row canvas{width:100%;height:auto;max-height:245px;margin-top:9px;object-fit:contain;image-rendering:pixelated}
.counter-paper-0{left:68px;top:18px;transform:rotate(-5deg)}
.counter-paper-1{left:122px;top:36px;transform:rotate(3deg)}
.counter-paper-2{left:170px;top:15px;transform:rotate(-2deg)}
#application-paper{max-height:386px;padding:8px 11px 4px}
#application-paper .paper-grip{padding-bottom:4px;margin-bottom:3px;font-size:8px}
#application-paper .application-heading{margin:4px 0 2px}
#application-paper .application-heading small{display:none}
#application-paper .application-heading h2{margin:0;font-size:20px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#application-paper #claim-purpose{display:none}
#application-paper #stamp-zone{height:72px;margin-bottom:4px}
#application-paper #startup-metrics .evidence-field{min-height:24px;padding:3px 0}
#application-paper #startup-metrics .field-label{font-size:9px}
#application-paper #startup-metrics .field-value{font-size:17px}
#application-paper .paper-footer{margin-top:2px;padding-top:2px;font-size:7px}
.inspecting [data-fact][aria-pressed='true']{position:relative;outline:0!important;box-shadow:none;background:#eee6d6;color:#332b36}
.inspecting [data-fact][aria-pressed='true']::before{content:'';position:absolute;inset:-3px;border:2px solid #e7e7cb;clip-path:polygon(0 0,12px 0,12px 100%,0 100%,0 0,calc(100% - 12px) 0,100% 0,100% 100%,calc(100% - 12px) 100%,calc(100% - 12px) 0);pointer-events:none;z-index:2}
.inspecting [data-fact][aria-pressed='true']::after{content:'';position:absolute;inset:-3px;border:2px solid #e7e7cb;clip-path:polygon(0 0,100% 0,100% 8px,0 8px,0 0,0 calc(100% - 8px),100% calc(100% - 8px),100% 100%,0 100%,0 calc(100% - 8px));pointer-events:none;z-index:2}
.inspecting #weight[aria-pressed='true']{position:absolute}
.inspecting [data-fact]{cursor:crosshair}
.inspecting .auxiliary-paper,.inspecting .rule-fact,.inspecting .scan-fact,.inspecting .fingerprint-row button{cursor:default}
.inspecting .desk-paper-content{overflow:hidden}


/* Emergency cabinets and loose keys are exposed only while an alarm is active. */
.weapon-emergency{position:absolute;inset:0;pointer-events:none;z-index:76}
.incident-yard{position:absolute;left:0;top:0;width:1140px;height:206px;pointer-events:none;image-rendering:pixelated}
.incident-alarm{position:absolute;left:298px;top:546px;display:flex;align-items:center;gap:6px;color:#d68e6c;font-size:12px;line-height:1;letter-spacing:1px}
.incident-alarm i{display:block;width:10px;height:10px;border:2px solid #732c24;background:#bd3d2d;box-shadow:0 0 0 2px #402b22;animation:incident-pulse .5s steps(2,end) infinite}
@keyframes incident-pulse{50%{background:#f2ad6d}}
.weapon-key{position:absolute;width:80px;height:46px;padding:0;border:0;background:transparent;pointer-events:auto;touch-action:none;cursor:grab;z-index:8}
.weapon-key::before{content:'';position:absolute;left:5px;top:7px;width:29px;height:29px;border:6px solid #ae8e42;background:#6d562b;clip-path:polygon(25% 0,75% 0,100% 25%,100% 75%,75% 100%,25% 100%,0 75%,0 25%)}
.weapon-key::after{content:'';position:absolute;left:32px;top:18px;width:34px;height:8px;background:#ae8e42;box-shadow:0 -2px #d2b568}
.weapon-key>span{position:absolute;left:53px;top:24px;width:7px;height:9px;background:#ae8e42;box-shadow:10px 0 #ae8e42}
.gold-key{left:105px;top:464px;transform:rotate(-14deg)}
.silver-key{left:182px;top:491px;transform:rotate(12deg)}
.silver-key::before{top:9px;height:25px;border-color:#b8bca9;background:#777b70;clip-path:none}
.silver-key::after{background:#b8bca9;box-shadow:0 -2px #dce0c9}
.silver-key>span{background:#b8bca9;box-shadow:10px 0 #b8bca9}
.weapon-key:hover{filter:brightness(1.15)}
.weapon-key.dragging{cursor:grabbing;transform:none;filter:brightness(1.2);z-index:12}
.weapon-key.held{outline:2px dotted #d8ddbc;outline-offset:1px}
.weapon-cabinet{position:absolute;right:0;width:68px;background:#6a685c;box-shadow:inset 3px 0 #93907c,inset 0 4px #827e6b,inset 0 -4px #4d4e43;pointer-events:auto;transition:width .12s steps(4,end);z-index:4;overflow:hidden}
.tranq-cabinet{top:228px;height:168px}
.rifle-cabinet{top:416px;height:130px}
.weapon-cabinet.unlocked{width:440px;background-color:#777566;background-image:radial-gradient(#4b4d41 1px,transparent 1px);background-size:6px 6px}
.weapon-tumbler{position:absolute;left:0;top:38px;width:68px;height:124px;padding:0;border:0;border-top:3px solid #a19b7e;background:#777362;box-shadow:inset 0 -4px #4b4d42;cursor:pointer;z-index:3}
.rifle-cabinet .weapon-tumbler{top:0;height:130px}
.weapon-tumbler>span{position:absolute;left:12px;top:20px;width:43px;height:43px;border:5px solid #a9a78e;background:#6d7063;box-shadow:inset 3px 2px #4e574e}
.weapon-tumbler>span::before{content:'';position:absolute;left:13px;top:3px;width:5px;height:23px;background:#303d34}
.gold-tumbler>span{border-color:#c0a65c;background:#84753d;clip-path:polygon(25% 0,75% 0,100% 25%,100% 75%,75% 100%,25% 100%,0 75%,0 25%)}
.gold-tumbler>span::after{content:'';position:absolute;left:-3px;right:-3px;top:5px;height:4px;background:#d1b363;box-shadow:0 18px #a48c48}
.silver-tumbler>span{border-color:#a7aa97;border-radius:0}
.weapon-tumbler::after{content:'';position:absolute;left:15px;right:15px;bottom:23px;height:4px;background:#3f493f;box-shadow:4px 5px #535b4d}
.weapon-tumbler.drop-hover{outline:3px dotted #e0d9ae;outline-offset:-5px;filter:brightness(1.18)}
.weapon-cabinet.unlocked .weapon-tumbler{background:#686955}
.weapon-cabinet.unlocked .weapon-tumbler>span::before{transform:rotate(90deg)}
.weapon-cabinet-label{display:none;position:absolute;left:75px;top:8px;min-width:94px;height:20px;padding:1px 5px;border:2px solid #4b4e43;background:#8b8a75;color:#454b3f;font-size:16px;line-height:1;letter-spacing:1px}
.weapon-cabinet.unlocked .weapon-cabinet-label{display:block}
.weapon-ammunition{display:none;position:absolute;left:82px;top:60px;height:67px;gap:8px;padding:6px;border:3px solid #9d9b82;background:#6c6f60}
.rifle-cabinet .weapon-ammunition{top:39px}
.weapon-cabinet.unlocked .weapon-ammunition{display:flex}
.weapon-ammunition i{display:block;width:5px;height:48px;background:#4e5548;box-shadow:1px 0 #858975}
.weapon-ammunition i.loaded{background:#272f2b;box-shadow:1px 0 #b7b7a0}
.weapon-pickup{position:absolute;left:155px;right:4px;top:33px;bottom:8px;padding:0;border:0;background:transparent;cursor:pointer}
.rifle-cabinet .weapon-pickup{top:24px}
.weapon-pickup canvas{width:100%;height:100%;object-fit:contain;image-rendering:pixelated}
.weapon-pickup:hover:not(:disabled){filter:brightness(1.3)}
.weapon-pickup:disabled{opacity:.5}
.weapon-cabinet.selected .weapon-pickup{visibility:hidden}
.weapon-reticle{position:absolute;width:58px;height:68px;transform:translate(-50%,-50%);border:3px solid #101610;box-shadow:inset 0 0 0 1px #c0c2ad;pointer-events:none;z-index:2;clip-path:polygon(7px 0,calc(100% - 7px) 0,100% 7px,100% calc(100% - 7px),calc(100% - 7px) 100%,7px 100%,0 calc(100% - 7px),0 7px)}
.weapon-reticle::before{content:'';position:absolute;left:25px;top:25px;width:3px;height:12px;background:#151c15}
.weapon-reticle::after{content:'';position:absolute;left:20px;top:30px;width:13px;height:3px;background:#151c15}
.weapon-armed .courtyard{cursor:none}
.alarm-active .window-shutter{display:block}
.alarm-active .dialogue{visibility:hidden}

@media(max-width:700px){
 body{justify-content:center;padding:8px 6px 42px}.app-shell{width:100%;gap:0}
 #pause-button{left:0;bottom:-36px;width:32px;height:28px;margin:0;clip:auto;background:#75623e;color:#c0ab73;box-shadow:1px 1px #53472e;z-index:80;font-size:23px;line-height:22px}
 #next-button{left:262px;top:110px;width:172px;height:96px}
 #next-button::before{left:67px;top:25px}#next-button::after{left:82px;top:32px}#next-button>b{top:53px}
 .stamp-drawer-pull::after{content:'';position:absolute;right:0;top:-5px;width:90px;height:101px;background:transparent}
 #modal[open],#modal[data-kind='memo'],#modal[data-kind='calculator']{position:fixed;left:12px;top:20px;right:12px;bottom:auto;width:calc(100vw - 24px);max-width:none;max-height:calc(100dvh - 40px);margin:0;transform:none;translate:none!important;z-index:100}
 #modal .modal-top{min-height:35px;font-size:12px;cursor:default}#modal .modal-top button{height:27px;width:29px;font-size:25px}
 #modal .modal-content{padding:16px;font-size:20px}#modal h2{font-size:29px}
 #modal .modal-subtitle,#modal .story-body,#modal .modal-note,#modal .document-note{font-size:20px;line-height:1.25}
 #modal .rulebook-spread{grid-template-columns:98px 1fr;gap:10px}#modal .rulebook-index{padding-right:8px}#modal .rulebook-index h2{font-size:15px!important}#modal .rulebook-index button{font-size:12px;padding:6px 3px}
 #modal .rulebook-page p{font-size:20px}#modal .rulebook-page h3{font-size:23px}
 #modal .modal-action{min-height:43px;font-size:21px}#modal .reader-fields .field-value{font-size:24px}
 #modal .evidence-field{min-height:43px;padding:8px 2px}#modal .field-label{font-size:12px;line-height:1.1}#modal .field-value{font-size:21px}
 #modal .story-option strong{font-size:22px}#modal .story-option p{font-size:19px}
 .menu-list button{min-height:45px;font-size:22px}.toast{bottom:16px;max-width:calc(100vw - 24px);font-size:18px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
