:root{--paper:#f6f4ed;--card:#fffefa;--ink:#293d36;--muted:#858b7e;--green:#214b3e;--green-light:#eaf0e5;--gold:#b99555;--line:#e4e5da;--red:#aa6454;--serif:'Yu Mincho','Hiragino Mincho ProN','Noto Serif JP',serif;--sans:-apple-system,BlinkMacSystemFont,'Hiragino Kaku Gothic ProN','Yu Gothic',Meiryo,sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:13px;line-height:1.65;-webkit-font-smoothing:antialiased}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button{border:0;background:none}button:disabled{cursor:default;opacity:.45}button:not(:disabled),a{touch-action:manipulation}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #b99455;outline-offset:4px}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}svg{display:block}.icon{width:19px;height:19px;flex-shrink:0;display:inline-block;vertical-align:middle}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.muted{color:var(--muted);font-size:12px}.danger-text{color:var(--red)}
.site-header{height:90px;border-bottom:1px solid var(--line);background:#fcfbf6}.header-inner{max-width:1520px;padding:0 48px;height:100%;margin:auto;display:flex;align-items:center;gap:56px}.brand{display:flex;align-items:center;gap:12px;flex-shrink:0}.brand-seal{width:43px;height:48px;display:grid;place-items:center;background:var(--green);color:#e9e6cc;clip-path:polygon(0 0,100% 0,100% 77%,50% 100%,0 77%)}.brand-seal .icon{width:26px;height:26px;transform:rotate(-12deg)}.brand strong{font:700 22px var(--serif);letter-spacing:3px;display:block}.brand small{display:block;font-size:7px;letter-spacing:2px;margin-top:5px;color:#7c8879}.site-header nav{display:flex;gap:30px;height:100%;align-items:stretch}.nav-item{position:relative;display:flex;gap:7px;align-items:center;padding:0 2px;font-size:12px;color:#8a8e83;white-space:nowrap}.nav-item .icon{width:16px;height:16px}.nav-item:hover{color:var(--green)}.nav-item.active{font-weight:700;color:var(--green)}.nav-item.active:after{content:'';height:3px;position:absolute;bottom:0;left:0;right:0;background:var(--green)}.prototype{margin-left:auto;display:flex;align-items:center;gap:8px;color:#8a9185;font-size:8px;letter-spacing:1.2px;white-space:nowrap}.prototype i,.live-status i{height:6px;width:6px;background:#789877;border-radius:50%}.prototype b{margin-left:4px;padding:2px 6px;border:1px solid var(--line);font-weight:500;font-size:9px}
.main-shell{max-width:1520px;margin:auto;padding:0 48px}.page-intro{display:flex;align-items:center;justify-content:space-between;padding:42px 0 37px;gap:30px}.eyebrow,.modal-eyebrow{font-size:9px;letter-spacing:2px;font-weight:600;color:#80917e;margin-bottom:12px}.eyebrow span{font-size:10px;letter-spacing:1px;margin-left:8px;font-weight:400}.page-intro h1{font:600 33px/1.5 var(--serif);letter-spacing:2px}.page-intro p{font-size:12px;color:#8a9085;margin-top:10px}.mobile-break{display:none}.intro-note{display:flex;position:relative;gap:13px;align-items:center;width:340px;min-height:115px;padding:22px 0 22px 15px;flex-shrink:0;color:#73816e}.intro-note>span{z-index:1}.intro-note .little-star{font-size:23px;color:#b99b66}.intro-note>span:not(.little-star){font-family:var(--serif);font-size:16px}.intro-note small{display:block;margin-top:7px;font:10px var(--sans);color:#8d9586}.intro-note>svg{position:absolute;width:176px;right:-7px;top:-8px;height:140px;fill:none;stroke:#849077;stroke-width:1;opacity:.14;transform:rotate(-5deg)}
.workspace{display:grid;grid-template-columns:minmax(0,1fr) 370px;gap:30px;align-items:start}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:47px;margin-bottom:15px}.section-heading>div{display:flex;align-items:center;gap:10px}.section-index{font:italic 14px Georgia,serif;color:#9ea98f;background:#ecefe3;width:28px;height:28px;display:grid;place-items:center;border-radius:50%}.section-heading h2{font-family:var(--serif);font-size:19px;letter-spacing:1px;white-space:nowrap}.count{font-size:10px;color:#8f9589;background:#eaece2;padding:2px 8px;border-radius:3px;margin-left:3px;white-space:nowrap}.text-button{font-size:11px;color:#718271;display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:5px 0;white-space:nowrap}.text-button .icon{width:14px;height:14px}.text-button:hover{color:var(--green);text-decoration:underline;text-underline-offset:4px}.roster-toolbar{margin-bottom:20px}.filter-list{display:flex;gap:8px;flex-wrap:wrap}.filter{padding:7px 13px;border:1px solid #dfe3d6;border-radius:5px;font-size:11px;color:#8c9384;min-height:34px;background:transparent;transition:background .15s}.filter:hover{background:#e9ede2}.filter.active{background:var(--green);color:#fff;border-color:var(--green)}.roster-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.hero-card{background:var(--card);border:1px solid var(--line);border-radius:8px;overflow:hidden;transition:box-shadow .18s,border-color .18s;min-width:0}.hero-card:hover{border-color:#a1b098;box-shadow:0 6px 18px #254c3d0a}.hero-card.in-party{border-color:#7e997c}.hero-card.pending{outline:2px solid var(--gold);outline-offset:2px}.hero-info-button{padding:15px 13px 12px;width:100%;text-align:left;display:block}.hero-top{display:flex;gap:10px;align-items:center;position:relative;margin-bottom:15px}.portrait{height:53px;width:53px;flex-shrink:0;border-radius:8px}.hero-top>div{min-width:0}.hero-top h3{font-family:var(--serif);font-size:18px;line-height:1.4;letter-spacing:1px;margin:1px 0 3px}.hero-title{font-size:8px;letter-spacing:.4px;color:#979a8e;white-space:nowrap}.job-label{display:flex;gap:3px;font-size:8px;color:#8d937f;align-items:center}.job-label .icon{width:11px;height:11px}.details-mark{position:absolute;right:-2px;top:4px;color:#b6bcac}.details-mark .icon{width:11px;height:11px}.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px 12px;margin-bottom:15px}.stat{display:flex;align-items:center;gap:5px;line-height:1.2}.stat-label{font-size:9px;color:#8b9284;flex:1;white-space:nowrap}.stat-value{font-size:12px;font-family:Georgia,serif;color:#5c695a;font-variant-numeric:tabular-nums}.grade{display:inline-grid;place-items:center;font:700 12px/1.2 Georgia,serif;width:17px;min-width:17px;height:18px;border-radius:3px;background:#eeede5;color:#969989}.grade-S{background:#f1e4c0;color:#ad8040}.grade-A{background:#efe5d2;color:#aa8353}.grade-B{background:#e2ead6;color:#798e53}.grade-C{background:#deebe1;color:#638f70}.grade-D{background:#e1e9e7;color:#759089}.grade-E{background:#e5e8ec;color:#87909e}.grade-F,.grade-G{background:#edece7;color:#a9a99e}.ability-tags{display:flex;gap:4px;flex-wrap:wrap;align-content:flex-start;min-height:19px}.hero-card .ability-tags{min-height:39px}.ability-tag{font-size:8px;line-height:1.5;padding:2px 5px;border-radius:3px;border:1px solid #dee5d6;color:#7d8c73;background:#f6f8ef;white-space:nowrap}.ability-tag.bad{background:#faf0e9;border-color:#edddd1;color:#ab8970}.assign-button{border-top:1px solid #eceee4;background:#fafbf5;display:flex;gap:5px;justify-content:center;align-items:center;width:100%;height:33px;color:#8f9a82;font-size:10px;letter-spacing:.5px}.assign-button .icon{width:12px;height:12px}.assign-button.assigned{background:#edf2e6;border-color:#dce6d2;color:#64805c}.assign-button:hover{background:#e5ecdb;color:#3b653d}.change-label{font-size:8px;color:#8e9b81;margin-left:auto;padding-right:12px}.assign-button.assigned .icon{margin-left:12px}.assign-button.assigned span:first-of-type{flex:1;text-align:left}.roster-footnote{color:#969c8e;font-size:10px;line-height:1.9;padding:21px 2px 30px;display:block}.roster-footnote>.icon{height:13px;width:13px;vertical-align:middle;margin-right:4px}.roster-footnote b{font-weight:400;color:#798671}
.planning-panel{position:sticky;top:20px;padding-bottom:25px}.party-panel,.enemy-panel{border:1px solid var(--line);background:#fcfcf7;border-radius:8px;padding:17px 19px}.party-panel .section-heading,.enemy-panel .section-heading{min-height:30px;margin-bottom:12px}.party-panel .section-heading h2,.enemy-panel .section-heading h2{font-size:17px}.party-panel .section-index,.enemy-panel .section-index{font-size:12px;width:25px;height:25px}.party-count{font-size:10px;color:#9a9f91}.party-count b{font-size:15px;font-weight:500;color:var(--green);margin-right:3px}.formation-guide{font-size:10px;color:#9ba18f;line-height:1.8;min-height:36px;margin:0 0 8px}.formation-guide.selecting{color:#8d754a;background:#f3eddd;border-radius:3px;padding:3px 6px}.party-board{background:#eff1e7;padding:11px 12px 6px;border-radius:5px;position:relative;border:1px solid #e5e9da}.board-enemy-label{display:flex;align-items:center;justify-content:center;color:#929e86;font-size:8px;gap:5px;letter-spacing:1px;margin-bottom:10px}.board-enemy-label .icon{width:11px;height:11px}.formation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;position:relative}.formation-slot{min-height:100px;border:1px dashed #d2d9c6;border-radius:5px;display:flex;align-items:center;flex-direction:column;justify-content:center;position:relative;padding:18px 3px 7px;min-width:0}.formation-slot.occupied{border:1px solid #c2ceb3;background:#fcfdf8;box-shadow:0 2px 3px #53684105}.slot-position{font-size:7px;position:absolute;top:4px;left:6px;color:#a0aa92;letter-spacing:.6px}.formation-slot strong{font-size:10px;line-height:1.5;font-weight:600;margin-top:3px;letter-spacing:.4px}.slot-portrait{width:33px;height:33px;border-radius:5px}.slot-job{font-size:7px;color:#9ca48f}.empty-icon{color:#b9c3ab}.empty-icon .icon{width:15px;height:15px}.empty-label{font-size:8px;color:#aeb69f;margin-top:2px}.column-labels{display:grid;grid-template-columns:repeat(3,1fr);text-align:center;font-size:7px;color:#9ba58d;letter-spacing:3px;margin-top:6px}.guard-link{position:absolute;top:-10px;right:5px;background:#e6edde;border:1px solid #c6d3bc;border-radius:3px;color:#79906c;z-index:1;line-height:1;padding:2px}.guard-link .icon{height:11px;width:11px}.guard-ready{position:absolute;right:5px;bottom:6px;color:#8ea07b}.guard-ready .icon{height:11px;width:11px}.formation-slot.guarded:before{content:'';position:absolute;top:-9px;height:8px;border-left:1px dashed #9fb18b;left:50%}.formation-slot:hover:is(button){background:#f4f7e9;border-color:#8da17b}.formation-slot.slot-selected{outline:2px solid var(--green);outline-offset:1px;background:#edf2df}.formation-slot.awaiting{border-style:dashed;border-color:#b39758;background:#fbf9ee}.formation-slot.awaiting:hover{background:#f0e9d3;border-color:#917236}.board-legend{display:flex;align-items:center;justify-content:space-between;margin-top:10px;gap:4px}.board-legend>span{display:flex;align-items:center;gap:4px;color:#99a18e;font-size:8px}.legend-line{height:0;width:12px;border-top:1px dashed #8ba177}.board-legend .text-button{font-size:8px}.board-legend .icon{height:10px;width:10px}.slot-actions{display:flex;justify-content:space-between;border-top:1px solid var(--line);margin-top:9px;padding-top:6px}.slot-actions .text-button{font-size:10px}.cancel-selection{display:block;margin:8px auto 0;font-size:9px;color:#a28654;text-decoration:underline;text-underline-offset:3px}.enemy-panel{margin-top:17px}.enemy-options{display:grid;gap:7px}.enemy-option{display:flex;align-items:center;text-align:left;gap:10px;border:1px solid #e3e6da;padding:9px 10px;border-radius:5px;background:#fdfdf9;transition:border-color .15s}.enemy-option.selected{border-color:#90a081;background:#f0f3e8}.enemy-option:hover{border-color:#a3ad96}.enemy-emblem{width:33px;height:33px;display:grid;place-items:center;border-radius:5px;color:#8c947c;background:#e9ecdf}.enemy-emblem .icon{width:20px;height:20px}.enemy-emblem.shadow{color:#938777;background:#eee9de}.enemy-emblem.arcane{color:#829199;background:#e5ecec}.enemy-option strong{font:600 12px var(--serif);letter-spacing:.5px;display:block;margin-bottom:4px}.enemy-option small{font-size:8px;color:#969e8c}.radio-dot{width:12px;height:12px;margin-left:auto;border:1px solid #d0d6c5;border-radius:50%;position:relative;flex-shrink:0}.selected .radio-dot{border-color:#7c9170}.selected .radio-dot:after{content:'';position:absolute;width:6px;height:6px;border-radius:50%;top:2px;left:2px;background:#7c9170}.enemy-description{font-size:10px;line-height:1.9;color:#929b87;padding:12px 0 9px}.enemy-preview-button{width:100%;border-top:1px solid var(--line);padding:11px 0 0;display:flex;align-items:center;gap:6px;font-size:10px;color:#728368;justify-content:center}.enemy-preview-button .icon{width:13px;height:13px}.enemy-preview-button .icon:last-child{margin-left:auto}.enemy-preview-button:hover{color:var(--green)}.departure{margin-top:17px}.primary-button{background:var(--green);color:#fcfcf4;border:1px solid var(--green);border-radius:5px;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:12px 20px;font-size:12px;letter-spacing:.8px;min-height:45px;transition:background .15s}.primary-button:hover:not(:disabled){background:#31604c;box-shadow:0 3px 10px #214b3e16}.primary-button .icon{width:17px;height:17px}.start-button{width:100%;height:51px;font:500 15px var(--serif);letter-spacing:1px;justify-content:flex-start;padding:0 20px}.start-button .icon:last-child{margin-left:auto}.start-button .icon:first-child{margin-right:14px}.departure p{font-size:9px;text-align:center;color:#9fa595;margin-top:9px}.secondary-button{border:1px solid #d8ddce;border-radius:5px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:11px;padding:9px 15px;min-height:39px;background:#fcfcf6;color:#76846a;white-space:nowrap}.secondary-button .icon{width:15px;height:15px}.secondary-button:hover:not(:disabled){background:#eff3e7;border-color:#a3b092}.site-footer{max-width:1424px;margin:28px auto 0;padding:24px 0;border-top:1px solid #e2e5d8;display:flex;justify-content:space-between;color:#9ca38f;font-size:9px;align-items:center}.site-footer>span:first-child{display:flex;align-items:center;gap:7px;font-family:var(--serif);letter-spacing:1px}.site-footer .icon{height:14px;width:14px}.site-footer i{font-style:normal;font-size:8px;letter-spacing:1.5px;margin-left:25px}
.table-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:6px;background:var(--card)}table{border-collapse:collapse;width:100%;text-align:left;white-space:nowrap}th{font-weight:500}.comparison-table{font-size:10px}.comparison-table caption{font-size:12px}.comparison-table thead th{padding:13px 9px;background:#edf0e5;font-size:9px;color:#8b9581}.comparison-table td,.comparison-table tbody th{padding:12px 8px;border-top:1px solid var(--line)}.comparison-table .grade{width:16px;height:17px;font-size:10px;margin-right:4px}.table-number{font:12px Georgia,serif;color:#89917f}.selected-row{background:#f5f8ed}.table-hero{display:flex;align-items:center;gap:8px;padding:0;text-align:left}.table-hero .portrait{width:31px;height:31px;border-radius:5px}.table-hero>span{font-size:11px;font-family:var(--serif);letter-spacing:.3px}.table-hero small{display:block;font:8px var(--sans);margin-top:3px;color:#9aa38d}.comparison-table .ability-tags{max-width:175px;min-width:90px}.comparison-table .ability-tag{font-size:7px}.comparison-table .icon-button{width:25px;height:25px}.comparison-table .icon-button .icon{width:12px;height:12px}.icon-button{height:33px;width:33px;display:inline-grid;place-items:center;color:#8a967c;border-radius:5px;padding:5px}.icon-button:hover{background:#edf0e5}
.modal-open{overflow:hidden}.modal-backdrop{position:fixed;inset:0;background:#193a2d70;backdrop-filter:blur(5px);z-index:100;display:flex;align-items:center;justify-content:center;padding:30px;overflow-y:auto;animation:fade-in .15s}.modal{background:#fbfaf3;border:1px solid #e5e6d8;box-shadow:0 15px 90px #102e2a30;border-radius:11px;position:relative;padding:35px;width:min(700px,100%);max-height:90dvh;overflow-y:auto;outline:none}.modal.wide{width:min(1000px,100%)}.modal-close{position:absolute;right:14px;top:14px}.modal-close .icon{width:18px;height:18px}.modal h2{font:600 27px var(--serif);letter-spacing:2px;margin-bottom:14px}.modal h3{font:600 14px var(--serif);letter-spacing:.7px;margin-bottom:14px}.modal h3>span{float:right;font:10px var(--sans);color:#8a977a}.modal-lead{font-size:12px;line-height:2;color:#949b88;margin-bottom:25px}.modal-eyebrow{margin-bottom:12px}.detail-hero{display:flex;align-items:center;gap:23px;padding-bottom:27px;border-bottom:1px solid var(--line);margin-bottom:25px}.portrait.large{height:103px;width:103px;border-radius:12px}.detail-hero h2{font-size:30px;margin-bottom:8px}.detail-hero h2 span{font:11px var(--sans);margin-left:13px;background:#e9efdf;padding:3px 8px;border-radius:3px;color:#8c997d;vertical-align:middle;letter-spacing:0}.detail-hero p{font-size:11px;color:#909a83;line-height:1.9;max-width:390px}.detail-hero .eyebrow{font-size:8px;letter-spacing:1px}.detail-hero .eyebrow span{font-size:8px}.detail-body{display:grid;grid-template-columns:1fr 1fr;gap:35px}.detail-stats{display:grid;gap:13px}.with-bar{display:grid;grid-template-columns:45px 24px 20px 1fr;gap:6px}.with-bar .stat-label{font-size:11px}.with-bar .stat-value{font-size:15px;text-align:right}.stat-track{height:5px;background:#e9ecdf;border-radius:4px;margin-left:5px;overflow:hidden}.stat-track i{display:block;height:100%;background:#9dac84;border-radius:4px}.ability-descriptions{display:grid;gap:12px}.ability-descriptions .ability-tag{font-size:10px;padding:3px 7px}.ability-descriptions p{font-size:10px;color:#8c9780;margin-top:5px;line-height:1.9}.behavior-note{display:flex;align-items:flex-start;gap:14px;background:#edf0e4;border-radius:6px;padding:16px;margin-top:26px}.behavior-note>.icon{color:#8d9d78;margin-top:3px}.behavior-note strong{font-size:11px;font-weight:500}.behavior-note p{font-size:11px;color:#8b967e;line-height:1.9;margin-top:6px}.modal-assign{width:100%;margin-top:23px}.modal-back{margin-top:20px}.enemy-detail-layout{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-bottom:25px}.enemy-preview-board{background:#edf0e4;border:1px solid #e0e5d7;padding:16px;border-radius:6px}.enemy-preview-board .formation-slot{min-height:105px}.enemy-preview-board .slot-portrait{height:35px;width:35px}.enemy-preview-board .board-enemy-label{font-size:9px;letter-spacing:0}.tactic-hint{display:flex;align-items:flex-start;gap:8px;font-size:12px;color:#7f9270;line-height:2;margin-bottom:12px}.tactic-hint .icon{width:17px;height:17px;margin-top:3px}.enemy-member-list{display:grid;gap:0;margin-top:15px}.enemy-member-list>button{display:flex;align-items:center;gap:10px;text-align:left;border-bottom:1px solid var(--line);padding:8px 0}.enemy-member-list>button>.icon:first-child{color:#9ca98d;width:17px;height:17px}.enemy-member-list>button>.icon:last-child{margin-left:auto;width:13px;height:13px;color:#a9b09f}.enemy-member-list span{font-size:11px}.enemy-member-list small{display:block;font-size:9px;color:#a1a891}.rules-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px 30px;margin-bottom:32px}.rules-grid section{padding:0 0 0 38px;position:relative}.rule-number{position:absolute;left:0;top:1px;font:italic 20px Georgia,serif;color:#a7b092}.rules-grid h3{font-size:16px}.rules-grid p{font-size:11px;line-height:2;color:#8c9781}.job-rules{border:1px solid var(--line);border-radius:6px;overflow:hidden}.job-rules>div{display:flex;align-items:flex-start;gap:12px;border-bottom:1px solid var(--line);padding:13px 16px}.job-rules>div:last-child{border:0}.job-rules .icon{color:#93a081;margin-top:3px;width:17px;height:17px}.job-rules strong{font-size:11px;min-width:43px;font-weight:500;line-height:2}.job-rules p{font-size:11px;color:#929b85;line-height:2}.formula-details{margin-top:20px;border-top:1px solid var(--line);padding-top:13px;font-size:11px;color:#8c987f}.formula-details summary{cursor:pointer;color:#768b64}.formula-details p{margin-top:12px;line-height:2}
.battle-shell{max-width:1400px;padding-bottom:15px}.battle-page-heading{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:35px 0 26px}.battle-page-heading h1{font:600 27px/1.5 var(--serif);letter-spacing:1px}.battle-page-heading .eyebrow{margin-bottom:8px}.arena{background:#fbfcf5;border:1px solid #dfe5d6;border-radius:10px;overflow:hidden}.arena-topline{display:flex;align-items:center;justify-content:space-between;padding:13px 25px;background:#edf1e4;border-bottom:1px solid #dfe5d6}.arena-topline>span:first-child{font-size:8px;letter-spacing:2px;color:#939e86;display:flex;align-items:center;gap:8px}.arena-topline .icon{width:14px;height:14px}.turn-counter{font:10px Georgia,serif;letter-spacing:1px;color:#839573}.turn-counter b{font-size:23px;font-weight:400;color:#345d40;margin-left:5px}.turn-counter small{color:#a3ad97;font-size:11px}.live-status{font-size:10px;display:flex;gap:7px;align-items:center;color:#8c9b7d;min-width:66px}.live-status i{background:#9cab89}.pulsing{animation:pulse 1.5s infinite}.arena-sides{display:grid;grid-template-columns:minmax(0,1fr) 72px minmax(0,1fr);padding:20px 30px 25px;gap:0;background:radial-gradient(ellipse at 50% 100%,#e9eddf60,transparent)}.team-heading{display:flex;gap:10px;align-items:center;margin-bottom:16px}.team-crest{display:grid;place-items:center;width:38px;height:42px;clip-path:polygon(0 0,100% 0,100% 75%,50% 100%,0 75%);background:#dfe8d5;color:#829973}.team-crest .icon{width:24px;height:24px}.team-heading small{font-size:8px;letter-spacing:1.4px;color:#9da58e;display:block;line-height:1.4}.team-heading h2{font:600 20px var(--serif);letter-spacing:1px;margin-top:4px}.alive-count{margin-left:auto;font:22px Georgia,serif;color:#6b855b}.alive-count small{display:inline;font-size:13px;letter-spacing:0;color:#a9b29b}.enemies .team-crest{background:#eae3d6;color:#a79776}.enemies .team-heading h2{color:#7c715a}.enemies .alive-count{color:#a08b69}.enemies .alive-count small{color:#b5ab97}.versus{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;padding-top:60px}.versus span{height:55px;border-left:1px solid #dce2d0}.versus b{font:italic 18px Georgia,serif;color:#b7bea8}.battle.formation-grid{gap:12px}.battle .formation-slot{min-height:146px;padding:22px 6px 12px;border-radius:7px}.battle .formation-slot.occupied{background:#fffffa;border-color:#cfd9c1;box-shadow:0 3px 7px #304b3307}.battle .formation-slot.empty{border-color:#e3e7da;background:#f0f3e826;min-height:146px}.battle .slot-position{font-size:8px;left:8px;top:6px}.battle .portrait{width:51px;height:51px;border-radius:8px}.battle .formation-slot strong{font-size:12px;margin-top:6px}.unit-hp{font:15px/1.5 Georgia,serif;color:#678053;white-space:nowrap;display:block;margin-top:3px}.unit-hp small{font-size:10px;color:#9da98e}.hp-track{display:block;height:4px;width:82%;border-radius:3px;background:#e9eddf;overflow:hidden;margin-top:6px}.hp-track>i{display:block;background:#93ad76;height:100%;transition:width .3s}.hp-track>i.low{background:#c49c70}.enemies .hp-track>i{background:#baaa83}.enemies .hp-track>i.low{background:#bf8b75}.enemies .unit-hp{color:#a18d68}.enemies .battle .formation-slot.occupied{border-color:#ddd7c6}.battle .empty-icon .icon{height:18px;width:18px;opacity:.5}.battle .empty-label{font-size:9px;opacity:.5}.battle .formation-slot.acting{outline:2px solid #88a467;outline-offset:2px;background:#f4f9e9;animation:actor-breathe .8s ease-out}.enemies .battle .formation-slot.acting{outline-color:#b29d76;background:#fbf6e9}.battle .formation-slot.hit{animation:hit-flash .7s ease-out}.battle .formation-slot.healed{animation:heal-flash .8s ease-out}.battle .formation-slot.guarding{outline:2px solid #b3a374;background:#f7f1dd}.battle .formation-slot.knocked-out{background:#f0f0e7;border-color:#e2e3d5}.knocked-out .portrait{filter:grayscale(1);opacity:.35}.knocked-out strong,.knocked-out .unit-hp{opacity:.4}.ko-label{font-size:9px;color:#a58a77;position:absolute;top:54px;padding:3px 5px;background:#faf6ecdf;border:1px solid #ded5c3;border-radius:3px;z-index:1}.floating-value{position:absolute;right:3px;top:38px;font:700 24px Georgia,serif;color:#ae6b58;text-shadow:0 1px 4px #fffaef,1px 0 #fff,-1px 0 #fff;z-index:4;animation:float-up .6s ease-out forwards}.floating-value.healing{color:#648951}.unit-trigger{position:absolute;bottom:-8px;left:50%;transform:translateX(-50%);z-index:5;background:#f3ecd2;border:1px solid #d6c89c;color:#97814d;font-size:8px;padding:1px 5px;border-radius:3px;white-space:nowrap;max-width:125%;overflow:hidden;text-overflow:ellipsis}.action-stage{border-top:1px solid #e0e6d6;border-bottom:1px solid #e0e6d6;min-height:105px;padding:17px 26px;display:flex;align-items:center;gap:17px;background:#f3f5e9}.action-job{height:44px;width:44px;flex-shrink:0;display:grid;place-items:center;border:1px solid #d8e1cb;border-radius:50%;color:#8ca274;background:#eaf0df}.action-job.enemy{background:#f0eade;border-color:#e2d8c0;color:#a49470}.action-job .icon{height:23px;width:23px}.action-description{display:flex;flex-direction:column;gap:3px}.action-description small{font-size:8px;color:#a1ac93;letter-spacing:1px}.action-description>strong{font:600 15px/1.7 var(--serif);letter-spacing:.4px}.action-description>span{font-size:10px;color:#95a088}.action-effects{display:flex;gap:12px;flex-wrap:wrap}.action-effects>span{color:#a17d66;font-size:10px}.action-effects b{font-size:9px;font-weight:500;color:#ac7564}.trigger-list{display:flex;gap:4px;flex-wrap:wrap;max-width:280px;margin-left:auto;justify-content:flex-end}.trigger-badge{display:block;font-size:9px;color:#8b854f;background:#f2edd4;border:1px solid #e2dcb9;border-radius:3px;padding:3px 7px;white-space:nowrap}.trigger-badge.bad{color:#ae8b73;background:#f5e9dc;border-color:#e5d3bc}.guard-explanation{display:block;width:100%;font-size:10px;color:#8d8651;text-align:right;margin-bottom:3px}.playback-controls{padding:15px 24px 13px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.progress-label{font-size:10px;color:#9ea68e;font-variant-numeric:tabular-nums}.playback-buttons{margin-left:auto;display:flex;gap:16px;align-items:center}.pause-button{min-height:32px;padding:6px 13px;font-size:10px;background:#f9faf2;min-width:96px}.pause-button .icon{width:13px;height:13px}.speed-controls{display:flex;border:1px solid #dde3d2;border-radius:4px;overflow:hidden}.speed-controls button{padding:5px 9px;font-size:10px;color:#9aa68c;min-height:31px}.speed-controls button.active{background:#e7eedc;color:#678452;font-weight:600}.skip-button{font-size:10px;color:#8e9b7f}.battle-progress{height:3px;background:#edf0e4;width:100%;border-radius:3px;margin-top:2px;overflow:hidden}.battle-progress i{display:block;height:100%;background:#a1b18b;transition:width .2s}.battle-bottom{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:20px;margin-top:22px}.turn-order{padding:16px 20px;border:1px solid var(--line);border-radius:6px;background:#fbfcf5}.turn-order h3{font-size:11px;font-weight:500;margin-bottom:12px;color:#849573}.turn-order h3 small{float:right;font-size:9px;color:#a6af99;font-weight:400}.turn-order>div{display:flex;flex-wrap:wrap;gap:7px}.order-unit{display:flex;gap:5px;align-items:center;border:1px solid #e2e7d8;border-radius:4px;padding:4px 7px;background:#f6f9ee;font-size:9px;min-width:70px}.order-unit .portrait{width:24px;height:24px;border-radius:4px}.order-unit small{display:block;font-size:7px;color:#a1ac93}.order-unit.enemy{background:#f7f2e8;border-color:#e7dfcc;color:#a29476}.order-unit.current{outline:1px solid #9eae87;outline-offset:1px}.spectator-note{display:flex;gap:10px;padding:16px 0;font-size:10px;line-height:2.1;color:#9ba58b}.spectator-note>.icon{width:16px;height:16px;color:#aab49a;flex-shrink:0;margin-top:3px}.battle-log{border:1px solid var(--line);border-radius:5px;background:#fbfcf4;margin-top:22px}.battle-log summary{padding:13px 18px;font-size:11px;cursor:pointer;color:#8d9a7e}.battle-log summary>span{float:right;color:#a8b29a;font-size:10px}.battle-log ol{padding:0 18px 12px;margin:0;max-height:340px;overflow:auto;list-style:none}.battle-log li{display:flex;gap:14px;border-top:1px solid var(--line);padding:8px 0;font-size:10px;color:#839176}.battle-log li>span{font:11px Georgia,serif;color:#a8b19a;min-width:25px}.battle-log li small{display:block;margin-top:2px;color:#a2ab95;font-size:9px}.result-banner{display:flex;align-items:center;gap:20px;border:1px solid #d3dfc4;border-radius:7px;padding:24px 26px;background:#eaf0df;margin-bottom:20px}.result-symbol{width:58px;height:58px;display:grid;place-items:center;border:1px solid #c4d5ae;border-radius:50%;color:#8aa16e;background:#f0f5e6;flex-shrink:0}.result-symbol .icon{height:29px;width:29px}.result-banner small{font-size:9px;letter-spacing:2px;color:#91a476}.result-banner h2{font:600 23px/1.7 var(--serif);letter-spacing:1px;margin:3px 0}.result-banner p{font-size:11px;color:#8e9d7a}.result-banner>.primary-button{margin-left:auto;white-space:nowrap}.result-banner.defeat{background:#f1ece1;border-color:#e2d8c0}.defeat .result-symbol{background:#f8f3e6;border-color:#dcd0b4;color:#b49c71}.defeat h2{color:#8b785b}.defeat p,.defeat small{color:#ab9877}.draw{background:#eceee6;border-color:#d9dfcd}.battle-report{border:1px solid var(--line);background:#fcfcf6;border-radius:8px;padding:24px;margin-top:23px}.battle-report .section-heading{margin-bottom:18px}.report-totals{display:grid;grid-template-columns:repeat(3,1fr);background:#eff3e7;border:1px solid #e4e9da;border-radius:6px;margin-bottom:22px;padding:20px}.report-totals>div{padding:0 20px;border-left:1px solid #dce5ce}.report-totals>div:first-child{padding-left:0;border:0}.report-totals span{font-size:10px;color:#8b9b78;display:block}.report-totals strong{font:29px/1.5 Georgia,serif;color:#7a925e;display:block;margin-top:5px}.report-totals strong small{font:9px var(--sans);color:#a5af95;margin-left:6px}.report-table{font-size:11px}.report-table thead th{font-size:10px;color:#929f83;background:#f1f4e9;padding:12px}.report-table tbody td,.report-table tbody th{border-top:1px solid var(--line);padding:12px;color:#849474}.report-name{display:flex;gap:10px;align-items:center}.report-name .portrait{width:37px;height:37px;border-radius:5px}.report-name>span{font:13px var(--serif);color:#5e7550;letter-spacing:.5px}.report-name small{display:block;font:9px var(--sans);color:#a1ac93;margin-top:5px;letter-spacing:0}.heal-text{color:#769663!important}.ko-text{color:#b39078!important}.report-note{font-size:10px;color:#a1ac93;line-height:1.9;margin-top:13px}.result-actions{display:flex;justify-content:center;gap:12px;margin-top:24px}
#toast{position:fixed;bottom:26px;left:50%;transform:translate(-50%,15px);max-width:calc(100% - 32px);padding:12px 22px;border-radius:6px;background:#234937ed;color:#f4f6eb;font-size:12px;z-index:200;box-shadow:0 5px 20px #142b2320;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;text-align:center}#toast.visible{opacity:1;transform:translate(-50%,0)}
@keyframes fade-in{from{opacity:0}to{opacity:1}}@keyframes pulse{0%,100%{opacity:1}50%{opacity:.3}}@keyframes actor-breathe{0%{transform:translateY(0)}35%{transform:translateY(-5px)}100%{transform:translateY(0)}}@keyframes hit-flash{0%,40%{background:#f6ded0}20%,100%{background:#fffffa}}@keyframes heal-flash{0%,40%{background:#d9e9c8}100%{background:#fffffa}}@keyframes float-up{0%{transform:translateY(12px);opacity:0}35%{opacity:1}100%{transform:translateY(-5px);opacity:1}}
@media(min-width:1450px){.workspace{grid-template-columns:minmax(0,1fr) 390px;gap:36px}.roster-grid{gap:18px}.hero-info-button{padding:18px 17px 13px}.hero-top{gap:13px}.hero-top .portrait{height:58px;width:58px}.stats-grid{gap:9px 20px}.stat-label{font-size:10px}.hero-top h3{font-size:20px}.hero-title{font-size:9px}.ability-tag{font-size:9px}.hero-card .ability-tags{min-height:25px}.assign-button{height:36px}}
@media(max-width:1250px){.header-inner{gap:36px;padding:0 30px}.main-shell{padding:0 30px}.site-header nav{gap:22px}.prototype{font-size:7px;letter-spacing:.5px}.workspace{grid-template-columns:minmax(0,1fr) 340px;gap:22px}.roster-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-info-button{padding:17px}.hero-card .ability-tags{min-height:22px}.hero-top{gap:13px}.hero-title{font-size:9px}.hero-top .portrait{height:56px;width:56px}.stats-grid{gap:9px 19px}.stat-label{font-size:10px}.section-heading h2{font-size:18px}.section-heading .text-button{font-size:10px}.site-footer{margin-left:30px;margin-right:30px}.intro-note{width:290px}.arena-sides{padding:20px 22px 24px;grid-template-columns:minmax(0,1fr) 48px minmax(0,1fr)}.battle .formation-slot{min-height:144px}.battle .portrait{width:46px;height:46px}.trigger-list{max-width:220px}.battle-bottom{grid-template-columns:1fr}.spectator-note{padding:0 4px}.spectator-note br{display:none}.spectator-note p{font-size:10px}}
@media(max-width:950px){.header-inner{gap:25px}.prototype{display:none}.site-header nav{margin-left:auto}.workspace{grid-template-columns:minmax(0,1fr) 310px;gap:20px}.main-shell{padding:0 24px}.header-inner{padding:0 24px}.page-intro h1{font-size:29px}.intro-note{width:235px;padding-left:5px}.intro-note>span:not(.little-star){font-size:14px}.intro-note small{font-size:8px}.intro-note>svg{width:140px}.roster-grid{gap:10px}.hero-info-button{padding:13px 10px}.hero-top{gap:8px}.hero-top .portrait{height:42px;width:42px}.hero-top h3{font-size:16px}.hero-title{font-size:7px}.stats-grid{gap:8px 9px}.stat-label{font-size:8px}.stat-value{font-size:11px}.hero-card .ability-tags{min-height:39px}.ability-tag{font-size:7px}.assign-button{font-size:9px}.section-heading h2{font-size:16px}.section-heading .text-button{font-size:9px}.section-index{width:23px;height:23px;font-size:12px}.count{font-size:8px}.filter-list{gap:5px}.filter{padding:5px 9px;font-size:10px;min-height:30px}.party-panel,.enemy-panel{padding:15px}.planning-panel{top:15px}.party-panel .section-heading h2{font-size:16px}.party-board{padding:11px 9px 6px}.formation-grid{gap:7px}.formation-slot{min-height:93px}.slot-portrait{width:29px;height:29px}.formation-slot strong{font-size:9px}.board-legend>span{font-size:7px}.battle-page-heading h1{font-size:23px}.arena-sides{padding:20px 18px 24px;grid-template-columns:minmax(0,1fr) 35px minmax(0,1fr)}.team-heading h2{font-size:18px}.team-heading{gap:8px}.team-heading small{font-size:7px;letter-spacing:1px}.team-crest{height:35px;width:30px}.team-crest .icon{height:20px;width:20px}.battle.formation-grid{gap:9px}.battle .formation-slot{min-height:135px}.battle .formation-slot.empty{min-height:135px}.battle .portrait{height:43px;width:43px}.battle .formation-slot strong{font-size:11px}.unit-hp{font-size:13px}.unit-hp small{font-size:8px}.unit-trigger{font-size:7px}.action-stage{padding:15px 20px;gap:12px}.action-description>strong{font-size:13px}.trigger-list{max-width:185px}.trigger-badge{font-size:8px;padding:2px 5px}.guard-explanation{font-size:9px}.result-banner{gap:13px;padding:20px}.result-banner h2{font-size:20px}.result-banner p{font-size:10px}.result-banner>.primary-button{font-size:10px;padding:10px 12px}.result-symbol{height:45px;width:45px}}
@media(max-width:760px){.site-header{height:73px}.header-inner{padding:0 20px;gap:15px}.brand{gap:9px}.brand strong{font-size:19px;letter-spacing:2px}.brand small{font-size:6px;letter-spacing:1.5px}.brand-seal{width:33px;height:39px}.brand-seal .icon{width:22px;height:22px}.site-header nav{gap:18px}.nav-item{font-size:0;gap:0}.nav-item .icon{width:19px;height:19px}.nav-item.active:after{height:2px}.nav-item.active{font-size:10px;gap:4px}.nav-item.active .icon{height:14px;width:14px}.main-shell{padding:0 20px}.page-intro{padding:30px 0 25px}.page-intro h1{font-size:27px;letter-spacing:1px}.page-intro p{font-size:10px;line-height:2;max-width:320px}.eyebrow{font-size:8px;letter-spacing:1.5px}.eyebrow span{font-size:9px}.intro-note{display:none}.workspace{display:flex;flex-direction:column-reverse;gap:20px}.planning-panel{position:static;width:100%;padding-bottom:0;display:grid;grid-template-columns:1fr 1fr;gap:13px;scroll-margin-top:12px}.party-panel{grid-row:span 2;padding:14px}.enemy-panel{margin:0;padding:14px}.departure{margin-top:0;grid-column:2;padding:0}.party-panel .section-heading,.enemy-panel .section-heading{margin-bottom:8px;gap:6px}.party-panel .section-heading h2,.enemy-panel .section-heading h2{font-size:15px}.section-heading>div{gap:7px}.party-panel .section-index,.enemy-panel .section-index{width:21px;height:21px;font-size:10px}.party-count{font-size:8px;white-space:nowrap}.formation-guide{font-size:8px;margin-bottom:6px;min-height:31px}.party-board{padding:8px 8px 5px}.formation-grid{gap:6px}.formation-slot{min-height:89px}.slot-portrait{height:29px;width:29px}.slot-position{font-size:6px;left:4px;top:4px}.formation-slot strong{font-size:9px}.slot-job{font-size:6px}.empty-label{font-size:7px}.board-enemy-label{font-size:7px;letter-spacing:.5px;margin-bottom:8px}.board-legend{flex-wrap:wrap;margin-top:7px;gap:0}.board-legend>span{font-size:7px}.board-legend .text-button{font-size:7px}.enemy-option{gap:7px;padding:7px}.enemy-emblem{height:25px;width:25px}.enemy-emblem .icon{height:15px;width:15px}.enemy-option strong{font-size:11px;margin-bottom:2px}.enemy-option small{font-size:7px}.radio-dot{height:10px;width:10px}.selected .radio-dot:after{width:4px;height:4px}.enemy-description{font-size:8px;padding:9px 0 6px;line-height:1.9}.enemy-preview-button{font-size:8px;padding-top:8px;gap:5px}.enemy-preview-button .icon{height:11px;width:11px}.start-button{font-size:12px;letter-spacing:.3px;padding:0 12px;min-height:43px;height:43px}.start-button .icon{height:14px;width:14px}.start-button .icon:first-child{margin-right:0}.departure p{font-size:7px;margin-top:6px}.roster-panel{width:100%}.roster-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.hero-top .portrait{height:44px;width:44px}.hero-top h3{font-size:17px}.hero-title{font-size:8px}.hero-card .ability-tags{min-height:39px}.hero-info-button{padding:12px 11px}.section-heading h2{font-size:18px}.roster-panel>.section-heading{margin-bottom:13px}.roster-panel>.section-heading .text-button{font-size:10px}.filter{font-size:11px;padding:6px 14px;min-height:32px}.filter-list{gap:7px}.roster-toolbar{margin-bottom:15px}.stats-grid{gap:8px 12px}.stat-label{font-size:9px}.stat-value{font-size:12px}.ability-tag{font-size:8px}.site-footer{margin-left:20px;margin-right:20px;gap:15px;align-items:flex-start;padding:18px 0;margin-top:5px;font-size:8px}.site-footer>span:last-child{text-align:right}.site-footer i{display:block;font-size:7px;margin:5px 0 0}.modal-backdrop{padding:18px}.modal{padding:30px 22px 24px;max-height:92dvh;border-radius:8px}.detail-hero{gap:16px}.portrait.large{height:85px;width:85px}.detail-hero h2{font-size:26px}.detail-hero .eyebrow span{display:none}.detail-body{gap:24px}.enemy-detail-layout{gap:20px}.enemy-preview-board{padding:12px}.battle-shell{padding:0 16px}.battle-page-heading{padding:25px 0 20px;gap:10px}.battle-page-heading h1{font-size:20px}.battle-page-heading .secondary-button{font-size:10px;padding:8px 10px}.battle-page-heading .secondary-button .icon{width:13px;height:13px}.arena-sides{grid-template-columns:minmax(0,1fr) 22px minmax(0,1fr);padding:17px 14px 22px}.team-heading h2{font-size:15px;letter-spacing:.2px}.team-crest{width:24px;height:30px}.team-crest .icon{width:16px;height:16px}.team-heading{gap:6px}.team-heading small{font-size:5px;letter-spacing:1px}.alive-count{font-size:18px}.alive-count small{font-size:10px;letter-spacing:0}.versus b{font-size:12px}.versus span{height:45px}.battle.formation-grid{gap:7px}.battle .formation-slot,.battle .formation-slot.empty{min-height:124px;padding:20px 3px 9px}.battle .portrait{height:37px;width:37px;border-radius:6px}.battle .formation-slot strong{font-size:10px;letter-spacing:0}.battle .slot-position{font-size:6px;left:5px;top:4px}.unit-hp{font-size:12px}.unit-hp small{font-size:7px}.hp-track{height:3px;width:85%;margin-top:5px}.floating-value{font-size:20px;right:0;top:32px}.unit-trigger{font-size:6px;padding:1px 3px;max-width:140%}.action-stage{min-height:120px;flex-wrap:wrap;padding:14px 17px;gap:8px 12px}.action-job{height:37px;width:37px}.action-job .icon{height:19px;width:19px}.action-description{flex:1}.action-description>strong{font-size:13px}.action-description small{font-size:7px}.action-effects>span{font-size:9px}.trigger-list{max-width:none;width:100%;margin-left:49px;justify-content:flex-start}.guard-explanation{text-align:left;width:auto;margin-right:4px;margin-bottom:0;font-size:8px}.trigger-badge{font-size:7px}.arena-topline{padding:11px 17px}.arena-topline>span:first-child{font-size:6px;letter-spacing:1px}.turn-counter{font-size:9px}.turn-counter b{font-size:21px}.live-status{font-size:9px;min-width:60px}.playback-controls{padding:12px 15px}.playback-buttons{gap:11px}.progress-label{font-size:8px}.speed-controls button{font-size:9px;padding:4px 7px;min-height:29px}.pause-button{padding:5px 10px;min-height:29px;min-width:84px;font-size:9px}.skip-button{font-size:9px}.skip-button .icon{width:12px;height:12px}.battle-bottom{margin-top:16px;gap:10px}.turn-order{padding:13px 15px}.order-unit{flex:1;min-width:65px;gap:5px;padding:4px 5px}.order-unit .portrait{width:22px;height:22px}.order-unit>span{font-size:8px}.order-unit small{font-size:6px}.spectator-note{font-size:9px;padding:0 2px}.battle-log{margin-top:14px}.result-banner{flex-wrap:wrap;padding:17px;gap:12px}.result-banner h2{font-size:19px}.result-banner>div{flex:1}.result-banner>.primary-button{margin-left:56px;font-size:10px;min-height:36px;padding:8px 14px}.result-symbol{width:44px;height:44px}.result-symbol .icon{height:23px;width:23px}.result-banner small{font-size:8px;letter-spacing:1px}.result-banner p{font-size:9px}.battle-report{padding:18px}.battle-report .section-heading h2{font-size:17px}.battle-report .text-button{font-size:9px}.report-totals{padding:15px;gap:12px}.report-totals>div{padding-left:12px;padding-right:0}.report-totals span{font-size:8px;line-height:1.8}.report-totals strong{font-size:24px}.report-totals strong small{font-size:7px}.report-table thead th{font-size:8px;padding:10px}.report-table td,.report-table tbody th{font-size:9px}.report-name>span{font-size:12px}.report-name small{font-size:7px}.report-name .portrait{width:30px;height:30px}.result-actions{gap:10px;flex-wrap:wrap}.result-actions .primary-button,.result-actions .secondary-button{font-size:10px;min-height:39px;padding:10px 12px}.report-note{font-size:9px}}
@media(max-width:540px){.main-shell{padding:0 16px}.header-inner{padding:0 16px}.site-header nav{gap:15px}.nav-item.active{font-size:9px}.brand strong{font-size:18px}.page-intro h1{font-size:26px;letter-spacing:.6px}.page-intro p{max-width:300px;font-size:10px}.page-intro{padding:25px 0 23px}.planning-panel{gap:10px}.party-panel,.enemy-panel{padding:11px}.party-panel .section-heading h2,.enemy-panel .section-heading h2{font-size:12px;letter-spacing:.4px}.party-panel .section-index,.enemy-panel .section-index{width:18px;height:18px;font-size:9px}.section-heading>div{gap:5px}.party-count b{font-size:12px}.party-count{font-size:7px}.enemy-panel .count{font-size:6px;padding:1px 5px;margin:0}.formation-guide{font-size:7px;line-height:1.8;min-height:38px}.party-board{padding:7px 5px 4px}.board-enemy-label{font-size:6px;gap:3px}.board-enemy-label .icon{height:9px;width:9px}.formation-grid{gap:5px}.formation-slot{min-height:82px;padding-top:15px;padding-bottom:6px}.slot-portrait{height:26px;width:26px;border-radius:4px}.slot-position{font-size:5px;left:3px}.formation-slot strong{font-size:8px}.slot-job{font-size:5px}.empty-label{font-size:6px}.empty-icon .icon{height:12px;width:12px}.column-labels{font-size:6px;letter-spacing:1px;margin-top:4px}.guard-link{right:3px;padding:1px;top:-8px}.guard-link .icon{height:9px;width:9px}.guard-ready{right:3px;bottom:3px}.guard-ready .icon{height:9px;width:9px}.board-legend{gap:2px;margin-top:6px}.board-legend>span{font-size:6px}.board-legend .text-button{font-size:6px;padding:1px 0}.board-legend .icon{height:8px;width:8px}.legend-line{width:8px}.enemy-option{padding:6px;gap:6px}.enemy-option strong{font-size:9px}.enemy-option small{font-size:6px}.enemy-emblem{height:22px;width:22px;border-radius:3px}.enemy-emblem .icon{height:14px;width:14px}.enemy-options{gap:5px}.radio-dot{height:9px;width:9px}.selected .radio-dot:after{width:3px;height:3px}.enemy-description{font-size:7px;line-height:1.85;padding:8px 0 6px}.enemy-preview-button{font-size:7px;gap:3px;padding-top:7px}.enemy-preview-button .icon{height:9px;width:9px}.start-button{font-size:11px;padding:0 10px;gap:6px;height:42px}.start-button .icon{height:12px;width:12px}.departure p{font-size:6px;line-height:1.7}.roster-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.hero-info-button{padding:14px 12px 10px}.hero-top .portrait{height:47px;width:47px}.hero-top{gap:9px;margin-bottom:14px}.hero-top h3{font-size:18px}.hero-title{font-size:7px}.job-label{font-size:7px}.job-label .icon{width:10px;height:10px}.stats-grid{gap:8px 11px;margin-bottom:13px}.stat-label{font-size:9px}.stat-value{font-size:12px}.grade{font-size:11px;width:16px;min-width:16px;height:17px}.ability-tag{font-size:7px}.hero-card .ability-tags{min-height:35px}.assign-button{height:33px;font-size:9px}.change-label{font-size:7px;padding-right:8px}.assign-button.assigned .icon{margin-left:8px}.roster-panel>.section-heading h2{font-size:17px}.roster-panel>.section-heading .text-button{font-size:9px}.roster-panel>.section-heading .text-button .icon{width:12px;height:12px}.filter-list{gap:5px}.filter{font-size:10px;padding:5px 12px}.section-heading{min-height:36px}.roster-footnote{font-size:9px;padding-bottom:15px}.site-footer{margin-left:16px;margin-right:16px;font-size:7px}.site-footer>span:first-child{font-size:8px;min-width:120px}.modal-backdrop{padding:10px}.modal{padding:28px 18px 20px}.modal h2{font-size:23px}.modal-lead{font-size:10px;line-height:2}.modal-close{top:8px;right:8px}.detail-hero{gap:13px;padding-bottom:20px;margin-bottom:20px}.portrait.large{height:75px;width:75px}.detail-hero .eyebrow{font-size:7px;letter-spacing:1px;margin-bottom:7px}.detail-hero h2{font-size:25px;margin-bottom:6px}.detail-hero h2 span{font-size:9px;padding:2px 6px;margin-left:8px}.detail-hero p{font-size:9px}.detail-body{grid-template-columns:1fr;gap:24px}.detail-stats{grid-template-columns:1fr 1fr;gap:16px}.with-bar{grid-template-columns:37px 22px 17px;position:relative;gap:6px;padding-bottom:9px}.with-bar .stat-label{font-size:10px}.with-bar .stat-track{position:absolute;left:0;bottom:0;width:100%;margin:0;height:4px}.with-bar .stat-value{font-size:14px}.ability-descriptions{gap:13px}.ability-descriptions p{font-size:10px}.ability-descriptions .ability-tag{font-size:9px}.behavior-note{padding:13px;gap:10px;margin-top:20px}.behavior-note p{font-size:10px}.modal-assign{margin-top:17px;font-size:11px}.enemy-detail-layout{grid-template-columns:1fr}.enemy-preview-board{padding:14px 20px}.enemy-preview-board .formation-slot{min-height:100px}.enemy-preview-board .slot-position{font-size:8px}.enemy-preview-board .slot-portrait{height:35px;width:35px}.enemy-preview-board .slot-job{font-size:8px}.enemy-preview-board .formation-slot strong{font-size:11px}.enemy-preview-board .board-enemy-label{font-size:8px}.rules-grid{grid-template-columns:1fr;gap:23px}.rules-grid h3{font-size:15px}.rules-grid p{font-size:10px}.job-rules>div{gap:9px;padding:12px}.job-rules strong{font-size:10px;min-width:36px}.job-rules p{font-size:10px}.job-rules .icon{width:14px;height:14px}.battle-page-heading{gap:8px;padding:23px 0 18px}.battle-page-heading h1{font-size:17px;letter-spacing:.2px}.battle-page-heading .eyebrow{font-size:6px;letter-spacing:1px}.battle-page-heading .eyebrow span{font-size:7px}.battle-page-heading .secondary-button{font-size:8px;padding:6px 9px;gap:5px;min-height:32px}.battle-page-heading .secondary-button .icon{width:11px;height:11px}.arena-topline{padding:10px 12px}.arena-topline>span:first-child{font-size:5px;letter-spacing:1px;gap:4px}.arena-topline>span:first-child .icon{height:10px;width:10px}.live-status{font-size:7px;min-width:49px;gap:4px}.live-status i{height:4px;width:4px}.turn-counter{font-size:8px;letter-spacing:.3px}.turn-counter b{font-size:19px;margin-left:3px}.turn-counter small{font-size:9px}.arena-sides{padding:13px 10px 18px;grid-template-columns:minmax(0,1fr) 14px minmax(0,1fr)}.team-heading{gap:4px;margin-bottom:13px}.team-crest{width:19px;height:24px}.team-crest .icon{height:13px;width:13px}.team-heading h2{font-size:12px;letter-spacing:0;white-space:nowrap}.team-heading small{font-size:4px;letter-spacing:.6px}.alive-count{font-size:14px}.alive-count small{font-size:7px}.versus{padding-top:50px;gap:12px}.versus b{font-size:8px}.versus span{height:40px}.battle.formation-grid{gap:5px}.battle .formation-slot,.battle .formation-slot.empty{min-height:111px;padding:17px 2px 8px;border-radius:5px}.battle .slot-position{font-size:5px;left:3px;top:4px;letter-spacing:0}.battle .portrait{width:29px;height:29px;border-radius:5px}.battle .formation-slot strong{font-size:8px;margin-top:5px;letter-spacing:0}.unit-hp{font-size:11px;line-height:1.2;margin-top:5px}.unit-hp small{display:block;font-size:6px;margin-top:2px}.hp-track{width:87%;height:3px;margin-top:5px}.battle .formation-slot.acting{outline-width:1.5px;outline-offset:1px}.floating-value{font-size:18px;top:26px;right:0}.unit-trigger{font-size:5px;bottom:-7px;border-radius:2px;max-width:170%}.ko-label{top:42px;font-size:6px;padding:2px}.action-stage{padding:13px 12px;gap:8px;min-height:130px}.action-job{height:30px;width:30px}.action-job .icon{height:16px;width:16px}.action-description>strong{font-size:11px;letter-spacing:0}.action-description>span{font-size:8px}.action-description small{font-size:6px}.action-effects{gap:6px}.action-effects>span{font-size:8px}.action-effects b{font-size:7px}.trigger-list{margin-left:38px;gap:3px}.trigger-badge{font-size:6px;padding:2px 4px}.guard-explanation{font-size:7px;width:100%}.playback-controls{padding:10px 12px;gap:8px}.progress-label{font-size:7px;width:100%;text-align:center}.playback-buttons{width:100%;justify-content:space-between;gap:6px}.pause-button{font-size:8px;min-width:75px;padding:5px 8px;min-height:28px;gap:5px}.pause-button .icon{width:11px;height:11px}.speed-controls button{font-size:8px;padding:5px 7px;min-height:28px}.skip-button{font-size:8px;gap:4px}.skip-button .icon{height:11px;width:11px}.turn-order h3{font-size:10px}.turn-order h3 small{font-size:8px}.turn-order>div{gap:5px}.order-unit{min-width:calc(25% - 5px)}.battle-report{padding:15px}.battle-report .section-heading h2{font-size:15px}.battle-report .section-heading .text-button{font-size:8px}.battle-report .section-index{width:22px;height:22px}.report-totals{padding:12px;gap:7px}.report-totals>div{padding-left:8px}.report-totals span{font-size:7px}.report-totals strong{font-size:21px}.report-totals strong small{font-size:6px}.result-banner{padding:15px;gap:10px}.result-symbol{height:36px;width:36px}.result-symbol .icon{height:20px;width:20px}.result-banner h2{font-size:16px;letter-spacing:.3px}.result-banner small{font-size:7px}.result-banner p{font-size:8px;line-height:1.8}.result-banner>.primary-button{margin-left:46px;min-height:33px;padding:6px 10px;font-size:9px}.result-banner>.primary-button .icon{width:12px;height:12px}.result-actions{flex-direction:column}.report-name{gap:7px}.report-name>span{font-size:11px}.report-name small{font-size:6px}.report-name .portrait{width:25px;height:25px}.report-table tbody th,.report-table tbody td{padding:9px;font-size:8px}.report-table thead th{font-size:7px;padding:9px}.report-note{font-size:8px}.modal .comparison-table .ability-tags{min-width:100px}.slot-actions{flex-direction:column}.slot-actions .text-button{font-size:8px;padding:2px 0}.cancel-selection{font-size:8px}}
@media(max-width:540px){
  .planning-panel{grid-template-columns:1fr;gap:13px}.party-panel{grid-row:auto;padding:17px}.enemy-panel{padding:17px}.departure{grid-column:auto}.party-panel .section-heading h2,.enemy-panel .section-heading h2{font-size:17px}.party-panel .section-index,.enemy-panel .section-index{width:25px;height:25px;font-size:12px}.party-count{font-size:10px}.party-count b{font-size:16px}.party-panel .section-heading,.enemy-panel .section-heading{margin-bottom:12px}.enemy-panel .count{font-size:9px;padding:2px 7px}.formation-guide{font-size:10px;min-height:36px;line-height:1.8;margin-bottom:9px}.party-board{padding:11px 10px 7px}.board-enemy-label{font-size:8px;gap:5px;margin-bottom:10px}.board-enemy-label .icon{height:11px;width:11px}.formation-grid{gap:8px}.formation-slot{min-height:103px;padding:19px 5px 8px}.slot-portrait{height:35px;width:35px;border-radius:5px}.slot-position{font-size:7px;left:6px;top:5px}.formation-slot strong{font-size:11px;margin-top:4px}.slot-job{font-size:8px}.empty-label{font-size:9px}.empty-icon .icon{height:16px;width:16px}.column-labels{font-size:8px;margin-top:5px}.guard-ready{right:5px;bottom:5px}.guard-ready .icon{height:12px;width:12px}.guard-link{top:-10px;right:5px;padding:2px}.guard-link .icon{height:11px;width:11px}.board-legend{margin-top:9px;gap:4px;flex-wrap:nowrap}.board-legend>span{font-size:8px}.board-legend .text-button{font-size:8px;min-height:32px}.legend-line{width:12px}.enemy-option{padding:10px;gap:10px;min-height:53px}.enemy-option strong{font-size:13px}.enemy-option small{font-size:9px}.enemy-emblem{height:31px;width:31px;border-radius:5px}.enemy-emblem .icon{height:19px;width:19px}.enemy-options{gap:7px}.radio-dot{height:12px;width:12px}.selected .radio-dot:after{width:6px;height:6px}.enemy-description{font-size:10px;line-height:1.9;padding:12px 0 8px}.enemy-preview-button{font-size:11px;gap:6px;padding-top:11px;min-height:36px}.enemy-preview-button .icon{height:14px;width:14px}.start-button{height:49px;font-size:15px;padding:0 18px;gap:10px}.start-button .icon{height:17px;width:17px}.departure p{font-size:9px;margin-top:8px}.slot-actions{flex-direction:row}.slot-actions .text-button{font-size:10px;min-height:36px}.cancel-selection{font-size:10px;min-height:32px}.nav-item:not(.active){min-width:30px;justify-content:center}.battle .formation-slot,.battle .formation-slot.empty{min-height:111px;padding:17px 2px 8px}.battle .slot-position{font-size:5px;left:3px;top:4px}.battle .formation-slot strong{font-size:8px;margin-top:5px}.battle .empty-label{font-size:6px}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(max-width:540px){.mobile-break{display:block}.battle .portrait{width:34px;height:34px}.battle .formation-slot strong{font-size:10px}.battle .slot-position{font-size:6px}.unit-hp{font-size:12px}.unit-hp small{font-size:7px}}

/* Position aptitude: identical reading order on every board. */
.show-aptitudes .formation-slot.occupied{padding-top:24px;min-height:123px}.show-aptitudes .slot-portrait{margin-bottom:10px}
.card-aptitude{font-size:10px;color:#71836a;margin-top:9px;padding-top:8px;border-top:1px solid #e8ecdf;text-align:left}.card-aptitude b{float:right;color:#385b49}.formation-explainer{font-size:10px;color:#7a8773;line-height:1.8;margin:0 0 10px}.position-aptitude{font-size:9px;line-height:1.4;color:#4f6b50;margin-top:3px;font-variant-numeric:tabular-nums}.show-aptitudes .formation-slot{background:var(--heat);border-color:#91a68a}.show-aptitudes .formation-slot:hover{background:var(--heat);outline:2px solid #668368;outline-offset:1px}.show-aptitudes .slot-position{color:#3f5d46}.slot-aptitude-overlay{position:absolute;right:6px;top:23px;display:flex;flex-direction:column;align-items:center;color:#244c37;line-height:1.15}.slot-aptitude-overlay b{font-size:20px;font-weight:650}.slot-aptitude-overlay small{font-size:9px;margin-top:3px}.show-aptitudes .slot-portrait{width:28px;height:28px;align-self:flex-start;margin-left:7px}.show-aptitudes .empty .slot-aptitude-overlay{position:static}.show-aptitudes .empty-icon{display:none}.show-aptitudes .empty-label{color:#365f40;margin-top:8px}.position-heading{display:flex;justify-content:space-between;align-items:center;gap:8px}.position-heading>span{font-size:10px;color:#728369}.position-detail{border-top:1px solid var(--line);margin-top:22px;padding-top:21px}.position-detail h3{font:600 17px var(--serif);margin:0}.position-detail h3 span{font:10px var(--sans);color:#86917a;margin-left:10px}.aptitude-note{font-size:12px;color:#63765e;line-height:1.8;margin:10px 0 14px}.position-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px}.aptitude-map{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.aptitude-cell{background:var(--heat);min-height:61px;border:1px solid #c7d5c1;border-radius:5px;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#2e533b;padding:5px;gap:3px}.aptitude-cell small{font-size:9px}.aptitude-cell b{font-size:21px;font-weight:600;line-height:1.2}.aptitude-cell.chosen{outline:2px solid #466e50;outline-offset:1px;border-color:#466e50}.aptitude-cell:hover{filter:brightness(.96)}.aptitude-explanation{border-left:2px solid #a2b899;padding:3px 0 0 17px}.aptitude-explanation>small{font-size:10px;color:#74826b;line-height:1.8;display:block}.aptitude-explanation h4{font:600 18px var(--serif);margin:4px 0 7px;color:#3e6047}.aptitude-value{font-size:12px;color:#687c5c}.aptitude-value b{font-size:30px;line-height:1.2;margin:0 5px;color:#3c5f41}.aptitude-value>span{font-size:10px}.aptitude-explanation p{font-size:11px;line-height:1.8;margin:9px 0}.aptitude-explanation p strong{color:#35583d;white-space:nowrap}.aptitude-explanation .melee-note{background:#f0f2e9;border-radius:4px;padding:7px 9px}.aptitude-formula{font-size:10px;line-height:1.8;color:#7d8974;margin:13px 0 0}.mini-map{width:93px;gap:2px}.mini-map>span{background:var(--heat);border-radius:2px;text-align:center;padding:3px 1px;font-size:9px;line-height:1.1;color:#34503a}.comparison-table th:has(.mini-map){min-width:110px}.action-description>.action-aptitude{font-size:10px;color:#607757;margin:4px 0}.rule-aptitude{border:1px solid var(--line);padding:16px;border-radius:5px;margin:20px 0 23px;background:#f1f4e9}.rule-aptitude h3{font:600 17px var(--serif);margin-bottom:7px}.rule-aptitude p{font-size:12px;line-height:1.9;color:#74826a}.battle .position-aptitude{font-size:9px;margin-top:4px}.battle .formation-slot{padding-bottom:10px;min-height:158px}.preview .formation-slot{min-height:115px}.action-stage{min-height:135px}
@media(max-height:1100px){.planning-panel{position:static}}
@media(max-width:540px){.card-aptitude{font-size:10px}.position-detail{margin-top:20px;padding-top:18px}.position-heading{align-items:flex-start}.position-detail h3{font-size:16px}.position-heading>span{font-size:9px;white-space:nowrap}.aptitude-note{font-size:11px}.position-detail-grid{grid-template-columns:1fr;gap:17px}.aptitude-cell{min-height:61px}.aptitude-cell small{font-size:10px}.aptitude-explanation{padding:3px 0 0 13px}.aptitude-explanation h4{font-size:17px}.aptitude-explanation p{font-size:12px}.aptitude-explanation>small{font-size:10px}.position-aptitude{font-size:9px}.show-aptitudes .slot-portrait{width:31px;height:31px;margin-left:10px}.slot-aptitude-overlay{right:10px;top:25px}.formation-explainer{font-size:10px}.battle .formation-slot,.battle .formation-slot.empty{min-height:126px;padding:17px 2px 8px}.battle .position-aptitude{font-size:7px;margin-top:4px}.action-description>.action-aptitude{font-size:8px}.rule-aptitude p{font-size:11px}.preview .position-aptitude{font-size:9px}.mini-map{width:93px}}
.stat-label{color:#707c66}.stat-value{color:#526248}.hero-title,.job-label{color:#7b866e}.ability-tag.good{color:#64774f;border-color:#d3dec7}.ability-tag.bad{color:#966d52}.formation-guide{color:#78866b}.slot-position{color:#839474}.slot-job{color:#839474}.empty-label{color:#8a997a}.enemy-description{color:#78876a}.enemy-option small{color:#829170}.detail-hero p,.ability-descriptions p,.behavior-note p,.rules-grid p,.job-rules p{color:#717f63}.modal-lead,.muted{color:#7b886e}.action-description>span{color:#78886b}.action-description small{color:#839571}.roster-footnote{color:#7e8c70}.report-note{color:#81916f}.spectator-note{color:#7e8f6c}

/* Both armies face the center: rear/middle/front | front/middle/rear. */
.board-lanes{display:grid;grid-template-columns:15px minmax(0,1fr);gap:5px}
.rank-labels,.heatmap-ranks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;text-align:center;color:#74856a;font-size:10px;margin-bottom:7px}
.rank-labels{margin-left:20px}
.lane-labels{display:grid;grid-template-rows:repeat(3,minmax(0,1fr));align-items:center;justify-items:center;font-size:9px;color:#819074}
.side-ally .rank-labels>span:last-child{color:#426b4b;font-weight:600}
.side-enemy .rank-labels>span:first-child{color:#947a50;font-weight:600}
.board-facing{justify-content:flex-end;letter-spacing:.5px}
.formation-slot.guarded:before{top:50%;left:auto;right:-9px;height:0;width:8px;border-left:0;border-top:1px dashed #9fb18b}
.guard-link{top:auto;bottom:4px;right:4px;padding:1px}
.aptitude-figure{min-width:0}
.aptitude-figure.compact{width:93px}
.compact .heatmap-ranks{font-size:7px;gap:2px;margin-bottom:4px}
.arena .rank-labels{font-size:10px;margin-bottom:9px}
@media(max-width:760px){.arena .board-lanes{grid-template-columns:9px minmax(0,1fr);gap:3px}.arena .rank-labels{margin-left:12px;font-size:8px;gap:5px}.arena .lane-labels{font-size:7px}}
@media(max-width:540px){.arena .rank-labels{font-size:7px}.formation-slot.guarded:before{right:-9px}.guard-link{top:auto;bottom:4px;right:4px}.heatmap-ranks{font-size:10px}}

/* 0.3 — full-body ATB exhibition. Stable fighters stay mounted throughout. */
.card-ultimate{display:flex;justify-content:space-between;gap:6px;align-items:center;border-top:1px solid #e7e4d9;margin-top:10px;padding-top:9px;color:#745827;font-size:12px;font-weight:700}.card-ultimate small{font-size:10px;font-weight:500;color:#746d59}.table-ultimate{min-width:130px;font-size:12px}.table-ultimate small{display:block;font-size:11px;color:#6c756c}.ultimate-detail{margin:20px 0;padding:18px 20px;background:#f7f0dc;border:1px solid #e5d6ac;border-radius:10px;color:#615332}.ultimate-detail>small{font-size:10px;letter-spacing:.14em}.ultimate-detail h3{margin:5px 0 10px}.ultimate-detail p{font-size:13px;line-height:1.85;margin:6px 0}.atb-arena{overflow:visible;background:#fcfbf5}.atb-time{font-variant-numeric:tabular-nums;font-size:13px}.atb-status{font-size:12px;color:#4f7364;min-width:120px;text-align:right}.duel-headings{display:grid;grid-template-columns:1fr 30px 1fr;align-items:center;padding:20px 30px 8px;gap:10px}.duel-headings h2{font-size:18px;margin:0;color:#37584a;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.duel-headings h2:last-child{justify-content:flex-end;color:#835f54}.duel-headings h2 small{font-size:9px;letter-spacing:.13em;width:100%;color:#838a78}.duel-headings h2:last-child small{text-align:right}.duel-headings h2 span{font-size:13px;color:#747c6a}.duel-headings>b{font:italic 15px Georgia,serif;color:#aa9c79;text-align:center}.duel-field{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:44px;padding:10px 30px 24px;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 50% 85%,#dce5d480,transparent 75%)}.field-ground{position:absolute;inset:40px 12px 25px;border:1px solid #d2d9c6;border-radius:50%;background:repeating-linear-gradient(0deg,transparent,transparent 55px,#bbcdb113 56px);z-index:-1}.fighter-side{position:relative;min-width:0}.fighter-depths{display:grid;grid-template-columns:repeat(3,1fr);text-align:center;font-size:11px;color:#647660;border-bottom:1px solid #d7ddce;padding-bottom:8px}.enemy .fighter-depths{color:#8d7060;border-color:#e1d5cb}.fighter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(3,160px);gap:5px 8px;padding-top:8px}.fighter-cell{position:relative;display:flex;align-items:center;justify-content:center;min-width:0;border-bottom:1px dashed #cbd5bf7a}.fighter-cell:after{content:'';position:absolute;bottom:41px;width:70%;height:15px;background:#4d775a08;border:1px solid #63825d1f;border-radius:50%;z-index:-1}.vacant-ground{color:#bdc6b0;font-size:22px}.combatant{width:100%;height:156px;text-align:center;position:relative;z-index:2}.combatant.acting{z-index:6}.fighter-caption{height:38px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}.fighter-caption strong{font-size:12px;color:#385748;line-height:1.15;white-space:nowrap}.enemy .fighter-caption strong{color:#80584d}.fighter-hp{font-size:10px;line-height:1;letter-spacing:-.2px;color:#5e6c5c;font-variant-numeric:tabular-nums}.fighter-health{width:68%;height:4px;border-radius:3px;background:#d9decf;overflow:hidden}.fighter-health i{display:block;width:100%;height:100%;background:#658f70}.enemy .fighter-health i{background:#b2836d}.fighter-health i.low{background:#c56e50}.fighter-mover{width:80px;height:90px;margin:0 auto;position:relative;transform-origin:50% 85%;will-change:transform}.fighter-svg{display:block;width:100%;height:100%;overflow:visible}.fighter-body{transform-origin:45px 90px;animation:fighter-breathe 3s ease-in-out infinite}.enemy .fighter-svg{transform:scaleX(-1)}.combatant:nth-child(even) .fighter-body{animation-delay:-1s}.paused .fighter-body,.fallen .fighter-body,.acting .fighter-body{animation-play-state:paused}.fighter-feet{height:26px;position:relative;display:flex;flex-direction:column;gap:3px;align-items:center}.atb-track{display:block;width:72%;height:6px;background:#d8e0df;border:1px solid #bccfcd;border-radius:5px;overflow:hidden}.atb-track i{display:block;width:0;height:100%;background:linear-gradient(90deg,#63979e,#8dc3cb)}.skill-charge{display:flex;align-items:center;justify-content:center;gap:4px;height:10px;line-height:1;white-space:nowrap}.charge-pips{display:flex;gap:3px}.charge-pips i{display:inline-block;width:5px;height:5px;border-radius:50%;background:#ddd6bf;border:1px solid #c6bd9e}.charge-pips i.lit{background:#c49c45;border-color:#b78f36}.skill-charge small{font-size:9px;color:#79673f}.fighter-apt{font-size:9px;position:absolute;right:0;bottom:0;color:#75846a}.ultimate-ready .fighter-mover{filter:drop-shadow(0 0 5px #e5c87899)}.ultimate-ready .skill-charge small{color:#966b20;font-weight:800}.combatant.acting .fighter-caption strong{color:#9b7027}.fighter-float{pointer-events:none;position:absolute;top:44px;left:50%;font-size:22px;font-weight:900;white-space:nowrap;color:#a74734;text-shadow:-1px -1px 0 #fff,1px 1px 0 #fff,-1px 1px 0 #fff,1px -1px 0 #fff;z-index:15}.fighter-float.healing{color:#27835c}.fighter-trigger{pointer-events:none;position:absolute;top:20px;left:50%;transform:translateX(-50%);color:#705921;background:#fcf5ddea;font-size:10px;font-weight:800;white-space:nowrap;border-radius:3px;z-index:16}.fighter-trigger:empty{display:none}.fallen .fighter-mover{opacity:.3;filter:grayscale(1)!important}.fallen .fighter-caption{opacity:.5}.fallen .fighter-feet{opacity:.35}.guarding .fighter-caption strong{color:#368095}.battle-effects{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:10;overflow:visible}.skill-ribbon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none;border:1px solid #bba263;background:#fff6dcef;color:#6c5123;box-shadow:0 4px 20px #5747241a;font-size:15px;letter-spacing:.03em;font-weight:800;padding:9px 20px;opacity:0;white-space:nowrap;z-index:20;border-radius:4px}.skill-ribbon.visible{opacity:1}.atb-action{border-top:1px solid #dfe2d5;padding:20px 28px;min-height:160px;background:#f3f4e8;display:flex;flex-direction:column;gap:6px;color:#405e4d}.atb-action>small{font-size:10px;letter-spacing:.12em;color:#857545}.atb-action>strong{font-size:16px;line-height:1.65}.atb-action>span{font-size:11px;color:#707b68}.atb-event-detail{font-size:12px;color:#6c765d;line-height:1.75}.atb-event-detail b{color:#3e8191}.atb-legend{font-size:11px;color:#77806b;line-height:1.9;margin:12px 0 20px}.atb-legend span{margin-right:12px}.atb-legend span:nth-child(1){color:#658f70}.atb-legend span:nth-child(2){color:#63979e}.atb-legend span:nth-child(3){color:#a68842}#battle-result:empty{display:none}#battle-result .result-banner{margin:22px 0}.atb-arena .playback-controls{padding:16px 28px}.battle-progress i{transition:none}.atb-arena .speed-controls button{min-width:42px}.atb-arena .speed-controls button.active{background:#3c6652;color:#fff}@keyframes fighter-breathe{0%,100%{transform:translateY(0) scaleY(1)}50%{transform:translateY(-1.5px) scaleY(1.015)}}
@media(max-width:700px){.duel-headings{padding:16px 12px 6px;grid-template-columns:1fr 18px 1fr;gap:4px}.duel-headings h2{font-size:14px;gap:6px}.duel-headings h2 small{font-size:8px}.duel-headings h2 span{font-size:10px}.duel-field{padding:4px 7px 18px;gap:18px}.fighter-depths{font-size:9px;padding-bottom:6px}.fighter-grid{grid-template-rows:repeat(3,116px);gap:4px 1px;padding-top:4px}.combatant{height:114px}.fighter-caption{height:30px;gap:2px}.fighter-caption strong{font-size:9px;letter-spacing:-.5px}.fighter-hp{font-size:8px;letter-spacing:-.5px}.fighter-health{height:3px;width:88%}.fighter-mover{width:51px;height:59px;max-width:100%}.fighter-feet{height:24px;gap:3px}.atb-track{width:90%;height:5px}.charge-pips{gap:2px}.charge-pips i{width:4px;height:4px}.skill-charge{gap:2px}.skill-charge small{font-size:7px}.fighter-apt{font-size:7px;bottom:0;right:50%;transform:translateX(50%)}.fighter-float{font-size:17px;top:38px}.fighter-trigger{font-size:8px;top:26px;max-width:90px;white-space:normal;line-height:1.3}.fighter-cell:after{bottom:31px}.atb-arena .arena-topline{padding:12px 10px;gap:6px}.atb-arena .arena-topline>span:first-child{font-size:8px;letter-spacing:.02em}.atb-time{font-size:10px}.atb-status{font-size:9px;min-width:90px}.skill-ribbon{font-size:11px;padding:7px 10px;max-width:95%;white-space:normal;text-align:center}.atb-action{padding:13px 14px;min-height:163px;gap:4px}.atb-action>strong{font-size:13px}.atb-action>span{font-size:10px}.atb-event-detail{font-size:10px}.atb-arena .playback-controls{padding:12px}.atb-arena .playback-buttons{gap:8px;flex-wrap:wrap}.atb-arena .pause-button{padding:9px 10px;font-size:11px}.atb-arena .speed-controls button{min-width:32px;font-size:11px;padding:7px 6px}.atb-arena .skip-button{margin-left:auto;font-size:10px}.atb-legend{font-size:10px;padding:0 4px}.atb-legend span{margin-right:8px}.card-ultimate{font-size:11px;flex-wrap:wrap}.ultimate-detail{padding:14px}.battle-report .table-scroll{max-width:100%}}
@media(prefers-reduced-motion:reduce){.fighter-body{animation:none}.fighter-mover{will-change:auto}.combatant,.fighter-float,.skill-ribbon{animation:none;transition:none}}
