/* Information is revealed on demand, without covering the entire battlefield. */
[data-help-title]{-webkit-touch-callout:none;user-select:none}
.slot-help{position:fixed;z-index:1000;width:min(360px,calc(100vw - 20px));max-height:min(440px,70dvh);display:flex;flex-direction:column;background:linear-gradient(145deg,#24362f,#102021);border:1px solid #d2b174;border-top:3px solid #e5ca88;border-radius:8px;padding:10px 14px;box-shadow:0 12px 40px #000b,0 0 0 3px #172322;color:#f5edda}
.slot-help[hidden]{display:none}
.slot-help header{display:flex;align-items:center;gap:10px;border-bottom:1px solid #8c7849;padding-bottom:5px}
.slot-help strong{flex:1;font:700 19px Batang,serif;color:#ffe3a4}
.slot-help header button{width:44px;height:44px;min-width:44px;flex:0 0 auto;font-size:26px;line-height:1;padding:0;background:#152825;border-color:#8c7849}
.slot-help-body{overflow:auto;overscroll-behavior:contain;padding:10px 0 3px;scrollbar-width:thin}
.slot-help p{font-size:14px;line-height:1.7;margin:0 0 10px;word-break:keep-all;overflow-wrap:anywhere}
.slot-help>small{padding:8px 0 0;border-top:1px solid #8c784944;color:#c4bea9;font-size:12px}
.help-discover{font-size:12px;line-height:1.4;color:#b5bea9;margin:4px 0;white-space:normal}
.help-touch{display:none}
@media(hover:none),(pointer:coarse){.help-touch{display:inline}.help-mouse{display:none}}
.help-mark{width:15px;height:15px;flex:0 0 auto;color:#d0bb84;opacity:.9}
.help-info{min-height:44px;text-align:left;display:flex;gap:8px;align-items:center;justify-content:space-between}
.command-caption{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:6px}
.command-caption h2{font-size:14px!important;margin:0}
.slot-category button{min-height:100px;position:relative}
.slot-category small{font-size:12px}
.slot-subcategories button{position:relative;min-height:48px;padding:9px 28px}
.slot-subcategories .help-mark{position:absolute;right:10px;top:50%;transform:translateY(-50%)}
.slot-command-head{grid-template-columns:110px minmax(0,1fr);margin-bottom:6px}
.slot-command-title h2{white-space:nowrap;font-size:13px!important}
.slot-techniques{margin:6px 0;gap:5px}
.slot-techniques .skill-info{min-width:0;position:relative;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;min-height:62px;padding:10px 23px 10px 13px;background:#172e2c var(--paint-plate) center/100% 155% no-repeat;border:0;border-radius:0;gap:4px}
.slot-techniques .skill-info b{font-size:13px;line-height:1.35;color:#f4deb1;word-break:keep-all;overflow-wrap:anywhere}
.slot-techniques .skill-info>span{font-size:12px;line-height:1.3}
.slot-techniques .skill-info>.help-mark{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:13px;height:13px}
.slot-techniques.hero-techniques{grid-template-columns:repeat(2,minmax(0,1fr))}
.slot-techniques.hero-techniques{margin:4px 0}
.slot-techniques.hero-techniques .skill-info{min-height:44px;padding-top:6px;padding-bottom:6px}
.slot-techniques.slot-buff-techniques{grid-template-columns:repeat(4,minmax(0,1fr))}
.command-note{border:1px solid #8b754b;background:#172a26;color:#e5d4a7;padding:7px 10px;min-height:44px;min-width:0;width:100%;font-size:13px;gap:7px}
.command-note>b{flex:1;text-align:left;font-size:13px;word-break:keep-all}
.command-note>.ui-icon:first-child{width:19px;height:19px}
.slot-execute{position:static;padding:3px 0;margin-top:3px;background:transparent;border:0;gap:8px}
.hero-techniques+.slot-execute{padding:0}
.slot-execute>.slot-primary{min-width:160px;min-height:48px;flex:0 0 auto}
.slot-execute>.command-note{min-width:0;flex:1;white-space:normal}
.slot-execute>.help-discover{display:block;font-size:12px}
.army-info-heading{display:flex!important;align-items:center;justify-content:space-between;gap:8px;margin:2px 0 8px}
.army-info-heading h3{margin:0}
.army-info-heading>.help-info,.painted-loadout>.help-info{min-width:44px;width:44px;min-height:44px;padding:8px;justify-content:center;background:#182b28;border:1px solid #897449}
.painted-loadout{padding:12px;align-items:center;gap:5px}
.painted-loadout>.command-art{width:30px;height:30px}
.painted-loadout select{min-height:44px}
.slot-army .army-utility{display:flex;justify-content:flex-start;width:100%;text-align:left;min-height:72px;padding:10px 14px}
.army-utility>.army-utility-copy{flex:1;display:grid;gap:5px;min-width:0}
.army-utility b{font:700 19px Batang,serif;color:#f5dfaa}
.army-utility>.ui-icon{margin-left:auto}
.slot-army .slot-items>div:not(.army-info-heading)>button{min-height:98px;gap:6px}
.auto-ultimate-status{text-align:center;color:#e8cc83;padding:20px}
.auto-ultimate-status>b{font:700 23px Batang,serif}
.auto-ultimate-status p{font-size:14px;margin:9px 0 0}
@media(max-width:700px){
 .help-mouse{display:none}.help-touch{display:inline}
 .command-caption{gap:5px}.command-caption h2{font-size:12px!important}.help-discover{font-size:12px}
 .slot-command-head{grid-template-columns:75px minmax(0,1fr);gap:5px}
 .slot-command-title{gap:4px}.slot-command-title button{padding:7px}.slot-command-title h2{font-size:12px!important}
 .slot-subcategories{gap:4px}.slot-subcategories button{padding:8px 21px 8px 9px;min-height:48px}.slot-subcategories b{font-size:14px}
 .slot-subcategories .help-mark{right:5px;width:13px;height:13px}
 .slot-techniques,.slot-techniques.slot-buff-techniques{grid-template-columns:repeat(2,minmax(0,1fr))}
 .slot-techniques .skill-info{min-height:50px;padding:8px 22px 8px 12px}
 .slot-techniques .skill-info b{font-size:12px}
 #slot-commands{max-height:270px}
 .slot-execute{flex-wrap:nowrap}.slot-execute>.slot-primary{width:auto;min-width:125px;padding:8px 12px;font-size:14px}.slot-execute>.command-note{width:auto;font-size:12px;padding:6px}
 .slot-execute>.command-note>b{font-size:12px}.slot-execute>.command-note>.ui-icon:first-child{display:none}
 .slot-execute>.help-discover{font-size:12px}
 .painted-loadout{padding:10px 8px;gap:4px}.painted-loadout>.command-art{display:none}
 .slot-army .painted-loadout-grid{grid-template-columns:1fr}
 .army-top .help-discover{display:block}
}
/* Gold-leaf impact over the established painted cutscene, then the attack plays. */
.hero-jackpot-burst{position:absolute;inset:0;z-index:8;overflow:hidden;pointer-events:none;background:#142420;isolation:isolate;animation:jackpot-arrive .26s ease-out both}
.jackpot-painted-hero{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:65% 30%;opacity:.65;animation:jackpot-art 1.15s ease-out both}
.jackpot-gold-light{position:absolute;inset:-40%;background:radial-gradient(ellipse,#fff4cfbd 0,#edc66b66 16%,#94733822 40%,transparent 64%);mix-blend-mode:screen;animation:jackpot-light 1.15s ease-out both}
.jackpot-stamp{position:absolute;inset:10% 10%;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:20px;background:linear-gradient(90deg,transparent,#16251fce 32%,#16251fce 68%,transparent),var(--paint-plate) center/100% 100% no-repeat;animation:jackpot-stamp .45s cubic-bezier(.15,.8,.2,1) both;text-shadow:0 3px 5px #000}
.jackpot-stamp .command-art{width:62px;height:62px;flex:0 0 auto}
.jackpot-stamp small{font:700 13px Batang,serif;color:#ffeac3;letter-spacing:5px;margin:4px 0}
.jackpot-stamp strong{font:700 clamp(30px,6vw,76px) Georgia,serif;letter-spacing:8px;color:#ffdf87;text-shadow:0 2px #956322,0 0 20px #f8c65b70;line-height:1.1}
.jackpot-stamp>b{font:700 clamp(16px,2.4vw,28px) Batang,serif;color:#fff0bc;margin-top:6px}
.jackpot-gold-leaves{position:absolute;inset:0;pointer-events:none}
.jackpot-gold-leaves i{position:absolute;left:50%;top:50%;width:8px;height:17px;background:linear-gradient(45deg,#ac7d24,#fff1b1,#c29748);border-radius:70% 5% 70% 5%;box-shadow:0 0 5px #f3d690;animation:jackpot-leaf .95s ease-out both}
.jackpot-celebrating{filter:drop-shadow(0 0 12px #e4bf62)}
.auto-reel-sealed{animation:reel-seal .25s ease-out both}
@keyframes jackpot-arrive{from{opacity:0}to{opacity:1}}
@keyframes jackpot-art{from{transform:scale(1.06)}to{transform:scale(1)}}
@keyframes jackpot-light{0%{transform:scale(.6);opacity:.3}25%{transform:scale(1);opacity:1}100%{transform:scale(1.2);opacity:.3}}
@keyframes jackpot-stamp{from{transform:scale(1.15);opacity:0}to{transform:scale(1);opacity:1}}
@keyframes jackpot-leaf{from{transform:rotate(var(--angle)) translateY(-30px);opacity:1}to{transform:rotate(var(--angle)) translateY(calc(-1 * var(--reach))) rotate(90deg);opacity:0}}
@keyframes reel-seal{from{box-shadow:inset 0 0 24px #fff5bd;filter:brightness(1.5)}to{box-shadow:inset 0 0 9px #d6ac4c;filter:brightness(1)}}
.hero-jackpot-burst.reduced,.reduced .jackpot-stamp,.reduced .jackpot-painted-hero{animation:none}
.reduced .jackpot-gold-light,.reduced .jackpot-gold-leaves{display:none}
@media(prefers-reduced-motion:reduce){.hero-jackpot-burst *,.hero-jackpot-burst,.auto-reel-sealed{animation:none!important}.jackpot-gold-light,.jackpot-gold-leaves{display:none}}
@media(max-width:700px){.jackpot-stamp{inset:12% 4%;padding:12px}.jackpot-stamp strong{letter-spacing:3px;font-size:39px}.jackpot-stamp .command-art{width:55px;height:55px}}
