:root{--acid:#d4ff00;--green:#728900;--paper:#efefea;--ink:#161716;--muted:#65665f;--line:#d0d0c8;--dark:#11120f}
body.combat-theme{background:#efefea;color:#151613}.combat-theme .platform-bar{display:none}.combat-theme .game-header{background:#11120f;color:#fff;border-bottom:3px solid #d4ff00;top:0}.combat-theme .game-nav{height:82px;max-width:1700px}.combat-theme .game-brand img{width:83px;height:58px}.combat-theme .game-brand>span{font-size:17px;font-weight:900}.combat-theme .game-brand small{color:#d4ff00}.combat-theme .game-nav nav>button{color:#f3f3ec;font-size:14px;font-weight:700}.combat-theme .game-nav nav>button.selected{color:#d4ff00}.combat-theme .game-start{border-radius:0;background:#d4ff00;color:#111;padding:14px 22px;font-weight:900;clip-path:polygon(0 0,100% 0,100% 75%,90% 100%,0 100%)}.combat-theme .mega-menu{top:82px;background:#171815;color:#fff}.combat-theme .mega-inner a{color:#b9beb0}.combat-theme .site-footer{background:#11120f;color:#999d8f;border-top:1px solid #33372d}.combat-theme .footer-logos{color:white}.combat-theme .page-control{background:#111;color:#d4ff00}.combat-theme dialog{border:3px solid #111;border-radius:0}.combat-theme .modal-bar{background:#d4ff00;color:#111}.combat-theme .solid-button{border-radius:0;background:#161716;color:#d4ff00}.combat-theme .page-heading h1,.combat-theme .section-title h2{font-weight:900;letter-spacing:-1px}.combat-theme .directory-card,.combat-theme .wiki-card,.combat-theme .wiki-category-card,.combat-theme .wiki-hero{border-radius:0}.combat-theme .wiki-body{color:#252823}.combat-theme .wiki-article-body p{font-size:18px}
.combat-hero{position:relative;min-height:690px;height:calc(100svh - 82px);max-height:1000px;background:#e8e9e1;overflow:hidden;isolation:isolate}.battle-grid{position:absolute;inset:0;background-image:radial-gradient(#90948270 .8px,transparent .8px);background-size:7px 7px;z-index:-2}.battle-orbit{position:absolute;width:690px;height:690px;border:110px solid #d4ff00;right:5%;top:-80px;transform:rotate(-15deg);border-radius:50%;z-index:-1}.battle-word{position:absolute;left:30%;top:14%;font:italic 900 clamp(120px,20vw,330px)/1 Impact,'Arial Black',sans-serif;letter-spacing:-12px;color:transparent;-webkit-text-stroke:2px #21241b;transform:rotate(-10deg);opacity:.35;z-index:-1}.hero-serial{position:absolute;left:4%;right:4%;top:22px;font:700 10px monospace;letter-spacing:2px;border-bottom:1px solid #151613;padding-bottom:12px}.hero-serial span{float:right}.combat-copy{position:relative;margin-left:7%;padding-top:130px;z-index:3;max-width:580px}.combat-kicker{font-size:14px;font-weight:900;letter-spacing:5px;display:inline-block;background:#111;color:#d4ff00;padding:5px 12px;transform:rotate(-3deg)}.combat-copy h1{font-family:'Microsoft YaHei',sans-serif;font-size:clamp(46px,5.2vw,88px);font-weight:1000;letter-spacing:-4px;line-height:1.18;margin:23px 0;transform:skew(-6deg);text-shadow:3px 3px 0 #e8e9e1}.combat-copy h1 em{font-style:normal;background:#d4ff00;box-shadow:9px 0 #d4ff00,-5px 0 #d4ff00}.combat-intro{font-size:15px;line-height:1.9;font-weight:600;margin:25px 0}.combat-actions{display:flex;align-items:center;gap:18px}.acid-button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;background:#d4ff00;color:#111;font-size:17px;font-weight:900;padding:20px 26px;border:2px solid #111;box-shadow:5px 5px 0 #111;transition:transform .2s,box-shadow .2s}.acid-button:hover{transform:translate(3px,3px);box-shadow:2px 2px 0 #111}.acid-button b{font-size:24px}.circle-play{width:58px;height:58px;border:2px solid #111;border-radius:50%;background:#111;color:#d4ff00;font-size:22px;transition:.2s}.circle-play:hover{background:#d4ff00;color:#111;transform:rotate(-10deg)}.play-label{font-size:12px;font-weight:900}.play-label small{font:9px monospace}.hero-wiki{display:inline-block;font-size:12px;font-weight:700;margin-top:30px;border-bottom:1px solid #111}.combat-squad{position:absolute;right:0;bottom:10px;width:57%;height:90%;pointer-events:none}.combat-squad img{position:absolute;object-fit:contain;object-position:bottom;filter:drop-shadow(6px 10px 0 #171b1d40);max-height:100%}.squad-front{height:100%;width:68%;bottom:-3%;left:14%;z-index:2;transform:rotate(-7deg)}.squad-back{height:82%;width:57%;bottom:14%;left:-7%;transform:rotate(-13deg)}.squad-side{height:85%;width:60%;bottom:5%;right:-8%;transform:rotate(10deg)}.hero-sticker{position:absolute;right:3%;top:13%;background:#111;color:#fff;padding:20px;transform:rotate(9deg);z-index:3;font-size:12px;line-height:1.3;border:2px solid #e9e9e1;box-shadow:5px 5px 0 #111}.hero-sticker strong{display:block;color:#d4ff00;font:italic 900 32px/1 Impact,'Arial Black',sans-serif;margin:7px 0}.hero-sticker span{font-size:9px}.scroll-cue{position:absolute;bottom:25px;left:4%;font:10px monospace;letter-spacing:2px;z-index:4}.scroll-cue b{font-size:24px;margin-left:15px}.hero-corner{position:absolute;bottom:25px;right:3%;font-size:10px;z-index:4;background:#d4ff00;padding:3px 9px}.combat-ticker{overflow:hidden;background:#111;color:#d4ff00;border-top:4px solid #d4ff00;padding:13px 0;font:italic 900 28px Impact,'Arial Black',sans-serif;white-space:nowrap;letter-spacing:2px}.combat-ticker span{display:block;animation:battle-ticker 30s linear infinite;width:max-content}@keyframes battle-ticker{to{transform:translateX(-40%)}}
.combat-section{padding:90px max(6%,calc((100% - 1480px)/2))}.combat-section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:35px;gap:20px}.combat-section-heading small,.combat-wiki small{font:700 11px monospace;letter-spacing:2px}.combat-section-heading h2{font-size:42px;font-weight:1000;letter-spacing:-2px;line-height:1.1;margin:12px 0 0}.combat-section-heading h2 span{font:italic 900 54px Impact,'Arial Black',sans-serif;margin-left:20px;letter-spacing:-1px}.combat-section-heading>a{font-size:12px;font-weight:900;border-bottom:2px solid;padding:8px 0;white-space:nowrap}.combat-news-layout{display:grid;grid-template-columns:1fr 1fr;gap:45px}.combat-feature{position:relative;height:350px;background:#111;overflow:hidden;border:3px solid #111;box-shadow:8px 8px 0 #d4ff00}.combat-feature img{width:100%;height:100%;object-fit:cover}.combat-feature>span{position:absolute;bottom:0;left:0;right:0;color:#fff;padding:45px 25px 23px;background:linear-gradient(transparent,#111e)}.combat-feature small{color:#d4ff00;font-size:10px}.combat-feature strong{display:block;font-size:27px;margin:8px 0}.combat-feature b{font-size:11px}.combat-news-tabs{display:flex;border-bottom:2px solid #111;gap:5px}.combat-news-tabs button{padding:10px 24px;font-weight:900}.combat-news-tabs button.active{background:#111;color:#d4ff00}#combat-news-list>a{position:relative;display:block;padding:16px 25px 16px 0;border-bottom:1px solid #c3c5ba}#combat-news-list small{display:block;font:10px monospace;color:#73776c}#combat-news-list strong{font-size:14px;display:block;margin-top:4px}#combat-news-list b{position:absolute;right:0;top:24px}#combat-news-list>a:hover{color:#657800}
.combat-roster{background:#12130f;color:#fff;overflow:hidden;position:relative}.combat-roster .combat-section-heading{position:relative;z-index:2}.combat-roster .combat-section-heading small{color:#d4ff00}.roster-stage{display:grid;grid-template-columns:1fr 1fr;position:relative;min-height:530px}.roster-number{position:absolute;left:-40px;top:0;font:italic 900 440px/1 Impact,sans-serif;color:#ffffff08}.roster-visual{position:relative;height:530px;display:flex;justify-content:center}.roster-visual>img{height:100%;width:100%;object-fit:contain;position:relative;filter:drop-shadow(10px 10px #0005)}.roster-target{position:absolute;inset:10% 6%;border:38px solid #d4ff00;transform:rotate(-12deg);background:repeating-linear-gradient(-45deg,transparent 0 8px,#d4ff0020 8px 9px)}.roster-copy{padding:55px 25px 20px 60px;align-self:center}.roster-copy>small{color:#d4ff00;font-size:14px;letter-spacing:3px}.roster-copy h3{font-size:76px;line-height:1.2;letter-spacing:-3px;margin:15px 0;font-weight:1000;transform:skew(-6deg)}.character-loadout{font-weight:900;font-size:20px}.character-loadout span{font-size:13px;color:#a8ac9f}.roster-copy p{max-width:500px;color:#bfc3b8;font-size:15px;line-height:2;margin:25px 0}.roster-copy>div:last-child{display:flex;align-items:center;gap:30px}.roster-copy>div:last-child>a{font-size:12px;border-bottom:1px solid #aaa}.roster-tabs{display:flex;gap:10px;margin-top:25px;overflow-x:auto;padding-bottom:12px}.roster-tabs button{position:relative;min-width:90px;flex:1;padding:8px;background:#25271f;border:1px solid #464a39;color:#b7bca9;transition:.2s;overflow:hidden}.roster-tabs img{width:72px;height:72px;object-fit:contain;margin:auto}.roster-tabs span{font-size:12px;font-weight:900;display:block}.roster-tabs small{position:absolute;top:4px;left:5px;font:9px monospace}.roster-tabs button[aria-pressed=true]{background:#d4ff00;color:#111;transform:translateY(-4px);border-color:#d4ff00}.roster-tabs button:hover{border-color:#d4ff00}
.combat-footage{background:#dedfd5}.combat-videos{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.combat-videos>button{text-align:left;padding:0}.combat-videos>button>div{position:relative;border:3px solid #111;overflow:hidden;aspect-ratio:16/9}.combat-videos img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.combat-videos>button:hover img{transform:scale(1.04)}.combat-videos button>div>span{position:absolute;inset:0;display:grid;place-content:center;color:#d4ff00;font-size:42px;text-shadow:0 2px 10px #000}.combat-videos small{position:absolute;bottom:0;left:0;background:#111;color:#d4ff00;padding:4px 10px;font:9px monospace}.combat-videos strong{display:inline-block;margin-top:14px;font-size:19px}.combat-videos i{font-size:12px;font-style:normal}.combat-videos button>b{float:right;margin-top:20px;font:10px monospace}.combat-wiki{display:grid;grid-template-columns:1fr 1fr;gap:60px;background:#f2f2ec}.combat-wiki h2{font-size:45px;line-height:1.35;font-weight:1000;letter-spacing:-2px;margin:20px 0}.combat-wiki p{font-size:15px;color:#62665a;margin:20px 0 30px}.combat-guide-links{align-self:center}.combat-guide-links a{display:flex;gap:25px;padding:25px 12px;border-top:2px solid #111;font-size:18px;font-weight:900}.combat-guide-links span{font:italic 900 25px Impact,sans-serif;color:#707865}.combat-guide-links b{margin-left:auto}.combat-guide-links a:hover{background:#d4ff00}.combat-download{text-align:center;padding:90px 20px;background:#d4ff00;border-top:5px solid #111;background-image:radial-gradient(#0002 .7px,transparent .7px);background-size:6px 6px}.combat-download>small{font:700 11px monospace;letter-spacing:3px}.combat-download h2{font-size:64px;font-weight:1000;transform:skew(-7deg);letter-spacing:-3px;margin:20px 0 35px}.combat-download .acid-button{background:#111;color:#d4ff00;box-shadow:5px 5px #d4ff00,7px 7px #111}.combat-download p{font:10px monospace;letter-spacing:2px;margin-top:25px}
@media(min-width:1800px){.combat-squad{right:5%;width:55%}}@media(max-width:1100px){.combat-theme .game-nav{width:94%;gap:12px}.combat-theme .game-nav nav{margin-left:0}.combat-theme .game-nav nav>button{font-size:12px;padding:0 5px}.combat-copy{margin-left:5%;max-width:480px}.combat-squad{width:64%;right:-9%;opacity:.95}.combat-copy h1{font-size:62px}.hero-sticker{right:3%;top:8%}.combat-section{padding:65px 5%}.combat-section-heading h2 span{font-size:42px}.roster-copy{padding-left:25px}.combat-news-layout{gap:25px}.combat-news-tabs button{padding:10px 15px}.combat-videos i{display:block}.combat-wiki{gap:30px}}
@media(max-width:760px){.combat-theme .game-nav{height:70px}.combat-theme .game-brand img{width:65px}.combat-theme .game-brand>span{font-size:14px}.combat-theme .game-nav nav{display:none}.combat-theme .game-start{margin-left:auto;padding:11px;font-size:10px}.combat-theme .menu-button{display:block}.combat-theme .mega-menu{top:70px}.combat-hero{height:830px;min-height:0;max-height:none}.hero-serial{font-size:8px;letter-spacing:0;top:17px}.hero-serial span{display:none}.combat-copy{padding-top:80px;margin-left:7%;max-width:90%}.combat-kicker{font-size:11px}.combat-copy h1{font-size:54px;letter-spacing:-3px;margin:15px 0}.combat-intro{font-size:12px;margin:20px 0}.combat-squad{height:47%;width:95%;right:-5%;bottom:28px}.battle-orbit{width:450px;height:450px;top:370px;right:-20%;border-width:65px}.battle-word{font-size:145px;left:5%;top:51%}.hero-sticker{top:auto;bottom:62px;left:6%;right:auto;padding:10px;transform:rotate(-9deg)}.hero-sticker strong{font-size:25px}.hero-sticker>span{display:none}.acid-button{padding:14px 20px;font-size:14px}.circle-play{height:48px;width:48px;font-size:17px}.combat-actions{gap:14px}.hero-wiki{font-size:11px;margin-top:22px}.hero-corner{display:none}.scroll-cue{font-size:8px;bottom:13px}.combat-ticker{font-size:20px;padding:10px 0}.combat-section{padding:55px 6%}.combat-section-heading{align-items:center}.combat-section-heading h2{font-size:30px;letter-spacing:-1px}.combat-section-heading h2 span{display:block;margin:5px 0 0;font-size:35px}.combat-section-heading small{font-size:8px;letter-spacing:1px}.combat-section-heading>a{font-size:10px}.combat-news-layout{grid-template-columns:1fr;gap:30px}.combat-feature{height:250px}.combat-feature strong{font-size:22px}.combat-news-tabs button{flex:1;padding:10px}.roster-stage{grid-template-columns:1fr}.roster-visual{height:380px}.roster-copy{padding:25px 0}.roster-copy h3{font-size:53px}.roster-copy p{font-size:14px}.roster-number{font-size:290px}.roster-tabs{margin-top:5px}.roster-tabs button{min-width:76px}.roster-tabs img{height:57px}.combat-videos{grid-template-columns:1fr;gap:30px}.combat-videos i{display:inline}.combat-videos strong{font-size:17px}.combat-wiki{grid-template-columns:1fr;gap:35px}.combat-wiki h2{font-size:35px}.combat-guide-links a{font-size:16px;padding:20px 5px}.combat-download{padding:60px 20px}.combat-download h2{font-size:40px;letter-spacing:-2px}.combat-theme .wiki-article-body p{font-size:17px}}
@media(prefers-reduced-motion:reduce){.combat-ticker span{animation:none}.combat-theme *{scroll-behavior:auto!important;transition:none!important}}

/* Source portraits have a maximum alpha of 102/255. Restore intended opacity at render time. */
img[src="assets/Rabbit_W.webp"],img[src="assets/Dragon_W.webp"],img[src="assets/Dog_M.webp"],img[src="assets/Chipmunk_W.webp"],img[src="assets/Sheep_W.webp"],img[src="assets/Snake_W.webp"],img[src="assets/LeopardCat_M.webp"],img[src="assets/Pangolin_M.webp"],img[src="assets/GoldenEagle_W.webp"]{filter:url(#character-alpha) drop-shadow(5px 8px 0 #1113)}

/* One cohesive generated cutout; contain preserves every character and weapon. */
.combat-squad{left:43%;right:1%;top:66px;bottom:42px;width:auto;height:auto;opacity:1;overflow:visible;display:flex;align-items:center;justify-content:center}
.combat-squad .squad-art{position:static;display:block;inset:auto;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;object-position:center;transform:none;filter:none;opacity:1;mix-blend-mode:normal}
@media(min-width:1800px){.combat-squad{left:43%;right:3%;width:auto}}
@media(min-width:761px) and (max-width:1100px){.combat-squad{left:44%;right:0;top:100px;bottom:45px;width:auto;opacity:1}.combat-copy{max-width:43%}.combat-copy h1{font-size:clamp(43px,5.5vw,60px)}.combat-actions{gap:10px}.combat-actions .acid-button{gap:18px;padding:16px 19px}.combat-actions .play-label{display:none}}
@media(max-width:760px){.combat-hero{height:auto;min-height:0;max-height:none;padding-bottom:45px}.combat-copy{max-width:88%;padding-bottom:8px}.combat-squad{position:relative;inset:auto;width:100%;height:auto;aspect-ratio:1;max-width:640px;margin:4px auto 0;display:block;opacity:1}.combat-squad .squad-art{width:100%;height:auto;max-height:none;aspect-ratio:1;object-fit:contain}.hero-sticker{display:none}.battle-orbit{top:auto;bottom:25px}.battle-word{top:auto;bottom:15%;opacity:.2}}

/* Complete profession portraits: reserve space for full weapons and both feet. */
#battle-characters .roster-stage{min-height:650px;align-items:center}
#battle-characters .roster-visual{height:clamp(580px,48vw,720px);padding:20px 18px;overflow:visible;isolation:isolate;align-items:center}
#battle-characters .roster-visual>img{display:block;position:relative;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;object-position:center;filter:none;transform:none;opacity:1;z-index:1}
#battle-characters .roster-target{inset:16% 8%;border-width:25px;opacity:.72;z-index:0}
#battle-characters .roster-visual>img.portrait-loading{opacity:.2}
#battle-characters .roster-visual>img.portrait-ready{animation:profession-arrive .25s ease-out both}
.portrait-load-status{position:absolute;bottom:24px;left:50%;transform:translateX(-50%);padding:7px 12px;max-width:90%;width:max-content;background:#171d13ed;border:1px solid #d4ff0080;color:#d4ff00;font-size:11px;line-height:1.7;text-align:center;z-index:3}
@keyframes profession-arrive{from{opacity:.65;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1100px) and (min-width:761px){#battle-characters .roster-stage{grid-template-columns:1.05fr 1fr}#battle-characters .roster-visual{height:600px;padding:18px 4px}#battle-characters .roster-copy{padding:30px 0 25px 25px}}
@media(max-width:760px){#battle-characters .roster-stage{min-height:0;grid-template-columns:1fr}#battle-characters .roster-visual{height:clamp(430px,140vw,620px);padding:16px 0}#battle-characters .roster-target{inset:18% 6%;border-width:20px}#battle-characters .roster-copy{padding:20px 0 25px}}
@media(prefers-reduced-motion:reduce){#battle-characters .roster-visual>img.portrait-ready{animation:none}}

/* Share the complete profession art across character profiles and directory cards. */
.combat-theme .character-detail{border-radius:0;border-top:4px solid #d4ff00}
.combat-theme .character-detail-art{height:clamp(580px,50vw,720px);min-height:0;padding:24px;background:radial-gradient(ellipse at center,#303627,#11150e 75%);align-items:center;overflow:hidden}
.combat-theme .character-detail-art>img{display:block;width:100%;height:100%;max-height:100%;object-fit:contain;object-position:center;filter:none;transform:none}
.combat-theme .character-detail-art>span{color:#d4ff001c;pointer-events:none}
.combat-theme .character-detail-copy{align-self:center}
.combat-theme .character-detail-copy h2{font-weight:900}
.combat-theme .character-detail-copy>p{font-size:16px;line-height:2;color:#535d4b}
.combat-theme .directory-portrait{height:360px;padding:16px;background:radial-gradient(ellipse at center,#303627,#11150e 80%)}
.combat-theme .directory-portrait>img{position:static;display:block;width:100%;height:100%;object-fit:contain;object-position:center;filter:none;transform:none}
.combat-theme .directory-card:hover .directory-portrait>img{transform:none}
.combat-theme .directory-portrait>span{background:#111b;color:#d4ff00;border-color:#d4ff0077;border-radius:0}
@media(max-width:760px){.combat-theme .character-detail{grid-template-columns:1fr}.combat-theme .character-detail-art{height:clamp(430px,145vw,620px);min-height:0;padding:18px}.combat-theme .character-detail-art>img{height:100%;width:100%;object-fit:contain}.combat-theme .directory-portrait{height:260px;padding:12px}.combat-theme .character-detail-copy>p{font-size:15px}}
