/* Illustrated action UI. Layer after release26.css; chapter and original 3D releases stay untouched. */
.release27-ui.action-mode{--ui27-gold:#dfbd75;--ui27-jade:#72c6b2;--ui27-violet:#bcb0eb}
.release27-ui.action-mode #combo{display:none}
.art27{display:block;position:relative;flex:none;width:100%;height:100%;background-color:#0a1422;background-repeat:no-repeat;background-size:400% 400%;background-position:var(--art-x) var(--art-y);overflow:hidden}
.art27>svg{position:absolute;width:62%;height:62%;left:19%;top:19%;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.ui27-art-ready .art27{background-image:url('./ui27/skills.webp?v=release27')}.ui27-art-ready .art27>svg{display:none}
.release27-ui.action-mode .title-bottom{padding:15px 17px;border-color:#c9b47963;background:linear-gradient(150deg,#163b3ced,#0d202ded 65%);box-shadow:0 20px 55px #0006,inset 0 1px #e5d59922}
.release27-ui.action-mode .run26-heading{padding-bottom:0;border:0}.release27-ui.action-mode .run26-heading>span{font-size:19px}.release27-ui.action-mode .run26-heading>b{font-size:10px;color:#bbbe9e}
.journey27{position:relative;display:flex;align-items:center;justify-content:space-between;list-style:none;padding:0;margin:0;gap:9px;isolation:isolate}
.journey27:before{content:'';position:absolute;left:16px;right:16px;top:50%;height:1px;background:linear-gradient(90deg,#8aaf9c88,#71888444);z-index:-1}
.journey27>li{position:relative;display:block;flex:0 0 34px;width:34px;height:34px;border:1px solid #77867a6b;border-radius:50%;background:#112633;box-shadow:0 0 0 4px #102630}
.journey27>li>.art27{border-radius:50%;filter:saturate(.6) brightness(.7)}.journey27>li>b{position:absolute;right:-3px;bottom:-4px;display:grid;place-items:center;min-width:14px;height:14px;padding:0 2px;border-radius:5px;background:#142b34;border:1px solid #839b8766;color:#bacdbb;font:9px/1 system-ui}
.journey27>li.current{border-color:#e7cd8e;box-shadow:0 0 0 3px #14303a,0 0 0 4px #d6b87766}.journey27>li.current>.art27{filter:none}.journey27>li.current>b{background:#dcc18a;color:#1b3034;border-color:#e2c895}
.journey27>li.done{border-color:#78c4af}.journey27>li.done>.art27{filter:saturate(.65) brightness(.85)}.journey27>li.done>b{color:#102f2a;background:#86c8aa;border-color:#abdbc0}
.title27-journey{margin:15px 1px 16px}.release27-ui.action-mode .difficulty26-heading{margin:10px 0 7px}.release27-ui.action-mode .difficulty26-heading small{font-size:9px}
.release27-ui.action-mode .difficulty26{display:grid;grid-template-columns:34px 1fr;grid-template-rows:18px 14px;align-items:center;justify-items:start;gap:0 7px;min-height:56px;padding:9px 7px;border-radius:10px;background:#08192780;border-color:#9ca9a13d}
.release27-ui.action-mode .difficulty26-icon{grid-row:1/3;width:34px;height:34px;border:1px solid #a0a68a66;border-radius:8px;overflow:hidden}.release27-ui.action-mode .difficulty26 b{font-size:12px;font-weight:600;line-height:18px}.release27-ui.action-mode .difficulty26-icon .art27{border-radius:7px}.difficulty27-stars{display:flex;grid-column:2;color:#ddbd79;font:9px/1 system-ui;letter-spacing:1px;white-space:nowrap}.difficulty27-stars i{font-style:normal;color:#6c7e7955}
.release27-ui.action-mode .difficulty26[aria-pressed=true]{background:linear-gradient(120deg,#6b76523d,#304c3944);border-color:#d9bd84;box-shadow:inset 0 1px #e5dfb42a,0 0 0 1px #d5b37522}
.release27-ui.action-mode .panel26-difficulty{margin:3px 0 18px}.release27-ui.action-mode .panel26-difficulty .difficulty26{min-height:94px;display:flex;flex-direction:column;gap:6px;padding:11px 3px}.release27-ui.action-mode .panel26-difficulty .difficulty26-icon{width:42px;height:42px}
.release27-ui.action-mode #start{margin-top:12px;background:linear-gradient(115deg,#eedba9,#bf974f);box-shadow:0 6px 19px #0004,inset 0 1px #fff6}.release27-ui.action-mode .how26{margin-top:11px}
/* The six encounters remain visible during combat without six long labels. */
.release27-ui.action-mode #run26-progress{height:24px;gap:8px}.release27-ui.action-mode .run26-pips{gap:5px}.release27-ui.action-mode .run26-pips>i{display:block;position:relative;width:22px;height:22px;border:1px solid #80908444;border-radius:50%;background:#102330;box-shadow:none}.release27-ui.action-mode .run26-pips .art27{border-radius:50%;filter:saturate(.5) brightness(.5)}
.release27-ui.action-mode .run26-pips>i.current{border-color:#e5c984;box-shadow:0 0 0 2px #e3c98628}.release27-ui.action-mode .run26-pips>i.current .art27{filter:none}.release27-ui.action-mode .run26-pips>i.done{border-color:#69bba0}.release27-ui.action-mode .run26-pips>i.done .art27{filter:saturate(.8) brightness(.85)}.release27-ui.action-mode .run26-pips>i.done:after{content:'✓';position:absolute;right:-4px;bottom:-5px;color:#aee9c9;text-shadow:0 1px 4px #092522;font:10px system-ui}
.release27-ui.action-mode .run26-round{font-size:9px}.release27-ui.action-mode .boon26-mini{width:28px;height:28px;overflow:visible;border-radius:7px}.release27-ui.action-mode .boon26-mini>.art27{border-radius:6px}.release27-ui.action-mode .boon26-mini>b{min-width:11px;height:11px;bottom:-3px;right:-3px;border-radius:3px;background:#152f35;color:#f0d49b;text-align:center;line-height:11px;border:1px solid #b39d6366}
/* Keep the original controls and touch listeners; only replace their illustrations. */
.release27-ui.action-mode .action .control27-legacy{display:none}.release27-ui.action-mode .action .control27-art{position:absolute;inset:3px;width:auto;height:auto;border-radius:50%;pointer-events:none}.release27-ui.action-mode .action .control27-art:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 53%,#05101bc9);pointer-events:none}.release27-ui.action-mode .action .button-label{z-index:2;text-shadow:0 1px 4px #000;bottom:7px;color:#fff1d7}.release27-ui.action-mode #attack .button-label{bottom:11px;color:#ffe9b7}.release27-ui.action-mode .action em{z-index:3}.release27-ui.action-mode .skill.empty .control27-art{filter:saturate(.5) brightness(.7)}
.release27-ui.action-mode #panel{padding:23px 20px 17px;border-radius:17px;border-color:#c2b48b66;background:linear-gradient(155deg,#173639f9,#10212ffb 65%)}.release27-ui.action-mode #panel:has(> #close:not([hidden])){padding-top:61px}
.release27-ui.action-mode .panel26-heading{margin:0 0 15px}.release27-ui.action-mode #panel .panel26-heading h2{font-size:23px;line-height:1.3;letter-spacing:0;margin-top:6px}.release27-ui.action-mode .panel26-heading .eyebrow{color:#8ac7b2}.release27-ui.action-mode .panel26-heading p{font-size:11px;line-height:1.5}
.release27-ui.action-mode .button26{min-height:46px}.release27-ui.action-mode .button26.primary{background:linear-gradient(115deg,#edd7a3,#c7a264);border-color:#e4c78c;box-shadow:0 6px 18px #03090e33,inset 0 1px #fff4}.release27-ui.action-mode .button26.quiet{min-height:44px}
/* Growth cards show artwork first. Only the selected reward has a full description. */
.release27-ui.action-mode #panel:has([data-panel=reward]){width:min(470px,100%)}.reward27-journey{width:min(286px,100%);margin:0 auto 18px}.reward27-journey>li{width:29px;height:29px;flex-basis:29px}.reward27-journey>li>b{font-size:8px}
.release27-ui.action-mode .reward26-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:0 0 12px}.release27-ui.action-mode .reward26-card{--card-accent:#d3b477;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;min-width:0;min-height:0;padding:0 0 11px;border:1px solid #b5a06b72;border-radius:11px;overflow:hidden;background:linear-gradient(#0b1b2c,#23332e);box-shadow:0 5px 12px #0003;color:#e6d7af}
.release27-ui.action-mode .reward26-card[data-category=dao]{--card-accent:#bca9e9;background:linear-gradient(#101a30,#2b2e43);border-color:#8e7da377}.release27-ui.action-mode .reward26-card[data-category=survival]{--card-accent:#8ec9a4;background:linear-gradient(#0d2330,#214236);border-color:#7caa9577}
.reward27-picture{display:block;width:100%;aspect-ratio:1/1;position:relative;margin-bottom:8px;overflow:hidden}.reward27-picture:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 68%,#10232e80)}.release27-ui.action-mode .reward26-copy{display:flex;flex-direction:column;align-items:center;gap:5px;padding:0 4px;text-align:center}.release27-ui.action-mode .reward26-copy>small{font:9px/1.3 system-ui;letter-spacing:0;color:var(--card-accent)}.release27-ui.action-mode .reward26-copy>b{font:600 13px/1.35 'Noto Serif KR',serif;color:#f1e7ce;word-break:keep-all}
.release27-ui.action-mode .reward26-check{top:6px;right:6px;width:20px;height:20px;background:#06152588;border-color:#d8c69977;font-size:12px}.release27-ui.action-mode .reward26-card[aria-pressed=true]{border-color:var(--card-accent);box-shadow:0 0 0 2px var(--card-accent),0 7px 19px #0005;background:linear-gradient(#183144,#354438)}.release27-ui.action-mode .reward26-card[aria-pressed=true] .reward26-check{color:#18312a;background:#e9d08c;border-color:#e9d08c}.release27-ui.action-mode .reward26-card:focus-visible{outline-offset:4px}.release27-ui.action-mode .reward26-card:disabled{opacity:.75}
.reward27-detail{display:flex;align-items:center;gap:11px;min-height:89px;height:89px;padding:11px 12px;margin-bottom:13px;border:1px solid #8eac9d33;border-radius:10px;background:#071b2877}.reward27-detail-icon{display:block;flex:0 0 42px;height:42px;border-radius:9px;overflow:hidden;border:1px solid #afc0a14d}.reward27-detail>div{min-width:0}.reward27-detail b{display:block;font-size:12px;color:#e5d6b0;line-height:1.4}.reward27-detail p{margin:5px 0 0;font-size:11px;line-height:1.5;color:#b8ccc0;word-break:keep-all}.release27-ui.action-mode [data-panel=reward][data-ui26]>.primary{width:100%;min-height:48px;margin:0}.release27-ui.action-mode .reward26-status{font-size:10px;margin-top:8px;line-height:1.4}
/* Paused menus keep real settings, equipment and credits at thumb-sized targets. */
.release27-ui.action-mode [data-panel=pause] .panel26-heading{margin-bottom:12px}.release27-ui.action-mode [data-panel=pause] .panel26-heading .eyebrow{display:none}.release27-ui.action-mode [data-panel=pause] .panel26-heading h2{margin:0}
.release27-ui.action-mode .pause26-run{display:block;padding:0;margin:0 0 16px;border:0;background:none}.pause27-status{display:flex;align-items:center;gap:9px;font-size:10px;margin-bottom:11px;color:#c5ba94}.pause27-status b{color:#ebd49a;font:12px Georgia}.pause27-status small{font:10px system-ui;color:#a3bdb7;margin-left:auto}.release27-ui.action-mode .pause26-run .journey27{margin:0 1px}.release27-ui.action-mode .pause26-run .journey27>li{width:30px;height:30px;flex-basis:30px}
.release27-ui.action-mode .pause26-tools{margin-top:9px;gap:8px}.release27-ui.action-mode .pause26-tools .tile{min-height:54px;background:#153840;border-color:#80ada14d;color:#d8e6d2;font-size:11px}.release27-ui.action-mode .pause26-tools .tile svg{color:#95c9b5}.release27-ui.action-mode .settings26-label{margin-top:14px}.release27-ui.action-mode [data-ui26] .quality-options{margin-top:6px;gap:7px}.release27-ui.action-mode [data-ui26] .quality-options button{min-height:44px}.release27-ui.action-mode [data-ui26] .quality-options button[aria-pressed=true]{background:#3c5c462e;border-color:#93c4a688;color:#c7e6c9}.release27-ui.action-mode .credits26{font-size:9px;min-height:44px}
/* Results use a medal, actual score and the completed route; no invented economy. */
.release27-ui.action-mode .result26-mark{width:82px;height:82px;display:block;border-radius:50%;overflow:hidden;margin:0 auto 12px;border-color:#98aaa666;background:#0c1c29}.release27-ui.action-mode .result26-mark>.art27{border-radius:50%}.release27-ui.action-mode .result26-mark.won{border-color:#e0bf75;box-shadow:0 0 0 5px #d5b16513,0 0 25px #dcc27613}.release27-ui.action-mode #panel:has(.result26-mark) .panel26-heading{margin-bottom:10px}.release27-ui.action-mode .result26-score{margin:0 0 15px}.release27-ui.action-mode .result26-score>b{font-size:32px}.release27-ui.action-mode .result26-score>strong{color:#8fcdb4;font-size:32px}.result27-journey{max-width:292px;margin:0 auto 17px}.release27-ui.action-mode .result26-stats{margin:0 0 13px;padding:12px 0}.release27-ui.action-mode .result26-stats>div{gap:5px}.result26-stats svg{width:18px;height:18px;fill:none;stroke:#91bfae;stroke-width:1.8}.release27-ui.action-mode .result26-stats b{font-size:23px}.release27-ui.action-mode .result26-difficulty{margin-bottom:13px}.release27-ui.action-mode .result26-note{font-size:10px;margin-bottom:10px}
@media(max-width:360px){
 .release27-ui.action-mode .title-bottom{padding:13px;width:calc(100% - 26px)}.release27-ui.action-mode .difficulty26{grid-template-columns:29px 1fr;column-gap:5px;padding:8px 5px;min-height:51px}.release27-ui.action-mode .difficulty26-icon{width:29px;height:29px}.release27-ui.action-mode .difficulty26 b{font-size:11px}.difficulty27-stars{font-size:8px;letter-spacing:0}
 .release27-ui.action-mode #panel{padding-left:15px;padding-right:15px}.release27-ui.action-mode #panel .panel26-heading h2{font-size:21px}.release27-ui.action-mode .reward26-options{gap:7px}.release27-ui.action-mode .reward26-copy>b{font-size:11px}.release27-ui.action-mode .reward26-copy>small{font-size:8px}.reward27-detail{padding:10px;gap:9px}.reward27-detail-icon{flex-basis:34px;height:34px}.reward27-detail b{font-size:11px}.reward27-detail p{font-size:10px;line-height:1.5}
 .release27-ui.action-mode .run26-pips{gap:4px}.release27-ui.action-mode .run26-pips>i{width:21px;height:21px}.release27-ui.action-mode #run26-progress{gap:7px}
}
@media(orientation:portrait) and (max-height:680px){
 .release27-ui.action-mode .title-copy{top:max(23px,calc(env(safe-area-inset-top) + 12px))}.release27-ui.action-mode .title-copy h1{font-size:48px;line-height:1.1;margin:9px 0 6px}.release27-ui.action-mode .title-copy p{font-size:12px;letter-spacing:5px}.release27-ui.action-mode .title-bottom{bottom:max(13px,env(safe-area-inset-bottom));padding-top:12px;padding-bottom:12px}.title27-journey{margin-top:12px;margin-bottom:13px}.title27-journey>li{width:30px;height:30px;flex-basis:30px}.release27-ui.action-mode #start{height:48px;min-height:48px;margin-top:10px}.release27-ui.action-mode .how26{margin-top:9px}
 .release27-ui.action-mode #veil{padding:12px}.release27-ui.action-mode #panel{max-height:calc(100dvh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom));padding-top:18px;padding-bottom:13px}.release27-ui.action-mode #panel:has(> #close:not([hidden])){padding-top:59px}.release27-ui.action-mode .panel26-heading{margin-bottom:12px}.release27-ui.action-mode .panel26-heading .eyebrow{font-size:8px}.release27-ui.action-mode .panel26-heading h2{margin-top:4px}.reward27-journey{margin-bottom:15px}.reward27-detail{margin-bottom:10px;height:81px;min-height:81px}.release27-ui.action-mode .reward26-card{padding-bottom:9px}.release27-ui.action-mode .reward26-options{margin-bottom:11px}
 .release27-ui.action-mode .pause26-run{margin-bottom:12px}.pause27-status{margin-bottom:8px}.release27-ui.action-mode .pause26-tools{margin-top:7px}.release27-ui.action-mode .pause26-tools .tile{min-height:48px;padding-top:8px;padding-bottom:8px}.release27-ui.action-mode .settings26-label{margin-top:9px}.release27-ui.action-mode [data-panel=pause]>.quiet{margin-top:2px}.release27-ui.action-mode .result26-mark{width:58px;height:58px;margin-bottom:8px}.release27-ui.action-mode .result26-score{margin-bottom:12px}.release27-ui.action-mode .result26-score>b{font-size:28px}.release27-ui.action-mode .result26-score>strong{font-size:28px}.result27-journey{margin-bottom:13px}.release27-ui.action-mode .result26-stats{padding:8px 0;margin-bottom:10px}.release27-ui.action-mode .result26-difficulty{margin-bottom:9px}.release27-ui.action-mode .result26-stats svg{display:none}.release27-ui.action-mode #panel:has(.result26-note) .result26-mark{display:none}
}
@media(orientation:landscape) and (max-height:550px){
 .release27-ui.action-mode .title-bottom{padding:12px 15px;width:min(354px,45%)}.release27-ui.action-mode .title-copy h1{font-size:56px}.release27-ui.action-mode .title-copy{top:24%}.title27-journey{margin:12px 0 13px}.title27-journey>li{width:29px;height:29px;flex-basis:29px}.release27-ui.action-mode .difficulty26-heading{margin-top:7px}.release27-ui.action-mode .difficulty26{min-height:50px;padding-top:6px;padding-bottom:6px}.release27-ui.action-mode #start{min-height:44px;height:44px;margin-top:9px}.release27-ui.action-mode .how26{margin-top:8px}
 .release27-ui.action-mode #run26-progress{top:52px}.release27-ui.action-mode .run26-pips>i{width:19px;height:19px}.release27-ui.action-mode .run26-pips{gap:4px}.release27-ui.action-mode .objective{top:81px}
 .release27-ui.action-mode #panel{padding:18px 22px 13px;width:min(620px,100%);max-height:calc(100dvh - 24px)}.release27-ui.action-mode #panel:has(> #close:not([hidden])){padding-top:61px}.release27-ui.action-mode .panel26-heading{margin-bottom:10px}.release27-ui.action-mode #panel .panel26-heading h2{font-size:22px}.release27-ui.action-mode .button26{min-height:44px;padding-top:10px;padding-bottom:10px}
 .release27-ui.action-mode #panel:has([data-panel=reward]){width:min(650px,100%)}.release27-ui.action-mode [data-panel=reward]{display:grid;grid-template-columns:1fr 1fr;column-gap:19px;align-items:start}.release27-ui.action-mode [data-panel=reward]>.panel26-heading{grid-column:1;grid-row:1;margin-bottom:12px}.release27-ui.action-mode [data-panel=reward]>.reward27-journey{grid-column:1;grid-row:2;width:100%;margin:0 0 16px}.release27-ui.action-mode [data-panel=reward]>.reward26-options{grid-column:2;grid-row:1/4;margin:0;gap:8px;align-self:stretch}.release27-ui.action-mode .reward26-card{min-height:0;justify-content:center;padding:0 0 11px;align-self:start}.release27-ui.action-mode .reward26-copy>b{font-size:11px}.release27-ui.action-mode .reward26-copy>small{font-size:8px}.reward27-picture{margin-bottom:10px}.release27-ui.action-mode [data-panel=reward]>.reward27-detail{grid-column:1;grid-row:3;margin-bottom:12px;min-height:84px;height:84px;padding:9px;gap:9px}.reward27-detail-icon{height:32px;flex-basis:32px}.reward27-detail p{font-size:10px}.reward27-detail b{font-size:11px}.release27-ui.action-mode [data-panel=reward]>.primary{grid-column:1/-1;grid-row:4;margin:0;min-height:44px}.release27-ui.action-mode [data-panel=reward]>.reward26-status{grid-column:1/-1;grid-row:5;margin-top:7px}
 .release27-ui.action-mode #panel:has([data-panel=pause]){width:min(610px,100%)}.release27-ui.action-mode [data-panel=pause][data-ui26]{grid-template-columns:1fr 1fr;column-gap:24px}.release27-ui.action-mode [data-panel=pause] .panel26-heading{grid-column:1;grid-row:1;margin-bottom:10px}.release27-ui.action-mode [data-panel=pause] .pause26-run{grid-column:1;grid-row:2;margin:0 0 15px}.release27-ui.action-mode [data-panel=pause]>.primary{grid-column:1;grid-row:3}.release27-ui.action-mode [data-panel=pause] .pause26-tools{grid-column:2;grid-row:1/3;margin-top:0;gap:8px}.release27-ui.action-mode .pause26-tools .tile{height:86px;min-height:44px;display:flex;flex-direction:column;gap:9px}.release27-ui.action-mode [data-panel=pause] .settings26-label{grid-column:2;grid-row:3;margin-top:-1px}.release27-ui.action-mode [data-panel=pause] .quality-options{grid-column:2;grid-row:4;margin-top:-16px}.release27-ui.action-mode [data-panel=pause]>.quiet{grid-column:1;grid-row:4;margin-top:2px}.release27-ui.action-mode [data-panel=pause]>.credits26{grid-column:1/-1;grid-row:5;margin-top:-4px}
 .release27-ui.action-mode #panel:has(.result26-mark){width:min(594px,100%)}.release27-ui.action-mode [data-panel=defeat],.release27-ui.action-mode [data-panel=victory]{display:grid;grid-template-columns:116px 1fr;column-gap:20px;align-items:center}.release27-ui.action-mode .result26-mark{display:block;grid-column:1;grid-row:1/4;width:110px;height:110px;margin:0}.release27-ui.action-mode #panel:has(.result26-mark) .panel26-heading{grid-column:2;grid-row:1;margin-bottom:4px;text-align:left}.release27-ui.action-mode .result26-score{grid-column:2;grid-row:2;justify-content:flex-start;margin:0 0 11px}.release27-ui.action-mode .result26-score>b{font-size:27px}.release27-ui.action-mode .result26-score>strong{font-size:26px}.result27-journey{grid-column:2;grid-row:3;width:100%;max-width:none;margin:0 0 11px}.result27-journey>li{width:28px;height:28px;flex-basis:28px}.release27-ui.action-mode .result26-stats{grid-column:1/-1;grid-row:4;margin:0 0 9px;padding:8px 0}.release27-ui.action-mode .result26-stats svg{display:none}.release27-ui.action-mode .result26-stats>div{gap:4px}.release27-ui.action-mode .result26-stats b{font-size:22px}.release27-ui.action-mode .result26-difficulty{grid-column:1/-1;grid-row:5;margin:0 0 9px;font-size:9px}.release27-ui.action-mode #panel:has(.result26-mark) .button26.primary{grid-column:1/-1;grid-row:7}.release27-ui.action-mode #panel:has(.result26-mark) .button26.quiet{grid-column:1/-1;grid-row:8;margin:0}.release27-ui.action-mode .result26-note{grid-column:1/-1;grid-row:6;margin:0 0 8px;font-size:9px;line-height:1.3}.release27-ui.action-mode #panel:has(.result26-note) .result26-mark{height:90px;width:90px}.release27-ui.action-mode #panel:has(.result26-note) .result27-journey{display:none}.release27-ui.action-mode .panel26-difficulty .difficulty26{min-height:86px;padding:8px 3px}
}
@media(prefers-reduced-motion:no-preference){.release27-ui.action-mode .reward26-card{transition:border-color .15s,box-shadow .15s}.release27-ui.action-mode .reward26-card[aria-pressed=true] .reward27-picture>.art27{animation:reward27-reveal .3s ease-out}@keyframes reward27-reveal{from{filter:brightness(.75)}to{filter:brightness(1)}}}

/* Release28: a compact right-thumb cluster. 48px skills remain 45.6px while pressed. */
.release28-ui.action-mode .action-zone{right:max(16px,env(safe-area-inset-right));bottom:max(25px,calc(env(safe-area-inset-bottom) + 14px));width:184px;height:190px}
.release28-ui.action-mode .skill{width:48px;height:48px;left:auto;bottom:auto;top:auto;right:auto}
.release28-ui.action-mode #kick{left:auto;right:54px;top:54px;bottom:auto}
.release28-ui.action-mode #dash{left:auto;right:0;top:54px;bottom:auto}
.release28-ui.action-mode #storm{left:auto;right:54px;top:0;bottom:auto}
.release28-ui.action-mode #clone{left:auto;right:0;top:0;bottom:auto}
.release28-ui.action-mode #attack{right:0;left:auto;top:auto;bottom:0;width:80px;height:80px}
.release28-ui.action-mode #dodge{right:94px;left:auto;top:auto;bottom:3px;width:64px;height:64px}
.release28-ui.action-mode .action{transform-origin:center;transition:transform 85ms ease-out,filter 85ms ease-out,border-color .14s}
.release28-ui.action-mode .action.pressed{transform:scale(.95);filter:brightness(1.1);box-shadow:inset 0 0 0 2px #e0c79099,0 2px 7px #0004}
.release28-ui.action-mode .action .button-label{font-size:8px;bottom:7px}.release28-ui.action-mode #attack .button-label{font-size:10px;bottom:11px}

/* CombatHUD28 supplies real state and text; styling never disables game input. */
.release28-ui.action-mode .action[data-state28]>em{display:none}
.release28-ui.action-mode .action[data-state28].empty{opacity:1;filter:none}
.release28-ui.action-mode .action[data-state28] .control27-art{filter:none}
.release28-ui.action-mode .action[data-state28=cooldown] .control27-art{filter:saturate(.52) brightness(.73)}
.release28-ui.action-mode .action[data-state28=energy] .control27-art{filter:saturate(.48) brightness(.58)}
.release28-ui.action-mode .action[data-state28=spirit] .control27-art{filter:saturate(.76) brightness(.72)}
.release28-ui.action-mode .action[data-state28=ready]{border-color:#c9bf8cb3}
.release28-ui.action-mode #attack[data-state28=ready]{border-color:#dfc17f}
.release28-ui.action-mode .action[data-state28=energy]{border-color:#b59c6970}
.release28-ui.action-mode .action[data-state28=spirit]{border-color:#a393c48c}
.release28-ui.action-mode #clone[data-state28]:before{z-index:4;opacity:.7}
.release28-ui.action-mode #clone[data-state28].charged{box-shadow:inset 0 0 0 3px #14263288,0 0 7px #b8abc322}
.release28-ui.action-mode .cooldown28{position:absolute;inset:3px;z-index:3;display:grid;place-items:center;border-radius:50%;padding:0 0 6px;pointer-events:none;color:#fff4dc;font:600 15px/1 system-ui;font-variant-numeric:tabular-nums;font-style:normal;text-shadow:0 1px 4px #02060c,0 0 2px #02060c;background:none}
.release28-ui.action-mode .action[data-state28=cooldown] .cooldown28{background:conic-gradient(#04101bba calc(clamp(0,var(--cool28,0),1)*1turn),#04101b0f 0)}
.release28-ui.action-mode .action[data-state28=energy] .cooldown28{font-size:11px;color:#edcc8e;background:radial-gradient(ellipse at 50% 45%,#101c23b3 24%,transparent 63%)}
.release28-ui.action-mode .action[data-state28=spirit] .cooldown28{font-size:12px;color:#e4daf5;background:radial-gradient(ellipse at 50% 45%,#142039ad 22%,transparent 66%)}
.release28-ui.action-mode .action[data-state28=ready] .cooldown28{visibility:hidden}
.release28-ui.action-mode .action.ready28{border-color:#e1d2a0}
.release28-ui.action-mode .action.blocked28{border-color:#d5a172;box-shadow:inset 0 0 0 2px #d5a17266}
@media(max-width:360px){
 .release28-ui.action-mode .action-zone{right:max(12px,env(safe-area-inset-right));bottom:max(22px,calc(env(safe-area-inset-bottom) + 12px));width:184px;height:190px}
 .release28-ui.action-mode #move-zone{left:max(10px,env(safe-area-inset-left));width:110px;height:120px;bottom:max(21px,calc(env(safe-area-inset-bottom) + 11px))}
 .release28-ui.action-mode .skill{width:48px;height:48px}.release28-ui.action-mode .skill .button-label{font-size:8px;bottom:7px}
}
@media(orientation:landscape) and (max-height:550px){
 .release28-ui.action-mode .action-zone{right:max(28px,env(safe-area-inset-right));bottom:max(16px,calc(env(safe-area-inset-bottom) + 8px));width:178px;height:188px}
 .release28-ui.action-mode #attack{width:76px;height:76px}.release28-ui.action-mode #dodge{right:90px;width:64px;height:64px;bottom:3px}
 .release28-ui.action-mode #move-zone{left:max(24px,env(safe-area-inset-left));width:137px;height:129px;bottom:max(16px,calc(env(safe-area-inset-bottom) + 8px))}
}
@media(prefers-reduced-motion:no-preference){
 .release28-ui.action-mode #veil:not([hidden]) #panel-content[data-panel]{animation:panel28-enter .17s ease-out both}
 .release28-ui.action-mode #veil:not([hidden]) #panel-content[data-panel=reward] .reward26-card{animation:reward28-enter .2s ease-out backwards}
 .release28-ui.action-mode #panel-content[data-panel=reward] .reward26-card:nth-child(2){animation-delay:25ms}
 .release28-ui.action-mode #panel-content[data-panel=reward] .reward26-card:nth-child(3){animation-delay:50ms}
 .release28-ui.action-mode .action.ready28{animation:ready28-flash .4s ease-out}
 .release28-ui.action-mode .action.blocked28{animation:blocked28-flash .18s ease-out}
 @keyframes panel28-enter{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
 @keyframes reward28-enter{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
 @keyframes ready28-flash{0%{border-color:#e7dab0;box-shadow:inset 0 0 0 2px #e1d5a766,0 0 8px #c5d2b033}100%{border-color:#c9bf8cb3;box-shadow:inset 0 0 0 2px #d4c69000,0 0 0 #c5d2b000}}
 @keyframes blocked28-flash{0%{border-color:#edbf8c;box-shadow:inset 0 0 0 2px #d9a56fa6}100%{border-color:#b6a17a;box-shadow:inset 0 0 0 2px #d9a56f00}}
}
@media(prefers-reduced-motion:reduce){
 .release28-ui.action-mode .action{transition:none}
 .release28-ui.action-mode #panel-content,.release28-ui.action-mode .reward26-card,.release28-ui.action-mode .action.ready28,.release28-ui.action-mode .action.blocked28{animation:none}
}
