:root{--ink:#ecede0;--muted:#a6b7a9;--gold:#e8c781;--teal:#92d7bc;--glass:rgba(15,34,32,.92);--line:rgba(219,230,202,.17);--red:#ec997d;--serif:Georgia,"Times New Roman",serif;--sans:"Trebuchet MS",Arial,sans-serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#163b3b;color:var(--ink);font-family:var(--sans);-webkit-user-select:none;user-select:none}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible{outline:2px solid var(--gold);outline-offset:4px}button:disabled{cursor:not-allowed;opacity:.4}svg.icon{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;flex:none}#game{display:block;width:100%;height:100%;touch-action:none}#vignette{position:fixed;inset:0;pointer-events:none;box-shadow:inset 0 0 140px 25px #081d1a3b}.hidden{display:none!important}.eyebrow{font-size:10px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--gold)}.key{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:19px;padding:0 5px;border:1px solid rgba(239,237,212,.24);border-bottom-width:2px;border-radius:4px;font-size:10px;color:#e0e5d4;background:#efedd40d}.panel{background:linear-gradient(135deg,#1c312bf7,#0c1d1cf2);border:1px solid var(--line);box-shadow:0 10px 32px #06171433;border-radius:14px}.hud{position:fixed;inset:0;pointer-events:none;z-index:3}.hud button,.hud a{pointer-events:auto}.portrait-panel{position:absolute;top:24px;left:24px;width:280px;padding:15px 17px 12px;display:flex;gap:13px}.portrait{width:46px;height:53px;position:relative;flex:none}.portrait svg{height:46px;width:46px;border:1px solid #d5bd8177;border-radius:50%;background:#33534c}.level-medal{position:absolute;bottom:0;left:14px;width:22px;height:22px;display:grid;place-items:center;border-radius:7px;background:#e9cb83;color:#23362d;font-weight:700;font-size:11px;border:2px solid #253e36}.vitals{flex:1;min-width:0}.name-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.name-row strong{font-size:11px;letter-spacing:2px}.name-row span{font-size:10px;color:var(--muted)}.meter{height:7px;background:#041e1b8c;border-radius:5px;overflow:hidden;margin:5px 0}.meter>div{height:100%;border-radius:5px;transition:width .15s linear}.hp-meter{background:linear-gradient(90deg,#d97862,#f1b18c)}.stamina-meter{background:linear-gradient(90deg,#599680,#aad7ac)}.xp-meter{background:#e3c786}.xp-line{display:flex;gap:8px;align-items:center;margin-top:7px;color:#abbcad;font-size:9px;letter-spacing:.5px}.xp-line .meter{height:3px;flex:1;margin:0}.zone{position:absolute;top:29px;left:50%;transform:translate(-50%);text-align:center;text-shadow:0 2px 10px #082c28;white-space:nowrap}.zone .ornament{display:flex;align-items:center;justify-content:center;gap:10px;color:#e8d8ad;font-size:10px;letter-spacing:2.5px}.zone .ornament:before,.zone .ornament:after{content:"";width:30px;height:1px;background:#efdfb45e}.zone h2{font:21px var(--serif);margin:8px 0 5px;letter-spacing:.4px;color:#f4edcf}.zone.in-boss p{visibility:hidden}.zone p{font-size:10px;color:#e1e5c9c7;margin:0;letter-spacing:1px}.top-right{position:absolute;right:24px;top:24px;display:flex;gap:8px}.resource{height:38px;padding:0 13px;display:flex;align-items:center;gap:8px;border-radius:10px;font-size:12px;color:var(--gold)}.coin-icon{width:14px;height:14px;border:2px solid var(--gold);border-radius:50%;box-shadow:inset 0 0 0 2px #213c32;display:inline-block;background:#c4a05c}.small-button{width:38px;height:38px;display:grid;place-items:center;padding:0}.small-button:hover{background:#325347}.small-button svg{width:17px;height:17px}.quest{position:absolute;top:78px;right:24px;width:242px;padding:17px 18px}.quest-top{font-size:9px;letter-spacing:2px;color:var(--gold);display:flex;justify-content:space-between;align-items:center}.quest h3{font:18px var(--serif);margin:9px 0}.quest p{font-size:11px;line-height:1.65;margin:0;color:#b4c3b1}.seals{display:flex;gap:7px;margin-top:13px}.seal-chip{padding:5px 7px;border:1px solid #b4c3b128;border-radius:5px;color:#b4c3b1;font-size:9px;display:flex;gap:5px;align-items:center}.seal-chip:before{content:"";display:block;width:5px;height:5px;border:1px solid currentColor;transform:rotate(45deg)}.seal-chip.collected{color:#ebcc87;background:#e5c97e0f;border-color:#e5c97e4d}.seal-chip.collected:before{background:currentColor}.quest-footer{display:flex;align-items:center;gap:7px;padding-top:12px;margin-top:13px;border-top:1px solid var(--line);font-size:10px;color:#a7bba7}.quest-footer svg{width:13px;height:13px}.tutorial{position:absolute;bottom:113px;left:24px;width:246px;padding:14px 16px;border-left:2px solid #d6bd7f;transition:opacity .3s}.tutorial .eyebrow{font-size:8px;letter-spacing:1.8px}.tutorial p{font-size:11px;line-height:1.65;color:#c6d0ba;margin:7px 0 0}.controls-hint{position:absolute;bottom:29px;left:24px;color:#c8d2bc;font-size:10px;line-height:2.2;text-shadow:0 2px 5px #15352e}.controls-hint .key{margin-right:3px}.controls-hint span.gap{margin-left:9px}.hotbar{position:absolute;bottom:23px;left:50%;transform:translate(-50%);display:flex;align-items:flex-end;gap:7px}.hot-slot{position:relative;width:59px;height:65px;border:1px solid #d9dfbd40;border-radius:11px;background:linear-gradient(145deg,#263f36f5,#152e2afa);display:flex;align-items:center;justify-content:center;box-shadow:0 6px 18px #071b2440;overflow:visible}.hot-slot .icon{width:26px;height:26px;color:#e4ddbb;margin-bottom:9px;transition:transform .15s}.hot-slot:hover .icon{transform:translateY(-2px)}.hot-slot .slot-key{position:absolute;bottom:6px;left:0;right:0;font-size:8px;letter-spacing:.8px;text-align:center;color:#b8c7b1}.hot-slot .cooldown{position:absolute;inset:auto 0 0;background:#080f13b0;border-radius:10px;pointer-events:none}.hot-slot .cooldown-label{position:absolute;top:18px;left:0;right:0;text-align:center;font-size:16px;color:#fff;font-weight:700;text-shadow:0 2px 3px #000;pointer-events:none}.hot-slot .amount{position:absolute;right:6px;top:4px;font-size:10px;color:#fff4c6}.hot-slot.active{border-color:var(--gold);box-shadow:0 0 20px #edc46c20}.hot-slot.active .icon{color:var(--gold)}.hot-slot.skill-slot{width:47px;height:54px;margin-left:6px;border-color:#d6bd7f66}.skill-dot{position:absolute;right:-4px;top:-6px;background:#e6c67d;color:#213b30;font-size:10px;font-weight:700;min-width:17px;height:17px;border-radius:50%;display:grid;place-items:center;box-shadow:0 0 0 3px #243d32}.bar-caption{position:absolute;bottom:76px;left:50%;transform:translate(-50%);font-size:9px;letter-spacing:1.5px;color:#e4ddbd;text-shadow:0 2px 5px #071e1c;white-space:nowrap}.minimap-panel{position:absolute;bottom:24px;right:24px;padding:6px 6px 0;width:182px;border-radius:13px;overflow:hidden}.minimap-panel canvas{display:block;width:168px;height:134px;border-radius:8px;background:#203f3b}.minimap-caption{height:31px;display:flex;align-items:center;justify-content:space-between;padding:0 6px;font-size:9px;letter-spacing:1px}.minimap-caption button{border:0;background:none;font-size:9px;color:#dace9f;padding:4px;display:flex;align-items:center;gap:4px}.north-label{position:absolute;top:12px;right:15px;color:#d2ceac;font:bold 9px var(--serif)}#toast-area{position:absolute;top:131px;left:50%;transform:translate(-50%);width:min(430px,65vw);display:flex;flex-direction:column;align-items:center;gap:7px;pointer-events:none}.toast{padding:11px 18px;border:1px solid #edcc8955;border-radius:9px;background:#15362fed;color:#eee3ba;font-size:11px;line-height:1.5;box-shadow:0 8px 30px #061a2733;animation:toast-in .25s ease both;text-align:center}.toast.fade{opacity:0;transform:translateY(-10px);transition:.3s}.toast.gold{border-color:#edcc89;color:#ffe7aa}.toast.danger{border-color:#eb9777;color:#ffc7ac}@keyframes toast-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}#interact{position:absolute;left:50%;top:calc(50% + 54px);transform:translate(-50%);padding:10px 14px;background:#142e28ed;border:1px solid #e6c58177;border-radius:8px;font-size:11px;display:flex;align-items:center;gap:9px;white-space:nowrap}#hook-prompt{position:absolute;left:50%;bottom:126px;transform:translate(-50%);color:#ffe2a0;background:#17372bdc;border:1px solid #e6cb7777;border-radius:30px;font-size:10px;letter-spacing:1px;padding:10px 17px;white-space:nowrap}.boss-ui{position:absolute;left:50%;top:79px;transform:translate(-50%);width:min(510px,55vw);text-align:center}.boss-ui h3{font:15px var(--serif);letter-spacing:1.5px;color:#fff0ce;margin:0 0 8px;text-shadow:0 2px 5px #102b28}.boss-track{position:relative;height:9px;border:1px solid #efd19b88;background:#17392fea;border-radius:10px;padding:2px;overflow:hidden}.boss-track div{position:absolute;left:2px;top:2px;bottom:2px;border-radius:10px}.boss-track .boss-lag{background:#f3e2b94a;transition:none;z-index:0}.boss-track #boss-hp{background:linear-gradient(90deg,#cc7753,#edc967);transition:width .11s linear;z-index:1}.boss-track.phase-shift{box-shadow:0 0 18px #efcc7a38}.boss-ui p{font-size:8px;letter-spacing:2px;margin:6px;color:#f2d0ab}.save-indicator{position:absolute;bottom:6px;right:27px;font-size:8px;color:#cdd9bc8c;letter-spacing:1px;opacity:.48;transition:opacity .2s ease,transform .2s ease}.save-indicator.saved{opacity:1;transform:translateY(-2px);color:#e7d69b}.title-screen{position:fixed;inset:0;z-index:10;background:linear-gradient(90deg,#0a1e1df7,#0c201de3 30%,#0a1f1d40 64%,#0a1e1d14);padding:40px 6.5vw;display:flex;flex-direction:column;justify-content:center;overflow:hidden}.title-top{position:absolute;left:6.5vw;right:4vw;top:35px;display:flex;justify-content:space-between;align-items:center;color:#c3d0b5;font-size:10px;letter-spacing:2px}.brand{display:flex;align-items:center;gap:10px}.brand svg{color:var(--gold);width:24px;height:24px}.title-content{max-width:620px;margin-top:20px}.title-content .eyebrow{display:flex;align-items:center;gap:13px;font-size:9px}.title-content .eyebrow:before{content:"";display:block;width:30px;height:1px;background:var(--gold)}.title-content h1{font-weight:400;font-family:var(--serif);font-size:clamp(75px,9.5vw,142px);letter-spacing:-6px;line-height:.85;margin:25px 0;color:#f6edcf;text-shadow:0 8px 38px #001e2555}.title-content h1 em{color:#e7c581;font-weight:400;font-style:italic;letter-spacing:-7px}.title-content .subtitle{font:22px/1.5 var(--serif);color:#d3ddc2;margin:0 0 17px}.title-content .description{font-size:12px;line-height:1.9;color:#a9beaa;max-width:340px;margin:0 0 30px}.title-actions{display:flex;gap:11px;align-items:center;flex-wrap:wrap}.primary{background:#e7c887;color:#263a2d;border:1px solid #efdca6;border-radius:8px;padding:14px 23px;font-size:12px;letter-spacing:.3px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:16px;box-shadow:0 8px 24px #051f1c22;transition:.15s}.primary:hover{background:#f8dda0;transform:translateY(-1px)}.secondary{background:#a8b78b0c;color:#dbe2c6;border:1px solid #d5dcb43d;border-radius:8px;padding:14px 21px;font-size:12px;transition:.15s}.secondary:hover{background:#a9c7a522;border-color:#cad69f77}.title-bottom{position:absolute;left:6.5vw;bottom:35px;font-size:9px;letter-spacing:1px;color:#a1b89f;display:flex;gap:21px;align-items:center}.title-bottom span:before{content:"";display:inline-block;width:4px;height:4px;background:#a4c4a0;border-radius:50%;margin:0 7px 2px 0}.title-feature{position:absolute;right:5vw;bottom:49px;width:239px;padding:18px 20px;background:#102f28a8;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid #e7dcb031;border-radius:12px;transform:rotate(-2deg)}.title-feature .eyebrow{font-size:8px;letter-spacing:2px}.title-feature p{font:italic 17px/1.5 var(--serif);margin:10px 0 0;color:#e2e2be}.title-feature small{font-size:9px;color:#a3b79c;display:block;margin-top:8px}.version{font-size:8px;opacity:.7}.modal-backdrop{position:fixed;inset:0;z-index:20;background:#071e21ad;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);display:flex;align-items:center;justify-content:center;padding:24px}.modal{width:min(830px,94vw);max-height:91vh;overflow:auto;padding:31px;border-radius:18px;background:linear-gradient(130deg,#233d35,#132b29 72%);border:1px solid #d4d7ad3d;box-shadow:0 24px 100px #03151e88}.modal.compact{width:min(510px,94vw)}.modal-header{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:23px}.modal h2{font:34px var(--serif);font-weight:400;letter-spacing:-.6px;margin:7px 0}.modal p{color:#b7c7af;font-size:12px;line-height:1.8}.modal-close{width:32px;height:32px;border-radius:50%;border:1px solid var(--line);background:none;font-size:20px;flex:none}.modal-close:hover{background:#e8d08d1a}.modal .footer-note{font-size:10px;color:#92a890;border-top:1px solid var(--line);padding-top:16px;margin-top:20px;line-height:1.7}.point-badge{padding:8px 12px;background:#d6b76c15;border:1px solid #d6b76c55;color:#ecd292;border-radius:7px;display:inline-block;font-size:11px}.skill-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.skill-branch h4{font-size:9px;letter-spacing:2.5px;color:#b8c4a3;margin:0 0 10px}.skill-card{position:relative;display:block;text-align:left;width:100%;padding:17px 15px 14px;margin-bottom:11px;min-height:168px;color:var(--ink);border:1px solid #ced1a629;border-radius:11px;background:#95bb9429;transition:.15s}.skill-card:hover:not(:disabled){transform:translateY(-2px);background:#95bb943d;border-color:#d6c18b77}.skill-card:disabled{opacity:.64}.skill-card.maxed{border-color:#81b59577;opacity:1}.skill-card .icon{color:#e4c989;width:28px;height:28px;margin-bottom:10px}.skill-card h3{font:17px var(--serif);margin:0 0 8px}.skill-card p{font-size:10px;line-height:1.6;margin:0;min-height:35px}.skill-rank{display:flex;justify-content:space-between;align-items:center;font-size:9px;color:#e0c787;margin-top:14px}.pips{display:flex;gap:4px}.pip{width:15px;height:4px;background:#080f152e;border:1px solid #b4c59c4d;border-radius:3px}.pip.filled{background:#dbc180;border-color:#dbc180}.modal-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.modal-actions .primary,.modal-actions .secondary{flex:1}.menu-stack{display:flex;flex-direction:column;gap:9px}.menu-stack button{width:100%;text-align:left;justify-content:space-between;display:flex;align-items:center}.menu-stack .secondary{padding:13px 18px}.menu-stack small{font-size:10px;color:#a9bfa8}.help-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px 18px;margin:20px 0;font-size:11px;color:#becbb5}.help-grid div{display:flex;gap:8px;align-items:center}.dialogue{border-left:2px solid #d3b77a;padding:3px 0 3px 17px;font:italic 17px/1.7 var(--serif);color:#d0dbc0;margin:12px 0 25px}.shop-stats{display:flex;gap:8px;margin-bottom:20px}.stat-chip{padding:8px 11px;background:#809b7721;border:1px solid var(--line);border-radius:6px;font-size:10px;color:#d5dcb6}.map-wrap{position:relative;aspect-ratio:1.39;border:1px solid #d6ca9b44;border-radius:11px;overflow:hidden;background:#214740}.map-wrap canvas{display:block;width:100%;height:100%}.map-legend{display:flex;gap:18px;justify-content:center;margin-top:13px;font-size:10px;color:#bbc7af;flex-wrap:wrap}.map-legend span{display:flex;gap:6px;align-items:center}.legend-dot{width:7px;height:7px;border-radius:50%;background:#e9d393}.legend-dot.player{background:#f6f3d6;box-shadow:0 0 0 2px #d47756}.legend-dot.camp{background:#91d5bd}.travel-buttons{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.travel-buttons button{font-size:10px;padding:9px 12px}.victory-emblem{width:76px;height:76px;border:1px solid #ebd49177;border-radius:50%;display:grid;place-items:center;margin:0 auto 20px;background:#d5b16a1c;color:#f1ce7e}.victory-emblem .icon{width:39px;height:39px}.center{text-align:center}.result-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:24px 0}.result-stats div{background:#97b18613;border:1px solid var(--line);padding:17px 4px;border-radius:9px}.result-stats strong{font:27px var(--serif);color:#e7ce94;display:block;margin-bottom:5px}.result-stats span{font-size:8px;letter-spacing:1px;color:#a5b99f}.touch-controls{position:fixed;inset:0;z-index:5;pointer-events:none;display:none}.joystick{position:absolute;bottom:27px;left:25px;width:113px;height:113px;border:1px solid #e9dfb34d;border-radius:50%;background:#122f234f;touch-action:none;pointer-events:auto;display:grid;place-items:center}.joystick-knob{height:46px;width:46px;background:#e6dda630;border:1px solid #eee5b366;border-radius:50%;pointer-events:none}.touch-buttons{position:absolute;bottom:28px;right:23px;display:grid;grid-template-columns:52px 63px 52px;gap:9px;align-items:center;pointer-events:auto}.touch-buttons button{width:52px;height:52px;border:1px solid #e9dfb35e;border-radius:50%;background:#17362ee8;display:flex;align-items:center;justify-content:center;touch-action:none}.touch-buttons button.main-attack{width:63px;height:63px;background:#d9b774;color:#17362e}.touch-buttons button small{font-size:8px;position:absolute;margin-top:34px;color:#dfd8b6}.touch-menu{position:absolute;bottom:170px;left:29px;display:flex;gap:8px;pointer-events:auto}.touch-menu button{width:34px;height:34px;padding:0;display:grid;place-items:center}.touch-menu svg{width:17px;height:17px}.touch-interact{position:absolute;right:32px;bottom:166px;pointer-events:auto;font-size:10px!important;padding:9px 12px!important}.damage-flash{position:fixed;inset:0;z-index:2;pointer-events:none;box-shadow:inset 0 0 110px #cb5631;opacity:0;transition:opacity .15s}#loading{position:fixed;inset:0;z-index:99;background:#142f2c;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:18px;color:#e8cb88;font:24px var(--serif)}#loading small{font:10px var(--sans);color:#adbea6;letter-spacing:2px}.loading-ring{width:35px;height:35px;border:1px solid #dfc48133;border-top-color:#dfc481;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:1150px){.portrait-panel{width:251px;top:18px;left:18px}.top-right{right:18px;top:18px}.quest{right:18px;width:213px;top:70px}.zone{top:23px}.zone h2{font-size:18px}.controls-hint{display:none}.tutorial{bottom:24px;left:18px;width:203px}.hotbar{bottom:24px;gap:5px}.hot-slot{width:53px;height:60px}.hot-slot.skill-slot{width:42px}.minimap-panel{right:18px;bottom:24px;width:153px}.minimap-panel canvas{width:139px;height:111px}.title-feature{width:218px;right:4vw}}@media(max-height:650px){.title-content h1{font-size:80px;margin:16px 0}.title-content .subtitle{font-size:18px;margin-bottom:10px}.title-content .description{margin-bottom:19px;font-size:11px}.title-top{top:20px}.title-bottom{bottom:19px}.title-feature{bottom:23px}.quest{padding:12px 15px}.quest h3{font-size:16px}.tutorial{bottom:103px}.modal{padding:23px}.skill-card{min-height:145px;padding:12px}.skill-card p{min-height:32px}.skill-card .icon{width:22px;height:22px;margin-bottom:5px}}@media(max-width:800px){.portrait-panel{left:12px;top:12px;width:216px;padding:11px 12px;gap:10px;border-radius:11px}.portrait{width:38px;height:46px}.portrait svg{width:38px;height:38px}.level-medal{left:10px;width:20px;height:20px}.name-row strong{font-size:10px}.name-row span{font-size:8px}.zone{top:111px;left:19px;transform:none;text-align:left}.zone .ornament{display:none}.zone h2{font-size:17px;margin:0 0 4px}.zone p{font-size:8px}.top-right{right:12px;top:12px;gap:5px}.resource{height:32px;font-size:11px;padding:0 10px}.small-button{width:32px;height:32px}.quest{display:none}.minimap-panel{width:131px;top:57px;right:12px;bottom:auto}.minimap-panel canvas{width:117px;height:89px}.minimap-caption{height:26px;font-size:8px}.minimap-caption .key{height:15px;font-size:8px}.tutorial{display:none}.hotbar{gap:5px;bottom:17px}.hot-slot{width:48px;height:57px}.hot-slot.skill-slot{width:39px;height:48px}.boss-ui{width:60vw;top:170px}.boss-ui h3{font-size:12px}.boss-ui p{font-size:7px}#toast-area{top:211px;width:80vw}.toast{font-size:10px;padding:9px 12px}.title-screen{padding:24px 8vw;background:linear-gradient(90deg,#0b211df2,#0b211d9c 64%,#0b211d47)}.title-top{left:8vw;top:24px}.title-content h1{font-size:100px;letter-spacing:-5px}.title-content h1 em{letter-spacing:-5px}.title-content .subtitle{font-size:20px}.title-content .description{font-size:11px;max-width:290px}.title-bottom{left:8vw;bottom:25px;gap:12px;font-size:8px}.title-feature{display:none}.modal{padding:23px;max-height:93vh}.modal h2{font-size:28px}.skill-grid{gap:9px}.skill-card{padding:12px;min-height:164px}.skill-card h3{font-size:15px}.skill-card p{font-size:9px}.skill-branch h4{font-size:8px;letter-spacing:1px}.save-indicator{display:none}#interact{top:calc(50% + 48px);font-size:10px}#hook-prompt{bottom:94px;font-size:9px}.title-top .version{display:none}}@media(max-width:400px){.portrait-panel{width:193px}.top-right .resource{padding:0 8px}.top-right{gap:4px}}@media(max-width:520px){.title-content h1{font-size:90px}.title-content .subtitle{font-size:19px}.title-content .description{max-width:280px}.title-actions{flex-direction:column;align-items:stretch;max-width:260px}.title-bottom{gap:10px;font-size:7px}.modal{padding:21px 16px}.skill-grid{grid-template-columns:1fr;gap:16px}.skill-branch{display:grid;grid-template-columns:1fr 1fr;gap:9px}.skill-branch h4{grid-column:1/-1;margin:0}.skill-card{margin:0;min-height:166px}.help-grid{grid-template-columns:1fr}.result-stats strong{font-size:23px}.modal h2{font-size:26px}.modal-header{gap:10px}.point-badge{font-size:10px}.title-top .brand{font-size:8px;letter-spacing:1px}}@media(pointer:coarse){.touch-controls.playing{display:block}.hotbar,.controls-hint,.tutorial{display:none}#hook-prompt{bottom:204px}.portrait-panel{pointer-events:none}.bar-caption{display:none}}#debug-panel{position:fixed;left:12px;bottom:12px;z-index:50;width:min(465px,calc(100vw - 24px));max-height:min(70vh,620px);padding:11px 13px;border:1px solid #e7c88755;border-radius:9px;background:#061714f2;color:#dfe7d6;font:11px/1.45 ui-monospace,SFMono-Regular,Consolas,monospace;box-shadow:0 10px 30px #0007;pointer-events:auto;overflow:hidden}#debug-readout{margin:0;white-space:pre-wrap;font:inherit;color:inherit}#debug-log{max-height:105px;overflow:auto;margin-top:8px;padding-top:7px;border-top:1px solid #d7c37b2b;color:#aebfae;white-space:pre-wrap}.debug-command{display:flex;align-items:center;gap:6px;margin-top:8px;border-top:1px solid #d7c37b2b;padding-top:8px;color:#e7c887}.debug-command input{flex:1;min-width:0;background:#0d2521;border:1px solid #d7c37b3f;border-radius:5px;color:#ecede0;padding:6px 8px;font:inherit;outline:none}.debug-command input:focus{border-color:#e7c887}.debug-title{color:#e7c887;font-weight:700}.debug-hot{color:#efad91}.debug-ok{color:#a9d6a7}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 13px;margin:15px 0}.setting-row{border:1px solid var(--line);border-radius:9px;padding:11px 12px;background:#7f9e7a0d}.setting-row label{display:block;font-size:10px;letter-spacing:.5px;color:#e3ddbd;margin-bottom:7px}.setting-row select,.setting-row button{width:100%;background:#132e29;color:#e6ead8;border:1px solid #d3d5ad35;border-radius:6px;padding:8px;font:11px var(--sans)}.setting-row small{display:block;color:#91a78f;font-size:9px;line-height:1.45;margin-top:6px}.remap-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:10px 0}.remap-grid button{display:flex;justify-content:space-between;gap:8px;background:#19342e;border:1px solid var(--line);border-radius:6px;color:#dce3cd;padding:8px 10px;font-size:10px}.remap-grid button.waiting{border-color:var(--gold);color:#ffe1a0}.a11y-text-large .modal p,.a11y-text-large .footer-note,.a11y-text-large .help-grid,.a11y-text-large .menu-stack button,.a11y-text-large .toast{font-size:13px!important}.a11y-text-xlarge .modal p,.a11y-text-xlarge .footer-note,.a11y-text-xlarge .help-grid,.a11y-text-xlarge .menu-stack button,.a11y-text-xlarge .toast{font-size:15px!important}.a11y-high-contrast{--ink:#fffbe8;--muted:#d6dfd2;--gold:#ffdc75;--teal:#a9f0d2;--line:rgba(255,248,209,.32)}.a11y-high-contrast .panel,.a11y-high-contrast .modal{border-color:#f1dda066}.touch-scale-large .joystick{transform:scale(1.15);transform-origin:left bottom}.touch-scale-large .touch-buttons{transform:scale(1.12);transform-origin:right bottom}.touch-scale-large .touch-menu{transform:scale(1.1);transform-origin:left bottom}@media(max-width:620px){.settings-grid,.remap-grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}#hud .quest,#hud .minimap-panel,#hud .zone,#hud .tutorial{transition:opacity .22s ease,transform .22s ease}#hud.combat-focus .quest{opacity:.26;transform:translate(10px)}#hud.combat-focus .tutorial{opacity:.18}#hud.combat-focus .zone{opacity:.62}.polish-zone{position:fixed;left:50%;top:118px;z-index:8;transform:translate(-50%,-8px);text-align:center;pointer-events:none;opacity:0;transition:opacity .28s ease,transform .28s ease;text-shadow:0 3px 14px #071c19}.polish-zone.show{opacity:1;transform:translate(-50%)}.polish-zone .pz-kicker{font:8px var(--sans);letter-spacing:3px;color:#e4ca86}.polish-zone strong{display:block;margin-top:5px;font:26px var(--serif);font-weight:400;color:#f4edcf;letter-spacing:.5px}.polish-zone small{display:block;margin-top:3px;font-size:9px;letter-spacing:1.4px;color:#bac8b4}.polish-stinger{position:fixed;inset:0;z-index:7;display:flex;align-items:center;justify-content:center;pointer-events:none;opacity:0;transition:opacity .2s ease}.polish-stinger.show{opacity:1}body.boss-stinger-active #toast-area{opacity:0}body.boss-stinger-active #hud .portrait-panel,body.boss-stinger-active #hud .quest,body.boss-stinger-active #hud .top-right,body.boss-stinger-active #hud .minimap-panel,body.boss-stinger-active #hud .hotbar,body.boss-stinger-active #hud .bar-caption,body.boss-stinger-active #hud #interact,body.boss-stinger-active #hud #hook-prompt{opacity:.18;transition:opacity .16s ease}body.boss-stinger-active #hud .boss-ui{opacity:.55}.polish-stinger:before,.polish-stinger:after{content:"";position:absolute;left:0;right:0;height:7vh;background:#071816cc;transition:transform .25s ease}.polish-stinger:before{top:0;transform:translateY(-100%)}.polish-stinger:after{bottom:0;transform:translateY(100%)}.polish-stinger.show:before,.polish-stinger.show:after{transform:none}.polish-stinger .ps-card{text-align:center;text-shadow:0 3px 20px #000;transform:scale(.96);transition:transform .25s ease}.polish-stinger.show .ps-card{transform:scale(1)}.polish-stinger .ps-kicker{font-size:9px;letter-spacing:4px;color:#e0c77f}.polish-stinger strong{display:block;margin-top:7px;font:32px var(--serif);font-weight:400;color:#fff0cc}.polish-stinger small{display:block;margin-top:4px;font-size:9px;letter-spacing:2px;color:#c7d2bc}@media(max-width:800px){.polish-zone{top:178px}.polish-zone strong{font-size:21px}.polish-stinger strong{font-size:25px}.polish-stinger:before,.polish-stinger:after{height:5vh}}@media(prefers-reduced-motion:reduce){.polish-zone,.polish-stinger,.polish-stinger:before,.polish-stinger:after,.polish-stinger .ps-card{transition:none!important}}#toast-area{transition:top .22s ease}body.zone-banner-active #toast-area{top:188px}body.zone-banner-active #hud .zone{opacity:0;transform:translate(-50%) translateY(-5px)}.hp-meter.danger{box-shadow:0 0 9px #ec997d61}.stamina-meter.tired{box-shadow:0 0 7px #aad7ac47;opacity:.86}#interact.execute{border-color:#f0c86f;background:#382d1fef;color:#ffe6a0;box-shadow:0 5px 22px #0005}.touch-interact.execute{border-color:#f0c86f!important;color:#ffe5a2!important}.polish-zone{top:92px}.polish-zone .pz-kicker{font-size:7px}.polish-zone strong{font-size:23px}@keyframes hp-breathe{50%{filter:brightness(1.13)}}.hp-meter.danger{animation:hp-breathe 1.15s ease-in-out infinite}@media(max-width:800px){body.zone-banner-active #toast-area{top:245px}body.zone-banner-active #hud .zone{transform:translateY(-4px)}.polish-zone{top:154px}}@media(prefers-reduced-motion:reduce){.hp-meter.danger{animation:none!important}}.quest-side{margin-top:11px;padding-top:10px;border-top:1px solid var(--line);display:grid;gap:3px}.quest-side span{font-size:7px;letter-spacing:1.7px;color:#c9b87d}.quest-side strong{font:12px var(--serif);font-weight:400;color:#f0e3bb;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.quest-side small{font-size:9px;line-height:1.35;color:#9fb3a3}.quest.quest-pulse{animation:quest-hud-pulse .72s ease}.quest-timeline{display:grid;gap:6px;margin-top:11px}.quest-step{display:grid;grid-template-columns:18px 1fr;gap:8px;align-items:start;padding:7px 8px;border-radius:8px;background:#0d27231f;border:1px solid #d8ddb912}.quest-step i{width:14px;height:14px;border-radius:50%;border:1px solid #b8c5a55a;display:grid;place-items:center;font-style:normal;font-size:8px;color:#9eae9d;margin-top:1px}.quest-step.done i{background:#d8c681;color:#263d34;border-color:#e5d595}.quest-step.current{border-color:#e5ca7560;background:#e2c6750d}.quest-step.current i{border-color:#e7ce83;color:#f5e1a6;box-shadow:0 0 9px #e7ce8330}.quest-step span{font-size:10px;line-height:1.45;color:#aebdac}.quest-step.done span{color:#879b8c;text-decoration:line-through;text-decoration-color:#8ba17d66}.quest-reward{margin-top:10px;padding:9px 10px;border-radius:8px;border:1px solid #e0c67432;background:#e0c6740b;font-size:9px;color:#cfbea0;line-height:1.5}.quest-reward b{color:#f0daa0;letter-spacing:.8px}@keyframes quest-hud-pulse{0%{box-shadow:0 10px 32px #06171433}28%{box-shadow:0 10px 32px #06171433,0 0 0 2px #e7ca7766,0 0 24px #e7ca772a}to{box-shadow:0 10px 32px #06171433}}@media(prefers-reduced-motion:reduce){.quest.quest-pulse{animation:none!important}}.hit-confirm{position:fixed;left:50%;top:50%;width:34px;height:34px;transform:translate(-50%,-50%);z-index:6;pointer-events:none;opacity:0}.hit-confirm.show{opacity:1}.hit-confirm:before,.hit-confirm:after{content:"";position:absolute;left:50%;top:50%;width:13px;height:1px;background:#f8e8bd;box-shadow:0 0 5px #0008}.hit-confirm:before{transform:translate(-17px,-7px) rotate(45deg);transform-origin:right center}.hit-confirm:after{transform:translate(4px,-7px) rotate(-45deg);transform-origin:left center}.hit-confirm.strong:before,.hit-confirm.strong:after{width:16px;height:2px;background:#ffd477}.hit-confirm.critical:before,.hit-confirm.critical:after{background:#fff0a8;box-shadow:0 0 8px #efca75}.portrait-panel.critical-life{border-color:#df8b7377}.hot-slot.cooldown-ready{animation:slot-ready .34s ease-out}.save-indicator.saved{animation:save-pop .32s ease-out}@keyframes slot-ready{0%{box-shadow:0 0 #e7ca8300}45%{box-shadow:0 0 18px #e7ca835e;border-color:#e7ca83aa}to{box-shadow:0 6px 18px #071b2440}}@keyframes save-pop{0%{transform:translateY(2px);opacity:.35}to{transform:translateY(-2px);opacity:1}}@media(prefers-reduced-motion:reduce){.hot-slot.cooldown-ready,.save-indicator.saved{animation:none!important}}.stamina-meter.exhausted{box-shadow:0 0 12px #e8c78185;filter:saturate(.82)}.stamina-meter.denied{animation:stamina-denied .28s ease-out}@keyframes stamina-denied{0%{transform:scaleX(1);filter:brightness(1)}45%{transform:scaleX(.96);filter:brightness(1.65)}to{transform:scaleX(1);filter:brightness(1)}}.hot-slot.buffered{border-color:#e9ce89aa;box-shadow:0 0 13px #e9ce8935}.hot-slot.max-charge{border-color:#ffe3a6;box-shadow:0 0 20px #f2cf7c42}.bar-caption.combat-cue{color:#fff0b0;text-shadow:0 2px 8px #000,0 0 10px #d9ba6255}.pause-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:3px 0 17px}.pause-summary div{border:1px solid var(--line);border-radius:9px;background:#91a98210;padding:10px 11px;min-width:0}.pause-summary strong{display:block;font:16px var(--serif);color:#ead49b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pause-summary span{display:block;margin-top:4px;font-size:8px;letter-spacing:1.1px;color:#9fb39d;text-transform:uppercase}.pause-groups{display:grid;grid-template-columns:1fr 1fr;gap:12px}.pause-group{border:1px solid var(--line);border-radius:11px;background:#0d282416;padding:10px}.pause-group h3{margin:1px 5px 9px;font:9px var(--sans);letter-spacing:2px;color:#d8c184}.pause-group .menu-stack{gap:7px}.pause-group .menu-stack button{padding:11px 13px}.pause-objective{margin:0 0 13px;padding:10px 12px;border-left:2px solid #d4b96f;background:#d4b96f0b;font-size:10px;line-height:1.55;color:#bac8b6}.pause-objective b{color:#ead9a9}.telegraph-label{font-size:8px;letter-spacing:1px}.modal-enter{animation:modal-enter .16s ease-out}@keyframes modal-enter{0%{opacity:.65;transform:translateY(4px) scale(.995)}to{opacity:1;transform:none}}@media(max-width:650px){.pause-summary{grid-template-columns:1fr 1fr}.pause-summary div:last-child{grid-column:1/-1}.pause-groups{grid-template-columns:1fr}.pause-group{padding:8px}.pause-group .menu-stack button{padding:10px 12px}}@media(prefers-reduced-motion:reduce){.stamina-meter.denied,.modal-enter{animation:none!important}}:root{--safe-t:env(safe-area-inset-top,0px);--safe-r:env(safe-area-inset-right,0px);--safe-b:env(safe-area-inset-bottom,0px);--safe-l:env(safe-area-inset-left,0px)}.title-screen{padding-top:max(40px,calc(var(--safe-t) + 20px));padding-left:max(6.5vw,calc(var(--safe-l) + 20px));padding-right:max(6.5vw,calc(var(--safe-r) + 20px));padding-bottom:max(40px,calc(var(--safe-b) + 20px))}.title-top{top:max(35px,calc(var(--safe-t) + 16px));left:max(6.5vw,calc(var(--safe-l) + 20px));right:max(4vw,calc(var(--safe-r) + 20px))}.title-bottom{bottom:max(34px,calc(var(--safe-b) + 18px))}.portrait-panel{top:max(24px,calc(var(--safe-t) + 14px));left:max(24px,calc(var(--safe-l) + 14px))}.top-right{top:max(24px,calc(var(--safe-t) + 14px));right:max(24px,calc(var(--safe-r) + 14px))}.minimap-panel{right:max(24px,calc(var(--safe-r) + 14px));bottom:max(24px,calc(var(--safe-b) + 14px))}.hotbar{bottom:max(23px,calc(var(--safe-b) + 13px))}.touch-controls{padding:var(--safe-t) var(--safe-r) var(--safe-b) var(--safe-l)}.joystick{left:max(25px,calc(var(--safe-l) + 18px));bottom:max(27px,calc(var(--safe-b) + 19px))}.touch-buttons{right:max(23px,calc(var(--safe-r) + 17px));bottom:max(28px,calc(var(--safe-b) + 20px))}.touch-menu{left:max(29px,calc(var(--safe-l) + 20px));bottom:max(170px,calc(var(--safe-b) + 158px))}.touch-interact{right:max(32px,calc(var(--safe-r) + 24px));bottom:max(166px,calc(var(--safe-b) + 154px))}.touch-left .joystick{left:auto;right:max(25px,calc(var(--safe-r) + 18px))}.touch-left .touch-buttons{right:auto;left:max(23px,calc(var(--safe-l) + 17px))}.touch-left .touch-menu{left:auto;right:max(29px,calc(var(--safe-r) + 20px))}.touch-left .touch-interact{right:auto;left:max(32px,calc(var(--safe-l) + 24px))}.touch-left.touch-scale-large .joystick{transform-origin:right bottom}.touch-left.touch-scale-large .touch-buttons{transform-origin:left bottom}.touch-left.touch-scale-large .touch-menu{transform-origin:right bottom}.a11y-high-contrast .hot-slot,.a11y-high-contrast .touch-buttons button,.a11y-high-contrast .joystick{border-color:#fff0b980}.a11y-high-contrast .meter{outline:1px solid #fff0b930}.a11y-high-contrast .toast{background:#0a211e;border-width:2px}.a11y-high-contrast .telegraph-label{font-weight:700;text-shadow:0 2px 5px #000,0 0 3px #000}.modal :is(button,select,input):focus-visible{outline:2px solid var(--gold);outline-offset:2px}.touch-buttons button:active,.touch-menu button:active,.touch-interact:active{transform:scale(.94)}.performance-note{margin:10px 0 0;padding:9px 10px;border-left:2px solid #87b99e;background:#87b99e0c;color:#a9baa9;font-size:9px;line-height:1.5}.playtest-card{margin:12px 0;padding:10px 12px;border:1px solid var(--line);border-radius:9px;background:#0d282416;font-size:9px;color:#aebcab;line-height:1.55}.playtest-card b{color:#ead59d}.candidate-badge{display:inline-flex;align-items:center;gap:6px;border:1px solid #e4c97c45;border-radius:20px;padding:4px 8px;color:#e7cd87;font-size:8px;letter-spacing:1px}@media(max-width:800px){.portrait-panel{top:max(12px,calc(var(--safe-t) + 8px));left:max(12px,calc(var(--safe-l) + 8px))}.top-right{top:max(12px,calc(var(--safe-t) + 8px));right:max(12px,calc(var(--safe-r) + 8px))}.minimap-panel{right:max(12px,calc(var(--safe-r) + 8px));top:max(57px,calc(var(--safe-t) + 53px))}.hotbar{bottom:max(17px,calc(var(--safe-b) + 9px))}.title-screen{padding:24px max(8vw,calc(var(--safe-r) + 18px)) max(24px,calc(var(--safe-b) + 18px)) max(8vw,calc(var(--safe-l) + 18px))}.title-top{top:max(24px,calc(var(--safe-t) + 14px));left:max(8vw,calc(var(--safe-l) + 18px));right:max(8vw,calc(var(--safe-r) + 18px))}.modal-backdrop{padding-top:var(--safe-t);padding-right:var(--safe-r);padding-bottom:var(--safe-b);padding-left:var(--safe-l)}#toast-area{max-width:calc(100vw - var(--safe-l) - var(--safe-r) - 24px)}.boss-ui{max-width:calc(100vw - var(--safe-l) - var(--safe-r) - 36px)}}@media(max-width:420px){.touch-buttons{grid-template-columns:50px 60px 50px;gap:7px}.touch-buttons button{width:50px;height:50px}.touch-buttons button.main-attack{width:60px;height:60px}.joystick{width:108px;height:108px}.hotbar{display:none}.bar-caption{bottom:max(151px,calc(var(--safe-b) + 143px));font-size:8px}.boss-ui{top:max(164px,calc(var(--safe-t) + 154px));width:72vw}.polish-stinger strong{font-size:22px}.polish-stinger small{padding:0 18px;line-height:1.4}.modal{max-height:calc(100vh - var(--safe-t) - var(--safe-b) - 14px)}}@media(hover:none)and (pointer:coarse){.hot-slot:hover .icon{transform:none}.small-button:hover{background:linear-gradient(135deg,#1c312bf7,#0c1d1cf2)}}@media(hover:none)and (pointer:coarse)and (min-width:801px)and (max-height:520px){.portrait-panel{left:max(12px,calc(var(--safe-l) + 8px));top:max(12px,calc(var(--safe-t) + 8px));width:216px;padding:10px 12px;gap:9px}.portrait{width:38px;height:46px}.portrait svg{width:38px;height:38px}.level-medal{left:10px;width:20px;height:20px}.name-row strong{font-size:10px}.name-row span{font-size:8px}.quest{display:none}.minimap-panel{width:131px;top:max(57px,calc(var(--safe-t) + 53px));right:max(12px,calc(var(--safe-r) + 8px));bottom:auto}.minimap-panel canvas{width:117px;height:89px}.minimap-caption{height:26px;font-size:8px}.zone{top:max(104px,calc(var(--safe-t) + 96px));left:250px;transform:none;text-align:left}.zone .ornament{display:none}.zone h2{font-size:16px;margin:0 0 3px}.zone p{font-size:8px}.top-right{right:max(12px,calc(var(--safe-r) + 8px));top:max(12px,calc(var(--safe-t) + 8px));gap:5px}.resource{height:32px;font-size:11px;padding:0 10px}.small-button{width:32px;height:32px}.boss-ui{top:max(88px,calc(var(--safe-t) + 78px));width:45vw}.boss-ui h3{font-size:11px}#toast-area{top:max(145px,calc(var(--safe-t) + 132px));width:46vw}.toast{font-size:9px;padding:8px 11px}#interact{top:47%;font-size:10px}.polish-zone{top:max(88px,calc(var(--safe-t) + 78px))}}@media(prefers-reduced-motion:reduce){.touch-buttons button:active,.touch-menu button:active,.touch-interact:active{transform:none}}.toast.recap{background:linear-gradient(135deg,#173a33f2,#102a27f2);border-color:#91b59a55;color:#dce8d7;letter-spacing:.15px}.toast.recap:first-letter{color:var(--gold)}.final-run-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:10px 0 16px}.final-run-summary span{display:grid;gap:3px;padding:9px 6px;border:1px solid var(--line);border-radius:8px;background:#0b262216;color:#9fb2a2;font-size:8px;letter-spacing:.6px;text-transform:uppercase}.final-run-summary b{font:18px var(--serif);font-weight:400;color:#ead39a;text-transform:none}@media(max-width:560px){.final-run-summary{grid-template-columns:repeat(2,1fr)}}@media(max-width:800px){.minimap-panel{bottom:auto!important}}@media(pointer:coarse){#interact,.minimap-caption .key{display:none!important}.tutorial{display:block!important;left:12px;right:12px;bottom:205px;width:auto;max-width:none;padding:9px 11px;border:1px solid #d6bd7f55;border-left:2px solid #d6bd7f;border-radius:9px;background:linear-gradient(135deg,#1c312bf2,#0c1d1ced);box-shadow:0 8px 24px #06171444}.tutorial .eyebrow{font-size:7px;letter-spacing:1.4px}.tutorial p{font-size:9px;line-height:1.42;margin-top:4px}body.boss-stinger-active .tutorial{opacity:0!important}}@media(pointer:coarse)and (max-height:680px){.tutorial{bottom:176px}}#world-cue{position:absolute;left:24px;bottom:220px;width:260px;padding:12px 15px;border-left:2px solid var(--gold);pointer-events:none}#world-cue>span{font-size:8px;letter-spacing:1.7px;text-transform:uppercase;color:var(--gold)}#world-cue p{font-size:11px;line-height:1.55;color:var(--ink);margin:6px 0 0}#world-cue small{display:block;font-size:9px;color:var(--muted);margin-top:6px;line-height:1.5}#world-cue.v3-danger{border-color:var(--red)}body.v3-cue-active .tutorial{display:none!important}.v3-journal{margin-top:23px;padding-top:21px;border-top:1px solid var(--line)}.v3-journal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0}.v3-journal-card{display:block;text-align:left;padding:15px;border:1px solid var(--line);border-radius:10px;background:#97b18614;min-width:0}.v3-journal-card span{font-size:8px;color:var(--gold);letter-spacing:1px}.v3-journal-card strong{display:block;font:18px/1.35 var(--serif);color:var(--ink);margin:8px 0}.v3-journal-card small{font-size:10px;color:var(--muted);line-height:1.6;display:block}.v3-journal-card.done{border-color:#a8c8a76b}.v3-journal-card.unknown{opacity:.7}button.v3-journal-card:hover{background:#97b18628;border-color:var(--gold)}.v3-biome-notes{padding:14px 16px;background:#061f211c;border:1px solid var(--line);border-radius:10px;font-size:12px}.v3-biome-notes b{font:19px var(--serif);color:var(--gold)}.v3-guide-state{padding:14px;border:1px solid #dcc38260;border-radius:10px;color:var(--gold);font-size:13px;line-height:1.65;background:#d4bc7710}.v3-reward{display:flex;align-items:center;gap:12px}.a11y-text-large #world-cue p,.a11y-text-large .v3-journal-card small{font-size:13px}.a11y-text-xlarge #world-cue p,.a11y-text-xlarge .v3-journal-card small{font-size:15px}.a11y-high-contrast #world-cue{background:#0c211d;border-color:var(--gold)}@media(max-width:800px){#world-cue{left:max(12px,var(--safe-l));right:max(12px,var(--safe-r));bottom:max(212px,calc(var(--safe-b) + 204px));width:auto;padding:10px 12px}#world-cue p{font-size:11px}#world-cue small{font-size:8px}.v3-journal-grid{grid-template-columns:1fr}.v3-journal-card{padding:13px}}@media(pointer:coarse){body.v3-cue-active #hook-prompt{display:none!important}}@media(max-height:520px)and (pointer:coarse){#world-cue{left:245px;right:215px;bottom:max(18px,calc(var(--safe-b) + 12px));padding:8px 10px}#world-cue p{font-size:10px;margin-top:4px}#world-cue small{display:none}}@media(max-width:400px)and (max-height:680px){#world-cue{bottom:195px}#world-cue p{font-size:10px}}@media(max-width:380px){.touch-scale-large .joystick{transform:scale(1.06)}.touch-scale-large .touch-buttons{transform:scale(1.045)}}@media(max-width:400px)and (max-height:680px){#world-cue{bottom:205px}.a11y-text-xlarge #world-cue small{display:none}}#game{display:none!important}body.game-canvas-ready #game{display:block!important}body:not(.game-canvas-ready) #hud,body:not(.game-canvas-ready) #touch-controls{display:none!important}.title-screen{background:radial-gradient(ellipse at 79% 56%,rgba(151,171,126,.98) 0 12%,rgba(129,155,112,.96) 12.3% 17.5%,transparent 17.8%),radial-gradient(ellipse at 79% 65%,rgba(31,73,69,.94) 0 18%,transparent 18.4%),linear-gradient(90deg,#0a1e1d,#0c201d 31%,#173a35 63%,#315c50)}.title-screen:before{content:"";position:absolute;right:4vw;top:16vh;width:min(43vw,610px);height:min(58vh,480px);pointer-events:none;opacity:.42;background:radial-gradient(circle at 24% 34%,#d4c98a 0 1.1%,transparent 1.4%),radial-gradient(circle at 53% 22%,#315b49 0 1.2%,transparent 1.5%),radial-gradient(circle at 68% 48%,#d4c98a 0 1%,transparent 1.3%),repeating-linear-gradient(166deg,transparent 0 34px,rgba(234,226,184,.13) 35px 36px,transparent 37px 70px);transform:rotate(-4deg)}.title-screen>*{z-index:1}.title-content{position:relative;z-index:1}#loading.game-preparing{background:#0a1e1df9}#loading.game-preparing .game-init-stage{font:9px var(--sans);color:#d6c58f;letter-spacing:1.3px;max-width:min(560px,84vw);text-align:center;line-height:1.5}@media(max-width:800px){.title-screen{background:radial-gradient(ellipse at 91% 67%,rgba(139,163,116,.55) 0 13%,transparent 13.5%),linear-gradient(100deg,#0a1e1d,#102b26 66%,#2f584d)}.title-screen:before{right:-22vw;top:23vh;width:74vw;opacity:.28}}#loading.game-preparing .game-init-progress{width:min(360px,72vw);height:5px;border-radius:999px;overflow:hidden;background:#081f1c;border:1px solid #d8c27a2c;box-shadow:inset 0 0 0 1px #0002}#loading.game-preparing #game-init-progress-bar{height:100%;width:0;background:linear-gradient(90deg,#a9c79f,#e8c781);transition:width .12s linear}#loading.game-preparing .game-init-progress-text{font-size:8px;letter-spacing:1.4px;color:#8fa995}@media(prefers-reduced-motion:reduce){#loading.game-preparing #game-init-progress-bar{transition:none}}body.game-canvas-ready{--gd027-touch-glow:rgba(236,205,132,.24)}@media(pointer:coarse),(max-width:800px),(max-width:1024px)and (max-height:520px){body.game-canvas-ready .joystick{bottom:max(24px,calc(var(--safe-b) + 16px));left:max(22px,calc(var(--safe-l) + 16px));width:120px;height:120px;background:radial-gradient(circle at 50% 50%,#e8dfb30b,#122f2357 60%,#0a221d8f);border-color:#e9dfb35c;box-shadow:inset 0 0 0 7px #ffffff03,0 8px 26px #03110e29}body.game-canvas-ready .joystick-knob{width:49px;height:49px;background:#e6dda638;border-color:#eee5b38f;box-shadow:0 5px 16px #0000002e}body.game-canvas-ready .touch-buttons{bottom:max(24px,calc(var(--safe-b) + 16px));right:max(20px,calc(var(--safe-r) + 15px));grid-template-columns:54px 66px 54px;gap:10px}body.game-canvas-ready .touch-buttons button{position:relative;width:54px;height:54px;overflow:visible;border-color:#e9dfb361;box-shadow:0 7px 22px #05181430;transition:transform .09s ease,border-color .12s ease,background .12s ease,opacity .12s ease,box-shadow .12s ease}body.game-canvas-ready .touch-buttons button.main-attack{width:66px;height:66px}body.game-canvas-ready .touch-buttons button.touch-pressed{transform:scale(.91);border-color:#ffe59ee6;box-shadow:0 0 0 5px #e8c78114}body.game-canvas-ready .touch-buttons button.touch-ready{border-color:#eed38fa6}body.game-canvas-ready .touch-buttons button.touch-context{background:#284c3ce8;border-color:#f1d188;box-shadow:0 0 0 4px #e8c78114,0 7px 22px #05181438}body.game-canvas-ready .touch-buttons button.touch-cooling{opacity:.63}body.game-canvas-ready .touch-buttons button.main-attack.touch-charging{transform:scale(.96);box-shadow:0 0 0 7px #e8c78117,0 0 24px #e8c7812e}body.game-canvas-ready .touch-cd{position:absolute;right:-3px;top:-5px;min-width:21px;height:21px;padding:0 4px;border-radius:10px;display:grid;place-items:center;background:#071a17f0;border:1px solid rgba(240,213,146,.48);font:bold 9px/1 var(--sans);color:#f6e2a8;pointer-events:none;box-shadow:0 3px 9px #00000047}body.game-canvas-ready .touch-cd.action{inset:auto auto -13px 50%;transform:translate(-50%);min-width:42px;height:18px;border-radius:9px;font-size:7px;letter-spacing:.8px;background:#0c2a24f5}body.game-canvas-ready .touch-menu{bottom:max(168px,calc(var(--safe-b) + 155px));left:max(27px,calc(var(--safe-l) + 18px))}body.game-canvas-ready .touch-interact{right:max(29px,calc(var(--safe-r) + 20px));bottom:max(165px,calc(var(--safe-b) + 151px));min-height:40px;border-color:#e8c78173!important;box-shadow:0 8px 24px #05181433}body.game-canvas-ready.touch-in-combat .touch-interact:not(.execute){opacity:.82}body.game-canvas-ready .touch-interact:not(.hidden){animation:gd027-interact-in .16s ease-out both}body.touch-left.game-canvas-ready .joystick{left:auto;right:max(22px,calc(var(--safe-r) + 16px))}body.touch-left.game-canvas-ready .touch-buttons{right:auto;left:max(20px,calc(var(--safe-l) + 15px))}body.touch-left.game-canvas-ready .touch-menu{left:auto;right:max(27px,calc(var(--safe-r) + 18px))}body.touch-left.game-canvas-ready .touch-interact{right:auto;left:max(29px,calc(var(--safe-l) + 20px))}}@media(pointer:coarse)and (orientation:landscape)and (max-height:520px),(max-width:1024px)and (orientation:landscape)and (max-height:520px){body.game-canvas-ready .joystick{width:105px;height:105px;bottom:max(14px,calc(var(--safe-b) + 9px))}body.game-canvas-ready .joystick-knob{width:43px;height:43px}body.game-canvas-ready .touch-buttons{bottom:max(13px,calc(var(--safe-b) + 8px));grid-template-columns:48px 59px 48px;gap:7px}body.game-canvas-ready .touch-buttons button{width:48px;height:48px}body.game-canvas-ready .touch-buttons button.main-attack{width:59px;height:59px}body.game-canvas-ready .touch-menu{bottom:max(126px,calc(var(--safe-b) + 116px))}body.game-canvas-ready .touch-interact{bottom:max(125px,calc(var(--safe-b) + 114px))}body.game-canvas-ready #hook-prompt{bottom:150px}}.gd027-contramare-chip{display:none;align-items:center;gap:7px;margin-top:5px;padding:4px 8px;border:1px solid rgba(211,190,129,.25);border-radius:999px;background:#0d2723b8;font-size:7px;letter-spacing:1px;color:#e9d49c;text-transform:uppercase;width:max-content;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body.game-canvas-ready .gd027-contramare-chip.active{display:flex}.gd027-rule-card{margin:14px 0;padding:13px 14px;border:1px solid rgba(232,199,129,.22);border-radius:9px;background:linear-gradient(135deg,#7e9b7717,#0d2a2559);font-size:10px;line-height:1.55;color:#bfd0be}.gd027-rule-card b{color:#ecd292;letter-spacing:1px}.gd027-rule-card small{display:block;margin-top:5px;color:#94aa97}@keyframes gd027-interact-in{0%{transform:translateY(5px);opacity:0}to{transform:none;opacity:1}}@media(prefers-reduced-motion:reduce){body.game-canvas-ready .touch-buttons button,.touch-interact{transition:none!important;animation:none!important}}.graphics-quality-row{grid-column:1/-1;border:1px solid #d3be8155;border-radius:12px;padding:14px;background:linear-gradient(125deg,#325d4d55,#102d28aa)}.graphics-summary{grid-column:1/-1;margin:4px 0 0;color:#edd79b;font-size:12px;line-height:1.6}.setting-row select:focus-visible,#title-settings:focus-visible{outline:2px solid #f1d188;outline-offset:3px}.title-actions{flex-wrap:wrap}@media(pointer:coarse){.settings-grid{grid-template-columns:1fr!important}.setting-row select{min-height:44px;font-size:16px;max-width:100%}.setting-row label{font-size:13px;line-height:1.5}.setting-row small{font-size:12px;line-height:1.6}#modal.modal{max-height:calc(100dvh - var(--safe-t,0px) - var(--safe-b,0px) - 24px);overscroll-behavior:contain}.modal-actions button,#title-settings{min-height:44px}html[data-graphics=high] .panel{border-color:#d8ce9b66}html[data-graphics=high] .touch-buttons button{background:linear-gradient(145deg,#45664eea,#193c33f5)}html[data-graphics=high] .touch-buttons button.main-attack{color:#f5dfad}}html[data-graphics=low] .panel,html[data-graphics=low] .touch-buttons button,html[data-graphics=low] .joystick{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;box-shadow:none!important}html[data-graphics=low] #vignette{opacity:.45}html[data-graphics-device=mobile] .hotbar,html[data-graphics-device=mobile] .controls-hint,html[data-graphics-device=mobile] .minimap-caption .key{display:none!important}html[data-graphics-device=mobile] .touch-controls.playing{display:block}#touch-controls .touch-cd:empty{display:none!important}#touch-controls .icon{pointer-events:none}@media(max-width:800px),(max-width:1024px)and (max-height:520px){.touch-controls.playing{display:block}.hotbar,.controls-hint,.minimap-caption .key,body.game-canvas-ready #interact,body.game-canvas-ready #hook-prompt{display:none!important}}@media(pointer:coarse){html[data-graphics-device=mobile] body.game-canvas-ready #interact,html[data-graphics-device=mobile] body.game-canvas-ready #hook-prompt{display:none!important}}html[data-graphics-device=mobile] body.game-canvas-ready #polish-zone,html[data-graphics-device=mobile] body.game-canvas-ready #hud .tutorial{display:none!important}html[data-graphics-device=mobile] body.zone-banner-active #hud .zone{opacity:1;transform:none}html[data-graphics-device=mobile] body.game-canvas-ready #toast-area{top:max(188px,calc(var(--safe-t,0px) + 180px));width:min(320px,calc(100vw - 32px));gap:0}html[data-graphics-device=mobile] body.game-canvas-ready .toast{padding:8px 12px;font-size:11px;line-height:1.45;border-radius:9px;box-shadow:none}html[data-graphics-device=mobile] body.game-canvas-ready #world-cue{max-width:320px;padding:8px 10px}html[data-graphics-device=mobile] body.game-canvas-ready #world-cue small{display:none}html[data-graphics-device=mobile] body.game-canvas-ready.touch-in-combat #world-cue:not(.v3-danger){display:none}@media(orientation:landscape)and (max-height:520px){html[data-graphics-device=mobile] body.game-canvas-ready #toast-area{top:max(16px,calc(var(--safe-t,0px) + 8px));width:clamp(180px,calc(100vw - 480px),300px)}}@media(max-width:420px){.title-actions{gap:8px}.title-actions button{padding-left:14px;padding-right:14px}.graphics-quality-row{padding:10px}}#game-viewport{position:fixed;inset:0;overflow:hidden;transform:translateZ(0)}.desktop-ad{display:none;overflow:hidden}.desktop-ad[hidden]{display:none!important}.desktop-ad iframe{display:block;width:100%;height:100%;border:0}#playing-ad{position:fixed;left:0;top:140px;width:clamp(160px,18vw,240px);height:max(0px,calc(100dvh - 500px));z-index:6;background:transparent}.pause-ad{width:100%;aspect-ratio:468/60;align-self:center}.pause-ad iframe{width:468px;height:60px;transform-origin:top left}@media(min-width:1100px)and (pointer:fine)and (hover:hover){html[data-desktop-ad=playing] #playing-ad{display:block}html[data-desktop-ad=pause] #modal-backdrop{display:grid;grid-template-columns:minmax(0,1fr) min(60vw,830px) minmax(0,1fr);gap:20px;padding-inline:max(24px,calc((100vw - 1806px)/2))}html[data-desktop-ad=pause] #modal{grid-area:1/2;width:100%;min-width:0}html[data-desktop-ad=pause] #pause-ad-left{grid-area:1/1}html[data-desktop-ad=pause] #pause-ad-right{grid-area:1/3}html[data-desktop-ad=pause] .pause-ad{display:block}}
