.character-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin:4px 0 18px}
.character-heading h1{font-size:27px;letter-spacing:-.025em;margin:0 0 5px}
.character-heading p{color:#64726b;font-size:14px;margin:0}
.character-balance{display:grid;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:2px 7px;max-width:100%;flex-shrink:0;margin-left:auto;font-variant-numeric:tabular-nums}
.character-balance img{grid-row:span 2;width:22px}
.character-balance strong{font-size:15px;overflow-wrap:anywhere;line-height:1.25;text-align:right}
.character-balance>span{color:#64726b;font-size:11px;text-align:right}
.character-preview{background-color:#f0edf9;color:#654295;padding:8px 12px;border-radius:8px;font-size:12px;line-height:1.4;margin:0 0 16px}
.character-equipment{display:grid;grid-template-columns:68px minmax(0,1fr) 68px;gap:10px;align-items:stretch}
.character-slots{display:flex;flex-direction:column;justify-content:space-between;gap:12px}
.character-slot{display:flex;flex-direction:column;align-items:center;gap:5px;width:100%;padding:0;background-color:none;color:#35433d;font-size:12px;line-height:1.2;border:0}
.character-slot-label{font-weight:600;white-space:nowrap}
.character-slot-art{display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:1;border:2px solid transparent;border-radius:14px;background-color:#f0edf9;color:#65429e;transition:border-color .16s ease,background .16s ease}

.character-slot[aria-pressed=true] .character-slot-art{border-color:#7445b6;background-color:#e9def9}
.character-slot:hover .character-slot-art{border-color:#af95d1}
.character-slot:focus-visible{outline:2px solid #7445b6;outline-offset:4px;border-radius:8px}
.character-slot-level{font-size:11px;color:#64726b;font-variant-numeric:tabular-nums}
.character-wings .character-slot-art{background-color:#eef1fe;color:#4d68a6}
.character-armor .character-slot-art{background-color:#edf1f2;color:#495e66}
.character-pet .character-slot-art{background-color:#e9f5ee;color:#397c52}
.character-portrait{margin:0;background-color:#f5f3ff;min-width:0;border-radius:16px;overflow:hidden;display:flex;flex-direction:column;justify-content:center}

.character-portrait figcaption{text-align:center;color:#665584;font-size:11px;font-weight:600;padding:8px 3px 12px}
.character-power{display:flex;align-items:center;justify-content:center;gap:12px;margin:24px 0 20px}
.character-power-icon{color:#7445b6;display:block;width:46px;height:46px}
.character-power span:not(.character-power-icon){font-size:15px;color:#56685e}
.character-power strong{display:block;line-height:1.12;font-size:40px;letter-spacing:-.025em;font-variant-numeric:tabular-nums}
.character-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px 24px;margin:0 0 28px}
.character-stats>div{display:flex;align-items:baseline;justify-content:space-between;gap:8px;min-width:0}
.character-stats dt{font-size:13px;color:#64726b}
.character-stats dd{margin:0;font-size:15px;font-weight:650;font-variant-numeric:tabular-nums;white-space:nowrap}
.character-item-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.character-item-heading h2{font-size:18px;margin:0}
.character-item-heading>span{font-size:12px;color:#64726b;white-space:nowrap}
.character-upgrade{border-top:1px solid #e5ebe7;padding-top:20px}
.character-upgrade>p{font-size:13px;line-height:1.5;color:#64726b;margin:8px 0 12px}
.character-gains{display:flex;flex-wrap:wrap;gap:6px 14px;margin:0 0 16px;font-size:12px;color:#53665c}
.character-gains b{color:#087657;white-space:nowrap}
.character-upgrade .primary{width:100%;min-height:50px;font-size:15px;padding:12px 8px}
.character-upgrade .primary:not(:disabled){background-color:#087b60;color:#fff}
.character-upgrade .character-status{font-size:12px;text-align:center;min-height:18px}
.character-footnote{font-size:12px;line-height:1.6;color:#64726b;margin:22px 0 6px}
.bottom-nav [hidden]{display:none!important}
[data-theme=dark] .character-preview{background-color:#302840;color:#cbb8e6}
[data-theme=dark] .character-slot{color:#dce8e1}
[data-theme=dark] .character-slot-art{background-color:#302b40;color:#c2a3ee}
[data-theme=dark] .character-slot[aria-pressed=true] .character-slot-art{background-color:#48335c;border-color:#b28bdf}
[data-theme=dark] .character-pet .character-slot-art{background-color:#263f32;color:#9bd1ae}
[data-theme=dark] .character-armor .character-slot-art{background-color:#2d3b41;color:#afc8d3}
[data-theme=dark] .character-wings .character-slot-art{background-color:#2f3550;color:#abbbee}
[data-theme=dark] :is(.character-heading p,.character-balance>span,.character-slot-level,.character-power span,.character-stats dt,.character-item-heading>span,.character-upgrade>p,.character-footnote,.character-gains){color:#adbbb4}
[data-theme=dark] .character-gains b{color:#82d9b3}
[data-theme=dark] .character-upgrade{border-color:#34473d}
@media(min-width:480px){.character-equipment{grid-template-columns:82px minmax(0,1fr) 82px;gap:14px}.character-slot{font-size:13px}.character-stats dt{font-size:14px}}
@media(max-width:359px){.character-equipment{grid-template-columns:58px minmax(0,1fr) 58px;gap:7px}.character-heading h1{font-size:24px}.character-slot{font-size:10px}.character-stats{gap:12px 16px}.character-stats dt{font-size:12px}.character-stats dd{font-size:14px}.character-balance strong{font-size:13px}}
.character-item-art{display:block;flex:none;width:100%;aspect-ratio:1;background-size:400% 300%;background-repeat:no-repeat;border-radius:12px;background-color:#eeeaf7}
.art-helmet{background-position:66.666667% 0}
.art-wings{background-position:100% 0}
.art-weapon{background-position:66.666667% 50%}
.art-armor{background-position:100% 50%}
.art-accessory{background-position:66.666667% 100%}
.art-pet{background-position:100% 100%}
.character-portrait-art{position:relative;display:block;width:100%;aspect-ratio:3/4;overflow:hidden;border-radius:12px;background-color:#f5f3ff}
.character-portrait-art img{display:block;width:200%;max-width:none;height:100%;object-fit:fill}
.character-slot .character-slot-art{background-size:400% 300%;background-origin:border-box;background-clip:border-box}
.character-slot[aria-pressed=true] .character-slot-art{outline:2px solid #7445b6;outline-offset:2px}
.character-tabs{display:flex;gap:8px;border-bottom:1px solid #e5ebe7;margin:0 0 20px}
.character-tabs button{flex:1;min-height:44px;font-size:14px;color:#64726b;border-bottom:2px solid transparent}
.character-tabs button[aria-pressed=true]{color:#087657;border-color:#087657;font-weight:650}
.character-tabs span{margin-left:4px;font-size:12px}
.character-collection-intro{font-size:13px;line-height:1.6;color:#64726b;margin:0 0 16px}
.character-set-strip{display:flex;gap:12px;overflow-x:auto;padding:5px 3px 16px;margin-bottom:20px;scroll-padding:3px}
.character-set-card{flex:0 0 108px;padding:0;text-align:left;color:inherit;border-radius:12px}
.character-set-card .character-portrait-art{outline:2px solid transparent;outline-offset:2px}
.character-set-card[aria-pressed=true] .character-portrait-art{outline-color:#7445b6}
.character-set-card strong{display:block;font-size:12px;line-height:1.4;margin:8px 0 4px}
.character-set-card>span:last-child{display:block;font-size:11px;color:#64726b}
.character-set-summary{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:16px;align-items:start;margin:0 0 24px}
.character-set-summary h2{font-size:20px;line-height:1.2;margin:0 0 10px}
.character-set-summary p{font-size:12px;line-height:1.5;color:#64726b;margin:8px 0 12px}
.character-set-progress{display:block;font-size:13px;color:#087657}
.character-ability{font-size:13px;line-height:1.6;color:#64726b;margin:12px 0 18px;overflow-wrap:anywhere}
.character-ability strong{font-weight:650;color:#245e4d}
[data-theme=dark] .character-ability{color:#adbbb4}
[data-theme=dark] .character-ability strong{color:#82d9b3}
.character-set-summary .primary{width:100%;font-size:12px;line-height:1.4;padding:10px 6px;min-height:44px}
.character-set-summary .primary:not(:disabled){background-color:#087b60;color:#fff}
.character-set-detail h3{font-size:17px;margin:0 0 4px}
.character-collection-item{display:grid;grid-template-columns:64px minmax(0,1fr);gap:14px;padding:16px 0;border-bottom:1px solid #e5ebe7;align-items:start}
.character-collection-slot{font-size:11px;color:#64726b}
.character-collection-item h4{font-size:14px;line-height:1.4;margin:3px 0 8px}
.character-collection-item .secondary-button{min-height:42px;font-size:13px;padding:8px 12px;max-width:100%;line-height:1.5}
.character-owned{font-size:12px;color:#087657;margin:4px 0}
.character-poor{font-size:11px;line-height:1.5;color:#64726b;margin:6px 0 0}
.character-tabs button:focus-visible,.character-set-card:focus-visible{outline:2px solid #7445b6;outline-offset:3px}
[data-theme=dark] .character-slot .character-slot-art{background-size:400% 300%}
[data-theme=dark] .character-tabs,[data-theme=dark] .character-collection-item{border-color:#34473d}
[data-theme=dark] :is(.character-tabs button,.character-collection-intro,.character-set-card>span:last-child,.character-set-summary p,.character-collection-slot,.character-poor){color:#adbbb4}
[data-theme=dark] :is(.character-tabs button[aria-pressed=true],.character-set-progress,.character-owned){color:#82d9b3}
[data-theme=dark] .character-tabs button[aria-pressed=true]{border-color:#82d9b3}
@media(max-width:359px){.character-set-summary{gap:12px;grid-template-columns:1fr 1.1fr}.character-set-summary h2{font-size:18px}.character-set-summary p{font-size:11px}.character-collection-item{grid-template-columns:56px minmax(0,1fr);gap:12px}}
.character-awakening{font-size:12px;line-height:1.6;color:#654295;text-align:center;margin:14px 0}
.player-character{margin:24px 0;border-top:1px solid #e5ebe7;padding-top:18px}
.player-character h3{font-size:19px;margin:0 0 16px}.player-character h4{font-size:17px;line-height:1.3;margin:0 0 10px}
.player-character-summary{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:16px;align-items:center;margin-bottom:20px}
.player-character-summary p{font-size:13px;line-height:1.6;color:#64726b;margin:8px 0}.player-character-summary strong{display:block;color:#654295;font-size:23px}
.player-equipment{padding:0;margin:0 0 26px;list-style:none}.player-equipment li{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 0;border-top:1px solid #e5ebe7;font-size:13px}
.player-equipment small{display:block;font-size:11px;color:#64726b;margin-top:4px}.player-equipment strong{font-size:12px;white-space:nowrap}
.player-set{border-top:1px solid #e5ebe7}.player-set summary{cursor:pointer;padding:14px 0;min-height:44px;font-size:14px;line-height:1.5}.player-set summary span{color:#64726b;font-size:12px;white-space:nowrap}.player-set ul{padding:0 0 12px;list-style:none;margin:0}.player-set li{display:flex;justify-content:space-between;gap:12px;font-size:12px;line-height:1.6;padding:5px 0}.player-set li strong{font-size:11px;white-space:nowrap}.player-set .missing strong{color:#775512}.player-set .owned strong{color:#087657}.player-scrolls{font-size:14px;margin:16px 0}
.steal-action{margin:0 0 18px}
[data-theme=dark] .player-character,[data-theme=dark] .player-equipment li,[data-theme=dark] .player-set{border-color:#34473d}
[data-theme=dark] :is(.player-character-summary p,.player-equipment small,.player-set summary span){color:#adbbb4}
[data-theme=dark] :is(.character-awakening,.player-character-summary strong){color:#d1b2fa}
[data-theme=dark] .player-set .missing strong{color:#e6c67d}[data-theme=dark] .player-set .owned strong{color:#82d9b3}

.character-item-art.art-chrono,.character-slot .character-slot-art.art-chrono{background-size:480% 320%}
.art-chrono.art-helmet{background-position:71% 0}.art-chrono.art-weapon{background-position:71% 50%}.art-chrono.art-accessory{background-position:71% 100%}
