:root{font-family:Instrument Sans Variable,sans-serif;color:#eeeaf8;background:#080613;font-synthesis:none;--violet:#b39af7;--cyan:#8ee5ee;--muted:#aaa5be;--surface:#151126;--line:#39304e;color-scheme:dark}*{box-sizing:border-box}body{margin:0}button,a,input{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button{color:inherit;cursor:pointer}a{color:#c6b2ff;text-underline-offset:4px}button:disabled{cursor:default;opacity:.4}button:focus-visible,a:focus-visible,input:focus-visible,#game-frame:focus-visible{outline:3px solid #b6f1f3;outline-offset:4px}button{border:0}button,a{touch-action:manipulation}button:hover{filter:brightness(1.12)}[hidden]{display:none!important}.skip-link{position:fixed;top:-80px;left:12px;z-index:1000;background:#ece6ff;color:#140d29;padding:14px}.skip-link:focus{top:10px}.site-header{height:84px;display:flex;align-items:center;gap:28px;padding:0 32px;background:#0d0a1cee;border-bottom:1px solid #30283d;position:relative;z-index:40}.brand{display:flex;align-items:center;gap:13px;color:#f4efff;text-decoration:none;flex-shrink:0}.brand-mark{font:700 19px Space Grotesk Variable,sans-serif;width:43px;height:44px;border:1px solid #66527d;border-radius:11px;display:grid;place-items:center;position:relative;background:linear-gradient(145deg,#2b1d45,#151026)}.brand-mark span{font:8px JetBrains Mono Variable,monospace;position:absolute;bottom:2px;right:4px;color:#9ee1e8}.brand-name{font:600 13px Space Grotesk Variable,sans-serif;letter-spacing:1.6px}.brand-name small{display:block;font:9px JetBrains Mono Variable,monospace;color:#9b91ae;letter-spacing:1.5px;margin-top:6px}.main-nav{display:flex;align-items:center;gap:7px;margin-left:auto}.main-nav button,.sound-toggle{background:transparent;padding:13px 15px;font-size:14px;min-height:44px;border-radius:8px}.main-nav button:hover{background:#211a35}.main-nav .read-button{border:1px solid #4a3c64;margin-left:8px}.read-button span{color:var(--violet);margin-left:12px}.header-actions{display:flex;align-items:center;gap:6px;border-left:1px solid #372c47;padding-left:18px}.sound-toggle{color:#c6b5e5;font-size:20px;display:flex;gap:9px;align-items:center}.sound-toggle span{font-size:12px;white-space:nowrap}.icon-button,.help-button{background:transparent;border:1px solid #4e4164;border-radius:9px;width:42px;min-height:44px;font-size:23px}#game-frame{height:calc(100dvh - 172px);min-height:390px;max-height:1100px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 10%,#38335f,#101023 75%);outline-offset:-4px;isolation:isolate}#game-canvas{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}#game-canvas canvas{display:block;max-width:100%;max-height:100%;outline:none}.scene-heading{position:absolute;left:35px;top:25px;max-width:450px;pointer-events:none;text-shadow:0 2px 12px #040312,0 1px 3px #040312;z-index:10}.eyebrow{font:10px/1.5 JetBrains Mono Variable,monospace;letter-spacing:2px;color:#b9a5db}.scene-heading .eyebrow{color:#ddd0ff}.scene-heading h1{font:500 clamp(24px,2.6vw,36px)/1.12 "Space Grotesk Variable",sans-serif;letter-spacing:-1px;margin:9px 0}.scene-heading p{font-size:13px;color:#eee7fa;margin:0}.scene-stats{position:absolute;right:30px;top:31px;display:flex;gap:12px;align-items:center;background:#0c091dd9;border:1px solid #6e5e864d;border-radius:30px;padding:10px 16px;font:11px JetBrains Mono Variable,monospace;color:#dfd8eb;z-index:10;pointer-events:none}.live-dot{width:6px;height:6px;border-radius:50%;background:#9ce5c7;box-shadow:0 0 10px #9ce5c755}.stat-separator{height:14px;width:1px;background:#6a5b82}.welcome-card{position:absolute;top:22%;left:6%;width:370px;border:1px solid #8d74ad66;background:linear-gradient(135deg,#151029ef,#17162bcc);backdrop-filter:blur(15px);padding:27px 30px 22px;border-radius:16px;box-shadow:0 20px 70px #06030f77;z-index:12;transition:opacity .3s,transform .3s}.welcome-card h2{font:500 29px/1.2 Space Grotesk Variable,sans-serif;margin:13px 0;letter-spacing:-.8px}.welcome-card p{font-size:14px;line-height:1.7;color:#c6bdd5}.welcome-card button{background:none;color:#b9f1f6;border-top:1px solid #89739b44;padding:15px 0 0;width:100%;text-align:left;font-size:13px}.welcome-card button span{float:right}.welcome-card.dismissed{opacity:0;transform:translateY(10px);pointer-events:none}.loading-overlay{position:absolute;inset:0;z-index:30;background:radial-gradient(ellipse at 50% 35%,#242443,#0a0919 75%);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:28px}.loader-orbit{font-size:65px;color:#bfa9ed;animation:rotate 6s linear infinite}.loading-overlay h2{font:500 26px Space Grotesk Variable,sans-serif}.loading-overlay p{font-size:14px;color:#b7adc9}.loading-track{width:240px;max-width:80%;height:3px;background:#352844;margin:15px 0 25px}.loading-track span{display:block;height:100%;width:0;background:linear-gradient(90deg,#9a7ddd,#8ce0e7);transition:width .15s}.loading-read{background:none;color:#d3c3ef;padding:12px}.loading-overlay.failed h2{font-size:22px}.banter{position:absolute;top:32%;left:50%;transform:translate(-50%);background:#151027f5;border:1px solid #e5be7a8c;border-radius:12px 12px 12px 0;padding:12px 19px;max-width:min(440px,85%);box-shadow:0 8px 30px #06030f80;pointer-events:none;z-index:15}.banter span{font:9px JetBrains Mono Variable,monospace;letter-spacing:2px;color:#f2bf79}.banter p{font-size:16px;margin:5px 0 0}.interaction{position:absolute;bottom:88px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:13px;max-width:90%;min-width:265px;border:1px solid #b2edf280;border-radius:12px;padding:13px 20px;background:#0b1023ed;box-shadow:0 10px 30px #05031280;text-align:left;z-index:20}.interaction strong{display:block;font:500 14px Space Grotesk Variable,sans-serif}.interaction small{display:block;font-size:11px;color:#acbad0;margin-top:4px}.interaction-arrow{margin-left:auto;color:#9feaf0}.keycap,kbd{background:#ddd4ee15;border:1px solid #a799bd66;border-bottom-width:2px;display:inline-grid;place-items:center;border-radius:5px;min-width:23px;padding:3px 6px;font:11px JetBrains Mono Variable,monospace;color:#eae0fc}.keycap{width:29px;height:30px}.world-progress{height:2px;background:#ffffff0a;position:absolute;bottom:0;left:0;right:0}.world-progress span{display:block;width:0;height:100%;background:#a88bdf;transition:width .2s}.keyboard-guide{position:absolute;bottom:24px;left:50%;transform:translate(-50%);display:flex;gap:20px;align-items:center;white-space:nowrap;color:#f4edfc;font:9px JetBrains Mono Variable,monospace;letter-spacing:.5px;background:#0b091acb;border:1px solid #78678f33;border-radius:8px;padding:9px 14px;z-index:12}.keyboard-guide>span{display:flex;align-items:center;gap:5px}.keyboard-guide kbd{font-size:9px}.game-controls{position:absolute;bottom:18px;left:22px;right:22px;display:flex;justify-content:space-between;pointer-events:none;z-index:18}.movement-controls,.combat-controls{display:flex;gap:8px;pointer-events:auto}.game-controls button{background:#100d27cb;border:1px solid #b6a0d266;border-radius:12px;width:49px;height:51px;touch-action:none;user-select:none;font-size:24px;box-shadow:0 3px 12px #0004}.game-controls button.held{background:#674294bb;border-color:#c5f6fa}.game-controls button small{display:block;font:7px JetBrains Mono Variable,monospace;letter-spacing:.5px;color:#c3b8d5}.game-controls button span{line-height:23px;display:block}.combat-controls button:last-child{border-color:#b89b6680}.game-controls{display:none}.journey-bar{height:88px;display:flex;gap:20px;align-items:center;padding:10px 25px;border-top:1px solid #372c48;background:#100c20}.journey-caption{flex-shrink:0;width:175px}.journey-caption .eyebrow{font-size:9px;color:#a495bd}.journey-caption small{display:block;color:#81788f;font-size:10px;line-height:1.5;margin-top:5px}.journey-bar nav{display:flex;gap:5px;flex:1;min-width:0;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#64527c transparent;padding:3px}.level-button{min-width:115px;flex:1;border:1px solid transparent;background:transparent;display:flex;gap:9px;align-items:center;padding:10px;border-radius:9px;min-height:52px;transition:background .15s}.level-button .level-index{font:11px JetBrains Mono Variable,monospace;color:#9b83c4;background:#241b37;border-radius:7px;min-width:27px;height:29px;display:grid;place-items:center}.level-button strong{font:500 11px Space Grotesk Variable,sans-serif;display:block;white-space:nowrap}.level-button small{display:block;color:#8c809e;font-size:9px;margin-top:4px;white-space:nowrap}.level-button[aria-current=true]{background:#271c3c;border-color:#6b4c93}.level-button[aria-current=true] .level-index{background:#8b5ccb;color:#fff}.level-button.complete .level-index{color:#a9f4cb}.level-button.hard{border-left:1px solid #67513566}.level-button.hard .level-index{color:#edc47f}.help-button{flex-shrink:0;font:17px Space Grotesk Variable,sans-serif;width:34px;height:38px;min-height:38px}dialog{color:#eeeaf8;background:linear-gradient(135deg,#1c1530,#0f0d1e);border:1px solid #6a5488;border-radius:20px;box-shadow:0 35px 110px #0009;padding:30px;max-height:88dvh;scrollbar-color:#6e568a transparent}dialog::backdrop{background:#040310c9;backdrop-filter:blur(8px)}.content-dialog{width:min(860px,calc(100% - 32px));padding:30px 38px 36px}.dialog-top{display:flex;align-items:center;gap:18px;justify-content:space-between;padding-bottom:22px;border-bottom:1px solid #41334e;margin-bottom:25px}.close-button{height:44px;width:44px;border:1px solid #5e4d71;border-radius:10px;background:#251a36;font-size:28px;line-height:1;flex-shrink:0}.content-dialog h2,.read-view h1{font:500 clamp(28px,4vw,42px)/1.13 "Space Grotesk Variable",sans-serif;letter-spacing:-1.2px;margin:12px 0 16px}.content-dialog p,.read-view p{color:#c7bed4;font-size:16px;line-height:1.8}.case-lead{font-size:18px!important;color:#e3dced!important;line-height:1.65!important}.case-meta{font:10px/1.7 JetBrains Mono Variable,monospace;letter-spacing:.6px;color:#ad94d1}.case-tags{display:flex;flex-wrap:wrap;gap:7px;margin:22px 0 28px}.case-tags span{border:1px solid #5d4976;border-radius:25px;padding:6px 10px;font-size:11px;color:#c8b9dd}.case-section{border-top:1px solid #3c2e4c;padding-top:18px;margin-top:23px}.case-section h3,.read-view h2{font:500 22px Space Grotesk Variable,sans-serif;color:#eee4fa;letter-spacing:-.4px;margin:5px 0 10px}.case-section p{margin:0}.panel-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.primary-button,.secondary-button{display:inline-flex;align-items:center;justify-content:center;border-radius:9px;padding:13px 18px;min-height:46px;font-size:13px;text-decoration:none;background:#8450cd;color:#fff;border:1px solid #b089e6}.secondary-button{background:#251a36;border-color:#69517f;color:#e3d4fa}.project-card,.skill-card{padding:22px;border:1px solid #4c3a61;border-radius:13px;margin:14px 0;background:#23193066}.project-card h3,.skill-card h3{font:500 23px Space Grotesk Variable,sans-serif;margin:5px 0}.project-card p,.skill-card p{font-size:14px}.project-card a{font-size:13px}.skill-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.skill-grid .skill-card{margin:0}.skill-card h3{font-size:18px}.contact-links{display:grid;gap:14px;margin-top:25px}.contact-links a{padding:18px 20px;border:1px solid #5c476f;border-radius:12px;text-decoration:none;background:#21172f;overflow-wrap:anywhere}.contact-links small{display:block;font:10px JetBrains Mono Variable,monospace;color:#a28fb9;margin-bottom:8px}.settings-dialog{width:390px;max-width:calc(100% - 24px)}.settings-dialog h2{font:500 27px Space Grotesk Variable,sans-serif;letter-spacing:-.7px}.settings-note{font-size:13px;color:#a89bb8}.slider-label{display:flex;justify-content:space-between;font-size:14px;margin:26px 0 10px}.slider-label output{font:11px JetBrains Mono Variable,monospace;color:#bea5df}input[type=range]{width:100%;height:24px;accent-color:#b18ae6;cursor:pointer}.check-label{display:flex;align-items:center;gap:11px;margin:19px 0;font-size:13px}.check-label input{accent-color:#ab7cdb;width:18px;height:18px}.settings-dialog .primary-button{width:100%;margin:15px 0}.track-credit{font:9px/1.7 JetBrains Mono Variable,monospace;color:#bcacd0;letter-spacing:.4px;border-top:1px solid #46314f;padding-top:18px}.settings-footnote{font-size:11px;color:#9b8ea9;line-height:1.8}.toast{position:fixed;bottom:105px;left:50%;transform:translate(-50%);background:#21172ff5;border:1px solid #af8fd3;border-radius:12px;box-shadow:0 12px 35px #0008;padding:15px 22px;max-width:min(580px,92%);color:#efe6ff;font-size:13px;line-height:1.6;text-align:center;z-index:100;pointer-events:none}.read-view{max-width:980px;margin:0 auto;padding:65px 30px 90px}.read-view .read-intro{padding-bottom:35px;border-bottom:1px solid #43334f}.read-view section{margin:42px 0}.read-view .read-case{padding-top:30px;border-top:1px solid #443250}.read-view .read-actions{display:flex;gap:12px;flex-wrap:wrap;margin:22px 0}.read-view ul{padding-left:21px;line-height:1.9;color:#c8bdd4}.read-footer{border-top:1px solid #42304f;margin-top:50px;padding-top:20px;font-size:12px;color:#9786aa}.read-mode .site-header{position:sticky;top:0}.read-mode #play-section{position:fixed;left:-200vw;top:0;width:100vw;visibility:hidden;pointer-events:none}.noscript-note{padding:20px 30px;font-size:14px}.print-only{display:none}@keyframes rotate{to{transform:rotate(360deg)}}@media(min-width:1800px){.level-button{min-width:145px}.journey-bar{padding-left:40px;padding-right:40px}.scene-heading{left:45px;top:35px}}@media(max-width:1200px){.journey-caption{display:none}.journey-bar{gap:10px}.brand-name{font-size:11px}.site-header{padding:0 20px;gap:13px}.main-nav button{padding:12px 10px}.keyboard-guide{gap:12px}.keyboard-guide .gun-guide{display:none}}@media(pointer:coarse){.game-controls{display:flex}.keyboard-guide{display:none}.interaction{bottom:90px}}@media(max-width:760px){.site-header{height:72px;padding:0 12px;gap:6px}.brand{gap:8px}.brand-name{display:none}.brand-mark{width:36px;height:38px;font-size:16px}.main-nav{gap:0;margin-left:auto}.main-nav button{font-size:12px;padding:12px 10px;min-height:44px}.main-nav .read-button{margin-left:2px;padding:10px}.read-button span{display:none}.header-actions{padding-left:6px;gap:0}.sound-toggle{padding:8px;font-size:21px}.sound-toggle span{display:none}.icon-button{width:34px;font-size:21px;border:0}.scene-heading{left:18px;top:18px;max-width:70%}.scene-heading h1{font-size:25px}.scene-heading p{font-size:11px;max-width:260px;line-height:1.5}.scene-heading .eyebrow{font-size:8px;letter-spacing:1.4px}.scene-stats{right:16px;top:auto;bottom:81px;padding:7px 10px;font-size:8px;gap:8px}.scene-stats .live-dot,.scene-stats .stat-separator{display:none}#game-frame{height:calc(100dvh - 154px);min-height:350px}.journey-bar{height:82px;padding:8px;gap:3px}.level-button{min-width:118px;padding:9px}.level-button strong{font-size:10px}.help-button{width:32px;min-width:32px}.game-controls{display:flex;left:14px;right:14px;bottom:15px}.game-controls button{width:46px;height:49px}.combat-controls,.movement-controls{gap:6px}.keyboard-guide{display:none}.interaction{bottom:145px;min-width:235px;padding:11px 14px}.interaction strong{font-size:12px}.welcome-card{top:25%;left:20px;width:calc(100% - 40px);max-width:325px;padding:22px}.welcome-card h2{font-size:26px}.welcome-card p{font-size:13px}.welcome-card .eyebrow{font-size:8px}.banter{top:30%;max-width:88%;padding:10px 14px}.banter p{font-size:13px}.content-dialog{padding:22px;max-height:90dvh}.content-dialog p{font-size:14px}.content-dialog h2{font-size:30px}.dialog-top .eyebrow{font-size:8px}.skill-grid{grid-template-columns:1fr}.read-view{padding:35px 22px 60px}.read-view p{font-size:15px}.toast{bottom:170px;font-size:11px;padding:12px 16px}}@media(max-width:380px){.site-header{padding:0 7px}.main-nav button{padding:10px 7px;font-size:11px}.brand-mark{width:31px}.header-actions{padding-left:0}.icon-button{width:28px}.game-controls button{width:41px;height:46px}.scene-heading h1{font-size:23px}}@media(orientation:landscape)and (max-height:600px){.site-header{height:55px}.brand-mark{width:31px;height:33px}.journey-bar{height:64px}.level-button{min-height:43px;padding:6px 9px}#game-frame{height:calc(100dvh - 119px);min-height:220px}.scene-heading{top:10px;left:15px}.scene-heading h1{font-size:22px;margin:5px 0}.scene-heading p{display:none}.scene-stats{top:13px;bottom:auto;font-size:8px}.game-controls button{width:43px;height:43px}.interaction{bottom:65px;padding:8px 12px}.welcome-card{top:12%;left:4%;max-width:290px;padding:15px}.welcome-card h2{font-size:22px}.welcome-card p{font-size:11px;margin:8px 0}.welcome-card .eyebrow{font-size:7px}.welcome-card button{padding-top:10px}.banter{top:24%}.toast{bottom:80px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media print{body{background:#fff;color:#111}.site-header,.game-controls,.journey-bar,#play-section,dialog,.toast,.read-actions,.read-footer{display:none!important}.read-view{display:block!important;max-width:none;padding:0}.read-view h1,.read-view h2,.read-view h3{color:#111}.read-view p,.read-view li,.case-meta{color:#333!important;font-size:10pt}.read-view h1{font-size:25pt}.read-view h2{font-size:16pt}.read-view section{margin:18px 0}.case-tags{margin:10px 0}.case-tags span{color:#333;border-color:#aaa}.read-case,.skill-card{break-inside:avoid}.print-only{display:block}a{color:#222;text-decoration:none}.project-card,.skill-card{background:#fff;border-color:#ccc;padding:12px}.read-intro{padding-bottom:15px}.read-view .case-section{margin-top:10px;padding-top:8px}.read-view .case-section h3{font-size:12pt}.read-view .case-lead{font-size:12pt!important}}.keyboard-guide .gun-guide{display:flex;align-items:center;gap:5px;background:#332340;color:#ffdaa0;border:1px solid #d4aa6d80;border-radius:5px;padding:4px 7px;font:inherit;letter-spacing:inherit}.challenge-objective{position:absolute;top:126px;left:35px;z-index:11;max-width:min(540px,calc(100% - 70px));padding:10px 13px;border:1px solid #e8ba7377;border-radius:8px;background:#171024e8;color:#ffdda4;font:10px/1.6 JetBrains Mono Variable,monospace;pointer-events:none}#integrity{color:#ffb9a2;letter-spacing:2px}.weapon-reward{padding:10px 0;color:#8ef7ff;font-size:90px;line-height:1;text-align:center;text-shadow:0 0 30px #63dfff88}.challenge-steps{padding-left:22px;line-height:1.8}.challenge-steps li{margin-bottom:9px}@media(max-width:760px){.challenge-objective{top:125px;left:18px;max-width:calc(100% - 36px);padding:7px 10px;font-size:8px}}@media(orientation:landscape)and (max-height:600px){.challenge-objective{top:59px;left:15px;max-width:360px;font-size:8px;padding:5px 9px}}.movement-controls,.combat-controls{align-items:flex-end}.stance-controls{display:flex;flex-direction:column;gap:6px}@media(max-width:760px){.scene-stats{bottom:81px;font-size:7px;gap:5px;padding:6px 8px}}@media(orientation:landscape)and (max-height:600px){.scene-stats{bottom:auto}}.compact-actions{display:none}.level-dialog{width:min(560px,calc(100% - 24px));padding:20px}.level-dialog h2{font:500 24px Space Grotesk Variable,sans-serif;margin:6px 0 0}.level-dialog .dialog-top{margin-bottom:12px;padding-bottom:12px}.level-dialog #level-nav{display:grid;grid-template-columns:1fr 1fr;gap:6px}.level-dialog .level-button{width:100%;text-align:left;min-width:0;min-height:52px;border:1px solid #55416d}.level-dialog .panel-links{gap:8px;margin-top:15px}.level-dialog .secondary-button{padding:10px 12px;font-size:12px}body.compact-play:not(.read-mode){overflow:hidden;overscroll-behavior:none}.compact-play{--play-header:48px;--thumb-strip:90px}.compact-play .site-header{height:calc(var(--play-header) + env(safe-area-inset-top));padding:env(safe-area-inset-top) max(8px,env(safe-area-inset-right)) 0 max(8px,env(safe-area-inset-left));gap:5px}.compact-play .brand-name{display:none}.compact-play .brand-mark{width:28px;height:32px;font-size:14px;border-radius:8px}.compact-play .main-nav{margin-left:auto;gap:0}.compact-play .main-nav>[data-panel]{display:none}.compact-play .main-nav .read-button{margin:0;padding:7px;font-size:11px;min-height:40px;white-space:nowrap}.compact-play .read-button span{display:none}.compact-play .compact-actions{display:flex;align-items:center;gap:4px}.compact-play .cv-shortcut{padding:7px;min-height:40px;font-size:11px;border-radius:7px;background:#332044}.compact-play .cv-shortcut span{display:none}.compact-play #level-menu-toggle{min-height:40px;padding:7px;background:#21182f;border:1px solid #5b466f;border-radius:7px;font-size:11px;white-space:nowrap}.compact-play .header-actions{gap:0;padding-left:0;border:0}.compact-play .sound-toggle{padding:6px;font-size:20px;min-height:40px}.compact-play .sound-toggle span{display:none}.compact-play .icon-button{width:30px;min-height:40px;border:0;font-size:22px}.compact-play .journey-bar{display:none}.compact-play #game-frame{height:calc(100dvh - var(--play-header) - env(safe-area-inset-top));min-height:0;max-height:none}.compact-play #game-canvas{bottom:calc(var(--thumb-strip) + env(safe-area-inset-bottom));background:linear-gradient(#0c09201c,#0c092030),var(--district-art) center/cover no-repeat;touch-action:none}.compact-play #game-canvas canvas{max-width:none;max-height:none}.compact-play .keyboard-guide{display:none}.compact-play .game-controls{display:flex;bottom:0;left:0;right:0;height:calc(var(--thumb-strip) + env(safe-area-inset-bottom));padding:6px max(8px,env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));align-items:flex-end;background:#100b20;border-top:1px solid #63507366}.compact-play .movement-controls,.compact-play .combat-controls{gap:4px;align-items:flex-end}.compact-play .game-controls button{width:44px;height:56px;border-radius:13px;background:#211831e8;font-size:27px;box-shadow:none}.compact-play .movement-controls>button{width:48px}.compact-play .stance-controls{gap:4px}.compact-play .stance-controls button{width:40px;height:36px;font-size:22px;border-radius:9px}.compact-play .stance-controls button span{line-height:17px}.compact-play .game-controls [data-control=jump]{width:56px;background:#60408a;border-color:#bd9ee3}.compact-play .game-controls [data-control=spike]{background:#2b3451;border-color:#8bd7df}.compact-play .game-controls button small{font-size:7px;letter-spacing:0}.compact-play .game-controls button.held{background:#9260b8;border-color:#c5f6fa}.compact-play .scene-heading{top:9px;left:12px;max-width:calc(100% - 145px)}.compact-play .scene-heading .eyebrow,.compact-play .scene-heading p{display:none}.compact-play .scene-heading h1{margin:0;font-size:14px;letter-spacing:-.2px;line-height:1.4}.compact-play .scene-stats{top:8px;right:10px;bottom:auto;font-size:8px;gap:6px;padding:5px 8px}.compact-play .scene-stats .live-dot,.compact-play .scene-stats .stat-separator,.compact-play #explored-count{display:none}.compact-play .challenge-objective{top:32px;left:12px;max-width:calc(100% - 24px);padding:3px 7px;font-size:7px;line-height:1.5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:.85}.compact-play #boss-hud{top:33px;left:12px;right:12px;width:auto;max-width:460px;padding:6px 9px;border-radius:7px}.compact-play .boss-heading{font-size:11px}.compact-play .boss-healthbar{height:4px;margin:5px 0}.compact-play .boss-hud p{font-size:8px;line-height:1.35}.compact-play .boss-fight .challenge-objective{display:none}.compact-play .interaction{bottom:calc(var(--thumb-strip) + env(safe-area-inset-bottom) + 9px);min-width:0;width:auto;max-width:calc(100% - 24px);padding:8px 12px;gap:8px;border-radius:8px}.compact-play .interaction strong{font-size:11px}.compact-play .interaction small,.compact-play .interaction .keycap{display:none}.compact-play .welcome-card{top:70px;left:16px;width:calc(100% - 32px);max-width:325px;padding:17px}.compact-play .welcome-card h2{font-size:24px}.compact-play .welcome-card p{font-size:12px;margin:10px 0}.compact-play .welcome-actions{margin-top:12px}.compact-play .banter{top:auto;bottom:calc(var(--thumb-strip) + env(safe-area-inset-bottom) + 8px);left:12px;right:12px;max-width:none;transform:none;padding:5px 9px;border-radius:7px;background:#100b20db;box-shadow:none}.compact-play .banter span{display:none}.compact-play .banter p{margin:0;font-size:10px;line-height:1.4}.compact-play .toast{position:fixed;top:calc(var(--play-header) + env(safe-area-inset-top) + 59px);bottom:auto;left:50%;padding:5px 10px;border-radius:7px;max-width:calc(100% - 24px);font-size:10px;line-height:1.4;box-shadow:none}.compact-play:has(.boss-fight) .toast{top:calc(var(--play-header) + env(safe-area-inset-top) + 102px)}@media(orientation:landscape){.compact-play{--play-header:44px;--thumb-strip:60px}.compact-play .stance-controls{flex-direction:row;gap:5px}.compact-play .stance-controls button{width:44px;height:44px}.compact-play .game-controls button{width:52px;height:46px}.compact-play .movement-controls,.compact-play .combat-controls{gap:7px}.compact-play .game-controls [data-control=jump]{width:58px}.compact-play .interaction{bottom:calc(var(--thumb-strip) + env(safe-area-inset-bottom) + 5px)}.compact-play .welcome-card{top:36px;max-width:390px;padding:12px 15px}.compact-play .welcome-card .eyebrow,.compact-play .welcome-card p{display:none}.compact-play .welcome-card h2{font-size:21px;margin:0}.compact-play .welcome-actions{margin-top:9px}.compact-play .welcome-actions a,.compact-play .welcome-card .welcome-actions button{min-height:36px;padding:7px}.compact-play .toast{max-width:440px}.compact-play .banter{left:auto;right:12px;max-width:300px}}.boss-hud{position:absolute;z-index:12;top:180px;left:35px;width:min(440px,calc(100% - 70px));padding:12px 15px;border:1px solid #e7bd8099;border-radius:10px;background:#100d25f0;color:#fff2dc;pointer-events:none}.boss-heading{display:flex;justify-content:space-between;gap:12px;font:600 15px Space Grotesk Variable,sans-serif}.boss-heading strong{white-space:nowrap;font:11px JetBrains Mono Variable,monospace}.boss-healthbar{height:6px;margin:9px 0;background:#3b2949;border-radius:5px;overflow:hidden}.boss-healthbar span{display:block;height:100%;background:#ffc36e}.boss-hud p{margin:0;font:10px/1.6 JetBrains Mono Variable,monospace;color:#ffd4af}.boss-hud[data-phase=exposed]{border-color:#9bf2ca}.boss-hud[data-phase=exposed] p,.boss-hud[data-phase=defeated] p{color:#acffda}.boss-hud[data-phase=exposed] .boss-healthbar span{background:#acffda}@media(max-width:760px){.boss-hud{top:171px;left:18px;width:calc(100% - 36px);padding:9px 11px}.boss-heading{font-size:13px}.boss-hud p{font-size:8px}}@media(orientation:landscape)and (max-height:600px){.boss-hud{top:10px;left:auto;right:15px;width:300px;padding:8px 10px}.boss-heading{font-size:12px}.boss-hud p{font-size:8px}}.welcome-card{z-index:25}.compact-play .banter{inset:59px auto auto 50%;transform:translate(-50%);width:max-content;max-width:min(440px,calc(100% - 24px))}.compact-play .boss-fight .banter{display:none}.compact-play{--thumb-strip:106px}.compact-play .stance-controls button{width:44px;height:44px;font-size:18px}.compact-play .stance-controls button span{line-height:22px}.compact-play .stance-controls button small{line-height:9px}@media(orientation:landscape){.compact-play .interaction{bottom:10px;max-width:calc(100% - 440px);min-height:44px;padding:7px 10px}.compact-play .interaction>span:nth-child(2){min-width:0}.compact-play .interaction strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.compact-play .interaction-arrow{display:none}}@media(orientation:landscape){.compact-play{--thumb-strip:60px}}.welcome-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}.welcome-card .welcome-actions button,.welcome-actions a{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:44px;margin:0;border:1px solid #7f63a6;border-radius:8px;padding:10px 12px;background:#2b2040;color:#f1e8ff;font-size:12px;text-decoration:none;text-align:left}.welcome-actions a{background:#8551c7;border-color:#b694e3}.cv-shortcut{display:flex;align-items:center;justify-content:center;gap:8px;flex-shrink:0;min-height:44px;padding:10px 14px;border:1px solid #ac88d7;border-radius:9px;background:#332044;color:#f4eaff;text-decoration:none;font:500 12px Space Grotesk Variable,sans-serif;white-space:nowrap}.cv-shortcut span{color:#c8f7fa}@media(max-width:760px){.cv-shortcut{padding:10px;gap:5px;font-size:11px}.main-nav>a{font-size:11px;padding:10px 8px;min-height:44px}.welcome-actions{margin-top:12px;gap:8px}.welcome-card .welcome-actions button,.welcome-actions a{padding:9px;font-size:11px}}@media(orientation:landscape)and (max-height:600px){.welcome-actions{margin-top:8px}.welcome-card .welcome-actions button,.welcome-actions a{padding:8px;min-height:38px;font-size:11px}}.incident-hud{position:absolute;z-index:11;left:35px;top:275px;width:410px;max-width:calc(100% - 70px);padding:11px 13px;background:#141327ed;border:1px solid #73dfeb88;border-radius:10px;font:11px/1.5 JetBrains Mono Variable,monospace;color:#d4f8ff;pointer-events:none}.incident-hud strong,.incident-hud>span{display:block}.incident-hud>span{font-size:10px;margin-top:4px;color:#e2d6eb}.incident-meter{height:4px;background:#384155;margin-top:7px;border-radius:4px;overflow:hidden}.incident-meter>span{display:block;height:100%;background:#a1ffe0;width:0}.level-button.extreme{border-color:#ff7c9b88;background:#451c3544}.level-button.extreme .level-index{color:#ffbbce}.incident-play .challenge-objective{display:none}.compact-play .incident-hud{left:12px;top:111px;max-width:calc(100% - 24px);width:420px;padding:6px 9px;font-size:9px}.compact-play .incident-hud>span{font-size:8px;margin-top:2px}.compact-play .incident-meter{margin-top:4px;height:3px}.compact-play.incident-play .toast{top:auto;bottom:calc(var(--thumb-strip) + env(safe-area-inset-bottom) + 8px)}@media(orientation:landscape){.compact-play .incident-hud{top:105px;width:390px;padding:4px 8px}.compact-play .incident-hud>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}#game-frame #banter{display:block;position:absolute;inset:0 auto auto 0;transform:translate(-50%,-100%);width:max-content;max-width:min(300px,calc(100% - 16px));padding:0;border:0;border-radius:0;background:none;box-shadow:none;pointer-events:none;text-align:center;z-index:15;text-shadow:0 2px 3px #080613,1px 0 2px #080613,-1px 0 2px #080613,0 -1px 2px #080613}#game-frame #banter p{font:600 16px/1.35 Space Grotesk Variable,sans-serif;color:#fff8dd;margin:0}.compact-play #game-frame #banter{max-width:min(240px,calc(100% - 16px))}.compact-play #game-frame #banter p{font-size:12px}.read-view h1{font:500 clamp(30px,5vw,46px)/1.15 "Space Grotesk Variable",sans-serif;letter-spacing:-1.2px;margin:16px 0 22px;overflow-wrap:anywhere}.breadcrumbs{font-size:13px;color:#c7bed4;margin-bottom:32px}.breadcrumbs ol{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:0}.breadcrumbs li+li:before{content:"/";margin-right:8px;color:#a28fb9}.portfolio-links{display:flex;flex-wrap:wrap;gap:8px 20px}.portfolio-links a{display:inline-flex;align-items:center;min-height:44px}.project-card h2 a{font-size:inherit;text-decoration-thickness:1px;text-underline-offset:5px}@media(max-width:500px){.read-view{padding:32px 20px 60px}.breadcrumbs{margin-bottom:24px}.read-view h1{letter-spacing:-.7px}.read-view .project-card{padding:18px}.read-view .project-card h2{font-size:23px}.read-view .case-meta{overflow-wrap:anywhere}}#game-canvas{background:linear-gradient(#0c09201c,#0c092030),var(--district-art) center/cover no-repeat}.welcome-actions a{background:#7040ad}.game-controls button small{color:#eee5fa}.compact-play .sound-toggle{min-width:28px}.compact-play .icon-button{min-width:32px}
