@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@400;500;600;700;800;900&display=swap');
:root{color-scheme:dark;--bg:#171a18;--panel:#232722;--line:#3b4037;--ink:#eee8d8;--muted:#a5ad9d;--gold:#dfbb72;--green:#9eb995;--danger:#e8a18a}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:'Noto Sans KR',sans-serif;font-size:14px;background-image:radial-gradient(ellipse at 70% 0,#3d3c2b66,transparent 60%)}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,select{border:1px solid #4a5044;background:#30372d;color:var(--ink);border-radius:5px;min-height:44px;padding:10px 13px}button{cursor:pointer;transition:background .15s,transform .15s}button:hover:not(:disabled){background:#424c39;border-color:#a7b28c}button:active:not(:disabled){transform:translateY(1px)}button:disabled{opacity:.4;cursor:not-allowed}button:focus-visible,a:focus-visible,summary:focus-visible,select:focus-visible{outline:2px solid var(--gold);outline-offset:4px}button.primary{background:var(--gold);color:#25251b;border-color:var(--gold);font-weight:800}button.primary:hover:not(:disabled){background:#efd09b}small{font-size:11px;font-weight:400}.site-nav{max-width:1200px;margin:auto;height:74px;display:flex;align-items:center;justify-content:space-between;padding:0 24px;font-size:12px;border-bottom:1px solid var(--line);letter-spacing:1px}.site-nav b{color:var(--gold)}.site-nav>a:last-child{color:var(--muted);letter-spacing:0}main{max-width:1200px;margin:auto;padding:40px 24px}.hero{display:flex;justify-content:space-between;align-items:center;margin-bottom:29px}.eyebrow{font-size:10px;letter-spacing:2px;color:var(--gold);font-weight:700;margin:0 0 10px}h1{font-size:38px;letter-spacing:-2px;margin:0;font-weight:900}h1 span{font-size:14px;font-weight:500;letter-spacing:-.3px;color:var(--muted);margin-left:12px}.intro{color:var(--muted);margin:10px 0 0;font-size:13px}.save-state{font-size:11px;color:var(--green);padding:8px 12px;border:1px solid #4a5641;border-radius:30px;max-width:260px}.resource-bar{background:#292d26;border:1px solid var(--line);border-bottom:0;display:grid;grid-template-columns:1.3fr 1fr 1fr .6fr;padding:20px 24px;border-radius:8px 8px 0 0}.resource-bar>div{padding-left:24px;border-left:1px solid var(--line)}.resource-bar>div:first-child{padding:0;border:0}.resource-bar span{display:block;font-size:10px;color:var(--muted);margin-bottom:4px}.resource-bar strong{font-size:21px;letter-spacing:1px}.resource-bar strong b{font-weight:inherit}.gold{color:var(--gold)}.main-grid{display:grid;grid-template-columns:minmax(0,2.3fr) minmax(260px,1fr);border:1px solid var(--line);border-radius:0 0 8px 8px;overflow:hidden;background:var(--panel)}.scene-panel{min-width:0}.panel-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:15px 20px;border-bottom:1px solid var(--line)}.panel-heading h2{font-size:13px;margin:0;font-weight:700}.panel-heading>span{font-size:10px;color:var(--muted);letter-spacing:.5px;margin:0}.scene{position:relative;background:#9a7950;line-height:0}#scene{width:100%;height:auto;display:block;image-rendering:pixelated;aspect-ratio:720/380}.scene-caption{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#171a18df);line-height:1.5;padding:26px 18px 13px;display:flex;justify-content:space-between;font-size:11px;color:#f2e4c8;text-shadow:0 1px 3px #000}.live-dot{color:#ccddad;font-size:10px}.fighter-summary{padding:18px 20px 8px;display:flex;justify-content:space-between;align-items:center;gap:8px}.fighter-summary .eyebrow{font-size:8px;letter-spacing:1.5px}.fighter-summary h2{font-size:21px;margin:3px 0}.fighter-summary small{color:var(--muted);margin-left:8px;font-size:11px}.condition{background:#394633;color:#c3d8b5;font-size:10px;border-radius:3px;padding:6px 9px;white-space:nowrap}.condition.bad{background:#593e32;color:#f1b69f}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding:12px 20px}.stat-top{display:flex;justify-content:space-between;font-size:11px;color:var(--muted);margin-bottom:7px}.stat-top b{color:var(--ink)}.meter{height:4px;background:#41463c;overflow:hidden;border-radius:3px}.meter i{display:block;height:100%;background:var(--gold);transition:width .4s}.fatigue-row{padding:3px 20px 0;display:flex;gap:13px;align-items:center}.fatigue-row>span{font-size:10px;color:var(--muted);white-space:nowrap}.fatigue-row b{font-weight:500;margin-left:8px}.fatigue-row .meter{flex:1}.fatigue-row .meter i{background:#ac8c70}.equipment-line{font-size:10px;color:var(--muted);padding:0 20px;margin:13px 0 20px}.offer-panel{border-left:1px solid var(--line);background:#20241f;min-width:0}#offerContent{padding:22px;min-height:390px}.offer-empty{border:1px dashed #525844;margin:8px 0 25px;padding:30px 16px;text-align:center;background:#292e24}.offer-symbol{font-family:Georgia,serif;font-size:42px;color:var(--gold);display:block;margin-bottom:10px}.offer-empty h3{font-size:16px;margin:0 0 12px}.offer-empty p,.offer-help{color:var(--muted);font-size:12px;line-height:1.9}.offer-help strong{color:var(--gold)}.refusal{font-size:11px;border-top:1px solid var(--line);padding-top:16px;margin-top:18px;color:var(--muted)}.offer-kicker{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:var(--gold)}.risk{padding:4px 7px;background:#4e4630;border-radius:3px;color:#efd795}.risk.danger{color:#ffb499;background:#593d31}.opponent{font-size:19px;margin:16px 0 7px;line-height:1.5}.opponent-detail{font-size:11px;color:var(--muted);line-height:1.9}.comparison{display:flex;gap:8px;margin:20px 0}.comparison>div{flex:1;background:#2c3228;padding:10px;font-size:10px;color:var(--muted)}.comparison strong{display:block;font-size:24px;color:var(--ink);margin-top:4px}.reward{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:14px 0;font-size:12px}.reward b{color:var(--gold)}.tactic-label{font-size:11px;color:var(--muted);display:block;margin-bottom:7px}select{width:100%;margin-bottom:8px}.tactic-hint{font-size:10px;color:var(--muted);line-height:1.7;margin:0 0 12px}.offer-buttons{display:grid;gap:8px}.notice{background:#30382980;border-left:2px solid #80916b;color:#c4cdb8;padding:12px 15px;font-size:12px;line-height:1.7;margin:16px 0}.notice.error{color:#f4c0a8;border-color:#db9d7f}.management-grid{display:grid;grid-template-columns:1.15fr 1.15fr 1fr;gap:14px}.management{background:var(--panel);border:1px solid var(--line);border-radius:6px;min-width:0;overflow:hidden;padding-bottom:14px}.management .panel-heading{padding:16px}.management h2{color:var(--gold);font-size:11px}.management h2 span{color:var(--ink);font-size:13px;margin-left:9px}.management .panel-heading>span{font-size:9px}.train-grid,.daily-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px}.train-grid button,.daily-grid button{padding:10px 8px;text-align:left}.train-grid b,.daily-grid b{display:block;font-size:12px;margin-bottom:5px}.train-grid small,.daily-grid small{display:block;color:var(--muted);font-size:9px}.daily-grid{margin-top:0}.wide{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:0 14px;width:calc(100% - 28px);font-size:11px;text-align:left}.wide small{display:block;color:var(--muted);font-size:9px;margin-top:4px}.wide>b{color:var(--gold);white-space:nowrap;font-size:11px}.weapon-tabs{display:flex;gap:7px;margin:14px}.weapon-tabs button{flex:1;padding:6px;font-size:11px}.weapon-tabs button.selected{border-color:var(--gold);color:var(--gold);background:#46432e}.gear-row{display:flex;align-items:center;gap:10px;margin:0 14px 12px;padding-bottom:12px;border-bottom:1px solid var(--line)}.gear-row canvas{width:40px;height:40px;background:#1b201a;border-radius:5px;image-rendering:pixelated;flex-shrink:0}.gear-row>div{flex:1;min-width:0}.gear-row strong{font-size:11px;display:block}.gear-row small{font-size:8px;color:var(--muted);display:block;margin-top:6px}.gear-row button{font-size:10px;padding:6px 8px;color:var(--gold);min-width:54px}.hint{font-size:9px;color:var(--muted);line-height:1.8;margin:0 14px}.management #upgradeFacility{margin-top:14px}.history{padding:0;margin:14px 15px 0;list-style:none;max-height:166px;overflow:auto}.history li{font-size:10px;line-height:1.7;color:var(--muted);padding:7px 0;border-bottom:1px solid #343b30}.history li:first-child{color:#d4ddc5}.save-tools{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:20px 0}.save-tools p{font-size:10px;color:var(--muted);line-height:1.8;max-width:400px}.save-tools>div{display:flex;gap:6px}.save-tools button{font-size:10px;padding:8px 10px;white-space:nowrap;background:transparent}.save-tools .text-button{border-color:transparent;color:var(--muted)}.rules{border-top:1px solid var(--line);padding:18px 0;margin-top:25px;font-size:11px;color:var(--muted)}summary{cursor:pointer;padding:5px;min-height:35px}.rules p{line-height:1.9;max-width:860px}.ad-label{text-align:center;color:#69715f;letter-spacing:2px;font-size:8px;margin-top:30px}.ad-container{margin:10px auto;min-height:90px;max-width:970px}footer{max-width:1152px;border-top:1px solid var(--line);margin:auto;padding:22px 0 40px;display:flex;justify-content:space-between;color:var(--muted);font-size:10px}.battle-hp{margin:18px 0;font-size:11px}.battle-hp>div{display:flex;justify-content:space-between;margin-bottom:8px}.battle-hp .meter{height:7px;margin-bottom:15px}.battle-line{min-height:54px;font-size:12px;color:var(--gold);line-height:1.8}.result-title{font-size:34px;color:var(--gold);margin:20px 0 5px;letter-spacing:-1px}.result-copy{font-size:12px;line-height:1.9;color:var(--muted)}dialog{background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:10px;max-width:420px;width:calc(100% - 36px);padding:28px}dialog::backdrop{background:#000b}dialog h2{font-size:20px}dialog p{font-size:13px;line-height:1.8}dialog form>div{display:flex;justify-content:flex-end;gap:8px;margin-top:24px}
@media(max-width:1000px){.management-grid{grid-template-columns:1fr 1fr}.management:last-child{grid-column:1/-1}.history{max-height:110px}.main-grid{grid-template-columns:minmax(0,1.8fr) minmax(245px,1fr)}#offerContent{padding:17px}.save-tools{align-items:flex-start}.save-tools>div{flex-wrap:wrap;justify-content:flex-end}.panel-heading{padding:14px}}
@media(max-width:700px){.site-nav{height:58px;padding:0 18px;font-size:10px}main{padding:27px 14px}.hero{align-items:flex-start;gap:12px;margin-bottom:22px}.hero h1{font-size:31px}.hero h1 span{display:block;font-size:11px;margin:5px 0 0;letter-spacing:1px}.eyebrow{font-size:8px}.intro{font-size:10px;max-width:220px;line-height:1.7}.save-state{font-size:8px;padding:7px 9px;max-width:120px;flex-shrink:0;margin-top:6px}.resource-bar{padding:14px 12px;grid-template-columns:1.1fr 1fr 1fr .5fr}.resource-bar>div{padding-left:12px}.resource-bar span{font-size:8px}.resource-bar strong{font-size:17px}.main-grid{grid-template-columns:1fr}.offer-panel{border-left:0;border-top:1px solid var(--line)}#offerContent{min-height:0;padding:16px}.offer-empty{margin:0;padding:16px;display:grid;grid-template-columns:45px 1fr;text-align:left;column-gap:12px}.offer-symbol{grid-row:1/3;font-size:34px;margin:0}.offer-empty h3{font-size:14px;margin:0 0 5px}.offer-empty p{font-size:11px;margin:0}.offer-help{font-size:11px;line-height:1.8}.refusal{font-size:10px;margin-top:12px;padding-top:12px}.fighter-summary{padding:15px 15px 5px}.fighter-summary h2{font-size:19px}.stats{padding:12px 15px;gap:14px}.fatigue-row{padding:0 15px}.equipment-line{padding:0 15px}.panel-heading>span{font-size:8px}.scene-caption{font-size:9px;padding:20px 12px 10px}.management-grid{grid-template-columns:1fr}.management:last-child{grid-column:auto}.notice{font-size:11px}.train-grid small,.daily-grid small,.wide small,.hint{font-size:10px}.gear-row strong{font-size:12px}.gear-row small{font-size:10px}.gear-row canvas{width:48px;height:48px}.gear-row button{font-size:12px;min-width:70px}.weapon-tabs button{font-size:12px}.management .panel-heading>span{font-size:10px}.history li{font-size:11px}.save-tools{display:block}.save-tools p{font-size:10px}.save-tools>div{justify-content:flex-start}.save-tools button{font-size:10px}footer{margin:0 14px;font-size:9px}.comparison{margin:12px 0}.opponent{margin-top:10px}.offer-buttons{grid-template-columns:1fr 1fr}.result-title{margin-top:10px}select{font-size:13px}}
.roster-panel{border:1px solid var(--line);border-bottom:0;background:#20251f;padding:18px 20px}.roster-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px}.roster-heading .eyebrow{font-size:8px;margin-bottom:5px}.roster-heading h2{font-size:16px;margin:0;white-space:nowrap}.roster-heading h2 span{color:var(--muted);font-size:11px;margin-left:8px;font-weight:500}.roster-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.roster-actions button{font-size:11px;padding:8px 12px;min-height:44px}.roster-actions button:first-child{color:var(--gold)}.roster{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px}.roster-card{display:flex;align-items:center;gap:10px;text-align:left;padding:12px;background:#2a3027;min-width:0;border-color:#424a39}.roster-card.selected{background:#393b2b;border-color:var(--gold);box-shadow:inset 0 0 0 1px #dfbb7230}.roster-card.fallen{background:#322923}.roster-card canvas{width:38px;height:38px;image-rendering:pixelated;flex-shrink:0}.roster-info{display:block;flex:1;min-width:0}.roster-info>strong{display:flex;justify-content:space-between;align-items:center;gap:6px;font-size:13px}.roster-info strong small{font-size:9px;color:var(--gold);white-space:nowrap}.roster-info>span{display:block;font-size:10px;line-height:1.7;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.roster-status{color:var(--green);margin:4px 0}.roster-status.bad{color:var(--danger)}.roster-gear,.roster-meta{color:var(--muted)}.roster-hint{font-size:10px;color:var(--muted);line-height:1.8;margin:12px 0 0}#actionTarget,#gearTarget{text-align:right;letter-spacing:0}
@media(max-width:700px){.roster-panel{padding:15px 12px}.roster-heading{display:block}.roster-heading h2{font-size:15px}.roster-actions{justify-content:flex-start;margin-top:12px;display:grid;grid-template-columns:1fr 1fr;gap:6px}.roster-actions button{font-size:10px;padding:8px 6px}.roster{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.roster-card{gap:6px;padding:10px 8px}.roster-card canvas{width:26px;height:32px;object-fit:contain}.roster-info>strong{font-size:11px;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.roster-info strong small{display:block;font-size:8px}.roster-info>span{font-size:9px}.roster-hint{font-size:10px}#actionTarget{max-width:145px;font-size:9px}.resource-bar>div:last-child{padding-left:7px}}
.roster{grid-template-columns:repeat(4,minmax(0,1fr))}.roster[data-count="3"]{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:700px){.roster,.roster[data-count="3"]{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.ad-container{width:100%;overflow:hidden}
.clock-bar{display:flex;align-items:center;gap:22px;background:#303829;border:1px solid #596446;border-radius:7px;padding:13px 18px;margin-bottom:14px}.clock-bar strong{display:block;font-size:12px;color:var(--gold)}.clock-bar span{font-size:10px;color:var(--muted)}.clock-progress{flex:1;min-width:80px}.clock-progress .meter{margin-top:7px}.clock-progress i{transition:none;background:var(--green)}.clock-bar button{font-size:11px;min-width:76px}.roster-slot{min-width:0}.roster-slot .roster-card{width:100%}.assignment{display:block;background:#1b2119;padding:8px 10px;border:1px solid var(--line);border-top:0;border-radius:0 0 5px 5px}.assignment>span{display:block;font-size:10px;color:var(--green);margin-bottom:5px}.assignment select{font-size:12px;padding:7px;min-height:44px;margin:0}.train-grid button.selected,.daily-grid button.selected{border-color:var(--gold);background:#42452e}.train-grid button:first-child{grid-column:1/-1}.arena-dialog{padding:0;width:calc(100% - 32px);max-width:760px;max-height:calc(100dvh - 32px);overflow:auto;border-color:#8c7a52;background:#1d231d}.arena-dialog::backdrop{background:#080d09e8}.arena-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;border-bottom:1px solid var(--line)}.arena-header .eyebrow{margin:0 0 5px}.arena-header h2{font-size:18px;margin:0}.arena-header h2 span{font-size:11px;font-weight:400;color:var(--muted);margin-left:12px}.arena-header button{font-size:11px}.arena-hud{display:grid;grid-template-columns:1fr 1fr;gap:32px;padding:14px 20px}.arena-hud>div{display:grid;grid-template-columns:1fr auto;align-items:center;gap:7px 10px;font-size:12px;min-width:0}.arena-hud strong{font-weight:600}.arena-hud span{font:11px monospace;color:var(--muted)}.arena-hud .meter{grid-column:1/-1;height:6px}.arena-hud i{transition:none;background:#bcd78c}#arenaFillB{background:#d79675}#arenaScene{display:block;width:100%;height:auto;max-height:44dvh;object-fit:contain;image-rendering:pixelated;background:#373b28}.arena-log{font-size:12px;color:var(--gold);line-height:1.7;min-height:22px;padding:0 20px;margin:12px 0}.arena-controls{display:flex;gap:8px;flex-wrap:wrap;padding:0 20px 16px}.arena-controls button{font-size:11px}.arena-result{padding:18px 20px;border-top:1px solid var(--line);background:#292d21}.arena-result .result-title{font-size:26px;margin:6px 0}.arena-result .result-copy{margin:8px 0}.arena-result .refusal{margin-bottom:0}body:has(dialog[open]){overflow:hidden}
@media(max-width:700px){.clock-bar{gap:12px;padding:12px;flex-wrap:wrap}.clock-bar>div:first-child{flex:1}.clock-progress{order:3;flex-basis:100%}.assignment{padding:7px}.assignment select{font-size:11px}.assignment>span{font-size:9px}.arena-dialog{width:calc(100% - 16px);max-height:calc(100dvh - 16px)}.arena-header{padding:12px}.arena-header h2{font-size:16px}.arena-header h2 span{display:block;margin:4px 0 0}.arena-hud{padding:12px;gap:14px}.arena-hud>div{font-size:11px;grid-template-columns:1fr;gap:5px}.arena-hud .meter{grid-column:auto}.arena-hud strong{min-height:32px}.arena-log{padding:0 12px;font-size:11px}.arena-controls{padding:0 12px 12px;gap:6px}.arena-controls button{padding:8px;font-size:10px}.arena-result{padding:16px 12px}.roster-info>span{font-size:9px}}
[hidden]{display:none!important}.school-setup{padding:32px;background:linear-gradient(120deg,#393b2a,#232722);border:1px solid #7b7352;border-radius:8px;display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-bottom:24px}.school-setup h2{font-size:24px;line-height:1.6;margin:0 0 12px}.school-setup p{color:var(--muted);font-size:12px;line-height:1.9}.school-setup label{display:block;font-size:13px;margin-bottom:12px}.school-setup label small{display:block;color:var(--muted);margin-top:5px}.school-setup input{width:100%;min-height:48px;padding:12px;background:#181d17;border:1px solid #6d775d;border-radius:5px;color:var(--ink);font-size:16px}.school-setup input:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.school-setup form>div{display:flex;flex-wrap:wrap;gap:8px}.school-setup button{font-size:12px}#setupError{color:var(--danger);min-height:18px;margin:6px 0}.school-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.school-bar h2{font-size:18px;margin:0 0 5px;overflow-wrap:anywhere}.school-bar span{font-size:10px;color:var(--gold)}.school-bar button{font-size:10px;flex-shrink:0;background:transparent}.progression{padding:9px 20px 0}.level-row{display:flex;justify-content:space-between;align-items:center;font-size:11px;margin-bottom:8px}.level-row strong{color:var(--gold);font-size:16px}.level-row span{color:var(--muted)}.xp-meter{height:6px}.xp-meter i{background:#9eb995}.honors{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:12px 0 2px;flex-wrap:wrap}.honors strong{font-size:12px;color:var(--gold)}.honors span{font-size:10px;color:var(--muted)}.growth-hint{font-size:9px;color:var(--muted);line-height:1.8;margin:0 20px 12px}.prize-detail{font-size:10px;line-height:1.8;color:var(--muted);margin:-6px 0 12px}.xp-reward{font-size:11px;line-height:1.8;color:var(--green);border-left:2px solid #849c6d;padding:5px 10px;margin:12px 0}.opponent-heading{display:flex;gap:8px;align-items:center}.opponent-heading canvas{width:68px;height:44px;image-rendering:pixelated;flex-shrink:0}.opponent-heading h3{font-size:16px}.roster-meta{color:var(--gold)}
@media(max-width:700px){.school-setup{grid-template-columns:1fr;padding:22px;gap:18px}.school-setup h2{font-size:21px}.school-bar h2{font-size:16px}.progression{padding:8px 15px 0}.growth-hint{margin:0 15px 12px;font-size:10px}.honors{align-items:flex-start;flex-direction:column}.opponent-heading h3{font-size:17px}}

.campaign{border:1px solid #6b6946;background:linear-gradient(110deg,#393c28,#242c22);padding:16px 18px;border-radius:7px;margin:0 0 14px}.campaign>div:first-child{display:flex;justify-content:space-between;gap:12px;align-items:center}.campaign strong{font-size:13px;color:#e2c58b}.campaign span{font-size:8px;letter-spacing:2px;color:#a7ad8d}.campaign .meter{margin:12px 0 9px;height:5px}.campaign p{font-size:10px;color:var(--muted);margin:0;line-height:1.7}.match-format{font-size:27px;color:var(--gold);margin:13px 0}.match-format span{font-size:13px;color:var(--muted);margin:0 8px}.lineup{margin:15px 0;padding:10px;border:1px solid var(--line);border-radius:5px}.lineup legend{font-size:11px;color:var(--gold);padding:0 5px}.lineup label{display:flex;gap:9px;align-items:center;min-height:48px;cursor:pointer;font-size:12px}.lineup input{width:18px;height:18px;accent-color:var(--gold);flex-shrink:0}.lineup small{display:block;color:var(--muted);font-size:10px;margin-top:3px}.tactic-effect{padding:10px;background:#363c29;border-left:2px solid var(--gold);font-size:11px;color:var(--gold);line-height:1.8}.champion-invite{font-size:12px;line-height:1.9;color:#dfc697;border:1px solid #776644;background:#3b3325;padding:13px}.team-hud{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:12px 20px}.team-column>p{font-size:10px;color:var(--gold);margin:0 0 8px}.unit-hp{display:grid;grid-template-columns:1fr auto;gap:4px 8px;margin-bottom:10px;font-size:11px;min-width:0}.unit-hp strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.unit-hp span{font-size:10px;color:var(--muted)}.unit-hp .meter{grid-column:1/-1;height:5px}.unit-hp i{background:#bcd78c;transition:none}.team-column:last-child i{background:#d79675}.arena-log.critical{color:#ffe18a;background:#6d492b;padding-top:8px;padding-bottom:8px}.team-results{margin:15px 0}.team-results>div{display:flex;justify-content:space-between;gap:14px;border-bottom:1px solid var(--line);padding:10px 0;font-size:12px}.team-results span{font-size:11px;color:var(--muted);text-align:right;line-height:1.8}.ending-dialog{max-width:800px;width:calc(100% - 32px);max-height:calc(100dvh - 32px);padding:0;overflow:auto;background:#1b241c;border-color:#b9a26c}.ending-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 20px;color:var(--gold);font-size:11px;letter-spacing:1px}.ending-top button{font-size:11px}.ending-dialog canvas{display:block;width:100%;height:auto}.ending-body{padding:28px 34px}.ending-body h2{font-size:24px;line-height:1.6;margin:8px 0 16px;overflow-wrap:anywhere}.ending-body h2 span{color:var(--gold)}.ending-body>p{font-size:13px;line-height:2;color:#bfc7b2}.ending-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.ending-actions button{min-height:46px}.ending-body #shareStatus{font-size:11px;color:var(--gold)}.ending-body .ending-footnote{font-size:10px;color:var(--muted)}#shareText{width:100%;height:150px;background:#141d15;color:var(--ink);border:1px solid var(--line);padding:10px;font:12px/1.8 sans-serif}
@media(max-width:700px){.campaign{padding:13px}.campaign>div:first-child{display:block}.campaign span{display:block;margin-top:6px}.team-hud{gap:14px;padding:12px}.unit-hp{grid-template-columns:1fr;font-size:10px}.unit-hp span{font-size:9px}.team-column>p{font-size:9px}.team-results>div{font-size:11px}.team-results span{font-size:10px}.ending-dialog{width:calc(100% - 16px);max-height:calc(100dvh - 16px)}.ending-top{padding:10px 12px;font-size:9px}.ending-body{padding:20px 16px}.ending-body h2{font-size:20px}.ending-body>p{font-size:12px}.ending-actions{gap:7px}.ending-actions button{font-size:11px;flex:1}.lineup label{min-height:50px}}

@media(max-width:700px){.ending-actions{display:grid;grid-template-columns:1fr 1fr}.ending-actions .primary{grid-column:1/-1}}

.campaign .campaign-record{font-size:12px;color:#e6d4ac;margin:10px 0;line-height:1.8}.roster-info .roster-meta{white-space:normal;overflow:visible;overflow-wrap:anywhere}
