:root{--ink:#1e2430;--paper:#fff8e7;--paper-2:#f3e9d2;--navy:#2b3450;--navy-2:#34406a;--navy-edge:#4e5d93;--sky:#5b8def;--blue:#3a62c2;--gold:#f7d154;--gold-2:#f7b733;--gold-hi:#ffe27a;--red:#e2574c;--red-2:#b33d36;--green:#4fae5f;--mint:#8fe3a0;--orange:#f2873a;--teal:#3bb3a0;--teal-2:#278a7b;--violet:#8d6fd1;--violet-2:#6a4fb0;--forest:#1d5a36;--white:#fff;--font-px:"Press Start 2P", ui-monospace, monospace;--font-body:"Pixelify Sans", ui-sans-serif, system-ui, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--outline-1:1px 1px 0 var(--ink), -1px -1px 0 var(--ink), 1px -1px 0 var(--ink), -1px 1px 0 var(--ink);--outline-2:2px 2px 0 var(--ink), -2px -2px 0 var(--ink), 2px -2px 0 var(--ink), -2px 2px 0 var(--ink)}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--forest);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;font-variant-ligatures:none;font-feature-settings:"liga" 0, "clig" 0}html[data-view=game] body{overscroll-behavior:none;overflow:hidden}button{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip-link{z-index:50;font:10px var(--font-px);background:var(--gold);color:var(--ink);border:3px solid var(--ink);padding:10px 12px;position:absolute;top:-60px;left:12px}.skip-link:focus{top:12px}.game{-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation;position:fixed;inset:0;overflow:hidden}.game-canvas{image-rendering:pixelated;image-rendering:crisp-edges;display:block;position:absolute;top:0;left:0}.btn{font:10px/1.4 var(--font-px);border:3px solid var(--ink);background:var(--white);color:var(--ink);box-shadow:0 4px 0 var(--ink);cursor:pointer;border-radius:6px;padding:12px 14px;text-decoration:none;transition:transform 80ms steps(2,end);display:inline-block}.btn:hover{transform:translateY(-2px)}.btn:active{box-shadow:0 2px 0 var(--ink);transform:translateY(2px)}.btn-solid{background:var(--red);color:var(--white);text-shadow:var(--outline-1)}.btn:disabled{opacity:.6;cursor:progress}.type{font:7px/1 var(--font-px);background:var(--white);color:var(--ink);border:2px solid var(--ink);text-shadow:none;border-radius:3px;margin:0 4px 4px 0;padding:4px 6px;display:inline-block}.hud{pointer-events:none;align-items:flex-start;gap:14px;display:flex;position:absolute;top:12px;left:14px;right:14px}.hud>*{pointer-events:auto}.hud-avatar{background:radial-gradient(circle at 40% 35%, #86a8ec, var(--blue));width:64px;height:64px;box-shadow:0 0 0 3px var(--ink), 0 0 0 6px var(--gold), 0 0 0 9px var(--ink);border-radius:50%;flex:none;margin:9px 0 0 9px;position:relative}.hud-avatar img{width:100%;height:100%;image-rendering:pixelated;border-radius:50%}.hud-lv{font:8px/1 var(--font-px);white-space:nowrap;background:var(--ink);color:var(--gold);border:2px solid var(--gold);border-radius:4px;padding:4px 6px;position:absolute;bottom:-12px;left:50%;transform:translate(-50%)}.hud-main,.chip{border:3px solid var(--ink);box-shadow:inset 0 0 0 2px var(--navy-edge);background:#2b3450ed;border-radius:6px}.hud-main{min-width:220px;margin-top:6px;padding:8px 12px 10px}.hud-name{font:11px/1 var(--font-px);color:var(--white);text-shadow:2px 2px 0 var(--ink);margin:0 0 8px}.hud-name span{font:15px/1 var(--font-body);color:#c9d3f5;text-shadow:none;margin-left:6px}.hud-xp{border:2px solid var(--ink);background:#1a2138;border-radius:3px;height:16px;position:relative;overflow:hidden}.hud-xp span{background:linear-gradient(var(--mint) 0 50%, var(--green) 50%);transition:width .4s steps(8,end);position:absolute;inset:0 auto 0 0}.hud-xp em{font:normal 8px/1 var(--font-px);color:var(--gold-hi);text-shadow:var(--outline-1);position:absolute;top:50%;right:6px;transform:translateY(-50%)}.hud-chips{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin:6px 0 0 auto;display:flex}.chip{font:8px/1 var(--font-px);color:var(--white);text-shadow:1px 1px 0 var(--ink);white-space:nowrap;padding:9px 11px}.chip-status{color:var(--mint)}.rail{flex-direction:column;gap:18px;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.rail-left{left:14px}.rail-right{right:14px}.rail-btn{border:3px solid var(--ink);width:52px;height:52px;box-shadow:0 4px 0 var(--ink);color:var(--ink);cursor:pointer;background:radial-gradient(circle at 35% 28%,#fff 0 9%,#e3eaff 10% 42%,#a9bceb 75%);border-radius:50%;place-items:center;padding:0;text-decoration:none;transition:transform 80ms steps(2,end);display:grid;position:relative}.rail-btn:hover{transform:translateY(-2px)}.rail-btn:active{box-shadow:0 2px 0 var(--ink);transform:translateY(2px)}.rail-btn[aria-pressed=true]{background:radial-gradient(circle at 35% 28%, #fff 0 9%, var(--gold-hi) 10% 42%, var(--gold-2) 75%)}.rail-btn-text>span:first-child{font:12px/1 var(--font-px)}.rail-label{font:7px/1 var(--font-px);color:var(--white);background:var(--ink);white-space:nowrap;border-radius:3px;padding:3px 4px;position:absolute;bottom:-11px;left:50%;transform:translate(-50%)}.tabbar{padding:0 8px calc(8px + env(safe-area-inset-bottom));pointer-events:none;position:absolute;bottom:0;left:0;right:0}.tabbar-inner{pointer-events:auto;background:var(--navy);border:3px solid var(--ink);max-width:660px;box-shadow:inset 0 3px 0 var(--navy-edge), 0 6px 0 #00000040;border-radius:12px 12px 6px 6px;grid-template-columns:repeat(5,1fr);align-items:end;gap:6px;margin:0 auto;padding:8px;list-style:none;display:grid}.tabbar-inner li{justify-content:center;display:flex}.tab{border:3px solid var(--ink);width:100%;color:var(--white);box-shadow:inset 0 2px 0 #ffffff59, 0 3px 0 var(--ink);cursor:pointer;border-radius:7px;flex-direction:column;align-items:center;gap:5px;padding:7px 2px 6px;transition:transform 80ms steps(2,end);display:flex}li:first-child .tab{background:linear-gradient(var(--sky), var(--blue))}li:nth-child(2) .tab{background:linear-gradient(var(--teal), var(--teal-2))}li:nth-child(4) .tab{background:linear-gradient(var(--violet), var(--violet-2))}li:nth-child(5) .tab{background:linear-gradient(var(--red), var(--red-2))}.tab:hover{transform:translateY(-2px)}.tab.is-active{transform:translateY(-5px);background:linear-gradient(var(--gold-hi), var(--gold-2))!important}.tab-icon{filter:drop-shadow(1px 1px #00000059);place-items:center;display:grid}.tab-label{font:8px/1 var(--font-px);text-shadow:var(--outline-1);white-space:nowrap}.tab-big{width:96px;height:96px;box-shadow:0 0 0 4px var(--gold-hi), 0 0 0 7px var(--ink), 0 6px 0 5px var(--ink);border-radius:50%;justify-content:center;margin-top:-44px;background:radial-gradient(circle at 40% 30%, #ffd27a 0 14%, var(--orange) 46%, #c9561f)!important}.tab-big.is-active{background:radial-gradient(circle at 40% 30%, #fff6c9 0 14%, var(--gold-hi) 46%, var(--gold-2))!important}.tab-big .tab-label{font-size:7px}.tabbar-keys{font:8px/1 var(--font-px);color:var(--white);text-shadow:var(--outline-1);opacity:.85;position:absolute;bottom:calc(100% + 8px);right:18px}.touchpad{left:0;right:0;bottom:calc(120px + env(safe-area-inset-bottom));pointer-events:none;justify-content:space-between;align-items:flex-end;padding:0 18px;display:flex;position:absolute}.dpad{pointer-events:auto;touch-action:none;opacity:.88;width:132px;height:132px;position:relative}.dpad span{background:var(--navy);border:3px solid var(--ink);box-shadow:inset 0 3px 0 var(--navy-edge);position:absolute}.dpad:after{content:"";background:var(--navy);width:44px;height:44px;position:absolute;top:44px;left:44px}.dpad-up{border-radius:6px 6px 0 0;width:44px;height:50px;top:0;left:44px}.dpad-down{border-radius:0 0 6px 6px;width:44px;height:50px;bottom:0;left:44px}.dpad-left{border-radius:6px 0 0 6px;width:50px;height:44px;top:44px;left:0}.dpad-right{border-radius:0 6px 6px 0;width:50px;height:44px;top:44px;right:0}.dpad[data-dir=up] .dpad-up,.dpad[data-dir=down] .dpad-down,.dpad[data-dir=left] .dpad-left,.dpad[data-dir=right] .dpad-right{background:var(--sky)}.ab{pointer-events:auto;align-items:flex-end;gap:14px;display:flex}.ab button{border:3px solid var(--ink);width:62px;height:62px;box-shadow:0 4px 0 var(--ink), inset 0 3px 0 #ffffff59;font:14px/1 var(--font-px);color:var(--white);text-shadow:var(--outline-1);touch-action:none;opacity:.92;border-radius:50%}.ab button:active{box-shadow:0 2px 0 var(--ink);transform:translateY(2px)}.ab-a{background:var(--red);margin-bottom:26px}.ab-b{background:var(--blue)}.dialogue{left:50%;bottom:calc(140px + env(safe-area-inset-bottom));flex-direction:column;align-items:flex-end;gap:8px;width:min(760px,100% - 24px);display:flex;position:absolute;transform:translate(-50%)}.game.has-touch .dialogue{bottom:calc(270px + env(safe-area-inset-bottom))}.dialogue-box{background:var(--white);border:4px solid var(--ink);width:100%;min-height:100px;box-shadow:inset 0 0 0 3px var(--white), inset 0 0 0 6px #7fb6e8, 0 6px 0 #0000004d;cursor:pointer;border-radius:8px;padding:18px 26px 20px;position:relative}.dialogue-text{font:21px/1.45 var(--font-body);margin:0}.dialogue-next{color:var(--red);font-size:14px;animation:.7s steps(2,end) infinite bob;position:absolute;bottom:10px;right:18px}.dialogue-choices{background:var(--white);border:4px solid var(--ink);box-shadow:inset 0 0 0 3px var(--white), inset 0 0 0 6px #7fb6e8;border-radius:8px;order:-1;margin:0;padding:8px 6px;list-style:none}.dialogue-choices button{text-align:left;width:100%;font:11px/1 var(--font-px);cursor:pointer;background:0 0;border:0;padding:10px 16px 10px 28px;display:block;position:relative}.dialogue-choices button.is-active:before{left:10px}.toast{max-width:calc(100% - 24px);font:9px/1.5 var(--font-px);text-align:center;color:var(--ink);background:linear-gradient(var(--gold-hi), var(--gold-2));border:3px solid var(--ink);box-shadow:0 4px 0 var(--ink);border-radius:6px;margin:0;padding:10px 14px;animation:.24s steps(4,end) drop-in;position:absolute;top:104px;left:50%;transform:translate(-50%)}.panel-backdrop{padding:100px 80px calc(132px + env(safe-area-inset-bottom));background:#0e142880;justify-content:center;display:flex;position:absolute;inset:0}.panel{background:var(--paper);border:4px solid var(--ink);width:100%;max-width:900px;max-height:100%;box-shadow:inset 0 0 0 3px var(--white), 0 8px 0 #00000059;-webkit-user-select:text;user-select:text;border-radius:10px;outline:none;flex-direction:column;animation:.18s steps(4,end) pop-in;display:flex;overflow:hidden}.panel-head{background:linear-gradient(var(--sky), var(--blue));border-bottom:4px solid var(--ink);color:var(--white);align-items:center;gap:10px;padding:10px 12px;display:flex}.panel-head h2{font:14px/1 var(--font-px);text-shadow:2px 2px 0 var(--ink);flex:1;margin:0}.panel-keys{font:8px/1 var(--font-px);opacity:.9}.panel-close{width:34px;height:34px;font:12px/1 var(--font-px);color:var(--white);background:var(--red);border:3px solid var(--ink);box-shadow:0 3px 0 var(--ink);cursor:pointer;border-radius:5px;place-items:center;padding:0;display:grid}.panel-body{padding:20px;font-size:18px;line-height:1.45;overflow:auto}.panel-body h3,.panel-body h4{font-family:var(--font-px);font-weight:400}.panel-hint{font:8px/1.4 var(--font-px);color:#7a6f5a;margin:14px 0 0}.trainer{justify-items:start;gap:18px;display:grid}.trainer-card{border:3px solid var(--ink);background:linear-gradient(135deg,#dce8ff,#f6e3ff);border-radius:10px;grid-template-columns:136px 1fr;gap:18px;width:100%;padding:16px;display:grid;box-shadow:inset 0 0 0 3px #ffffffb3}.trainer-portrait{background:radial-gradient(circle at 40% 35%, #86a8ec, var(--blue));border:3px solid var(--ink);border-radius:8px;width:136px;height:136px;position:relative;overflow:hidden}.trainer-portrait img{width:100%;height:100%;image-rendering:pixelated}.trainer-glyph{color:var(--white);text-shadow:var(--outline-2);font:900 26px/1 Noto Sans JP,sans-serif;position:absolute;bottom:4px;right:6px}.trainer-facts{align-content:center;gap:8px;margin:0;display:grid}.trainer-facts div{border-bottom:2px dashed #1e243033;grid-template-columns:84px 1fr;align-items:baseline;gap:8px;padding-bottom:6px;display:grid}.trainer-facts dt{font:8px/1 var(--font-px);color:var(--blue)}.trainer-facts dd{margin:0;font-size:19px}.trainer-status{color:#2f8045}.trainer-bio{max-width:68ch;margin:0}.trainer-badges h3{margin:0 0 10px;font-size:9px}.trainer-badges ul{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.trainer-badges li{border:3px solid var(--ink);color:#8e8775;width:40px;height:40px;font:12px/1 var(--font-px);background:#d6d2c4;border-radius:50%;place-items:center;display:grid}.trainer-badges li.is-got{background:radial-gradient(circle at 40% 35%, var(--gold-hi), var(--gold-2));color:var(--ink)}.projects{grid-template-columns:minmax(220px,290px) 1fr;align-items:start;gap:18px;display:grid}.party{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.party-slot{text-align:left;width:100%;color:var(--white);border:3px solid var(--ink);box-shadow:inset 0 2px 0 #ffffff59, 0 3px 0 var(--ink);cursor:pointer;background:linear-gradient(#6fc7b6,#3e9e8c);border-radius:8px 22px 22px 8px;align-items:center;gap:10px;padding:8px 12px 8px 8px;display:flex}.party-slot.is-active{background:linear-gradient(var(--gold-hi), var(--gold-2));color:var(--ink)}.party-text{gap:4px;min-width:0;display:grid}.party-name{text-shadow:1px 1px #1e243099;text-overflow:ellipsis;white-space:nowrap;font-size:17px;line-height:1.1;overflow:hidden}.party-slot.is-active .party-name{text-shadow:none}.party-types .type{margin-bottom:0}.mono{border:3px solid var(--ink);font:9px/1 var(--font-px);color:var(--white);text-shadow:var(--outline-1);border-radius:7px;flex:none;place-items:center;display:inline-grid;overflow:hidden}.mono img{object-fit:contain;width:76%;height:76%}.dex{background:var(--white);border:3px solid var(--ink);border-radius:10px;padding:16px 18px 18px}.dex-head{align-items:center;gap:14px;display:flex}.dex-no{font:8px/1 var(--font-px);color:var(--blue);margin:0 0 6px}.dex h3{margin:0;font-size:12px;line-height:1.6}.dex-sub{color:#5a5240;margin:4px 0 0}.dex-desc{margin:14px 0 0}.dex h4{color:var(--blue);margin:16px 0 8px;font-size:8px}.dex-moves{margin:0;padding-left:22px}.dex-moves li::marker{content:"▸  ";color:var(--red)}.dex-tech{margin:0 0 16px}.dex-private{font:8px/1.5 var(--font-px);color:#7a6f5a;margin:0}.bag-pockets{flex-wrap:wrap;gap:6px;margin-bottom:14px;display:flex}.bag-pockets button{font:8px/1 var(--font-px);color:var(--white);background:var(--navy);border:3px solid var(--ink);box-shadow:0 3px 0 var(--ink);cursor:pointer;border-radius:6px;padding:9px 10px}.bag-pockets button.is-active{background:linear-gradient(var(--gold-hi), var(--gold-2));color:var(--ink)}.bag-main{grid-template-columns:1fr 1fr;align-items:start;gap:16px;display:grid}.bag-items{background:var(--white);border:3px solid var(--ink);border-radius:8px;max-height:min(340px,46vh);margin:0;padding:8px;list-style:none;overflow-y:auto}.bag-items button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:4px;align-items:center;gap:8px;width:100%;padding:7px 8px;font-size:19px;display:flex}.bag-items button.is-active{background:#fdf0c4}.bag-cursor{visibility:hidden;color:var(--red);font-size:13px}.is-active>.bag-cursor{visibility:visible}.bag-name{flex:1}.bag-qty{font:8px/1 var(--font-px);color:#7a6f5a}.bag-empty{color:#7a6f5a;padding:8px}.bag-desc{min-height:110px;color:var(--white);background:var(--navy);border:3px solid var(--ink);box-shadow:inset 0 0 0 2px var(--navy-edge);border-radius:8px;margin:0;padding:16px}.quests{gap:14px;display:grid}.quest{background:var(--white);border:3px solid var(--ink);border-radius:8px;padding:14px 16px}.quest-main{background:#fdf0c4}.quest h3{margin:0 0 8px;font-size:10px;line-height:1.7}.quest p{margin:0 0 6px}.quest-tag{color:var(--white);background:var(--red);border:2px solid var(--ink);border-radius:3px;margin-right:6px;padding:4px 6px;font-size:8px;display:inline-block}.quest-status{font:8px/1.6 var(--font-px);color:#2f8045}.quest-list,.quest-secrets{gap:8px;margin:0;padding:0;list-style:none;display:grid}.quest-list li{gap:2px;display:grid}.quest-secrets li{color:#7a6f5a;gap:10px;display:flex}.quest-secrets li.is-got{color:var(--ink)}.quest-check{color:var(--gold-2)}.mail{grid-template-columns:1fr 1fr;align-items:start;gap:20px;display:grid}.mail-lead{margin:0 0 14px}.mail-links{gap:8px;margin:0;padding:0;list-style:none;display:grid}.mail-links a{color:var(--ink);background:var(--white);border:3px solid var(--ink);box-shadow:0 3px 0 var(--ink);border-radius:8px;align-items:center;gap:12px;padding:8px 12px;text-decoration:none;display:flex}.mail-links a:hover{background:#fdf0c4}.mail-links a>span:nth-child(2){flex:1;display:grid}.mail-links small{color:#6a614e;word-break:break-all;font-size:15px}.badge{width:38px;height:38px;font:10px/1 var(--font-px);color:var(--white);background:var(--blue);border:3px solid var(--ink);text-shadow:var(--outline-1);border-radius:50%;flex:none;place-items:center;display:grid}.contact-form{gap:12px;display:grid}.contact-form label{gap:6px;display:grid}.contact-form label>span{font:8px/1 var(--font-px);color:var(--blue)}.contact-form input,.contact-form textarea{width:100%;font:18px/1.3 var(--font-body);color:var(--ink);background:var(--white);border:3px solid var(--ink);resize:vertical;border-radius:5px;padding:9px 10px}.form-err{font:normal 15px/1 var(--font-body);color:var(--red-2)}.form-toast{font:9px/1.5 var(--font-px);color:#2f8045;margin:0}.hang{text-align:center;background:var(--paper);border:4px solid var(--ink);width:min(420px,100% - 24px);box-shadow:inset 0 0 0 3px var(--white), 0 8px 0 #00000059;border-radius:10px;padding:20px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.hang-title{font:14px/1 var(--font-px);margin:0 0 14px}.hang-bar{background:var(--navy);border:3px solid var(--ink);border-radius:6px;grid-template-columns:repeat(7,1fr);gap:4px;padding:4px;display:grid}.hang-bar span{background:#1a2138;border-radius:2px;height:22px}.hang-bar span.is-on{background:linear-gradient(var(--mint) 0 50%, var(--green) 50%)}.hang-time{font:12px/1 var(--font-px);margin:12px 0}.hang-hold{font:11px/1 var(--font-px);color:var(--white);background:var(--red);border:3px solid var(--ink);box-shadow:0 4px 0 var(--ink);cursor:pointer;touch-action:none;border-radius:8px;padding:16px 22px}.hang-help{color:#6a614e;margin:12px 0 0;font-size:16px}.terminal-backdrop{background:#0e14288c;place-items:center;padding:16px;display:grid;position:absolute;inset:0}.terminal{border:4px solid var(--ink);-webkit-user-select:text;user-select:text;background:#0f1420;border-radius:10px;flex-direction:column;width:min(720px,100%);height:min(440px,80vh);display:flex;overflow:hidden;box-shadow:inset 0 0 0 3px #3a4466,0 8px #0006}.terminal-head{font:9px/1 var(--font-px);color:var(--white);border-bottom:3px solid var(--ink);background:#2b3450;justify-content:space-between;align-items:center;padding:8px 10px;display:flex}.terminal-close{font:10px/1 var(--font-px);color:var(--white);background:var(--red);border:2px solid var(--ink);cursor:pointer;border-radius:4px;padding:5px 7px}.terminal-out{font:14px/1.5 var(--font-mono);color:#9ff0b0;white-space:pre-wrap;flex:1;padding:12px 14px;overflow:auto}.terminal-line{gap:8px;display:flex}.terminal-line label{color:var(--gold)}.terminal-line input{min-width:0;font:inherit;color:var(--white);caret-color:var(--gold);background:0 0;border:0;outline:none;flex:1}.title-screen{background:radial-gradient(#0a0e1e1a,#0a0e1ea6);place-items:center;padding:16px;display:grid;position:absolute;inset:0}.title-card{text-align:center}.title-pre{font:10px/1 var(--font-px);color:var(--white);text-shadow:var(--outline-1);letter-spacing:1px;margin:0}.title-logo{font:clamp(38px, 9vw, 88px)/1.15 var(--font-px);color:var(--gold-hi);letter-spacing:2px;text-shadow:4px 4px 0 #c9561f, 8px 8px 0 var(--ink);margin:20px 0}.title-sub{color:var(--white);text-shadow:var(--outline-2);margin:0 0 30px;font-size:22px}.title-start{font:14px/1 var(--font-px);color:var(--ink);background:var(--white);border:4px solid var(--ink);box-shadow:0 5px 0 var(--ink);cursor:pointer;border-radius:8px;padding:16px 22px;animation:1.1s steps(2,end) infinite blink}.title-start:hover,.title-start:focus-visible{background:var(--gold-hi);animation:none}.title-text{color:var(--white);text-shadow:var(--outline-1);cursor:pointer;background:0 0;border:0;margin:22px auto 0;font-size:18px;text-decoration:underline;display:block}@keyframes blink{50%{opacity:.55}}@keyframes bob{50%{transform:translateY(3px)}}@keyframes pop-in{0%{opacity:0;transform:scale(.94)}}@keyframes drop-in{0%{opacity:0;transform:translate(-50%,-14px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}@media (width<=900px){.panel-backdrop{padding-left:12px;padding-right:12px}.rail-right{display:none}}@media (width<=640px){.hud{gap:10px;top:8px;left:8px;right:8px}.hud-avatar{width:46px;height:46px;margin:7px 0 0 7px}.hud-lv{font-size:7px}.hud-main{flex:1;min-width:0;margin-top:4px;padding:7px 9px 8px}.hud-name span,.chip-place{display:none}.hud-chips{margin-top:4px}.chip{padding:8px;font-size:7px}.rail-left{gap:16px;top:86px;left:8px;transform:none}.rail-btn{width:42px;height:42px}.rail-btn svg{width:20px;height:20px}.tabbar{padding:0 4px calc(4px + env(safe-area-inset-bottom))}.tabbar-inner{gap:4px;padding:6px 5px}.tab{padding:6px 1px 5px}.tab-label{font-size:6px}.tab-icon svg{width:24px;height:24px}.tab-big{width:76px;height:76px;margin-top:-32px}.tab-big .tab-icon svg{width:32px;height:32px}.tabbar-keys{display:none}.toast{top:76px}.panel-backdrop{padding:72px 8px calc(126px + env(safe-area-inset-bottom))}.panel-head h2{font-size:11px}.panel-keys{display:none}.panel-body{padding:14px;font-size:17px}.trainer-card{grid-template-columns:1fr}.trainer-portrait{width:96px;height:96px}.projects,.bag-main,.mail{grid-template-columns:1fr}.party{flex-direction:row;padding-bottom:6px;overflow-x:auto}.party li{flex:none;width:210px}.dialogue{bottom:calc(112px + env(safe-area-inset-bottom))}.dialogue-text{font-size:18px}.game.has-touch .dialogue{bottom:calc(262px + env(safe-area-inset-bottom))}.touchpad{bottom:calc(100px + env(safe-area-inset-bottom));padding:0 12px}}.textmode{--tm-bg:#fffaf0;--tm-fg:#1e2430;--tm-muted:#5d5646;--tm-rule:#1e243026;--tm-accent:#b33d36;background:var(--tm-bg);min-height:100%;color:var(--tm-fg);padding:48px 16px 80px;font:17px/1.6 ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .textmode{--tm-bg:#151a26;--tm-fg:#eef0f6;--tm-muted:#a9afc2;--tm-rule:#eef0f626;--tm-accent:#f08a7e}}:root[data-theme=dark] .textmode{--tm-bg:#151a26;--tm-fg:#eef0f6;--tm-muted:#a9afc2;--tm-rule:#eef0f626;--tm-accent:#f08a7e}.textmode>*{max-width:760px;margin-left:auto;margin-right:auto}.textmode h1,.textmode h2{font-family:var(--font-body);font-weight:700;line-height:1.15}.textmode h1{margin:6px 0 8px;font-size:clamp(34px,6vw,52px)}.textmode h2{border-top:2px solid var(--tm-rule);margin:48px 0 16px;padding-top:24px;font-size:28px}.textmode h3{margin:0 0 2px;font-size:19px}.textmode a{color:var(--tm-accent)}.tm-kicker{font:10px/1 var(--font-px);color:var(--tm-muted);margin:0}.tm-role{margin:0 0 14px;font-size:19px}.tm-status{color:#2f8045}.tm-bio{color:var(--tm-muted);margin:0 0 20px}.tm-actions{flex-wrap:wrap;gap:12px;display:flex}.tm-project{border-bottom:1px solid var(--tm-rule);padding:18px 0}.tm-project p{margin:6px 0}.tm-project ul{margin:6px 0;padding-left:20px}.tm-sub,.tm-tech{color:var(--tm-muted);font-size:15px}.tm-stack{gap:8px;margin:0;display:grid}.tm-stack div{grid-template-columns:110px 1fr;display:grid}.tm-stack dt{text-transform:capitalize;color:var(--tm-muted)}.tm-stack dd{margin:0}.tm-links{padding-left:20px}.tm-form{max-width:520px;margin-top:20px}.textmode .contact-form input,.textmode .contact-form textarea{font-family:inherit;font-size:16px}.textmode .contact-form label>span{color:var(--tm-muted)}.dot{vertical-align:0;background:currentColor;border-radius:1px;width:.75em;height:.75em;margin-right:.35em;display:inline-block}.hud-xp em svg,.chip svg,.toast svg{vertical-align:-2px}.trainer-badges li svg,.quest-check svg{display:block}.quest-check{flex:none;padding-top:3px}.quest-box{border:2px solid;border-radius:2px;width:14px;height:14px;display:block}.dialogue-choices button.is-active:before,.title-start:before{content:"";border-left:8px solid var(--red);border-top:6px solid #0000;border-bottom:6px solid #0000;position:absolute}.dialogue-choices button.is-active:before{top:50%;transform:translateY(-50%)}.title-start{padding-left:40px;position:relative}.title-start:before{top:50%;left:18px;transform:translateY(-50%)}
