@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{color-scheme:light;--bg:#f7f8f5;--panel:#fff;--text:#26312e;--muted:#738078;--line:#e3e8e1;--soft:#f0f3ee;--green:#287456;--green-bg:#e8f3eb;--red:#b64450;--red-bg:#faecee;--accent:#4e6551;--lime:#d9eda7;--lime-ink:#304523;--hint:#edf3e3;--shadow:0 3px 10px #25322403;--radius:18px;font:14px 'DM Sans',system-ui,sans-serif}
:root[data-theme=dark]{color-scheme:dark;--bg:#111412;--panel:#191d1a;--text:#edf1e9;--muted:#a0ada1;--line:#303a31;--soft:#232b24;--green:#a5d9b6;--green-bg:#233b2b;--red:#ef9eaa;--red-bg:#3c272e;--accent:#c4d8b8;--lime:#c6df98;--lime-ink:#263b1d;--hint:#283324;--shadow:none}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}button,input,select{font:inherit;color:inherit}button,select{cursor:pointer}button{border:1px solid var(--line);border-radius:9px;background:var(--panel);padding:9px 13px;transition:background .15s,border-color .15s}button:hover{background:var(--soft);border-color:var(--muted)}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--accent);outline-offset:3px}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Manrope,system-ui,sans-serif}h1{font-size:32px;font-weight:800;letter-spacing:-1.3px}h1 span{color:#8bab69}h2{font-size:23px;font-weight:750;letter-spacing:-.6px}h3{font-size:17px;letter-spacing:-.35px}.muted,small,.note{color:var(--muted)}.note{font-size:12px;line-height:1.7}.eyebrow{font-size:10px;letter-spacing:1.65px;font-weight:700;color:var(--muted)}
header{max-width:1264px;margin:auto;min-height:86px;display:flex;gap:32px;align-items:center;padding:16px 32px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:9px;font-size:26px}.brand strong{font-family:Manrope,system-ui;letter-spacing:-1px}.brand strong span{color:#8bab69}.brand small{font-size:9px;letter-spacing:1.8px;margin-left:6px}nav{display:flex;gap:28px;font-size:13px;margin-left:auto}nav a:hover{color:var(--accent)}select{background:var(--panel);border:1px solid var(--line);border-radius:9px;padding:10px 12px;font-size:12px}main,footer{max-width:1160px;margin:auto;padding:30px 0}.toolbar,.section-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}.toolbar label{display:flex;flex-direction:column;gap:7px;font-size:11px;color:var(--muted)}.toolbar .controls{display:flex;align-items:center;gap:20px}.toolbar select{max-width:230px;color:var(--text)}.rules-label{color:var(--muted);font-size:10px;letter-spacing:1px}.encounter-control{display:flex;flex-direction:column;gap:7px;align-items:flex-end}.encounter-control small{font-size:10px}.link{border:0;background:transparent;padding:5px;color:var(--accent);font-size:12px}.link:hover{background:var(--soft)}.soft-button{background:var(--soft);border-color:transparent;font-size:12px;padding:10px 14px}.primary-button{background:var(--lime);border-color:transparent;color:var(--lime-ink);font-weight:700;white-space:nowrap;border-radius:10px;padding:12px 17px}.primary-button:hover{background:color-mix(in srgb,var(--lime) 80%,white);border-color:var(--lime-ink)}
.battle-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.combatant{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}.portrait-stage{background:color-mix(in srgb,var(--species) 9%,var(--panel));position:relative}.combatant-head{display:flex;justify-content:space-between;align-items:center;padding:15px 22px 0;position:relative;z-index:1}.identity{display:flex;align-items:center;gap:22px;padding:0 28px 18px;min-height:210px;position:relative}.portrait-number{position:absolute;right:23px;top:0;font:800 100px Manrope;letter-spacing:-7px;color:color-mix(in srgb,var(--species) 9%,transparent);pointer-events:none}.art{width:195px;height:195px;object-fit:contain;position:relative;filter:drop-shadow(0 12px 10px #1a282211)}.identity-copy{position:relative;z-index:1}.identity h2{font-size:29px;letter-spacing:-1px;margin:5px 0 11px}.dex{font-size:10px;color:var(--muted);letter-spacing:1px;font-variant-numeric:tabular-nums}.types{display:flex;flex-wrap:wrap;gap:5px}.type{font-size:11px;padding:4px 8px;border-radius:6px;font-weight:600;background:color-mix(in srgb,var(--type) 14%,var(--panel));color:color-mix(in srgb,var(--type) 60%,var(--text))}.level{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted);margin-top:13px}.level input{width:64px;background:var(--panel);border:1px solid var(--line);border-radius:7px;padding:7px 9px;color:var(--text)}.defense{padding:17px 22px;display:grid;gap:10px;border-top:1px solid var(--line)}.profile-row{display:flex;gap:10px;align-items:flex-start}.profile-row>span{width:68px;flex-shrink:0;color:var(--muted);font-size:11px;padding-top:4px}.chips{display:flex;flex-wrap:wrap;gap:5px}.effect{display:inline-flex;gap:6px;align-items:center;font-size:10px;border:1px solid var(--line);padding:4px 6px;border-radius:5px}.good{color:var(--green)}.bad{color:var(--red)}.pill{border-radius:6px;padding:4px 7px;background:var(--soft);font-size:11px;font-weight:700}.pill.good{background:var(--green-bg)}.pill.bad{background:var(--red-bg)}

.move-workbench{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.your-moves,.opponent-moves{min-width:0;padding:22px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius)}.workbench-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:16px}.workbench-heading .eyebrow{display:block;margin-bottom:6px;font-size:9px}.workbench-heading .link{font-size:11px;white-space:nowrap}.move-row{display:flex;gap:10px;align-items:center;min-height:59px;border-bottom:1px solid var(--line);padding:9px 0}.move-name{flex:1;min-width:0}.move-name strong{font-size:13px;font-weight:600}.move-name small{display:block;font-size:10px;margin-top:4px;line-height:1.5}.move-row .mult{min-width:30px;text-align:right;font-size:15px;font-weight:700}.empty-move{font-size:12px;color:var(--muted)}.attack-pick{padding:15px 17px;margin:20px 0 14px;border:1px solid var(--line);border-radius:12px;background:var(--bg)}.attack-pick>div{display:flex;align-items:center;justify-content:space-between;margin:8px 0}.attack-pick .eyebrow{font-size:9px}.observed-summary{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--muted);padding:10px 12px;background:var(--bg);border-radius:8px;margin-bottom:12px}.observed-summary p{flex:1;line-height:1.6}.observed-summary b{color:var(--text)}.observation-dot{width:6px;height:6px;border-radius:50%;background:var(--muted);flex:none}.observation-dot.active{background:var(--green)}.opponent-filters{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:7px}.move-search-label{display:flex;align-items:center;gap:7px;min-width:0;flex:1}.move-search-label>span{font-size:23px;color:var(--muted)}.move-search-label input{width:100%;min-width:0;background:transparent;border:0;padding:9px 1px;font-size:12px}.segmented{display:flex;flex:none;gap:2px;background:var(--soft);border-radius:8px;padding:3px}.segmented button{border:0;padding:6px 8px;font-size:10px;background:transparent;border-radius:6px;color:var(--muted)}.segmented button.active{background:var(--panel);color:var(--text);box-shadow:0 1px 3px #0001}.opponent-move-list{max-height:306px;min-height:180px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--line) transparent;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.opponent-move{display:flex;align-items:center;gap:10px;min-height:57px;padding:9px 4px;border-bottom:1px solid var(--line)}.opponent-move:last-child{border:0}.opponent-move.is-seen{background:var(--green-bg)}.opponent-move .move-name strong{font-size:12px}.opponent-move .type{font-size:10px}.move-effect{width:29px;text-align:right;font-size:13px}.seen-button{font-size:10px;padding:7px 8px;min-width:58px;flex:none}.seen-button[aria-pressed=true]{background:var(--green-bg);color:var(--green);border-color:var(--green)}.opponent-list-footer{display:flex;justify-content:space-between;gap:8px;font-size:10px;color:var(--muted);padding:10px 0}.opponent-moves>.note{font-size:10px}
.section{margin-top:38px;scroll-margin-top:20px}.section-heading small{font-size:11px}.party{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.party-member{min-width:0;border:1px solid var(--line);border-radius:15px;padding:14px;background:var(--panel);position:relative;box-shadow:var(--shadow)}.party-member.selected{border-color:#93aa7a;background:var(--hint)}.party-label{height:18px;display:block;font-size:8px;letter-spacing:.7px;font-weight:700;padding-right:12px}.party-art{width:100%;height:105px;object-fit:contain}.party-name{display:block;font:700 13px Manrope;margin:4px 0 8px}.party-member .types{gap:3px;min-height:22px}.party-member .type{font-size:9px;padding:3px 5px}.party-actions{display:flex;gap:5px;margin-top:12px;flex-wrap:wrap}.party-actions button{font-size:10px;padding:6px 8px}.party-member .level{margin:9px 0}.party-member .level input{width:51px;padding:5px}.party-add{min-height:280px;color:var(--muted);width:100%;border-style:dashed;line-height:2;background:transparent;border-radius:15px}.remove-member{position:absolute;right:8px;top:7px;font-size:16px;color:var(--muted)}.ranking{margin-top:24px}.ranking-row{display:grid;grid-template-columns:20px 130px 90px 1fr auto;gap:13px;align-items:center;padding:13px 0;border-bottom:1px solid var(--line);font-size:12px}.ranking-row .reason{color:var(--muted);line-height:1.65}.footnote{margin-top:16px;max-width:870px;font-size:11px}.coverage-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:18px}.coverage-block{border-top:1px solid var(--line);padding-top:20px}.coverage-block h3{margin-bottom:12px}.coverage-block .chips{margin-bottom:12px}.coverage-table{display:grid;grid-template-columns:repeat(9,1fr);gap:7px;margin-top:20px}.coverage-cell{padding:12px 4px;border:1px solid var(--line);border-radius:9px;background:var(--panel);text-align:center;font-size:10px}.coverage-cell small{display:block;margin-top:7px;font-size:9px}.replacement-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:18px 0}.replacement-card{display:grid;grid-template-columns:125px 1fr;gap:17px;align-items:start;padding:22px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius)}.replacement-portraits{display:grid;grid-template-columns:40px 15px 70px;align-items:center}.replacement-portraits span{color:var(--muted);font-size:18px}.outgoing-art{width:40px;height:60px;object-fit:contain;opacity:.6}.incoming-art{width:78px;height:90px;object-fit:contain}.replacement-card .eyebrow{font-size:8px}.replacement-card h3{font-size:21px;margin:5px 0}.replacement-caption{font-size:11px;color:var(--muted);margin-bottom:10px}.replacement-card .note{font-size:11px;margin:12px 0}.replacement-card button{margin-top:3px}
footer{display:flex;justify-content:space-between;border-top:1px solid var(--line);font-size:11px;color:var(--muted);margin-top:40px}footer button{border:0;padding:0;background:none;font-size:11px}dialog{width:min(860px,calc(100% - 28px));max-height:88dvh;background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:20px;padding:26px;box-shadow:0 30px 100px #0004}dialog::backdrop{background:#17231d70;backdrop-filter:blur(5px)}.dialog-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.close{border:0;font-size:25px;padding:0 8px}.search{width:100%;padding:12px;border:1px solid var(--line);background:var(--bg);border-radius:9px;margin:10px 0}.filters{display:flex;gap:12px;align-items:center;margin:10px 0;font-size:12px;flex-wrap:wrap}.picker-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;max-height:55dvh;overflow:auto}.picker-item{display:flex;align-items:center;gap:8px;text-align:left;padding:6px}.picker-item img{width:48px;height:48px;object-fit:contain}.picker-item small{display:block;font-size:9px;margin-top:4px}.table-wrap{overflow:auto;max-height:51dvh}table{width:100%;border-collapse:collapse;font-size:11px}th,td{text-align:left;padding:10px 7px;border-bottom:1px solid var(--line)}th{position:sticky;top:0;background:var(--panel);z-index:1;color:var(--muted);font-weight:500}td small{display:block;margin-top:4px;font-size:10px}td:first-child{min-width:130px}td:last-child{min-width:85px}.move-slots{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0}.slot{font-size:11px}.requirement{padding:16px 0;border-top:1px solid var(--line);display:flex;gap:16px;align-items:center}.requirement img{width:65px;height:65px}.requirement .req-copy{flex:1}.requirement p{margin:6px 0;line-height:1.7;font-size:12px}.rules p{line-height:1.8;margin:12px 0;font-size:13px}.rules a{text-decoration:underline}.chart{font-size:9px}.chart td,.chart th{padding:4px;min-width:28px;text-align:center}.loading{padding:80px 20px;text-align:center;color:var(--muted)}#toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);background:var(--text);color:var(--panel);padding:12px 18px;border-radius:10px;box-shadow:0 4px 20px #0003;display:none;font-size:12px;z-index:10;max-width:90vw}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.skip{position:absolute;left:10px;top:-50px}.skip:focus{top:10px;z-index:100;background:var(--panel);padding:10px}.empty{padding:30px 14px;color:var(--muted);text-align:center;font-size:12px;line-height:1.7}
@media(max-width:1220px){main,footer{margin-left:28px;margin-right:28px}}@media(max-width:1000px){.party{grid-template-columns:repeat(3,1fr)}.identity{gap:12px;padding:5px 18px 15px}.art{width:150px;height:180px}.identity h2{font-size:26px}.primary-button{font-size:12px;padding:11px}.coverage-table{grid-template-columns:repeat(6,1fr)}.replacement-card{grid-template-columns:1fr}.replacement-portraits{display:none}.brand small{display:none}.move-workbench{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.your-moves,.opponent-moves{padding:17px}.opponent-filters{flex-wrap:wrap}.segmented{margin-left:auto}.ranking-row{grid-template-columns:18px 110px 80px 1fr}.ranking-row>button{grid-column:4}}
@media(max-width:700px){header{padding:17px 20px;min-height:72px;gap:14px;flex-wrap:wrap}.brand{font-size:24px}nav{order:3;width:100%;justify-content:space-around;padding-top:8px;gap:10px;font-size:12px}.appearance{margin-left:auto}main,footer{margin-left:16px;margin-right:16px;padding-top:23px}.toolbar{align-items:center;gap:10px}.toolbar .controls{display:block}.toolbar label{font-size:10px}.toolbar select{max-width:155px;font-size:11px;padding:9px}.encounter-control{margin-top:9px;align-items:flex-start}.encounter-control small{font-size:9px}.encounter-control button{font-size:10px;padding:7px 9px}h1{font-size:26px;letter-spacing:-1px}.rules-label{font-size:9px}.toolbar>.controls label{gap:5px}.toolbar .eyebrow{font-size:9px}.battle-grid{gap:10px}.combatant{border-radius:14px}.combatant-head{padding:12px 12px 0;display:block}.combatant-head .eyebrow{display:block;font-size:9px;letter-spacing:1px}.combatant-head button{font-size:11px;padding:6px 0;min-height:28px}.identity{display:block;padding:0 12px 15px;min-height:250px}.art{display:block;width:100%;height:134px}.identity h2{font-size:22px;letter-spacing:-.8px;margin:6px 0 8px}.portrait-number{font-size:60px;letter-spacing:-4px;right:12px;top:0}.dex{font-size:9px}.type{font-size:10px;padding:4px 6px}.level{font-size:11px;margin-top:10px}.level input{width:53px;padding:6px;min-height:32px}.defense{padding:14px 12px;gap:13px;align-content:start;min-height:210px}.profile-row{display:block}.profile-row>span{display:block;width:auto;margin-bottom:6px;font-size:10px;padding:0}.effect{font-size:10px;padding:3px 4px;gap:4px}.chips{gap:4px}.move-workbench{grid-template-columns:1fr;gap:16px}.your-moves,.opponent-moves{padding:20px;border-radius:14px}.workbench-heading h3{font-size:17px}.move-row{min-height:56px}.move-row .type{font-size:10px}.move-name small{font-size:10px}.move-row .pill{font-size:10px}.opponent-move-list{max-height:340px}.opponent-move{gap:7px}.opponent-move .type{font-size:9px;padding:4px 5px}.opponent-move .move-name strong{font-size:12px}.seen-button{padding:8px 6px;min-width:53px}.opponent-filters{gap:6px}.opponent-moves>.note{font-size:11px}.party{grid-template-columns:repeat(2,1fr);gap:10px}.party-member{padding:12px}.party-art{height:96px}.party-name{font-size:14px}.party-label{font-size:8px}.party-member .type{font-size:10px}.party-actions{gap:5px}.party-actions button{padding:7px 9px;min-height:31px;font-size:10px}.party-member .level{gap:6px;font-size:11px}.party-member .level input{width:50px}.party-member .types{min-height:24px}.ranking-row{grid-template-columns:16px 1fr auto;gap:8px}.ranking-row .reason{grid-column:2/4;font-size:11px}.ranking-row>button{grid-column:3}.coverage-grid{grid-template-columns:1fr;gap:20px}.coverage-table{grid-template-columns:repeat(3,1fr)}.replacement-grid{grid-template-columns:1fr;gap:13px}.replacement-card{grid-template-columns:85px 1fr;padding:17px;gap:12px}.replacement-portraits{display:flex;flex-direction:column}.outgoing-art{width:40px;height:40px}.incoming-art{width:80px;height:85px}.replacement-portraits span{transform:rotate(90deg)}.picker-grid{grid-template-columns:repeat(2,1fr)}.picker-item{font-size:11px}.picker-item img{width:37px;height:37px}dialog{padding:18px}.dialog-head h2{font-size:19px}.section-heading{gap:10px;align-items:flex-start}.section-heading h2{font-size:21px}.section-heading>div:last-child:not(:first-child){max-width:170px;text-align:right}.section-heading small{font-size:10px;line-height:1.6}.section-heading .link{font-size:11px}footer{line-height:1.6;gap:10px}.requirement{gap:8px}.requirement img{width:45px;height:45px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
/* Equal comparison columns; ownership stays explicit at every size. */
.battle-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}
.role-label{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;letter-spacing:.1px;color:var(--text)}
.role-label::before{content:'';width:7px;height:7px;border-radius:50%;background:var(--accent)}




.combatant-context{font-size:11px;line-height:1.5;color:var(--muted);margin-top:10px}












.intel-label{font-size:9px;letter-spacing:1.2px;color:var(--muted);font-weight:700;display:flex;justify-content:space-between}
.intel-value{display:flex;align-items:center;justify-content:space-between;gap:7px;margin:7px 0}
.intel-value strong{font-size:13px;font-weight:600}

.move-workbench{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.your-moves .move-row{gap:7px}.your-moves .move-row .type{font-size:10px;padding:4px 5px}
@media(min-width:701px) and (max-width:1000px){.battle-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.move-workbench{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.battle-grid{grid-template-columns:1fr;gap:15px}.combatant-head{display:flex;align-items:center;padding:13px 16px 0}.combatant-head button{padding:6px;font-size:11px}.role-label{font-size:12px}.intel-label{font-size:8px;letter-spacing:.8px}.intel-value{align-items:flex-start}.intel-value strong{font-size:12px}.move-workbench{grid-template-columns:1fr}.opponent-moves{order:-1}}

/* Defensive information takes priority over artwork. */
.combatant .defense{padding:22px;gap:20px;min-height:0}
.defense-title{display:flex;justify-content:space-between;gap:10px;font-size:11px;font-weight:700;letter-spacing:.25px;color:var(--muted)}
.defense-title span{font-weight:400;letter-spacing:0}
.combatant .defense .profile-row{display:block}
.profile-row h3{font:650 14px 'DM Sans',system-ui;margin-bottom:9px;letter-spacing:0}
.defense-chips{display:flex;flex-wrap:wrap;gap:8px}
.defense-chip{display:inline-flex;align-items:center;gap:9px;min-height:44px;min-width:140px;padding:7px 9px;border:1px solid color-mix(in srgb,var(--type) 35%,var(--line));border-radius:9px;background:color-mix(in srgb,var(--type) 8%,var(--panel))}
.defense-chip.critical{border-color:color-mix(in srgb,var(--red) 60%,var(--line))}
.type-symbol{display:grid;place-items:center;width:26px;height:26px;flex:none;border-radius:50%;background:var(--type);color:#fff}
.type-icon{width:17px;height:17px;display:block}
.defense-type{font-size:13px;font-weight:600}
.defense-chip b{font-size:16px;line-height:1.2;margin-left:auto;min-width:31px;padding:4px;border-radius:5px;text-align:center;font-variant-numeric:tabular-nums}
.defense-chip b.bad{background:var(--red-bg)}
.defense-chip b.good{background:var(--green-bg)}
.defense-none{font-size:12px;color:var(--muted);padding:3px 0}

.intel-value strong{font-size:15px}
.intel-value .pill{font-size:15px}
@media(min-width:701px) and (max-width:1000px){.combatant .defense{padding:18px}.defense-chip{min-width:126px;gap:6px;padding:7px}.defense-type{font-size:12px}.type-symbol{width:23px;height:23px}}
@media(max-width:700px){.combatant .defense{padding:18px 16px;gap:18px}.defense-title{font-size:10px}.profile-row h3{font-size:14px}.defense-chips{gap:7px}.defense-chip{min-width:138px;min-height:43px;gap:7px;padding:7px}.defense-type{font-size:13px}.defense-chip b{font-size:16px}.intel-value strong{font-size:14px}.intel-value .pill{font-size:14px}}

/* One decision above the comparison: action first, verdicts in context. */
.battle-grid{margin-bottom:24px}
.decision-panel{margin-bottom:22px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);overflow:hidden}
.decision-panel.needs-switch{background:var(--hint);border-color:color-mix(in srgb,var(--green) 50%,var(--line));box-shadow:inset 4px 0 0 var(--green)}
.decision-main{display:grid;grid-template-columns:80px minmax(0,1fr) auto;gap:22px;align-items:center;padding:22px 26px}
.decision-art{width:80px;height:88px;object-fit:contain}
.decision-copy .eyebrow{font-size:10px;letter-spacing:1.35px}
.needs-switch .decision-copy .eyebrow{color:var(--green)}
.decision-copy h2{font-size:27px;line-height:1.25;margin:6px 0 9px;letter-spacing:-.8px}
.decision-copy p{font-size:13px;line-height:1.7;color:var(--muted);max-width:720px}
.decision-action .primary-button{font-size:14px;min-height:48px;padding:14px 20px}
.decision-in-play{font-size:13px;color:var(--green);white-space:nowrap}
.decision-assessments{display:flex;align-items:center;gap:22px;flex-wrap:wrap;padding:13px 26px;border-top:1px solid var(--line);background:color-mix(in srgb,var(--panel) 45%,transparent)}
.decision-assessment{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:12px;color:var(--muted)}
.decision-assessment b{font-weight:600;color:var(--text)}
.decision-assessment .pill{font-size:11px}
.decision-arrow{color:var(--muted)}
.decision-panel.is-loading .decision-main{grid-template-columns:1fr;min-height:150px}
@media(max-width:1000px){.decision-main{grid-template-columns:65px minmax(0,1fr);gap:12px 18px;padding:20px}.decision-art{width:65px;height:75px;grid-row:1/3;align-self:start}.decision-action{grid-column:2}.decision-copy h2{font-size:24px}.decision-assessments{padding:13px 20px;gap:12px}}
@media(max-width:700px){.decision-panel{margin-bottom:18px;border-radius:14px}.decision-main{grid-template-columns:48px minmax(0,1fr);padding:18px 16px;gap:12px}.decision-art{width:48px;height:58px;grid-row:1;align-self:start}.decision-copy h2{font-size:22px;letter-spacing:-.5px}.decision-copy .eyebrow{font-size:8px;letter-spacing:1px}.decision-copy p{font-size:12px;line-height:1.65}.decision-action{grid-column:1/-1}.decision-action .primary-button{width:100%;font-size:14px}.decision-assessments{padding:13px 16px;display:grid;gap:10px}.decision-assessment{justify-content:space-between;gap:8px;font-size:11px}.decision-arrow{display:none}.decision-panel.is-loading .decision-main{min-height:120px}}

/* Shared panel geometry keeps both sides aligned as content changes. */
.combatant{min-width:0}
.combatant-head{display:flex;align-items:center;padding:16px 22px 0;gap:12px}
.combatant .role-label{font:700 15px Manrope,system-ui;letter-spacing:-.2px}
.your-card .role-label{color:var(--green)}
.combatant .identity{display:flex;align-items:center;gap:24px;padding:12px 22px 20px;min-height:185px}
.combatant .art{width:120px;height:140px;flex:none}
.combatant .identity-copy{min-width:0;flex:1;padding:0}
.combatant .identity h2{font-size:28px;letter-spacing:-.8px;line-height:1.2;margin:6px 0 10px;overflow-wrap:anywhere}
.combatant .portrait-number{font-size:85px;letter-spacing:-5px;right:22px;top:5px}
.combatant .dex{display:block;font-size:10px}
.combatant-context{display:block;font-size:11px;line-height:1.5;margin-top:10px;color:var(--muted)}
.combatant-meta{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 22px;border-top:1px solid color-mix(in srgb,var(--species) 15%,var(--line));font-size:11px;line-height:1.4;color:var(--muted)}
.combatant-meta span:last-child{text-align:right}
.combatant-intel{padding:20px 22px;background:var(--bg);border-top:1px solid var(--line)}
.combatant-intel .intel-label{font-size:10px;letter-spacing:1.1px}
.combatant-intel .intel-value{margin:8px 0}
.combatant-intel .intel-value strong,.combatant-intel .pill{font-size:15px}
.combatant-intel small{font-size:11px;line-height:1.5}
@media(min-width:701px){
 @supports(grid-template-rows:subgrid){
  .battle-grid{grid-template-rows:repeat(8,auto);row-gap:0}
  .battle-grid>.combatant{display:grid;grid-template-rows:subgrid;grid-row:1/span 8;row-gap:0}
  .battle-grid>.your-card{grid-column:1}
  .battle-grid>.opponent-card{grid-column:2}
  .combatant .portrait-stage{display:grid;grid-template-rows:subgrid;grid-row:1/span 3;row-gap:0}
  .combatant .defense{grid-template-rows:subgrid;grid-row:4/span 4;row-gap:20px}
  .combatant .combatant-intel{grid-row:8}
 }
}
@media(min-width:701px) and (max-width:1000px){.combatant-head{padding:14px 18px 0}.combatant .identity{gap:14px;padding:12px 18px 18px;min-height:175px}.combatant .art{width:85px;height:110px}.combatant .identity h2{font-size:24px}.combatant-meta{padding:11px 18px;font-size:10px}.combatant-intel{padding:18px}}
@media(max-width:700px){.battle-grid{gap:16px}.combatant-head{padding:13px 16px 0}.combatant .role-label{font-size:14px}.combatant .identity{gap:18px;padding:12px 16px 18px;min-height:155px}.combatant .art{width:90px;height:110px}.combatant .identity h2{font-size:25px}.combatant .portrait-number{font-size:75px;right:16px;top:10px}.combatant .dex{font-size:9px}.combatant-context{font-size:10px}.combatant-meta{padding:10px 16px;font-size:10px;gap:10px}.combatant-intel{padding:18px 16px}}
