@font-face{font-family:Fredoka;src:url(./Fredoka-Variable-DM6njrJ3.woff2) format("woff2");font-style:normal;font-weight:400 700;font-display:swap}:root{--paper: #fffdf7;--ink: #2b3242;--yellow: #e2b431;--orange: #f2a03d;--green: #2f7a34;--water: #4a90d9;--red: #d9482b;--accent: var(--orange);--accent-dark: var(--ink);--panel-bg: var(--paper);--outline: .28rem solid var(--ink);--shadow: 0 .4rem 0 var(--ink);--card-ink: rgba(43, 50, 66, .86);--card-edge: rgba(255, 253, 247, .6);--card-track: rgba(255, 253, 247, .22);--card-cash: #8be495;--key-lip: 0 .6rem 0 var(--ink);--key-face: linear-gradient(180deg, #ffc072 0%, var(--orange) 45%, #dd8a27 100%);--radius: 1.2rem;--font: "Fredoka", "Nunito", system-ui, sans-serif;font-family:var(--font);font-weight:500;--su: calc(min(100vh, 100vw * 9 / 16) / 1080);font-size:clamp(7.5px,calc(var(--su) * 10),25px)}@media(orientation:portrait){:root{--su: calc(min(100vw, 100vh * 9 / 16) / 1080)}}*{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;height:100%;overflow:hidden;background:#000}html,body,#stage,#hud,.overlay{touch-action:pan-x pan-y}body{visibility:visible;display:flex;align-items:center;justify-content:center;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}#stage{position:relative;width:100vw;height:100vh;overflow:hidden;background:var(--paper);font-size:1.6rem}#game-canvas{position:absolute;inset:0;width:100%;height:100%;display:block}.hidden{display:none!important}.travel-fade{position:fixed;inset:0;background:#06080c;opacity:0;pointer-events:none;transition:opacity .45s ease;z-index:100}.travel-fade.on{opacity:1}.overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:20;background:#2b324259;backdrop-filter:blur(1px);animation:overlay-in .25s ease-out}#stage[data-input=touch] .overlay{backdrop-filter:none}@keyframes overlay-in{0%{opacity:0}to{opacity:1}}.title-card,.menu-card{position:relative;background:var(--paper);color:var(--ink);border:var(--outline);border-radius:var(--radius);padding:3.4rem 4.4rem;text-align:center;box-shadow:var(--shadow);max-width:56rem;width:min(56rem,94%);max-height:94%;overflow-y:auto}.title-card{max-width:38rem;width:min(38rem,88%);padding:2.8rem 2.6rem}.title-card h1{font-size:4.3rem;letter-spacing:.05rem;color:var(--paper);text-shadow:.25rem .3rem 0 var(--yellow);margin-bottom:.4rem;-webkit-text-stroke:.12rem var(--ink);paint-order:stroke fill}.beta-pill{display:inline-block;vertical-align:super;font-size:1.1rem;letter-spacing:.1rem;color:var(--ink);background:var(--paper);border:var(--outline);border-radius:999px;padding:.2rem .9rem;margin-left:.8rem;text-shadow:none;box-shadow:var(--shadow);transform:rotate(-4deg)}.tagline{color:var(--ink);margin-bottom:2rem;font-size:1.5rem}.menu-card h2{font-size:3.4rem;margin-bottom:1.4rem}.big-btn,.sticker-btn{font-family:inherit;font-weight:700;color:var(--paper);background:var(--orange);border:var(--outline);border-radius:1.4rem;cursor:pointer;text-shadow:none;box-shadow:var(--shadow);transition:transform .08s ease,filter .12s ease;-webkit-text-stroke:.14rem var(--ink);paint-order:stroke fill}.big-btn{display:block;width:100%;font-size:2rem;padding:1.4rem 3rem;margin:.8rem 0 1.6rem}.sticker-btn{font-size:1.4rem;letter-spacing:.1rem;padding:.8rem 1.8rem;border-radius:999px;flex-shrink:0}.big-btn.green,.sticker-btn.green{background:var(--green);border-color:var(--ink)}.big-btn:hover,.sticker-btn:hover,.mini-btn:hover{filter:none;transform:none}.big-btn:active,.sticker-btn:active,.mini-btn:active{transform:none}.sticker-btn:disabled{filter:saturate(.25) brightness(1.05);cursor:default;transform:none}.big-btn:disabled,.big-btn:disabled:hover,.big-btn:disabled:active{filter:saturate(.25) brightness(1.05);cursor:default;transform:none}.mini-btn{font-family:inherit;font-size:1.2rem;font-weight:700;color:var(--ink);background:var(--paper);border:var(--outline);border-radius:999px;padding:.4rem 1.2rem;cursor:pointer;text-shadow:none;box-shadow:var(--shadow);transition:transform .08s ease,filter .12s ease}.menu-btn{display:block;width:100%;font-size:1.6rem;font-family:inherit;color:var(--ink);background:var(--paper);border:var(--outline);border-radius:1.2rem;padding:1.1rem 2rem;cursor:pointer;margin-bottom:1rem;box-shadow:var(--shadow);transition:filter .12s ease;font-weight:500}.menu-btn:hover{filter:brightness(.97)}.menu-note{color:var(--ink);font-size:1.4rem;margin-bottom:1rem}.pause-job{font-size:1.3rem;color:var(--ink);margin-bottom:1.2rem}.save-summary{font-size:1.3rem;color:var(--ink);margin-bottom:1.4rem}.save-summary span{font-weight:700;color:var(--ink)}.menu-btn.danger{color:var(--ink);border-color:var(--ink);background:var(--paper)}.controls-details{margin-top:1rem;text-align:left}.controls-details summary{font-size:1.3rem;font-weight:700;color:var(--ink);cursor:pointer}.controls-grid{display:grid;grid-template-columns:auto 1fr;gap:.6rem 1.6rem;margin-top:1.2rem;font-size:1.4rem;text-align:left;color:var(--ink)}.controls-grid span:nth-child(odd){font-weight:700;color:var(--ink);background:var(--paper);border-radius:.6rem;padding:.1rem .8rem;justify-self:start;border:var(--outline)}.controls-grid.small{font-size:1.2rem;margin-top:2.2rem;opacity:1}.slider-row{display:grid;grid-template-columns:1fr 13rem 4.6rem;align-items:center;gap:1rem;margin:1rem 0;font-size:1.4rem;text-align:left}.slider-row input[type=range]{accent-color:var(--orange);width:100%}.complete-card{max-width:108rem;width:min(108rem,96%);padding:2.6rem 3.6rem 2.8rem}.complete-card h2{color:var(--ink);margin-bottom:.2rem}.final-property{font-size:1.7rem;color:var(--ink);margin-bottom:1.4rem}.complete-body{display:grid;grid-template-columns:62rem 1fr;gap:2.4rem;align-items:start;text-align:left}.complete-side{display:flex;flex-direction:column;min-width:0}.complete-side .big-btn,.complete-side .menu-btn{width:100%;margin:.5rem 0 0}.final-sub{font-size:1.5rem;line-height:1.35;color:var(--ink);margin-bottom:1.2rem}.final-sub b{color:var(--ink)}.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:.5rem 1.6rem;font-size:1.5rem;margin-bottom:1rem}.stats-grid span:nth-child(odd){text-align:right;color:var(--ink)}.stats-grid span:nth-child(2n){text-align:left;font-weight:700}.stats-grid .final-bonus{color:var(--ink)}.wipe{--wipe: 100%;position:relative;aspect-ratio:16 / 9;width:100%;border-radius:1.2rem;overflow:hidden;background:var(--ink);box-shadow:var(--shadow);cursor:ew-resize;user-select:none;touch-action:none;border:var(--outline)}.wipe img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}.wipe img:not([src]){visibility:hidden}.wipe-before{clip-path:inset(0 calc(100% - var(--wipe)) 0 0)}.wipe-divider{position:absolute;top:0;bottom:0;left:var(--wipe);width:.4rem;margin-left:-.2rem;background:var(--paper);box-shadow:0 0 0 .1rem var(--ink);pointer-events:none}.wipe-divider:after{content:"";position:absolute;top:50%;left:50%;width:3.2rem;height:3.2rem;margin:-1.6rem 0 0 -1.6rem;border-radius:50%;background:var(--paper);box-shadow:var(--shadow);border:var(--outline)}.wipe-tag{position:absolute;top:1rem;padding:.3rem .9rem;border-radius:1rem;font-size:1.2rem;font-weight:700;letter-spacing:.08em;text-transform:none;color:var(--ink);background:var(--paper);pointer-events:none;border:var(--outline)}.wipe-tag-before{left:1rem}.wipe-tag-after{right:1rem}#hud{position:absolute;inset:0;pointer-events:none;z-index:10;color:var(--ink)}#crosshair{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}#crosshair span{display:block;width:.6rem;height:.6rem;border-radius:50%;background:var(--paper);box-shadow:var(--shadow)}#progress-panel{position:absolute;top:1.8rem;left:1.8rem;display:grid;grid-template-columns:1fr auto;align-items:start;column-gap:1.2rem;background:var(--panel-bg);border-radius:var(--radius);padding:1.2rem 1.4rem;min-width:22rem;max-width:32rem;font-size:1.5rem;box-shadow:var(--shadow);border:var(--outline);color:var(--ink)}#job-rows{grid-area:1 / 1;min-width:0}#jobs-count{grid-area:1 / 2;pointer-events:auto;font:inherit;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:.05rem;color:var(--ink);background:var(--paper);border:var(--outline);border-radius:.9rem;padding:.6rem 1.2rem;font-size:1.7rem;cursor:pointer;transition:background .15s ease;box-shadow:var(--shadow)}#jobs-count:hover{background:var(--paper)}.job-row{padding:.2rem 0;transition:opacity .3s ease,transform .3s ease}.job-row .job-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.job-row.done .job-label:after{content:" ✓"}.job-row .row-bar{display:block;height:1rem;margin-top:.5rem;border-radius:999px;background:var(--ink);overflow:hidden;box-shadow:none}.job-row .row-fill{display:block;height:100%;width:0;border-radius:999px;background:var(--orange);transition:width .15s linear}.job-row.spotlit .row-fill{background:var(--yellow);animation:spotlit-breathe 1.6s ease-in-out infinite}.job-row.spotlit .job-label{color:var(--ink);animation:spotlit-breathe 1.6s ease-in-out infinite}@keyframes spotlit-breathe{0%,to{opacity:.7}50%{opacity:1}}.job-row.done{color:var(--ink);animation:job-done .9s ease forwards}.job-row.done .row-fill{background:var(--green);width:100%!important}@keyframes job-done{0%{transform:scale(1.04)}70%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-1.6rem)}}#checklist{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#2b324259}.checklist-card{background:var(--panel-bg);border-radius:var(--radius);padding:2rem 2.6rem;min-width:56rem;max-width:80%;max-height:90%;overflow-y:auto;box-shadow:var(--shadow);border:var(--outline);color:var(--ink)}.checklist-card h3{margin:0 0 1.2rem;color:var(--ink);letter-spacing:.1rem;font-size:1.4rem}#checklist-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:1.8rem;font-size:1.4rem}#checklist-columns h4{margin:0 0 .6rem;font-size:1.2rem;letter-spacing:.1rem;opacity:1}.check-item{padding:.2rem 0}.check-item.done{color:var(--ink);opacity:.7;text-decoration:line-through}#top-right{position:absolute;top:1.8rem;right:1.8rem;display:flex;flex-direction:column;align-items:stretch;gap:.6rem;min-width:14rem}#purse{background:var(--panel-bg);border-radius:var(--radius);padding:.8rem 1.6rem 1rem;box-shadow:var(--shadow);border:var(--outline);color:var(--ink)}#cash-counter{font-size:2.6rem;font-weight:700;font-variant-numeric:tabular-nums;text-align:right;color:var(--green);text-shadow:none}#cash-counter.bump{transform-origin:right center;animation:cash-bump .28s ease}@keyframes cash-bump{30%{transform:scale(1.08);color:var(--ink)}}#tool-bar{position:absolute;right:1.8rem;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:1.2rem;pointer-events:auto}#sack-chip{width:6.4rem;padding:.5rem 0;background:var(--panel-bg);border-radius:var(--radius);text-align:center;font-size:1.15rem;font-weight:700;letter-spacing:.04em;opacity:1;box-shadow:var(--shadow);border:var(--outline);color:var(--ink)}#sack-chip .sack-bar{display:block;margin:0 .7rem .35rem;height:.5rem;border-radius:.25rem;background:var(--ink);overflow:hidden}#sack-chip .sack-fill{display:block;height:100%;width:0;border-radius:.25rem;background:var(--water);transition:width .2s ease}#sack-chip.full{color:var(--ink);animation:sack-full .9s ease-in-out infinite alternate}#sack-chip.full .sack-fill{background:var(--yellow)}@keyframes sack-full{0%{opacity:.85}to{opacity:1;transform:scale(1.06)}}.tool-chip{position:relative;display:flex;align-items:center;justify-content:center;width:6.4rem;height:6.4rem;padding:0;background:var(--panel-bg);border:var(--outline);border-radius:50%;color:inherit;font:inherit;cursor:pointer;opacity:1;transition:opacity .15s ease,transform .15s ease,border-color .15s ease,box-shadow .15s ease;box-shadow:var(--shadow)}.tool-chip svg{display:block;width:4.8rem;height:4.8rem;filter:none}.tool-chip .tool-key{position:absolute;top:.1rem;left:.3rem;font-size:1.1rem;line-height:1.4rem;color:var(--ink);opacity:1;text-shadow:none}.tool-chip.active{border-color:var(--ink);opacity:1;transform:rotate(-4deg);box-shadow:var(--shadow);background:var(--yellow)}#interaction-prompt{position:absolute;left:50%;top:56%;transform:translate(-50%);background:var(--panel-bg);border-radius:var(--radius);padding:.8rem 1.8rem;font-size:1.6rem;font-weight:700;white-space:nowrap;animation:prompt-in .15s ease-out;border:var(--outline);color:var(--ink);box-shadow:var(--shadow)}#interaction-prompt b{color:var(--ink)}@keyframes prompt-in{0%{opacity:0;transform:translate(-50%) translateY(.6rem)}to{opacity:1;transform:translate(-50%) translateY(0)}}#tutorial-hint{position:absolute;left:50%;bottom:4rem;transform:translate(-50%);background:var(--paper);border-radius:var(--radius);padding:.6rem 1.6rem;font-size:1.4rem;white-space:nowrap;color:var(--ink);animation:prompt-in .3s ease-out;border:var(--outline);box-shadow:var(--shadow)}#banner{position:absolute;left:50%;top:26%;transform:translate(-50%) rotate(-2.5deg);background:var(--yellow);color:var(--ink);font-size:2.6rem;font-weight:700;letter-spacing:.2rem;border-radius:var(--radius);padding:1.4rem 3.8rem;white-space:nowrap;text-shadow:none;box-shadow:var(--shadow);animation:banner-in .45s cubic-bezier(.2,1.4,.4,1);border:var(--outline)}#banner.leaving{transition:opacity .4s ease,transform .4s ease;opacity:0;transform:translate(-50%) translateY(-1.6rem)}@keyframes banner-in{0%{opacity:0;transform:translate(-50%) scale(.7)}to{opacity:1;transform:translate(-50%) scale(1)}}#float-layer{position:absolute;inset:0;overflow:hidden}.float-text{position:absolute;left:52%;top:46%;font-size:1.8rem;font-weight:700;color:var(--ink);text-shadow:none;animation:float-up .9s ease-out forwards}.float-text.big{font-size:2.4rem;color:var(--ink)}@keyframes float-up{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-4.6rem)}}#xp-panel{display:flex;align-items:center;gap:.8rem;margin-top:.4rem}#xp-level{font-weight:700;font-size:1.1rem;letter-spacing:.1rem;color:var(--ink);white-space:nowrap}.xp-bar{display:block;flex:1;height:.6rem;border-radius:999px;background:var(--ink);overflow:hidden;box-shadow:none}#xp-fill{display:block;height:100%;width:0;border-radius:999px;background:var(--water);transition:width .12s linear}#xp-panel.bump{animation:xp-bump .5s ease}@keyframes xp-bump{30%{transform:scale(1.06)}}.xp-float{color:var(--ink)}#perk-strip{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.4rem}.perk-chip{position:relative;display:flex;align-items:center;justify-content:center;width:2.3rem;height:2.3rem;border-radius:.7rem;background:var(--paper);border:var(--outline);box-shadow:var(--shadow);animation:prompt-in .25s ease-out}.perk-chip svg{width:1.7rem;height:1.7rem}.perk-stacks{position:absolute;right:-.4rem;bottom:-.4rem;font-size:.9rem;font-weight:700;color:var(--ink);background:var(--paper);border-radius:999px;padding:0 .4rem;box-shadow:var(--shadow);border:var(--outline)}#stage[data-input=touch] #tutorial-hint{top:59.5%;bottom:auto}#stage[data-input=touch] #interaction-prompt{top:53%;font-size:1.4rem;padding:.6rem 1.4rem}#stage[data-input=touch] .controls-grid[data-scheme=keyboard],#stage:not([data-input=touch]) .controls-grid[data-scheme=touch]{display:none}#touch-layer{position:absolute;inset:0;z-index:5;pointer-events:none;touch-action:none;user-select:none;-webkit-user-select:none}#touch-layer.active{pointer-events:auto}.touch-stick{position:absolute;width:22rem;height:22rem;transform:translate(-50%,-50%);border-radius:50%;border:.3rem solid var(--paper);background:transparent;box-shadow:var(--shadow);pointer-events:none}.touch-nub{position:absolute;left:50%;top:50%;width:8rem;height:8rem;border-radius:50%;background:var(--paper);box-shadow:var(--shadow);transform:translate(-50%,-50%);border:var(--outline)}#btn-pause{display:none;position:absolute;top:1.8rem;left:50%;transform:translate(-50%);width:6.4rem;height:6.4rem;border-radius:50%;border:var(--outline);background:var(--panel-bg);color:var(--ink);font-size:2.2rem;letter-spacing:-.1rem;cursor:pointer;pointer-events:auto;box-shadow:var(--shadow)}#stage[data-input=touch] #btn-pause{display:flex;align-items:center;justify-content:center}.wipe.single{cursor:default}.wipe.single .wipe-divider,.wipe.single .wipe-tag-before{display:none}button{font-family:var(--font);transition:translate .08s ease,box-shadow .08s ease}button:not(:disabled):hover{filter:brightness(1.04)}button:not(:disabled):active{translate:0 .4rem;box-shadow:0 0 0 var(--ink)}button:focus-visible,summary:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline:.3rem solid var(--ink);outline-offset:.5rem}button:disabled{cursor:default;filter:grayscale(1);border-style:dashed}.slider-row input[type=range]::-webkit-slider-runnable-track{background:var(--ink);border-radius:999px}.slider-row input[type=range]::-moz-range-track{background:var(--ink);border-radius:999px}#title-screen{justify-content:flex-start;padding-left:6rem}@media(max-height:600px),(max-width:900px){#title-screen{padding-left:3rem}.title-card{padding:1.8rem 2rem}.title-card h1{font-size:3.8rem}.tagline{margin-bottom:1rem}.title-card .big-btn{padding:1rem 2rem;margin-bottom:1rem}.menu-card{padding:1.8rem 2rem}.complete-card{width:94%}.complete-body{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:1.6rem}.checklist-card{min-width:0;width:90%;max-width:90%}}@media(max-height:600px),(max-width:900px){.complete-card{padding:1.2rem 1.8rem 1.6rem}.complete-card h2{font-size:2.8rem}.complete-card .final-property{margin-bottom:1rem}.complete-body{grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem 1.2rem}.complete-side{display:contents}.complete-body .wipe{grid-column:1 / 3;grid-row:1 / 3}.complete-body .final-sub{grid-column:3;grid-row:1;font-size:1.3rem;margin:0}.complete-body .save-notice{grid-column:1 / 4;grid-row:4;justify-self:center;margin:.6rem 0 0}.complete-body .stats-grid{grid-column:3;grid-row:2;grid-template-columns:minmax(0,1fr) auto;gap:.2rem .6rem;font-size:1.3rem;margin:0}.complete-body .stat-label{text-align:left}.complete-body .stat-label svg{width:2rem;height:2rem}.complete-side .big-btn,.complete-side .menu-btn{grid-row:3;font-size:1.6rem;padding:1rem .5rem;margin:.6rem 0 0;min-height:5.6rem}}.save-notice{display:inline-block;font-size:1.3rem;font-weight:700;color:var(--ink);background:var(--paper);border:var(--outline);border-radius:.9rem;padding:.5rem 1.2rem;margin:.4rem 0 .8rem}.big-btn.video{color:var(--ink);background:var(--paper);-webkit-text-stroke:0;font-size:1.7rem;padding:1rem 2rem;margin-top:0}.big-btn.video.pending{filter:saturate(.25) brightness(1.05);cursor:default}#crosshair{width:calc(var(--aim-r, 3rem) * 2);height:calc(var(--aim-r, 3rem) * 2);background:none;border:0;box-shadow:none;pointer-events:none}.aim-shapes{width:100%;height:100%;overflow:visible}.aim-shapes g{display:none}#crosshair[data-tool=washer] .aim-disc,#crosshair[data-tool=mower] .aim-bracket,#crosshair[data-tool=hands] .aim-ring{display:initial}.aim-rim{fill:none;stroke:#2b3242;stroke-width:calc(4.5px * var(--aim-stroke, 1))}.aim-line{fill:none;stroke:#fffdf7;stroke-width:calc(1.8px * var(--aim-stroke, 1))}.aim-wash{fill:#4a90d940;stroke:none}.aim-solid{display:none}.aim-active .aim-solid{display:initial}.aim-active .aim-dashed,.aim-far .aim-wash{display:none}.aim-far .aim-disc .aim-line{stroke-width:calc(1.5px * var(--aim-stroke, 1))}.aim-far{opacity:.65}.aim-active .aim-bracket .aim-line{fill:#2f7a3440;stroke:#b4e879}.aim-ring{transform:scale(var(--aim-close, 1));transform-origin:center}.aim-ring .aim-rim{opacity:.5}.aim-ring .aim-line{opacity:.7}.aim-target{fill:none;stroke:#e2b431;stroke-width:calc(3px * var(--aim-stroke, 1));opacity:0;transform:rotate(var(--aim-angle, 0deg));transform-origin:center}.aim-has-target .aim-target{opacity:1}#crosshair .aim-dot{position:absolute;width:.6rem;height:.6rem;min-width:4px;min-height:4px;left:50%;top:50%;transform:translate(-50%,-50%);background:#fffdf7;border-radius:50%;box-shadow:0 0 0 1.5px #2b3242}@media(prefers-reduced-motion:reduce){.aim-ring{transform:none}}#hud.training>:not(#training-guide):not(#crosshair):not(#btn-pause):not(#tool-bar),#hud.training:not(.training-equip)>#tool-bar{display:none!important}#hud.house-before-payment #purse,#hud.house-before-perks #xp-panel,#hud.house-before-perks #perk-strip{display:none}#training-guide{position:absolute;inset:0;pointer-events:none}.training-task{position:absolute;z-index:2;left:2rem;top:2rem;display:flex;align-items:center;gap:1rem;max-width:calc(100% - 12rem);padding:1rem 1.4rem;background:var(--paper);border:var(--outline);border-radius:var(--radius);box-shadow:var(--shadow)}.training-tool{display:flex;flex:0 0 auto}.training-tool svg{width:4.8rem;height:4.8rem}.training-copy{min-width:18rem}.training-title{display:block;font-size:1.8rem;line-height:1.25}.training-bar{height:.8rem;background:var(--ink);border-radius:1rem;margin-top:.7rem;overflow:hidden}.training-bar>span{display:block;width:0;height:100%;background:var(--green);transition:width .12s linear}.training-input{position:absolute;z-index:2;bottom:4rem;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:.8rem 1.5rem;border:var(--outline);border-radius:var(--radius);background:var(--paper);box-shadow:var(--shadow);font-size:1.5rem;white-space:nowrap}.training-input-glyphs{display:flex;align-items:center;gap:.3rem}.training-input-glyphs svg{width:3.4rem;height:3.4rem}#training-guide[data-action=gate] .training-bar,#training-guide[data-action=house] .training-bar,#training-guide[data-action=equip] .training-bar,#training-guide[data-action=equip] .training-target{display:none!important}#stage[data-input=touch] .training-input{bottom:auto;top:57%;padding:.6rem 1.1rem}#stage[data-input=touch] .training-input-glyphs svg{width:2.8rem;height:2.8rem}#training-guide[data-action=equip]{background:radial-gradient(ellipse at right center,#19231e26,#19231e99)}#training-guide[data-action=equip] .training-task,#hud.training-equip #crosshair,#hud.training-equip #sack-chip{display:none}#hud.training-equip #tool-bar{z-index:3}#hud.training-equip .tool-chip.lesson{background:var(--yellow);outline:.5rem solid var(--yellow);outline-offset:.4rem}#hud.training-equip .tool-chip.lesson .tool-key{top:-1rem;left:-1rem;min-width:2.6rem;height:2.6rem;font-size:1.8rem;line-height:2.6rem;color:var(--yellow)}.training-equip-key{display:block;font-size:2rem;font-weight:500;margin-top:.2rem}.training-equip-key kbd{display:inline-block;min-width:2.6rem;padding:0 .6rem;font:inherit;font-weight:700;color:var(--yellow);background:var(--ink);border-radius:.6rem;text-align:center}#hud.training-equip .tool-chip:disabled{opacity:.55;filter:grayscale(1);transform:none}#stage #training-guide[data-action=equip] .training-input{left:auto;right:12rem;top:50%;bottom:auto;width:44rem;max-width:calc(100% - 15rem);transform:translateY(-50%);padding:1.8rem 2.2rem;gap:.8rem;align-items:flex-start;font-size:3.2rem;line-height:1.15;text-align:left;white-space:normal}#stage[data-input=touch] #training-guide[data-action=equip] .training-input{top:calc(26% + 8.6rem)}.training-equip-heading{font-size:1.6rem;text-transform:uppercase;letter-spacing:.08em}.training-equip-note{font-size:1.7rem}#training-guide[data-action=equip] .training-input:after{content:"→";position:absolute;left:calc(100% + 1rem);top:50%;transform:translateY(-50%);color:var(--yellow);font-size:4rem;line-height:1;text-shadow:0 .2rem var(--ink);animation:training-point 1s ease-in-out infinite}#training-guide[data-action=equip][data-stage=trash] .training-input:after{top:calc(50% - 5.8rem)}#training-guide[data-action=equip][data-stage=wash] .training-input:after{top:calc(50% + 5.8rem)}@keyframes training-point{50%{translate:.5rem 0}}@media(prefers-reduced-motion:reduce){#training-guide[data-action=equip] .training-input:after{animation:none}.training-bar>span{transition:none}}#stage:has(#hud.training) #pause-screen .controls-grid{display:none}#stage:has(#pause-screen:not(.hidden)) #training-guide{visibility:hidden}#hud .job-row{position:relative;padding-left:3.2rem}#hud .job-label{display:flex;flex-direction:column-reverse;white-space:normal}#hud .job-kind{position:absolute;left:0;top:50%;transform:translateY(-50%)}#hud .job-kind svg{display:block;width:2.4rem;height:2.4rem}#hud .job-caption{font-size:1.2rem;line-height:1.2}#hud .job-price{font-size:2rem;line-height:1.1;color:var(--ink)}#hud .job-row.done .job-label:after{content:none}#hud .job-row.spotlit .job-label{color:var(--ink)}#hud #jobs-count{display:flex;align-items:center;justify-content:center;gap:.3rem;color:var(--ink)}#jobs-count svg{width:3.2rem;height:3.2rem}#hud #xp-level{display:flex;padding:0;background:none;border:0;box-shadow:none}#xp-level svg{width:4.4rem;height:4.4rem}#xp-panel.owed #xp-fill{width:100%!important;animation:xp-breathe 1.6s ease-in-out infinite}#xp-panel.owed #xp-level{cursor:pointer}#xp-panel.owed #xp-level svg{animation:xp-star-pulse 1.6s ease-in-out infinite}@keyframes xp-breathe{0%,to{opacity:1}50%{opacity:.55}}@keyframes xp-star-pulse{0%,to{transform:scale(1.15) rotate(-6deg)}50%{transform:scale(1.3) rotate(6deg)}}#hud #sack-chip{display:flex;align-items:center;justify-content:center;width:6.4rem;height:6.4rem;padding:0;opacity:1}#sack-chip>svg{display:block;width:5.6rem;height:5.6rem}#sack-chip svg .sack-fill{width:64px;height:64px;transition:y .2s ease}#sack-chip.full .sack-colour{fill:var(--sack-hazard)}#hud .tool-chip.active{background:var(--yellow, #f2c14e);border-color:var(--ink);transform:rotate(-4deg);box-shadow:var(--key-lip)}#hud .tool-chip .tool-key{top:-.6rem;left:-.6rem;min-width:2rem;height:2rem;padding:0 .4rem;box-sizing:border-box;font-size:1.4rem;line-height:2rem;font-weight:700;text-align:center;color:var(--paper);background:var(--ink);border-radius:.6rem;box-shadow:0 .2rem #00000059;text-shadow:none;opacity:1;z-index:1}#hud .tool-chip.rampage{background:#d9482b;border-color:var(--ink);animation:chip-rampage .35s ease-in-out infinite alternate}@keyframes chip-rampage{0%{transform:rotate(-6deg) scale(1.05)}to{transform:rotate(6deg) scale(1.15)}}#hud .tool-chip:disabled{opacity:.4;cursor:not-allowed}#hud .tool-chip.disco-active{background:linear-gradient(135deg,#ffad42,#65ef99 45%,#48dfff 70%,#ba83ff)}.power-status{display:block;position:absolute;right:calc(100% + .7rem);top:50%;transform:translateY(-50%);padding:.3rem .6rem;border:.2rem solid var(--ink);border-radius:.5rem;background:#f5e9ff;color:var(--ink);font-size:1.2rem;font-weight:700;line-height:1.3;white-space:nowrap;pointer-events:none}.disco-active .power-status{background:#65ef99}#hud #interaction-prompt,#hud #tutorial-hint{text-align:center;white-space:normal;max-width:47%;padding:.5rem 1.2rem;line-height:1.15}.prompt-glyphs{display:flex;justify-content:center;align-items:center;gap:.4rem}.prompt-glyphs svg{display:block;width:3.4rem;height:3.4rem;flex:0 0 auto}.prompt-caption{display:block;margin-top:.2rem;font-size:1.2rem}.tap-ring{display:inline-block;width:1.8rem;height:1.8rem;border:.3rem solid var(--ink);border-radius:50%;background:var(--yellow, #f2c14e);box-shadow:0 0 0 .3rem var(--cream, #fff6df),0 0 0 .5rem var(--ink);margin:.5rem}#hud #banner{display:flex;align-items:center;justify-content:center;gap:1rem;padding:1rem 2rem;letter-spacing:0}.banner-icons{display:flex;gap:.4rem}.banner-icons svg{width:5.6rem;height:5.6rem}.banner-copy{display:flex;flex-direction:column;text-align:left}.banner-price{font-size:3.4rem;line-height:1}.banner-title{font-size:1.2rem}#hud .check-item{display:flex;align-items:center;gap:.5rem}#hud .check-item.done{color:var(--ink);opacity:1;text-decoration:none}.check-box{display:inline-flex;width:1.8rem;height:1.8rem;flex:0 0 auto;border:2px solid var(--ink);border-radius:.4rem}.check-item.done .check-box{border:0}.check-box svg{width:100%;height:100%}#checklist-columns h4 svg{width:4rem;height:4rem}#hud .checklist-card{min-width:0;width:68rem}.stat-label{display:flex;align-items:center;gap:.5rem}.stat-label [data-stat-icon]{display:inline-flex;flex:0 0 auto}.stat-label svg{width:2.6rem;height:2.6rem}#draft-screen .draft-level{background:none;border:0;box-shadow:none;padding:0}#draft-screen .draft-level svg{width:6.4rem;height:6.4rem;display:block}#stage[data-input=touch] .tool-chip{width:6.8rem;height:6.8rem;min-width:48px;min-height:48px}#stage[data-input=touch] #sack-chip{width:6.8rem;height:6.8rem}#stage[data-input=touch] #jobs-count{min-height:6.4rem;min-width:6.4rem;padding:.2rem;flex-direction:column;font-size:1.2rem}#stage[data-input=touch] #progress-panel{min-width:0;max-width:30rem;padding:.45rem .6rem .45rem .8rem;column-gap:.6rem;align-items:center;font-size:1.15rem}#stage[data-input=touch] .job-row{display:grid;grid-template-columns:auto 1fr;column-gap:.6rem;align-items:center;padding:0}#stage[data-input=touch] .job-kind{position:static;transform:none}#stage[data-input=touch] .job-kind svg{width:2.2rem;height:2.2rem}#stage[data-input=touch] .job-label{flex-direction:row;align-items:baseline;gap:.5rem;white-space:nowrap}#stage[data-input=touch] .job-caption{order:1;font-size:1.05rem;overflow:hidden;text-overflow:ellipsis}#stage[data-input=touch] .job-price{order:0;font-size:1.5rem}#stage[data-input=touch] .job-row .row-bar{grid-column:1 / -1;height:.55rem;margin-top:.2rem}#stage[data-input=touch] #top-right{min-width:0}#stage[data-input=touch] #purse{display:grid;grid-template-columns:1fr auto;column-gap:.8rem;align-items:center;padding:.3rem .9rem .5rem}#stage[data-input=touch] #cash-counter{font-size:1.9rem;text-align:left}#stage[data-input=touch] #xp-panel{display:contents}#stage[data-input=touch] #xp-level svg{width:3rem;height:3rem}#stage[data-input=touch] .xp-bar{grid-column:1 / -1;height:.5rem;margin-top:.1rem}#stage[data-input=touch] #btn-pause{width:6.8rem;height:6.8rem;min-width:48px;min-height:48px}#stage[data-input=touch] .perk-chip{width:3rem;height:3rem}#stage[data-input=touch] .perk-chip svg{width:2.4rem;height:2.4rem}#stage[data-input=touch] #tool-bar{top:26%;transform:none;gap:.2rem}#stage[data-input=touch] #perk-strip{position:absolute;right:calc(100% + .8rem);top:0;width:10.8rem}#stage[data-input=touch] #interaction-prompt,#stage[data-input=touch] #tutorial-hint,#stage[data-input=touch] .prompt-caption{font-size:1.6rem}#stage[data-input=touch] #tutorial-hint{top:57%;bottom:auto}#stage[data-input=touch] #interaction-prompt{top:48%}#interaction-prompt:not(.hidden)+#tutorial-hint{visibility:hidden}#stage[data-input=touch] .tool-key,#stage[data-input=touch] .draft-key,#stage[data-input=touch] .draft-hint{display:none}@media(prefers-reduced-motion:reduce){#sack-chip svg .sack-fill{transition:none}}#hud.checklist-open>:not(#checklist){visibility:hidden}#hud #checklist{pointer-events:auto}#hud .checklist-card{position:relative}#hud .checklist-card h3{padding-right:5.6rem}.checklist-close{position:absolute;top:.8rem;right:.8rem;width:6.8rem;height:6.8rem;min-width:48px;min-height:48px;padding:0;border:var(--outline);border-radius:var(--radius);background:var(--paper);color:var(--ink);font:inherit;font-size:3rem;line-height:1;box-shadow:var(--shadow);cursor:pointer}#stage[data-input=touch] .phone-icon{left:calc(50% + 4.6rem);right:auto;top:1.8rem;bottom:auto;width:6.8rem;height:6.8rem;min-width:48px;min-height:48px;justify-content:center;padding:0}#hud.checklist-open~.phone-icon{visibility:hidden}#stage[data-input=touch] #tutorial-hint,#stage[data-input=touch] #interaction-prompt{top:auto;bottom:10%}#stage[data-input=touch] #banner{top:19%}#banner{border-width:.6rem;border-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cdefs%3E%3Cpattern id='h' width='12' height='12' patternUnits='userSpaceOnUse' patternTransform='rotate(45)'%3E%3Cpath fill='%23e2b431' d='M0 0h12v12H0z'/%3E%3Cpath fill='%232b3242' d='M0 0h6v12H0z'/%3E%3C/pattern%3E%3C/defs%3E%3Cpath fill='url(%23h)' d='M0 0h24v24H0z'/%3E%3C/svg%3E") 6 repeat}#hud #progress-panel,#hud #purse,#hud #sack-chip,#hud .perk-chip,#hud #interaction-prompt,#hud #tutorial-hint,#hud #banner{box-shadow:none}#hud #progress-panel,#hud #purse,#hud #sack-chip,#hud .perk-chip{background:var(--card-ink);color:var(--paper);border-color:var(--card-edge)}#hud .job-price,#hud .job-row.spotlit .job-label,#hud .job-row.done,#hud #xp-level,#hud #sack-chip.full{color:var(--paper)}#hud .job-row .row-bar,#hud .xp-bar{background:var(--card-track)}#hud #cash-counter{color:var(--card-cash)}#hud #cash-counter.bump{animation-name:cash-bump-card}@keyframes cash-bump-card{30%{transform:scale(1.08);color:#fff}}#hud .tool-chip,#hud #jobs-count,#hud #btn-pause,#hud .checklist-close,#stage .phone-icon{background:var(--key-face);box-shadow:var(--key-lip);transition:translate .08s ease,box-shadow .08s ease,opacity .15s ease,transform .15s ease,border-color .15s ease}#hud .tool-chip:before{content:"";position:absolute;inset:.45rem;border-radius:50%;background:var(--paper)}#hud .tool-chip>svg{position:relative}#hud .tool-chip.active:before{background:#fff6d6}#stage .phone-icon:hover{border-color:var(--ink)}#stage .phone-icon.ringing{background:var(--yellow);border-color:var(--ink)}@media(hover:hover){#hud .tool-chip:not(:disabled):hover,#hud #jobs-count:hover,#hud #btn-pause:hover,#hud .checklist-close:hover,#stage .phone-icon:hover{translate:0 -.2rem;box-shadow:0 .8rem 0 var(--ink)}}#hud .tool-chip:not(:disabled):active,#hud #jobs-count:active,#hud #btn-pause:active,#hud .checklist-close:active,#stage .phone-icon:active{translate:0 .6rem;box-shadow:0 0 0 var(--ink)}#hud .tool-chip:disabled{box-shadow:none}#xp-panel.owed #xp-level{padding:.3rem;margin:-.3rem;border-radius:50%;background:var(--key-face);box-shadow:0 0 0 .28rem var(--ink),0 .6rem 0 .28rem var(--ink);transition:translate .08s ease,box-shadow .08s ease}@media(hover:hover){#xp-panel.owed #xp-level:hover{translate:0 -.2rem;box-shadow:0 0 0 .28rem var(--ink),0 .8rem 0 .28rem var(--ink)}}#xp-panel.owed #xp-level:active{translate:0 .6rem;box-shadow:0 0 0 .28rem var(--ink)}.beacon{position:absolute;z-index:1;width:3.4rem;height:3.4rem;display:flex;align-items:center;justify-content:center;transform:translate(-50%,-120%);background:var(--yellow);border:var(--outline);border-radius:50%;box-shadow:var(--shadow);font-size:2.4rem;font-weight:700;pointer-events:none;animation:beacon-breath 1.8s ease-in-out infinite}.beacon span{display:block;line-height:1}.beacon.at-edge{transform:translate(-50%,-50%)}@keyframes beacon-breath{50%{opacity:.65}}@media(prefers-reduced-motion:reduce){.beacon{animation:none}}.draft-card-frame{width:min(86rem,94%);max-width:94%;padding:2.6rem 3rem 2rem}.draft-level{display:inline-block;font-size:3rem;font-weight:700;letter-spacing:.05rem;color:var(--ink);background:var(--paper);border:var(--outline);border-radius:1.4rem;padding:.8rem 2.8rem;text-shadow:none;box-shadow:var(--shadow);animation:draft-card-in .35s ease-out}.draft-sub{font-size:1.3rem;color:var(--ink);margin:1rem 0 1.8rem}.draft-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.6rem}.draft-card{position:relative;display:flex;flex-direction:column;align-items:center;gap:.6rem;font-family:inherit;color:var(--ink);background:var(--paper);border:var(--outline);border-radius:1.6rem;padding:1.8rem 1.4rem 1.4rem;min-height:23.6rem;cursor:pointer;text-align:center;box-shadow:var(--shadow);transition:transform .1s ease,border-color .1s ease,box-shadow .1s ease;animation:draft-card-in .4s cubic-bezier(.2,1.3,.4,1) backwards}.draft-card:hover,.draft-card:focus-visible{transform:translateY(-.4rem) scale(1.02);border-color:var(--ink);box-shadow:var(--shadow);outline:.3rem solid var(--ink);outline-offset:.5rem}.draft-card:active{transform:none}.draft-card.draft-rule{background:var(--paper);border-color:var(--ink)}.draft-card.draft-gold{background:linear-gradient(135deg,#ffe78a,#f4bd38 38%,#ffedaa 60%,#e7a526);border-color:#7b4b12;box-shadow:.4rem .5rem #7b4b12,inset 0 0 0 .3rem #fff0b5}.draft-gold .draft-icon,.draft-gold .draft-effect,.draft-gold .draft-key{background:#fff2bf;border-color:#7b4b12}.draft-gold .draft-pips{font-weight:700;color:#56330c}@keyframes draft-card-in{0%{opacity:0;transform:translateY(1.8rem) scale(.92)}to{opacity:1;transform:translateY(0) scale(1)}}.draft-key{position:absolute;top:.8rem;left:1rem;font-size:1.1rem;font-weight:700;color:var(--ink);background:var(--paper);border-radius:.6rem;padding:.1rem .7rem;border:var(--outline)}.draft-icon{width:8.8rem;height:8.8rem;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--paper);box-shadow:var(--shadow);border:var(--outline)}.draft-name{font-size:1.8rem;font-weight:700;letter-spacing:.03rem;margin-top:.4rem}.draft-effect{display:flex;flex-direction:column;align-items:center;gap:.2rem;background:var(--paper);border:var(--outline);border-radius:.9rem;padding:.6rem 1.2rem;width:100%}.draft-value{font-size:2.2rem;font-weight:700;color:var(--ink)}.draft-label{font-size:1.2rem;color:var(--ink)}.draft-rule-line{font-size:1.4rem;font-weight:700;color:var(--ink);padding:.4rem 0}.draft-pips{margin-top:auto;font-size:1.1rem;letter-spacing:.2rem;color:var(--accent-dark)}.draft-pips-rule{letter-spacing:.15rem;color:var(--ink)}.draft-note{font-size:1.1rem;color:var(--ink)}.draft-hint{margin-top:1.6rem;font-size:1.2rem;color:var(--ink)}@media(max-height:600px),(max-width:900px){.draft-card-frame{padding:1.4rem 1.6rem}.draft-level{font-size:2.6rem;padding:.4rem 1.8rem}.draft-sub{margin:.8rem 0 1.2rem}.draft-cards{gap:1rem}.draft-card{padding:1.2rem .8rem;min-height:22rem}.draft-icon{width:7rem;height:7rem}.draft-icon svg{max-width:90%;max-height:90%}.draft-name{font-size:1.6rem}.draft-hint{margin-top:1rem}.draft-cards.draft-four{gap:.8rem}}.draft-cards.draft-four{grid-template-columns:repeat(4,1fr)}.draft-card.draft-video .draft-key{font-size:1.6rem;padding:.1rem .5rem}.draft-card.draft-video-waiting{opacity:.6;cursor:wait}.draft-card.draft-video-waiting .draft-icon{animation:draft-video-spin 1s linear infinite}.draft-card.draft-video-earned{cursor:default;transform:none;filter:none;border-style:solid}.draft-card.draft-video-earned .draft-key{background:var(--paper)}.draft-card.draft-video-gone{animation:draft-video-shake .4s ease-out forwards;pointer-events:none}@keyframes draft-video-spin{to{transform:rotate(360deg)}}@keyframes draft-video-shake{0%{transform:translate(0);opacity:1}25%{transform:translate(-.6rem)}50%{transform:translate(.6rem)}75%{transform:translate(-.4rem);opacity:.5}to{transform:translate(0);opacity:0}}#property-arrival{position:absolute;inset:0;z-index:125;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2rem;padding:3rem;background:#19232bad;pointer-events:auto}#property-arrival h2{max-width:100%;color:var(--paper);font-size:clamp(3rem,8vw,8rem);font-weight:700;line-height:1.1;text-align:center;text-wrap:balance;text-shadow:0 .35rem 0 var(--ink)}.phone-overlay{z-index:30;align-items:flex-end}.phone-body{position:relative;width:44rem;height:92rem;max-height:96%;display:flex;flex-direction:column;background:var(--ink);border:var(--outline);border-radius:4.4rem 4.4rem 0 0;padding:2.4rem 1.6rem 0;box-shadow:var(--shadow)}.phone-body.phone-up{animation:phone-up .45s cubic-bezier(.2,1.2,.4,1)}@keyframes phone-up{0%{transform:translateY(40%);opacity:.4}to{transform:translateY(0);opacity:1}}.phone-speaker{width:8rem;height:.7rem;margin:0 auto 1.4rem;border-radius:999px;background:#0b0f18;box-shadow:var(--shadow)}.phone-glass{flex:1;min-height:0;display:flex;flex-direction:column;background:var(--paper);color:var(--ink);border:var(--outline);border-radius:1.6rem;overflow:hidden;box-shadow:var(--shadow);text-align:left}.phone-home{width:5rem;height:5rem;margin:1.2rem auto;flex-shrink:0;border-radius:50%;background:#171c28;box-shadow:none}.phone-tabs{display:flex;align-items:stretch;gap:.8rem;padding:.8rem .8rem 1rem;background:var(--paper);border-bottom:var(--outline)}.phone-tab{display:flex;align-items:center;gap:.6rem;font-family:inherit;font-size:1.4rem;font-weight:700;letter-spacing:.04rem;text-transform:none;color:var(--ink);background:var(--paper);border:var(--outline);border-bottom:var(--outline);border-radius:var(--radius);padding:.8rem 1.8rem;cursor:pointer;box-shadow:var(--shadow)}.phone-tab-glyph{font-size:2rem;line-height:1}.phone-tab svg{width:2.4rem;height:2.4rem}.phone-tab.active{color:var(--ink);background:var(--yellow);border-color:var(--ink);box-shadow:var(--shadow)}.phone-close{margin-left:auto;align-self:center;width:3rem;height:3rem;font-family:inherit;font-size:2rem;line-height:1;color:var(--ink);background:var(--paper);border:var(--outline);border-radius:50%;cursor:pointer;text-shadow:none;box-shadow:var(--shadow)}.phone-pane{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:1.1rem;padding:1.4rem 1.6rem 1.6rem}.phone-status{font-size:1.1rem;font-weight:700;letter-spacing:.25rem;color:var(--ink)}.phone-client{display:flex;align-items:center;gap:1.2rem}.phone-face{width:6.4rem;height:6.4rem;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:2.2rem;font-weight:700;color:var(--ink);border-radius:50%;background:var(--orange);border:var(--outline);text-shadow:none;box-shadow:var(--shadow);transition:background .2s ease,border-color .2s ease,transform .2s ease}.phone-face.mood-lit{background:var(--yellow);border-color:var(--ink);transform:scale(1.06)}.phone-face.mood-frown{background:var(--orange);border-color:var(--ink)}.phone-face.mood-red{background:var(--red);border-color:var(--ink);animation:phone-shake .35s ease}@keyframes phone-shake{25%{transform:translate(-.4rem)}75%{transform:translate(.4rem)}}.phone-names{min-width:0}.phone-name{font-size:2rem;font-weight:700}.phone-role{font-size:1.15rem;color:var(--ink)}.phone-line{font-size:1.5rem;font-style:italic;line-height:1.35;color:var(--ink);padding:.8rem 1.2rem;background:var(--paper);border:var(--outline);border-radius:1.2rem 1.2rem 1.2rem .3rem;box-shadow:var(--shadow)}.phone-postcard{position:relative;aspect-ratio:16 / 9;flex-shrink:0;overflow:hidden;background:var(--paper);border:var(--outline);border-radius:1.3rem;box-shadow:var(--shadow)}.phone-postcard-photo{display:block;width:100%;height:100%;object-fit:cover}.phone-postcard-name,.phone-postcard-jobs,.phone-postcard-price{position:absolute;font-size:1.4rem;font-weight:700;color:var(--ink);background:var(--paper);border:var(--outline);border-radius:.9rem;padding:.3rem .9rem;box-shadow:var(--shadow);white-space:nowrap}.phone-postcard-name{left:.8rem;bottom:.8rem;max-width:60%;overflow:hidden;text-overflow:ellipsis;transform:rotate(-2deg)}.phone-postcard-jobs{top:.8rem;right:.8rem;display:flex;align-items:center;gap:.4rem;padding-left:.5rem}.phone-postcard-jobs svg{width:2.2rem;height:2.2rem}.phone-postcard-price{right:.8rem;bottom:.8rem;font-size:1.8rem;color:var(--paper);background:var(--green);-webkit-text-stroke:.12rem var(--ink);paint-order:stroke fill;transform:rotate(2deg)}.phone-offer{display:flex;align-items:baseline;flex-wrap:wrap;gap:.2rem 1rem;background:var(--paper);border:var(--outline);border-radius:1.2rem;padding:.8rem 1.4rem;box-shadow:var(--shadow)}.phone-offer.final{background:var(--paper);border-color:var(--red)}.phone-offer.final .phone-offer-label{color:var(--ink);font-weight:700;letter-spacing:.05rem}.phone-offer.final .phone-offer-price{color:var(--ink)}.phone-offer-label{font-size:1.2rem;color:var(--ink);flex-basis:100%}.phone-offer-price{font-size:3.6rem;font-weight:700;line-height:1;color:var(--green);font-variant-numeric:tabular-nums}.phone-offer-was{font-size:1.2rem;color:var(--ink)}.phone-pips{margin-left:auto;display:flex;align-items:center;gap:.8rem;font-size:1.15rem;color:var(--ink)}.phone-pips-dots{display:flex;gap:.5rem}.pip{width:1.4rem;height:1.4rem;border-radius:50%;background:var(--paper);border:var(--outline);box-shadow:none}.pip.on{background:var(--orange);border-color:var(--ink);box-shadow:none}.phone-buttons{margin-top:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem;position:sticky;bottom:0;padding-top:.6rem;background:var(--paper)}.phone-btn{display:flex;flex-direction:column;align-items:center;gap:.2rem;font-family:inherit;color:var(--ink);border-radius:1.4rem;padding:1rem .6rem .8rem;cursor:pointer;text-shadow:none;box-shadow:var(--shadow);transition:transform .08s ease,filter .12s ease;font-weight:700;border:var(--outline)}.phone-btn b{font-size:3rem;line-height:1}.phone-btn span{font-size:1.15rem;font-weight:700;letter-spacing:.05rem}.phone-btn:hover{filter:brightness(1.07);transform:none}.phone-btn:active{transform:none}.phone-btn:disabled,.phone-btn:disabled:hover,.phone-btn:disabled:active{cursor:default;opacity:1;filter:grayscale(1);transform:none;box-shadow:none;border-style:dashed}.phone-yes{background:var(--green);border:var(--outline);color:var(--paper)}.phone-more{background:var(--orange);border:var(--outline)}.phone-no{background:var(--paper);border:var(--outline)}.phone-message{background:var(--paper);border:var(--outline);border-radius:1.2rem;padding:1.4rem 1.6rem;box-shadow:var(--shadow)}.phone-message{display:flex;flex-direction:column;gap:.8rem}.phone-message-title{font-size:2rem;font-weight:700}.phone-message-body{font-size:1.4rem;line-height:1.4;color:var(--ink)}.phone-ok{margin-top:auto;align-self:stretch;font-size:1.6rem;padding:1rem 2rem}.phone-icon{position:absolute;right:1.8rem;bottom:1.8rem;z-index:15;display:flex;align-items:center;gap:.6rem;font-family:inherit;color:var(--ink);background:var(--panel-bg);border:var(--outline);border-radius:1.4rem;padding:1rem 1.8rem;cursor:pointer;pointer-events:auto;box-shadow:var(--shadow);transition:border-color .15s ease,transform .15s ease}.phone-icon:hover{border-color:var(--accent)}.phone-icon-glyph{font-size:3.2rem;line-height:1}.phone-icon-key{font-size:1.7rem;font-weight:700;color:var(--ink)}.phone-icon.ringing{border-color:var(--accent);animation:phone-ring 1.2s ease-in-out infinite}@keyframes phone-ring{0%,to{transform:rotate(0)}10%{transform:rotate(-8deg)}20%{transform:rotate(8deg)}30%{transform:rotate(-6deg)}40%{transform:rotate(6deg)}50%{transform:rotate(0)}}.phone-badge{position:absolute;top:-.7rem;right:-.7rem;min-width:2.2rem;height:2.2rem;display:flex;align-items:center;justify-content:center;font-size:1.2rem;font-weight:700;color:var(--paper);background:var(--red);border:var(--outline);border-radius:999px;box-shadow:var(--shadow)}#stage[data-input=touch] .phone-tab{min-height:5.6rem;min-width:5.6rem}#stage[data-input=touch] .phone-close{width:5.6rem;height:5.6rem;font-size:2.8rem}@media(max-height:600px),(max-width:900px){.phone-body{padding-top:1rem;max-height:98%;border-radius:2.8rem 2.8rem 0 0}.phone-speaker{margin-bottom:.7rem}.phone-home{width:2.4rem;height:2.4rem;margin:.6rem auto}.phone-pane{gap:.8rem;padding:1rem 1.2rem 1.2rem}.phone-status,.phone-role,.phone-line{display:none}.phone-face{width:4.4rem;height:4.4rem;font-size:1.6rem}.phone-name{font-size:1.7rem}.phone-postcard{max-height:11rem}.phone-offer{align-items:center;gap:.2rem 1rem;padding:.5rem 1.2rem}.phone-offer-label{flex-basis:auto}.phone-offer-price{font-size:2.6rem}.phone-message-title{font-size:1.7rem}}.phone-jobs-list{display:flex;flex-direction:column;gap:.9rem}.phone-job{display:flex;align-items:center;gap:1rem;background:var(--paper);border:var(--outline);border-radius:1.2rem;padding:.7rem 1rem .7rem .7rem;box-shadow:var(--shadow)}.phone-job-thumb{position:relative;flex-shrink:0;width:12rem;aspect-ratio:16 / 9;overflow:hidden;border:var(--outline);border-radius:.8rem;background:var(--paper)}.phone-job-thumb img{display:block;width:100%;height:100%;object-fit:cover}.phone-job-tag{position:absolute;top:.4rem;left:.4rem;display:flex;align-items:center;font-size:1.1rem;font-weight:700;color:var(--ink);background:var(--yellow);border:var(--outline);border-radius:.6rem;padding:.1rem .6rem}.phone-job.done .phone-job-tag{padding:0;border:none;background:none}.phone-job.done .phone-job-tag svg{width:2.4rem;height:2.4rem}.phone-job-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:.3rem}.phone-job-name{font-size:1.5rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.phone-job-line{display:flex;align-items:center;flex-wrap:wrap;gap:.4rem 1rem;font-variant-numeric:tabular-nums}.phone-job-price{font-size:1.4rem;font-weight:700;color:var(--green)}.phone-job.next .phone-job-price,.phone-job.now .phone-job-price{font-size:1.8rem}.phone-job-tally,.phone-job-time{display:flex;align-items:center;gap:.4rem;font-size:1.4rem;font-weight:700}.phone-job-time{font-size:2rem}.phone-job-time svg{width:2.2rem;height:2.2rem}.phone-job-time.faster{color:var(--green)}.phone-job-faster{font-size:1.1rem;font-weight:700;color:var(--paper);background:var(--green);border:var(--outline);border-radius:.6rem;padding:.1rem .6rem}.phone-job-line .phone-job-price:last-child{margin-left:auto}.phone-job-replay{display:flex;align-items:center;justify-content:center;width:4.4rem;height:4.4rem;padding:0;margin-left:auto}.phone-job-replay svg{width:2.8rem;height:2.8rem}@media(max-height:600px),(max-width:900px){.phone-jobs-list{gap:.7rem}.phone-job{gap:.8rem;padding:.5rem .8rem .5rem .5rem}.phone-job-thumb{width:10rem}.phone-job-time{font-size:1.7rem}}#stage .phone-icon.unseen:not(.ringing){background:var(--yellow);border-color:var(--ink);scale:1.2;animation:phone-wave 1.6s ease-in-out infinite}#stage .phone-icon.unseen:not(.ringing):after{content:"";position:absolute;inset:-.4rem;border:.4rem solid var(--yellow);border-radius:inherit;pointer-events:none;animation:phone-halo 1.6s ease-out infinite}@keyframes phone-wave{0%,to{scale:1.2}50%{scale:1.32}}@keyframes phone-halo{0%{opacity:.9;inset:-.4rem}to{opacity:0;inset:-2.4rem}}@media(prefers-reduced-motion:reduce){#stage .phone-icon.unseen:not(.ringing){animation:none}#stage .phone-icon.unseen:not(.ringing):after{display:none}}.shop-head{display:flex;justify-content:flex-end}.shop-purse{display:flex;align-items:center;gap:.6rem;background:var(--paper);border:var(--outline);border-radius:999px;padding:.4rem 1.4rem .4rem .8rem;box-shadow:var(--shadow)}.shop-cash{font-size:1.8rem;font-weight:700;color:var(--green);white-space:nowrap;font-variant-numeric:tabular-nums}.shop-tools{display:flex;flex-direction:column;gap:1.2rem}.shop-tool{display:flex;align-items:center;gap:1.2rem;background:var(--paper);border:var(--outline);border-radius:1.6rem;padding:1rem 1.2rem 1rem 1rem;box-shadow:var(--shadow)}.shop-tool-pic{width:9.6rem;height:9.6rem;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--paper);border:var(--outline);box-shadow:var(--shadow)}.shop-tool-pic svg{width:7.6rem;height:7.6rem}.shop-tool.bought .shop-tool-pic{animation:shop-bought .45s cubic-bezier(.2,1.4,.4,1)}@keyframes shop-bought{0%{transform:scale(.8) rotate(-8deg)}60%{transform:scale(1.12) rotate(4deg)}to{transform:scale(1) rotate(0)}}.shop-tool-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:.6rem}.shop-tool-name{font-size:1.6rem;font-weight:700;letter-spacing:.03rem;color:var(--ink)}.shop-tool-ladder{display:flex;gap:.35rem}.rung{flex:1;height:1.5rem;max-width:1.8rem;border:.22rem solid var(--ink);border-radius:.4rem;background:var(--paper)}.rung.on{background:var(--orange)}.shop-buy{flex-shrink:0;display:flex;align-items:center;gap:.5rem;min-height:5.6rem;min-width:10rem;justify-content:center;font-size:1.7rem;letter-spacing:.02rem;padding:.6rem 1.2rem .6rem .9rem;border-radius:1.4rem;font-variant-numeric:tabular-nums}.shop-buy-price{white-space:nowrap}.shop-buy:disabled{filter:none;background:#d6d1bf;color:var(--ink);-webkit-text-stroke:0;box-shadow:none;transform:translateY(.4rem)}.shop-tool-done{flex-shrink:0;min-width:10rem;display:flex;justify-content:center}@media(max-height:600px),(max-width:900px){.shop-tool{gap:.9rem;padding:.7rem .9rem .7rem .7rem}.shop-tool-pic{width:7.6rem;height:7.6rem}.shop-tool-pic svg{width:6rem;height:6rem}.shop-buy{min-width:8.6rem;font-size:1.5rem}.shop-tool-done{min-width:8.6rem}}.unpublished-demo{position:absolute;inset:0;overflow:hidden;pointer-events:none;user-select:none;-webkit-user-select:none;font-family:var(--font)}.unpublished-demo__pattern{position:absolute;inset:-40%;display:grid;grid-template-columns:repeat(4,1fr);gap:8rem 5rem;align-content:center;justify-items:center;transform:rotate(-28deg);opacity:.16}.unpublished-demo__tile{margin:0;white-space:nowrap;font-size:3.2rem;font-weight:700;letter-spacing:.14em;color:var(--paper);-webkit-text-stroke:.12rem var(--ink);paint-order:stroke fill;text-shadow:0 .2rem 0 var(--ink)}.unpublished-demo__corner{position:absolute;bottom:max(1.2rem,env(safe-area-inset-bottom));padding:.5rem 1.2rem;font-size:1.5rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink);background:var(--yellow);border:var(--outline);border-radius:var(--radius);box-shadow:var(--shadow);opacity:.85}.unpublished-demo__corner--bl{left:max(1.2rem,env(safe-area-inset-left))}.unpublished-demo__corner--br{right:max(1.2rem,env(safe-area-inset-right))}.domain-blocked{position:absolute;inset:0;z-index:130;display:flex;align-items:center;justify-content:center;box-sizing:border-box;padding:3rem;background:var(--yellow);color:var(--ink);font-family:var(--font)}.domain-blocked__card{display:flex;flex-direction:column;align-items:center;gap:1.6rem;max-width:90%;text-align:center}.domain-blocked__title{margin:0;font-size:8rem;font-weight:700;line-height:1.2;letter-spacing:-.035em;color:var(--paper);-webkit-text-stroke:.28rem var(--ink);paint-order:stroke fill;text-shadow:0 .45rem 0 var(--ink)}.domain-blocked__subtitle{margin:0;font-size:2.4rem;font-weight:600}.domain-blocked__host{margin:0;font-size:1.8rem;font-weight:500;opacity:.85}.domain-blocked__host code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.95em;padding:.1rem .6rem;background:var(--paper);border-radius:.6rem;word-break:break-all}@media(orientation:portrait){#hud{display:flex;flex-direction:column;align-items:flex-start;gap:.8rem;padding:1.8rem}#hud #progress-panel,#hud #top-right{position:static;flex:0 0 auto}#hud #progress-panel{min-width:0;max-width:calc(100% - 15.6rem);padding:.45rem .6rem .45rem .8rem;column-gap:.6rem;align-items:center;font-size:1.15rem}#hud .job-row{display:grid;grid-template-columns:auto 1fr;column-gap:.6rem;align-items:center;padding:0}#hud .job-kind{position:static;transform:none}#hud .job-kind svg{width:2.2rem;height:2.2rem}#hud .job-label{flex-direction:row;align-items:baseline;gap:.5rem;white-space:nowrap}#hud .job-caption{order:1;font-size:1.05rem;overflow:hidden;text-overflow:ellipsis}#hud .job-price{order:0;font-size:1.5rem}#hud .job-row .row-bar{grid-column:1 / -1;height:.55rem;margin-top:.2rem}#hud #jobs-count{min-height:6.4rem;min-width:6.4rem;padding:.2rem;font-size:1.2rem}#hud #jobs-count svg{width:2.6rem;height:2.6rem}#hud #top-right{align-items:flex-start;min-width:0}#hud #purse{display:grid;grid-template-columns:1fr auto;column-gap:.8rem;align-items:center;min-width:18rem;padding:.3rem .9rem .5rem}#hud #cash-counter{font-size:1.9rem;text-align:left}#hud #xp-panel{display:contents}#hud #xp-level svg{width:3rem;height:3rem}#hud .xp-bar{grid-column:1 / -1;height:.5rem;margin-top:.1rem}#hud #perk-strip{justify-content:flex-start}#hud #btn-pause{left:auto;right:1.8rem;transform:none}#stage .phone-icon{left:auto;right:1.8rem;top:1.8rem;bottom:auto}#stage[data-input=touch] .phone-icon{left:auto;right:9.6rem;top:1.8rem}#hud #tool-bar,#stage[data-input=touch] #tool-bar{top:auto;right:auto;left:50%;bottom:1.8rem;transform:translate(-50%);flex-direction:row;gap:1rem}#hud #interaction-prompt,#hud #tutorial-hint{max-width:90%}#stage[data-input=touch] #interaction-prompt,#stage[data-input=touch] #tutorial-hint{bottom:11rem}#hud #banner{top:24%;font-size:2.2rem;max-width:94%;white-space:normal}.checklist-card{min-width:0;width:94%;max-width:94%}#checklist-columns{grid-template-columns:1fr}.draft-card-frame{width:94%;padding:1.4rem 1.2rem 1.2rem}.draft-cards,.draft-cards.draft-four{grid-template-columns:1fr;gap:1rem}.draft-card{display:grid;grid-template-columns:7rem 1fr;column-gap:1.2rem;row-gap:.3rem;align-items:center;justify-items:start;min-height:0;padding:1rem 1.2rem 1rem 1rem;text-align:left}.draft-card>*{grid-column:2}.draft-card .draft-key{grid-column:auto}.draft-card .draft-icon{grid-column:1;grid-row:1 / span 6;align-self:center;width:7rem;height:7rem}.draft-card .draft-icon svg{max-width:90%;max-height:90%}.draft-hint{display:none}.complete-card{width:96%;padding:2rem 1.8rem}.complete-body{grid-template-columns:1fr;gap:1rem}.complete-side{display:flex;flex-direction:column}.complete-body .wipe,.complete-body .final-sub,.complete-body .stats-grid,.complete-body .save-notice{grid-column:auto;grid-row:auto}.complete-body .final-sub{margin-bottom:.8rem}.complete-side .big-btn,.complete-side .menu-btn{grid-row:auto;width:100%}.training-task{max-width:calc(100% - 4rem)}.training-copy{min-width:0}.training-input{max-width:94%;white-space:normal;text-align:center}#stage #training-guide[data-action=equip] .training-input,#stage[data-input=touch] #training-guide[data-action=equip] .training-input{left:2rem;right:2rem;top:auto;bottom:14rem;width:auto;max-width:none;transform:none;font-size:2.4rem}#training-guide[data-action=equip] .training-input:after,#training-guide[data-action=equip][data-stage=trash] .training-input:after,#training-guide[data-action=equip][data-stage=wash] .training-input:after{content:"↓";left:50%;right:auto;top:calc(100% + .4rem);bottom:auto;transform:translate(-50%)}#training-guide[data-action=equip]{background:radial-gradient(ellipse at center bottom,#19231e26,#19231e99)}.phone-body{width:94%}}
