@font-face{font-family:Nashville;src:url('assets/nashville.TTF') format('truetype');font-display:swap;}
:root{color-scheme:dark;font-family:system-ui,-apple-system,sans-serif;color:#e5dfd1;background:#151410;font-synthesis:none}*{box-sizing:border-box}body{margin:0;padding:24px max(18px,env(safe-area-inset-right)) 30px max(18px,env(safe-area-inset-left))}.shell-head{max-width:1050px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:22px;border-bottom:1px solid #37342b}.eyebrow{font-size:10px;letter-spacing:2px;color:#bba985}h1{font-size:20px;font-weight:550;margin:7px 0 0}.status{font-size:11px;color:#d1bb8a;border:1px solid #655839;padding:6px 9px;border-radius:4px;white-space:nowrap}main{max-width:1050px;margin:28px auto;display:grid;grid-template-columns:minmax(320px,1fr) minmax(260px,360px);gap:40px;direction:ltr}.viewer,.inspection{direction:rtl}.viewer{display:flex;align-items:center;flex-direction:column;min-width:0}#viewport{position:relative;overflow:hidden;background:#000;box-shadow:0 0 0 1px #504938}#stage{position:absolute;left:0;top:0;width:320px;height:480px;overflow:hidden;transform-origin:0 0;background:#000;color:#3b2314;font-family:AmericanTypewriter,'American Typewriter',monospace;touch-action:manipulation;isolation:isolate}#stage *{box-sizing:content-box}#stage .sprite,#stage .stage-label,#stage .stage-input,#stage .scene-scroll{position:absolute;margin:0;padding:0;border:0;border-radius:0}#stage .sprite{display:block;background:none;color:inherit;overflow:visible}#stage .sprite img{width:100%;height:100%;display:block;pointer-events:none;user-select:none;-webkit-user-drag:none}#stage button.sprite{cursor:pointer;-webkit-tap-highlight-color:transparent}#stage button.sprite:focus-visible{outline:1px solid white;outline-offset:-2px}#stage .stage-label{display:flex;align-items:center;white-space:pre;line-height:normal;pointer-events:none;overflow:hidden}#stage .stage-label.multiline{white-space:pre-wrap;display:block}#stage .stage-input{background:transparent;color:#000;font-family:inherit;outline:none;appearance:none;-webkit-appearance:none;line-height:20px}#stage .stage-input::placeholder{color:#999;opacity:1}#stage .scene-scroll{overflow-x:auto;overflow-y:hidden;scrollbar-width:none;touch-action:pan-x;-webkit-overflow-scrolling:touch}#stage .scene-scroll::-webkit-scrollbar{display:none}#stage .scroll-content{height:100%;position:relative}#stage .confirm.reveal{animation:confirm .3s ease-in-out}@keyframes confirm{from{opacity:0;transform:scale(.1)}to{opacity:1;transform:scale(1)}}.viewer-controls{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:17px 0 0}button,select,input{font:inherit}body>header button,.viewer-controls button,.inspection button{background:#29261f;color:#e6dcc5;border:1px solid #514939;border-radius:5px;padding:9px 13px;cursor:pointer;font-size:12px}button:disabled{opacity:.45;cursor:default}button:hover{border-color:#9b8253}#start{background:#6f542d;border-color:#9b8253;color:#fff0d4}#notice{font-size:12px;line-height:1.8;color:#bbb1a0;max-width:390px;min-height:43px;margin:12px 0 0;text-align:center}.section-line{display:flex;justify-content:space-between;gap:8px;font-size:14px;color:#e7d9bc;padding-bottom:13px;border-bottom:1px solid #37342b}.small{font-size:10px;color:#958b78}.inspection p{font-size:12px;line-height:1.9;color:#aea594}.inspection details{border-bottom:1px solid #37342b;padding:15px 0}.inspection summary{font-size:13px;cursor:pointer}.inspection nav{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.inspection nav button[aria-current=true]{border-color:#c6a25c;background:#463a27}.inspection a{color:#d8bd85;text-decoration-thickness:1px;text-underline-offset:3px}.inspection li{font-size:12px;line-height:2.2}.inspection ul{padding-right:19px}.settings{padding-top:10px}.settings label{display:flex;align-items:center;justify-content:space-between;font-size:12px;margin:10px 0}.settings input,.settings select{background:#24221c;border:1px solid #514939;color:#e6dcc5;border-radius:3px;padding:6px;width:110px}pre{font-size:10px;line-height:1.6;white-space:pre-wrap;word-break:break-word;direction:ltr;color:#c5bba7}#stage .training-world{position:absolute;left:0;top:0;width:1000px;height:1000px;transform-origin:0 0;will-change:transform}#stage .world-texture{position:absolute;left:0;top:0;width:1000px;height:1000px;overflow:hidden}#stage .world-texture img{width:auto;height:auto;position:absolute;left:0;top:0;max-width:none}#stage .target{position:absolute;width:73px;height:143px}#stage .wardrobe{overflow-y:auto;overflow-x:hidden;touch-action:pan-y;scrollbar-width:none}#stage .wardrobe::-webkit-scrollbar{display:none}@media(max-width:760px){body{padding-top:max(14px,env(safe-area-inset-top))}.shell-head{padding-bottom:14px}h1{font-size:16px}.eyebrow{font-size:9px}main{display:flex;flex-direction:column;gap:25px;margin-top:20px}.viewer{width:100%}.inspection{width:100%;max-width:460px;align-self:center}.status{font-size:10px}#notice{max-width:100%}}[hidden]{display:none!important}
.auth-gate,.online-panel,.action-panel{box-sizing:border-box;width:100%;max-width:420px;padding:14px;margin-top:14px;border:1px solid #514939;border-radius:5px;background:#211f19}.auth-gate h2,.online-panel h2,.action-panel h2{font-size:14px;margin:0 0 10px}.auth-gate p,.online-panel p,.action-panel p{font-size:11px;line-height:1.8;color:#bcb19d;margin-bottom:0}.auth-gate button,.online-panel button,.action-panel button,.admin-main button{background:#433820;border:1px solid #83704d;color:#f0dfb9;padding:8px 12px;border-radius:4px;font-size:12px;cursor:pointer}.online-panel input,.admin-main input{background:#151410;border:1px solid #514939;color:#e8dec8;padding:8px;max-width:160px;margin:6px 0}.online-panel a{color:#d8bd85}.online-panel ol{font-size:12px;max-height:180px;overflow:auto;padding-right:20px}.online-panel div{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.online-panel #room-chat{display:block}.auth-gate{order:-1;margin:0 0 15px}#stage .first-person-gun{position:absolute;pointer-events:none;user-select:none}#stage .original-hud img{user-select:none;-webkit-user-drag:none}#stage .original-hud{pointer-events:none;touch-action:none}#stage:has(.original-hud){touch-action:none}.admin-main{display:block;direction:rtl;max-width:1000px}.admin-main p{line-height:1.9;font-size:13px}.admin-main section{padding:18px 0;border-top:1px solid #514939}.admin-card{border:1px solid #514939;padding:12px;margin:10px 0}.admin-card input{max-width:300px;width:100%;margin-left:10px}

#stage.training-active{touch-action:none}#stage .original-hit-score{will-change:transform,opacity}#stage .target{transform-origin:50% 100%;will-change:transform}.status{white-space:normal}#render-status{max-width:390px;text-align:center}
#stage .original-shop-popup{position:absolute;z-index:30;color:rgb(126,74,20);font-family:AmericanTypewriter-Bold,AmericanTypewriter,monospace;overflow:visible;animation:popup-in .1s ease-in-out}#stage .original-popup-background{box-sizing:border-box;border-style:solid;border-color:transparent;border-width:100px 31px 375px 32px;border-image-source:url('assets/room-popup-background.png');border-image-slice:100 31 375 32 fill;border-image-width:100px 31px 375px 32px;pointer-events:none}#stage .original-popup-description{overflow-y:auto;overflow-x:hidden;scrollbar-width:none;touch-action:pan-y}#stage .original-popup-description img{position:absolute;pointer-events:none}#stage .original-popup-copy{display:flex;flex-direction:column;gap:10px}#stage .original-popup-quantity{background:url('assets/room-popup-quantity-mark.png') center/100% 100% no-repeat;color:rgb(131,132,140);font:13px Arial;text-align:center;line-height:31px}#stage .original-popup-notes{font-size:12px;font-weight:bold}#stage .original-popup-button{border:0;margin:0;padding:0;background-color:transparent;background-repeat:no-repeat;background-size:100% 100%;color:rgb(86,75,28);font:700 19px AmericanTypewriter-Bold,AmericanTypewriter,monospace;cursor:pointer;text-align:center}#stage .original-popup-button[data-node=native-close]{font-size:20px}#stage .original-popup-button.original-buy-button{display:flex;align-items:center;justify-content:flex-start;gap:5px;direction:ltr;box-sizing:border-box;padding-left:38px;padding-right:10px}#stage .original-popup-button img{width:auto;height:auto;max-height:38px}#stage .original-popup-button:disabled{opacity:.45}#stage .original-shop-popup.closing{animation:popup-out .3s ease-in-out forwards;pointer-events:none}@keyframes popup-in{from{opacity:0}to{opacity:1}}@keyframes popup-out{from{transform:translateX(0)}to{transform:translateX(48px)}}

#stage .original-popup-button[data-node=native-use]{color:rgb(68,59,22)}

#stage .wampum-scroll{overflow-y:auto;overflow-x:hidden;touch-action:pan-y;scrollbar-width:none;background:url('assets/wampum-bg.jpg') left top/320px 480px repeat-y;color:rgb(75,52,37)}#stage .wampum-package,#stage .wampum-back{border:0;border-radius:0;padding:0;background-color:transparent;background-size:100% 100%;color:rgb(60,35,20);cursor:pointer}#stage .wampum-package>div{display:flex;align-items:center;justify-content:flex-end;pointer-events:none}#stage .wampum-back{font:700 17px AmericanTypewriter,serif}

/* Default player view. Retained diagnostics are opt-in through ?inspect=1. */
html:has(body.game-only),body.game-only{margin:0;padding:0;width:100%;height:100%;overflow:hidden;background:#000}
body.game-only>.shell-head,body.game-only .inspection,body.game-only .viewer>:not(#viewport){display:none!important}
body.game-only main{display:block;position:fixed;inset:0;margin:0;max-width:none}
body.game-only .viewer{display:block;position:absolute;left:env(safe-area-inset-left);right:env(safe-area-inset-right);top:env(safe-area-inset-top);height:calc(100dvh - env(safe-area-inset-top) - env(safe-area-inset-bottom));width:auto;max-width:none}
body.game-only #viewport{width:100%!important;height:100%!important;box-shadow:none;background:#000}
#stage .tap-to-begin{position:absolute;inset:0;z-index:20;border:0;padding:0;background:transparent;color:#f2dfaa;cursor:pointer}
#stage .tap-to-begin span{position:absolute;left:0;top:408px;width:320px;font:700 14px Arial;text-align:center;text-shadow:0 1px 2px #000}

body.game-only #stage[data-screen=signin]{background-image:url('assets/Default.png');background-size:320px 480px}
