.sprite-actor{position:relative;display:block;width:100%;height:100%;pointer-events:none}.sprite-pose{display:block;width:100%;height:100%;background-repeat:no-repeat;background-size:contain;background-position:center bottom;transform-origin:50% 100%}.sprite-pose.is-atlas{position:absolute;bottom:0;width:100%;height:auto;aspect-ratio:1;background-size:400% 300%;clip-path:inset(1px);transform:scale(.97)}.sprite-pose.is-atlas.is-wide{width:133.3333%;left:-16.6667%;aspect-ratio:4 / 3}.sprite-preview .sprite-pose.is-atlas.is-wide{width:100%;left:0}.sprite-breath{display:block;position:absolute;inset:0;transform-origin:50% 94%}.sprite-actor[data-motion=idle] .sprite-breath{animation:ink-idle var(--idle-duration, 3s) ease-in-out var(--idle-delay, 0s) infinite}.motion-paused .sprite-breath{animation-play-state:paused!important}.sprite-actor.is-reduced .sprite-breath,.reduced .sprite-breath,.piece.defeated .sprite-breath{animation:none!important;transform:none!important}.sprite-loading{display:grid;place-items:center;font-size:11px;color:#7d896e;height:100%}.sprite-preview{width:300px;height:340px;position:relative}.sprite-preview.is-game-size .sprite-actor{position:absolute;width:96px;height:96px;bottom:0;left:calc(50% - 48px)}.piece.has-sprite .actor-facing{animation:none!important;transform:none!important}.piece.has-sprite .actor-motion{transition:transform 90ms linear}.piece.has-sprite .sprite-actor{filter:saturate(.94)}.sprite-actor.is-reduced .sprite-pose,.reduced .sprite-actor .sprite-pose,.piece.defeated .sprite-pose{animation:none!important}.motion-paused .sprite-actor .sprite-pose{animation-play-state:paused!important}@media(prefers-reduced-motion:reduce){.sprite-breath{animation:none!important;transform:none!important}.sprite-actor .sprite-pose{animation:none!important}}.sprite-stage{height:460px}.sprite-preview:after{content:"";position:absolute;bottom:9px;left:31%;width:38%;height:10px;border-radius:50%;box-shadow:0 0 12px 3px #54633922;z-index:-1}.sprite-direction-note{position:absolute;top:22px;right:25px;font-size:12px;color:#778967}.sprite-lab .rig-name{min-height:68px}@media(max-width:700px){.sprite-stage{height:335px}.sprite-lab .rig-station{height:255px}.sprite-preview{transform:scale(.52);transform-origin:50% 100%;left:calc(50% - 150px);top:-125px}.sprite-lab .rig-name{bottom:0}.sprite-direction-note{top:45px;left:28px;font-size:10px}}.rig-lab{min-height:100svh;background:radial-gradient(ellipse at 70% 40%,#e6ecd2,transparent 60%),#f5f4e6;color:#36543e;padding:25px 5% 40px;font-family:PingFang SC,system-ui,sans-serif}.rig-lab header{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:15px}.rig-lab a{display:flex;gap:8px;color:#69815c;text-decoration:none;font-size:12px}.rig-lab header small{display:block;font-size:10px;color:#9aab8c;margin-top:5px}.lab-badge{font-size:10px;padding:9px 15px;background:#e7ebd7;border-radius:20px}.lab-title{text-align:center;margin:48px auto 20px}.lab-title>small{letter-spacing:4px;color:#8d9d79;font-size:10px}.lab-title h1{font-size:36px;margin:15px 0}.lab-title p{font-size:13px;line-height:1.8;color:#89977b}.rig-stage{position:relative;max-width:950px;height:430px;margin:auto;display:flex;justify-content:center;gap:110px;align-items:flex-end;border-radius:35px;background:linear-gradient(#f9f8ee,#e4ead8);overflow:hidden;border:1px solid #fff;box-shadow:0 15px 50px #3f563b0b}.rig-floor{position:absolute;left:-10%;right:-10%;height:160px;bottom:-55px;border-radius:50%;background:#d8dfc355;transform:rotate(-4deg);border:1px solid #b9c5a43c}.stage-caption{position:absolute;top:23px;left:28px;font-size:12px;color:#889875}.rig-station{position:relative;z-index:2}.rig-actor{position:relative;width:300px;height:340px;transform-origin:50% 100%;isolation:isolate}.rig-part{position:absolute;pointer-events:none}.rig-part>img{width:100%;height:100%;object-fit:fill;display:block}.rig-arm-chain{position:absolute;width:0;height:0}.chain-arm{position:absolute;left:0;top:0}.chain-prop{position:absolute}.rig-name{text-align:center;margin:0 0 20px;font-size:14px}.rig-name small{display:block;font-size:10px;color:#869c77;margin-top:6px}.rig-shadow{position:absolute;left:72px;bottom:10px;width:165px;height:22px;background:radial-gradient(ellipse,#61714942,transparent 70%);filter:blur(3px)}.joint{position:absolute;width:7px;height:7px;background:#f57956;border:1px solid #fff;border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 3px #ed947633}.rig-controls{max-width:950px;margin:20px auto;padding:20px;background:#fffdf0d9;border:1px solid white;border-radius:24px;box-shadow:0 8px 25px #4d644311}.motion-buttons{display:flex;justify-content:center;gap:9px;flex-wrap:wrap}.rig-controls button{border:1px solid #dbe3cb;padding:11px 16px;border-radius:12px;font-size:12px;min-height:44px}.rig-controls button.active{background:#40664c;color:#fffce7;border-color:#40664c}.playback{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:13px;border-top:1px solid #e8ecde;margin-top:16px;padding-top:16px;font-size:11px}.playback select{border:1px solid #d6dec7;border-radius:8px;padding:8px;background:#f6f8ed;color:#506d45}.playback label{display:flex;gap:6px;align-items:center}.rig-controls>p{font-size:10px;color:#9aa78b;display:flex;align-items:center;justify-content:center;gap:6px;margin-top:18px}.rig-error{position:absolute;inset:0;display:grid;place-content:center;text-align:center;font-size:16px;color:#8c825e}.rig-error small{display:block;font-size:11px;margin-top:12px}.rig-skill{position:absolute;left:75px;top:110px;width:165px;height:180px;border:2px solid #82bebb88;border-radius:50%;box-shadow:0 0 30px #bbe2d6;font-size:35px;display:grid;place-items:center;color:#fff9cd;pointer-events:none}.rig-skill.heal{border-color:#a3c78055;box-shadow:0 0 30px #d6f6a0;left:20px;top:155px;width:70px;height:70px}.loading{display:grid;place-items:center;font-size:12px;color:#96a482}@media(max-width:700px){.rig-lab{padding:20px 12px}.lab-badge{display:none}.rig-lab header{font-size:12px}.lab-title{margin-top:35px}.lab-title h1{font-size:27px}.lab-title p{font-size:11px}.rig-stage{height:335px;gap:0}.rig-station{width:50%;height:275px}.rig-actor{transform:scale(.65);transform-origin:0 100%;left:calc(50% - 97px);top:-62px}.rig-name{position:absolute;bottom:6px;width:100%;font-size:12px}.rig-name small{font-size:8px}.rig-controls{padding:15px}.rig-controls button{padding:9px 12px;font-size:11px}.rig-controls>p{font-size:9px;line-height:1.7}.playback{gap:10px}.rig-error{font-size:13px}}.rig-scrub{display:flex;align-items:center;gap:12px;margin:18px auto 0;max-width:420px;font-size:11px}.rig-scrub input{flex:1;min-width:0;accent-color:#40664c}.chain-arm{z-index:2}.chain-prop{z-index:1}.rig-lab{width:100%;min-width:0;overflow-x:clip}@media(max-width:700px){.rig-lab header>span{min-width:0}.rig-lab header small{white-space:normal}.rig-station{height:275px;min-width:0;flex:1}.rig-actor{transform:scale(.49);left:calc(50% - 74px);top:-115px}.rig-name{bottom:1px}}.rig-attack-effect{position:absolute;pointer-events:none;width:38px;height:38px;display:grid;place-items:center;border-radius:50%}.rig-attack-effect.pulse{color:#fff;background:#84c8b5;box-shadow:0 0 18px #9cdcca;font-size:25px}.rig-attack-effect.impact{width:65px;height:30px;border:4px solid #d2a35c;box-shadow:0 0 12px #f2d49b}.rig-stage{height:470px}.rig-name{min-height:65px}@media(max-width:700px){.rig-stage{height:355px}.rig-station{height:300px}.rig-actor{top:-130px}.rig-name{bottom:0}}.role-tabs{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin-bottom:16px}.piece .game-rig-scale{position:absolute;display:block;width:300px;height:340px;left:50%;bottom:0;transform:translate(-50%) scale(.43);transform-origin:50% 100%}.piece .rig-actor{left:0;top:0;transform:none}.piece .rig-shadow{display:none}.piece .rig-part>img,.piece .chain-arm,.piece .chain-prop{max-width:none;filter:none;animation:none;object-fit:fill}.piece .rig-part>img{width:100%;height:100%}.piece.has-rig .actor-motion{overflow:visible}.piece .chain-arm,.piece .chain-prop{height:auto}.piece .chain-arm,.piece .chain-prop{position:absolute}:root{font-family:PingFang SC,Microsoft YaHei,system-ui,sans-serif;color:#2e3d34;background:#f5f7f2;font-synthesis:none;font-weight:500}.asset-loading-screen{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;background:#0a1218c7;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.asset-loading-card{width:min(410px,calc(calc(var(--game-vw, 1vw) * 100) - 40px));padding:30px 28px 24px;display:grid;gap:12px;text-align:center}.asset-loading-card strong{font-size:19px}.asset-loading-orbit{width:58px;height:58px;margin:0 auto 4px;display:grid;place-items:center;border:1px solid rgba(255,215,125,.56);border-radius:50%;font-size:27px;animation:asset-loading-pulse 1.15s ease-in-out infinite}.asset-loading-track{height:8px;overflow:hidden;border-radius:99px;background:#ffffff1f}.asset-loading-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#f3bf5b,#8ee6b4);transition:width .18s ease}.asset-loading-card small{color:#ffffffb3}@keyframes asset-loading-pulse{0%,to{transform:scale(.92);opacity:.72}50%{transform:scale(1.06);opacity:1}}*{box-sizing:border-box}body{margin:0}button{font:inherit;color:inherit;border:0;cursor:pointer;background:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;touch-action:manipulation}button:disabled{cursor:default}button:focus-visible{outline:3px solid #dc9a45;outline-offset:4px}button:not(:disabled){transition:background .18s,transform .18s,box-shadow .18s}button:not(:disabled):active{transform:scale(.97)}h1,h2,p{margin:0}button svg{flex-shrink:0}.app{height:calc(var(--game-vh, 1vh) * 100);min-height:0;max-height:calc(var(--game-vh, 1vh) * 100);overflow:hidden;position:relative;isolation:isolate;padding-left:var(--game-safe-left, 0px);padding-right:var(--game-safe-right, 0px)}.world{position:absolute;inset:0;overflow:hidden;background:#b6dcdf;z-index:-3}.world-stage{width:max(calc(var(--game-vw, 1vw) * 100),calc(var(--game-vh, 1vh) * 125));aspect-ratio:1672/941;position:absolute;left:50%;top:49%;transform:translate(-50%,-50%)}.island{width:100%;display:block}.grid{position:absolute;inset:0;width:100%;height:100%;z-index:1}.grid polygon{stroke:transparent;stroke-width:0;fill:transparent;cursor:pointer;transition:fill-opacity .16s ease}.grid .friendly{fill:transparent;stroke:transparent}.grid .available{fill:url(#tile-hover-glow);fill-opacity:.2}.grid .friendly:hover{fill:url(#tile-hover-glow);fill-opacity:1;stroke:none}.grid .enemy{stroke:transparent;fill:transparent}.grid.faded{opacity:0;pointer-events:none}.piece{position:absolute;width:8.2%;height:16%;padding:0;transform:translate(-50%,-100%);isolation:isolate;display:block;overflow:visible;transition:top .4s ease,left .4s ease!important}.piece:not(:disabled):active{transform:translate(-50%,-100%)}.piece img{width:100%;height:100%;object-fit:contain;object-position:center bottom;position:relative;z-index:2;filter:saturate(.87) contrast(.96);pointer-events:none}.piece.foe{width:7.2%;height:13%}.piece.boss{width:15.4%;height:27.5%;filter:drop-shadow(0 10px 16px #1a241866)}.contact{position:absolute;bottom:-1%;left:18%;width:64%;height:13%;border-radius:50%;background:radial-gradient(ellipse,#3e463870,transparent 68%);filter:blur(2px);z-index:0}.selected .contact{background:#eff6b677;box-shadow:0 0 0 3px #fffad9,0 0 24px #fdf3a6}.unit-hud{position:absolute;bottom:100%;left:20%;width:60%;display:grid;justify-items:center;z-index:5}.stars{color:#f9df81;font-size:12px;line-height:16px;text-shadow:0 1px 2px #6d6929}.health{width:62px;height:6px;background:#29443c66;border-radius:4px;overflow:hidden;display:block;position:relative}.health i{height:100%;display:block;background:#72b994}.foe .health i{background:#bc8baf}.health b{height:100%;display:block;background:#b4e6ff;position:absolute;top:0;left:0}.float-text{position:absolute;left:50%;top:-25%;transform:translate(-50%);white-space:nowrap;z-index:8;color:#fff8e6;font-weight:800;font-size:20px;text-shadow:0 2px 3px #734a38}.float-text.heal{color:#246f51;text-shadow:0 1px #fff}.shield-ring{position:absolute;inset:10% 1% -2%;border:2px solid #adf1e4aa;border-radius:50%;background:#a1e9da14;z-index:3;box-shadow:0 0 15px #defeee66}.particles{position:absolute;inset:0;pointer-events:none;z-index:900}.particles canvas{width:100%;height:100%}.vignette{position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,#eaf1db78,transparent 25%,transparent 58%,#dce7d9a6 95%)}.glass{background:#fffdf0da;border:1px solid #fffef4d9;box-shadow:0 8px 26px #35524212;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.icon-button{width:44px;height:44px;border-radius:50%}.icon-button:hover{background:#fffef5}.primary{background:var(--theme-cta-bg, linear-gradient(180deg, #34d399 0%, #10b981 55%, #059669 100%));color:#fff;border-radius:16px;padding:16px 22px;font-weight:700;box-shadow:0 6px #047857,0 12px 22px #10b98140;letter-spacing:1px;min-height:52px}.primary:hover{background:var(--theme-cta-hover-bg, linear-gradient(180deg, #4ade80 0%, #10b981 50%, #047857 100%));box-shadow:0 6px #047857,0 14px 25px #10b98159}.eyebrow{font-size:11px;letter-spacing:2.5px;color:#6c856a;font-weight:700}.menu-header{display:flex;justify-content:space-between;padding:30px 4.5%;align-items:center}.brand{display:flex;align-items:center;gap:9px;letter-spacing:3px;font-size:12px;font-weight:750}.hero{position:absolute;left:9%;top:22%;z-index:1000}.hero .eyebrow{display:flex;align-items:center;gap:10px;font-size:12px;letter-spacing:3px}.eyebrow>span{height:6px;width:6px;background:#78966b;border-radius:50%}.hero h1{font-size:clamp(64px,calc(var(--game-vw, 1vw) * 6.3),100px);font-weight:850;line-height:1.17;letter-spacing:3px;margin:20px 0 24px;color:#294e3c;text-shadow:0 2px #fffae8}.hero h1 span{display:block;font-size:.42em;letter-spacing:14px;margin-top:14px;font-weight:650}.hero>p{font-size:15px;line-height:2;color:#607467;letter-spacing:1.2px}.hero-start{margin-top:29px;min-width:220px;justify-content:space-between}.menu-links{display:flex;gap:27px;margin-top:28px;font-size:13px}.menu-links button{padding:7px 0}.hero-note{display:flex;gap:13px;margin-top:38px;align-items:center;font-size:12px}.hero-note>span{font-size:28px;font-weight:300;color:#7f9077;border-right:1px solid #8b9d7355;padding-right:14px}.hero-note small{display:block;font-size:10px;margin-top:6px;letter-spacing:1px;color:#7f8d78}.on-menu .vignette{background:linear-gradient(90deg,#f4f4ddfa 4%,#eff1dfe8 30%,#eff1dd88 46%,transparent 72%),linear-gradient(0deg,#e1eadbd9,transparent 20%)}.world-menu .world-stage{left:61%;top:50%;width:max(calc(var(--game-vw, 1vw) * 105),calc(var(--game-vh, 1vh) * 155))}.world-menu .piece{display:none}.hero-pear{position:absolute;right:18%;top:24%;width:22%;height:51%;object-fit:contain;filter:drop-shadow(8px 22px 8px #41532d36);animation:breathe 5s ease-in-out infinite}.hero-sticker{position:absolute;right:15%;bottom:22%;padding:12px 20px;background:#fffce2db;border:1px solid #fff;box-shadow:0 5px 20px #5b5d3920;border-radius:30px;transform:rotate(-4deg);font-size:12px;display:flex;align-items:center;gap:9px}.menu-footer{position:absolute;left:4.5%;right:4.5%;bottom:23px;display:flex;justify-content:space-between;font-size:10px;letter-spacing:1.5px;color:#6c826f}.hud{position:absolute;top:23px;left:28px;right:28px;display:flex;align-items:center;justify-content:space-between;gap:16px;z-index:1100}.hud-left-group{display:flex;align-items:center;gap:12px;flex-shrink:0}.hud-center-group{display:flex;align-items:center;gap:14px;justify-content:center;flex:1;min-width:0}.hud-right-group{display:flex;align-items:center;gap:10px;flex-shrink:0;margin-left:auto}.hud-fullscreen-btn{color:#4a6755}.hud-fullscreen-btn:hover{color:#214835;transform:scale(1.06)}.chapter-title small{display:block;font-size:9px;letter-spacing:1.8px;margin-bottom:5px;color:#627b63}.chapter-title strong{font-size:19px;letter-spacing:2px}.rounds{display:flex;gap:10px;align-items:center;flex-shrink:0}.rounds span{width:25px;height:25px;border-radius:50%;background:#fff8df77;display:grid;place-items:center;font-size:10px;color:#668364}.rounds .current{background:#396349;color:#fffbe9;width:33px;height:33px;box-shadow:0 0 0 5px #fff9df7a}.rounds .done{background:#b4ca9b}.resources{margin-left:auto;display:flex;align-items:center;gap:18px;border-radius:30px;padding:12px 22px}.resources span{display:flex;gap:8px;font-size:17px;font-weight:700;align-items:center}.resources span:first-child svg{color:#dc8b78}.resources span:last-child svg{color:#b79b3e}.resources i{height:18px;width:1px;background:#d2d9bc}.stage-label{position:absolute;top:108px;left:36px;font-size:12px;letter-spacing:1px}.stage-label>span{width:6px;height:6px;border-radius:50%;background:#658853;display:inline-block;margin-right:8px}.stage-label small{display:block;font-size:10px;color:#71886f;margin-top:8px;letter-spacing:0}.quest-peek{position:absolute;top:101px;right:29px;border-radius:20px;padding:12px 18px 12px 6px;text-align:left;gap:8px;z-index:1001}.quest-peek>img{width:51px;height:68px;object-fit:contain}.quest-peek small{font-size:10px;display:block;color:#7b8c70}.quest-peek strong{font-size:12px;display:block;margin:6px 0}.quest-peek em{display:flex;align-items:center;gap:9px;font-size:10px;color:#9a8850;font-style:normal}.quest-peek.complete{background:#f1ffe6dc}.board-guide{position:absolute;bottom:242px;left:50%;transform:translate(-50%);padding:7px 14px;border-radius:30px;display:flex;gap:10px;font-size:10px;align-items:center}.board-guide strong{font-size:12px}.bottom-area{position:absolute;bottom:22px;left:30px;right:30px;z-index:1000}.bench-bar{display:flex;align-items:center;gap:20px;margin-bottom:10px;min-height:64px}.bench-title{font-size:12px;margin-left:14px}.bench-title small{display:block;font-size:9px;margin-top:7px;color:#668068}.bench-slots{display:flex;gap:8px}.bench-slot{height:62px;width:68px;background:#fffcdf9e;border:1px solid #fffce3;border-radius:14px;position:relative;box-shadow:0 3px 6px #475c3510}.bench-slot>span{font-weight:300;font-size:21px;color:#92a17d}.bench-slot img{height:64px;width:58px;object-fit:contain;position:absolute;bottom:5px}.bench-slot b{position:absolute;bottom:2px;font-size:9px;color:#9c8538}.bench-slot.chosen{background:#fff6c5;outline:2px solid #649268}.help-button{margin-left:auto;border-radius:50%;width:36px;height:36px}.selection{margin-left:auto;border-radius:14px;padding:12px 15px;display:flex;gap:16px;font-size:12px}.selection strong span{color:#b19439}.selection button{font-size:10px}.shop{border-radius:23px;padding:15px 19px 18px}.shop-caption{display:flex;align-items:center;gap:12px;margin-bottom:13px;font-size:12px}.shop-caption>span{display:flex;gap:7px;align-items:center;font-weight:700}.shop-caption>small{font-size:10px;color:#83917c}.shop-caption>div{display:flex;gap:12px;margin-left:auto}.shop-caption button{font-size:10px;color:#75806b}.shop-caption button.active{color:#315f4c}.shop-caption b{color:#a28d42}.shop-main{display:flex;gap:22px;align-items:stretch}.shop-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;flex:1}.recruit-card{position:relative;display:flex;text-align:left;border:1px solid #dbe0cc;background:#f8f9ef;border-radius:14px;min-height:97px;padding:8px 9px;gap:9px;overflow:hidden}.recruit-card:hover{border-color:#94b395;background:#fffff4;transform:translateY(-3px)}.portrait{width:69px;height:75px;flex-shrink:0;position:relative;background:radial-gradient(ellipse,var(--role-color),transparent 70%);align-self:center}.portrait img{width:100%;height:100%;object-fit:contain}.card-copy{min-width:0;flex:1}.role-tag{font-size:8px;letter-spacing:1px;background:var(--role-color);padding:2px 6px;border-radius:4px;color:#52644d;display:inline-block;margin-bottom:4px}.card-copy strong{display:block;font-size:13px}.card-copy small{display:block;font-size:10px;color:#849079;margin-top:3px}.card-copy p{font-size:8px;color:#91a08b;margin-top:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:145px}.price{position:absolute;top:10px;right:10px;font-size:12px;font-weight:700;color:#a68d38;display:flex;align-items:center;gap:4px}.battle-start{width:225px;justify-content:space-between;border-radius:14px;font-size:15px}.battle-start small{display:block;font-size:10px;letter-spacing:0;font-weight:400;color:#cedbbd;margin-top:10px;text-align:left}.recruited{color:#91a087;justify-content:center;font-size:11px;gap:10px;background:#f0f2e7}.battle-controls{position:absolute;bottom:55px;left:50%;transform:translate(-50%);border-radius:20px;display:flex;padding:13px;gap:15px}.battle-controls button{padding:8px 20px;font-size:13px}.overlay{position:absolute;inset:0;z-index:2000;background:#28463855;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);display:flex;align-items:center;justify-content:center;padding:25px}.modal{position:relative;width:min(560px,100%);max-height:calc(var(--game-vh, 1vh) * 90);overflow:auto;background:#fffdf1;border:1px solid #fffef9;border-radius:30px;padding:37px;box-shadow:0 25px 100px #173c3933}.modal h2{font-size:27px;letter-spacing:1px;margin:13px 0;color:#365540}.modal>p{font-size:12px;color:#7e8975;line-height:1.9}.close{position:absolute;right:14px;top:13px;color:#85917a}.question{background:#edf1df;border:1px solid #dce5cd;border-radius:17px;padding:24px;display:flex;align-items:center;justify-content:space-between;margin-top:24px;font-size:26px;font-weight:650;color:#395d43;gap:10px}.question button{padding:7px;color:#608867}.reading-note{font-size:9px;color:#8d967e;margin-top:8px;display:block}.answers{display:flex;gap:12px;margin:23px 0 17px}.answers button{flex:1;background:#f4f3e8;border:1px solid #e0e3d0;border-radius:17px;min-height:88px;display:flex;flex-direction:column;padding:12px 7px;position:relative;font-size:13px}.answers button img{height:110px;width:100%;object-fit:contain}.answers button>span{margin-top:9px}.answers button.correct{background:#e2efcb;border-color:#7eab76}.answers button.wrong{background:#f7e8d8;border-color:#d2a283}.success{font-size:12px;color:#537c48;display:flex;align-items:center;gap:9px;padding:13px;background:#eaf3db;border-radius:11px}.modal .wrong-note{color:#b08051}.hint{background:#f3eed9;padding:12px;border-radius:10px;margin-top:12px!important}.modal-bottom{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:25px}.modal-bottom .primary{font-size:12px;min-height:46px;padding:12px 18px}.text-button{font-size:11px;padding:10px 0;color:#748465}.source{display:block;font-size:8px;color:#9da58f;margin-top:24px;text-align:center}.muted{font-size:10px!important;color:#9aa18b!important;line-height:1.8}.setting-row{width:100%;padding:18px 4px;justify-content:flex-start;border-bottom:1px solid #e6e9da;font-size:13px}.setting-row svg{width:18px;color:#81916f}.setting-row b,.setting-row>svg:last-child{margin-left:auto;font-size:11px}.setting-row b{background:#e7ecd9;padding:6px 11px;border-radius:7px;font-weight:500}.setting-row+p{margin-top:19px}.help-steps{display:grid;gap:19px;margin:24px 0}.help-steps>div{display:flex;gap:17px}.help-steps b{font-size:22px;color:#acb793;font-weight:400}.help-steps strong{font-size:14px}.help-steps p{font-size:11px;color:#869179;line-height:1.9;margin-top:6px}.help-steps+.primary{width:100%}.map-panel{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(550px,90%);padding:34px;border-radius:30px;z-index:1100}.map-panel h2{font-size:34px;margin:14px 0}.map-panel>p{font-size:12px;color:#829176}.level-list{display:grid;gap:10px;margin:26px 0}.level-list button{background:#fffff2b0;border:1px solid #dae1c9;border-radius:17px;justify-content:flex-start;padding:20px;gap:18px;text-align:left}.level-number{font-size:24px;font-weight:300;color:#779570;width:34px}.level-list strong{font-size:14px;flex:1}.level-list small{display:block;font-size:10px;color:#91a184;margin-top:7px;font-weight:400}.level-list button:disabled{opacity:.4}.map-panel .text-button{margin-top:18px}.result-panel{text-align:center}.result-icon{width:76px;height:76px;background:#edf2d8;border:1px solid #dce5bf;border-radius:50%;display:grid;place-items:center;margin:0 auto 23px;color:#759259}.result-panel .eyebrow{font-size:8px}.result-panel h2{font-size:26px;margin-top:18px}.result-rewards{display:flex;justify-content:center;gap:24px;margin:25px 0;font-size:12px;color:#869051}.result-rewards span{display:flex;align-items:center;gap:7px}.result-rewards svg{width:17px}.review-word{display:flex;align-items:center;text-align:left;gap:13px;background:#eff1e1;border-radius:14px;padding:15px 20px;margin-bottom:24px;font-size:10px;color:#8b957d}.review-word strong{display:block;font-size:17px;color:#516d48;margin-top:5px}.review-word button{margin-left:auto}.result-panel>.primary{width:100%;margin-top:5px}.toast{position:absolute;bottom:255px;left:50%;transform:translate(-50%);z-index:3000;background:#304d40ed;color:#fffce7;box-shadow:0 8px 30px #28413733;border-radius:30px;padding:13px 22px;font-size:12px;max-width:90%;text-align:center;white-space:normal}.reduced *,.reduced *:before{animation:none!important;transition:none!important}@keyframes breathe{50%{transform:translateY(-7px) rotate(1deg)}}@container game (min-width: 1600px){.world-stage{width:calc(var(--game-vw, 1vw) * 100)}.bottom-area{left:5%;right:5%;bottom:30px}.shop{padding:19px 24px}.recruit-card{min-height:112px}.portrait{height:90px;width:85px}.board-guide{bottom:265px}}@container game (max-width: 1050px){.card-copy p{display:none}.shop-caption>small{display:none}.battle-start{width:170px;padding:14px;font-size:12px}.portrait{width:50px;height:66px}.recruit-card{padding:7px;gap:5px}.card-copy strong{font-size:11px}.card-copy small{font-size:8px}.price{top:7px;right:7px;font-size:10px}.price svg{width:11px}.shop-main{gap:12px}.shop-cards{gap:8px}.quest-peek{right:23px;top:98px}.hero-pear{right:10%;width:27%}.hero-sticker{right:6%}.rounds{gap:8px}.hero{left:7%}}@container game (max-width: 700px){.app{min-height:0}.menu-header{padding:22px}.brand{font-size:9px;letter-spacing:2px}.hero{top:15%;left:8%}.hero h1{font-size:62px;margin-top:16px}.hero h1 span{font-size:26px;letter-spacing:10px}.hero>p{font-size:12px}.hero-start{min-width:180px;font-size:14px;margin-top:23px}.hero-pear{right:-3%;top:48%;height:33%;width:47%}.hero-sticker{right:6%;bottom:13%;font-size:8px;padding:9px 12px}.hero-note{margin-top:24px}.menu-footer{font-size:7px;letter-spacing:.2px;bottom:18px}.on-menu .vignette{background:linear-gradient(110deg,#f4f4ddf5 3%,#eff1dfd9 39%,#eff1dd44 85%)}.world-menu .world-stage{left:51%;top:64%;width:calc(var(--game-vh, 1vh) * 145)}.hud{left:15px;right:15px;top:15px;gap:9px}.hud>.icon-button{width:36px;height:36px}.chapter-title small{font-size:7px;letter-spacing:.5px}.chapter-title strong{font-size:14px;letter-spacing:1px}.resources{padding:10px 12px;gap:10px}.resources span{font-size:13px;gap:5px}.resources svg{width:14px}.hud-center-group{gap:8px}.rounds{gap:6px}.rounds span{width:19px;height:19px;font-size:8px}.rounds .current{width:23px;height:23px}.stage-label{left:18px;top:116px;font-size:10px}.stage-label small{font-size:8px;max-width:125px;line-height:1.7}.knowledge-overlay{padding:12px;align-items:end}.knowledge-panel{max-height:calc(calc(var(--game-vh, 1vh) * 100) - 24px);padding:16px;border-radius:20px}.knowledge-question{font-size:17px}.quest-peek{top:112px;right:14px;padding:7px 10px 7px 2px;border-radius:15px;gap:4px}.quest-peek>img{height:49px;width:33px}.quest-peek strong{font-size:9px}.quest-peek small,.quest-peek em{font-size:8px}.quest-peek em{gap:5px}.world-stage{width:950px;top:44%}.piece{width:9.2%;height:16%}.world:not(.world-menu) .world-stage{width:max(760px,calc(var(--game-vw, 1vw) * 132));top:43%}.bottom-area{left:12px;right:12px;bottom:15px}.bench-bar{flex-wrap:wrap;gap:8px;margin-bottom:9px;min-height:96px}.bench-title{width:100%;display:flex;justify-content:space-between;font-size:10px;margin:0 4px}.bench-title small{font-size:8px;display:inline;margin:0}.bench-slots{gap:6px}.bench-slot{height:46px;width:48px;border-radius:10px}.bench-slot img{height:49px;width:44px}.help-button{width:30px;height:30px}.selection{padding:8px;gap:4px;flex-direction:column;font-size:9px}.selection button{font-size:8px}.shop{padding:12px;border-radius:20px}.shop-caption{margin-bottom:9px;font-size:10px;gap:5px}.shop-caption>div{gap:7px}.shop-caption button{font-size:9px;gap:5px}.shop-main{display:block}.shop-cards{gap:7px}.recruit-card{display:block;min-height:119px;padding:5px;text-align:center;border-radius:12px}.portrait{height:58px;width:62px;margin:auto}.card-copy .role-tag{display:none}.card-copy strong{font-size:10px;margin-top:3px}.card-copy small{font-size:8px}.price{font-size:9px;gap:2px;top:5px;right:5px;background:#fffdf0b0;border-radius:10px;padding:3px}.battle-start{width:100%;padding:11px 17px;margin-top:11px;min-height:46px;border-radius:12px;font-size:12px}.battle-start span{display:flex;gap:10px;align-items:center}.battle-start small{font-size:8px;margin:0}.battle-start svg{width:18px}.recruited{display:flex;font-size:9px;flex-direction:column}.board-guide{bottom:335px;font-size:8px;padding:6px 11px}.board-guide strong{font-size:9px}.toast{bottom:345px;font-size:10px}.modal{padding:29px 22px;border-radius:24px;max-height:calc(var(--game-vh, 1vh) * 91)}.overlay{padding:15px}.modal h2{font-size:23px}.eyebrow{font-size:9px;letter-spacing:1.6px}.question{padding:18px;font-size:22px}.answers{gap:8px}.answers button img{height:86px}.answers button{font-size:11px}.modal-bottom{gap:9px}.modal-bottom .primary{padding:12px;font-size:11px}.result-panel h2{font-size:23px}.health{width:39px;height:4px}.stars{font-size:9px}.float-text{font-size:13px}.map-panel{padding:27px}.map-panel h2{font-size:29px}.level-list button{padding:15px}.map-panel>p{font-size:10px}.battle-controls{bottom:65px}.help-steps{gap:15px}.help-steps p{font-size:10px}}@container game (max-height: 650px) and (min-width: 701px){.app{min-height:0}.hero{top:19%}.hero h1{font-size:58px;margin:10px 0 15px}.hero>p{font-size:12px}.hero-start{margin-top:16px;padding:12px 19px;min-height:43px}.hero-note{display:none}.menu-links{margin-top:18px}.menu-header{padding-top:18px}.bottom-area{bottom:12px;left:18px;right:18px}.bench-bar{min-height:42px}.bench-slot{height:40px;width:48px}.bench-slot img{height:45px}.shop{padding:10px 14px}.shop-caption{margin-bottom:8px}.recruit-card{min-height:74px}.portrait{height:60px}.board-guide{bottom:196px}.quest-peek{transform:scale(.85);transform-origin:top right;top:85px}.stage-label{top:88px}.hud{top:15px}.world-stage{top:49%;width:calc(var(--game-vw, 1vw) * 100)}.bench-title small{font-size:8px}.modal{max-height:calc(var(--game-vh, 1vh) * 94)}.toast{bottom:200px}}.world:before{content:"";position:absolute;inset:-30px;background:url(https://shirley-cgz.oss-cn-beijing.aliyuncs.com/assets/island.webp) center/cover;filter:blur(24px);opacity:.6}.world-stage:before,.world-stage:after{content:"";position:absolute;left:0;right:0;height:8%;z-index:1;pointer-events:none}.world-stage:before{top:0;background:linear-gradient(#bedfe1,transparent)}.world-stage:after{bottom:0;background:linear-gradient(transparent,#cce0d6)}.zone{position:absolute;width:7%;height:4%;border-radius:50%;transform:translate(-50%,-50%);z-index:2;pointer-events:none}.zone.plant{background:#a5d98188;box-shadow:0 0 25px #dcff99;color:#e6ffc0;text-align:center;font-size:24px}.zone.ink{background:#73627577;box-shadow:0 0 18px #6d58725c}.posing img{animation:cast .35s ease-out}.acting img{filter:saturate(.92) brightness(1.05)}@keyframes cast{50%{transform:translateY(-3px) scale(1.035)}}@container game (max-width: 700px){.world:not(.world-menu) .world-stage{width:max(660px,calc(var(--game-vw, 1vw) * 125))}.board-guide{bottom:345px}.bench-title{background:#edf2d1c9;border-radius:10px;padding:5px 8px}.bench-title small{color:#607358}.shop-caption button{min-height:30px}.hero-pear{object-position:bottom}.piece{width:10%;height:17%}.piece.boss{width:15%;height:26%}}.cinema-modal{width:min(940px,100%)}.cinema-modal video{display:block;width:100%;aspect-ratio:16/9;border-radius:18px;background:#253a30;margin-top:20px}.cinema-caption{text-align:center;margin-top:17px!important}.formation-label{font-size:11px;text-align:center;color:#8d9a79;margin:25px 0 12px}.formation-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:6px;margin-bottom:18px}.formation-grid button{height:66px;background:#eef0df;border:1px solid #d8dfc8;border-radius:9px;min-width:0}.formation-grid img{width:100%;height:100%;object-fit:contain}.formation-grid .chosen{background:#e6edb9;outline:2px solid #91a363}.formation-grid span{color:#a4af90}.grid polygon:focus-visible{outline:none;stroke:#426d43;stroke-width:4;fill:#e8ffa5aa}.menu-links{gap:22px}@container game (max-width: 700px){.formation-grid button{height:48px}.menu-links{gap:18px;font-size:10px}.menu-links svg{width:14px}.selection{gap:3px;padding:5px 8px}.selection button{min-height:18px}.hero-note{margin-top:22px}.cinema-modal h2{font-size:20px}}.world-stage{-webkit-mask-image:linear-gradient(transparent,#000 9%,#000 91%,transparent);mask-image:linear-gradient(transparent,#000 9%,#000 91%,transparent)}@container game (max-width: 700px){.board-guide{bottom:365px}.card-copy strong{font-size:11px}.card-copy small{font-size:9px}.selection button{font-size:9px;min-height:20px}.stage-label{font-size:11px}.quest-peek strong{font-size:10px}}.coach{position:absolute;top:180px;left:28px;width:238px;border-radius:21px;padding:13px;z-index:1000}.coach-heading{display:flex;align-items:center;gap:9px;font-size:14px;font-weight:700;padding:0 3px 10px}.coach-heading img{width:34px;height:44px;object-fit:contain}.coach-heading small{display:block;font-size:10px;font-weight:400;color:#839075;margin-top:4px}.coach>button{display:flex;width:100%;text-align:left;justify-content:flex-start;padding:12px 8px;border-radius:12px;gap:10px;margin-top:3px}.coach>button>b{border:1px solid #c9d5b8;border-radius:50%;min-width:25px;height:25px;display:grid;place-items:center;font-size:11px;color:#6b8658}.coach>button>span{flex:1;font-size:12px}.coach>button small{display:block;font-size:9px;color:#859274;margin-top:5px}.coach .next-step{background:#e4edce;box-shadow:inset 0 0 0 1px #cfddb3}.coach .next-step>b{background:#52764e;color:#fff;border-color:#52764e}.combat-effects{position:absolute;inset:0;width:100%;height:100%;z-index:1400;pointer-events:none;overflow:visible}.combat-effects-behind{z-index:1}.piece img{transition:transform .08s linear;will-change:transform}.piece .health{height:8px;width:74px;border:1px solid #f9ffe3;box-shadow:0 2px 3px #35463833}.health i,.health b{transition:width .25s}.unit-name-row{display:inline-flex;align-items:center;gap:3px;background:#fff8e5d9;border-radius:999px;padding:2px 6px;box-shadow:0 1px 2px #33412222;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease}.piece.foe .unit-name-row{background:#f2e9f0d9}.unit-name{white-space:nowrap;color:#36503f;font-size:12px}.unit-name-row .unit-name{background:transparent;border-radius:0;padding:0;box-shadow:none}.piece.foe .unit-name{color:#68566e}.unit-hud{bottom:105%}.piece .equip-pip{position:static;width:17px;height:17px;object-fit:contain;filter:drop-shadow(0 1px 1px #2a403288);pointer-events:none}.equip-pips{position:absolute;top:-4%;right:5%;display:flex;gap:2px;align-items:center;z-index:6;pointer-events:none}.piece.defeated{pointer-events:none;animation:ink-away .85s forwards}.piece.selected:after{content:"已选中";position:absolute;bottom:-25px;left:50%;transform:translate(-50%);background:#355f48;color:#fffbe5;padding:4px 9px;border-radius:12px;font-size:10px;white-space:nowrap}.combat-story{position:absolute;left:30px;top:165px;max-width:275px;padding:15px 18px;border-radius:16px}.combat-story>span{font-size:10px;color:#8e9c7c;display:block;margin-bottom:7px}.combat-story strong{font-size:13px;display:block;line-height:1.7}.combat-story small{font-size:10px;color:#809070;display:block;margin-top:9px}.knowledge-drop{position:absolute;z-index:1150;width:56px;height:56px;padding:0;border:0;border-radius:50%;background:transparent;box-shadow:none;transform:translate(-50%,-60%);isolation:isolate;animation:knowledge-float 1.5s ease-in-out infinite}.knowledge-drop:before{content:"";position:absolute;inset:8%;z-index:-1;border-radius:50%;background:radial-gradient(circle,#fffbdfff,#ffe174a6 45%,transparent 72%);animation:knowledge-glow 1.5s ease-in-out infinite}.knowledge-drop img{width:100%;height:100%;display:block;object-fit:contain;filter:drop-shadow(0 4px 5px #5e4a2859) drop-shadow(0 0 10px #fff1a8);transition:transform .16s ease}.knowledge-drop:hover img{transform:scale(1.12)}.knowledge-drop:focus-visible{outline:3px solid #fff6b5;outline-offset:3px}.knowledge-drop-ready:after{content:"继续答题";position:absolute;left:50%;bottom:-4px;transform:translate(-50%);white-space:nowrap;padding:2px 7px;border-radius:999px;background:#275b49e8;color:#fffbe8;font-size:8.5px;font-weight:800}.knowledge-alert{position:absolute;z-index:1300;top:126px;left:50%;transform:translate(-50%);min-width:286px;padding:9px 18px 9px 10px;display:flex;align-items:center;justify-content:center;gap:10px;border:2px solid #f5cf58;border-radius:999px;background:linear-gradient(100deg,#fffbedf2,#fff1aee8);color:#31513d;box-shadow:0 7px 26px #5b4c2542,0 0 0 5px #fff4a53d;animation:knowledge-alert-in .3s ease-out,knowledge-alert-pulse 1.7s .3s ease-in-out infinite}.knowledge-alert img{width:44px;height:44px;object-fit:contain;filter:drop-shadow(0 3px 4px #66512245)}.knowledge-alert strong,.knowledge-alert small{display:block;text-align:left}.knowledge-alert strong{font-size:14px;font-weight:900}.knowledge-alert small{margin-top:2px;font-size:10px;color:#667452}@keyframes knowledge-float{0%,to{transform:translate(-50%,-60%)}50%{transform:translate(-50%,-70%)}}@keyframes knowledge-glow{0%,to{opacity:.72;transform:scale(.88)}50%{opacity:1;transform:scale(1.18)}}@keyframes knowledge-alert-in{0%{opacity:0;transform:translate(-50%,-14px) scale(.94)}to{opacity:1;transform:translate(-50%) scale(1)}}@keyframes knowledge-alert-pulse{0%,to{box-shadow:0 7px 26px #5b4c2542,0 0 0 5px #fff4a53d}50%{box-shadow:0 7px 28px #5b4c2552,0 0 0 9px #fff4a552}}@container game ((max-width: 700px)) or ((max-height: 540px)){.knowledge-drop{width:42px;height:42px}.knowledge-drop-ready:after{font-size:7.5px;padding:1px 5px;bottom:-4px}.knowledge-alert{top:91px;min-width:240px;padding:7px 14px 7px 8px}.knowledge-alert img{width:36px;height:36px}.knowledge-alert strong{font-size:12px}.knowledge-alert small{font-size:9px}}.knowledge-overlay{position:absolute;inset:0;z-index:1900;display:grid;place-items:center;padding:24px;background:#1c443d2b}.knowledge-panel{width:min(520px,100%);max-height:min(650px,calc(calc(var(--game-vh, 1vh) * 100) - 48px));overflow:auto;border-radius:24px;padding:22px;background:#fffdf0f5;box-shadow:0 24px 70px #264c3a3b}.knowledge-panel-head{display:flex;align-items:center;justify-content:space-between}.knowledge-panel-head .icon-button{width:34px;height:34px}.knowledge-spell-title{display:flex;align-items:center;gap:14px;margin:18px 0 14px}.knowledge-spell-title>span{width:52px;height:52px;display:grid;place-items:center;border-radius:16px;background:linear-gradient(145deg,#fff6bf,#d6f2d5)}.knowledge-spell-title>span img{width:48px;height:48px;object-fit:contain}.knowledge-spell-title strong,.knowledge-spell-title small{display:block}.knowledge-spell-title strong{font-size:20px}.knowledge-spell-title small{margin-top:5px;font-size:11px;color:#6a816e}.knowledge-question{margin:16px 0 12px;padding:16px;border-radius:14px;background:#f1f8e9;font-size:20px;font-weight:750;text-align:center;color:#315440}.knowledge-options{display:grid;gap:9px}.knowledge-options button{min-height:48px;border:1px solid #dbe8d2;border-radius:13px;padding:10px 14px;background:#fffef7;justify-content:flex-start;text-align:left}.knowledge-options button:hover{background:#f4ffe8;border-color:#86bd8e}.knowledge-options button.wrong{border-color:#e5a39a;background:#fff0e8}.knowledge-feedback{margin:10px 0 0;font-size:12px;text-align:center}.wrong-feedback{color:#b56a59}.knowledge-hint{margin:13px auto 0;color:#6e8e67;font-size:11px}.reduced .knowledge-drop,.reduced .knowledge-drop:before,.reduced .knowledge-alert{animation:none}.lesson-track{display:flex;justify-content:space-between;margin:20px 0 25px;background:#f0f2e5;padding:12px;border-radius:13px}.lesson-track span{display:flex;gap:7px;align-items:center;font-size:12px;color:#a4aa96}.lesson-track b{width:24px;height:24px;border-radius:50%;border:1px solid #d1d8c1;display:grid;place-items:center;font-size:11px}.lesson-track .on{color:#4f754a}.lesson-track .on b{background:#dceac2;border-color:#c2d8a1}.lesson-intro{font-size:14px;color:#77866b;line-height:1.8;margin:18px 0}.study-card{display:flex;align-items:center;justify-content:center;gap:24px;padding:23px;background:linear-gradient(135deg,#f0efcf,#e5efd9);border-radius:20px;margin:18px 0}.study-card>img{width:116px;height:160px;object-fit:contain}.study-card strong{font-size:29px;display:block;color:#365b3f;line-height:1.4}.study-card small{font-size:11px;color:#93a07f;display:block;margin-bottom:10px}.study-card p{font-size:17px;color:#758164;margin:7px 0 15px}.listen{font-size:12px;color:#658159;min-height:44px}.word-notes{display:flex;align-items:flex-start;gap:12px;font-size:13px;color:#677b58;padding:13px;background:#f4f3e5;border-radius:13px;line-height:1.7}.word-notes svg{flex-shrink:0;margin-top:3px}.word-notes small{display:block;font-size:11px;color:#919d80;margin-top:5px}.lesson-next{width:100%;margin-top:22px;font-size:14px}.primary:disabled{opacity:.45;box-shadow:none;cursor:not-allowed}.lesson .answers button{font-size:15px;min-height:120px}.lesson .answers img{height:130px}.recall-options{display:grid;gap:10px;margin:23px 0}.recall-options button{min-height:53px;background:#eef1df;border:1px solid #dae2c6;border-radius:13px;font-size:19px}.sentence-slots{display:flex;gap:8px;flex-wrap:wrap;background:#eef1df;border-radius:14px;padding:17px;margin:24px 0}.sentence-slots span{border-bottom:2px solid #bccda4;min-width:46px;padding:5px;font-size:19px}.word-bank{display:flex;gap:8px;flex-wrap:wrap}.word-bank button{min-height:46px;padding:8px 16px;border:1px solid #c8d4b7;background:#fffff8;border-radius:10px;font-size:17px}.word-bank button:disabled{opacity:.25}.lesson-medal{font-size:72px;color:#abac57}.retrieval{text-align:left;background:#edf2dd;border:1px solid #d8e4c1;padding:17px;border-radius:16px;margin-top:20px}.retrieval>strong{font-size:13px;color:#809765}.retrieval>p{font-size:18px;color:#365b43;margin:12px 0}.retrieval>div{display:flex;gap:8px;flex-wrap:wrap}.retrieval button{min-height:44px;border:1px solid #cedbb8;border-radius:9px;background:#fffdf0;padding:9px 14px;font-size:12px}.retrieval small{display:block;color:#688757;margin-top:12px}.review-success{color:#69854f!important}.selection{flex-wrap:wrap;max-width:460px}.selection button{min-height:30px}.selection strong{align-self:center}.piece:not(.foe){width:9.2%;height:17%}@keyframes ink-away{to{opacity:0;filter:blur(7px);transform:translate(-50%,-120%) scale(.65)}}@container game (max-width: 1050px){.coach{width:200px;left:16px;top:165px}.coach>button{padding:9px 5px}.coach-heading{font-size:12px}.coach>button>span{font-size:11px}.combat-story{left:18px;max-width:225px}}@container game (max-width: 700px){.coach{top:181px;left:13px;right:13px;width:auto;padding:8px;display:flex;gap:4px;border-radius:14px}.coach-heading{display:none}.coach>button{width:auto;flex:1;padding:7px 5px;gap:5px;margin:0;align-items:center}.coach>button>b{min-width:19px;height:19px;font-size:9px}.coach>button>span{font-size:10px}.coach>button small{font-size:8px;line-height:1.5}.coach>button svg{display:none}.world:not(.world-menu) .world-stage{top:45%}.combat-story{top:123px;left:15px;right:15px;max-width:none;padding:10px 15px}.combat-story>span{display:none}.combat-story strong{font-size:12px}.combat-story small{font-size:9px;margin-top:4px}.unit-name-row{padding:1px 4px}.unit-name{font-size:9px}.unit-name-row .unit-name{padding:0}.piece .health{width:41px;height:5px}.piece:not(.foe){width:10%;height:17%}.piece.boss{width:15%;height:26%}.study-card{padding:15px;gap:12px}.study-card>img{width:85px;height:130px}.study-card strong{font-size:23px}.study-card p{font-size:15px}.lesson .answers img{height:95px}.lesson .answers button{min-height:110px}.selection{max-width:122px;position:absolute;right:0;bottom:257px;padding:8px;background:#fffdf0f0;gap:2px}.selection button{font-size:10px;min-height:28px}.selection strong{font-size:11px}.bench-bar{padding-top:10px}.lesson-intro{font-size:13px}.quest-peek{z-index:1001}.retrieval>p{font-size:16px}}.learning-log{border-top:1px solid #dce5cb;padding-top:18px;margin-top:20px}.learning-log h3{font-size:20px;margin:5px 0 10px}.learning-log>p{font-size:12px;color:#869475;margin-bottom:18px}.learning-log>div{display:grid;grid-template-columns:1fr 1fr;gap:9px}.learning-log button{justify-content:space-between;text-align:left;border:1px solid #dae3c9;background:#f4f5e9;padding:13px;border-radius:12px;gap:8px;min-height:66px}.learning-log button>span{font-size:13px}.learning-log small{display:block;font-size:9px;color:#9ba48c;margin-top:6px}.learning-log b{font-size:10px;color:#698458;white-space:nowrap;font-weight:500}@container game (max-width: 700px){.learning-log>div{grid-template-columns:1fr}.learning-log button>span{font-size:14px}}.actor-motion,.actor-facing{position:absolute;inset:0;display:block;transform-origin:50% 94%;pointer-events:none}.actor-motion{transition:transform 90ms linear}.actor-facing{transition:transform .1s ease-out}.piece .actor-body{width:100%;height:100%;object-fit:fill;transform-origin:50% 94%;transition:none;animation:pear-idle var(--idle-duration, 3s) ease-in-out var(--idle-delay, 0s) infinite}.piece.walking .actor-body{animation:pear-walk .32s ease-in-out infinite}.piece.striking .actor-body{animation:pear-strike .5s ease-out}.piece.foe .actor-body{animation-name:ink-idle}.piece.foe.walking .actor-body{animation-name:pear-walk}.piece.foe.striking .actor-body{animation-name:pear-strike}.piece .contact{animation:ground-breathe var(--idle-duration, 3s) ease-in-out var(--idle-delay, 0s) infinite}.piece.defeated .actor-body{animation:none}.piece .actor-body{filter:saturate(.9) contrast(.97)}@keyframes pear-idle{0%,to{transform:translateY(0) rotate(-.7deg) scale(1)}35%{transform:translateY(-1px) rotate(.65deg) scale(1.018,.988)}65%{transform:translateY(-3px) rotate(.35deg) scale(.991,1.015)}}@keyframes ink-idle{0%,to{transform:translateY(0) scale(1.018,.98) rotate(-1deg)}50%{transform:translateY(-5px) scale(.98,1.03) rotate(1.2deg)}}@keyframes pear-walk{0%,to{transform:translateY(0) rotate(-3deg) scale(1.02,.98)}25%{transform:translateY(-5px) rotate(0) scale(.99,1.02)}50%{transform:translateY(0) rotate(3deg) scale(1.02,.98)}75%{transform:translateY(-5px) rotate(0) scale(.99,1.02)}}@keyframes pear-strike{0%{transform:rotate(-4deg) scale(.98,1.02)}32%{transform:rotate(5deg) scale(1.05,.95)}65%{transform:rotate(-1.5deg) scale(.99,1.02)}to{transform:rotate(0) scale(1)}}@keyframes ground-breathe{0%,to{transform:scale(1);opacity:.9}50%{transform:scale(.92);opacity:.7}}.reduced .actor-motion,.reduced .actor-facing{transition:none!important}.reduced .actor-body{animation:none!important}.motion-paused .actor-body,.motion-paused .contact{animation-play-state:paused!important}.grid polygon:focus{outline:none}.grid .friendly:focus-visible,.grid .selected-cell{fill:url(#tile-selected-glow);fill-opacity:1;stroke:none}.grid .friendly.drop-target{fill:url(#tile-selected-glow);fill-opacity:1;stroke:none}.piece.ally:not(:disabled),.bench-slot{touch-action:none;cursor:grab;-webkit-user-select:none;user-select:none}.piece.ally:not(:disabled):active,.bench-slot:active{cursor:grabbing}.piece.drag-source,.bench-slot.drag-source img{opacity:.28}.bench-slot.drop-target{background:#fff0ad99;box-shadow:inset 0 0 0 3px #e6bd62,0 0 18px #fff5b177}.piece.selected:after{display:none}.formation-ghost{position:fixed;z-index:10000;pointer-events:none;width:clamp(100px,calc(var(--game-vw, 1vw) * 9),160px);transform:translate(-50%,-85%);filter:drop-shadow(0 12px 10px #314c4055)}.formation-ghost img{width:100%;display:block}.formation-ghost span{display:block;width:max-content;margin:0 auto;background:#355747ee;color:#fff8dc;padding:7px 12px;border-radius:20px;font-size:12px}.piece.ally:not(:disabled){pointer-events:none}.piece.ally:not(:disabled)>*{pointer-events:none}.piece.ally:not(:disabled) .piece-hit{position:absolute;inset:8% 19% 0;border-radius:48% 48% 34% 34%;pointer-events:auto;z-index:6;touch-action:none}.piece.ally:not(:disabled) .unit-name-row,.piece.ally:not(:disabled) .unit-name{pointer-events:auto;cursor:grab;touch-action:none}.piece.ally:not(:disabled):hover .contact,.piece.ally:focus-visible .contact,.piece.swap-target .contact{background:#fff3b37a;box-shadow:0 0 0 2px #fff5cc,0 0 18px #ffdf8d99}.piece.ally:not(:disabled):hover .unit-name-row,.piece.ally:focus-visible .unit-name-row,.piece.swap-target .unit-name-row{background:#fff3c6;border-color:#cfb56c;box-shadow:0 0 0 1px #cfb56c}.piece.drag-source{opacity:1}.piece.drag-source .actor-motion,.piece.drag-source .unit-hud{opacity:.16}.piece.drag-source .contact{border:2px dashed #fff2bd;background:#d1ba7370;filter:none}.piece.drag-source .piece-hit,.piece.drag-source .unit-name-row,.piece.drag-source .unit-name{pointer-events:none!important}.piece.equipment-drop-target .contact{background:#fff3b388;box-shadow:0 0 0 3px #fff5cc,0 0 24px #ffdf8dcc}.piece.equipment-drop-target .unit-name-row{background:#fff3c6;border-color:#d3ae57;box-shadow:0 0 0 2px #d3ae57}.grid polygon.invalid-drop{fill:url(#tile-invalid-glow);fill-opacity:1;stroke:none;filter:none}.formation-ghost{transform:translate(-50%,-85%) scale(1.08)}.formation-ghost img{animation:pick-up .13s ease-out}.formation-ghost.invalid span{background:#865747ed}.formation-ghost.returning{animation:return-piece .22s ease-out both}.piece.just-landed .actor-motion,.bench-slot.just-landed img{animation:piece-land .22s ease-out}@keyframes pick-up{0%{transform:translateY(8px) scale(.94)}to{transform:translateY(0) scale(1)}}@keyframes return-piece{to{transform:translate(calc(-50% + var(--return-x)),calc(-85% + var(--return-y))) scale(1);opacity:.1}}@keyframes piece-land{0%{translate:0 -8px;scale:1.04}65%{translate:0 1px;scale:.98}to{translate:0 0;scale:1}}.app .bench-bar{position:relative;justify-content:center;min-height:88px;margin-bottom:15px;padding-top:0;gap:0}.app .bench-title{position:absolute;left:50%;bottom:100%;transform:translate(-50%);margin:0 0 6px;white-space:nowrap;font-size:11px;text-align:center}.app .bench-title small{display:inline;margin-left:10px;font-size:10px;color:#466b53}.app .bench-slots{display:flex;gap:0;padding:0 12px;border-radius:50% 50% 16px 16px/9px 9px 16px 16px;background:linear-gradient(#f7edcd88,#ddc994c9);border:1px solid #fff7d7cc;box-shadow:0 5px #ab996a55,0 9px 18px #435b3020}.app .bench-slot{width:clamp(64px,calc(var(--game-vw, 1vw) * 6),94px);height:76px;border:none;border-radius:0;background:none;box-shadow:none;overflow:visible}.app .bench-slot:before{content:"";position:absolute;bottom:9px;left:12%;width:76%;height:23px;border-radius:50%;background:#a0a97922;border:1px solid #82996b40}.app .bench-slot+.bench-slot{border-left:1px solid #a9a47730}.app .bench-slot img{height:89px;width:80px;bottom:8px;z-index:1;pointer-events:none;filter:drop-shadow(0 4px 2px #43553330)}.app .bench-slot b{z-index:2;bottom:0}.app .bench-slot .seat-number{position:absolute;bottom:13px;font-size:10px;opacity:.45}.app .bench-slot.chosen{outline:none}.app .bench-slot.chosen:before,.app .bench-slot:hover:before{border-color:#a3944c;background:#fff1b566}.app .bench-slot.drop-target{background:#fff3b347;box-shadow:inset 0 -3px #d2ad59}.app .bench-slot.drop-target:before{background:#fff4b8;border:2px solid #b99844}.app .bench-bar>.help-button{position:absolute;right:0;bottom:8px}.app .coach .coach-toggle{display:flex;width:100%;min-height:30px;padding:4px 6px;margin:0 0 6px;align-items:center;font-size:11px}.app .coach .coach-toggle span{flex:1;font-size:11px}.app .coach .coach-toggle svg{display:block}.app .coach:not(.coach-collapsed) .coach-toggle>svg:last-child{rotate:90deg}.app .coach.coach-collapsed{width:130px;padding:6px 8px;display:block;right:auto;border-radius:24px}.app .coach.coach-collapsed>:not(.coach-toggle){display:none}.app .coach.coach-collapsed .coach-toggle{margin:0}.coach,.quest-peek,.selection,.shop{transition:opacity .16s ease}.is-arranging .coach,.is-arranging .quest-peek{opacity:.08;pointer-events:none}.is-arranging .selection,.is-arranging .enemy-inspection{opacity:0;visibility:hidden;pointer-events:none}.is-arranging .shop{opacity:.38;pointer-events:none}.is-arranging .piece.ally{cursor:grabbing}.app .selection{position:absolute;right:0;bottom:100%;width:230px;max-width:230px;padding:16px;margin:0 0 20px;display:block;border-radius:18px;background:#fffceeeb;font-size:12px}.app .selection .selection-close{position:absolute;top:6px;right:6px;min-height:28px;width:28px;padding:4px}.selection-heading{display:flex;gap:8px;align-items:center;padding-right:8px}.selection-heading img{width:43px;height:52px;object-fit:contain}.app .selection strong{display:block;font-size:14px}.selection-heading small{display:block;color:#7d8e70;font-size:10px;margin-top:4px}.selection p{margin:10px 0;line-height:1.6}.selection-tip{display:block;font-size:10px;color:#829072}.selection-tools{margin-top:12px;border-top:1px solid #ccd7bb;padding-top:9px}.selection-tools summary{cursor:pointer;font-size:11px;color:#62755a}.app .selection-tools button{min-height:32px;padding:6px 8px;font-size:11px}.sell-area{margin-top:8px;padding-top:8px;border-top:1px solid #ded7c5}.sell-area>span{display:block;font-size:10px;color:#906651}.sell-area button{color:#906651}.sell-area .sell-confirm{background:#f4e3d5;border-radius:8px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}@container game (max-width: 900px){.app .bench-bar{min-height:69px;margin-bottom:12px}.app .bench-slot{height:62px;width:62px}.app .bench-slot img{height:76px;width:68px}.app .bench-title small{display:none}.app .selection{width:180px;max-width:180px;padding:12px;margin-bottom:30px}.app .coach.coach-collapsed{top:118px;left:15px}}@media(prefers-reduced-motion:reduce){.formation-ghost,.formation-ghost img,.piece.just-landed .actor-motion,.bench-slot.just-landed img{animation:none!important}}.reduced .formation-ghost,.reduced .formation-ghost img,.reduced .piece.just-landed .actor-motion,.reduced .bench-slot.just-landed img{animation:none!important}.app .bench-title{background:#fff9e4dc;border:1px solid #fff7d4;border-radius:20px;padding:5px 13px;bottom:calc(100% + 5px)}.app .bench-title strong{margin-left:9px;font-size:10px;font-weight:600}@container game (max-width: 900px){.app .coach.coach-collapsed{top:163px}}.mobile-orientation-barrier{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;padding:20px;animation:barrierFadeIn .3s cubic-bezier(.16,1,.3,1)}@keyframes barrierFadeIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.barrier-backdrop{position:absolute;inset:0;background:#121e18e0;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}.barrier-modal{position:relative;z-index:2;width:100%;max-width:350px;background:linear-gradient(180deg,#fffef9,#f9f5ea);border:1.5px solid #ded0b4;border-radius:26px;padding:28px 22px 22px;text-align:center;box-shadow:0 24px 60px #0c1c1480;display:flex;flex-direction:column;align-items:center;gap:16px}.barrier-animation-stage{position:relative;width:90px;height:90px;display:flex;align-items:center;justify-content:center}.barrier-device{width:42px;height:72px;border:3px solid #364e3f;border-radius:10px;background:#f6fcf8;position:relative;display:flex;align-items:center;justify-content:center;animation:phoneRotateDemo 3s cubic-bezier(.4,0,.2,1) infinite;box-shadow:0 4px 16px #16302226}@keyframes phoneRotateDemo{0%,18%{transform:rotate(0)}48%,76%{transform:rotate(90deg)}94%,to{transform:rotate(0)}}.barrier-device-screen{color:#10b981;display:flex;align-items:center;justify-content:center}.barrier-rotate-arrow{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none;color:#10b981}.barrier-spin-icon{animation:spinPulse 3s linear infinite}@keyframes spinPulse{0%{transform:rotate(0);opacity:.2}50%{opacity:.65}to{transform:rotate(360deg);opacity:.2}}.barrier-content h3{margin:0;font-size:20px;font-weight:800;color:#1b3828;letter-spacing:.5px}.barrier-tagline{margin:4px 0 10px;font-size:12.5px;color:#635745;font-weight:500}.barrier-features{list-style:none;margin:0;padding:10px 14px;background:#ebe2ce8c;border-radius:14px;text-align:left;display:flex;flex-direction:column;gap:6px;font-size:11.5px;color:#352e24;width:100%;box-sizing:border-box}.barrier-actions{width:100%;display:flex;flex-direction:column;gap:8px;margin-top:2px}.barrier-primary-btn{width:100%;min-height:46px;border-radius:14px;background:linear-gradient(135deg,#10b981,#059669);border:1px solid #6ee7b7;color:#fff;font-size:14px;font-weight:700;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;box-shadow:0 4px 14px #10b98159;transition:transform .15s ease}.barrier-primary-btn:active{transform:scale(.98)}.barrier-secondary-btn{width:100%;min-height:40px;border-radius:12px;background:#fdfaf0;border:1.5px solid #d9cbab;color:#4a3c28;font-size:12px;font-weight:600;display:flex;align-items:center;justify-content:center;gap:6px;cursor:pointer;transition:background .15s ease}.barrier-secondary-btn:active{background:#f2e9d2}.barrier-dismiss-btn{background:none;border:none;padding:6px;font-size:11px;color:#908169;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.forced-landscape-pill{position:fixed;bottom:8px;left:8px;z-index:2500;display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:999px;background:#1a2c22e0;color:#e2f5e8;font-size:10px;font-weight:600;border:1px solid rgba(255,255,255,.25);box-shadow:0 4px 12px #0003;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);cursor:pointer}.mobile-orientation-banner{position:absolute;top:56px;left:50%;transform:translate(-50%);z-index:2500;display:flex;align-items:center;gap:10px;padding:6px 12px;background:#fffdf5f2;border:1.5px solid #d4c5a5;border-radius:999px;box-shadow:0 6px 22px #2d23142e;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);max-width:calc(calc(var(--game-vw, 1vw) * 100) - 28px);animation:bannerSlideIn .3s cubic-bezier(.16,1,.3,1)}@keyframes bannerSlideIn{0%{opacity:0;transform:translate(-50%,-12px) scale(.96)}to{opacity:1;transform:translate(-50%) scale(1)}}.banner-icon-wrap{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:#fdf5df;border:1px solid #e2c98d;color:#b45309;flex-shrink:0}.phone-rotate-icon{animation:rotatePhone 2.5s ease-in-out infinite}@keyframes rotatePhone{0%,20%{transform:rotate(0)}45%,75%{transform:rotate(90deg)}95%,to{transform:rotate(0)}}.banner-copy{display:flex;flex-direction:column;gap:1px;min-width:0}.banner-copy strong{font-size:11px;font-weight:700;color:#3b2b1a;white-space:nowrap}.banner-copy small{font-size:9px;color:#7a664e;white-space:nowrap}.banner-actions{display:flex;align-items:center;gap:5px;margin-left:4px;flex-shrink:0}.banner-btn-rotate{display:inline-flex;align-items:center;gap:4px;padding:4px 9px;border-radius:999px;background:linear-gradient(135deg,#2e6648,#1e4b33);color:#fff;font-size:10.5px;font-weight:700;cursor:pointer;box-shadow:0 2px 8px #1e4b3340;border:none}.banner-btn-dismiss{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:#0000000d;color:#8c7860;border:none;cursor:pointer}@container game ((orientation: landscape) and (max-height: 480px)) or ((max-width: 768px) and (max-height: 480px)){.app{height:calc(var(--game-vh, 1vh) * 100)!important;min-height:0!important;max-height:calc(var(--game-vh, 1vh) * 100)!important;overflow:hidden!important;padding-left:max(8px,var(--game-safe-left, 0px))!important;padding-right:max(8px,var(--game-safe-right, 0px))!important}.hud{top:6px!important;left:max(8px,var(--game-safe-left, 0px))!important;right:max(8px,var(--game-safe-right, 0px))!important;gap:8px!important;height:36px!important}.hud-left-group{gap:6px!important}.hud .icon-button{width:32px!important;height:32px!important;padding:0!important}.chapter-title small{display:none!important}.chapter-title strong{font-size:12.5px!important;letter-spacing:.5px!important;white-space:nowrap!important}.hud-center-group{gap:8px!important}.hud-action-guide{padding:2px 6px!important;gap:2px!important;margin-left:0!important}.hud-guide-pill{padding:2px 7px!important;font-size:10.5px!important;gap:4px!important}.guide-pill-badge{width:14px!important;height:14px!important;font-size:9px!important}.rounds{gap:4px!important}.rounds span{width:18px!important;height:18px!important;font-size:8px!important}.rounds .current{width:22px!important;height:22px!important;box-shadow:0 0 0 3px #fff9df7a!important}.hud-right-group{gap:6px!important}.resources{padding:3px 8px!important;gap:6px!important}.resources span{font-size:11.5px!important;gap:3px!important}.resources .art-icon{width:18px!important;height:18px!important}.world-stage{top:50%!important;width:min(calc((calc(var(--game-vh, 1vh) * 100) - 40px) * 1.777),calc(var(--game-vw, 1vw) * 100))!important;max-width:calc(var(--game-vw, 1vw) * 100)!important}.stage-label{top:46px!important;left:max(10px,var(--game-safe-left, 0px))!important;font-size:9px!important;padding:2px 7px!important}.stage-label small{display:none!important}.tactics-rail{position:fixed!important;top:46px!important;bottom:auto!important;max-height:calc(calc(var(--game-vh, 1vh) * 100) - 54px)!important;overflow-y:auto!important;z-index:1250!important;box-shadow:0 8px 30px #00000047!important}.tactics-left{left:max(8px,var(--game-safe-left, 0px))!important;width:min(276px,calc(var(--game-vw, 1vw) * 74))!important}.tactics-right{right:max(8px,var(--game-safe-right, 0px))!important;width:min(286px,calc(var(--game-vw, 1vw) * 76))!important}.compact-side-rail{top:48px!important;gap:3px!important}.compact-left-rail{left:max(6px,var(--game-safe-left, 0px))!important}.compact-right-rail{right:max(6px,var(--game-safe-right, 0px))!important}.compact-side-rail button{width:126px!important;min-height:28px!important;padding:3px 6px!important;font-size:10px!important}.compact-rail-tabs,.compact-rail-empty{width:126px!important}.compact-side-rail .compact-rail-tabs button{width:auto!important;min-height:24px!important;padding:2px 3px!important;font-size:9px!important}.tactics-compact .tactics-left.compact-detail-panel{left:max(140px,calc(var(--game-safe-left, 0px) + 140px))!important;width:min(260px,calc(calc(var(--game-vw, 1vw) * 100) - 286px))!important}.tactics-compact .tactics-right.compact-detail-panel{right:max(140px,calc(var(--game-safe-right, 0px) + 140px))!important;width:min(276px,calc(calc(var(--game-vw, 1vw) * 100) - 286px))!important}.hud-rail-left-toggle{top:46px!important;left:max(8px,var(--game-safe-left, 0px))!important;padding:5px 9px!important;font-size:11px!important;min-height:28px!important}.hud-rail-right-toggle{top:46px!important;right:max(8px,var(--game-safe-right, 0px))!important;padding:5px 9px!important;font-size:11px!important;min-height:28px!important}.bottom-area{bottom:max(4px,var(--game-safe-bottom, 0px))!important;left:max(8px,var(--game-safe-left, 0px))!important;right:max(8px,var(--game-safe-right, 0px))!important}.bench-bar{min-height:44px!important;margin-bottom:2px!important;transform:none!important}.bench-title{font-size:9px!important;padding:2px 8px!important;bottom:calc(100% + 2px)!important}.bench-title small{display:none!important}.bench-slots{padding:2px 8px 3px!important;border-image-width:10px!important}.bench-slot{width:clamp(44px,calc(var(--game-vw, 1vw) * 5.8),56px)!important;height:44px!important}.bench-slot img{height:44px!important;width:40px!important;bottom:2px!important}.bench-slot b{font-size:8px!important;padding:1px 3px!important;bottom:1px!important}.bench-slot .seat-number{font-size:10px!important;bottom:8px!important}.shop-fabs.fabs-visible{position:fixed!important;bottom:max(6px,var(--game-safe-bottom, 0px))!important;right:max(10px,var(--game-safe-right, 0px))!important;left:auto!important;justify-content:flex-end!important;gap:6px!important;width:auto!important;pointer-events:none!important}.shop-fabs.fabs-visible .shop-fab{pointer-events:auto!important;height:32px!important;padding:0 9px 0 8px!important;font-size:11px!important;border-radius:9px 11px!important;box-shadow:0 3px 10px #00000029!important}.shop-fabs.fabs-visible .fab-text{font-size:11px!important;font-weight:700!important}.shop:not(.shop-collapsed){max-height:calc(calc(var(--game-vh, 1vh) * 100) - 40px)!important;overflow:visible!important;padding:6px 16px 10px!important;border-radius:12px!important;margin-bottom:0!important;width:min(940px,calc(var(--game-vw, 1vw) * 98))!important}.shop-caption{margin-bottom:4px!important;font-size:11px!important;padding:0 4px!important}.shop-caption button{padding:2px 6px!important;font-size:9.5px!important;min-height:22px!important;border-radius:6px!important}.shop-invite{font-size:9.5px!important;padding:2px 7px!important;min-height:22px!important;border-radius:6px!important}.shop-main{display:flex!important;align-items:stretch!important;gap:6px!important}.shop-cards{flex:1!important;gap:6px!important}.recruit-card{height:72px!important;min-height:72px!important;border-width:8px 6px 10px 6px!important;padding:2px 6px 4px 4px!important;border-radius:9px!important}.portrait{width:36px!important;height:44px!important}.card-copy strong{font-size:10.5px!important;line-height:1.15!important}.card-copy small{font-size:8px!important}.card-copy p{display:none!important}.card-copy .role-tag{font-size:7.5px!important;padding:0 4px!important}.price{font-size:9px!important;padding:1px 4px!important;top:3px!important;right:4px!important}.battle-start{width:120px!important;min-width:110px!important;height:72px!important;min-height:72px!important;padding:6px 8px!important;font-size:11px!important;margin-top:0!important;border-radius:9px!important;gap:6px!important}.battle-start span{font-size:11px!important;font-weight:800!important;line-height:1.2!important}.battle-start small{font-size:8.5px!important}.battle-start svg{width:14px!important;height:14px!important}.modal{max-height:min(calc(var(--game-vh, 1vh) * 94),350px)!important;max-width:min(560px,calc(var(--game-vw, 1vw) * 92))!important;padding:8px 16px 10px!important;border-radius:16px!important}.modal-scroll-wrap{max-height:calc(calc(var(--game-vh, 1vh) * 94) - 22px)!important;overflow-y:auto!important}.modal h2{font-size:15px!important;margin-bottom:3px!important}.modal p{margin:1px 0 5px!important;font-size:10.5px!important}.eyebrow{font-size:8.5px!important;margin-bottom:2px!important}.modal .setting-row{padding:4px 10px!important;gap:8px!important;font-size:11px!important;min-height:28px!important;margin-bottom:2px!important}.modal-bottom{margin-top:6px!important}.modal-bottom .primary{padding:5px 14px!important;font-size:11px!important;min-height:28px!important}.result-panel{padding:14px 20px!important}.settlement-crest{margin-bottom:6px!important}.settlement-title{font-size:18px!important}.settlement-sub-badge{font-size:10.5px!important;padding:2px 8px!important}.settlement-loot-shelf{gap:8px!important;margin-bottom:8px!important}.settlement-loot-card{padding:6px 12px!important}.loot-icon-bubble{width:32px!important;height:32px!important}.loot-icon-bubble svg{width:16px!important;height:16px!important}.loot-val{font-size:13px!important}.settlement-cta-btn{padding:10px 22px!important;font-size:13px!important;min-height:42px!important;margin-top:10px!important}.battle-controls{bottom:max(14px,var(--game-safe-bottom, 0px))!important;right:max(14px,var(--game-safe-right, 0px))!important;left:auto!important;transform:none!important;padding:5px 10px!important;gap:8px!important}.battle-controls button{padding:5px 10px!important;font-size:11px!important}.combat-story{top:46px!important;left:max(8px,var(--game-safe-left, 0px))!important;right:auto!important;transform:none!important;font-size:9.5px!important;padding:5px 9px!important;max-width:170px!important;white-space:normal!important;border-radius:10px!important;background:#24180fe6!important;border:1px solid rgba(202,167,107,.65)!important;-webkit-backdrop-filter:blur(6px)!important;backdrop-filter:blur(6px)!important;box-shadow:0 4px 12px #00000040!important;z-index:1200!important;pointer-events:none;text-align:left!important}.combat-story>span{display:inline-block!important;font-size:8.5px!important;font-weight:800!important;color:#ffd88a!important;margin-bottom:2px!important;letter-spacing:.5px!important;line-height:1!important}.combat-story strong{display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;font-size:9.5px!important;line-height:1.3!important;color:#fff6e4!important;font-weight:600!important;white-space:normal!important}.combat-story small{display:block!important;font-size:8px!important;color:#fff4dca6!important;margin-top:3px!important;line-height:1.2!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.knowledge-drop{width:42px!important;height:42px!important}.knowledge-drop:before{inset:4%!important;filter:blur(1.5px)!important}.knowledge-drop-ready:after{font-size:7.5px!important;padding:1px 5px!important;bottom:-4px!important}}@container game (max-width: 540px) and (orientation: portrait){.chapter-title{display:none}.hud-action-guide{display:none!important}.hud{left:8px!important;right:8px!important;top:max(8px,var(--game-safe-top, 0px))!important;padding:4px 8px!important;gap:6px!important}.hud-left-group,.hud-right-group{gap:5px!important}.resources{padding:6px 10px!important;gap:8px!important}.resources span{font-size:11px!important;gap:4px!important}.rounds{gap:4px!important;padding:3px 6px!important}.rounds span{width:16px!important;height:16px!important;font-size:8px!important}.rounds .current{width:20px!important;height:20px!important;box-shadow:0 0 0 2px #10b98147!important}.hud>.icon-button,.hud-fullscreen-btn,.hud-left-group .icon-button{width:34px!important;height:34px!important;padding:0!important}.mobile-orientation-banner{top:56px!important;width:calc(calc(var(--game-vw, 1vw) * 100) - 16px)!important;padding:6px 10px!important}.banner-copy strong{font-size:11px!important}.banner-copy span{font-size:9px!important}.banner-btn{padding:4px 8px!important;font-size:10px!important}.hud-rail-left-toggle,.hud-rail-right-toggle{top:116px!important;padding:5px 10px!important;font-size:11px!important;min-height:32px!important}.shop-fabs.fabs-visible{position:fixed!important;bottom:max(92px,calc(var(--game-safe-bottom, 0px) + 84px))!important;left:50%!important;right:auto!important;transform:translate(-50%)!important;justify-content:center!important;gap:8px!important}}.world{container-type:size}.world-panorama{display:none;position:absolute;top:0;left:50%;width:calc(100% * 2823 / 1672);height:100%;max-width:none;transform:translate(-50%);pointer-events:none;-webkit-user-select:none;user-select:none}.world.world-wide .world-stage{width:max(calc(100cqh * 1672 / 941),calc(100cqw * 1672 / 2823))!important;height:max(100cqh,calc(100cqw / 3))!important;max-width:none!important;top:50%!important;left:50%!important;transform:translate(-50%,-50%)!important;-webkit-mask-image:none;mask-image:none}.world-wide .world-panorama{display:block;-webkit-mask-image:none;mask-image:none}.world-wide .scene-layers,.world-wide:before,.world-wide .world-stage:before,.world-wide .world-stage:after{display:none}.game-viewport{position:fixed;container:game / size;transform:translateZ(0);transform-origin:top left;overflow:hidden}.game-viewport.is-rotated{transform:rotate(90deg)}.game-viewport>.app{width:100%;height:100%!important;max-height:100%!important;min-height:0}.game-viewport{--game-safe-left: env(safe-area-inset-left, 0px);--game-safe-right: env(safe-area-inset-right, 0px);--game-safe-top: env(safe-area-inset-top, 0px);--game-safe-bottom: env(safe-area-inset-bottom, 0px)}.game-viewport.is-rotated{--game-safe-left: env(safe-area-inset-top, 0px);--game-safe-right: env(safe-area-inset-bottom, 0px);--game-safe-top: env(safe-area-inset-right, 0px);--game-safe-bottom: env(safe-area-inset-left, 0px)}.strategy-peek{position:absolute;right:24px;top:104px;z-index:12;width:245px;padding:15px;text-align:left;border:1px solid #fff9;border-radius:18px;color:#24483f;cursor:pointer;display:grid;gap:8px}.strategy-title{font-size:12px;display:flex;justify-content:space-between;color:#668477}.strategy-peek strong{font-size:14px}.strategy-peek em{font-size:12px;color:#995d3e;font-style:normal}.synergy-chips{display:flex;gap:5px}.synergy-chips span{font-size:10px;padding:4px 6px;background:#e6e8dd;border-radius:7px;color:#7a827b}.synergy-chips .on{background:#d3ebda;color:#24634e}.strategy-panel h3{font-size:16px;margin:22px 0 12px}.strategy-panel h3 small{font-weight:400;color:#6a8176}.strategy-panel>.primary{margin-top:22px;width:100%}.strategy-panel p{line-height:1.65}.equipment-choices{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:16px 0}.equipment-choices button{border:1px solid #d6dfc9;border-radius:16px;background:linear-gradient(#fffdf5,#edf2df);color:#335749;padding:16px 12px;display:flex;flex-direction:column;align-items:center;gap:9px;cursor:pointer}.equipment-choices button:hover{border-color:#639b77;box-shadow:0 5px 20px #33574915}.equipment-choices i,.equipment-choices .equip-art{font-style:normal;width:72px;height:72px;object-fit:contain}.equip-art-sm,.equipped-item img,.synergy-mark{width:28px;height:28px;object-fit:contain;flex-shrink:0}.team-cards summary{display:flex;align-items:center;gap:8px}.equipment-row strong{display:flex;align-items:center;gap:8px}.equipped-item{display:inline-flex;align-items:center;gap:6px;margin-left:4px}.equipment-choices p{font-size:12px;margin:0;text-align:left;flex:1}.equipment-choices small{font-size:10px;color:#6a8176}.equipment-choices b{background:#376853;color:#fff;font-size:12px;border-radius:8px;padding:8px 12px}.enemy-brief{background:#eaf0e3;border-radius:14px;padding:14px}.enemy-brief p{margin:7px 0}.enemy-brief small{color:#61786b;line-height:1.6;display:block}.team-cards{display:grid;gap:8px}.team-cards details{border:1px solid #dbe2d4;border-radius:12px;padding:12px}.team-cards details.active{border-color:#86b49a;background:#eef7ed}.team-cards summary{cursor:pointer;font-size:13px}.team-cards p{font-size:12px;margin-bottom:0}.team-members{display:flex;gap:12px;margin-top:12px}.team-members span{display:grid;justify-items:center;gap:3px;font-size:11px;opacity:.45}.team-members .present{opacity:1}.team-members img{width:50px;height:50px;object-fit:contain}.equipment-row{display:flex;gap:14px;align-items:center;justify-content:space-between;padding:13px 0;border-bottom:1px solid #dee4d7}.equipment-row span{display:grid;gap:5px}.equipment-row strong{font-size:13px}.equipment-row small{font-size:11px;line-height:1.5;color:#78887d}.equipment-row select{max-width:160px;min-height:44px;border-radius:10px;border:1px solid #cfd9c7;background:#fcfdf6;color:#335749;padding:8px;font-family:inherit}.community{margin:15px 0}.community-buildings{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.community-buildings>div{border-radius:14px;background:#e4e6df;padding:12px 5px;display:grid;justify-items:center;gap:5px;color:#92968e}.community-buildings .repaired{background:linear-gradient(145deg,#ecf7d4,#d4e7c4);color:#376853}.community-buildings span{font-size:30px}.community-buildings strong{font-size:12px}.community-buildings small,.community-buildings b{font-size:10px}.community details{margin:15px 0}.community summary{cursor:pointer;font-size:12px}.story-page{width:100%;border:0;border-bottom:1px solid #dce2d7;background:transparent;display:flex;gap:12px;justify-content:space-between;text-align:left;padding:10px 0;color:#456453;cursor:pointer}.story-page span{font-size:12px}.story-page small{font-size:10px;white-space:nowrap}.review-suggestions{display:flex;flex-wrap:wrap;gap:6px;font-size:11px}.review-suggestions>span{width:100%;color:#708472}.review-suggestions button{border:0;background:#e1ebd7;color:#456453;border-radius:8px;padding:8px;cursor:pointer}.battle-report{background:#eaf0e4;border-radius:12px;padding:10px 14px;margin:12px 0;text-align:left}.battle-report p{font-size:12px;margin:4px 0}.lesson-context{margin:12px 0;background:#eef3e5;border-radius:12px;padding:12px}.lesson-context span{font-size:12px;color:#45745d}.lesson-context p{font-size:12px;margin:6px 0 0}.story-complete{padding:12px;background:#e2efd9;border-radius:12px;font-size:13px}.hazard-layer{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:3}.hazard-cell{fill:#dc986327;stroke:#c87e45;stroke-width:1.5;stroke-dasharray:7 5}.hazard-cell.warning{fill:#ed9d5970;stroke:#c76b33;stroke-width:3}.preview-ink{fill:#68517670;stroke:#836d96;stroke-width:2}.cell-coordinate{font-size:12px;fill:#a06f49;font-weight:700}.zone.clean{background:#a8e49455!important;border:2px solid #91bc77!important}@media(max-width:900px){.strategy-peek{right:14px;top:92px;width:215px;padding:10px}.strategy-peek strong{font-size:12px}.synergy-chips span{font-size:9px;padding:3px}.strategy-title{font-size:10px}}@media(max-width:600px){.strategy-peek{top:119px;right:8px;width:172px;gap:5px;padding:8px}.strategy-peek strong{font-size:11px}.strategy-title small{display:none}.synergy-chips{gap:3px}.synergy-chips span{font-size:8px;padding:3px}.equipment-choices{grid-template-columns:1fr}.equipment-choices button{display:grid;grid-template-columns:30px 1fr;align-items:center;text-align:left;padding:12px;gap:5px 10px}.equipment-choices i,.equipment-choices .equip-art{grid-row:span 3;width:48px;height:48px}.equipment-choices p{grid-column:2}.equipment-choices b{grid-column:2;text-align:center}.equipment-row select{max-width:128px;font-size:12px}.community-buildings strong{font-size:11px}}.strategy-modal{width:min(700px,100%)}.map-panel{max-height:calc(100svh - 120px);overflow:auto;top:calc(50% + 35px)}.strategy-peek{top:212px;z-index:1000}.is-arranging .strategy-peek{opacity:.08;pointer-events:none}@media(max-width:900px){.strategy-peek{top:195px;width:180px}}@media(max-width:600px){.strategy-peek{top:190px;width:164px}.strategy-peek .synergy-chips{display:none}}.attack-range{fill:#f1d58a30;stroke:#dbb463;stroke-width:2;pointer-events:none}.selection-equip{margin-top:8px;width:100%;min-height:38px;color:#38634b;border:1px solid #d1dfc4!important;border-radius:9px!important;background:#e7eedc!important}.building-art{width:100%;height:76px;filter:grayscale(1);opacity:.55}.building-art.restored{filter:none;opacity:1}.community-buildings>div{padding-top:0}.repaired .building-art{animation:building-arrive .6s ease-out}@keyframes building-arrive{0%{opacity:.3;transform:translateY(5px)}to{opacity:1;transform:none}}.reduced .building-art{animation:none}.strategy-dock{pointer-events:none}.tactics-rail{pointer-events:auto;position:absolute;z-index:1000;top:84px;bottom:auto;max-height:calc(100svh - 195px);width:250px;margin:0;padding:10px 12px;border:1px solid #fff9;border-radius:16px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#8c785740 transparent;color:#24483f;background:#fffceeef;box-shadow:0 4px 16px #1b382d1a,inset 0 1px #fff;display:flex;flex-direction:column;gap:8px}.tactics-left{left:20px;top:84px;bottom:auto;width:252px}.rail-tab-content{display:flex;flex-direction:column;gap:6px;max-height:calc(100svh - 260px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:#8c785730 transparent;padding-right:2px}.tactics-right{right:20px;top:84px;bottom:auto;width:248px}.rail-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:7px;border-bottom:1px solid #70845a24;margin-bottom:2px;flex-shrink:0}.rail-title{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:#274536}.rail-title-icon{width:20px;height:20px;object-fit:contain}.rail-collapse-btn{display:flex;align-items:center;gap:2px;background:transparent;border:0;padding:3px 6px;font-size:11px;color:#698369;cursor:pointer;border-radius:6px;transition:all .12s ease}.rail-collapse-btn:hover{background:#d8e5cb66;color:#1e3e30}.hud-rail-toggle{pointer-events:auto;position:absolute;z-index:1050;display:flex;align-items:center;gap:6px;padding:9px 15px;border-radius:12px;font-size:12px;font-weight:700;color:#284638;cursor:pointer;box-shadow:0 4px 14px #1b352820;transition:all .16s ease;min-height:38px}.hud-rail-left-toggle{left:20px;top:132px}.hud-rail-right-toggle{right:20px;top:86px}.hud-rail-toggle:hover{transform:translateY(-1px);filter:brightness(1.04)}.compact-side-rail{pointer-events:auto;position:fixed;top:82px;z-index:1050;display:flex;flex-direction:column;gap:3px}.compact-left-rail{left:12px}.compact-right-rail{right:12px}.compact-rail-tabs{width:132px;display:grid;grid-template-columns:1fr 1fr;gap:2px;padding:2px;border:1px solid rgba(255,255,255,.88);border-radius:10px;background:#ece6d5eb;box-shadow:0 3px 10px #1e30232e}.compact-side-rail .compact-rail-tabs button{width:auto;min-height:25px;grid-template-columns:auto auto auto;justify-content:center;gap:3px;padding:2px 4px;border:0;border-radius:7px;background:transparent;box-shadow:none;font-size:9px}.compact-side-rail .compact-rail-tabs button.active{background:#fffdf5;color:#176b42;box-shadow:0 1px 4px #1e302324}.compact-side-rail .compact-rail-tabs button b{min-width:13px;padding:0 3px;line-height:13px}.compact-rail-list{display:flex;flex-direction:column;gap:3px}.compact-rail-empty{width:132px;padding:9px 7px;border:1px dashed rgba(129,151,100,.52);border-radius:9px;background:#fffcefdb;color:#7a8775;font-size:9px;text-align:center}.compact-side-rail button{position:relative;width:132px;min-height:30px;display:grid;grid-template-columns:17px 1fr auto;align-items:center;gap:4px;padding:3px 7px;border:1px solid rgba(255,255,255,.88);border-radius:9px;background:#fffcefeb;color:#294638;box-shadow:0 3px 10px #1e30232e;font-size:10.5px;font-weight:750;cursor:pointer}.compact-side-rail button>span{min-width:0;display:flex;flex-direction:column;line-height:1.1;text-align:left}.compact-side-rail button span,.compact-side-rail button strong,.compact-side-rail button small{white-space:nowrap}.compact-side-rail button strong{overflow:hidden;font-size:10px;text-overflow:ellipsis}.compact-side-rail button:hover,.compact-side-rail button:focus-visible,.compact-side-rail button.selected{background:#fffdf5;border-color:#819764b8;transform:translateY(-1px)}.compact-side-rail button.selected{box-shadow:inset 3px 0 #5a9161,0 3px 10px #1e302333}.compact-side-rail button>img{width:17px;height:17px;object-fit:contain}.compact-side-rail button b{min-width:15px;padding:1px 4px;border-radius:999px;background:#e4ecda;color:#456148;font-size:9px;line-height:14px;text-align:center}.compact-side-rail button small{color:#74836f;font-size:8px;font-weight:600}.compact-side-rail button i{position:absolute;top:3px;right:3px;width:6px;height:6px;border-radius:50%;background:#f59e0b;box-shadow:0 0 5px #f59e0bbf}.compact-right-rail button{grid-template-columns:17px 1fr;grid-template-areas:"icon label" "icon detail";text-align:left}.compact-right-rail button svg{grid-area:icon}.compact-right-rail button span{grid-area:label}.compact-right-rail button small{grid-area:detail}.mobile-equip-targets{margin-top:7px;padding-top:7px;border-top:1px dashed rgba(112,132,90,.3)}.mobile-equip-targets>span{display:block;margin-bottom:5px;color:#657562;font-size:9px;font-weight:700}.mobile-equip-targets>div{display:flex;gap:4px;overflow-x:auto;padding-bottom:2px}.mobile-equip-targets button{flex:0 0 54px;min-height:55px;display:flex;flex-direction:column;align-items:center;gap:1px;padding:3px;border:1px solid #d8dfcc;border-radius:8px;background:#fffdf5;color:#344c3b;font-size:8px}.mobile-equip-targets button img{width:28px;height:28px;object-fit:contain}.mobile-equip-targets button small{color:#198754;font-size:7px}.mobile-equip-targets button:disabled{opacity:.45}.mobile-equip-targets button.equipped{border-color:#4f9b6c;background:#eff9ef;opacity:1}.compact-detail-title{color:#294638;font-size:12px}.rail-section{display:flex;flex-direction:column}.rail-section:not(:last-child){padding-bottom:9px;border-bottom:1px dashed #7a8d6728}.section-title{display:flex;align-items:center;justify-content:space-between;margin:3px 0 6px;font-size:12px;font-weight:700;color:#294637}.section-title small{font-size:10px;font-weight:400;color:#6d846b}.coach-steps{display:flex;flex-direction:column;gap:5px}.coach-step-btn{display:flex;align-items:center;width:100%;text-align:left;padding:7px 9px;border-radius:10px;border:1px solid #cfb88f50;background:#fffbe670;gap:8px;cursor:pointer;transition:all .14s ease;margin:0}.coach-step-btn .step-badge{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;font-size:10.5px;font-weight:700;background:#ded2b2;color:#51634b;flex-shrink:0}.coach-step-btn .step-body{flex:1;min-width:0;display:flex;flex-direction:column}.coach-step-btn .step-body strong{font-size:11px;color:#2a4738;line-height:1.3}.coach-step-btn .step-body small{font-size:9.5px;color:#697c64;line-height:1.2;margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.coach-step-btn.next-step{background:#e3efce;border-color:#9cbfa0;box-shadow:inset 0 0 0 1px #9cbfa040,0 2px 6px #5c845415}.coach-step-btn.next-step .step-badge{background:#477247;color:#fff}.coach-step-btn.done-step{background:#edf3e450;opacity:.9}.coach-step-btn.done-step .step-badge{background:#6e946a;color:#fff}.coach-step-btn:hover{transform:translate(2px);filter:brightness(1.02)}.coach-step-btn .step-arrow{color:#7b8e72;flex-shrink:0}.coach-step-btn .play-arrow{color:#3b6b3e}.shirley-quest-card{display:flex;align-items:center;width:100%;text-align:left;padding:8px 10px;border-radius:12px;border:1px solid #d5bf92;background:linear-gradient(135deg,#fff7e5,#f5ebd2);gap:9px;cursor:pointer;box-shadow:0 2px 8px #263c3815;transition:all .16s ease;margin-bottom:2px}.shirley-avatar{width:36px;height:48px;object-fit:contain;flex-shrink:0;filter:drop-shadow(0 2px 4px #263c3820)}.shirley-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.shirley-tag{font-size:9px;font-weight:700;color:#94713c;letter-spacing:.5px}.shirley-title{font-size:11px;font-weight:700;color:#274536;line-height:1.35}.shirley-reward{display:inline-flex;align-items:center;gap:3px;font-size:9px;font-style:normal;color:#466f43;font-weight:600;margin-top:2px}.shirley-quest-card:hover{transform:translateY(-1px);box-shadow:0 4px 12px #263c3822;filter:brightness(1.02)}.tactics-rail .team-cards{gap:6px}.rail-switch{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:3px;border:1px solid #e8dec8;border-radius:9px;background:#f8f6ee}.rail-switch button{min-height:30px;border-radius:6px;color:#6e806e;font-size:11px}.rail-switch button.active{background:#376853;color:#fffdf0;box-shadow:0 2px 5px #37685322}.roster-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}.roster-strip button{min-width:0;padding:4px 2px;border:1px solid transparent;border-radius:7px;display:grid;justify-items:center;gap:2px;color:#516b5a;font-size:9px}.roster-strip button:hover,.roster-strip button.chosen{background:#fff6c5;border-color:#d3b65c}.roster-strip img{width:34px;height:34px;object-fit:contain}.roster-strip span,.roster-strip small{overflow:hidden;max-width:100%;text-overflow:ellipsis;white-space:nowrap}.roster-strip small{color:#9a8750}.loadout-heading{display:flex;align-items:center;gap:7px;padding:6px 0 8px}.loadout-heading img{width:36px;height:36px;object-fit:contain}.loadout-heading strong{font-size:12px}.loadout-heading small{margin-left:auto;color:#788a78;font-size:10px}.loadout-slots{display:grid;grid-template-columns:1fr 1fr;gap:6px}.loadout-slot{min-width:0;min-height:66px;padding:5px;border:1px dashed #c9d6c3;border-radius:8px;background:#f4f7ed;display:grid;place-items:center;gap:2px;color:#87937f;font-size:9px}.loadout-slot:hover{border-color:#7ca88b;background:#ecf8ed}.loadout-slot.filled{border-style:solid;border-color:#c9b56e;color:#52694e}.loadout-slot img{width:38px;height:38px;object-fit:contain}.loadout-slot span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.equipment-inventory{min-height:90px}.tactics-rail .equipment-row{display:flex;flex-direction:row;align-items:center;gap:6px;min-height:48px;padding:6px 0;cursor:grab}.synergy-rail-section{min-height:0}.tactics-rail .equipment-row:active{cursor:grabbing}.tactics-rail .equipment-row.equipped{background:#f2f8ed}.drag-handle{flex:0 0 auto;color:#a3ad96}.tactics-rail .equipment-row>span{min-width:0;flex:1}.tactics-rail .equipment-row strong,.tactics-rail .equipment-row small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tactics-rail .equipment-row small{margin-top:2px}.tactics-rail .team-cards details{padding:8px 9px;background:#f8f6ee;border:1px solid #e8dec8;border-radius:8px}.tactics-rail .team-cards details.active{background:#ecfdf5;border-color:#10b981}.tactics-rail .team-cards summary{font-size:11px;line-height:1.4;cursor:pointer}.tactics-rail .team-members{gap:3px;justify-content:space-between;margin-top:6px}.tactics-rail .team-members img{width:34px;height:34px}.tactics-rail .team-members span{font-size:10px}.tactics-rail .equipment-row{flex-direction:row;align-items:center;gap:6px;padding:6px 0}.equipment-detail{position:relative;display:flex;gap:8px;margin-top:7px;padding:8px;border:1px solid #d6c584;border-radius:8px;background:#fff9df}.equipment-detail-close{position:absolute;top:4px;right:4px;width:22px;height:22px;border-radius:50%;color:#76806c}.equipment-detail-close:hover{background:#eee4b5}.equipment-detail-art{width:64px;height:64px;flex:0 0 auto;object-fit:contain}.equipment-detail-copy{min-width:0;padding:2px 16px 0 0}.equipment-detail-copy strong{display:block;font-size:12px}.equipment-detail-copy p{margin:4px 0;color:#64715f;font-size:10px;line-height:1.45}.equipment-detail-copy small{color:#9a8750;font-size:9px}.tactics-rail select{width:100%;max-width:none;min-height:32px;font-size:11px;border-radius:6px}.tactics-rail .enemy-brief{padding:0;font-size:11.5px;margin-bottom:4px}.tactics-rail .enemy-brief p{line-height:1.5;margin:4px 0 6px}.tactics-rail .enemy-brief small{font-size:10.5px;line-height:1.4}.tactics-rail .muted,.rail-note{display:block;font-size:10.5px;line-height:1.5;color:#73816b}.rail-note{margin-top:6px}.planning-controls{padding:0;margin:0;border:0;min-width:0}.equip-selected{padding:6px;border:1px solid #a7ba92;border-radius:7px;background:#e4edce;color:#335749;font-size:10.5px}.tactics-rail :disabled{cursor:not-allowed;opacity:.6}.reward-entry{margin-top:8px;width:100%;font-size:11.5px}.hazard-timer{font-size:11px;color:#a24e36;margin:4px 0}.is-arranging .tactics-rail,.is-arranging .hud-rail-toggle{opacity:.12;pointer-events:none}@media(max-width:1200px),(max-height:750px){.tactics-rail{position:fixed;z-index:1200;top:68px;bottom:24px;max-height:calc(100svh - 90px);box-shadow:0 10px 36px #192d2347;border-radius:18px}.tactics-left{left:14px;width:min(340px,88vw)}.tactics-right{right:14px;width:min(300px,86vw)}.hud-rail-left-toggle{left:14px;top:68px}.hud-rail-right-toggle{right:14px;top:68px}}@media(max-width:700px){.tactics-rail{position:fixed;max-height:calc(100svh - 220px);width:calc(100% - 24px);inset:64px 12px 200px;z-index:1200}.tactics-left-grid{grid-template-columns:1fr;overflow-y:auto}.hud-rail-left-toggle{left:12px;top:130px}.hud-rail-right-toggle{right:12px;top:130px}}:root{--theme-panel-bg: linear-gradient(145deg, rgba(255, 253, 248, .92) 0%, rgba(246, 239, 226, .95) 100%);--theme-panel-bg-solid: #faf6ee;--theme-panel-border: rgba(226, 210, 180, .85);--theme-panel-shadow: 0 4px 0 rgba(180, 155, 120, .22), 0 12px 32px rgba(60, 45, 25, .08), inset 0 1px 0 rgba(255, 255, 255, .95);--theme-cta-bg: linear-gradient(180deg, #34d399 0%, #10b981 55%, #059669 100%);--theme-cta-hover-bg: linear-gradient(180deg, #4ade80 0%, #10b981 50%, #047857 100%);--theme-cta-active-bg: linear-gradient(180deg, #10b981 0%, #059669 100%);--theme-cta-border: #bbf7d0;--theme-cta-shadow: 0 6px 18px rgba(16, 185, 129, .38), inset 0 2px 0 rgba(255, 255, 255, .5), inset 0 -2px 0 rgba(0, 0, 0, .15);--theme-cta-text: #ffffff;--theme-cta-text-shadow: 0 1px 2px rgba(6, 78, 59, .65);--theme-badge-bg: rgba(255, 252, 245, .95);--theme-badge-border: #d8c29a;--theme-badge-text: #4a331c;--theme-badge-sub: #78604c;--theme-badge-highlight: #10b981;--theme-card-bg: #fffdf7;--theme-card-hover: #ffffff;--theme-card-recruited: #f4f0e6;--theme-card-border: #e6d7be;--theme-text-dark: #3a251a;--theme-text-muted: #78604c;--theme-text-light: #ffffff;--theme-text-accent: #10b981;--theme-text-gold: #d97706}.app{--ink: #3a251a;--gold: #d8b775}.home-video{position:fixed;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;pointer-events:none}.scene-loading-screen{position:fixed;inset:0;z-index:4000;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at 55% 35%,#d9bd77,#536f69 58%,#203c3d);color:#fff9eb}.scene-loading-screen>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.scene-loading-screen:after{content:"";position:absolute;inset:0;background:#13252361}.scene-loading-card{position:relative;z-index:1;display:grid;justify-items:center;gap:12px;width:min(360px,calc(calc(var(--game-vw, 1vw) * 100) - 40px));padding:30px 25px;border:1px solid #fff9eb88;border-radius:24px;background:#142d2ac2;box-shadow:0 18px 60px #10221f66;text-align:center;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.scene-loading-card strong{font-size:clamp(20px,calc(var(--game-vw, 1vw) * 5),27px)}.scene-loading-card span{font-size:14px;opacity:.85}.scene-loading-orbit{display:grid;place-items:center;width:68px;height:68px;border:3px solid #fff9eb55;border-top-color:#ffe29e;border-radius:50%;font-size:32px;animation:scene-loading-spin 1.4s ease-in-out infinite}.scene-loading-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}.scene-loading-actions button{padding:10px 16px}.scene-loading-skip{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;color:#fff9eb;text-decoration:underline;cursor:pointer}@keyframes scene-loading-spin{0%{transform:rotate(0) scale(.92)}50%{transform:rotate(180deg) scale(1.06)}to{transform:rotate(360deg) scale(.92)}}.intro-film,.boss-reveal{position:fixed;inset:0;z-index:3000;display:grid;place-items:center;overflow:hidden;background:#171d20}.chapter-film{z-index:3050}.intro-film video{width:100%;height:100%;object-fit:cover}.intro-film:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,20,20,.72),transparent 68%),linear-gradient(0deg,rgba(12,20,20,.48),transparent 45%)}.intro-film-copy{position:absolute;z-index:1;left:calc(var(--game-vw, 1vw) * 8);bottom:calc(var(--game-vh, 1vh) * 12);display:grid;gap:12px;color:#fff8e8;text-shadow:0 3px 18px #0008}.intro-film-copy span{letter-spacing:4px;font-size:12px}.intro-film-copy strong{font-size:56px}.intro-film-copy button{justify-self:start;display:inline-flex;align-items:center;gap:8px}.intro-film-copy .intro-music-button{padding:8px 2px;border:0;background:transparent;color:#fff8e8;font:inherit;font-size:14px;text-decoration:underline;cursor:pointer}.boss-reveal{background:radial-gradient(circle,#30234b,#151521 52%,#090b12);animation:boss-reveal-in .28s ease-out both}.boss-reveal:before{content:"";position:absolute;inset:12% 0;background:repeating-linear-gradient(105deg,transparent 0 12px,#bca4eb18 13px 15px);animation:boss-cloud 1.2s linear infinite}.boss-reveal span,.boss-reveal strong,.boss-reveal video{position:absolute;z-index:1}.boss-reveal span{top:21%;color:#d7c6ff;letter-spacing:4px;font-size:11px}.boss-reveal strong{top:27%;color:#fff5dc;font-size:32px;text-shadow:0 0 24px #a98be9}.boss-reveal video{width:100%;height:100%;object-fit:cover;opacity:.8;mix-blend-mode:screen}.victory-reveal{position:fixed;inset:0;z-index:3100;overflow:hidden;background:#15241b;animation:result-rise .45s ease-out both}.ending-reveal{z-index:3200}.victory-reveal video{width:100%;height:100%;object-fit:cover}.victory-reveal:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(18,44,29,.72),transparent 72%),linear-gradient(0deg,rgba(18,44,29,.46),transparent 48%)}.victory-reveal-copy{position:absolute;z-index:1;left:calc(var(--game-vw, 1vw) * 8);bottom:calc(var(--game-vh, 1vh) * 12);display:grid;gap:12px;color:#fff8e8;text-shadow:0 3px 18px #0008}.victory-reveal-copy span{letter-spacing:4px;font-size:12px}.victory-reveal-copy strong{font-size:56px}.victory-reveal-copy button{justify-self:start;display:inline-flex;align-items:center;gap:8px}.result-win{animation:result-rise .5s cubic-bezier(.2,.8,.2,1) both}.result-win:before{content:"✦  ✧  ✦  ✧  ✦";display:block;color:#d99b34;letter-spacing:12px;animation:victory-sparkle 1.2s ease-in-out infinite alternate}@keyframes intro-film-in{0%{opacity:0}to{opacity:1}}@keyframes boss-reveal-in{0%{opacity:0;transform:scale(1.04)}to{opacity:1;transform:scale(1)}}@keyframes boss-cloud{to{transform:translate(80px)}}@keyframes boss-float{to{transform:translateY(-14px) scale(1.04)}}@keyframes result-rise{0%{opacity:0;transform:translateY(28px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes victory-sparkle{0%{opacity:.45;transform:scale(.92)}to{opacity:1;transform:scale(1.06)}}.app .vignette{background:linear-gradient(180deg,rgba(50,30,20,.18),transparent 22%,transparent 66%,rgba(40,25,15,.45))}.app .glass{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(145deg,#fff8ec,#ecdcc1);border:1px solid #fff2d2;box-shadow:0 3px #9f866480,0 8px 20px #321e0f26,inset 0 0 0 2px #c9ad7828}.app .primary{border:2px solid var(--theme-cta-border);background:var(--theme-cta-bg);box-shadow:var(--theme-cta-shadow);border-radius:14px;color:var(--theme-cta-text);text-shadow:var(--theme-cta-text-shadow);transition:all .18s ease}.app .primary:hover{background:var(--theme-cta-hover-bg);box-shadow:0 8px 22px #10b9817a,0 0 14px #a7f3d066,inset 0 2px #ffffff8c;transform:translateY(-2px)}.app .primary:active{background:var(--theme-cta-active-bg);transform:translateY(1px);box-shadow:0 3px 8px #064e3b59}.app.on-menu .world-stage{left:63%;top:50%;width:max(calc(var(--game-vw, 1vw) * 105),calc(var(--game-vh, 1vh) * 150));transition:all .4s ease}.app.on-menu .vignette{background:linear-gradient(90deg,rgba(255,253,248,.52) 0%,rgba(255,253,248,.22) 28%,transparent 50%),linear-gradient(0deg,rgba(30,20,10,.08) 0%,transparent 20%);pointer-events:none}.app .menu-header{position:absolute;inset:0 0 auto;z-index:1100;padding:24px 32px;display:flex;align-items:center;justify-content:space-between;pointer-events:none}.app .menu-header>*{pointer-events:auto}.app .menu-header .brand{display:inline-flex;align-items:center;gap:10px;background:transparent;padding:0;-webkit-user-select:none;user-select:none}.app .menu-header .brand-leaf{color:#10b981;filter:drop-shadow(0 1px 3px rgba(0,0,0,.3))}.app .menu-header .brand-text{display:flex;flex-direction:column;line-height:1.15}.app .menu-header .brand-title{font-size:15px;font-weight:900;letter-spacing:2px;color:#382215;text-shadow:0 1px 1px #fffbe8,0 2px 8px rgba(255,255,255,.6)}.app .menu-header .brand-sub{font-size:9px;font-weight:800;letter-spacing:2px;color:#8c5a32;text-shadow:0 1px 1px rgba(255,255,255,.8)}.app .menu-header .icon-button{width:40px;height:40px;border-radius:8px;display:grid;place-items:center;background:#fffdf6e0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1.5px solid #d4af67;box-shadow:0 2px 6px #2d190a1f,inset 0 1px #fff;color:#4a2d18;cursor:pointer;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.app .menu-header .icon-button:hover{transform:translateY(-1px);border-color:#f59e0b;box-shadow:0 4px 12px #d9770633}.app .menu-header .icon-button:active{transform:translateY(1px)}.app .hero{position:absolute;left:7%;top:50%;transform:translateY(-50%);width:min(320px,calc(var(--game-vw, 1vw) * 32));text-align:left;z-index:1000;pointer-events:auto;display:flex;flex-direction:column}.app .hero h1{font-family:system-ui,-apple-system,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;font-size:clamp(46px,calc(var(--game-vw, 1vw) * 4.4),64px);font-weight:950;letter-spacing:3.5px;line-height:1.08;margin:0 0 10px;color:#3b2010;text-shadow:0 1px 0 #ffffff,0 2.5px 0 #e2c9a3,0 4px 14px rgba(45,20,10,.25);-webkit-user-select:none;user-select:none}.app .hero h1 span{display:block;font-size:11px;font-weight:850;letter-spacing:5.5px;margin-top:6px;color:#8c5728;text-shadow:0 1px 1px rgba(255,255,255,.9)}.app .hero-progress-line{display:inline-flex;align-items:center;gap:8px;margin:0 0 16px;font-size:13px;font-weight:800;color:#553319;text-shadow:0 1px 1px rgba(255,255,255,.95);background:linear-gradient(90deg,#fffdf6f0,#fff8e6e0);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1.5px solid rgba(212,175,103,.55);border-radius:6px;padding:5px 12px;width:fit-content;box-shadow:0 2.5px 6px #2d190a14,inset 0 1px #fff;-webkit-user-select:none;user-select:none;cursor:pointer;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease,background .15s ease}.app .hero-progress-line:hover{transform:translateY(-1px);border-color:#d97706;background:#fffffffa;box-shadow:0 4px 12px #b4641429,inset 0 1px #fff;color:#78350f}.app .hero-progress-line .chapter-marker{color:#d97706;font-size:10px;line-height:1}.app .hero-progress-line .chapter-label{display:inline-flex;align-items:center}.app .hero-progress-line .round-pill{font-size:11px;font-weight:750;color:#065f46;background:#d1fae5e6;border:1px solid #6ee7b7;border-radius:4px;padding:1px 7px;margin-left:2px}.app .hero-actions{display:flex;flex-direction:column;gap:10px;width:100%}.app .hero-start{position:relative;overflow:hidden;width:100%;min-height:54px;margin:0;padding:0 24px;border-radius:10px;font-family:inherit;font-size:19px;font-weight:900;letter-spacing:4px;display:flex;align-items:center;justify-content:center;gap:12px;color:#fff;cursor:pointer;-webkit-user-select:none;user-select:none;background:linear-gradient(180deg,#10b981,#059669 55%,#047857);border:2px solid #a7f3d0;box-shadow:0 4.5px #064e3b,0 7px 18px #064e3b61,inset 0 2px #ffffff8c,inset 0 -2px #0000002e;text-shadow:0 1.5px 2px rgba(4,50,40,.85);transition:transform .12s cubic-bezier(.2,.8,.2,1),box-shadow .12s cubic-bezier(.2,.8,.2,1),filter .15s ease,border-color .15s ease}.app .hero-start:hover{transform:translateY(-2px);filter:brightness(1.05);border-color:#fef08a;box-shadow:0 6.5px #064e3b,0 10px 24px #064e3b7a,inset 0 2px #ffffffbf,inset 0 -2px #0000002e}.app .hero-start:active{transform:translateY(4px);box-shadow:0 .5px #064e3b,0 2px 6px #064e3b4d,inset 0 2px 5px #00000040}.app .hero-start .hero-start-shimmer{position:absolute;top:0;left:-100%;width:60%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transform:skew(-22deg);animation:hero-cta-shimmer 4.5s ease-in-out infinite;pointer-events:none}@keyframes hero-cta-shimmer{0%,65%{left:-100%}to{left:200%}}.app .hero-start .hero-start-arrow{transition:transform .18s ease}.app .hero-start:hover .hero-start-arrow{transform:translate(4px)}.app .hero-codex-btn{position:relative;overflow:hidden;width:100%;min-height:46px;padding:0 20px;border-radius:9px;font-family:inherit;font-size:15px;font-weight:850;letter-spacing:2.5px;display:flex;align-items:center;justify-content:center;gap:10px;color:#4a2810;cursor:pointer;-webkit-user-select:none;user-select:none;background:linear-gradient(180deg,#fffef9,#fdf6e7 55%,#f4e8cb);border:1.5px solid #d4af67;box-shadow:0 3.5px #b38536,0 6px 14px #46280f24,inset 0 1.5px #fff,inset 0 -1.5px #a06e281f;text-shadow:0 1px 0 rgba(255,255,255,.95);transition:transform .12s cubic-bezier(.2,.8,.2,1),box-shadow .12s cubic-bezier(.2,.8,.2,1),border-color .15s ease,background .15s ease,color .15s ease}.app .hero-codex-btn:hover{transform:translateY(-2px);border-color:#f59e0b;background:linear-gradient(180deg,#fff,#fef9ed 55%,#f7ecd2);box-shadow:0 5.5px #b38536,0 8px 18px #b4641433,inset 0 1.5px #fff;color:#92400e}.app .hero-codex-btn:active{transform:translateY(3px);box-shadow:0 .5px #b38536,0 2px 5px #46280f26,inset 0 1.5px 4px #643c1426}.app .hero-codex-btn .art-icon{filter:drop-shadow(0 1px 2px rgba(100,60,20,.2));transition:transform .18s ease}.app .hero-codex-btn:hover .art-icon{transform:scale(1.08) rotate(-3deg)}.app .menu-footer{position:absolute;bottom:16px;right:28px;left:auto;font-size:11px;color:#5c412eb3;font-weight:500;text-shadow:0 1px 2px rgba(255,255,255,.85);pointer-events:none}.app .hud{top:16px;left:22px;right:22px;display:flex;align-items:center;justify-content:space-between;gap:12px;z-index:1100;pointer-events:none}.app .hud>*{pointer-events:auto}.app .hud-left-group{display:flex;align-items:center;gap:12px;flex-shrink:0;z-index:2}.app .hud-stage-info{margin-right:2px}.app .hud-icon-btn{width:36px;height:36px;border-radius:8px;border:1px solid rgba(220,205,175,.75);background:#fffdf5eb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 2px 8px #28372d14;color:#385040;display:grid;place-items:center;cursor:pointer;transition:all .18s ease;padding:0;flex-shrink:0}.app .hud-icon-btn:hover{background:#fff;color:#1b382d;border-color:#10b98180;transform:translateY(-1px);box-shadow:0 4px 12px #1b382d1f}.app .hud-stage-info{display:flex;flex-direction:column;cursor:pointer;-webkit-user-select:none;user-select:none;line-height:1.15}.app .hud-stage-sub{font-size:9.5px;font-weight:700;letter-spacing:.8px;color:#526f5b;text-shadow:0 1px 2px rgba(255,255,255,.9)}.app .hud-stage-title{font-size:16px;font-weight:900;color:#1d3325;letter-spacing:.5px;text-shadow:0 1px 2px rgba(255,255,255,.9),0 2px 8px rgba(30,50,40,.12)}.app .hud-stage-info:hover .hud-stage-title{color:#047857}.app .hud-center-group{position:absolute;left:50%;transform:translate(-50%);display:flex;align-items:center;justify-content:center;gap:10px;pointer-events:auto;z-index:1}.app .hud-action-strip{display:flex;align-items:center;height:36px;padding:0 8px 0 10px;gap:6px;border-radius:8px;background:#fffdf5eb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(220,205,175,.75);box-shadow:0 2px 8px #28372d14;-webkit-user-select:none;user-select:none;flex-shrink:0}.app .hud-strip-step{display:inline-flex;align-items:center;gap:4px;background:transparent;border:none;padding:4px 6px;cursor:pointer;font-size:11.5px;font-weight:700;color:#4b6352;border-radius:4px;transition:all .15s ease}.app .hud-strip-step:hover{background:#ffffffd9;color:#1b382d}.app .hud-strip-step.active{color:#047857;background:#e8f7ee}.app .hud-strip-step.done{color:#065f46}.app .hud-strip-step .step-badge{font-size:10.5px;font-weight:800;color:#059669}.app .hud-strip-step.active .step-badge{color:#047857}.app .hud-strip-arrow{font-size:12px;color:#9cb1a3;font-weight:800;-webkit-user-select:none;user-select:none}.app .hud-strip-cta{display:inline-flex;align-items:center;gap:4px;height:26px;padding:0 10px;border-radius:6px;border:1px solid #059669;background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-size:11.5px;font-weight:800;cursor:pointer;box-shadow:0 2px 6px #05966940;transition:all .15s ease}.app .hud-strip-cta:hover{background:linear-gradient(135deg,#34d399,#059669);transform:translateY(-1px);box-shadow:0 3px 8px #05966959}.app .hud-strip-cta.disabled{opacity:.55;cursor:not-allowed;background:#a7bcae;border-color:#9cb1a3;box-shadow:none}.app .hud-round-track{display:inline-flex;align-items:center;height:36px;gap:8px;padding:0 12px;border-radius:8px;background:#fffdf5eb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(220,205,175,.75);box-shadow:0 2px 8px #28372d14;-webkit-user-select:none;user-select:none;flex-shrink:0}.app .hud-round-label{font-size:11.5px;font-weight:700;color:#4a6352;letter-spacing:.2px}.app .hud-round-label b{color:#047857;font-weight:900}.app .hud-round-pips{display:inline-flex;align-items:center;gap:4px}.app .hud-round-pip{width:12px;height:6px;border-radius:2px;background:#ded5c2;transition:all .2s ease}.app .hud-round-pip.done{background:#34d399}.app .hud-round-pip.current{width:18px;background:#059669;box-shadow:0 0 6px #10b98199}.app .hud-knowledge-ribbon{display:inline-flex;align-items:center;gap:8px;height:36px;padding:0 12px 0 6px;border-radius:8px;border:1px solid #f59e0b;background:linear-gradient(105deg,#fffbeb,#fef3c7);box-shadow:0 3px 12px #d9770638;cursor:pointer;-webkit-user-select:none;user-select:none;flex-shrink:0;animation:hud-ribbon-glow 2s infinite ease-in-out;transition:all .18s ease}.app .hud-knowledge-ribbon:hover{background:linear-gradient(105deg,#fff,#fde68a);border-color:#d97706;transform:translateY(-1px);box-shadow:0 4px 16px #d9770659}.app .hud-kr-icon{width:24px;height:24px;object-fit:contain;flex-shrink:0;filter:drop-shadow(0 2px 4px rgba(180,100,20,.3))}.app .hud-kr-text{display:flex;flex-direction:column;text-align:left;line-height:1.15}.app .hud-kr-text strong{font-size:11.5px;font-weight:900;color:#78350f;letter-spacing:.3px}.app .hud-kr-text small{font-size:9.5px;font-weight:700;color:#b45309}@keyframes hud-ribbon-glow{0%,to{box-shadow:0 2px 10px #d9770633}50%{box-shadow:0 3px 18px #f59e0b73}}.app .hud-battle-timer{display:inline-flex;align-items:center;height:36px;gap:6px;padding:0 12px;border-radius:8px;background:#fffdf5eb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(220,205,175,.75);box-shadow:0 2px 8px #28372d14;font-size:11.5px;font-weight:700;color:#2b4033;-webkit-user-select:none;user-select:none;flex-shrink:0}.app .hud-timer-dot{width:7px;height:7px;border-radius:50%;background:#10b981;animation:hud-live-pulse 1.8s infinite ease-in-out}@keyframes hud-live-pulse{0%,to{transform:scale(1);opacity:.8;box-shadow:0 0 #10b98166}50%{transform:scale(1.15);opacity:1;box-shadow:0 0 0 4px #10b98100}}.app .hud-right-group{display:flex;align-items:center;gap:8px;flex-shrink:0;margin-left:0}.app .hud-resources{height:36px;padding:0 12px;border-radius:8px;background:#fffdf5eb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(220,205,175,.75);box-shadow:0 2px 8px #28372d14;display:inline-flex;align-items:center;gap:10px;margin-left:0;-webkit-user-select:none;user-select:none}.app .hud-resources span{display:inline-flex;align-items:center;gap:5px;font-size:13.5px;font-weight:800;color:#2b4033}.app .hud-resources i{height:14px;width:1px;background:#c8b9a080}.app .stage-label{display:none!important}.reward-dot{width:8px;height:8px;border-radius:50%;background:#10b981;flex-shrink:0}.app .tactics-rail{top:84px;bottom:auto;max-height:min(calc(calc(var(--game-vh, 1vh) * 100) - 355px),480px);width:250px;display:flex;flex-direction:column}.app .tactics-left{left:18px;top:84px;bottom:auto;width:250px}.app .tactics-right{right:18px;top:84px;bottom:auto;width:250px}.app .bottom-area{left:24px;right:24px;width:auto;transform:none;bottom:18px;display:flex;flex-direction:column;align-items:center;pointer-events:none}.app .bottom-area>*{pointer-events:auto}.app .bench-bar{margin-left:auto;margin-right:auto}.app .shop{width:min(1020px,100%);margin-left:auto;margin-right:auto}.app .rail-tab-switch{display:flex;align-items:center;gap:3px;background:#ebe3d1bf;padding:2.5px 3px;border-radius:12px;border:1px solid rgba(210,195,170,.5)}.app .rail-tab-pill{border:none;background:transparent;padding:3.5px 8px;border-radius:9px;font-size:11px;font-weight:700;color:#5d6f58;cursor:pointer;position:relative;transition:all .15s ease;display:flex;align-items:center;gap:4px}.app .rail-tab-pill:hover{color:#23432b;background:#ffffff80}.app .rail-tab-pill.active{background:#e4f2e4!important;border:1px solid #70b37f!important;color:#23542d!important;box-shadow:0 1px 4px #70b37f33!important}.app .tab-pill-dot{width:6px;height:6px;border-radius:50%;background:#f59e0b;box-shadow:0 0 5px #f59e0b}.app .rail-tab-content,.app .equipment-card-list{display:flex;flex-direction:column;gap:6px;margin-top:2px}.app .equipment-badge-card{display:flex;flex-direction:column;padding:6px 9px;border-radius:11px;border:1px solid rgba(165,190,160,.35);background:#ffffffeb;box-shadow:0 1px 4px #283c2d0d;cursor:pointer;position:relative;-webkit-user-select:none;user-select:none;transition:all .2s cubic-bezier(.16,1,.3,1)}.app .equipment-badge-card:hover{background:#fff;border-color:#52a36d;transform:translateY(-1px);box-shadow:0 3px 8px #52a36d26}.app .equipment-badge-card.expanded{border-color:#52a36d;background:#fff;box-shadow:0 0 0 1.5px #52a36d40,0 4px 12px #52a36d14}.app .equipment-badge-card.equipped{background:#f6fcf6eb;border-color:#3ca05a66}.app .badge-card-main-row{display:flex;align-items:center;gap:7px;width:100%;min-height:28px}.app .badge-card-icon-wrap{width:26px;height:26px;border-radius:50%;background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #fcd34d;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 1px 3px #d977061f}.app .badge-card-art{width:17px;height:17px;object-fit:contain}.app .badge-card-summary{display:flex;align-items:center;gap:6px;min-width:0;flex:1}.app .badge-card-name{font-size:11px;font-weight:700;color:#274536;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app .badge-status-pill{font-size:9px;padding:1px 5px;border-radius:999px;font-weight:700;flex-shrink:0;line-height:1.2}.app .badge-status-pill.equipped{background:#ecfdf5;color:#065f46;border:1px solid #a7f3d0}.app .badge-status-pill.stored{background:#fef3c7;color:#92400e;border:1px solid #fde68a}.app .badge-card-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.app .badge-card-toggle{display:flex;align-items:center;justify-content:center;color:#7a9480;transition:transform .18s ease}.app .badge-card-actions .drag-handle{color:#a8b8aa;flex-shrink:0;cursor:grab}.app .badge-card-drawer{margin-top:5px;padding-top:5px;border-top:1px dashed rgba(16,185,129,.22);display:flex;flex-direction:column;gap:5px;animation:drawerFadeIn .18s cubic-bezier(.16,1,.3,1)}@keyframes drawerFadeIn{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}.app .drawer-desc{font-size:10px;color:#3b5244;line-height:1.45;margin:0;background:#f0f8f2b3;padding:5px 7px;border-radius:6px;border:1px solid rgba(16,185,129,.12)}.app .drawer-footer{display:flex;align-items:center;justify-content:space-between;gap:4px}.app .drawer-role-tag{font-size:9px;color:#526e5d;background:#dcebe199;padding:1.5px 5px;border-radius:4px;font-weight:500}.app .drawer-unequip-btn{font-size:9px;font-weight:700;color:#dc2626;background:#fee2e2;border:1px solid #fca5a5;padding:2px 8px;border-radius:5px;cursor:pointer;transition:all .15s ease}.app .drawer-unequip-btn:hover{background:#fecaca;color:#b91c1c;border-color:#ef4444}.app .drawer-drag-hint{font-size:8.5px;color:#7a9480}.app .empty-equip-box{padding:14px 6px;text-align:center;border-radius:12px;border:1px dashed rgba(130,160,140,.35);background:#ffffff4d;margin-top:4px}.app .empty-equip-box p{font-size:10px;margin:0;color:#7a9480}.app .rail-tip-bar{font-size:10px;color:#33593b;text-align:center;margin-top:6px;margin-bottom:2px;padding:5px 8px;border-radius:9px;background:#eaf4e8d9;border:1px solid rgba(145,185,150,.45);font-weight:600}.app .detail-unequip-btn{display:block;width:100%;margin-top:6px;padding:4px 8px;border-radius:6px;background:#fee2e2;color:#b91c1c;border:1px solid #fca5a5;font-size:10.5px;font-weight:700;cursor:pointer;transition:all .15s ease}.app .detail-unequip-btn:hover{background:#fecaca}.app .synergy-card-list{display:flex;flex-direction:column;gap:6px;margin-top:2px}.app .synergy-badge-card{display:flex;flex-direction:column;padding:6px 8px;border-radius:10px;border:1px solid rgba(130,160,140,.25);background:#ffffffd1;box-shadow:0 1px 4px #283c2d0a;cursor:pointer;position:relative;-webkit-user-select:none;user-select:none;transition:all .2s cubic-bezier(.16,1,.3,1)}.app .synergy-badge-card:hover{background:#fff;border-color:#10b981;transform:translateY(-1px);box-shadow:0 3px 8px #10b9811f}.app .synergy-badge-card.active{background:#f3fcf5eb;border-color:#10b98166}.app .synergy-badge-card.expanded{border-color:#10b981;background:#fdfefe;box-shadow:0 0 0 1.5px #10b98140,0 4px 12px #10b98114}.app .synergy-badge-card.active.expanded{background:#f2fbf4;border-color:#10b981}.app .synergy-card-main-row{display:flex;align-items:center;gap:7px;width:100%;min-height:28px}.app .synergy-mark-wrap{width:26px;height:26px;border-radius:50%;background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:1px solid #bbf7d0;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 1px 3px #10b98126;transition:all .2s ease}.app .synergy-badge-card.active .synergy-mark-wrap{background:linear-gradient(135deg,#dcfce7,#86efac);border-color:#22c55e;box-shadow:0 0 8px #22c55e59}.app .synergy-mark{width:18px;height:18px;object-fit:contain}.app .synergy-card-summary{display:flex;align-items:center;gap:6px;min-width:0;flex:1}.app .synergy-name-group{display:flex;align-items:baseline;gap:4px;min-width:0}.app .synergy-name{font-size:11.5px;font-weight:700;color:#244131;white-space:nowrap}.app .synergy-short-tag{font-size:8.5px;color:#728a78;white-space:nowrap}.app .synergy-count-pill{font-size:9px;font-weight:700;padding:1px 5px;border-radius:999px;background:#dce6e199;color:#55705f;flex-shrink:0}.app .synergy-count-pill.active{background:#dcfce7;color:#15803d;border:1px solid #86efac}.app .synergy-card-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.app .synergy-status-pill{font-size:8.5px;font-weight:700;padding:1.5px 6px;border-radius:999px;white-space:nowrap}.app .synergy-status-pill.active{background:#ecfdf5;color:#047857;border:1px solid #a7f3d0}.app .synergy-status-pill.pending{background:#fef3c7;color:#92400e;border:1px solid #fde68a}.app .synergy-toggle-icon{display:flex;align-items:center;justify-content:center;color:#7a9480;transition:transform .18s ease}.app .synergy-card-drawer{margin-top:6px;padding-top:6px;border-top:1px dashed rgba(16,185,129,.22);display:flex;flex-direction:column;gap:7px;animation:drawerFadeIn .18s cubic-bezier(.16,1,.3,1)}.app .synergy-section-label{font-size:9.5px;font-weight:700;color:#435e4e;display:block;margin-bottom:4px}.app .synergy-badge-card .team-members{display:flex;align-items:center;justify-content:space-around;gap:6px;background:#f0f8f299;padding:6px 4px;border-radius:8px;border:1px solid rgba(16,185,129,.12);margin:0}.app .team-member-item{display:flex;flex-direction:column;align-items:center;gap:2px;transition:all .18s ease}.app .team-member-item.missing{opacity:.42;filter:grayscale(.55)}.app .team-member-item.present{opacity:1}.app .member-avatar-wrap{width:32px;height:32px;border-radius:50%;background:#fff;border:1.5px solid #cbd5e1;position:relative;display:flex;align-items:center;justify-content:center;overflow:visible}.app .team-member-item.present .member-avatar-wrap{border-color:#22c55e;box-shadow:0 0 6px #22c55e59}.app .member-avatar-wrap img{width:26px;height:26px;object-fit:cover;border-radius:50%}.app .member-present-badge{position:absolute;bottom:-2px;right:-2px;width:12px;height:12px;border-radius:50%;background:#22c55e;color:#fff;font-size:8px;font-weight:900;display:flex;align-items:center;justify-content:center;border:1.5px solid #ffffff}.app .member-name{font-size:9px;font-weight:600;color:#2e4a3b;text-align:center}.app .synergy-tiers-list{display:flex;flex-direction:column;gap:4px}.app .synergy-tier-box{padding:5px 7px;border-radius:6px;background:#f5f5f0b3;border:1px solid rgba(210,220,215,.6);transition:all .18s ease}.app .synergy-tier-box.active{background:#ecfdf5d9;border-color:#22c55e59}.app .tier-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:2px}.app .tier-tag{font-size:8.5px;font-weight:700;color:#557262;background:#e1ebe6cc;padding:1px 5px;border-radius:3px}.app .synergy-tier-box.active .tier-tag{color:#065f46;background:#d1fae5;border:1px solid #a7f3d0}.app .tier-active-badge{font-size:8px;font-weight:700;color:#15803d;background:#dcfce7;padding:.5px 4px;border-radius:3px}.app .tier-desc{font-size:9.5px;color:#4b6354;line-height:1.45;margin:0}.app .synergy-tier-box.active .tier-desc{color:#1f3b2d;font-weight:500}.app .unit-hud{position:absolute;bottom:102%;left:50%;transform:translate(-50%);width:max-content;display:flex;flex-direction:column;align-items:center;gap:2px;z-index:15;pointer-events:none}.app .piece.has-sprite .unit-hud{bottom:84%}.app .unit-name-row{display:flex;align-items:center;gap:3px;background:#ffffffeb;padding:1px 6px;border-radius:999px;box-shadow:0 1.5px 5px #1c302329;border:1px solid rgba(220,210,190,.7);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:background .15s ease,border-color .15s ease,box-shadow .15s ease}.app .piece.ally:not(:disabled):hover .unit-name-row,.app .piece.ally:focus-visible .unit-name-row,.app .piece.swap-target .unit-name-row{background:#fff3c6;border-color:#cfb56c;box-shadow:0 0 0 1px #cfb56c,0 2px 6px #cfb56c40}.app .piece.equipment-drop-target .unit-name-row{background:#fff3c6;border-color:#d3ae57;box-shadow:0 0 0 2px #d3ae57,0 2px 8px #d3ae5759}.app .piece.foe .unit-name-row{background:#f2e9f0eb;border-color:#d2bed2b3}.app .unit-name{font-size:10.5px;font-weight:700;color:#274536;line-height:1.2;background:transparent;box-shadow:none;border-radius:0;padding:0}.app .piece.foe .unit-name{color:#68566e;background:transparent}.app .stars{color:#f59e0b;font-size:9.5px;line-height:1;text-shadow:0 1px 2px rgba(180,83,9,.3)}.app .unit-equip-tray{display:flex;align-items:center;justify-content:center;gap:3px;margin-top:1px;pointer-events:auto}.app .unit-equip-slot{width:22px;height:22px;border-radius:6px;background:linear-gradient(135deg,#fff,#fffbeb);border:1.5px solid #d97706;box-shadow:0 0 6px #f59e0b73,0 2px 4px #1c302340;display:flex;align-items:center;justify-content:center;cursor:help;position:relative;transition:transform .15s ease}.app .unit-equip-slot:hover{transform:scale(1.15);box-shadow:0 0 10px #f59e0ba6,0 3px 6px #1c30234d}.app .unit-equip-icon{width:15px;height:15px;object-fit:contain;filter:drop-shadow(0 1px 1px rgba(0,0,0,.18))}.app .piece.has-equipment .contact{box-shadow:0 0 0 2px #f59e0b,0 0 14px #f59e0b8c}.app .tactics-setting-group{display:flex;flex-direction:column;gap:5px;margin-bottom:9px}.app .tactics-setting-header{display:flex;align-items:baseline;justify-content:space-between;gap:6px}.app .tactics-setting-header strong{font-size:11.5px;font-weight:700;color:#274536}.app .tactics-setting-header small{display:block;font-size:9.5px;color:#6d846b}.app .tactics-reset-btn{font-size:10px;color:#059669;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:6px;padding:1px 6px;cursor:pointer;font-weight:600}.app .tactics-reset-btn:hover{background:#d1fae5}.app .tactics-chip-scroll{display:flex;align-items:center;gap:5px;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#8c785730 transparent;padding-bottom:4px}.app .tactics-chip{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:999px;border:1px solid rgba(130,160,140,.28);background:#ffffffc7;color:#385042;font-size:10.5px;font-weight:600;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:all .16s ease}.app .tactics-chip:hover{background:#fff;border-color:#10b981;transform:translateY(-1px)}.app .tactics-chip.active{background:#ecfdf5;border-color:#10b981;color:#065f46;box-shadow:0 2px 6px #10b9812e}.app .chip-role-avatar{width:16px;height:16px;border-radius:50%;object-fit:cover}.app .chip-star{color:#f59e0b;font-size:8.5px;margin-left:-2px}.app .shop{border-radius:18px;padding:10px 14px 14px;background:var(--theme-panel-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1.5px solid var(--theme-panel-border);box-shadow:var(--theme-panel-shadow);color:var(--theme-text-dark);max-height:250px;opacity:1;transform:translateY(0);margin-top:10px;overflow:hidden;transition:max-height .4s cubic-bezier(.16,1,.3,1),opacity .3s ease,transform .4s cubic-bezier(.16,1,.3,1),margin .4s cubic-bezier(.16,1,.3,1),padding .4s cubic-bezier(.16,1,.3,1);will-change:max-height,opacity,transform}.app .shop.shop-collapsed{max-height:0!important;opacity:0!important;transform:translateY(30px)!important;margin-top:0!important;padding-top:0!important;padding-bottom:0!important;border-top-width:0!important;border-bottom-width:0!important;pointer-events:none!important;visibility:hidden!important}.app .shop-is-collapsed .bench-bar{margin-bottom:0}.app .shop-caption{display:flex;align-items:center;margin-bottom:8px;padding:0 4px;font-weight:700;color:#3d281a}.app .shop-caption>small{display:none}.app .shop-caption>div{display:flex;align-items:center;gap:8px;margin-left:auto}.app .shop-caption svg{color:#10b981}.app .shop-caption button{background:#ffffffd9;border:1.2px solid #e0d0b5;border-radius:10px;padding:5px 12px;color:#5c4328;font-size:11.5px;font-weight:600;display:inline-flex;align-items:center;gap:5px;box-shadow:0 1px 3px #3c2d190f;transition:all .15s ease}.app .shop-caption button:hover{background:#fff;border-color:#c9b48e;color:#2e1d0c;transform:translateY(-1px);box-shadow:0 3px 8px #3c2d191f}.app .shop-caption button.active{background:#ecfdf5;border-color:#10b981;color:#065f46}.app .shop-caption .shop-toggle{min-width:68px;justify-content:center;color:#48634e}.app .shop-fabs{position:absolute;right:0;bottom:8px;z-index:20;display:flex;align-items:center;gap:10px;transform-origin:bottom right;transition:transform .35s cubic-bezier(.16,1,.3,1),opacity .28s ease,visibility .35s;will-change:transform,opacity}.app .shop-fabs.fabs-visible{transform:translateY(0) scale(1);opacity:1;visibility:visible;pointer-events:auto}.app .shop-fabs.fabs-hidden{transform:translateY(24px) scale(.94);opacity:0;visibility:hidden;pointer-events:none}.app .shop-fab{height:46px;padding:0 16px 0 14px;border-radius:999px;display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;position:relative;overflow:hidden;transition:all .2s cubic-bezier(.16,1,.3,1)}.app .shop-fab:active{transform:scale(.96)!important}.app .fab-text{font-size:13px;font-weight:800;letter-spacing:.2px}.app .shop-fab-recruit{background:linear-gradient(180deg,#fff,#fffbf2 60%,#faecd5);border:1.5px solid #dfc79b;color:#4a341e;box-shadow:0 4px 14px #5032141f,inset 0 1px #fff}.app .shop-fab-recruit .fab-icon-sparkle{color:#d97706;flex-shrink:0;transition:transform .25s ease}.app .shop-fab-recruit:hover{background:#fff;border-color:#cca466;transform:translateY(-2px);box-shadow:0 6px 18px #5032142e,inset 0 1px #fff}.app .shop-fab-recruit:hover .fab-icon-sparkle{transform:scale(1.15) rotate(12deg)}.app .fab-coin-badge{display:inline-flex;align-items:center;gap:3px;padding:2px 7px;border-radius:999px;background:#fef3c7;border:1px solid #fde68a;color:#92400e;font-size:11.5px;font-weight:800;margin-left:2px}.app .fab-coin-badge svg{color:#d97706}.app .shop-fab-battle{background:linear-gradient(180deg,#10b981,#059669);border:1.5px solid #34d399;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.18);box-shadow:0 4px 18px #05966959,inset 0 1px #fff6}.app .shop-fab-battle .fab-icon-play{color:#fff;flex-shrink:0;transition:transform .25s ease}.app .shop-fab-battle:hover{background:linear-gradient(180deg,#059669,#047857);border-color:#6ee7b7;transform:translateY(-2px);box-shadow:0 8px 24px #05966973,inset 0 1px #ffffff80}.app .shop-fab-battle:hover .fab-icon-play{transform:scale(1.12) translate(2px)}.app .fab-ready-badge{display:inline-flex;align-items:center;justify-content:center;padding:2px 8px;border-radius:999px;background:#ffffff3d;border:1px solid rgba(255,255,255,.38);color:#fff;font-size:11px;font-weight:800;margin-left:2px}.app .shop-fab-battle.ready:after{content:"";position:absolute;top:-50%;left:-60%;width:40%;height:200%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent);transform:rotate(25deg);animation:battle-shine 3.5s infinite;pointer-events:none}@keyframes battle-shine{0%{left:-60%}35%{left:140%}to{left:140%}}@container game ((max-width: 960px)) or ((max-height: 550px)){.app .shop-fabs{bottom:6px;gap:6px}.app .shop-fab{height:32px;padding:0 9px 0 8px;gap:5px;font-size:11px;border-radius:10px 12px}.app .fab-text{font-size:11px;font-weight:700}.app .fab-icon-sparkle{width:13px;height:13px}.app .fab-icon-play{width:12px;height:12px}.app .fab-coin-badge{padding:1px 5px;font-size:10px;gap:2px}.app .fab-coin-badge svg{width:10px;height:10px}.app .fab-ready-badge{padding:1px 6px;font-size:9.5px;min-width:22px}}.app.tactics-compact .shop-fabs{bottom:6px;gap:6px}.app.tactics-compact .shop-fab{height:32px;padding:0 9px 0 8px;gap:5px;font-size:11px;border-radius:10px 12px}.app.tactics-compact .fab-text{font-size:11px;font-weight:700}.app.tactics-compact .fab-icon-sparkle{width:13px;height:13px}.app.tactics-compact .fab-icon-play{width:12px;height:12px}.app.tactics-compact .fab-coin-badge{padding:1px 5px;font-size:10px;gap:2px}.app.tactics-compact .fab-coin-badge svg{width:10px;height:10px}.app.tactics-compact .fab-ready-badge{padding:1px 6px;font-size:9.5px;min-width:22px}.app .shop-caption b{color:#d97706;font-weight:800}.app .recruit-card{border-radius:12px;background:var(--theme-card-bg);color:var(--theme-text-dark);min-height:118px;box-shadow:0 4px 14px #3c2d1912}.app .recruit-card:hover{background:var(--theme-card-hover);transform:translateY(-3px);box-shadow:0 8px 20px #3c2d1921}.app .portrait{height:68px;width:60px}.app .modal,.app .map-panel{background:linear-gradient(120deg,#fff8ec,#ecdcc1);border:2px solid #cfb47b;border-radius:12px;box-shadow:inset 0 0 0 5px #fff8e366,0 25px 90px #23140a66}.app .overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1e120c8c}.app.in-battle .tactics-toggle{top:155px}.app .combat-story{background:#352317eb;color:#fff4dc;border-color:#caa76b}@container game (max-width: 860px){.app.on-menu .world-stage{left:50%;top:36%;width:max(calc(var(--game-vw, 1vw) * 100),calc(var(--game-vh, 1vh) * 120))}.app.on-menu .vignette{background:linear-gradient(180deg,rgba(255,253,248,.45) 0%,rgba(255,253,248,.08) 25%,transparent 50%),linear-gradient(0deg,rgba(30,20,10,.2) 0%,transparent 35%);pointer-events:none}.app .menu-header{padding:calc(12px + var(--game-safe-top, 0px)) 16px 8px}.app .menu-header .icon-button{width:38px;height:38px;border-radius:8px}.app .hero{position:absolute;left:50%;transform:translate(-50%);top:auto;bottom:calc(18px + var(--game-safe-bottom, 0px));width:min(320px,calc(calc(var(--game-vw, 1vw) * 100) - 32px));text-align:center;align-items:center;display:flex;flex-direction:column;z-index:1000}.app .hero h1{display:none}.app .hero-progress-line{margin:0 0 10px;font-size:12px;justify-content:center}.app .hero-actions{display:flex;flex-direction:column;gap:9px;width:100%}.app .hero-start{position:static;transform:none;width:100%;min-height:48px;font-size:17px;letter-spacing:3px;margin:0;padding:0 18px;border-radius:9px}.app .hero-codex-btn{width:100%;min-height:44px;font-size:14.5px;letter-spacing:2px;padding:0 16px;border-radius:8px}.app .menu-footer{display:none}}@container game (max-width: 1040px){.app .hud-strip-cta,.app .hud-stage-sub{display:none}}@container game (max-width: 820px){.app .hud-action-strip{display:none}}@container game (max-width: 700px){.app .hud{left:10px;right:10px;top:10px;gap:6px}.app .hud-stage-sub{display:none}.app .hud-stage-title{font-size:13.5px}.app .hud-action-strip,.app .hud-fullscreen-btn{display:none}.app .hud-round-track{padding:0 8px;gap:5px;height:32px}.app .hud-round-label{font-size:11px}.app .hud-round-pip{width:8px;height:5px}.app .hud-round-pip.current{width:14px}.app .hud-battle-timer{height:32px;padding:0 8px;font-size:11px}.app .hud-knowledge-ribbon{height:32px;padding:0 8px 0 4px;gap:4px}.app .hud-kr-text small{display:none}.app .hud-resources{height:32px;padding:0 8px;gap:6px}.app .hud-resources span{font-size:12px}.app .hud-icon-btn{width:32px;height:32px}.app .stage-label{display:none!important}.app .quest-peek{top:156px;right:12px;max-width:210px}.app .quest-peek strong{font-size:10px}.app .bottom-area{width:calc(100% - 20px);bottom:12px}.app .shop-main{flex-direction:column;gap:10px}.app .battle-start{width:100%;min-height:42px}.app .recruit-card{min-height:118px}.app .portrait{height:58px;width:52px}.app .bench-slot{width:56px;height:50px}.app .bench-slot img{height:64px;width:58px}.app .bench-title small{display:none}.app .strategy-dock{position:static;background:transparent!important;border:none!important;pointer-events:none!important}}@container game (max-width: 480px){.app .hud-stage-info{display:none}}@container game (max-height: 650px) and (min-width: 701px){.app .hero h1{font-size:44px;margin-bottom:10px}.app .hero h1 span{font-size:11px}.app .hero-note{margin-bottom:8px;padding:6px 12px}.app .hero-start{min-height:48px;font-size:16px;margin-bottom:8px}.app .menu-footer{display:none}}.art-icon{object-fit:contain;flex-shrink:0;filter:drop-shadow(0 2px 1px #233d3825)}.scene-layers{aspect-ratio:1672 / 941;position:relative}.scene-layer{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.board-art{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;pointer-events:none}.layer-far{animation:far-islands-drift 14s ease-in-out infinite alternate}.layer-front{animation:foreground-sway 9s ease-in-out infinite alternate;transform-origin:center bottom}@keyframes far-islands-drift{to{transform:translateY(-7px)}}@keyframes foreground-sway{to{transform:scale(1.012) translate(3px)}}.app .battle-start{width:224px;height:80px;background:var(--theme-cta-bg, linear-gradient(180deg, #34d399 0%, #10b981 55%, #059669 100%));border:2px solid var(--theme-cta-border, #bbf7d0);border-radius:18px;box-shadow:0 6px 20px #10b98166,inset 0 2px #ffffff80,inset 0 -2px #00000026;display:flex;align-items:center;justify-content:space-between;padding:0 24px 0 28px;align-self:center;cursor:pointer;transition:all .2s cubic-bezier(.34,1.56,.64,1);overflow:hidden;position:relative}.app .battle-start:after{content:"";position:absolute;top:0;left:-100%;width:60%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transform:skew(-25deg);animation:shineStart 4.5s infinite ease-in-out;pointer-events:none}@keyframes shineStart{0%,75%{left:-100%}to{left:220%}}.app .battle-start:hover{background:var(--theme-cta-hover-bg, linear-gradient(180deg, #4ade80 0%, #10b981 50%, #047857 100%));transform:translateY(-2px);border-color:#fff;box-shadow:0 8px 24px #10b98180,0 0 16px #a7f3d066,inset 0 2px #ffffffa6}.app .battle-start:active{transform:translateY(1px);background:var(--theme-cta-active-bg, linear-gradient(180deg, #10b981 0%, #059669 100%));box-shadow:0 3px 8px #064e3b59}.app .battle-start span{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:3px;text-align:left;line-height:1.2}.app .battle-start,.app .battle-start span{color:#fff;font-size:16px;font-weight:800;letter-spacing:.5px;text-shadow:0 1px 2px rgba(6,78,59,.7)}.app .battle-start small{display:inline-block;font-size:11px;font-weight:600;color:#d1fae5;text-shadow:0 1px 2px rgba(6,78,59,.6);margin-top:0!important;margin-bottom:0!important;line-height:1.2;opacity:.95;letter-spacing:0}.app .battle-start svg{color:#fff;filter:drop-shadow(0 1px 2px rgba(6,78,59,.6));flex-shrink:0;margin-left:6px;transition:transform .2s ease}.app .battle-start:hover svg{transform:translate(4px)}.app .quest-peek.complete{background:url(https://shirley-cgz.oss-cn-beijing.aliyuncs.com/assets/immersion/UI-06.webp) center / 100% 100% no-repeat}.app .recruit-card{position:relative;height:118px;min-height:118px;box-sizing:border-box;border-style:solid;border-color:transparent;border-width:14px 10px 18px 10px;border-image:url(https://shirley-cgz.oss-cn-beijing.aliyuncs.com/assets/immersion/UI-02.webp) 90 38 125 38 / 14px 10px 18px 10px stretch;background:var(--theme-card-bg);padding:8px 10px 10px 8px;display:flex;align-items:center;gap:8px;border-radius:12px;box-shadow:0 4px 12px #2d190c29;color:var(--theme-text-dark);overflow:visible;text-align:left}.app .recruit-card:hover{background:var(--theme-card-hover);transform:translateY(-3px);box-shadow:0 6px 16px #2d190c38}.app .recruit-card.recruited{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:6px;background:var(--theme-card-recruited);color:#059669;height:118px;min-height:118px;box-sizing:border-box;padding:10px}.app .recruit-card.recruited svg{width:24px;height:24px;color:#10b981}.app .recruit-card.recruited span{font-size:12px;font-weight:700;color:#047857;letter-spacing:.5px}.app .recruit-card .portrait{width:58px;height:68px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.app .recruit-card .portrait img{width:100%;height:100%;object-fit:contain}.app .recruit-card .card-copy{min-width:0;flex:1;display:flex;flex-direction:column;justify-content:center}.app .recruit-card .role-tag{font-size:8px;letter-spacing:.5px;padding:1px 6px;border-radius:4px;display:inline-block;width:fit-content;margin-bottom:2px;font-weight:600}.app .recruit-card strong{display:block;font-size:13px;font-weight:700;color:var(--theme-text-dark);line-height:1.2}.app .recruit-card small{display:block;font-size:10px;color:var(--theme-text-muted);font-style:italic;margin-top:1px}.app .recruit-card p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:8.5px;color:#6a5340;line-height:1.35;margin-top:2px;margin-bottom:0}.app .recruit-card .price{position:absolute;top:6px;right:8px;font-size:11px;font-weight:700;color:#72521d;background:#fef7e3f2;border:1px solid #ebd092;border-radius:10px;padding:2px 7px;display:inline-flex;align-items:center;gap:3px;z-index:5;box-shadow:0 1px 4px #00000014}.app .modal{position:relative;border:28px solid transparent;border-image:url(https://shirley-cgz.oss-cn-beijing.aliyuncs.com/assets/immersion/UI-10.webp) 90 fill / 28px / 0 stretch;background:#fbf0d8;padding:24px 34px 28px;border-radius:20px;box-shadow:inset 0 0 0 2px #faeccb,0 25px 90px #102d4966;overflow:hidden;display:flex;flex-direction:column;box-sizing:border-box;width:min(560px,calc(var(--game-vw, 1vw) * 94));max-height:min(calc(var(--game-vh, 1vh) * 92),680px)}.app .modal.modal-settings{width:min(480px,calc(var(--game-vw, 1vw) * 94))}.app .modal.modal-restart{width:min(420px,calc(var(--game-vw, 1vw) * 94))}.app .modal.modal-formation{width:min(560px,calc(var(--game-vw, 1vw) * 94))}.app .modal.modal-codex{width:min(960px,calc(var(--game-vw, 1vw) * 96));max-height:min(calc(var(--game-vh, 1vh) * 95),680px);padding:14px 22px 16px}.app .modal.modal-codex .modal-scroll-wrap{overflow-y:auto;max-height:none;padding-right:2px}.app .modal.modal-strategy{width:min(720px,calc(var(--game-vw, 1vw) * 96))}.app .modal.result-panel{width:min(520px,calc(var(--game-vw, 1vw) * 94));text-align:center}.modal-scroll-wrap{overflow-y:auto;overflow-x:hidden;max-height:calc(calc(var(--game-vh, 1vh) * 90) - 60px);padding-right:6px;scrollbar-width:thin;scrollbar-color:#cbbea1 transparent;display:flex;flex-direction:column}.modal-scroll-wrap::-webkit-scrollbar{width:5px}.modal-scroll-wrap::-webkit-scrollbar-track{background:transparent}.modal-scroll-wrap::-webkit-scrollbar-thumb{background:#cbbea1;border-radius:4px}.app .modal .close{position:absolute;top:14px;right:14px;width:32px;height:32px;border-radius:50%;background:#fdf5e2;border:1.5px solid #cfba8c;color:#48613f;display:grid;place-items:center;z-index:30;cursor:pointer;box-shadow:0 2px 8px #122a2133;transition:all .15s ease}.app .modal .close:hover{background:#fff;color:#27452d;transform:scale(1.08);box-shadow:0 4px 12px #122a2147}.app .modal .eyebrow{font-size:10px;font-weight:700;letter-spacing:1.5px;color:#6f8664;text-transform:uppercase;margin-bottom:6px}.app .modal h2{font-size:24px;font-weight:700;color:#2b4936;margin:0 0 10px;line-height:1.3}.app .modal-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px;padding-top:14px;border-top:1px solid #ebdcb8}.app .modal-bottom button:not(.primary){padding:9px 20px;border-radius:12px;background:#f4ecda;border:1.5px solid #d4c4a2;color:#496144;font-weight:600;font-size:14px;cursor:pointer;transition:all .15s ease;box-shadow:0 2px 6px #162a2014}.app .modal-bottom button:not(.primary):hover{background:#fdf8ee;border-color:#c4b18c;color:#27422b;transform:translateY(-1px);box-shadow:0 4px 10px #162a2024}.app .modal-bottom button:not(.primary):active{transform:translateY(1px)}.app .setting-row{display:flex;align-items:center;width:100%;padding:11px 12px;border:none;border-bottom:1px solid #ebdcb8;background:transparent;border-radius:8px;font-size:13px;color:#314b38;gap:12px;cursor:pointer;transition:background .15s ease;text-align:left}.app .setting-row:hover{background:#f6ecce}.app .setting-row svg:first-child{width:20px;height:20px;color:#627b5b;flex-shrink:0}.app .setting-row span{flex:1;font-weight:500}.app .setting-row b{background:#e3ebd2;color:#3b5f39;font-size:11px;font-weight:600;padding:4px 10px;border-radius:6px;margin-left:auto}.app .setting-row>svg:last-child{color:#8c9c7f;margin-left:auto}.app .lesson-track{display:flex;justify-content:space-between;align-items:center;margin:10px 0 14px;background:#f0ebd5;padding:8px 14px;border-radius:12px}.app .lesson-track span{display:flex;gap:6px;align-items:center;font-size:12px;color:#929d82}.app .lesson-track b{width:20px;height:20px;border-radius:50%;border:1px solid #c9d2b8;display:grid;place-items:center;font-size:10px}.app .lesson-track .on{color:#456d3f;font-weight:600}.app .lesson-track .on b{background:#d7e7bc;border-color:#b7d197}.app .lesson-intro{font-size:13px;color:#617355;line-height:1.5;margin:8px 0}.app .study-card{display:flex;align-items:center;justify-content:center;gap:20px;padding:14px 20px;background:linear-gradient(135deg,#f2edd6,#e7eed8);border-radius:16px;border:1px solid #dcd7be;margin:10px 0}.app .study-card>img{width:88px;height:110px;object-fit:contain;flex-shrink:0}.app .study-card strong{font-size:26px;color:#2b4c34;display:block;line-height:1.25}.app .study-card p{font-size:16px;color:#5c6c4f;margin:4px 0 10px}.app .study-card small{font-size:11px;color:#839274;margin-bottom:4px;display:block}.app .listen{font-size:12px;color:#4b6a41;background:#fbf6e7;border:1px solid #cbdbb8;border-radius:18px;padding:6px 14px;min-height:36px;display:inline-flex;align-items:center;gap:6px;cursor:pointer;transition:background .15s ease}.app .listen:hover{background:#fff}.app .word-notes{display:flex;align-items:flex-start;gap:10px;font-size:12px;color:#5c6f50;padding:10px 14px;background:#f2ebd5;border-radius:12px;line-height:1.5;margin-top:10px}.app .word-notes svg{flex-shrink:0;margin-top:2px;color:#6a825e}.app .word-notes small{display:block;font-size:11px;color:#809071;margin-top:3px}.app .lesson-next{width:100%;margin-top:16px;min-height:44px;font-size:14px;display:flex;align-items:center;justify-content:center;gap:8px}.app .question{background:#ecf0de;border:1px solid #d5dfc3;border-radius:14px;padding:12px 18px;display:flex;align-items:center;justify-content:space-between;margin:12px 0;font-size:22px;font-weight:700;color:#2e4d36}.app .answers{display:flex;gap:12px;margin:12px 0}.app .answers button{flex:1;background:#f5f0db;border:1.5px solid #dad5bd;border-radius:14px;min-height:84px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:10px 6px;cursor:pointer;transition:all .15s ease}.app .answers button:hover{background:#fff8e8;border-color:#a4bc96}.app .answers button img{height:80px;width:100%;object-fit:contain}.app .answers button>span{margin-top:6px;font-size:13px;font-weight:600;color:#3b553e}.app .answers button.correct{background:#e2edd1;border-color:#6da264}.app .answers button.wrong{background:#fbeee1;border-color:#d89f81}.app .sentence-slots{display:flex;gap:8px;flex-wrap:wrap;background:#ecf0dd;border-radius:12px;padding:14px 16px;margin:14px 0}.app .sentence-slots span{border-bottom:2px solid #b1c699;min-width:44px;padding:4px 6px;font-size:17px;font-weight:600;color:#294630;text-align:center}.app .word-bank{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}.app .word-bank button{min-height:38px;padding:6px 14px;border:1px solid #c2cfb0;background:#fffef6;border-radius:8px;font-size:15px;font-weight:500;color:#334e3a;cursor:pointer;transition:all .15s ease}.app .word-bank button:hover:not(:disabled){background:#e8f0d8;border-color:#9cb585}.app .lesson-medal{font-size:48px;color:#a3a64c}.app .lesson-reward{display:flex;align-items:center;gap:12px;margin-top:12px;padding:8px 12px;border:1px solid #b7c99a;border-radius:8px;background:#f7fbe9;text-align:left}.app .lesson-reward img{width:48px;height:48px;object-fit:contain;flex:0 0 auto}.app .lesson-reward strong,.app .lesson-reward small{display:block}.app .lesson-reward small{margin-top:3px;color:#61745a}.app .source{font-size:9px;color:#929984;margin-top:10px;display:block;text-align:center}.app .help-steps{display:grid;gap:10px;margin:12px 0 16px}.app .help-steps>div{display:flex;gap:12px;align-items:flex-start;background:#f2ebd5;padding:8px 12px;border-radius:10px;border:1px solid #ded6bd}.app .help-steps b{width:26px;height:26px;border-radius:50%;background:#dbe7c9;border:1px solid #bed0a3;color:#3c5e35;font-size:11px;font-weight:700;display:grid;place-items:center;flex-shrink:0}.app .help-steps strong{font-size:13px;font-weight:700;color:#2b4935;display:block}.app .help-steps p{font-size:11px;color:#65745e;line-height:1.45;margin-top:2px}.app .codex-header-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:2px 0 10px}.app .codex-header-row h2{font-size:20px;margin:0;color:#27452d}.app .codex-tabs{display:flex;gap:8px}.app .codex-tab-btn{padding:5px 14px;border-radius:20px;font-size:12px;font-weight:600;border:1px solid #d4c8ab;background:#fbf5e6;color:#556c4d;cursor:pointer;transition:all .15s ease}.app .codex-tab-btn:hover{background:#f3ecd6}.app .codex-tab-btn.active{background:linear-gradient(135deg,#1b8754,#12633e);color:#fff;border-color:#12633e;box-shadow:0 2px 6px #12633e40}.app .codex-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:6px 0 0}.app .codex-card{background:#fff;border-radius:15px;padding:8px 10px 9px;border:1.5px solid #ded5be;box-shadow:0 3px 10px #2332230d;display:flex;flex-direction:column;transition:all .2s cubic-bezier(.16,1,.3,1);box-sizing:border-box;cursor:pointer;position:relative}.app .codex-card:hover{transform:translateY(-3px);box-shadow:0 10px 24px #234b2d1f;border-color:#88b792}.app .codex-card.is-locked{opacity:.65;background:#fbf9f4}.app .codex-avatar-box{height:84px;border-radius:11px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;margin-bottom:5px}.app .codex-avatar-box img.codex-avatar-img{height:74px;width:auto;object-fit:contain;filter:drop-shadow(0 4px 10px rgba(0,0,0,.13));transition:transform .22s ease}.app .codex-card:hover .codex-avatar-box img.codex-avatar-img{transform:scale(1.1) translateY(-2px)}.app .codex-tag-badge{position:absolute;top:5px;left:5px;font-size:10px;font-weight:800;color:#fff;background:#00000061;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-radius:5px;padding:2px 7px;line-height:1.2}.app .codex-lock-badge{position:absolute;top:5px;right:5px;font-size:10px;font-weight:800;color:#64748b;background:#f1f5f9e6;border-radius:5px;padding:2px 6px;display:inline-flex;align-items:center;gap:3px;line-height:1.2}.app .codex-card-body{display:flex;flex-direction:column;gap:2px;height:auto!important}.app .codex-name-row{display:flex;align-items:center;gap:6px}.app .codex-role-name{font-size:14.5px;font-weight:900;color:#1e293b;line-height:1.2}.app .codex-role-en{font-size:11.5px;color:#64748b;font-weight:600;margin-right:auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app .codex-speak-btn{width:22px;height:22px;border-radius:50%;padding:0;display:grid;place-items:center;border:1px solid #d4cbb3;background:#fdfcf7;color:#44684a;cursor:pointer;flex-shrink:0;transition:all .15s ease}.app .codex-speak-btn:hover{background:#e8f5e9;border-color:#81c784;color:#1b5e20;transform:scale(1.12)}.app .codex-skill-desc{margin:1px 0 0;font-size:11px;color:#64748b;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app .modal-codex .learning-log{border-top:none;padding-top:0;margin-top:0}.app .learning-log-hint{font-size:11.5px;color:#728564;margin:2px 0 8px}.app .modal-codex .learning-log>div{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.app .modal-codex .learning-log button{padding:8px 12px;min-height:48px}.app .formation-label{font-size:11px;font-weight:600;color:#7d8e72;letter-spacing:1.5px;margin:12px 0 6px;text-align:center}.app .formation-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin:8px 0 14px}.app .formation-grid button{height:64px;background:#f4ecda;border:1.5px solid #ded0b2;border-radius:10px;min-width:0;display:grid;place-items:center;padding:4px;cursor:pointer;transition:all .15s ease}.app .formation-grid button:hover{background:#fff8e8;border-color:#baa478;transform:translateY(-1px)}.app .formation-grid button.chosen{background:#e2edd1;border-color:#6da264;box-shadow:0 0 0 2px #6da264}.app .formation-grid span{color:#b7ab92;font-size:18px}.app .formation-grid img{width:100%;height:100%;object-fit:contain}.app .selection{position:absolute;right:0;bottom:100%;width:250px;max-width:250px;padding:14px 16px;margin:0 0 16px;display:block;border-radius:16px;background:#fcf4e0;border:1.5px solid #d8c495;box-shadow:0 10px 28px #12261e40;font-size:12px;color:#2e4a36;z-index:1200}.app .selection .selection-close{position:absolute;top:10px;right:10px;width:26px;height:26px;border-radius:50%;background:#ecddb6;border:1px solid #cbb281;display:grid;place-items:center;color:#4b6243;cursor:pointer;transition:all .15s ease}.app .selection .selection-close:hover{background:#fff;color:#26432b}.app .selection-heading{display:flex;gap:10px;align-items:center;padding-right:24px}.app .selection-heading img{width:44px;height:52px;object-fit:contain;flex-shrink:0}.app .selection strong{display:block;font-size:15px;font-weight:700;color:#26442f;line-height:1.3}.app .selection strong span{color:#d19a28;font-size:12px;margin-left:4px}.app .selection-heading small{display:block;color:#728565;font-size:11px;margin-top:2px}.app .selection p{margin:8px 0;font-size:11.5px;line-height:1.5;color:#53674b}.app .selected-equipment-section{margin:6px 0;background:#f0e9d7b3;padding:6px 8px;border-radius:10px;border:1px solid rgba(210,195,170,.6)}.app .selected-equipment-title{display:flex;justify-content:space-between;align-items:center;font-size:10px;font-weight:700;color:#4a6644;margin-bottom:4px}.app .selected-equipment-slots{display:flex;flex-direction:column;gap:4px}.app .selected-equip-card{display:flex;align-items:center;gap:6px;background:#fff;border-radius:8px;padding:4px 6px;border:1px solid #d4c8ab}.app .selected-equip-card img{width:22px;height:22px;object-fit:contain}.app .selected-equip-info{flex:1;min-width:0;display:flex;flex-direction:column}.app .selected-equip-info strong{font-size:11px;color:#274536}.app .selected-equip-info small{font-size:9.5px;color:#687e66}.app .selected-equip-unequip{padding:2px 6px;border-radius:6px;background:#fee2e2;color:#b91c1c;border:1px solid #fca5a5;font-size:9.5px;font-weight:700;cursor:pointer;transition:all .15s ease}.app .selected-equip-unequip:hover{background:#fecaca}.app .selected-equip-empty{font-size:9.5px;color:#7a8e75;text-align:center;padding:4px}.app .selection-equip{display:block;width:100%;margin:8px 0 6px;padding:6px 10px;border-radius:8px;background:#ebdcc0;border:1px solid #cfb88f;color:#3b5336;font-size:11px;font-weight:600;cursor:pointer;text-align:center;transition:all .15s ease}.app .selection-equip:hover{background:#f7eed8}.app .selection-tip{display:block;font-size:10px;color:#87997a;text-align:center;margin-top:4px}.app .selection-tools{margin-top:10px;border-top:1px solid #ebdcb8;padding-top:8px}.app .selection-tools summary{cursor:pointer;font-size:11px;color:#637759;-webkit-user-select:none;user-select:none}.app .selection-tools button{min-height:28px;padding:4px 10px;margin-top:6px;margin-right:6px;border-radius:6px;background:#f2e7cd;border:1px solid #d4c29a;color:#41593a;font-size:11px;cursor:pointer}.app .selection-tools button:hover{background:#fff}.app .modal.result-panel{width:min(520px,calc(var(--game-vw, 1vw) * 94));max-height:min(calc(var(--game-vh, 1vh) * 94),720px);padding:18px 24px 22px;border-width:18px;text-align:center;position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 0%,rgba(254,240,138,.32) 0%,transparent 70%),linear-gradient(180deg,#fffcf5,#faf3e2);box-shadow:0 24px 60px #12201659,0 0 35px #f59e0b29}.app .modal.result-panel.result-loss{background:radial-gradient(ellipse at 50% 0%,rgba(254,202,202,.28) 0%,transparent 70%),linear-gradient(180deg,#fffaf6,#f7efe8);box-shadow:0 24px 60px #2d191459,0 0 30px #ef44441f}.app .modal.result-panel .modal-scroll-wrap{overflow-y:auto;overflow-x:hidden;max-height:min(calc(var(--game-vh, 1vh) * 82),650px);padding:0 4px 16px;gap:10px;display:flex;flex-direction:column;box-sizing:border-box}@container game (max-height: 600px){.app .modal.result-panel{max-height:calc(var(--game-vh, 1vh) * 96)!important;padding:10px 16px 14px!important}.app .modal.result-panel .modal-scroll-wrap{max-height:calc(calc(var(--game-vh, 1vh) * 96) - 24px)!important;gap:7px!important;padding-bottom:12px!important}}.app .modal.result-panel:before,.app .modal.result-panel.result-win:before{display:none!important;content:none!important}.app .settlement-crest{display:flex;flex-direction:column;align-items:center;gap:4px;margin-top:0}.app .settlement-stars-row{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:0}.app .settlement-star{color:#f59e0b;line-height:1;display:inline-block}.app .settlement-star.star-side{font-size:21px;opacity:.88;transform:translateY(2px);filter:drop-shadow(0 2px 4px rgba(180,83,9,.3))}.app .settlement-star.star-center{font-size:31px;transform:translateY(-2px);filter:drop-shadow(0 2px 8px rgba(245,158,11,.6));animation:star-pulse 2.2s ease-in-out infinite}@keyframes star-pulse{0%,to{transform:translateY(-2px) scale(1);filter:drop-shadow(0 2px 8px rgba(245,158,11,.6))}50%{transform:translateY(-2px) scale(1.12);filter:drop-shadow(0 2px 14px rgba(251,191,36,.9))}}.app .settlement-shield-crest{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,#fee2e2,#fecaca);border:1.5px solid #f87171;color:#b91c1c;display:grid;place-items:center;box-shadow:0 3px 10px #b91c1c2e;margin-bottom:2px}.app .settlement-title{margin:0;font-size:24px;font-weight:900;letter-spacing:.8px;line-height:1.15}.app .settlement-title.win{color:#1b4332;text-shadow:0 1px 0 #ffffff,0 2px 4px rgba(27,67,50,.12)}.app .settlement-title.loss{color:#881337}.app .settlement-title.draw{color:#78350f}.app .settlement-sub-badge{display:inline-flex;align-items:center;gap:6px;padding:3px 12px;border-radius:999px;font-size:11px;font-weight:600;color:#3b5832;background:#ebf6e1d9;border:1px solid rgba(160,195,150,.45);box-shadow:0 1px 3px #233c280a}.app .settlement-sub-badge svg{color:#f59e0b}.app .settlement-sub-badge.loss{background:#fef2f2d9;border-color:#f8717166;color:#991b1b}.app .settlement-loot-shelf{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:1px}.app .settlement-loot-card{display:flex;align-items:center;gap:10px;padding:7px 13px;border-radius:14px;background:#fffc;border:1.5px solid rgba(220,205,175,.65);box-shadow:0 2px 6px #232d1e0d;text-align:left}.app .settlement-loot-card.gold-loot{border-color:#f5be328c;background:linear-gradient(135deg,#fffceef2,#fef5d2e0)}.app .settlement-loot-card.heart-loot{border-color:#34d3998c;background:linear-gradient(135deg,#f2fdf5f2,#defbe9e0)}.app .settlement-loot-card.heart-loot.loss-loot{border-color:#f8717180;background:linear-gradient(135deg,#fef2f2f2,#fee2e2e0)}.app .settlement-loot-card.equipment-loot{border-color:#7da8d68c;background:linear-gradient(135deg,#eff8fff2,#e0f2fed9)}.app .settlement-loot-shelf:has(.equipment-loot){grid-template-columns:repeat(3,minmax(0,1fr))}.app .equipment-loot .loot-icon-bubble{background:#e0f2fe;border:1px solid #bae6fd;overflow:hidden}.app .equipment-loot .loot-icon-bubble img{width:28px;height:28px;object-fit:contain}.app .loot-icon-bubble{width:35px;height:35px;border-radius:50%;display:grid;place-items:center;flex-shrink:0;box-shadow:0 2px 5px #00000014}.app .gold-loot .loot-icon-bubble{background:linear-gradient(135deg,#fef08a,#f59e0b);color:#78350f;border:1.5px solid #fef9c3;box-shadow:0 2px 6px #d9770638}.app .heart-loot .loot-icon-bubble{background:linear-gradient(135deg,#a7f3d0,#10b981);color:#064e3b;border:1.5px solid #d1fae5;box-shadow:0 2px 6px #10b98138}.app .loss-loot .loot-icon-bubble{background:linear-gradient(135deg,#fecaca,#f87171);color:#991b1b;border:1.5px solid #fee2e2;box-shadow:0 2px 6px #ef444433}.app .loot-info{display:flex;flex-direction:column;min-width:0}.app .loot-label{font-size:10.5px;font-weight:700;color:#64748b;line-height:1.2}.app .gold-loot .loot-label{color:#854d0e}.app .heart-loot .loot-label{color:#166534}.app .loss-loot .loot-label{color:#991b1b}.app .loot-val{font-size:15px;font-weight:900;color:#1e293b;line-height:1.2;margin-top:1px}.app .gold-loot .loot-val{color:#b45309}.app .heart-loot .loot-val{color:#15803d}.app .loss-loot .loot-val{color:#dc2626}.app .settlement-highlights-area{background:#fffdf8c7;border:1.5px solid rgba(225,210,185,.65);border-radius:14px;padding:8px 12px 9px;display:flex;flex-direction:column;gap:6px;text-align:left;box-shadow:0 2px 7px #3c2d140a}.app .highlights-header{display:flex;align-items:center;justify-content:space-between}.app .highlights-title{font-size:11.5px;font-weight:800;color:#3b5832;letter-spacing:.3px}.app .highlights-chips-wrap{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px;width:100%}.app .highlights-chips-wrap.hero-count-3{grid-template-columns:repeat(3,1fr)}.app .highlights-chips-wrap.hero-count-2{grid-template-columns:repeat(2,1fr);max-width:320px;margin:0 auto}.app .highlights-chips-wrap.hero-count-1{grid-template-columns:1fr;max-width:180px;margin:0 auto}.app .highlight-hero-chip{display:flex;align-items:center;gap:7px;background:#fff;border:1.5px solid #e2e8f0;border-radius:12px;padding:5px 8px;min-width:0;box-sizing:border-box}.app .highlight-hero-chip.rank-1{background:linear-gradient(135deg,#fffcf0,#fef8e2);border-color:#fbbf24;box-shadow:0 2px 6px #f59e0b24}.app .highlight-hero-chip.rank-2{background:linear-gradient(135deg,#fff,#f8fafc);border-color:#cbd5e1;box-shadow:0 2px 5px #64748b14}.app .highlight-hero-chip.rank-3{background:linear-gradient(135deg,#fff,#fff7ed);border-color:#fed7aa;box-shadow:0 2px 5px #c2410c14}.app .hero-chip-avatar-wrap{position:relative;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center}.app .hero-chip-avatar-frame{width:34px;height:34px;border-radius:50%;background:radial-gradient(circle at 50% 35%,#fff,#fef3c7);border:1.5px solid #f59e0b;overflow:hidden;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 1px 4px #f59e0b40}.app .highlight-hero-chip.rank-1 .hero-chip-avatar-frame{border-color:#f59e0b;box-shadow:0 1.5px 5px #f59e0b4d}.app .highlight-hero-chip.rank-2 .hero-chip-avatar-frame{border-color:#94a3b8;background:radial-gradient(circle at 50% 35%,#fff,#f1f5f9);box-shadow:0 1.5px 4px #64748b33}.app .highlight-hero-chip.rank-3 .hero-chip-avatar-frame{border-color:#fb923c;background:radial-gradient(circle at 50% 35%,#fff,#ffedd5);box-shadow:0 1.5px 4px #c2410c33}.app .hero-chip-avatar{width:100%;height:100%;object-fit:cover;object-position:center 16%;transform:scale(1.32);pointer-events:none}.app .hero-chip-rank{position:absolute;bottom:-3px;right:-3px;font-size:11px;line-height:1;filter:drop-shadow(0 1px 2px rgba(0,0,0,.25))}.app .hero-chip-info{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-width:0;flex:1}.app .hero-chip-name{font-size:11px;font-weight:800;color:#1e293b;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.app .stat-pill{font-size:9.5px;font-weight:700;border-radius:999px;padding:1.5px 6px;line-height:1.2;white-space:nowrap}.app .stat-heal{background:#dcfce7;color:#166534;border:1px solid #86efac}.app .stat-shield{background:#e0f2fe;color:#0369a1;border:1px solid #7dd3fc}.app .stat-clean{background:#fef3c7;color:#92400e;border:1px solid #fde68a}.app .highlights-tips-wrap{display:flex;flex-direction:column;gap:3px;margin-top:1px}.app .tip-callout{display:flex;align-items:center;gap:6px;background:linear-gradient(135deg,#fefce8f2,#fef9c3cc);border:1px solid rgba(250,204,21,.45);border-radius:8px;padding:5px 9px;margin-top:2px}.app .tip-callout-icon{font-size:12px;flex-shrink:0}.app .tip-callout-text{font-size:11px;color:#854d0e;line-height:1.35;font-weight:600}.app .settlement-defeat-tip{background:#fff7edeb;border:1.5px solid rgba(254,215,170,.75);border-radius:12px;padding:8px 12px;text-align:left}.app .defeat-tip-tag{font-size:11px;font-weight:800;color:#c2410c;display:block;margin-bottom:2px}.app .defeat-tip-text{margin:0;font-size:11px;color:#7c2d12;line-height:1.4}.app .settlement-cta-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:11px 20px;border-radius:14px;font-size:15px;font-weight:800;letter-spacing:.3px;cursor:pointer;border:none;position:relative;transition:transform .1s ease,box-shadow .1s ease;margin-top:4px;margin-bottom:2px}.app .settlement-cta-btn.btn-win{background:linear-gradient(180deg,#10b981,#059669);color:#fff;box-shadow:0 4px #047857,0 8px 20px #05966959,inset 0 1px #ffffff59;text-shadow:0 1px 2px rgba(4,120,87,.6)}.app .settlement-cta-btn.btn-win:hover{background:linear-gradient(180deg,#34d399,#059669);transform:translateY(-1px);box-shadow:0 5px #047857,0 10px 24px #0596696b,inset 0 1px #ffffff73}.app .settlement-cta-btn.btn-win:active{transform:translateY(3px);box-shadow:0 1px #047857,0 3px 8px #05966940}.app .settlement-cta-btn.btn-retry{background:linear-gradient(180deg,#f59e0b,#d97706);color:#fff;box-shadow:0 4px #b45309,0 8px 20px #d9770659,inset 0 1px #ffffff59;text-shadow:0 1px 2px rgba(180,83,9,.6)}.app .settlement-cta-btn.btn-retry:hover{background:linear-gradient(180deg,#fbbf24,#d97706);transform:translateY(-1px);box-shadow:0 5px #b45309,0 10px 24px #d977066b}.app .settlement-cta-btn.btn-retry:active{transform:translateY(3px);box-shadow:0 1px #b45309,0 3px 8px #d9770640}.app .settlement-cta-btn .btn-sparkle{font-size:14px}.app .settlement-cta-btn .btn-arrow{transition:transform .2s ease}.app .settlement-cta-btn:hover .btn-arrow{transform:translate(3px)}.app .retrieval-container{background:linear-gradient(135deg,#f5faf0f0,#ecf7e4e0);border:1.5px solid rgba(160,195,150,.55);border-radius:14px;padding:8px 12px 10px;text-align:left;box-shadow:0 2px 7px #3c50280a}.app .retrieval-bar{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:5px}.app .retrieval-bar-tag{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;color:#3b5832}.app .speak-pill-btn{display:inline-flex;align-items:center;gap:4px;padding:2px 9px;border-radius:999px;background:#fff;border:1.5px solid #93c5fd;color:#1d4ed8;font-size:11px;font-weight:700;cursor:pointer;box-shadow:0 1px 3px #2563ff1f;transition:all .15s ease}.app .speak-pill-btn:hover{background:#eff6ff;transform:scale(1.03)}.app .retrieval-container .retrieval{background:transparent;border:none;padding:0;margin:0}.app .retrieval-container .retrieval>strong{display:none}.app .retrieval-container .retrieval>p{font-size:13px;font-weight:700;color:#1e3a2b;margin:0 0 6px}.app .retrieval-container .retrieval>div{display:flex;gap:7px}.app .retrieval-container .retrieval button{flex:1;min-height:35px;padding:4px 8px;border-radius:9px;border:1.5px solid #c8d9ba;background:#fff;color:#223f2d;font-size:12px;font-weight:700;cursor:pointer;box-shadow:0 1px 3px #233c280a;transition:all .15s ease}.app .retrieval-container .retrieval button:hover{background:#ecfdf5;border-color:#10b981;color:#047857}.app .retrieval-container .retrieval small{margin-top:5px;font-size:11px;font-weight:700;color:#059669}.app .review-success-compact{font-size:11px;color:#059669;font-weight:700;margin:2px 0}.app .result-action-btn{height:44px;width:100%;border-radius:999px;display:flex;align-items:center;justify-content:center;gap:8px;font-size:14px;font-weight:800;margin-top:4px;box-shadow:0 4px 16px #10b98159}.app .map-modal-backdrop{position:fixed;inset:0;z-index:1200;background:#121e1694;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:16px;animation:map-fade-in .22s ease-out}@keyframes map-fade-in{0%{opacity:0}to{opacity:1}}.app .campaign-map.map-panel{position:relative;left:auto;top:auto;transform:none;width:min(880px,calc(var(--game-vw, 1vw) * 96));height:auto;max-height:min(570px,calc(var(--game-vh, 1vh) * 92));border:28px solid transparent;border-image:url(https://shirley-cgz.oss-cn-beijing.aliyuncs.com/assets/immersion/UI-10.webp) 90 fill / 28px / 0 stretch;background:#fbf0d8;border-radius:20px;box-shadow:inset 0 0 0 2px #faeccb,0 25px 90px #102d4966;padding:4px 12px 6px;display:flex;flex-direction:column;justify-content:space-between;gap:8px;overflow:hidden;box-sizing:border-box;animation:map-scale-up .24s cubic-bezier(.16,1,.3,1)}@keyframes map-scale-up{0%{transform:scale(.96) translateY(8px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.app .journey-header{display:flex;flex-direction:column;gap:6px;padding-bottom:8px;border-bottom:1px solid rgba(180,160,130,.35);flex-shrink:0}.app .journey-header-top{display:flex;align-items:center;justify-content:space-between;gap:16px}.app .journey-nav-tabs{display:inline-flex;align-items:center;background:#b4a08233;padding:3px;border-radius:999px;gap:2px}.app .journey-tab{display:inline-flex;align-items:center;gap:6px;padding:5px 14px;border-radius:999px;background:transparent;border:none;color:#556c5e;font-size:13px;font-weight:700;cursor:pointer;transition:all .16s ease}.app .journey-tab:hover:not(.is-active){color:#1e3a2b;background:#ffffff73}.app .journey-tab.is-active{background:#fff;color:#15803d;box-shadow:0 2px 6px #00000014}.app .journey-tab.is-active.is-locked{background:#fff;color:#475569;box-shadow:0 2px 6px #00000014}.app .journey-tab .tab-num{font-size:11px;font-weight:800;opacity:.75}.app .journey-tab.is-locked:not(.is-active){opacity:.65;color:#64748b}.app .journey-story-line{display:flex;align-items:center;gap:6px;font-size:12.5px;color:#786650;font-style:italic;padding:0 2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app .journey-story-line .story-icon{display:inline-flex;color:#a89078;flex-shrink:0}.app .journey-close-btn{width:32px;height:32px;border-radius:50%;background:#fdf5e2;border:1.5px solid #cfba8c;display:inline-flex;align-items:center;justify-content:center;color:#48613f;cursor:pointer;transition:all .16s ease;flex-shrink:0;box-shadow:0 2px 6px #122a211f}.app .journey-close-btn:hover{background:#fff;color:#27452d;transform:scale(1.08)}.app .journey-stages-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;flex:1;align-items:stretch;margin:2px 0}.app .journey-card{background:#fff;border-radius:16px;border:1px solid rgba(0,0,0,.07);padding:11px 12px 12px;box-shadow:0 2px 8px #0000000a;display:flex;flex-direction:column;justify-content:space-between;transition:all .2s ease;box-sizing:border-box}.app .journey-card:hover:not(.is-locked){transform:translateY(-2px);box-shadow:0 6px 16px #00000014}.app .journey-card.is-cleared{background:#fff;border-color:#22c55e40}.app .journey-card.is-current{background:#fff;border:1.5px solid #22c55e;box-shadow:0 4px 14px #22c55e26}.app .journey-card.is-boss{background:#fff}.app .journey-card.is-boss.is-current{border:1.5px solid #f59e0b;box-shadow:0 4px 14px #f59e0b2e}.app .journey-card.is-locked{background:#f8fafc;border-color:#0000000a;opacity:.92}.app .journey-card-top-row{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:2px}.app .journey-stage-num{font-size:12px;font-weight:800;color:#64748b;letter-spacing:.3px}.app .journey-stage-num.boss-stage{color:#b45309}.app .journey-stage-state{font-size:11.5px;font-weight:700;display:inline-flex;align-items:center;gap:3px}.app .journey-stage-state.cleared{color:#16a34a}.app .journey-stage-state.current{color:#d97706}.app .journey-stage-state.boss{color:#dc2626}.app .journey-stage-state.locked{color:#94a3b8}.app .journey-vignette{height:112px;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;margin:2px 0 4px}.app .journey-halo-bg{position:absolute;inset:0;background:radial-gradient(circle at 50% 55%,rgba(220,252,231,.5) 0%,transparent 70%);border-radius:50%;pointer-events:none}.app .journey-vignette.is-boss-vignette .journey-halo-bg{background:radial-gradient(circle at 50% 50%,rgba(254,243,199,.6) 0%,transparent 70%)}.app .journey-vignette.is-locked-vignette .journey-halo-bg{background:radial-gradient(circle at 50% 50%,rgba(226,232,240,.5) 0%,transparent 70%)}.app .journey-vignette-art{max-height:100px;max-width:90%;object-fit:contain;filter:drop-shadow(0 4px 8px rgba(0,0,0,.1));transition:transform .2s ease;pointer-events:none}.app .journey-card:hover:not(.is-locked) .journey-vignette-art{transform:scale(1.06)}.app .journey-vignette-art.is-art-locked{filter:grayscale(1) opacity(.65) drop-shadow(0 2px 6px rgba(0,0,0,.06))}.app .journey-card-content{display:flex;flex-direction:column;align-items:center;text-align:center;gap:2px;margin-bottom:8px}.app .journey-card-title{margin:0;font-size:15px;font-weight:800;color:#1e293b;line-height:1.25}.app .journey-card.is-locked .journey-card-title{color:#475569}.app .journey-card-desc{margin:0;font-size:11.5px;color:#64748b;line-height:1.35}.app .journey-card.is-locked .journey-card-desc{color:#94a3b8}.app .journey-stage-reward{margin-top:3px;font-size:11.5px;font-weight:700;color:#b45309}.app .journey-card.is-locked .journey-stage-reward{color:#64748b}.app .journey-card-footer{margin-top:auto}.app .btn-journey-action{width:100%;height:36px;display:flex;align-items:center;justify-content:center;gap:6px;border-radius:10px;font-size:13px;font-weight:700;cursor:pointer;transition:all .16s ease;border:0;box-sizing:border-box}.app .btn-journey-action.is-launch{background:#16a34a;color:#fff;box-shadow:0 2px 8px #16a34a40}.app .btn-journey-action.is-launch:hover{background:#15803d;transform:translateY(-1px)}.app .btn-journey-action.is-boss{background:#16a34a;color:#fff;box-shadow:0 2px 8px #16a34a40}.app .btn-journey-action.is-boss:hover{background:#15803d;transform:translateY(-1px)}.app .btn-journey-action.is-replay{background:#f1f5f9;color:#475569;border:1px solid #e2e8f0}.app .btn-journey-action.is-replay:hover{background:#e2e8f0;color:#0f172a}.app .btn-journey-action.is-locked-btn{background:#f1f5f9;color:#94a3b8;cursor:not-allowed;border:none}.app .journey-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:8px;border-top:1px solid rgba(210,195,165,.4);flex-shrink:0}.app .journey-footer-progress{display:flex;align-items:center;gap:10px}.app .journey-footer-progress .progress-label{font-size:12px;font-weight:700;color:#556c5e}.app .journey-footer-progress .progress-bar-shell{width:140px;height:7px;background:#00000012;border-radius:999px;overflow:hidden}.app .journey-footer-progress .progress-bar-glow-fill{height:100%;background:#16a34a;border-radius:999px;transition:width .3s ease}.app .journey-footer-progress .progress-ratio-text{font-size:12px;font-weight:700;color:#64748b}.app .journey-footer-progress .progress-ratio-text b{color:#16a34a}.app .journey-footer-status{display:flex;align-items:center}.app .journey-footer-status .status-item{font-size:12px;font-weight:700;display:inline-flex;align-items:center;gap:5px}.app .journey-footer-status .status-item.is-complete{color:#16a34a}.app .journey-footer-status .status-item.is-ongoing{color:#059669}.app .journey-footer-status .status-item.is-locked{color:#64748b}@container game (max-width: 768px){.app .campaign-map.map-panel{width:min(560px,calc(100% - 20px));border-width:20px;border-image-width:20px;padding:6px 10px 8px;max-height:calc(var(--game-vh, 1vh) * 94);min-height:auto}.app .journey-stages-grid{grid-template-columns:1fr;overflow-y:auto;gap:10px}.app .journey-track-line{display:none}.app .journey-vignette{height:90px}}.app .bench-bar{position:relative;justify-content:center;min-height:82px;margin-bottom:6px;padding-top:0;gap:0;transform:translateY(5px)}.app .bench-title{position:absolute;left:50%;bottom:calc(100% + 6px);transform:translate(-50%);margin:0;white-space:nowrap;font-size:11px;text-align:center;background:#fffcf5f2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#4a331c;border:1.2px solid #dfcca4;border-radius:20px;padding:4px 14px;box-shadow:0 3px 10px #3c2d191a;z-index:10;width:max-content;max-width:calc(calc(var(--game-vw, 1vw) * 100) - 30px);font-weight:600}.app .bench-title strong{margin-left:8px;font-size:11px;color:#059669;font-weight:800}.app .bench-title small{display:inline;margin-left:10px;font-size:9.5px;color:#8c7255;letter-spacing:.5px}.app .bench-slots{display:flex;gap:0;padding:4px 14px 6px;border-image:url(https://shirley-cgz.oss-cn-beijing.aliyuncs.com/assets/immersion/UI-03.webp) 80 fill / 16px / 0 stretch;background:none;border-radius:0;box-shadow:0 5px 12px #192d2347}.app .bench-slot{position:relative;width:clamp(66px,calc(var(--game-vw, 1vw) * 6.5),84px);height:72px;border:none!important;border-radius:0;background:none;box-shadow:none;overflow:visible;display:flex;align-items:center;justify-content:center}.app .bench-slot+.bench-slot{border-left:none!important}.app .bench-slot:before{content:"";position:absolute;bottom:8px;left:50%;transform:translate(-50%);width:52px;height:24px;border-radius:50%;background:#0000000a;border:1px dashed rgba(160,135,90,.35);pointer-events:none;transition:all .2s ease}.app .bench-slot.chosen:before,.app .bench-slot:hover:before{border:1.5px solid #d4a745;background:#ffebaa59;box-shadow:0 0 10px #ffd70073}.app .bench-slot.drop-target:before{background:#fff4b8;border:2px solid #b99844;box-shadow:0 0 12px #ffdc6499}.app .bench-slot .seat-number{position:absolute;bottom:14px;left:50%;transform:translate(-50%);font-size:13px;font-weight:800;color:#a88d63;opacity:.65;text-shadow:0 1px 0 rgba(255,255,255,.5);pointer-events:none;line-height:1}.app .bench-slot img{position:absolute;bottom:8px;left:50%;transform:translate(-50%);height:76px;width:70px;z-index:2;pointer-events:none;filter:drop-shadow(0 4px 6px rgba(60,45,25,.22))}.app .bench-slot b{position:absolute;bottom:3px;left:50%;transform:translate(-50%);z-index:3;font-size:10px;line-height:1;color:#b45309;background:#fffcf5f2;border:1px solid #dfc47a;border-radius:8px;padding:1.5px 5px;box-shadow:0 2px 4px #3c2d1926;pointer-events:none;white-space:nowrap}@media(prefers-reduced-motion:reduce){.scene-layer{animation:none}}.app .quest-peek{width:290px;min-height:106px;height:auto;padding:12px 24px 28px 14px}.app .quest-peek>span{min-width:0}.app .quest-peek strong{white-space:normal;line-height:1.5}.app .quest-peek em{white-space:nowrap;font-size:9px;gap:5px}.app .price{color:#72521d}.app .map-panel{max-height:calc(calc(var(--game-vh, 1vh) * 100) - 130px);overflow-y:auto}@container game (max-width: 700px){.app .quest-peek{width:206px;min-height:102px;padding:10px 14px 24px 8px;gap:3px}.app .quest-peek>img{width:36px;height:48px}.app .quest-peek strong{font-size:10px}.app .quest-peek em{font-size:8px;gap:3px}.app .resources{padding:9px 12px;gap:8px}.app .chapter-title strong{font-size:15px}.app .chapter-title small{font-size:7px;letter-spacing:0}}.app .bench-title{right:auto;width:max-content}.app .quest-peek{padding-bottom:38px;min-height:118px}@container game (max-width: 700px){.app .quest-peek{padding-bottom:34px;min-height:114px}.app .bench-title{max-width:calc(calc(var(--game-vw, 1vw) * 100) - 30px)}}@container game ((max-width: 1100px)) or ((max-height: 750px)){.app .bench-bar{min-height:52px;margin-bottom:2px;transform:none}.app .bench-title{font-size:10px;padding:2px 10px;bottom:calc(100% + 2px)}.app .bench-title small{display:none}.app .bench-slots{padding:3px 10px 4px;border-image-width:12px}.app .bench-slot{width:clamp(48px,calc(var(--game-vw, 1vw) * 6),64px);height:50px}.app .bench-slot img{height:50px;width:46px;bottom:3px}.app .bench-slot b{font-size:8px;bottom:1px;padding:1px 4px}}.app .toast{position:absolute;top:72px;bottom:auto;left:50%;transform:translate(-50%);z-index:4000;background:#243d31f0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fffde8;box-shadow:0 6px 20px #12261c59;border:1px solid #7d9e79;border-radius:8px;padding:8px 20px;font-size:13px;font-weight:500;max-width:min(460px,calc(var(--game-vw, 1vw) * 90));text-align:center;pointer-events:none;animation:toastFadeIn .25s ease}@keyframes toastFadeIn{0%{opacity:0;transform:translate(-50%,-10px)}to{opacity:1;transform:translate(-50%)}}.app .hud-plate{display:inline-flex;align-items:center;height:38px;box-sizing:border-box;border:none!important;background:url(https://shirley-cgz.oss-cn-beijing.aliyuncs.com/assets/immersion/UI-HUD-GEN.png) center / 100% 100% no-repeat!important;background-color:transparent!important;box-shadow:0 4px 14px #3c2d1926;-webkit-user-select:none;user-select:none;pointer-events:auto}.app .hud-plate-divider{width:1px;height:16px;background:#c3a06e73;flex-shrink:0;margin:0 2px}.app .hud-icon-btn-inline{width:26px;height:26px;border-radius:6px;border:none!important;background:transparent!important;color:#3b2c1e;display:grid;place-items:center;cursor:pointer;padding:0;flex-shrink:0;transition:all .15s ease}.app .hud-icon-btn-inline:hover{color:#047857;transform:scale(1.1)}.app .hud-left-group.hud-plate{gap:8px;padding:0 16px 0 14px}.app .hud-left-group .hud-action-strip{display:inline-flex;align-items:center;gap:6px;background:transparent!important;border:none!important;box-shadow:none!important;padding:0;height:auto}.app .hud-round-track.hud-plate{gap:10px;padding:0 18px}.app .hud-battle-timer.hud-plate{gap:8px;padding:0 16px}.app .hud-right-group.hud-plate{gap:8px;padding:0 14px 0 16px}.app .hud-right-group .hud-resources{background:transparent!important;border:none!important;box-shadow:none!important;padding:0;height:auto;gap:10px}.app .shop{width:min(1020px,calc(var(--game-vw, 1vw) * 98));margin-left:auto;margin-right:auto;border:none!important;background:url(https://shirley-cgz.oss-cn-beijing.aliyuncs.com/assets/immersion/UI-SHOP-GEN.png) center / 100% 100% no-repeat!important;background-color:transparent!important;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;padding:14px 64px 30px;box-sizing:border-box;display:flex;flex-direction:column}.app .shop:not(.shop-collapsed){max-height:300px;overflow:visible}.app .shop-caption{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;padding:0 8px}.app .shop-caption>span{font-size:13px;font-weight:900;color:#1e3a29;display:inline-flex;align-items:center;gap:6px}.app .shop-invite{background:#10b9811f!important;border:1px solid rgba(16,185,129,.4)!important;border-radius:8px;padding:3px 10px;font-size:11px;font-weight:700;color:#065f46!important;cursor:pointer;display:inline-flex;align-items:center;gap:5px;transition:all .15s ease}.app .shop-invite:hover{background:#10b98138!important;border-color:#10b981!important;color:#047857!important}.app .shop-caption div{display:inline-flex;align-items:center;gap:6px}.app .shop-caption button:not(.shop-invite){background:#fffaf073!important;border:1px solid rgba(180,145,95,.4)!important;border-radius:8px;padding:4px 9px;font-size:11px;font-weight:700;color:#3b2c1e!important;cursor:pointer;display:inline-flex;align-items:center;gap:4px;transition:all .15s ease}.app .shop-caption button:not(.shop-invite):hover{background:#fffaf0cc!important;border-color:#b89355!important;color:#1a120b!important}.app .recruit-card{position:relative;height:118px;min-height:118px;box-sizing:border-box;border-style:solid!important;border-color:transparent!important;border-width:14px 10px 18px 10px!important;border-image:url(https://shirley-cgz.oss-cn-beijing.aliyuncs.com/assets/immersion/UI-02.webp) 90 38 125 38 / 14px 10px 18px 10px stretch!important;background:transparent!important;background-color:transparent!important;padding:8px 10px 10px 8px;display:flex;align-items:center;gap:8px;box-shadow:none!important;color:var(--theme-text-dark);overflow:visible;text-align:left;transition:all .18s ease}.app .recruit-card:hover{background:#ffffff4d!important;transform:translateY(-2px)}.app .recruit-card.placeholder{background:transparent!important;border:1.5px dashed rgba(180,145,95,.45)!important;border-image:none!important;border-radius:12px;box-shadow:none!important}.app .battle-start{height:118px;min-height:118px;width:170px;border-radius:12px;border:2px solid #6ee7b7;background:linear-gradient(145deg,#10b981,#059669);box-shadow:0 4px 14px #05966959;color:#fff;display:flex;align-items:center;justify-content:center;gap:10px;padding:12px;cursor:pointer;transition:all .18s ease}.app .battle-start:hover{background:linear-gradient(145deg,#34d399,#059669);transform:translateY(-2px);box-shadow:0 6px 20px #05966973}@container game ((max-width: 960px)) or ((max-height: 550px)){.app .shop{width:min(940px,calc(var(--game-vw, 1vw) * 98));padding:6px 16px 10px!important;border-radius:12px!important;margin-top:4px!important;margin-bottom:0!important}.app .shop:not(.shop-collapsed){max-height:calc(calc(var(--game-vh, 1vh) * 100) - 40px)!important;overflow:visible}.app .shop-caption{margin-bottom:4px!important;padding:0 4px!important}.app .shop-caption>span{font-size:11.5px!important;gap:4px!important}.app .shop-caption>span svg{width:13px!important;height:13px!important}.app .shop-invite{font-size:9.5px!important;padding:2px 7px!important;min-height:22px!important;gap:3px!important;border-radius:6px!important}.app .shop-invite svg{width:11px!important;height:11px!important}.app .shop-caption div{gap:4px!important}.app .shop-caption button:not(.shop-invite){padding:2px 6px!important;font-size:9.5px!important;min-height:22px!important;gap:3px!important;border-radius:6px!important}.app .shop-caption button:not(.shop-invite) svg{width:11px!important;height:11px!important}.app .shop-main{display:flex!important;align-items:stretch!important;gap:6px!important}.app .shop-cards{display:flex!important;flex:1!important;gap:6px!important}.app .recruit-card{height:72px!important;min-height:72px!important;border-width:8px 6px 10px 6px!important;padding:2px 6px 4px 4px!important;gap:5px!important;border-radius:9px!important}.app .recruit-card .portrait{width:36px!important;height:44px!important;flex-shrink:0!important}.app .recruit-card .card-copy{min-width:0!important}.app .recruit-card .card-copy .role-tag{font-size:7.5px!important;padding:0 4px!important;margin-bottom:1px!important;border-radius:3px!important}.app .recruit-card .card-copy strong{font-size:10.5px!important;line-height:1.15!important}.app .recruit-card .card-copy small{font-size:8px!important;line-height:1!important;margin-top:0!important}.app .recruit-card .card-copy p{display:none!important}.app .recruit-card .price{font-size:9px!important;padding:1px 4px!important;top:3px!important;right:4px!important}.app .recruit-card .price svg{width:9px!important;height:9px!important}.app .recruit-card.recruited{height:72px!important;min-height:72px!important;padding:4px!important;gap:3px!important}.app .recruit-card.recruited svg{width:18px!important;height:18px!important}.app .recruit-card.recruited span{font-size:10px!important}.app .battle-start{height:72px!important;min-height:72px!important;width:120px!important;min-width:110px!important;padding:6px 8px!important;border-radius:9px!important;gap:6px!important}.app .battle-start span{font-size:11px!important;font-weight:800!important;line-height:1.2!important}.app .battle-start small{font-size:8.5px!important}.app .battle-start svg{width:16px!important;height:16px!important}}.app.tactics-compact .shop{width:min(940px,calc(var(--game-vw, 1vw) * 98));padding:6px 16px 10px!important;border-radius:12px!important;margin-top:4px!important;margin-bottom:0!important}.app.tactics-compact .shop:not(.shop-collapsed){max-height:calc(calc(var(--game-vh, 1vh) * 100) - 40px)!important;overflow:visible}.app.tactics-compact .shop-caption{margin-bottom:4px!important;padding:0 4px!important}.app.tactics-compact .shop-caption>span{font-size:11.5px!important;gap:4px!important}.app.tactics-compact .shop-caption>span svg{width:13px!important;height:13px!important}.app.tactics-compact .shop-invite{font-size:9.5px!important;padding:2px 7px!important;min-height:22px!important;gap:3px!important;border-radius:6px!important}.app.tactics-compact .shop-invite svg{width:11px!important;height:11px!important}.app.tactics-compact .shop-caption div{gap:4px!important}.app.tactics-compact .shop-caption button:not(.shop-invite){padding:2px 6px!important;font-size:9.5px!important;min-height:22px!important;gap:3px!important;border-radius:6px!important}.app.tactics-compact .shop-caption button:not(.shop-invite) svg{width:11px!important;height:11px!important}.app.tactics-compact .shop-main{display:flex!important;align-items:stretch!important;gap:6px!important}.app.tactics-compact .shop-cards{display:flex!important;flex:1!important;gap:6px!important}.app.tactics-compact .recruit-card{height:72px!important;min-height:72px!important;border-width:8px 6px 10px 6px!important;padding:2px 6px 4px 4px!important;gap:5px!important;border-radius:9px!important}.app.tactics-compact .recruit-card .portrait{width:36px!important;height:44px!important;flex-shrink:0!important}.app.tactics-compact .recruit-card .card-copy{min-width:0!important}.app.tactics-compact .recruit-card .card-copy .role-tag{font-size:7.5px!important;padding:0 4px!important;margin-bottom:1px!important;border-radius:3px!important}.app.tactics-compact .recruit-card .card-copy strong{font-size:10.5px!important;line-height:1.15!important}.app.tactics-compact .recruit-card .card-copy small{font-size:8px!important;line-height:1!important;margin-top:0!important}.app.tactics-compact .recruit-card .card-copy p{display:none!important}.app.tactics-compact .recruit-card .price{font-size:9px!important;padding:1px 4px!important;top:3px!important;right:4px!important}.app.tactics-compact .recruit-card .price svg{width:9px!important;height:9px!important}.app.tactics-compact .recruit-card.recruited{height:72px!important;min-height:72px!important;padding:4px!important;gap:3px!important}.app.tactics-compact .recruit-card.recruited svg{width:18px!important;height:18px!important}.app.tactics-compact .recruit-card.recruited span{font-size:10px!important}.app.tactics-compact .battle-start{height:72px!important;min-height:72px!important;width:120px!important;min-width:110px!important;padding:6px 8px!important;border-radius:9px!important;gap:6px!important}.app.tactics-compact .battle-start span{font-size:11px!important;font-weight:800!important;line-height:1.2!important}.app.tactics-compact .battle-start small{font-size:8.5px!important}.app.tactics-compact .battle-start svg{width:16px!important;height:16px!important}@container game ((max-width: 900px)) or ((orientation: landscape) and (max-height: 550px)){.app .hud{top:max(4px,var(--game-safe-top, 0px))!important;left:max(6px,var(--game-safe-left, 0px))!important;right:max(6px,var(--game-safe-right, 0px))!important;gap:4px!important}.app .hud-plate{height:28px!important;min-height:28px!important;box-shadow:0 2px 6px #3c2d191a!important}.app .hud-icon-btn-inline{width:20px!important;height:20px!important}.app .hud-icon-btn-inline svg{width:13px!important;height:13px!important}.app .hud-plate-divider{height:12px!important;margin:0 1px!important}.app .hud-stage-title{font-size:11px!important;line-height:1.1!important}.app .hud-left-group{gap:6px!important}.app .hud-icon-btn{width:28px!important;height:28px!important;border-radius:6px!important}.app .hud-icon-btn svg{width:14px!important;height:14px!important}.app .hud-action-strip.hud-plate{display:none!important}.app .hud-round-track.hud-plate{gap:5px!important;padding:0 10px!important}.app .hud-round-label{font-size:10px!important}.app .hud-round-pip{width:6px!important;height:4px!important}.app .hud-round-pip.current{width:11px!important}.app .hud-battle-timer.hud-plate{gap:5px!important;padding:0 10px!important;font-size:10.5px!important}.app .hud-right-group.hud-plate{gap:5px!important;padding:0 8px 0 10px!important}.app .hud-right-group .hud-resources{gap:6px!important}.app .hud-right-group .hud-resources span{font-size:11px!important;gap:3px!important}.app .hud-fullscreen-btn{display:none!important}.app .hud-rail-left-toggle,.app .hud-rail-right-toggle,.hud-rail-left-toggle,.hud-rail-right-toggle{top:36px!important;padding:2px 6px!important;min-height:22px!important;height:22px!important;font-size:10px!important;border-radius:6px!important;gap:3px!important}.hud-rail-left-toggle .rail-toggle-badge,.hud-rail-right-toggle .rail-toggle-badge{padding:1px 4px!important;font-size:8px!important}.compact-side-rail{top:36px!important;gap:3px!important}.compact-side-rail button{width:auto!important;min-width:72px!important;min-height:22px!important;height:22px!important;padding:2px 7px!important;font-size:10px!important;gap:3px!important}.compact-side-rail button svg{width:12px!important;height:12px!important}.compact-side-rail button small{display:none!important}.compact-rail-tabs,.compact-rail-empty{width:auto!important;min-width:72px!important;min-height:22px!important;padding:2px 6px!important;font-size:9.5px!important}.compact-rail-empty{display:none!important}}@container game (max-width: 480px){.app .hud-left-group.hud-plate{padding:0 6px!important}.app .hud-left-group .hud-plate-divider{display:none!important}}@container game ((orientation: landscape) and (max-height: 550px)) or ((max-height: 500px)){.app .modal{border-width:12px!important;border-image-width:12px!important;padding:8px 16px 10px!important;border-radius:16px!important;max-height:min(calc(var(--game-vh, 1vh) * 94),350px)!important;width:min(540px,calc(var(--game-vw, 1vw) * 92))!important;box-shadow:inset 0 0 0 1.5px #faeccb,0 12px 40px #102d4959!important}.app .modal .close{top:6px!important;right:6px!important;width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important}.app .modal .close svg{width:15px!important;height:15px!important}.app .modal .eyebrow{font-size:8.5px!important;margin-bottom:2px!important;letter-spacing:.5px!important}.app .modal h2{font-size:15px!important;margin:0 0 3px!important}.app .modal>p,.app .modal p{font-size:10.5px!important;margin:1px 0 5px!important;line-height:1.35!important}.app .modal-scroll-wrap{max-height:calc(calc(var(--game-vh, 1vh) * 94) - 22px)!important;overflow-y:auto!important;padding-right:2px!important}.app .modal.modal-strategy,.app .strategy-modal{width:min(580px,calc(var(--game-vw, 1vw) * 94))!important;padding:8px 14px 10px!important}.app .equipment-reward{margin:0!important}.app .equipment-choices{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:8px!important;margin:4px 0 6px!important}.app .equipment-choices button{display:flex!important;flex-direction:column!important;align-items:center!important;text-align:center!important;padding:6px 6px 8px!important;gap:3px!important;border-radius:10px!important;border:1.5px solid #d6dfc9!important;background:linear-gradient(#fffdf5,#edf2df)!important}.app .equipment-choices .equip-art,.app .equipment-choices i{width:42px!important;height:42px!important;object-fit:contain!important;margin-bottom:2px!important}.app .equipment-choices strong{font-size:12px!important;font-weight:700!important;line-height:1.2!important;color:#27452d!important}.app .equipment-choices p{font-size:10px!important;line-height:1.25!important;color:#526c59!important;margin:0!important;flex:1!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;text-overflow:ellipsis!important}.app .equipment-choices small{font-size:9px!important;color:#6a8176!important;line-height:1.2!important;margin:2px 0!important}.app .equipment-choices b{display:block!important;padding:3px 8px!important;font-size:10px!important;font-weight:700!important;border-radius:6px!important;background:#376853!important;color:#fff!important;width:85%!important;text-align:center!important;margin-top:2px!important}.app .strategy-panel>.primary,.app .modal-strategy .primary{min-height:28px!important;height:28px!important;padding:4px 18px!important;font-size:11px!important;margin:4px auto 0!important;border-radius:999px!important;width:fit-content!important;display:block!important}.app .modal.modal-quest{width:min(520px,calc(var(--game-vw, 1vw) * 92))!important}.app .lesson-track{gap:6px!important;margin:2px 0 6px!important}.app .lesson-track span{font-size:10.5px!important;padding:2px 8px!important}.app .study-card{padding:6px 14px!important;gap:14px!important;margin:4px 0!important;border-radius:12px!important}.app .study-card>img{width:50px!important;height:60px!important;object-fit:contain!important}.app .study-card strong{font-size:20px!important;line-height:1.2!important}.app .study-card p{font-size:12px!important;margin:1px 0 4px!important}.app .listen{padding:3px 10px!important;min-height:26px!important;font-size:10px!important;gap:4px!important;border-radius:14px!important}.app .listen svg{width:13px!important;height:13px!important}.app .word-notes{padding:4px 10px!important;margin-top:4px!important;font-size:10.5px!important;gap:6px!important;border-radius:8px!important}.app .recall-options,.app .answers{gap:6px!important;margin:4px 0!important}.app .recall-options button,.app .answers button{min-height:30px!important;padding:4px 10px!important;font-size:11px!important;border-radius:8px!important}.app .modal-bottom{margin-top:6px!important;gap:8px!important}.app .modal-bottom button{min-height:28px!important;padding:4px 12px!important;font-size:11px!important}.app .modal.modal-settings{width:min(520px,calc(var(--game-vw, 1vw) * 92))!important}.app .modal-settings .eyebrow{display:none!important}.app .modal-settings h2{font-size:13.5px!important;margin:0 0 1px!important}.app .modal-settings>p{font-size:9.5px!important;margin:1px 0 2px!important}.app .setting-row{padding:2.5px 8px!important;min-height:25px!important;height:25px!important;font-size:10.5px!important;gap:6px!important;border-radius:6px!important;margin-bottom:1px!important}.app .setting-row svg:first-child{width:14px!important;height:14px!important}.app .setting-row b{padding:1.5px 5px!important;font-size:9px!important;border-radius:4px!important}.app .setting-row>svg:last-child{width:12px!important;height:12px!important}.app .modal-settings .muted{font-size:8.5px!important;margin:1px 0!important}.app .modal-settings .modal-bottom{margin-top:3px!important}.app .modal-settings .modal-bottom button{min-height:25px!important;height:25px!important;padding:2px 10px!important;font-size:10.5px!important}.app .modal.modal-help{width:min(560px,calc(var(--game-vw, 1vw) * 92))!important}.app .modal-help .eyebrow{display:none!important}.app .modal-help h2{font-size:13.5px!important;margin:0 0 2px!important}.app .help-steps{display:grid!important;gap:3px!important;margin:2px 0 4px!important}.app .help-steps>div{padding:2px 6px!important;gap:6px!important;border-radius:6px!important;align-items:center!important}.app .help-steps b{width:17px!important;height:17px!important;font-size:8.5px!important;flex-shrink:0!important}.app .help-steps strong{font-size:10.5px!important;line-height:1.15!important;margin-bottom:0!important}.app .help-steps p{font-size:9px!important;line-height:1.2!important;margin:0!important}.app .modal-help .primary{min-height:24px!important;height:24px!important;padding:2px 14px!important;font-size:10.5px!important;width:fit-content!important;align-self:center!important;margin-top:2px!important}.app .modal.modal-codex{width:min(740px,calc(var(--game-vw, 1vw) * 95))!important;max-height:min(calc(var(--game-vh, 1vh) * 94),350px)!important;padding:6px 14px 8px!important}.app .codex-header-row{margin:0 0 4px!important;gap:8px!important}.app .codex-header-row h2{font-size:14px!important;margin:0!important}.app .codex-tabs{gap:6px!important}.app .codex-tab-btn{padding:2px 8px!important;font-size:10px!important;border-radius:14px!important}.app .codex-grid{grid-template-columns:repeat(4,1fr)!important;gap:6px!important;margin:2px 0 0!important}.app .codex-card{padding:3px 6px!important;border-radius:8px!important;min-width:0!important}.app .codex-avatar-box{height:48px!important}.app .codex-avatar-img{height:44px!important;max-width:44px!important}.app .codex-tag-badge{font-size:8px!important;padding:1px 4px!important}.app .codex-name-row{gap:3px!important;overflow:hidden!important}.app .codex-role-name{font-size:11px!important;white-space:nowrap!important}.app .codex-role-en{font-size:8.5px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.app .codex-speak-btn{width:18px!important;height:18px!important;min-width:18px!important;padding:0!important}.app .codex-speak-btn svg{width:11px!important;height:11px!important}.app .codex-skill-desc{font-size:8.5px!important;line-height:1.25!important;-webkit-line-clamp:2!important}.app .modal.modal-formation{width:min(480px,calc(var(--game-vw, 1vw) * 92))!important}.app .formation-label{font-size:10px!important;margin:2px 0 4px!important}.app .formation-grid{gap:4px!important;margin:4px 0 6px!important}.app .formation-grid button{height:38px!important;border-radius:6px!important;padding:2px!important}.app .formation-grid img{width:30px!important;height:30px!important}.app .modal.modal-restart{width:min(380px,calc(var(--game-vw, 1vw) * 90))!important}.app .modal.modal-restart h2{font-size:14px!important;margin-bottom:4px!important}.app .modal.modal-restart p{font-size:10.5px!important;margin:2px 0 8px!important}.app .modal.cinema-modal{width:min(540px,calc(var(--game-vw, 1vw) * 92))!important}.app .modal.cinema-modal video{max-height:150px!important;border-radius:10px!important;margin:4px 0!important}.app .cinema-caption{font-size:10.5px!important;margin:2px 0 4px!important}.app .modal.result-panel{width:min(460px,calc(var(--game-vw, 1vw) * 92))!important;max-height:min(calc(var(--game-vh, 1vh) * 94),350px)!important;padding:8px 14px 10px!important;border-width:12px!important;border-image-width:12px!important}.app .settlement-crest{gap:2px!important;margin-top:0!important}.app .settlement-title{font-size:16px!important}.app .settlement-sub-badge{font-size:9.5px!important;padding:1px 6px!important}.app .settlement-loot-shelf{gap:6px!important;margin:4px 0 6px!important}.app .settlement-loot-card{padding:4px 8px!important}.app .loot-icon-bubble{width:26px!important;height:26px!important}.app .loot-val{font-size:11.5px!important}.app .settlement-cta-btn{min-height:32px!important;padding:6px 16px!important;font-size:11.5px!important;margin-top:4px!important}.app .campaign-map.map-panel{width:min(620px,calc(var(--game-vw, 1vw) * 94))!important;max-height:min(calc(var(--game-vh, 1vh) * 94),350px)!important;padding:6px 12px!important;border-width:12px!important;border-image-width:12px!important}.app .journey-header-top{margin-bottom:2px!important}.app .journey-story-line{font-size:10px!important;margin:2px 0 4px!important}.app .journey-stages-grid{gap:6px!important}.app .journey-card{padding:4px 6px!important;border-radius:8px!important}.app .journey-vignette{height:48px!important}.app .journey-card h3{font-size:12px!important;margin:2px 0 1px!important}.app .journey-card p{font-size:9px!important;margin:0!important}.app .journey-footer-status{margin-top:3px!important;font-size:9.5px!important}.app .modal.modal-companions{width:min(580px,calc(var(--game-vw, 1vw) * 94))!important}.app .scene-errands{margin-top:6px!important}.app .scene-errands h3{font-size:12px!important;margin-bottom:2px!important}.app .scene-errands p{font-size:9.5px!important;margin-bottom:4px!important}.app .scene-errands button{padding:3px 8px!important;font-size:10px!important;margin:2px!important}.app .combat-story{top:46px!important;left:max(8px,var(--game-safe-left, 0px))!important;right:auto!important;transform:none!important;font-size:9.5px!important;padding:5px 9px!important;max-width:170px!important;white-space:normal!important;border-radius:10px!important;background:#24180fe6!important;border:1px solid rgba(202,167,107,.65)!important;-webkit-backdrop-filter:blur(6px)!important;backdrop-filter:blur(6px)!important;box-shadow:0 4px 12px #00000040!important;z-index:1200!important;pointer-events:none;text-align:left!important}.app .combat-story>span{display:inline-block!important;font-size:8.5px!important;font-weight:800!important;color:#ffd88a!important;margin-bottom:2px!important;letter-spacing:.5px!important;line-height:1!important}.app .combat-story strong{display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;font-size:9.5px!important;line-height:1.3!important;color:#fff6e4!important;font-weight:600!important;white-space:normal!important}.app .combat-story small{display:block!important;font-size:8px!important;color:#fff4dca6!important;margin-top:3px!important;line-height:1.2!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.app .knowledge-drop{width:42px!important;height:42px!important}.app .knowledge-drop:before{inset:4%!important;filter:blur(1.5px)!important}.app .knowledge-drop-ready:after{font-size:7.5px!important;padding:1px 5px!important;bottom:-4px!important}}.app .tactics-rail{top:84px;bottom:auto;max-height:min(calc(calc(var(--game-vh, 1vh) * 100) - 355px),480px);width:250px;box-sizing:border-box;padding:13px 14px 14px;gap:8px;border-radius:18px!important;border:2px solid #ddb775!important;background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2228%22%20height%3D%2228%22%20viewBox%3D%220%200%2028%2028%22%3E%3Cdefs%3E%3ClinearGradient%20id%3D%22leafA%22%20x1%3D%220%25%22%20y1%3D%220%25%22%20x2%3D%22100%25%22%20y2%3D%22100%25%22%3E%3Cstop%20offset%3D%220%25%22%20stop-color%3D%22%239ce08b%22%2F%3E%3Cstop%20offset%3D%2250%25%22%20stop-color%3D%22%235ca453%22%2F%3E%3Cstop%20offset%3D%22100%25%22%20stop-color%3D%22%233a7234%22%2F%3E%3C%2FlinearGradient%3E%3ClinearGradient%20id%3D%22leafB%22%20x1%3D%220%25%22%20y1%3D%220%25%22%20x2%3D%22100%25%22%20y2%3D%22100%25%22%3E%3Cstop%20offset%3D%220%25%22%20stop-color%3D%22%23b2ec9e%22%2F%3E%3Cstop%20offset%3D%2250%25%22%20stop-color%3D%22%236eb563%22%2F%3E%3Cstop%20offset%3D%22100%25%22%20stop-color%3D%22%2346853e%22%2F%3E%3C%2FlinearGradient%3E%3Cfilter%20id%3D%22leafShadow%22%20x%3D%22-20%25%22%20y%3D%22-20%25%22%20width%3D%22140%25%22%20height%3D%22140%25%22%3E%3CfeDropShadow%20dx%3D%220.5%22%20dy%3D%221%22%20stdDeviation%3D%220.8%22%20flood-color%3D%22%231e3e23%22%20flood-opacity%3D%220.25%22%2F%3E%3C%2Ffilter%3E%3C%2Fdefs%3E%3Cg%20filter%3D%22url(%23leafShadow)%22%3E%3Cpath%20d%3D%22M%202%202%20Q%208%204%2014%2012%22%20fill%3D%22none%22%20stroke%3D%22%23d4a757%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M%202%202%20Q%204%208%2012%2014%22%20fill%3D%22none%22%20stroke%3D%22%23caa052%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M%203%203%20C%202%208%2C%204%2014%2C%2010%2017%20C%2014%2013%2C%2014%207%2C%2010%203%20C%207%201%2C%205%201%2C%203%203%20Z%22%20fill%3D%22url(%23leafA)%22%20stroke%3D%22%232b5927%22%20stroke-width%3D%220.8%22%2F%3E%3Cpath%20d%3D%22M%204%204%20Q%208%2010%2010%2014%22%20fill%3D%22none%22%20stroke%3D%22%23cbf7be%22%20stroke-width%3D%220.7%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M%203%203%20C%208%202%2C%2014%204%2C%2017%2010%20C%2013%2014%2C%207%2014%2C%203%2010%20C%201%207%2C%201%205%2C%203%203%20Z%22%20fill%3D%22url(%23leafB)%22%20stroke%3D%22%232b5927%22%20stroke-width%3D%220.8%22%2F%3E%3Cpath%20d%3D%22M%204%204%20Q%2010%208%2014%2010%22%20fill%3D%22none%22%20stroke%3D%22%23cbf7be%22%20stroke-width%3D%220.7%22%20stroke-linecap%3D%22round%22%2F%3E%3Ccircle%20cx%3D%223.8%22%20cy%3D%223.8%22%20r%3D%222.6%22%20fill%3D%22%23ebb95d%22%20stroke%3D%22%238d6418%22%20stroke-width%3D%220.8%22%2F%3E%3Ccircle%20cx%3D%223.2%22%20cy%3D%223.2%22%20r%3D%220.9%22%20fill%3D%22%23fff9dd%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") top -2px left -2px / 28px 28px no-repeat,url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2228%22%20height%3D%2228%22%20viewBox%3D%220%200%2028%2028%22%3E%3Cdefs%3E%3ClinearGradient%20id%3D%22leafA%22%20x1%3D%220%25%22%20y1%3D%220%25%22%20x2%3D%22100%25%22%20y2%3D%22100%25%22%3E%3Cstop%20offset%3D%220%25%22%20stop-color%3D%22%239ce08b%22%2F%3E%3Cstop%20offset%3D%2250%25%22%20stop-color%3D%22%235ca453%22%2F%3E%3Cstop%20offset%3D%22100%25%22%20stop-color%3D%22%233a7234%22%2F%3E%3C%2FlinearGradient%3E%3ClinearGradient%20id%3D%22leafB%22%20x1%3D%220%25%22%20y1%3D%220%25%22%20x2%3D%22100%25%22%20y2%3D%22100%25%22%3E%3Cstop%20offset%3D%220%25%22%20stop-color%3D%22%23b2ec9e%22%2F%3E%3Cstop%20offset%3D%2250%25%22%20stop-color%3D%22%236eb563%22%2F%3E%3Cstop%20offset%3D%22100%25%22%20stop-color%3D%22%2346853e%22%2F%3E%3C%2FlinearGradient%3E%3Cfilter%20id%3D%22leafShadow%22%20x%3D%22-20%25%22%20y%3D%22-20%25%22%20width%3D%22140%25%22%20height%3D%22140%25%22%3E%3CfeDropShadow%20dx%3D%220.5%22%20dy%3D%221%22%20stdDeviation%3D%220.8%22%20flood-color%3D%22%231e3e23%22%20flood-opacity%3D%220.25%22%2F%3E%3C%2Ffilter%3E%3C%2Fdefs%3E%3Cg%20transform%3D%22translate(28%2C%200)%20scale(-1%2C%201)%22%20filter%3D%22url(%23leafShadow)%22%3E%3Cpath%20d%3D%22M%202%202%20Q%208%204%2014%2012%22%20fill%3D%22none%22%20stroke%3D%22%23d4a757%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M%202%202%20Q%204%208%2012%2014%22%20fill%3D%22none%22%20stroke%3D%22%23caa052%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M%203%203%20C%202%208%2C%204%2014%2C%2010%2017%20C%2014%2013%2C%2014%207%2C%2010%203%20C%207%201%2C%205%201%2C%203%203%20Z%22%20fill%3D%22url(%23leafA)%22%20stroke%3D%22%232b5927%22%20stroke-width%3D%220.8%22%2F%3E%3Cpath%20d%3D%22M%204%204%20Q%208%2010%2010%2014%22%20fill%3D%22none%22%20stroke%3D%22%23cbf7be%22%20stroke-width%3D%220.7%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M%203%203%20C%208%202%2C%2014%204%2C%2017%2010%20C%2013%2014%2C%207%2014%2C%203%2010%20C%201%207%2C%201%205%2C%203%203%20Z%22%20fill%3D%22url(%23leafB)%22%20stroke%3D%22%232b5927%22%20stroke-width%3D%220.8%22%2F%3E%3Cpath%20d%3D%22M%204%204%20Q%2010%208%2014%2010%22%20fill%3D%22none%22%20stroke%3D%22%23cbf7be%22%20stroke-width%3D%220.7%22%20stroke-linecap%3D%22round%22%2F%3E%3Ccircle%20cx%3D%223.8%22%20cy%3D%223.8%22%20r%3D%222.6%22%20fill%3D%22%23ebb95d%22%20stroke%3D%22%238d6418%22%20stroke-width%3D%220.8%22%2F%3E%3Ccircle%20cx%3D%223.2%22%20cy%3D%223.2%22%20r%3D%220.9%22%20fill%3D%22%23fff9dd%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") top -2px right -2px / 28px 28px no-repeat,url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2228%22%20height%3D%2228%22%20viewBox%3D%220%200%2028%2028%22%3E%3Cdefs%3E%3ClinearGradient%20id%3D%22leafA%22%20x1%3D%220%25%22%20y1%3D%220%25%22%20x2%3D%22100%25%22%20y2%3D%22100%25%22%3E%3Cstop%20offset%3D%220%25%22%20stop-color%3D%22%239ce08b%22%2F%3E%3Cstop%20offset%3D%2250%25%22%20stop-color%3D%22%235ca453%22%2F%3E%3Cstop%20offset%3D%22100%25%22%20stop-color%3D%22%233a7234%22%2F%3E%3C%2FlinearGradient%3E%3ClinearGradient%20id%3D%22leafB%22%20x1%3D%220%25%22%20y1%3D%220%25%22%20x2%3D%22100%25%22%20y2%3D%22100%25%22%3E%3Cstop%20offset%3D%220%25%22%20stop-color%3D%22%23b2ec9e%22%2F%3E%3Cstop%20offset%3D%2250%25%22%20stop-color%3D%22%236eb563%22%2F%3E%3Cstop%20offset%3D%22100%25%22%20stop-color%3D%22%2346853e%22%2F%3E%3C%2FlinearGradient%3E%3Cfilter%20id%3D%22leafShadow%22%20x%3D%22-20%25%22%20y%3D%22-20%25%22%20width%3D%22140%25%22%20height%3D%22140%25%22%3E%3CfeDropShadow%20dx%3D%220.5%22%20dy%3D%221%22%20stdDeviation%3D%220.8%22%20flood-color%3D%22%231e3e23%22%20flood-opacity%3D%220.25%22%2F%3E%3C%2Ffilter%3E%3C%2Fdefs%3E%3Cg%20transform%3D%22translate(28%2C%2028)%20scale(-1%2C%20-1)%22%20filter%3D%22url(%23leafShadow)%22%3E%3Cpath%20d%3D%22M%202%202%20Q%208%204%2014%2012%22%20fill%3D%22none%22%20stroke%3D%22%23d4a757%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M%202%202%20Q%204%208%2012%2014%22%20fill%3D%22none%22%20stroke%3D%22%23caa052%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M%203%203%20C%202%208%2C%204%2014%2C%2010%2017%20C%2014%2013%2C%2014%207%2C%2010%203%20C%207%201%2C%205%201%2C%203%203%20Z%22%20fill%3D%22url(%23leafA)%22%20stroke%3D%22%232b5927%22%20stroke-width%3D%220.8%22%2F%3E%3Cpath%20d%3D%22M%204%204%20Q%208%2010%2010%2014%22%20fill%3D%22none%22%20stroke%3D%22%23cbf7be%22%20stroke-width%3D%220.7%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M%203%203%20C%208%202%2C%2014%204%2C%2017%2010%20C%2013%2014%2C%207%2014%2C%203%2010%20C%201%207%2C%201%205%2C%203%203%20Z%22%20fill%3D%22url(%23leafB)%22%20stroke%3D%22%232b5927%22%20stroke-width%3D%220.8%22%2F%3E%3Cpath%20d%3D%22M%204%204%20Q%2010%208%2014%2010%22%20fill%3D%22none%22%20stroke%3D%22%23cbf7be%22%20stroke-width%3D%220.7%22%20stroke-linecap%3D%22round%22%2F%3E%3Ccircle%20cx%3D%223.8%22%20cy%3D%223.8%22%20r%3D%222.6%22%20fill%3D%22%23ebb95d%22%20stroke%3D%22%238d6418%22%20stroke-width%3D%220.8%22%2F%3E%3Ccircle%20cx%3D%223.2%22%20cy%3D%223.2%22%20r%3D%220.9%22%20fill%3D%22%23fff9dd%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") bottom -2px right -2px / 28px 28px no-repeat,url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2228%22%20height%3D%2228%22%20viewBox%3D%220%200%2028%2028%22%3E%3Cdefs%3E%3ClinearGradient%20id%3D%22leafA%22%20x1%3D%220%25%22%20y1%3D%220%25%22%20x2%3D%22100%25%22%20y2%3D%22100%25%22%3E%3Cstop%20offset%3D%220%25%22%20stop-color%3D%22%239ce08b%22%2F%3E%3Cstop%20offset%3D%2250%25%22%20stop-color%3D%22%235ca453%22%2F%3E%3Cstop%20offset%3D%22100%25%22%20stop-color%3D%22%233a7234%22%2F%3E%3C%2FlinearGradient%3E%3ClinearGradient%20id%3D%22leafB%22%20x1%3D%220%25%22%20y1%3D%220%25%22%20x2%3D%22100%25%22%20y2%3D%22100%25%22%3E%3Cstop%20offset%3D%220%25%22%20stop-color%3D%22%23b2ec9e%22%2F%3E%3Cstop%20offset%3D%2250%25%22%20stop-color%3D%22%236eb563%22%2F%3E%3Cstop%20offset%3D%22100%25%22%20stop-color%3D%22%2346853e%22%2F%3E%3C%2FlinearGradient%3E%3Cfilter%20id%3D%22leafShadow%22%20x%3D%22-20%25%22%20y%3D%22-20%25%22%20width%3D%22140%25%22%20height%3D%22140%25%22%3E%3CfeDropShadow%20dx%3D%220.5%22%20dy%3D%221%22%20stdDeviation%3D%220.8%22%20flood-color%3D%22%231e3e23%22%20flood-opacity%3D%220.25%22%2F%3E%3C%2Ffilter%3E%3C%2Fdefs%3E%3Cg%20transform%3D%22translate(0%2C%2028)%20scale(1%2C%20-1)%22%20filter%3D%22url(%23leafShadow)%22%3E%3Cpath%20d%3D%22M%202%202%20Q%208%204%2014%2012%22%20fill%3D%22none%22%20stroke%3D%22%23d4a757%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M%202%202%20Q%204%208%2012%2014%22%20fill%3D%22none%22%20stroke%3D%22%23caa052%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M%203%203%20C%202%208%2C%204%2014%2C%2010%2017%20C%2014%2013%2C%2014%207%2C%2010%203%20C%207%201%2C%205%201%2C%203%203%20Z%22%20fill%3D%22url(%23leafA)%22%20stroke%3D%22%232b5927%22%20stroke-width%3D%220.8%22%2F%3E%3Cpath%20d%3D%22M%204%204%20Q%208%2010%2010%2014%22%20fill%3D%22none%22%20stroke%3D%22%23cbf7be%22%20stroke-width%3D%220.7%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M%203%203%20C%208%202%2C%2014%204%2C%2017%2010%20C%2013%2014%2C%207%2014%2C%203%2010%20C%201%207%2C%201%205%2C%203%203%20Z%22%20fill%3D%22url(%23leafB)%22%20stroke%3D%22%232b5927%22%20stroke-width%3D%220.8%22%2F%3E%3Cpath%20d%3D%22M%204%204%20Q%2010%208%2014%2010%22%20fill%3D%22none%22%20stroke%3D%22%23cbf7be%22%20stroke-width%3D%220.7%22%20stroke-linecap%3D%22round%22%2F%3E%3Ccircle%20cx%3D%223.8%22%20cy%3D%223.8%22%20r%3D%222.6%22%20fill%3D%22%23ebb95d%22%20stroke%3D%22%238d6418%22%20stroke-width%3D%220.8%22%2F%3E%3Ccircle%20cx%3D%223.2%22%20cy%3D%223.2%22%20r%3D%220.9%22%20fill%3D%22%23fff9dd%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") bottom -2px left -2px / 28px 28px no-repeat,linear-gradient(180deg,#fffefaf5,#fcf7eded)!important;box-shadow:inset 0 0 0 1.5px #7aac7e73,inset 0 0 0 2.5px #fffc,0 12px 32px #142a1c29,0 2px 6px #b88b4824!important;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:#8eb38c60 transparent}.app:has(.shop-is-collapsed) .tactics-rail,.app:has(.shop.shop-collapsed) .tactics-rail,.app .tactics-rail.shop-collapsed{max-height:calc(calc(var(--game-vh, 1vh) * 100) - 180px)}.app .tactics-rail .rail-header{padding-bottom:8px;border-bottom:1px solid rgba(125,172,126,.28)}.app .empty-equip-box{display:flex;flex-direction:column;align-items:center;gap:6px;padding:16px 10px;border:1px dashed rgba(140,175,145,.45);border-radius:12px;background:#ffffffb3}.app .empty-equip-emblem{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:#edf3e7;color:#558a5e}.app .empty-equip-box strong{color:#3b5a41;font-size:11px}.app .empty-equip-box p{color:#697d6a;font-size:10px;line-height:1.4}.app .tactics-right .rail-section:not(:last-child){padding-bottom:10px;border-bottom:1px solid rgba(125,172,126,.22)}.app .tactics-right .shirley-quest-card{border-color:#e5d2a8;background:linear-gradient(135deg,#fffdf7,#fff7e6);box-shadow:0 2px 6px #2d41320f;border-radius:12px}.app .tactics-right .enemy-brief{background:#f6faf4bf;border:1px solid rgba(155,185,155,.35);border-radius:11px;padding:8px 10px}.app .tactics-setting-group{margin-top:6px}.app .tactics-chip-scroll{padding:3px 0 6px;margin-bottom:2px}.app .tactics-chip{border:1px solid rgba(165,185,160,.4)!important;background:#ffffffe0!important;color:#354e3d!important;border-radius:999px}.app .tactics-chip:hover{background:#fff!important;border-color:#55a870!important;color:#1c5228!important}.app .tactics-chip.active{background:#e4f3e6!important;border-color:#55a870!important;color:#1c5228!important;box-shadow:0 1px 4px #55a87033!important}.app .selection{width:min(330px,calc(calc(var(--game-vw, 1vw) * 100) - 28px));max-width:min(330px,calc(calc(var(--game-vw, 1vw) * 100) - 28px));max-height:min(570px,calc(calc(var(--game-vh, 1vh) * 100) - 155px));overflow-y:auto;padding:14px;border:1px solid #d8c493;border-radius:20px;background:linear-gradient(155deg,#fffdf4,#fff4dd);box-shadow:0 16px 46px #1f2f1e3b,inset 0 1px #fff}.app .selection-heading{padding-bottom:7px;border-bottom:1px solid #e8d9b7}.app .selection-heading img{width:72px;height:72px;padding:4px;border-radius:14px;background:radial-gradient(circle at 50% 72%,#e7efcf,#fffaf0 72%)}.app .selection-heading strong{font-size:18px}.app .selection-kind,.app .enemy-inspection-eyebrow{display:block;margin:7px 0 5px;color:#8f743d;font-size:10px;font-weight:800;letter-spacing:.08em}.app .selection-skill{padding:7px 9px;background:#f4f7e9;border:1px solid #dce8cb;border-radius:12px}.app .selection-skill span{color:#527450;font-size:11px;font-weight:800}.app .selection-skill p{margin:4px 0 0;font-size:12px}.app .selection-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin:8px 0}.app .selection-stats>div{min-width:0;padding:6px 7px;border:1px solid #e9dcc0;border-radius:10px;background:#ffffffbf}.app .selection-stat-label{display:flex;align-items:center;gap:4px;color:#75a27e}.app .selection-stat-label svg{flex:none}.app .selection-stats small{display:block;color:#7c8b73;font-size:9px;white-space:nowrap}.app .selection-stats strong{display:block;margin-top:1px;color:#294b37;font-size:14px;line-height:1.2;white-space:nowrap}.app .selection-stat-hp .selection-stat-label{color:#d78479}.app .selection-stat-atk .selection-stat-label{color:#cd9453}.app .selection-stat-armor .selection-stat-label{color:#6d9bb2}.app .selection-stat-range .selection-stat-label{color:#83a16d}.app .selected-equipment-section{padding:8px;border-radius:12px}.app .selected-equip-card{padding:7px}.app .selected-equip-card img{width:29px;height:29px}.app .selected-equip-info small{font-size:10px;line-height:1.3}.app .enemy-inspection{position:fixed;left:calc(50% + 45px);bottom:clamp(125px,calc(var(--game-vh, 1vh) * 16),230px);right:auto;z-index:1200;width:min(340px,calc(calc(var(--game-vw, 1vw) * 100) - 32px));max-height:calc(calc(var(--game-vh, 1vh) * 100) - 160px);overflow-y:auto;padding:14px;border:1px solid #d9bdba;border-radius:20px;background:linear-gradient(155deg,#fffaf5,#fbece9);box-shadow:0 16px 46px #371f2540,inset 0 1px #fff;color:#463d40}.app .enemy-inspection-close{position:absolute;top:11px;right:11px;display:grid;place-items:center;width:28px;height:28px;border:1px solid #dec5c0;border-radius:50%;background:#fff5f0;color:#6f5256;cursor:pointer}.app .enemy-inspection-header{display:flex;align-items:center;gap:12px;padding-right:26px}.app .enemy-inspection-art{display:grid;place-items:center;width:80px;height:80px;flex:none;border-radius:16px;background:radial-gradient(circle,#fff 15%,#e9d4d1)}.app .enemy-inspection-art img{width:76px;height:76px;object-fit:contain}.app .enemy-inspection-eyebrow{margin:0 0 4px;color:#b5756f}.app .enemy-inspection-header strong{display:block;color:#603f48;font-size:18px}.app .enemy-inspection-header small{color:#967e7c;font-size:11px}.app .enemy-inspection-desc{margin:8px 0 0;line-height:1.45;font-size:12px}.app .enemy-stats>div{border-color:#ecd9d5}.app .enemy-stats strong{color:#68434b}.app .enemy-inspection-note{padding:8px 10px;border-radius:9px;background:#f5e4de;color:#9a625e;font-size:11px;font-weight:700}@container game (max-width: 700px){.app .selection{right:-8px;max-height:min(480px,calc(calc(var(--game-vh, 1vh) * 100) - 135px))}.app .enemy-inspection{left:auto;right:12px;bottom:110px;max-height:calc(calc(var(--game-vh, 1vh) * 100) - 130px)}}.app .selection,.app .enemy-inspection{width:min(350px,calc(calc(var(--game-vw, 1vw) * 100) - 24px));max-width:min(350px,calc(calc(var(--game-vw, 1vw) * 100) - 24px));padding:34px 46px 40px;border:0;border-radius:0;background:transparent url(https://shirley-cgz.oss-cn-beijing.aliyuncs.com/assets/side-rail-frame.webp) center / 100% 100% no-repeat;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;filter:drop-shadow(0 14px 16px rgba(30,43,19,.28));scrollbar-width:none}.app .selection::-webkit-scrollbar,.app .enemy-inspection::-webkit-scrollbar{display:none}.app .selection-heading,.app .enemy-inspection-header{gap:10px;padding:2px 22px 8px 0;border-bottom:2px solid #dfc78d}.app .selection-heading img,.app .enemy-inspection-art{width:74px;height:74px;flex:none;padding:2px;border:3px solid #c99b4b;border-radius:50%;background:radial-gradient(circle at 45% 35%,#fff9d3,#c7dbaa 75%);box-shadow:inset 0 0 0 2px #fff9db,0 3px 5px #6a7c4766;object-fit:contain}.app .selection-heading img{filter:drop-shadow(0 3px 2px #637b4a55)}.app .enemy-inspection-art{background:radial-gradient(circle at 45% 35%,#fff6de,#d9c0c9 75%)}.app .enemy-inspection-art img{width:68px;height:68px}.app .selection-heading strong,.app .enemy-inspection-header strong{color:#34522e;font-size:19px;font-weight:900;text-shadow:0 1px #fffbe9}.app .enemy-inspection-header strong{color:#654654}.app .selection-kind,.app .enemy-inspection-eyebrow{width:max-content;max-width:100%;margin:7px 0 6px;padding:3px 10px 3px 8px;border:1px solid #b7a36b;border-left:3px solid #6e9257;border-radius:2px 9px 9px 2px;background:linear-gradient(#f9edc9,#e6d39e);color:#5f663e;box-shadow:0 2px 2px #b19a6450;font-size:10px;letter-spacing:.03em}.app .enemy-inspection-eyebrow{border-left-color:#99677e;color:#795568}.app .selection-skill,.app .enemy-inspection-desc{margin:5px 0 7px;padding:7px 9px;border:1px solid #c6ac72;border-radius:8px;background:linear-gradient(155deg,#fff9e4,#f2e3b8);box-shadow:inset 0 1px #fffdf3,0 2px 3px #8c744133}.app .enemy-inspection-desc{color:#684f55}.app .selection-skill span:before{content:"✦";margin-right:5px;color:#c99030}.app .selection-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin:8px 0}.app .selection-stats>.selection-stat{display:grid;grid-template-columns:29px minmax(0,1fr);grid-template-rows:13px 18px;align-items:center;column-gap:5px;min-height:40px;padding:4px 7px;border:1px solid #bba677;border-radius:8px;background:linear-gradient(180deg,#f7edcc,#e9d8a7);box-shadow:inset 0 1px #fff8db,inset 0 -2px #bfa97470}.app .selection-stat-label{display:contents}.app .selection-stat-label svg{grid-column:1;grid-row:1 / span 2;width:25px;height:25px;padding:5px;border:1px solid #bd9c5f;border-radius:50%;background:radial-gradient(circle at 30% 25%,#fff9db,#d7b56c);box-shadow:0 1px 2px #8f743655}.app .selection-stats small{grid-column:2;grid-row:1;color:#796c4d;font-size:9px;line-height:1}.app .selection-stats strong{grid-column:2;grid-row:2;margin:0;color:#355036;font-size:15px;font-weight:900}.app .enemy-stats>.selection-stat{border-color:#b9a2a1;background:linear-gradient(#f5e9d0,#e9d5c8)}.app .enemy-stats strong{color:#654653}.app .enemy-stats .selection-stat-label svg{border-color:#b58b91;background:radial-gradient(circle at 30% 25%,#fff1e3,#ce9dad)}.app .selected-equipment-section{margin:7px 0;padding:8px;border:1px solid #bda36c;border-radius:8px;background:#dccc9a99;box-shadow:inset 0 2px 4px #8c794844}.app .selected-equipment-title{color:#55613e;font-size:11px}.app .selected-equip-card{border:1px solid #c6a969;background:#fff9e8}.app .selected-equip-empty{color:#716a4d}.app .selection .selection-close,.app .enemy-inspection-close{top:20px;right:23px;width:27px;height:27px;border:2px solid #b59355;background:linear-gradient(#fff8d8,#e8d197);color:#607044;box-shadow:inset 0 1px #fff,0 2px 2px #67552e66}.app .selection-tools{border-top:1px solid #c7ac70}.app .selection-tools summary{color:#627549;font-weight:700}.app .enemy-inspection-note{border:1px solid #bda6a3;background:#e9d3ce;color:#79545b}@container game (max-width: 700px){.app .selection,.app .enemy-inspection{padding:32px 38px 38px}}.campaign-map.map-panel{max-width:100%}.chapter-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.chapter-cover{height:165px;background-size:cover;background-position:center 45%;border-radius:18px;overflow:hidden}.chapter-cover>div{height:100%;padding:26px;background:linear-gradient(90deg,#143e32df,#143e3260,transparent);color:#fff}.chapter-cover h2{font-size:29px;margin:9px 0}.chapter-cover p{margin:0;font-size:13px}.chapter-cover small{letter-spacing:3px;font-size:11px}.campaign-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}.campaign-heading small{letter-spacing:2px;font-size:10px;color:#8a9b7b}.campaign-heading h3{margin:6px 0;font-size:21px}.campaign-heading>b{background:#e2edde;color:#3a7058;padding:8px 12px;border-radius:25px}.companion-hub{margin:18px 0}.companion-hub>p{font-size:13px;line-height:1.7;color:#637c72}.companion-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.companion-cards>button{display:flex;align-items:center;gap:10px;text-align:left;padding:10px;border:1px solid #dfdfca;border-radius:15px;background:#fffdf7;min-width:0;min-height:88px;color:#365548}.companion-cards>button:hover:not(:disabled){background:#edf5e8;border-color:#94b69c}.companion-cards>button:disabled{opacity:.52}.companion-cards img{height:66px;width:58px;object-fit:contain}.companion-cards span{flex:1;min-width:0}.companion-cards strong,.companion-cards small,.companion-cards em{display:block}.companion-cards small{font-size:12px;color:#819184;margin:3px 0}.companion-cards em{font-style:normal;font-size:11px;color:#63836c}.companion-cards .invited{background:#edf3e7}.companion-hub.compact .companion-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.expedition-entry{position:fixed;right:28px;top:92px;z-index:1120;border:2px solid #d4af67;background:linear-gradient(135deg,#fffcf5,#fdf6e4 55%,#f5e8cc);box-shadow:0 0 0 1px #8a5a22,0 3.5px #a97e42,0 5px #7b5726,0 8px 20px #2d190a2e,inset 0 1.5px #fff,inset 0 0 0 1px #fffcebcc;color:#382215;padding:10px 16px;border-radius:16px;display:flex;gap:10px;align-items:center;text-align:left;font-weight:800;font-size:13px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:transform .12s ease,box-shadow .12s ease,border-color .15s ease}.expedition-entry svg{color:#059669;filter:drop-shadow(0 1px 2px rgba(5,150,105,.3));flex-shrink:0}.expedition-entry small{display:block;font-size:10.5px;color:#8c6035;font-weight:600;margin-top:2px}.expedition-entry:hover{transform:translateY(-2px);border-color:#f59e0b;box-shadow:0 0 0 1px #b45309,0 5.5px #a97e42,0 7px #7b5726,0 12px 24px #d9770638,0 0 14px #fbbf2459,inset 0 1.5px #fff}.expedition-entry:active{transform:translateY(3px);box-shadow:0 0 0 1px #8a5a22,0 .5px #a97e42,0 2px 6px #2d190a40}.on-menu .expedition-entry{top:auto;bottom:28px;right:28px}.invitation-portrait{display:flex;align-items:center;gap:20px}.invitation-portrait>img{height:150px;width:130px;object-fit:contain;animation:invite-arrive .45s ease-out}.invitation-portrait h2{font-size:25px;margin:8px 0}.invitation-portrait strong{display:block;color:#5a806c}.invitation-portrait small{color:#98a084;font-size:12px}.invitation-panel>p{line-height:1.8}.invitation-portrait .listen{margin-top:12px}.invitation-video{display:block;width:min(100%,420px);aspect-ratio:16 / 9;margin:18px 0;border-radius:18px;object-fit:cover;background:#dfe8d4;box-shadow:0 12px 28px #254c3318}.invitation-celebrate{padding:25px;background:#e9f1dd;border-radius:18px;text-align:center;color:#557145;margin:20px 0;font-weight:700}.chapter-boss-art{height:78vh;max-width:92vw;object-fit:contain;animation:invite-arrive .8s ease-out}.boss-reveal:has(.chapter-boss-art){background:radial-gradient(ellipse,#b7a4cddd,#263846f5);display:flex;align-items:center;justify-content:center;flex-direction:column}.route-choice{padding:18px;background:#edf3e6;border-radius:16px;margin:16px 0}.route-choice>p{font-size:12px;color:#687d66}.route-choice>div{display:flex;gap:8px}.route-choice button{flex:1;border:1px solid #ccd8bd;border-radius:12px;padding:13px;background:#fff;color:#4b694e;text-align:left}.route-choice small{display:block;line-height:1.6;margin-top:6px}.route-choice button.active{background:#d5e8c6;border-color:#6b9361;opacity:1}.scene-errands{margin-top:20px}.scene-errands p{color:#748472;font-size:13px}.scene-errands>button{border:1px solid #dfdfcd;background:#fffbf1;color:#6a795c;padding:12px;border-radius:12px;margin:4px;font-size:13px}.answers.action-answers button{padding:8px;overflow:hidden;display:flex;flex-direction:column;gap:6px}.answers.action-answers img{width:100%;height:130px;object-fit:contain;max-height:150px}.action-result{display:flex;align-items:center;gap:12px;padding:10px;margin:12px 0;border-radius:14px;background:#edf3df;animation:invite-arrive .35s ease-out}.action-result img{width:76px;height:60px;object-fit:contain}.action-result small{color:#758560}.place-symbol{font-size:34px;display:block;margin-bottom:8px}.place-art{height:90px!important;width:100%!important;object-fit:contain}.resident-dialogue{background:#fff4d9;border-radius:20px 20px 20px 3px;border:1px solid #e8d5aa}.lesson .question,.lesson .study-card strong{overflow-wrap:anywhere}.lesson .word-bank,.lesson .sentence-slots{flex-wrap:wrap}.roadblock rect{fill:#b4834f;stroke:#654825;stroke-width:3}.roadblock path{stroke:#ffdfa0;stroke-width:8}.roadblock text{font-size:15px;fill:#574631;font-weight:700}.piece.target-marked .contact{outline:4px solid #ffc850;box-shadow:0 0 15px #ffdb62}.piece.is-illusion{opacity:.48!important;filter:hue-rotate(20deg)}.focus-instruction{position:fixed;top:93px;left:50%;transform:translate(-50%);z-index:1120;padding:9px 13px;border-radius:20px;background:#fff6d7ef;border:1px solid #d5bb74;font-size:12px;color:#745930;max-width:45vw}.focus-instruction button{border:0;background:none;color:#715f28;text-decoration:underline;margin-left:8px}.codex-grid article>button{border:1px solid #cbdcc4;background:#eef5e8;color:#46724f;border-radius:12px;padding:9px;margin:8px}.map-panel .community{margin:18px 0}.chapter-tabs button:focus-visible,.companion-cards button:focus-visible{outline:3px solid #dda941;outline-offset:2px}@keyframes invite-arrive{0%{opacity:0;transform:translateY(12px) scale(.96)}to{opacity:1;transform:none}}.reduced .invitation-portrait>img,.reduced .chapter-boss-art,.reduced .action-result{animation:none}@media(max-width:700px){.campaign-map.map-panel{padding:14px;max-height:calc(100dvh - 95px);top:calc(50% + 25px)}.chapter-tabs button{font-size:11px;gap:4px}.chapter-tabs span{display:none}.chapter-cover{height:115px}.chapter-cover>div{padding:17px}.chapter-cover h2{font-size:24px}.companion-hub.compact .companion-cards{grid-template-columns:1fr}.companion-cards{grid-template-columns:1fr 1fr}.companion-cards>button{padding:7px;gap:5px}.companion-cards img{width:42px;height:56px}.companion-cards strong{font-size:13px}.companion-cards small,.companion-cards em{font-size:10px}.companion-cards>button>svg{display:none}.expedition-entry{right:9px;top:79px;padding:8px 10px;font-size:11px}.expedition-entry small{font-size:9px}.focus-instruction{top:125px;max-width:90vw;width:max-content;font-size:10px}.invitation-portrait{gap:10px}.invitation-portrait>img{height:110px;width:80px}.invitation-portrait h2{font-size:21px}.answers.action-answers img{height:90px}.action-result{flex-wrap:wrap}.route-choice>div{flex-direction:column}.place-art{height:70px!important}}.shop-caption .shop-invite{display:flex;align-items:center;gap:5px;padding:7px 10px;border:1px solid #bfcfb1;border-radius:12px;background:#f1f7e9;color:#366f53;font-size:12px;font-weight:700;white-space:nowrap;min-height:34px}.shop-caption{flex-wrap:wrap;row-gap:5px}.shop-caption>div{margin-left:auto}.shop-collapsed .shop-invite{display:flex!important}@media(max-width:700px){.shop-caption .shop-invite{font-size:10px;padding:5px 7px}.shop-caption>span{font-size:11px}.campaign-map .companion-hub.compact .companion-cards{grid-template-columns:1fr}}.app{--button-paper: #fff8e9;--button-paper-hover: #fffdf3;--button-paper-edge: #c5aa78;--button-ink: #503b27;--button-wood: #dbad68;--button-wood-hover: #e8bd79;--button-wood-edge: #9b713d}.app button{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;text-shadow:none!important}.app .primary,.app .battle-start,.app .shop-fab-battle,.app .hud-strip-cta,.app .settlement-cta-btn.btn-win,.app .barrier-primary-btn,.app .banner-btn-rotate{background:var(--button-wood)!important;border:1.5px solid var(--button-wood-edge)!important;border-radius:13px 15px;color:#3d2d1e!important;box-shadow:inset 0 0 0 2px #f2d49e,0 3px #956b3e,0 5px 9px #432c1521!important;filter:none!important}.app .primary:hover:not(:disabled),.app .battle-start:hover,.app .shop-fab-battle:hover,.app .hud-strip-cta:hover:not(.disabled),.app .settlement-cta-btn.btn-win:hover,.app .barrier-primary-btn:hover,.app .banner-btn-rotate:hover{background:var(--button-wood-hover)!important;border-color:#865b30!important;box-shadow:inset 0 0 0 2px #f7dfa9,0 4px #956b3e,0 6px 10px #432c1529!important;transform:translateY(-1px)}.app .primary:active:not(:disabled),.app .battle-start:active,.app .shop-fab-battle:active,.app .hud-strip-cta:active:not(.disabled),.app .settlement-cta-btn.btn-win:active,.app .barrier-primary-btn:active,.app .banner-btn-rotate:active{box-shadow:inset 0 0 0 2px #f2d49e,0 1px #956b3e!important;transform:translateY(2px)!important}.app .battle-start span,.app .battle-start small,.app .battle-start svg,.app .shop-fab-battle .fab-icon-play,.app .shop-fab-battle .fab-ready-badge{color:#3d2d1e!important;text-shadow:none!important;filter:none!important}.app .shop-fab-battle .fab-ready-badge{background:#f3d59d;border-color:#b88b4c}.app button.glass,.app .menu-header .icon-button,.app .hud-icon-btn,.app .shop-fab-recruit,.app .shop-caption button,.app .modal-bottom button:not(.primary),.app .selection-tools button,.app .sell-area button{background:var(--button-paper)!important;border:1px solid var(--button-paper-edge)!important;color:var(--button-ink)!important;box-shadow:inset 0 0 0 1px #fffdf4,0 2px #c8af86!important;filter:none!important}.app button.glass:hover:not(:disabled),.app .menu-header .icon-button:hover,.app .hud-icon-btn:hover,.app .shop-fab-recruit:hover,.app .shop-caption button:hover,.app .modal-bottom button:not(.primary):hover,.app .selection-tools button:hover,.app .sell-area button:hover{background:var(--button-paper-hover)!important;border-color:#a18559!important;box-shadow:inset 0 0 0 1px #fffdf4,0 3px #c8af86!important;transform:translateY(-1px)}.app button.glass:active:not(:disabled),.app .menu-header .icon-button:active,.app .hud-icon-btn:active,.app .shop-fab-recruit:active,.app .shop-caption button:active,.app .modal-bottom button:not(.primary):active,.app .selection-tools button:active,.app .sell-area button:active{box-shadow:inset 0 0 0 1px #fffdf4,0 1px #c8af86!important;transform:translateY(1px)!important}.app .shop-caption .shop-invite,.app .shop-caption button.active,.app .hud-strip-step.active{background:#e5edcf!important;border-color:#8ba678!important;color:#365438!important}.app .tactics-chip,.app .rail-tab-pill,.app .compact-side-rail button,.app .retrieval-container .retrieval button{background:var(--button-paper)!important;border:1px solid var(--button-paper-edge)!important;color:var(--button-ink)!important;box-shadow:none!important}.app .tactics-chip:hover,.app .rail-tab-pill:hover,.app .compact-side-rail button:hover,.app .retrieval-container .retrieval button:hover{background:var(--button-paper-hover)!important;border-color:#a18559!important}.app .tactics-chip.active,.app .rail-tab-pill.active,.app .compact-side-rail button.active{background:#e5edcf!important;border-color:#8ba678!important;color:#365438!important}.app .hud-icon-btn-inline{background:#fff8e9!important;border:1px solid #c5aa78!important;color:#503b27!important;box-shadow:0 1px #c8af86!important}.app .hud-icon-btn-inline:hover{background:#fffdf3!important;transform:translateY(-1px)}.app .battle-start:after,.app .hero-start .hero-start-shimmer,.app .shop-fab-battle.ready:after{display:none!important}.app .settlement-cta-btn.btn-retry{background:#bd713d!important;border:2px solid #89502d!important;color:#fffaf0!important;box-shadow:0 3px #754429!important}.app .settlement-cta-btn.btn-retry:hover{background:#a95f31!important;box-shadow:0 4px #754429!important}.app .settlement-cta-btn.btn-retry:active{box-shadow:0 1px #754429!important}.app.on-menu .hero{position:absolute;left:7%;top:48%;transform:translateY(-50%);width:min(360px,32vw);display:flex;flex-direction:column;align-items:center;text-align:center;z-index:1000;pointer-events:auto}.app.on-menu .menu-brand-art{display:none}.app.on-menu .hero h1{width:112%;max-width:415px;margin:0 0 20px;line-height:0;display:flex;justify-content:center}.app.on-menu .hero-title-art{display:block;width:100%;height:auto;aspect-ratio:2172 / 724;object-fit:contain;filter:drop-shadow(0 10px 22px rgba(45,20,10,.32))}.app.on-menu .hero-hub{display:flex;flex-direction:column;align-items:center;width:100%;gap:14px}.app.on-menu button.hero-start,.app.on-menu button.hero-start:hover,.app.on-menu button.hero-start:active,.app.on-menu button.hero-start:focus{background:url(https://shirley-cgz.oss-cn-beijing.aliyuncs.com/assets/immersion/UI-HOME-ADVENTURE-v1.webp) center / contain no-repeat!important;border:0!important;border-radius:0!important;box-shadow:none!important;outline:none!important}.app.on-menu button.hero-start{position:relative!important;width:100%!important;aspect-ratio:2172 / 724!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0!important;padding:0 16%!important;display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;cursor:pointer;-webkit-user-select:none;user-select:none;filter:drop-shadow(0 12px 24px rgba(45,18,8,.36)) drop-shadow(0 0 16px rgba(245,158,11,.22));animation:heroStartAura 3.6s ease-in-out infinite;transition:transform .16s cubic-bezier(.2,.8,.2,1),filter .16s ease}@keyframes heroStartAura{0%,to{filter:drop-shadow(0 10px 22px rgba(45,18,8,.34)) drop-shadow(0 0 14px rgba(245,158,11,.22))}50%{filter:drop-shadow(0 13px 28px rgba(45,18,8,.42)) drop-shadow(0 0 24px rgba(245,158,11,.4))}}.app.on-menu button.hero-start:hover{animation-play-state:paused;transform:translateY(-4px) scale(1.035);filter:drop-shadow(0 16px 32px rgba(45,18,8,.48)) drop-shadow(0 0 26px rgba(245,158,11,.42)) brightness(1.07)}.app.on-menu button.hero-start:active{transform:translateY(2px) scale(.98);filter:drop-shadow(0 4px 10px rgba(45,18,8,.25)) brightness(.96)}.app.on-menu .hero-start-text{font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Microsoft YaHei,WenQuanYi Micro Hei,sans-serif!important;font-size:clamp(21px,2.2vw,25px)!important;font-weight:800!important;letter-spacing:clamp(3px,.4vw,5px)!important;color:#301302!important;-webkit-font-smoothing:antialiased!important;-moz-osx-font-smoothing:grayscale!important;text-rendering:optimizeLegibility!important;transform:translateZ(0);text-shadow:0 1px 0 rgba(255,255,255,.85),0 1.5px 2.5px rgba(45,15,5,.42)!important;display:block}.app.on-menu .hero-sub-row{display:grid!important;grid-template-columns:1.9fr 1fr!important;align-items:center!important;justify-content:center!important;width:100%!important;gap:10px!important}.app.on-menu button.hero-progress-line,.app.on-menu button.hero-progress-line:hover,.app.on-menu button.hero-progress-line:active,.app.on-menu button.hero-progress-line:focus{background:url(https://shirley-cgz.oss-cn-beijing.aliyuncs.com/assets/immersion/UI-HOME-CHAPTER-v1.webp) center / contain no-repeat!important;border:0!important;border-radius:0!important;box-shadow:none!important;outline:none!important}.app.on-menu button.hero-progress-line{position:relative!important;width:100%!important;aspect-ratio:2172 / 724!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0!important;padding:0 16% 0 19%!important;display:flex!important;align-items:center!important;justify-content:center!important;cursor:pointer;-webkit-user-select:none;user-select:none;filter:drop-shadow(0 4px 8px rgba(50,25,10,.18));transition:transform .14s cubic-bezier(.2,.8,.2,1),filter .14s ease}.app.on-menu button.hero-progress-line:hover{transform:translateY(-2px) scale(1.03);filter:drop-shadow(0 6px 12px rgba(50,25,10,.26)) brightness(1.04)}.app.on-menu button.hero-progress-line:active{transform:translateY(2px) scale(.98);filter:drop-shadow(0 2px 4px rgba(50,25,10,.14)) brightness(.97)}.app.on-menu .hero-progress-line .chapter-info{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;width:100%;min-width:0;line-height:1.25}.app.on-menu .hero-progress-line .chapter-label{font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif!important;font-size:clamp(10px,.9vw,11.5px);font-weight:800;color:#4a280f;text-shadow:0 1px 0 rgba(255,255,255,.7);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.app.on-menu .hero-progress-line .chapter-sub{font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif!important;font-size:clamp(7.5px,.65vw,8.5px);font-weight:700;color:#835427;text-shadow:0 1px 0 rgba(255,255,255,.6);margin-top:1px;letter-spacing:.2px;white-space:nowrap}.app.on-menu button.hero-codex-btn,.app.on-menu button.hero-codex-btn:hover,.app.on-menu button.hero-codex-btn:active,.app.on-menu button.hero-codex-btn:focus{background:url(https://shirley-cgz.oss-cn-beijing.aliyuncs.com/assets/immersion/UI-HOME-BOOK-v1.webp) center / contain no-repeat!important;border:0!important;border-radius:0!important;box-shadow:none!important;outline:none!important}.app.on-menu button.hero-codex-btn{position:relative!important;width:100%!important;aspect-ratio:1774 / 887!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0!important;padding:0!important;display:block!important;cursor:pointer;-webkit-user-select:none;user-select:none;filter:drop-shadow(0 4px 8px rgba(35,18,8,.2));transition:transform .16s cubic-bezier(.2,.8,.2,1),filter .16s ease}.app.on-menu button.hero-codex-btn:hover{transform:translateY(-2px) scale(1.04)!important;filter:drop-shadow(0 8px 16px rgba(45,20,10,.3)) brightness(1.06)!important}.app.on-menu button.hero-codex-btn:active{transform:translateY(1px) scale(.98)!important;filter:drop-shadow(0 2px 4px rgba(45,20,10,.16)) brightness(.97)!important}.app.on-menu .hero-codex-label{position:absolute;left:49.5%;top:48%;transform:translate(-50%,-50%);width:auto;text-align:center;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif!important;font-size:clamp(11.5px,.9vw,13px);font-weight:800;letter-spacing:2px;color:#3b1f0b;text-shadow:0 1px 0 rgba(255,255,255,.85);pointer-events:none;white-space:nowrap}@media(max-width:860px){.app.on-menu .world-stage{left:50%!important;top:33%!important;width:max(100vw,120vh)!important}.app.on-menu .menu-brand-art{display:block;width:clamp(155px,44vw,205px);height:auto;object-fit:contain}.app.on-menu .hero{position:absolute;left:50%;transform:translate(-50%);top:auto;bottom:calc(14px + env(safe-area-inset-bottom,0px));width:min(330px,calc(100vw - 28px));text-align:center;align-items:center}.app.on-menu .hero h1{display:none}.app.on-menu .hero-hub{align-items:center;gap:10px}.app.on-menu button.hero-start{width:100%!important}.app.on-menu .hero-sub-row{display:grid!important;grid-template-columns:1.9fr 1fr!important;gap:10px!important}.app.on-menu button.hero-progress-line,.app.on-menu button.hero-codex-btn{width:100%!important}}@media(max-width:960px),(max-height:550px){.app .shop-fab-battle{border-radius:9px 11px!important;border-width:1.2px!important;box-shadow:inset 0 0 0 1.5px #f2d49e,0 2px #956b3e,0 3px 6px #432c151f!important}.app .shop-fab-recruit{border-radius:9px 11px!important;border-width:1px!important;box-shadow:inset 0 0 0 1px #fffdf4,0 1.5px #c8af86!important}.app .shop-fab-battle:hover{box-shadow:inset 0 0 0 1.5px #f7dfa9,0 2.5px #956b3e,0 4px 7px #432c1524!important}.app .shop-fab-recruit:hover{box-shadow:inset 0 0 0 1px #fffdf4,0 2px #c8af86!important}}.app.tactics-compact .shop-fab-battle{border-radius:9px 11px!important;border-width:1.2px!important;box-shadow:inset 0 0 0 1.5px #f2d49e,0 2px #956b3e,0 3px 6px #432c151f!important}.app.tactics-compact .shop-fab-recruit{border-radius:9px 11px!important;border-width:1px!important;box-shadow:inset 0 0 0 1px #fffdf4,0 1.5px #c8af86!important}.app .hud-guide-entry{display:inline-flex;align-items:center;gap:9px;min-height:43px;padding:6px 11px;border:1px solid rgba(255,244,205,.96);border-radius:13px;background:linear-gradient(145deg,#fffdf1,#f5eac5);box-shadow:0 3px #ae8e53,0 7px 16px #32452b26;color:#3d573e;cursor:pointer;flex:0 0 auto;text-align:left}.app .hud-guide-entry:hover{transform:translateY(-2px);box-shadow:0 5px #ae8e53,0 9px 18px #32452b32}.app .hud-guide-entry>svg:first-child{color:#be8139;flex:0 0 auto}.app .hud-guide-entry>svg:last-child{color:#a38d64}.app .hud-guide-entry span{display:grid;gap:1px}.app .hud-guide-entry strong{font-size:12px;line-height:1.1;white-space:nowrap}.app .hud-guide-entry small{font-size:9px;color:#8a866d;white-space:nowrap}.app .modal-help{width:min(680px,calc(calc(var(--game-vw, 1vw) * 100) - 24px));padding:30px;background:#fffdf1}.app .guide-heading{display:flex;align-items:center;gap:16px;margin-bottom:20px}.app .guide-emblem{width:54px;height:54px;display:grid;place-items:center;flex:0 0 auto;border-radius:18px;color:#fff;background:linear-gradient(145deg,#84b976,#3b815b);box-shadow:0 5px #2f6047,0 9px 18px #31573b30}.app .guide-heading small{font-size:10px;color:#b1783c;font-weight:800;letter-spacing:1.2px}.app .guide-heading h2{margin:3px 0 2px;font-size:27px;color:#345842}.app .guide-heading p{margin:0;font-size:12px;color:#75836e}.app .guide-step-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.app .guide-step-card{display:flex;gap:11px;min-height:123px;padding:14px;border-radius:17px;border:1px solid #dfe9ce;background:linear-gradient(140deg,#fbfff2,#f3f5de);box-shadow:0 3px 10px #3d604012}.app .guide-step-icon{display:grid;place-items:center;flex:0 0 auto;width:38px;height:38px;border-radius:12px;background:#e0f0da;color:#41815c}.app .guide-step-card small{display:block;color:#a67d4c;font-size:9px;font-weight:900;letter-spacing:1px}.app .guide-step-card strong{display:block;color:#34543c;font-size:14px;margin:2px 0 5px}.app .guide-step-card p{margin:0;color:#63765e;font-size:11px;line-height:1.55}.app .guide-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:19px}.app .guide-footer>span{display:inline-flex;align-items:center;gap:5px;color:#7c8a70;font-size:10px}.app .guide-footer>div{display:flex;gap:8px}.app .guide-secondary,.app .guide-primary{min-height:37px;border-radius:10px;padding:0 13px;font-size:12px;font-weight:800;cursor:pointer}.app .guide-secondary{border:1px solid #d9dfc6;background:#fffdf4;color:#66745d}.app .guide-primary{display:inline-flex;align-items:center;gap:7px;border:1px solid #3c895a;background:linear-gradient(140deg,#67af77,#327f58);color:#fff;box-shadow:0 3px #286949}.app .guide-primary:disabled{opacity:.55;cursor:default;box-shadow:none}.product-tour{position:fixed;inset:0;z-index:3000;pointer-events:auto}.tour-shade{position:absolute;inset:0}.product-tour:not(:has(.tour-spotlight)) .tour-shade{background:#112b22aa}.tour-spotlight{position:fixed;border:2px solid #ffe7a6;border-radius:16px;box-shadow:0 0 0 9999px #112b22aa,0 0 0 6px #ffe7a640;pointer-events:none}.tour-card{position:fixed;box-sizing:border-box;max-height:calc(calc(var(--game-vh, 1vh) * 100) - 24px);overflow:auto;padding:17px 19px 15px;border-radius:20px;border:2px solid #f5e3aa;background:#fffdf0;box-shadow:0 15px 45px #09271d66,inset 0 2px #fff;color:#36533e}.tour-card-top,.tour-actions{display:flex;align-items:center;justify-content:space-between;gap:8px}.tour-kicker{display:inline-flex;align-items:center;gap:6px;color:#a47035;font-size:11px;font-weight:900}.tour-close{display:grid;place-items:center;width:28px;height:28px;border:0;border-radius:50%;background:#f2edd9;color:#6b715b;cursor:pointer}.tour-progress{display:flex;gap:5px;margin:10px 0 12px}.tour-progress span{height:5px;flex:1;border-radius:5px;background:#e7e6d1}.tour-progress span.current{background:#65af7b}.tour-card h2{margin:0 0 7px;color:#2f6148;font-size:21px}.tour-card p{margin:0;color:#596e58;font-size:12px;line-height:1.6}.tour-target-label{display:inline-block;margin:10px 0 13px;padding:4px 9px;border-radius:20px;background:#e6f4df;color:#3d8159;font-size:10px;font-weight:800}.tour-back,.tour-next{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:33px;padding:0 11px;border-radius:9px;font-size:11px;font-weight:800;cursor:pointer}.tour-back{background:#f8f5e7;color:#687963;border:1px solid #e0dfca}.tour-next{background:#428e62;color:#fff;border:1px solid #2c724c;box-shadow:0 2px #236343}.product-tour-compact .tour-card{padding:12px 14px 11px;border-radius:16px}.product-tour-compact .tour-kicker{font-size:10px}.product-tour-compact .tour-progress{margin:7px 0 9px}.product-tour-compact .tour-card h2{font-size:17px;margin-bottom:5px}.product-tour-compact .tour-card p{font-size:11px;line-height:1.45}.product-tour-compact .tour-target-label{margin:7px 0 9px;font-size:9px}.product-tour-compact .tour-back,.product-tour-compact .tour-next{min-height:30px}@container game (max-width: 1050px){.app .hud-guide-entry small{display:none}.app .hud-guide-entry{min-height:28px;padding:3px 8px;gap:5px}}@container game ((max-width: 960px)) or ((max-height: 550px)){.app .hud-guide-entry{min-height:26px;height:26px;padding:2px 7px;gap:4px;border-radius:8px;box-shadow:0 2px #ae8e53,0 3px 6px #32452b24}.app .hud-guide-entry small{display:none}.app .hud-guide-entry>svg:last-child{display:none}.app .hud-guide-entry>svg:first-child{width:13px;height:13px}.app .hud-guide-entry strong{font-size:10.5px;font-weight:700;line-height:1}}.app.tactics-compact .hud-guide-entry{min-height:26px;height:26px;padding:2px 7px;gap:4px;border-radius:8px;box-shadow:0 2px #ae8e53,0 3px 6px #32452b24}.app.tactics-compact .hud-guide-entry small{display:none}.app.tactics-compact .hud-guide-entry>svg:last-child{display:none}.app.tactics-compact .hud-guide-entry>svg:first-child{width:13px;height:13px}.app.tactics-compact .hud-guide-entry strong{font-size:10.5px;font-weight:700;line-height:1}@container game (max-width: 600px){.app .hud-guide-entry{min-height:24px;height:24px;padding:2px 6px;gap:3px;border-radius:7px}.app .hud-guide-entry strong{font-size:10px}.app .guide-step-list{grid-template-columns:1fr}.app .guide-step-card{min-height:0}.app .guide-footer{align-items:flex-start;flex-direction:column}.app .guide-footer>div{width:100%;justify-content:flex-end}}@container game (max-height: 520px){.app .modal-help{max-height:calc(calc(var(--game-vh, 1vh) * 100) - 16px);padding:17px}.app .guide-heading{margin-bottom:10px}.app .guide-step-card{min-height:0;padding:8px 10px}.app .guide-step-icon{width:30px;height:30px}.app .guide-step-card p{font-size:10px}.app .guide-footer{margin-top:10px}}@container game (max-height: 550px) and (orientation: landscape){.app .modal.modal-help{max-height:min(calc(var(--game-vh, 1vh) * 94),390px)!important}.app .guide-heading{gap:9px;margin-bottom:7px}.app .guide-emblem{width:38px;height:38px;border-radius:11px}.app .guide-heading h2{font-size:18px!important}.app .guide-heading p{font-size:9px!important;margin:0!important}.app .guide-step-list{gap:7px}.app .guide-step-card{gap:7px;padding:7px;min-height:0;border-radius:10px}.app .guide-step-icon{width:26px;height:26px;border-radius:8px}.app .guide-step-icon svg{width:16px;height:16px}.app .guide-step-card strong{font-size:11px;margin:0 0 2px}.app .guide-step-card p{font-size:9px!important;line-height:1.25!important;margin:0!important}.app .guide-footer{margin-top:7px}.app .guide-secondary,.app .guide-primary{min-height:29px;padding:0 9px;font-size:10px}}
