/* Edge-to-edge sample. The stage and reading surface reflow without remounting. */
body.heist-preview{--h-ink:#efeadc;--h-dim:#b7b7a5;--h-paper:#20271f;--h-edge:#89917a38;--h-olive:#20271f;--h-texture:url('/the-beige-job/media/9b087afa146eb7c6ce7c2dbe.webp');--h-scene:url('');color-scheme:dark;font-family:'Segoe UI',system-ui,sans-serif;color:var(--h-ink);background:#20271f;display:block;margin:0;padding:0;width:100%;height:100dvh;min-height:0;overflow:hidden}
.h-phone,.h-phone *,.art-viewer,.art-viewer *{box-sizing:border-box}
.h-phone{display:grid;grid-template-columns:minmax(0,1fr) clamp(430px,39vw,660px);grid-template-rows:76px minmax(0,1fr);width:100%;max-width:none;height:100dvh;min-height:0;margin:0;padding:0;border:0;border-radius:0;box-shadow:none;overflow:hidden;background:#20271f}
.h-phone button,.art-viewer button{font:inherit;cursor:pointer;touch-action:manipulation;color:inherit}.h-phone button:focus-visible,.h-phone summary:focus-visible,.h-phone a:focus-visible,.art-viewer button:focus-visible{outline:2px solid #dfbd7a;outline-offset:3px}.h-phone button:disabled{opacity:.4;cursor:default}
.h-header{grid-column:1/-1;display:flex;align-items:center;gap:20px;min-width:0;padding:10px max(30px,env(safe-area-inset-right)) 10px max(28px,env(safe-area-inset-left));padding-top:max(10px,env(safe-area-inset-top));border-bottom:1px solid #89917a38;background:#1d241c;color:#efeadc;z-index:10}
.h-menu{display:grid;place-items:center;width:36px;min-height:44px;padding:0;border:0;background:none;flex:none;color:#c6c9b9!important}.h-menu:hover{color:#fff!important}.h-brand{min-width:0}.h-brand strong{display:block;font:400 25px/1.1 'Palatino Linotype','Book Antiqua',Georgia,serif;letter-spacing:-.65px;white-space:nowrap}.h-brand>span{display:block;margin-top:4px;font-size:10px;letter-spacing:.025em;color:#b7b7a5}.h-header-place{margin-left:auto;font:italic 13px Georgia,serif;color:#b7b7a5}
.h-sound{position:relative;flex:none;margin-left:18px}.h-sound summary{list-style:none;cursor:pointer;display:flex;align-items:center;min-height:44px;font-size:12px;padding:0 3px;color:#d8d7c8}.h-sound summary::-webkit-details-marker{display:none}.h-sound[hidden]{display:none}.h-audio-panel{position:absolute;right:0;top:100%;width:270px;padding:12px;background:#293126;border:1px solid #758268;color:#efeadc;box-shadow:0 12px 30px #13191080}.h-audio-panel>div{display:flex;align-items:center;gap:12px}.h-audio-panel button{min-height:44px;min-width:106px;font-size:12px;text-align:left;background:none;border:0;border-bottom:1px solid #65705e}.h-audio-panel input{width:118px;min-height:44px;margin:0;accent-color:#dfbd7a}
.h-stage{grid-column:1;grid-row:2;position:relative;isolation:isolate;min-width:0;min-height:0;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:clamp(25px,3.5vw,64px);background:#333c2c}
.h-stage::before{content:'';position:absolute;inset:0;z-index:-2;background:var(--h-scene) 42% 65%/cover no-repeat}
.h-stage::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#141d1b6e,transparent 30%,transparent 46%,#111a16de)}
.h-stage-top{display:flex;justify-content:space-between;gap:18px;color:#f2e9d3;font-size:11px;letter-spacing:.04em;text-shadow:0 1px 8px #101913}.h-stage-top>span:last-child{font-variant-numeric:tabular-nums;white-space:nowrap}.h-stage-copy{max-width:600px;color:#f6edd8;text-shadow:0 2px 18px #15201880}.h-stage-kicker{display:block;color:#dec79c;font-size:10px;letter-spacing:.18em;text-transform:uppercase}.h-stage-copy h2{font:400 clamp(44px,5.3vw,90px)/1.02 'Palatino Linotype','Book Antiqua',Georgia,serif;letter-spacing:-2px;margin:14px 0 18px;text-wrap:balance}.h-stage-copy p{font:15px/1.6 Georgia,serif;color:#d6d5bf;margin:0;max-width:42ch}
.h-app{grid-column:2;grid-row:2;position:relative;display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden;background:#20271f;border-left:1px solid #89917a38}.h-app::after{content:'';position:absolute;inset:0;pointer-events:none;background:var(--h-texture) repeat;background-size:500px;mix-blend-mode:soft-light;opacity:.045;z-index:6}
.welcome{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;padding:clamp(32px,3.5vw,68px) clamp(28px,3.4vw,60px) max(25px,env(safe-area-inset-bottom));scrollbar-width:thin}.eyebrow{font-size:10px;letter-spacing:.06em;color:#b7b7a5}.welcome h1{font:400 clamp(41px,4.2vw,70px)/1.05 'Palatino Linotype','Book Antiqua',Georgia,serif;letter-spacing:-1.8px;margin:28px 0;color:#efeadc;text-wrap:balance}.welcome-intro{font:17px/1.85 Georgia,serif;max-width:41ch;color:#c3c6b5;margin:0}.h-cover-spacer{flex:1;min-height:32px}.h-cover-start{padding-top:26px;border-top:1px solid var(--h-edge)}
.h-primary{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;min-height:54px;padding:14px 18px;border:1px solid #dfbd7a;border-radius:2px;background:#d6b879;color:#24291d!important;text-align:left;font-size:14px!important;font-weight:600!important}.h-primary:hover{background:#e9cc91}.h-secondary{display:block;width:100%;min-height:44px;padding:12px 0;margin-top:5px;border:0;background:none;text-align:left;font-size:12px!important;text-decoration:underline;text-underline-offset:5px;text-decoration-color:#89917a}.h-cover-note{font-size:11px;line-height:1.85;color:#b7b7a5;margin:16px 0 0}.legacy-link{display:inline-block;color:#b7b7a5;font-size:11px;line-height:1.6;padding:9px 0;margin-top:8px;text-underline-offset:4px;text-decoration-color:#7e8873}
.toolbar{display:flex;align-items:center;gap:14px;padding:16px clamp(24px,2.5vw,44px);border-bottom:1px solid var(--h-edge);flex:none}.stage-number{font:italic 17px Georgia,serif;color:#dfbd7a;min-width:22px}.toolbar-copy{flex:1;min-width:0}.toolbar-copy strong{display:block;font:400 18px/1.2 'Palatino Linotype',Georgia,serif;color:#efeadc}.toolbar-copy small{display:block;color:#b7b7a5;font-size:10px;margin-top:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rewind-control{background:none;border:0;font-size:11px!important;min-height:44px;padding:7px 0;color:#c9cdb8!important;flex:none}
.transcript{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;overflow-anchor:none;padding:24px clamp(24px,2.5vw,44px) 30px;scrollbar-width:thin;scrollbar-color:#69735c transparent}.scene-marker{font:italic 14px/1.6 Georgia,serif;color:#b7b7a5;margin:0 0 24px;text-align:center}.message.narration{font:16px/1.85 Georgia,serif;color:#c3c6b5;margin:24px 1px 28px;max-width:55ch;overflow-wrap:anywhere}.message{display:flex;align-items:flex-end;margin:16px 0;animation:h-arrive .2s ease-out}.bubble{max-width:94%;font:15px/1.7 'Segoe UI',system-ui,sans-serif;padding:12px 16px 14px;background:#2c3528;border:1px solid #89917a27;border-radius:7px 7px 7px 1px;color:#efeadc;overflow-wrap:anywhere}.speaker{font:500 10px/1.5 'Segoe UI',sans-serif;display:block;margin-bottom:5px;letter-spacing:.03em;color:#d7d8bd}.message.vera .speaker{color:#e0bdc6}.message.dex .speaker{color:#a3caba}.message.marnie .speaker{color:#e4c589}.continuation{margin-top:-10px}.continuation .speaker{display:none}.continuation .bubble{border-top-color:transparent;border-radius:1px 5px 5px 1px}.message.you{justify-content:flex-end;margin:24px 0}.message.you .bubble{background:#3b462d;border-color:#abb58b35;border-radius:7px 7px 1px 7px}.message.you .speaker{color:#d7dbaa}.past{padding-bottom:15px;border-bottom:1px solid var(--h-edge);margin-bottom:26px}.past .message{animation:none}.earlier{text-align:center;font-size:10px;color:#b7b7a5;margin-bottom:22px}
.turn-status{display:flex;align-items:center;gap:16px;flex:none;min-height:50px;padding:7px clamp(24px,2.5vw,44px);background:#1c231b;border-top:1px solid var(--h-edge)}.turn-status>span{font-size:11px;flex:1;color:#b7b7a5}.turn-status em{font-style:normal}.dots{display:inline-flex;gap:3px;margin-right:8px;vertical-align:middle}.dots i{width:3px;height:3px;border-radius:50%;background:#c5cba9;animation:h-pulse 1.3s infinite}.dots i:nth-child(2){animation-delay:.17s}.dots i:nth-child(3){animation-delay:.34s}.turn-status[data-paused=true] .dots i{animation-play-state:paused}.text-button{background:none;border:0;min-height:36px;padding:7px 0;font-size:11px!important;color:#d0d4bf!important}.turn-status[hidden],.composer[hidden]{display:none}
.composer{flex:none;max-height:46%;overflow-y:auto;overscroll-behavior:contain;background:#e5dfcc;color:#343c2b;border-top:1px solid #d5cdb7;padding:18px clamp(24px,2.5vw,44px) max(16px,env(safe-area-inset-bottom));scrollbar-width:thin;scrollbar-color:#9d9e83 transparent}.choice-label{font:italic 18px/1.4 Georgia,serif;color:#525b42;margin:0 0 12px}.choice{display:flex;align-items:center;gap:16px;width:100%;min-height:60px;border:0;border-top:1px solid #96967a60;border-radius:0;padding:13px 0;background:none;text-align:left;font:14px/1.55 'Segoe UI',system-ui,sans-serif!important;color:#343c2b!important}.choice:last-child{border-bottom:1px solid #96967a60}.choice:hover{background:#f8f1df90}.choice:focus-visible{outline-color:#686b45!important;outline-offset:-2px!important}.number{font:italic 13px Georgia,serif;color:#5f6142;min-width:18px;flex:none}.h-choice-label{flex:1}.arrow{font:18px Georgia,serif;margin-left:auto;flex:none;color:#586246}.composer .legacy-link{color:#525b42}.completion-note{margin:35px 0 7px;border-top:1px solid var(--h-edge);padding:23px 0 0}.completion-note h2{font:400 27px/1.25 'Palatino Linotype',Georgia,serif;letter-spacing:-.4px;margin:12px 0}.completion-note p{font:15px/1.8 Georgia,serif;color:#b7b7a5;margin:0}
.story-attachment{width:min(250px,85%);margin:30px auto}.story-attachment button{display:block;width:100%;padding:6px 6px 12px;background:#e9e0cb;border:1px solid #c5baa0;border-radius:1px;color:#343c2b!important;text-align:left}.story-attachment img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}.story-attachment span{display:block;font:italic 14px/1.4 Georgia,serif;margin:10px 7px 0}.story-attachment small{display:none}.story-attachment figcaption{font:11px/1.6 Georgia,serif;color:#b7b7a5;text-align:center;margin:12px 3px 0}
.art-viewer{color:#34382f;background:#eee7d7;border:1px solid #b3a88d;border-radius:2px;width:min(850px,calc(100% - 24px));max-height:90dvh;overflow:auto;padding:21px}.art-viewer::backdrop{background:#141e16ed}.art-viewer header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:19px}.art-viewer h2{font:400 25px Georgia,serif;margin:0}.art-viewer button{min-height:44px;padding:9px 0;background:none;border:0;border-bottom:1px solid #a9a187;font-size:12px}.art-viewer>img{display:block;width:100%;max-height:62dvh;object-fit:contain}.art-viewer p{font:14px/1.8 Georgia,serif;color:#5e6550}.art-viewer #h-art-copy{white-space:pre-line}
@keyframes h-arrive{from{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}@keyframes h-pulse{0%,80%,100%{opacity:.3}40%{opacity:1}}
/* Near square: give the dialogue the larger share. */
@media(max-aspect-ratio:6/5) and (min-width:681px){.h-phone{grid-template-columns:minmax(0,38fr) minmax(0,62fr)}.h-stage{padding:28px}.h-stage-copy h2{font-size:clamp(34px,5vw,58px);letter-spacing:-1px}.h-stage-top{flex-direction:column;gap:6px}.h-stage-copy p{font-size:13px}.welcome{padding-left:32px;padding-right:32px}.h-header-place{font-size:11px}}
/* Portrait: the environment becomes a letterbox above a full-width conversation. */
@media(max-aspect-ratio:4/5),(max-width:680px){.h-phone{grid-template-columns:minmax(0,1fr);grid-template-rows:64px clamp(125px,23dvh,230px) minmax(0,1fr)}.h-header{gap:12px;padding-left:max(16px,env(safe-area-inset-left));padding-right:max(18px,env(safe-area-inset-right));padding-top:max(8px,env(safe-area-inset-top));padding-bottom:8px}.h-brand strong{font-size:23px}.h-brand>span{font-size:9px}.h-header-place{display:none}.h-sound{margin-left:auto}.h-stage{grid-column:1;grid-row:2;padding:16px 24px;justify-content:flex-end}.h-stage::before{background-position:42% 63%}.h-stage::after{background:linear-gradient(180deg,#151e1738,transparent 25%,#151e17d6)}.h-stage-top{position:absolute;top:14px;left:24px;right:24px;font-size:9px;flex-direction:row}.h-stage-copy{padding-top:30px}.h-stage-copy h2{font-size:30px;letter-spacing:-.7px;margin:0 0 4px}.h-stage-copy p{font:11px/1.5 'Segoe UI',sans-serif;max-width:none}.h-stage-kicker{display:none}.h-app{grid-column:1;grid-row:3;border-left:0;border-top:1px solid #89917a38}.welcome{padding:25px 26px 22px}.welcome .eyebrow{display:none}.welcome h1{font-size:40px;margin:0 0 16px;letter-spacing:-1.2px}.welcome-intro{font-size:15px;line-height:1.7}.h-cover-spacer{min-height:24px}.h-cover-start{padding-top:20px}.h-cover-note{font-size:10px}.toolbar{padding:8px 22px;gap:12px}.toolbar-copy strong{font-size:16px}.toolbar-copy small{font-size:9px}.transcript{padding:18px 22px 25px}.message.narration{font-size:15px;line-height:1.8}.bubble{font-size:14px;max-width:96%;padding:10px 13px 12px}.composer{max-height:49%;padding:13px 22px max(12px,env(safe-area-inset-bottom))}.choice{min-height:55px;font-size:13px!important;gap:12px;padding:12px 0}.choice-label{font-size:17px;margin-bottom:8px}.turn-status{padding-left:22px;padding-right:22px;gap:14px}.scene-marker{font-size:13px;margin-bottom:18px}}
@media(max-height:540px) and (min-aspect-ratio:1/1){.h-phone{grid-template-columns:minmax(0,42fr) minmax(0,58fr);grid-template-rows:56px minmax(0,1fr)}.h-header{padding-top:6px;padding-bottom:6px}.h-header-place{display:none}.h-sound{margin-left:auto}.h-stage{grid-column:1;grid-row:2;padding:22px}.h-stage-top{font-size:9px}.h-stage-copy h2{font-size:34px;margin:8px 0}.h-stage-copy p{font-size:11px}.h-app{grid-column:2;grid-row:2;border-top:0;border-left:1px solid #89917a38}.welcome{padding:24px}.welcome h1{font-size:38px;margin:16px 0}.welcome-intro{font-size:15px;line-height:1.6}.h-cover-spacer{min-height:22px}.toolbar{padding:4px 20px}.transcript{padding:16px 20px 22px}.composer{max-height:53%;padding:10px 20px}.choice{min-height:47px;padding:10px 0;font-size:13px!important}.choice-label{margin-bottom:8px}.turn-status{min-height:43px;padding:4px 20px}}
@media(max-width:360px){.h-brand strong{font-size:21px}.h-brand>span{font-size:8px}.h-header{gap:9px}.h-stage{padding-left:18px;padding-right:18px}.h-stage-top{left:18px;right:18px}.h-stage-copy h2{font-size:27px}.welcome h1{font-size:35px}.welcome,.transcript,.composer{padding-left:18px;padding-right:18px}.toolbar{padding-left:18px;padding-right:18px}.choice{font-size:12px!important;gap:10px}.composer{max-height:53%}.h-audio-panel{width:252px}.h-audio-panel input{width:108px}}
@media(prefers-reduced-motion:reduce){.message,.dots i{animation:none}}


/* Full-story elements retain the canonical engine's class and control contracts. */
body.full-story{--line:#89917a38;--dim:#b7b7a5;--accent:#dfbd7a;--ink:#efeadc;--panel:#20271f}
.full-story .h-stage::before{display:none}.scene-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:42% 65%;z-index:-2}
.h-stage-copy h2{overflow-wrap:anywhere}.h-stage-top>span:first-child{min-width:0}
.full-story .toolbar{min-height:62px;gap:16px}.toolbar .chapter{max-width:55%;font:italic 16px/1.4 Georgia,serif;letter-spacing:0;text-transform:none;color:#d8d6c0}.toolbar .text-button{flex:none;font-size:11px;min-height:44px}
.full-story .message.narration{display:block;text-align:left;justify-content:flex-start;padding:0;font-style:normal}
.full-story .message .bubble{background:#2c3528;border-color:#89917a27;font-family:'Segoe UI',system-ui,sans-serif}
.full-story .message.you .bubble{background:#3b462d;border-color:#abb58b35}.full-story .speaker{text-transform:none;letter-spacing:.03em;font-weight:500}
.full-story .message.gary .speaker{color:#d1dca7}.full-story .message.audio-guide .speaker{color:#cfc6e4}
.full-story .past{opacity:1}.full-story .past .scene-marker{margin-top:0}.scene-marker strong{display:block;color:#d7d8bd;font:400 15px/1.4 Georgia,serif;margin-bottom:5px}
.full-story .choice{margin:0;border-left:0;border-right:0;border-bottom:0}.full-story .choice:hover{border-color:#96967a60}
.full-story .choice-label{text-transform:none;letter-spacing:0;font-weight:400}
.full-story .welcome{justify-content:flex-start}.full-story .welcome>p:not(.fineprint){font:17px/1.85 Georgia,serif;color:#c3c6b5;max-width:41ch}
.full-story .welcome .choice{background:#d6b879;color:#24291d!important;border:1px solid #dfbd7a;border-radius:2px;min-height:54px;padding:14px 18px;margin-top:14px}
.full-story .welcome .choice .arrow{color:#343c2b}.full-story .welcome .choice:hover{background:#e9cc91}
.full-story .welcome .fineprint{font:11px/1.8 'Segoe UI',sans-serif!important;color:#b7b7a5!important;margin:24px 0 0}
.full-story .welcome .legacy-link{margin:7px 0 0;padding:7px 0}.menu-replay{margin:22px 0 0;border-color:#89917a38}.menu-replay summary{min-height:44px;color:#d0d4bf;font-size:12px}
.full-story .composer>.text-button{display:block;color:#525b42!important;min-height:44px;text-align:left}
.full-story .review{border-color:#89917a38}.review summary{min-height:44px;color:#dfbd7a}.review li{color:#b7b7a5}.review strong{color:#efeadc}
.full-story .resolution-label{font:italic 17px/1.5 Georgia,serif;color:#dfbd7a;text-align:left;margin:25px 0 10px}.sample-note{color:#b7b7a5}
.full-story .attachment-label{color:#343c2b;padding:4px 7px 0}.full-story .attachment-label small{display:none}
.full-story .art-viewer{margin:auto}.full-story .art-viewer button{border:0;border-bottom:1px solid #a9a187;border-radius:0;background:none;color:#34382f}
.full-story #art-copy{white-space:pre-line;border-top:1px solid #b3a88d;padding-top:14px}
@media(max-aspect-ratio:4/5),(max-width:680px){.full-story .h-stage-copy h2{font-size:27px;line-height:1.07;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;max-width:95%}.full-story .h-stage-copy p{display:none}.full-story .toolbar{min-height:54px;padding-top:4px;padding-bottom:4px}.toolbar .chapter{font-size:14px}.full-story .welcome>p:not(.fineprint){font-size:15px;line-height:1.7}.scene-image{object-position:42% 63%}.full-story .composer{max-height:49%}}
@media(max-height:540px) and (min-aspect-ratio:1/1){.full-story .toolbar{min-height:48px}.toolbar .chapter{font-size:14px}.full-story .h-stage-copy h2{font-size:32px;letter-spacing:-.8px}.full-story .composer{max-height:53%}}
@media(max-width:360px){.full-story .composer{max-height:53%}.toolbar .chapter{font-size:12px}.toolbar .text-button{font-size:10px!important}.full-story .h-stage-copy h2{font-size:24px}}

