:root{--bg-0: #0c1418;--bg-1: #102027;--panel: #16323a;--panel-2: #1b3d47;--panel-edge: #2c5a66;--ink: #e8eef0;--ink-dim: #9fb8bf;--ink-faint: #6f8c94;--gold: #d8b66a;--gold-bright: #f0d590;--gold-deep: #9a7d3c;--boon: #e8c45f;--boon-deep: #b08a2c;--bane: #5fa8e8;--bane-deep: #2c6aa8;--danger: #e06b6b;--ok: #6fd89b;--radius: 10px;--shadow: 0 4px 18px rgba(0, 0, 0, .3);font-synthesis:none}*{box-sizing:border-box}html,body,#root{height:100%;margin:0;-webkit-text-size-adjust:100%;text-size-adjust:100%}body{background:radial-gradient(1700px 1200px at 85% -35%,#15272f 0%,transparent 78%),radial-gradient(1300px 1000px at -25% 130%,#0f1c22 0%,transparent 72%),var(--bg-0);background-attachment:fixed;color:var(--ink);font-family:Inter,Segoe UI,system-ui,sans-serif;font-size:15px;line-height:1.5}h1,h2,h3,.serif{font-family:Iowan Old Style,Palatino Linotype,Georgia,serif;letter-spacing:.01em}a{color:var(--gold-bright)}button{font-family:inherit}.ornate{background:linear-gradient(180deg,var(--panel-2),var(--panel));border:1px solid var(--panel-edge);border-radius:var(--radius);box-shadow:var(--shadow),inset 0 1px #ffffff0a;position:relative}.ornate:before{content:"";position:absolute;top:4px;right:4px;bottom:4px;left:4px;border:1px solid rgba(216,182,106,.18);border-radius:calc(var(--radius) - 4px);pointer-events:none}.ornate-edge{border-bottom:1px solid var(--panel-edge);box-shadow:0 2px #d8b66a1f}.app-root{min-height:100%;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;gap:24px;padding:14px 26px;background:linear-gradient(180deg,#143038,#0f242b);position:sticky;top:0;z-index:40}.brand{display:flex;align-items:center;gap:12px}.brand-mark{font-size:26px;color:var(--gold);text-shadow:0 0 14px rgba(216,182,106,.5)}.brand h1{margin:0;font-size:22px;color:var(--gold-bright)}.brand-sub{margin:0;font-size:11.5px;color:var(--ink-faint);letter-spacing:.04em}.mainnav{display:flex;flex-direction:column;gap:6px;margin-left:10px}.navrow{display:flex;align-items:center}.navrow-links{display:flex;align-items:stretch;gap:6px}.mainnav a{color:var(--ink-dim);text-decoration:none;padding:8px 14px;border-radius:8px;font-weight:600;font-size:14px;text-align:center;display:flex;align-items:center;justify-content:center;border:1px solid transparent;transition:all .15s}.mainnav a:hover{color:var(--ink);background:#d8b66a14}.mainnav a.active{color:var(--gold-bright);border-color:var(--gold-deep);background:linear-gradient(180deg,#d8b66a29,#d8b66a0d)}.topbar-right{margin-left:auto;display:flex;align-items:center;gap:16px}.dev-toggle{display:flex;align-items:center;gap:7px;cursor:pointer;font-size:13px;color:var(--ink-dim);-webkit-user-select:none;user-select:none}.spoiler-toggle{display:inline-flex;align-items:center;gap:7px;cursor:pointer;font-size:13px;color:var(--ink-dim);-webkit-user-select:none;user-select:none;padding:6px 12px;border:1px solid var(--panel-edge);border-radius:8px;background:var(--panel);white-space:nowrap}.spoiler-toggle:hover{color:var(--ink)}.dev-toggle input{accent-color:var(--gold);width:16px;height:16px}.save-badge{font-size:12px;padding:3px 10px;border-radius:20px;border:1px solid var(--panel-edge)}.save-badge.saving{color:#e8c45f}.save-badge.saved{color:var(--ok)}.save-badge.error{color:var(--danger);border-color:var(--danger)}.page-wrap{flex:1;width:100%;max-width:1280px;margin:0 auto;padding:26px}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:20px}.page-head h2{margin:0;font-size:26px;color:var(--gold-bright)}.page-head p{margin:4px 0 0;color:var(--ink-dim);font-size:13.5px}.loading-state,.error-state{padding:40px;text-align:center;color:var(--ink-dim)}.error-state{color:var(--danger)}.btn{background:linear-gradient(180deg,#224853,#173740);color:var(--ink);border:1px solid var(--panel-edge);padding:9px 16px;border-radius:8px;cursor:pointer;font-weight:600;font-size:14px;transition:all .15s}.btn:hover{border-color:var(--gold-deep);color:var(--gold-bright)}.btn.primary{background:linear-gradient(180deg,#c9a857,#9a7d3c);color:#1a1208;border-color:var(--gold-bright)}.btn.primary:hover{color:#000;filter:brightness(1.07)}.btn.ghost{background:transparent}.btn.danger{border-color:var(--danger);color:var(--danger)}.btn.danger:hover{background:#e06b6b1f}.btn.tiny{padding:5px 10px;font-size:12.5px}.icon-btn{background:transparent;border:none;color:var(--ink-dim);cursor:pointer;font-size:16px;padding:4px 8px;border-radius:6px}.icon-btn:hover{color:var(--gold-bright);background:#d8b66a1a}input[type=text],input[type=number],textarea,select{background:#0e2228;border:1px solid var(--panel-edge);color:var(--ink);border-radius:7px;padding:8px 10px;font-family:inherit;font-size:14px;width:100%}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 2px #d8b66a2e}textarea{resize:vertical;min-height:70px}label.field{display:block;margin-bottom:12px}label.field>span{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-faint);margin-bottom:5px}.error-text{color:var(--danger);font-size:12.5px}.muted{color:var(--ink-faint)}.empty-hint{padding:40px;text-align:center;color:var(--ink-faint);border:1px dashed var(--panel-edge);border-radius:var(--radius)}.portrait{display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(160deg,#21434d,#122a31);border:1px solid var(--panel-edge);overflow:hidden;flex:none;color:var(--gold)}.portrait.round{border-radius:50%}.portrait.square{border-radius:8px}.portrait img{width:100%;height:100%;object-fit:cover;object-position:top center}.portrait-initial{font-family:Georgia,serif;font-weight:700}.portrait-wrap{position:relative;display:inline-flex;flex:none}.portrait-q{position:absolute;right:-3px;bottom:-3px;z-index:2;display:flex;align-items:center;justify-content:center;background:var(--gold);color:#1a1208;border-radius:50%;border:2px solid #0a161b;font-family:Georgia,serif;font-weight:800;line-height:1;box-shadow:0 1px 3px #00000080}.prof-mark{position:relative;display:inline-flex;line-height:0;flex:none}.bonus-exp-tri{position:absolute;right:-2px;bottom:-2px;z-index:2;width:0;height:0;border-style:solid;border-top-width:0;border-left-color:transparent;border-right-color:transparent;border-bottom-color:var(--gold);filter:drop-shadow(0 0 .6px rgba(0,0,0,.75));pointer-events:none}.crest-list{display:inline-flex;flex-wrap:wrap;gap:6px;align-items:center;vertical-align:middle}.crest-img{height:30px;width:auto;object-fit:contain;display:block}.char-attr.compact .crest-img{height:22px}.cast-crest-img{height:56px;width:auto;object-fit:contain;display:block;margin-top:4px}.opt-chip-img{height:18px;width:auto;object-fit:contain;vertical-align:middle;margin-right:5px}.recruit-list{display:flex;flex-direction:column;gap:8px;margin-top:6px}.recruit-line{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}.recruit-lord{font-weight:700;color:var(--gold-bright);min-width:90px}.recruit-extra{flex-basis:100%;font-size:13px}.recruit-extra b{color:var(--ink-faint);font-weight:600;margin-right:4px}.prof-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:6px}.prof-grid.compact{gap:4px}.prof-icon{width:76%;height:76%}.prof-cell{position:relative;display:flex;align-items:center;justify-content:center;aspect-ratio:1;border-radius:7px;background:#0d2026;border:1px solid #20424b;color:var(--ink-faint)}.prof-cell.is-prof{color:var(--gold-bright);border-color:var(--gold-deep);background:linear-gradient(180deg,#d8b66a24,#d8b66a08)}.prof-cell.is-boon{box-shadow:0 0 0 1px var(--boon),0 0 10px #e8c45f66;color:var(--boon)}.prof-cell.is-boon.is-prof{color:#f0e0b0}.prof-cell.is-bane{box-shadow:0 0 0 1px var(--bane),0 0 10px #5fa8e859;color:var(--bane)}.team-grid .prof-cell:not(.is-prof){background:linear-gradient(180deg,#ba3a3a33,#ba3a3a0f);border-color:#a03e3e9e;color:#b26a6a}.team-grid .prof-cell:not(.is-prof) .prof-icon{opacity:.32}.char-detail .prof-grid{max-width:384px}.prof-grade{position:absolute;right:-4px;bottom:-4px;font-size:10px;font-weight:700;background:#0a181d;border:1px solid var(--gold-deep);color:var(--gold-bright);border-radius:50%;width:17px;height:17px;display:flex;align-items:center;justify-content:center}.prof-legend{display:flex;gap:16px;flex-wrap:wrap;font-size:12px;color:var(--ink-dim);margin-top:10px}.prof-legend i{display:inline-block;width:11px;height:11px;border-radius:3px;margin-right:5px;vertical-align:-1px}.swatch-boon{background:var(--boon)}.swatch-bane{background:var(--bane)}.swatch-prof{background:var(--gold)}.card{padding:16px}.grid-cards{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.row{display:flex;gap:12px;align-items:center}.spread{display:flex;justify-content:space-between;align-items:center;gap:12px}.tag{display:inline-block;font-size:11px;padding:2px 8px;border-radius:20px;background:#d8b66a1f;border:1px solid var(--gold-deep);color:var(--gold-bright)}.tag.dim{background:#ffffff0d;border-color:var(--panel-edge);color:var(--ink-dim)}.lord-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.lord-tab{display:flex;align-items:center;gap:9px;padding:8px 14px;border-radius:10px;border:1px solid var(--panel-edge);background:var(--panel);cursor:pointer;color:var(--ink-dim)}.lord-tab.active{border-color:var(--accent, var(--gold));color:var(--ink);box-shadow:0 0 0 1px var(--accent, var(--gold))}.lord-tab .dot{width:10px;height:10px;border-radius:50%}.rate-table{width:100%;border-collapse:collapse}.rate-table th,.rate-table td{padding:10px 12px;border-bottom:1px solid #1c3b44;text-align:left;vertical-align:middle}.rate-table tbody tr:last-child td{border-bottom:none}.rate-table th{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-faint)}.slider-cell{display:flex;align-items:center;gap:10px;min-width:160px}input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:130px;height:16px;background:transparent;border:none;outline:none;cursor:pointer;-webkit-tap-highlight-color:transparent}input[type=range]:focus{outline:none;box-shadow:none}input[type=range]::-webkit-slider-runnable-track{height:6px;border-radius:4px;background:linear-gradient(to right,var(--gold) 0 var(--fill, 50%),#3f4347 var(--fill, 50%) 100%)}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin-top:-5px;width:16px;height:16px;border-radius:50%;background:var(--gold);border:2px solid #0e1f26;box-shadow:0 1px 3px #00000080}input[type=range]::-moz-range-track{height:6px;border-radius:4px;background:#3f4347}input[type=range]::-moz-range-progress{height:6px;border-radius:4px;background:var(--gold)}input[type=range]::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:var(--gold);border:2px solid #0e1f26;box-shadow:0 1px 3px #00000080}.slider-val{font-weight:700;color:var(--gold-bright);width:22px;text-align:right}.score-bars{display:flex;flex-direction:column;gap:12px}.score-row{display:grid;grid-template-columns:130px 1fr 52px;align-items:center;gap:12px}.score-track{height:14px;background:#0d2026;border-radius:8px;overflow:hidden;border:1px solid #20424b}.score-fill{height:100%;border-radius:8px;transition:width .4s}.route-banner{display:flex;align-items:center;gap:10px;padding:11px 16px;border-radius:var(--radius);border:1px solid var(--panel-edge);border-left:3px solid var(--accent, var(--gold));background:linear-gradient(90deg,color-mix(in srgb,var(--accent, var(--gold)) 14%,transparent),transparent 60%);font-size:14px;color:var(--ink-dim)}.route-banner b{color:var(--ink)}.route-banner .dot{width:11px;height:11px;border-radius:50%;flex:none;box-shadow:0 0 8px var(--accent, var(--gold))}.team-layout{display:grid;grid-template-columns:280px 1fr;gap:20px;align-items:start}.palette{position:sticky;top:90px}.palette-list{display:flex;flex-direction:column;gap:8px;max-height:64vh;overflow:auto;padding-right:4px}.palette-item{display:flex;align-items:center;gap:10px;padding:8px;border-radius:9px;border:1px solid var(--panel-edge);background:#11292f;cursor:grab}.palette-item:active{cursor:grabbing}.palette-item.assigned{opacity:.4}.palette-item.picked{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold-deep) inset}.team-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}.team-slot{min-height:150px;border-radius:var(--radius);border:1px dashed var(--panel-edge);background:#0e1f26;padding:12px;display:flex;flex-direction:column;gap:8px;transition:border-color .15s,background .15s}.team-slot.over{border-color:var(--gold);background:#1a2f2c}.team-slot.filled{border-style:solid;background:linear-gradient(180deg,#163038,#12262d)}.slot-empty{margin:auto;color:var(--ink-faint);font-size:13px}.split-pool{display:flex;gap:14px;overflow-x:auto;padding:14px 16px;min-height:108px;border:1px solid var(--panel-edge);border-radius:var(--radius);background:linear-gradient(180deg,var(--panel-2),var(--panel));margin-bottom:18px}.split-routes{display:flex;flex-direction:column;gap:14px}.split-route{display:flex;height:120px;border:1px solid var(--panel-edge);border-radius:var(--radius);overflow:hidden;background:var(--panel);box-shadow:var(--shadow)}.split-pool.drop,.split-route.drop{outline:2px dashed var(--gold);outline-offset:-3px;border-color:var(--gold-deep)}.split-banner{flex:0 0 128px;align-self:stretch;display:flex;flex-direction:column;align-items:center;padding:8px 8px 0;overflow:hidden}.split-banner-img{flex:1;min-height:0;width:100%;background-size:contain;background-repeat:no-repeat;background-position:center}.split-banner-label{flex:0 0 auto;width:100%;display:flex;align-items:center;justify-content:center;gap:6px;padding:5px 4px 8px}.split-route-name{font-weight:700;font-size:10px;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.6)}.split-count{font-size:12px;font-weight:700;color:#fff;background:#0000006b;border:1px solid rgba(255,255,255,.28);border-radius:20px;padding:1px 9px}.split-route-units{flex:1;display:flex;gap:14px;overflow-x:auto;padding:12px 16px;align-items:center}.split-chip{display:flex;flex-direction:column;align-items:center;gap:5px;width:62px;flex:0 0 auto;cursor:grab;transition:transform .12s,opacity .15s ease;touch-action:manipulation;user-select:none;-webkit-user-select:none;animation:split-chip-in .2s ease}@keyframes split-chip-in{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:none}}.split-chip:hover{transform:translateY(-2px)}.split-chip:active{cursor:grabbing}.split-chip.fading{opacity:0;transform:scale(.85)}.split-pool,.split-route-units{scrollbar-width:thin;scrollbar-color:rgba(216,182,106,.35) transparent}.split-pool::-webkit-scrollbar,.split-route-units::-webkit-scrollbar{height:8px}.split-pool::-webkit-scrollbar-track,.split-route-units::-webkit-scrollbar-track{background:transparent}.split-pool::-webkit-scrollbar-thumb,.split-route-units::-webkit-scrollbar-thumb{background:#d8b66a4d;border-radius:4px}.split-pool::-webkit-scrollbar-thumb:hover,.split-route-units::-webkit-scrollbar-thumb:hover{background:#d8b66a80}.split-menu-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:250}.split-menu{position:fixed;z-index:251;display:flex;gap:8px;padding:9px;max-width:calc(100vw - 24px);background:var(--panel-2);border:1px solid var(--gold-deep);border-radius:12px;box-shadow:0 12px 30px #0000008c;animation:split-menu-in .13s ease-out}@keyframes split-menu-in{0%{opacity:0;transform:translateY(-4px) scale(.96)}to{opacity:1;transform:none}}.split-menu-item{display:flex;padding:0;border:none;background:none;cursor:pointer;font:inherit}.split-menu-crest{position:relative;width:40px;height:40px;border-radius:9px;border:1px solid var(--panel-edge);background-size:contain;background-repeat:no-repeat;background-position:center;transition:transform .1s,border-color .1s}.split-menu-item:hover .split-menu-crest{transform:translateY(-2px);border-color:var(--gold)}.split-menu-item.remove .split-menu-crest{background:#e05a6029;border-color:var(--danger)}.split-menu-x{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;color:var(--danger)}.split-menu-name{font-size:11px;line-height:1.15;text-align:center;max-width:60px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.split-menu-item.remove .split-menu-name{color:var(--danger)}.split-chip-name{font-size:11px;line-height:1.2;height:2.4em;text-align:center;color:var(--ink-dim);max-width:62px;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.map-stage{position:relative;width:100%;border-radius:var(--radius);overflow:hidden;border:1px solid var(--panel-edge);background:#0a161b;-webkit-user-select:none;user-select:none}.map-stage img.map-bg{width:100%;display:block}.map-outer{position:relative}.map-viewport{overflow:auto;border-radius:var(--radius);-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.map-viewport .map-stage{min-width:100%}.map-zoom-controls{position:absolute;top:10px;right:10px;z-index:20;display:flex;gap:6px}.map-zoom-btn{min-width:36px;height:36px;padding:0;border-radius:8px;border:1px solid var(--panel-edge);background:#0a161bdb;color:var(--ink);font-size:18px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.map-zoom-btn:hover{border-color:var(--gold-deep);color:var(--gold-bright)}.map-zoom-btn:disabled{opacity:.4;cursor:default}.map-zoom-btn.reset{font-size:13px;padding:0 10px}.map-bg-placeholder{width:100%;aspect-ratio:16/9;display:flex;align-items:center;justify-content:center;color:var(--ink-faint);background:repeating-linear-gradient(45deg,#0d1d22 0,#0d1d22 14px,#0b181d 14px,#0b181d 28px)}.map-bg-stage{width:100%;aspect-ratio:16 / 9;position:relative}.map-legend{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:12px;padding:10px 14px;border:1px solid var(--panel-edge);border-radius:var(--radius);background:var(--panel)}.legend-item{display:inline-flex;align-items:center;gap:7px;font-size:13px;color:var(--ink-dim)}.legend-pin{width:18px;height:18px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#161008;border:1.5px solid #0a161b}.map-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block}.map-svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.map-node{position:absolute;transform:translate(-50%,-50%);cursor:pointer;pointer-events:auto}.map-node .pin{width:22px;height:22px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#f0d590,#9a7d3c);border:2px solid #0a161b;box-shadow:0 0 0 1px var(--gold),0 2px 6px #00000080;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#1a1208}.map-node.in-route .pin{background:radial-gradient(circle at 35% 30%,#bfe0ff,#2c6aa8);box-shadow:0 0 0 2px #5fa8e8,0 0 12px #5fa8e899}.map-node.selected .pin{outline:2px solid var(--gold-bright);outline-offset:2px}.map-node .node-label{position:absolute;top:100%;margin-top:4px;left:50%;transform:translate(-50%);white-space:nowrap;font-size:11px;background:#081216e0;padding:1px 6px;border-radius:5px;border:1px solid var(--panel-edge);color:var(--ink-dim);z-index:2;opacity:0;transition:opacity .12s;pointer-events:none}.map-node:hover{z-index:6}.map-node:hover .node-label,.map-node.in-route .node-label,.map-node.selected .node-label,.map-node.editing .node-label{opacity:1}.map-node.icon-node{transform:translate(-50%,-50%)}.map-node.clickable{cursor:pointer}.map-node.impassable{cursor:not-allowed}.map-node .ghost{opacity:0}.map-node.in-route.icon-node>div:first-child{filter:drop-shadow(0 0 4px #5fa8e8)}.map-node.selected.icon-node>div:first-child{filter:drop-shadow(0 0 5px var(--gold-bright))}.map-node.connect-sel{outline:2px solid var(--gold-bright);outline-offset:3px;border-radius:4px}.map-node.remove-sel{outline:2px solid #ff5b5b;outline-offset:3px;border-radius:4px}.map-dot{position:absolute;width:4px;height:4px;border-radius:50%;background:#f0ebd7b8;transform:translate(-50%,-50%);pointer-events:none;box-shadow:0 0 2px #0009}.edge-lines{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.edge-line{stroke:#ff2b2b;stroke-width:2.5;stroke-linecap:round;vector-effect:non-scaling-stroke;pointer-events:none;filter:drop-shadow(0 0 1.5px rgba(0,0,0,.85))}.edge-line.aquatic{stroke:#3fa0e8;stroke-dasharray:4 3}.edge-layer{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;z-index:6}.edge-hit{stroke:#e0787800;stroke-width:14;stroke-linecap:round;vector-effect:non-scaling-stroke;pointer-events:stroke;cursor:pointer;transition:stroke .12s}.edge-hit:hover{stroke:#e95e65d9}.edge-hit.water:hover{stroke:#3fa0e8d9}.wp-badge{position:absolute;top:-7px;right:-7px;background:var(--gold);color:#1a1208;border-radius:50%;width:16px;height:16px;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;border:1px solid #0a161b}.map-bin{position:absolute;right:12px;bottom:12px;background:#140a0acc;border:1.5px dashed var(--danger);color:var(--danger);padding:8px 12px;border-radius:8px;font-size:12.5px;pointer-events:none;opacity:.55;transition:opacity .12s,background .12s}.map-bin.over{opacity:1;background:#e06b6b47;border-style:solid}.icon-palette{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.palette-icon{display:flex;flex-direction:column;align-items:center;gap:5px;background:#11292f;border:1px solid var(--panel-edge);border-radius:9px;padding:8px 10px;cursor:pointer;color:var(--ink-dim);font-size:11.5px;min-width:54px}.palette-icon:hover{border-color:var(--gold-deep)}.palette-icon.armed{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold);color:var(--gold-bright)}.route-readout{display:flex;gap:14px;flex-wrap:wrap;align-items:center}.big-stat{font-size:30px;font-weight:800;color:var(--gold-bright);font-family:Georgia,serif}.stop-chips{display:flex;flex-wrap:wrap;gap:6px}.stop-chip{display:inline-flex;align-items:center;gap:6px;background:#11292f;border:1px solid var(--panel-edge);border-radius:20px;padding:4px 10px;font-size:12.5px}.stop-chip .idx{background:var(--gold);color:#1a1208;border-radius:50%;width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:11px}.dev-subnav{display:flex;gap:6px;margin-bottom:18px;flex-wrap:wrap}.dev-subnav a{text-decoration:none;color:var(--ink-dim);padding:7px 13px;border-radius:8px;border:1px solid var(--panel-edge);font-size:13.5px;font-weight:600}.dev-subnav a.active{color:var(--gold-bright);border-color:var(--gold-deep);background:#d8b66a1a}.cast-tabs{display:flex;gap:6px;margin-bottom:18px;flex-wrap:wrap}.cast-tabs a{text-decoration:none;color:var(--ink-dim);padding:7px 13px;border-radius:8px;border:1px solid var(--panel-edge);font-size:13.5px;font-weight:600}.cast-tabs a.active{color:var(--gold-bright);border-color:var(--gold-deep);background:#d8b66a1a}.list-rows{display:flex;flex-direction:column;gap:8px}.list-row{display:flex;align-items:center;gap:12px;padding:10px 12px}.list-row .grow{flex:1;min-width:0}.list-row .name{font-weight:600}.chip-toggle{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:8px;border:1px solid var(--panel-edge);cursor:pointer;font-size:12.5px;background:#0e2228;color:var(--ink-dim);-webkit-user-select:none;user-select:none}.chip-toggle.on{border-color:var(--gold-deep);color:var(--gold-bright);background:#d8b66a1a}.chip-toggle.boon.on{border-color:var(--boon);color:var(--boon);background:#5fa8e81f}.chip-toggle.bane.on{border-color:var(--bane);color:var(--bane);background:#e8c45f1f}.chip-wrap{display:flex;flex-wrap:wrap;gap:6px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px}.image-drop{position:relative;border:1.5px dashed var(--panel-edge);border-radius:10px;display:flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;background:#0d2026;transition:border-color .15s,background .15s}.image-drop.over{border-color:var(--gold);background:#d8b66a14}.image-drop img{width:100%;height:100%;object-fit:contain}.image-drop-label{color:var(--ink-faint);font-size:13px;padding:12px;text-align:center}.image-drop-label.overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#00000080;color:var(--gold-bright)}.image-drop-actions{display:flex;align-items:center;gap:10px;margin-top:8px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#040a0cb3;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:flex-start;justify-content:center;padding:40px 20px;z-index:100;overflow:auto}.modal-panel{width:100%;max-width:560px}.modal-panel.wide{max-width:880px}.modal-head{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--panel-edge)}.modal-head h2{margin:0;font-size:19px;color:var(--gold-bright)}.modal-body{padding:20px}.modal-foot{padding:14px 20px;border-top:1px solid var(--panel-edge);display:flex;justify-content:flex-end;gap:10px}.section-title{font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-faint);margin:0 0 8px}.divider{height:1px;background:var(--panel-edge);margin:16px 0}.stack{display:flex;flex-direction:column;gap:14px}.inline-add{display:flex;gap:8px;align-items:center}@media (max-width: 860px){.team-layout{grid-template-columns:1fr}.palette{position:static}.two-col{grid-template-columns:1fr}}@media (max-width: 720px){.topbar{flex-wrap:wrap;gap:8px 12px;padding:10px 14px}.brand{gap:10px}.brand-mark{font-size:20px}.brand h1{font-size:18px;white-space:nowrap}.brand-sub{display:none}.topbar-right{gap:10px}.mainnav{order:3;width:100%;margin-left:0}.navrow-links{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.navrow-links::-webkit-scrollbar{display:none}.mainnav a{flex:0 0 auto;white-space:nowrap;padding:7px 12px;font-size:13px}.page-wrap{padding:16px 14px}.page-head{flex-direction:column;align-items:stretch;gap:12px;margin-bottom:16px}.page-head h2{font-size:21px}.page-head .row{width:100%;flex-wrap:wrap}.page-head .field{flex:1 1 100%;min-width:0!important}.page-head select,.page-head input,.page-head textarea{width:100%;min-width:0!important;max-width:100%}.inline-add{flex-wrap:wrap;width:100%}.inline-add input,.inline-add select{flex:1 1 100%;min-width:0!important;width:100%}.ornate.card,.card{padding:16px}.rate-table th,.rate-table td{padding:8px 10px}}.char-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(max(200px,calc((100% - 48px)/4)),1fr))}.char-card{text-align:left;padding:0;overflow:hidden;cursor:pointer;border:1px solid var(--panel-edge);background:linear-gradient(180deg,var(--panel-2),var(--panel));border-radius:var(--radius);color:var(--ink);display:flex;flex-direction:column;transition:transform .12s,border-color .12s,box-shadow .12s;font:inherit}.char-card:hover{transform:translateY(-2px);border-color:var(--gold-deep);box-shadow:var(--shadow)}.char-portrait{position:relative;width:100%;aspect-ratio:3 / 4;background:linear-gradient(160deg,#21434d,#122a31);display:flex;align-items:center;justify-content:center;overflow:hidden;color:var(--gold)}.char-q{position:absolute;right:8px;bottom:8px;z-index:2;width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--gold);color:#1a1208;border-radius:50%;border:2px solid #0a161b;font-family:Georgia,serif;font-weight:800;font-size:17px;box-shadow:0 1px 4px #00000080}.char-portrait img{width:100%;height:100%;object-fit:cover;object-position:top center}.char-initial{font-family:Georgia,serif;font-weight:700;font-size:40px}.char-card-body{padding:10px 12px;display:flex;flex-direction:column;gap:4px}.char-name{font-weight:700;font-size:15px;display:flex;align-items:center;gap:6px}.char-attr{margin-bottom:12px}.unique-skill+.unique-skill{margin-top:5px}.char-attr.compact .unique-skill{display:inline}.char-attr .k{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-faint);margin-bottom:3px}.char-attr.compact{margin-bottom:0;font-size:12.5px;color:var(--ink-dim)}.char-attr.compact .k{display:inline;font-size:12.5px;text-transform:none;letter-spacing:0}.char-longtext{margin:0;white-space:pre-wrap;color:var(--ink-dim);font-size:13.5px;line-height:1.55}.char-detail-head{display:flex;gap:16px;align-items:flex-start;margin-bottom:16px}.char-portrait.large{width:150px;aspect-ratio:3 / 4;border-radius:8px;border:1px solid var(--panel-edge);flex:none}.char-detail-name{margin:0 0 4px;font-size:22px;color:var(--gold-bright);display:flex;align-items:center;gap:8px}.cast-detail-block{margin-bottom:12px}.cast-detail-label{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-faint);margin-bottom:3px}.god-crest{width:84px;height:84px;object-fit:contain}@media (max-width: 720px){.char-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.char-name{font-size:15px}.modal-backdrop{padding:20px 12px}.char-portrait.large{width:110px}}.class-layout{display:grid;grid-template-columns:264px 1fr;gap:16px;align-items:start}.class-list-panel{padding:12px;display:flex;flex-direction:column;gap:10px}.class-tier-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px}.class-tier-tab{min-width:0;padding:6px 8px;border-radius:8px;border:1px solid var(--panel-edge);background:#0e2228;color:var(--ink-dim);font-size:12.5px;font-weight:600;cursor:pointer;white-space:nowrap;text-align:center}.class-tier-tab.active{border-color:var(--gold-deep);color:var(--gold-bright);background:#d8b66a1a}.class-list-scroll{display:flex;flex-direction:column;gap:4px;max-height:560px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(216,182,106,.35) transparent}.class-list-item{display:flex;align-items:center;gap:10px;padding:6px 8px;border-radius:8px;border:1px solid transparent;background:none;color:var(--ink);cursor:pointer;font:inherit;text-align:left}.class-list-item:hover{background:#ffffff08}.class-list-item.active{border-color:var(--gold-deep);background:#d8b66a1a}.class-list-item .grow{font-weight:600}.class-detail{padding:18px}.class-detail-inner{display:flex;flex-direction:column;gap:16px}.class-detail-head{display:flex;align-items:center;gap:14px}.class-detail-name{margin:0;font-size:20px;color:var(--gold-bright)}.class-desc{margin:-6px 0 0;font-size:13.5px}.class-lv-row{display:flex;gap:12px}.class-lv{flex:1;display:flex;flex-direction:column;gap:2px;padding:10px 12px;border:1px solid var(--panel-edge);border-radius:10px;background:#0e2228}.class-lv b{font-size:20px;color:var(--gold-bright)}.class-skills-row{display:flex;gap:12px}.class-skillreq{flex:1}.class-skillreq-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:5px}.class-skillreq-item{display:inline-flex;align-items:center;gap:5px;padding:4px 8px;border:1px solid var(--panel-edge);border-radius:8px;background:#0e2228}.class-grade{font-weight:700;color:var(--gold-bright)}.class-abilities{display:flex;flex-direction:column;gap:8px;margin-top:5px}.class-ability{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--panel-edge);border-radius:10px;background:#0e2228}.class-ability.empty{color:var(--ink-faint);border-style:dashed;font-size:13px;justify-content:center}.class-ability-icon{width:34px;height:34px;flex:none;border-radius:8px;display:flex;align-items:center;justify-content:center;background:#ffffff0d;color:var(--gold);font-size:16px;overflow:hidden}.class-ability-icon.master{color:var(--gold-bright)}.class-ability-icon img{width:100%;height:100%;object-fit:contain}.class-ability-name{font-weight:600}.class-ability-desc{font-size:12.5px}@media (max-width: 720px){.class-layout{grid-template-columns:1fr}.class-list-scroll{max-height:260px}.class-skills-row{flex-direction:column}}.tier-pool{display:flex;gap:12px;overflow-x:auto;padding:12px 14px;min-height:96px;border:1px solid var(--panel-edge);border-radius:var(--radius);background:linear-gradient(180deg,var(--panel-2),var(--panel));margin-bottom:16px;scrollbar-width:thin;scrollbar-color:rgba(216,182,106,.35) transparent}.tier-pool::-webkit-scrollbar{height:8px}.tier-pool::-webkit-scrollbar-thumb{background:#d8b66a4d;border-radius:4px}.tier-rows{display:flex;flex-direction:column;gap:8px}.tier-row{display:flex;align-items:stretch;border:1px solid var(--panel-edge);border-radius:var(--radius);overflow:hidden;background:var(--panel);min-height:84px}.tier-pool.drop,.tier-row.drop{outline:2px dashed var(--gold);outline-offset:-3px;border-color:var(--gold-deep)}.tier-label{flex:0 0 76px;display:flex;align-items:center;justify-content:center;padding:6px}.tier-label input{width:100%;background:transparent;border:none;outline:none;text-align:center;font-weight:800;font-size:22px;font-family:Iowan Old Style,Georgia,serif;color:#1a1208;padding:2px}.tier-label input:focus{background:#0000001f;border-radius:6px}.tier-units{flex:1;display:flex;flex-wrap:wrap;align-content:flex-start;gap:10px;padding:10px 12px;min-width:0}.tier-controls{flex:0 0 auto;display:flex;flex-direction:column;justify-content:center;gap:2px;padding:4px 6px;border-left:1px solid var(--panel-edge)}.tier-chip{display:flex;flex-direction:column;align-items:center;gap:4px;width:56px;flex:0 0 auto;cursor:grab;touch-action:manipulation;user-select:none;-webkit-user-select:none;transition:transform .1s;animation:split-chip-in .18s ease}.tier-chip:hover{transform:translateY(-2px)}.tier-chip:active{cursor:grabbing}.tier-chip-name{font-size:10.5px;line-height:1.15;height:2.3em;text-align:center;color:var(--ink-dim);max-width:56px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.tier-menu{position:fixed;z-index:251;display:flex;flex-wrap:wrap;gap:6px;padding:9px;width:190px;max-width:calc(100vw - 24px);background:var(--panel-2);border:1px solid var(--gold-deep);border-radius:12px;box-shadow:0 12px 30px #0000008c;animation:split-menu-in .13s ease-out}.tier-menu-item{min-width:40px;height:38px;padding:0 10px;border:none;border-radius:8px;color:#1a1208;font-weight:800;font-size:15px;cursor:pointer}.tier-menu-item.pool{background:#0e2228;color:var(--ink-dim);border:1px solid var(--panel-edge);font-weight:600;font-size:13px}@media (max-width: 720px){.tier-label{flex-basis:56px}.tier-label input{font-size:18px}}.poll-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:16px;align-items:start}.poll-card{padding:18px}.poll-q{font-family:Georgia,Times New Roman,serif;font-weight:700;font-size:18px;color:var(--gold-bright, var(--gold));line-height:1.3}.poll-desc{margin:6px 0 0;font-size:13px}.poll-hint{margin:14px 0 8px;font-size:12.5px;color:var(--ink-faint);letter-spacing:.02em}.poll-options{display:flex;flex-direction:column;gap:8px;max-height:440px;overflow-y:auto;padding-right:6px}.poll-options::-webkit-scrollbar{width:10px}.poll-options::-webkit-scrollbar-track{background:#0000002e;border-radius:8px}.poll-options::-webkit-scrollbar-thumb{background:var(--panel-edge, #2c5a66);border-radius:8px;border:2px solid transparent;background-clip:padding-box}.poll-options::-webkit-scrollbar-thumb:hover{background:var(--gold-deep, #9a7d3c);background-clip:padding-box}.poll-options{scrollbar-width:thin;scrollbar-color:var(--panel-edge, #2c5a66) transparent}.poll-option{display:flex;align-items:center;gap:10px;width:100%;text-align:left;padding:11px 13px;border-radius:10px;border:1px solid var(--panel-edge, #20424b);background:#0d2026;color:var(--ink, #e8eef0);cursor:pointer;font-size:14px;transition:border-color .15s,background .15s,transform .05s}.poll-option:hover{background:#122a31}.poll-option:active{transform:translateY(1px)}.poll-option.on{background:#122c34;font-weight:600}.poll-option-dot{width:13px;height:13px;border-radius:50%;flex:none;box-shadow:0 0 0 2px #00000040}.poll-check{color:var(--gold-bright, var(--gold));font-weight:800}.poll-actions{margin-top:14px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}.poll-meta{margin-top:12px;font-size:12px;color:var(--ink-faint)}.poll-empty{padding:24px 8px;text-align:center;color:var(--ink-faint);font-size:13px}.poll-closed-note{font-size:12px;color:var(--ink-faint);margin-bottom:8px}.poll-you{display:inline-block;margin-left:8px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--gold-bright, var(--gold))}.poll-hbar{display:flex;flex-direction:column;gap:12px;margin-top:6px}.poll-hbar-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:5px;gap:10px}.poll-row-label{font-size:13.5px}.poll-row-value{font-size:12.5px;color:var(--ink-faint);white-space:nowrap;font-variant-numeric:tabular-nums}.poll-hbar-track{height:16px;border-radius:8px;background:#ffffff0d;overflow:hidden}.poll-hbar-fill{height:100%;border-radius:8px;min-width:2px;transition:width .9s cubic-bezier(.2,.8,.2,1)}.poll-hbar-row.mine .poll-row-label{color:var(--gold-bright, var(--gold));font-weight:600}.poll-vbar{display:flex;align-items:flex-end;justify-content:space-around;gap:10px;margin-top:6px;min-height:190px}.poll-vbar-col{display:flex;flex-direction:column;align-items:center;gap:6px;flex:1;min-width:0}.poll-vbar-value{font-size:12px;color:var(--ink-faint);font-variant-numeric:tabular-nums;white-space:nowrap}.poll-vbar-track{height:150px;width:100%;max-width:54px;display:flex;align-items:flex-end;background:#ffffff0a;border-radius:7px 7px 4px 4px}.poll-vbar-fill{width:100%;border-radius:6px 6px 3px 3px;min-height:3px;transition:height .9s cubic-bezier(.2,.8,.2,1)}.poll-vbar-label{font-size:11.5px;text-align:center;color:var(--ink-soft, var(--ink));overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.poll-vbar-col.mine .poll-vbar-label{color:var(--gold-bright, var(--gold));font-weight:600}.poll-pie-wrap{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin-top:6px}.poll-pie{flex:none;filter:drop-shadow(0 4px 10px rgba(0,0,0,.35));opacity:0;transform:scale(.9) rotate(-8deg);transition:opacity .5s ease,transform .6s cubic-bezier(.2,.8,.2,1)}.poll-pie.grown{opacity:1;transform:none}.poll-pie path.mine{filter:brightness(1.12)}.poll-legend{display:flex;flex-direction:column;gap:7px;flex:1;min-width:150px}.poll-legend-row{display:flex;align-items:center;gap:8px;font-size:13px}.poll-legend-dot{width:12px;height:12px;border-radius:3px;flex:none}.poll-legend-label{flex:1}.poll-legend-value{color:var(--ink-faint);font-size:12.5px;font-variant-numeric:tabular-nums;white-space:nowrap}.poll-legend-row.mine .poll-legend-label{color:var(--gold-bright, var(--gold));font-weight:600}.poll-preview{border:1px solid var(--panel-edge, #20424b);border-radius:10px;padding:14px;background:#00000026}.poll-color{width:34px;height:30px;padding:2px;border:1px solid var(--panel-edge, #20424b);border-radius:6px;background:#0d2026;cursor:pointer;flex:none}@media (max-width: 720px){.poll-grid{grid-template-columns:1fr}.poll-pie-wrap{justify-content:center}}.poll-option-icon{width:30px;height:30px;border-radius:6px;object-fit:cover;object-position:top center;flex:none;border:1px solid var(--panel-edge, #20424b)}.poll-icon{width:22px;height:22px;border-radius:4px;object-fit:cover;object-position:top center;flex:none;vertical-align:middle}.poll-row-label{display:inline-flex;align-items:center;gap:7px}.poll-vbar-col .poll-icon{width:26px;height:26px;border-radius:5px}.pal-list{display:flex;flex-wrap:wrap;gap:8px}.pal-chip{display:flex;flex-direction:column;align-items:center;gap:3px}.pal-swatch{width:46px;height:30px;padding:2px;border:1px solid var(--panel-edge, #20424b);border-radius:6px;background:#0d2026;cursor:pointer}.pal-ctrls{display:flex;gap:0}.pal-ctrls .icon-btn{padding:2px 4px;font-size:11px}.pal-std{width:20px;height:20px;border-radius:5px;border:1px solid rgba(0,0,0,.35);cursor:pointer;padding:0}.pal-std:hover{outline:2px solid var(--gold, #d8b66a)}.poll-pie-pct{fill:#fff;font-size:13px;font-weight:700;paint-order:stroke;stroke:#0000008c;stroke-width:2.5px;pointer-events:none}.poll-rank{color:var(--gold-bright, var(--gold));font-weight:700}.gcard{position:relative;perspective:900px;flex:none}.gcard.sz-sm{width:116px;height:168px}.gcard.sz-md{width:150px;height:216px}.gcard.sz-lg{width:216px;height:312px}.gcard-flip{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .55s cubic-bezier(.2,.8,.2,1);transform:rotateY(180deg)}.gcard.down .gcard-flip{transform:rotateY(0)}.gcard-face{position:absolute;top:0;right:0;bottom:0;left:0;backface-visibility:hidden;border-radius:13px;overflow:hidden}.gcard-back{transform:rotateY(0);background:radial-gradient(circle at 50% 40%,#1c3a44,#0b1a20);border:2px solid var(--gold-deep);display:flex;align-items:center;justify-content:center}.gcard-back-mark{font-size:46px;color:var(--gold);text-shadow:0 0 16px rgba(216,182,106,.6)}.gcard-front{transform:rotateY(180deg);background:#0c1a1f;border:2px solid var(--rc, #c8d0d3);box-shadow:0 0 0 1px var(--rc, #c8d0d3),0 0 18px -4px var(--rc, #c8d0d3);display:flex;flex-direction:column}.gcard-art{position:relative;flex:1;min-height:0;overflow:hidden}.gcard-art img{width:100%;height:100%;object-fit:cover;object-position:top center}.gcard-initial{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:40px;color:var(--rc);font-family:Georgia,serif}.gcard-glow{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.gcard-info{flex:none;padding:6px 7px 8px;background:linear-gradient(180deg,#14282f,#0b191f);border-top:1px solid var(--rc, #c8d0d3);text-align:center}.gcard-class{font-size:10.5px;color:var(--ink-dim)}.gcard.sz-lg .gcard-class{font-size:12.5px}.gcard-stars{display:block;color:var(--rc);font-size:11px;letter-spacing:1px;text-shadow:0 1px 3px rgba(0,0,0,.8)}.gcard.sz-lg .gcard-stars{font-size:15px}.gcard-name{font-weight:700;font-size:13px;color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.9)}.gcard.sz-lg .gcard-name{font-size:17px}.gcard.sz-sm .gcard-name{font-size:11.5px}.gcard-title{font-size:10.5px;color:#d8c79a;font-style:italic;white-space:nowrap;overflow:hidden}.gcard.r-epic .gcard-front,.gcard.r-legendary .gcard-front{box-shadow:0 0 0 2px var(--rc),0 0 26px -2px var(--rc)}.gcard.r-legendary .gcard-glow:after,.gcard.r-epic .gcard-glow:after{content:"";position:absolute;top:-20%;bottom:-20%;left:-60%;width:45%;background:linear-gradient(115deg,transparent,rgba(255,255,255,.4),transparent);transform:translate(0) skew(-14deg);animation:gShine 5.5s ease-out infinite;pointer-events:none}.gcard.r-epic .gcard-glow:after{opacity:.6}@keyframes gShine{0%{transform:translate(0) skew(-14deg)}20%{transform:translate(420%) skew(-14deg)}to{transform:translate(420%) skew(-14deg)}}.gacha-stage{position:relative;overflow:hidden;padding:26px;text-align:center}.gacha-stage-glow{position:absolute;inset:-40% 0 auto 0;height:70%;background:radial-gradient(ellipse at 50% 0%,rgba(216,182,106,.16),transparent 70%);pointer-events:none}.gacha-banner-art{position:relative;max-width:640px;margin:0 auto 14px;border-radius:12px;overflow:hidden;border:1px solid var(--panel-edge);box-shadow:0 6px 22px #0006}.gacha-banner-art img{display:block;width:100%;max-height:240px;object-fit:cover}.gacha-banner-name{position:relative;font-family:Georgia,serif;font-size:26px;font-weight:700;color:var(--gold-bright);margin-bottom:16px}.gacha-featured{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-bottom:18px}.gacha-featured-portrait{width:76px;height:76px;border-radius:50%;overflow:hidden;border:2px solid var(--rc, var(--panel-edge));box-shadow:0 0 14px -4px var(--rc, transparent);background:#0d2026}.gacha-featured-portrait img{width:100%;height:100%;object-fit:cover;object-position:top center}.gacha-rates{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;font-size:12px;margin-bottom:20px}.gacha-rate{font-weight:600}.gacha-summon-btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}.gacha-btn{padding:13px 26px;font-size:15px}.gacha-btn.big{font-size:17px;padding:15px 34px}.gacha-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;background:radial-gradient(circle at center,#091216ed,#030709fa);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:gFadeIn .25s ease;overflow:hidden}@keyframes gFadeIn{0%{opacity:0}to{opacity:1}}.gacha-overlay.charging{--hint: #7fd0ff}.gacha-overlay.charging.hint-rare{--hint: #5fa8e8}.gacha-overlay.charging.hint-epic{--hint: #c58ff0}.gacha-overlay.charging.hint-legendary{--hint: #f4d987}.gsummon-stage{position:absolute;top:50%;left:50%;width:0;height:0}.gsummon-star,.gsummon-burststar{position:absolute;top:0;left:0;background:radial-gradient(circle at 50% 50%,#fff 0%,var(--hint) 55%,transparent 78%);clip-path:polygon(50% 0%,60% 40%,100% 50%,60% 60%,50% 100%,40% 60%,0% 50%,40% 40%);filter:drop-shadow(0 0 5px var(--hint))}.gsummon-star{will-change:transform,opacity;animation:gVortex 1.4s ease-in both}@keyframes gVortex{0%{opacity:0;transform:translate(-50%,-50%) translate(var(--sx),var(--sy)) rotate(0) scale(.4)}18%{opacity:1}70%{opacity:1;transform:translate(-50%,-50%) translate(calc(var(--sx) * .32),calc(var(--sy) * .32)) rotate(250deg) scale(1)}to{opacity:0;transform:translate(-50%,-50%) rotate(430deg) scale(.12)}}.gsummon-burststar{will-change:transform,opacity;animation:gBurstStar 1.6s cubic-bezier(.12,.75,.3,1) both}@keyframes gBurstStar{0%{opacity:0;transform:translate(-50%,-50%) scale(.2)}8%{opacity:1;transform:translate(-50%,-50%) translate(calc(var(--bx) * .1),calc(var(--by) * .1)) scale(1)}to{opacity:0;transform:translate(-50%,-50%) translate(var(--bx),var(--by)) rotate(220deg) scale(.3)}}.gsummon-light{position:absolute;top:0;left:0;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,#fff 0%,#fff 14%,var(--hint) 40%,transparent 70%);will-change:transform,opacity;animation:gExplode 1.9s cubic-bezier(.15,.75,.3,1) 3s both}@keyframes gExplode{0%{opacity:0;transform:translate(-50%,-50%) scale(.04)}14%{opacity:1;transform:translate(-50%,-50%) scale(.7)}40%{opacity:1;transform:translate(-50%,-50%) scale(3)}72%{opacity:.4;transform:translate(-50%,-50%) scale(6.5)}to{opacity:0;transform:translate(-50%,-50%) scale(9)}}.gsummon-flash{position:absolute;top:0;right:0;bottom:0;left:0;background:#fff;opacity:0;pointer-events:none;animation:gFlash 1.3s ease-out 3s both}@keyframes gFlash{0%{opacity:0}12%{opacity:.9}45%{opacity:.12}to{opacity:0}}.gsummon-crest{position:absolute;top:0;left:0;width:80px;height:80px;object-fit:contain;pointer-events:none;z-index:4;filter:drop-shadow(0 0 10px var(--hint)) drop-shadow(0 0 24px #e0842c) brightness(1.12);will-change:transform,opacity;animation:gCrestReveal 1.9s ease-out 3.5s both}@keyframes gCrestReveal{0%{opacity:0;transform:translate(-50%,-50%) scale(2.2)}16%{opacity:.6;transform:translate(-50%,-50%) scale(1.4)}28%{opacity:1;transform:translate(-50%,-50%) scale(1.05)}34%{opacity:1;transform:translate(-50%,-50%) scale(1)}80%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(.97)}}.gacha-charging-text{position:absolute;top:66%;left:0;right:0;text-align:center;color:#cfe6f0;letter-spacing:3px;text-transform:uppercase;font-size:13px;animation:gPulse 1.4s ease-in-out infinite}@keyframes gPulse{0%,to{opacity:.5}50%{opacity:1}}.gacha-reveal-card{position:relative;z-index:1;animation:gRise .4s ease}.gacha-reveal-stars{position:absolute;top:50%;left:50%;width:0;height:0;z-index:0;--hint: #eac04a;pointer-events:none}@keyframes gRise{0%{transform:translateY(20px);opacity:0}to{transform:none;opacity:1}}.gacha-reveal-burst{position:absolute;width:380px;height:380px;border-radius:50%;pointer-events:none;background:radial-gradient(circle,var(--rc, #fff) 0%,transparent 62%);animation:gBurst .7s ease-out forwards;opacity:0}.gacha-overlay.reveal.r-common .gacha-reveal-burst{--rc: #c8d0d3}.gacha-overlay.reveal.r-uncommon .gacha-reveal-burst{--rc: #5cc08a}.gacha-overlay.reveal.r-rare .gacha-reveal-burst{--rc: #5fa8e8}.gacha-overlay.reveal.r-epic .gacha-reveal-burst{--rc: #b784e0}.gacha-overlay.reveal.r-legendary .gacha-reveal-burst{--rc: #eac04a}@keyframes gBurst{0%{opacity:0;transform:scale(.2)}40%{opacity:.85}to{opacity:0;transform:scale(1.6)}}.gacha-reveal-ctrls{display:flex;align-items:center;gap:14px}.gacha-progress{color:var(--ink-dim);font-size:13px;font-variant-numeric:tabular-nums}.gacha-overlay.summary{justify-content:flex-start;padding:40px 20px;overflow-y:auto}.gacha-summary-title{color:var(--gold-bright);font-size:22px;margin:0}.gacha-summary-grid{display:grid;gap:14px;justify-content:center;width:100%;max-width:640px;margin:0 auto}.gacha-summary-grid .gcard.sz-sm{width:100%;height:auto;aspect-ratio:116 / 168}.gacha-summary-grid .gcard-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media (max-width: 720px){.gacha-summary-grid{gap:6px}.gacha-summary-grid .gcard-name{font-size:9.5px}.gacha-summary-grid .gcard-title,.gacha-summary-grid .gcard-class{font-size:8.5px}.gacha-summary-grid .gcard-info{padding:4px 4px 5px}}.gacha-summary-grid .gcard{animation:gPop .4s cubic-bezier(.2,.9,.3,1.3) backwards}.gacha-summary-grid .gcard:nth-child(n){animation-delay:calc(var(--n, 0) * 40ms)}@keyframes gPop{0%{transform:scale(.6);opacity:0}to{transform:scale(1);opacity:1}}.dev-subnav .as-link{background:transparent;border:1px solid transparent;color:var(--ink-dim);padding:8px 14px;border-radius:8px;font-weight:600;font-size:14px;cursor:pointer}.dev-subnav .as-link:hover{color:var(--ink);background:#d8b66a14}.dev-subnav .as-link.active{color:var(--gold-bright);border-color:var(--gold-deep);background:linear-gradient(180deg,#d8b66a29,#d8b66a0d)}.gcard-row{display:flex;align-items:center;gap:12px;padding:10px 12px}.gcard-row-thumb{width:46px;height:62px;border-radius:7px;overflow:hidden;border:2px solid var(--rc, var(--panel-edge));background:#0d2026;flex:none;display:flex;align-items:center;justify-content:center;color:var(--rc);font-weight:700}.gcard-row-thumb img{width:100%;height:100%;object-fit:cover;object-position:top center}.gacha-pick-list{display:flex;flex-direction:column;gap:5px;max-height:320px;overflow-y:auto;padding-right:6px}.gacha-pick{display:flex;align-items:center;gap:9px;padding:6px 9px;border-radius:8px;border:1px solid var(--panel-edge);background:#0d2026;color:var(--ink);cursor:pointer;text-align:left}.gacha-pick:hover{background:#12272e}.gacha-pick.on{border-color:var(--gold-deep);background:#14302f}.gacha-pick-thumb{width:30px;height:30px;border-radius:6px;overflow:hidden;background:#16323a;display:flex;align-items:center;justify-content:center;flex:none;font-size:12px}.gacha-pick-thumb img{width:100%;height:100%;object-fit:cover;object-position:top center}.gacha-pick .gcard-stars{font-size:10px}.gacha-pick-check{width:18px;color:var(--gold-bright);font-weight:800;text-align:center}@media (prefers-reduced-motion: reduce){.gcard-flip,.gsummon-star,.gsummon-burststar,.gsummon-light,.gsummon-flash,.gsummon-crest,.gacha-reveal-burst,.gcard-glow,.gacha-summary-grid .gcard{animation-duration:.01ms!important;animation-delay:0s!important;transition-duration:.15s!important}}@media (max-width: 720px){.gcard.sz-lg{width:180px;height:260px}.gacha-summon-btns{flex-direction:column}}.rarity-tally{display:flex;flex-wrap:wrap;gap:6px}.rarity-chip{font-size:11.5px;font-weight:600;padding:3px 9px;border-radius:20px;border:1px solid var(--panel-edge);background:#0000002e}.rarity-chip b{font-weight:800}.rarity-chip.total{color:var(--ink-dim);border-color:var(--panel-edge)}.gacha-last{margin-top:22px;text-align:center}.gacha-last-title{font-size:13px;color:var(--ink-dim);letter-spacing:.05em;text-transform:uppercase;margin-bottom:12px}.gacha-overlay.gallery{justify-content:flex-start;overflow-y:auto;padding:24px 20px;gap:14px}.gacha-gallery-head{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;max-width:1040px}.gacha-gallery-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;width:100%;max-width:1040px}.gacha-gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:12px;width:100%;max-width:1040px}.gacha-gallery-grid .gcard.sz-sm{width:100%;height:auto;aspect-ratio:116 / 168}.gacha-gallery-grid .gcard-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media (max-width: 720px){.gacha-gallery-grid{grid-template-columns:repeat(3,1fr);gap:8px}}.cast-tabs button{background:transparent;color:var(--ink-dim);padding:7px 13px;border-radius:8px;border:1px solid var(--panel-edge);font-size:13.5px;font-weight:600;cursor:pointer}.cast-tabs button:hover{color:var(--ink)}.cast-tabs button.active{color:var(--gold-bright);border-color:var(--gold-deep);background:#d8b66a1a}.recruit-scroll{overflow-x:auto}.recruit-table{width:100%;min-width:860px;table-layout:fixed;border-collapse:collapse;font-size:13px}.recruit-table th,.recruit-table td{border:1px solid var(--panel-edge);padding:8px 10px;vertical-align:top;text-align:left;overflow-wrap:anywhere}.recruit-table thead th{background:var(--panel);color:var(--ink-dim);font-size:11.5px;text-transform:uppercase;letter-spacing:.04em}.recruit-char-col{width:180px}.recruit-cell{display:flex;flex-direction:column;gap:6px}.recruit-misc{font-size:11.5px;color:var(--ink-dim)}.recruit-misc b{color:var(--ink-faint)}.recruit-ok{color:var(--ok);font-size:12px}.recruit-dash{font-size:16px}.growths-scroll{overflow-x:auto;border:1px solid var(--panel-edge);border-radius:10px}.growths-table{border-collapse:collapse;width:100%;min-width:920px;font-size:13px}.growths-table th{background:#12242b;color:var(--ink-dim);font-size:11px;text-transform:uppercase;letter-spacing:.03em;padding:8px 6px;text-align:center;cursor:pointer;white-space:nowrap;border:1px solid #0a1a1f;-webkit-user-select:none;user-select:none}.growths-table th:hover{color:var(--gold-bright)}.growths-table th.gr-unit{text-align:left}.growths-table td{padding:6px 8px;text-align:center;border:1px solid rgba(0,0,0,.35);font-weight:600}.growths-table .gr-rank{width:34px;background:#0f2027;color:var(--ink-faint);font-weight:700}.growths-table .gr-unit{text-align:left;background:#0f2027;color:var(--ink);font-weight:700;white-space:nowrap}.growths-table .gr-num{font-weight:800}.growths-table .gr-tier{text-align:center;color:var(--ink-dim);white-space:nowrap;font-size:12px}.growths-table.consolidated{min-width:1120px}.growths-table .gr-pick{background:#0f2027;text-align:left;padding:4px 6px}.growths-table .gr-pick select{width:100%;min-width:118px;font-size:12px;padding:4px 6px}.gr-note{font-size:10px;font-weight:700;color:var(--gold-bright)}.growths-table .gr-rowx{width:30px;text-align:center;background:#0f2027}.growths-table .gr-rowx .icon-btn{padding:2px 6px}.gr-legend{display:flex;align-items:center;gap:8px;margin-top:10px;font-size:12px;color:var(--ink-dim)}.gr-legend-bar{width:180px;height:12px;border-radius:3px;border:1px solid var(--panel-edge);background:linear-gradient(90deg,#224266,#2e3438,#846424)}.growths-edit input{text-align:center}.prof-scroll{overflow-x:auto;border:1px solid var(--panel-edge);border-radius:10px}.prof-table{border-collapse:collapse;width:100%;min-width:760px;font-size:13px;table-layout:fixed}.prof-table th{background:#12242b;border:1px solid #0a1a1f;padding:6px 4px;vertical-align:bottom}.prof-table td{border:1px solid var(--panel-edge);padding:6px 8px;text-align:center}.prof-unit-h,.prof-unit{width:var(--prof-name-w, 130px);min-width:var(--prof-name-w, 130px);max-width:var(--prof-name-w, 130px)}.prof-unit-h{text-align:left!important;color:var(--ink-dim);font-size:11px;text-transform:uppercase;letter-spacing:.04em}.prof-unit{text-align:left!important;background:#0f2027;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.prof-head{display:flex;flex-direction:column;align-items:center;gap:3px}.prof-head-icon{display:flex}.prof-head-label{font-size:10px;color:var(--ink-dim);text-transform:uppercase;letter-spacing:.02em}.prof-head-filters{display:inline-flex;gap:3px;margin-top:1px}.prof-fbtn{width:18px;height:18px;border-radius:4px;border:1px solid var(--panel-edge);background:transparent;color:var(--ink-faint);font-size:9px;cursor:pointer;line-height:1;padding:0}.prof-fbtn:hover{color:var(--ink)}.prof-fbtn.boon.on{background:#e8c45f33;color:var(--boon);border-color:var(--boon-deep)}.prof-fbtn.bane.on{background:#5fa8e833;color:var(--bane);border-color:var(--bane-deep)}.prof-c{font-size:11px}.prof-c.boon{background:#e8c45f29;color:var(--boon)}.prof-c.bane{background:#5fa8e829;color:var(--bane)}.growth-chips{display:flex;flex-wrap:wrap;gap:6px}.growth-chip{display:inline-flex;flex-direction:column;align-items:center;width:54px;padding:4px 6px;border:1px solid var(--panel-edge);border-radius:7px;background:#0000002e}.growth-chip .gc-k{font-size:10px;letter-spacing:.04em;color:var(--ink-faint);font-weight:700}.growth-chip .gc-v{font-size:13px;font-weight:700;color:var(--ink)}.growth-chip .gc-v.pos{color:#6bd88f}.growth-chip .gc-v.neg{color:#f07a5f}.support-wrap{display:flex;justify-content:center}.sup-anim{animation:supIn .36s cubic-bezier(.22,.61,.36,1);transform-box:view-box;transform-origin:center}@keyframes supIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.sup-node,.sup-ring{transition:transform .14s ease}@media (prefers-reduced-motion: reduce){.sup-anim{animation:none}}.support-graph{width:100%;max-width:640px;height:auto;touch-action:manipulation}.sup-edge{stroke:var(--panel-edge);stroke-width:2}.sup-rank-bg{fill:var(--panel);stroke:var(--panel-edge);stroke-width:1}.sup-rank{font-size:13px;font-weight:800;text-anchor:middle;dominant-baseline:central;font-family:Georgia,serif}.sup-ring{fill:#0d2026;stroke:var(--panel-edge);stroke-width:2}.sup-ring.center{stroke:var(--gold);stroke-width:3}.sup-node{cursor:pointer}.sup-node:hover .sup-ring{stroke:var(--gold-bright)}.sup-name{text-anchor:middle;dominant-baseline:hanging;fill:var(--ink);font-size:13px;font-weight:600}.sup-name.center{fill:var(--gold-bright);font-size:15px;font-weight:800}.sup-initial-bg{fill:#14303a}.sup-initial{text-anchor:middle;dominant-baseline:central;fill:var(--gold-deep);font-family:Georgia,serif;font-weight:700}.cal-legend{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 14px}.cal-legend-item{display:inline-flex;align-items:center;gap:8px;padding:5px 12px 5px 10px;border:1px solid var(--panel-edge);border-radius:20px;background:var(--panel);font-size:12.5px}.cal-legend-swatch{width:11px;height:11px;border-radius:50%;flex:none;box-shadow:0 0 0 1px #00000059 inset}.cal-legend-item b{color:var(--ink);font-weight:700}.cal-legend-item .muted{font-size:11.5px;color:var(--ink-dim)}.cal{border:1px solid var(--panel-edge);border-radius:12px;overflow:hidden;background:var(--panel);box-shadow:0 2px 10px #00000038}.cal-weekday-head{display:grid;grid-template-columns:repeat(7,1fr);background:#00000038;border-bottom:1px solid var(--panel-edge)}.cal-weekday-head>div{text-align:center;font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-faint);padding:7px 0;font-weight:700}.cal-week{position:relative;display:grid;grid-template-columns:repeat(7,1fr)}.cal-day{position:relative;border-top:1px solid var(--panel-edge);border-left:1px solid var(--panel-edge)}.cal-day:first-child{border-left:none}.cal-week:first-child .cal-day{border-top:none}.cal-day.out{background:#00000038}.cal-daynum{position:absolute;top:5px;left:8px;font-size:12px;color:var(--ink-dim);font-variant-numeric:tabular-nums}.cal-day.out .cal-daynum{color:var(--ink-faint);opacity:.55}.cal-month{position:absolute;top:4px;left:6px;font-size:10.5px;font-weight:800;letter-spacing:.03em;color:var(--gold-bright);background:#d8b66a24;padding:1px 7px;border-radius:10px}.cal-bar{position:absolute;display:flex;align-items:center;padding:0 7px;font-size:11.5px;font-weight:700;letter-spacing:.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-shadow:0 1px 2px #0000004d;border-top:1px solid rgba(255,255,255,.18)}@media (max-width: 720px){.cal-weekday-head>div{font-size:9px;letter-spacing:.02em}.cal-daynum{font-size:10.5px;top:3px;left:4px}.cal-bar{font-size:10px;padding:0 4px}}.mount-table-scroll{overflow-x:auto;border:1px solid var(--panel-edge);border-radius:10px}.mount-table{width:100%;min-width:940px;border-collapse:collapse;font-size:13px}.mount-table th{background:#12242b;color:var(--ink-dim);font-size:11px;text-transform:uppercase;letter-spacing:.03em;padding:9px 10px;text-align:left;border:1px solid #0a1a1f}.mount-table td{padding:8px 10px;border:1px solid var(--panel-edge);vertical-align:top}.mount-type-cell{font-weight:800;font-family:Georgia,serif;font-size:15px;text-align:center;vertical-align:middle;background:#00000026;white-space:nowrap}.mount-name-cell{font-weight:700;white-space:nowrap}.mount-stats{display:flex;flex-direction:column;gap:2px}.mount-stat{white-space:nowrap;font-size:12.5px}.mount-stat b{color:var(--gold-bright)}.mount-abilities{display:flex;flex-direction:column;gap:4px}.mount-ability{font-size:12.5px;line-height:1.3}.mount-ability-eff{color:var(--ink-dim)}.mount-loc{font-size:12.5px;color:var(--ink-dim)}.mount-detail-layout{display:grid;grid-template-columns:220px 1fr;gap:16px;align-items:start}.mount-list{display:flex;flex-direction:column;gap:10px;max-height:72vh;overflow-y:auto}.mount-list-group{display:flex;flex-direction:column;gap:3px}.mount-list-head{font-weight:800;font-family:Georgia,serif;font-size:13px;text-transform:uppercase;letter-spacing:.04em;padding:4px 2px;border-bottom:2px solid;margin-bottom:2px}.mount-list-item{text-align:left;padding:7px 10px;border-radius:8px;border:1px solid var(--panel-edge);background:#0d2026;color:var(--ink);cursor:pointer;font-weight:600;font-size:13px}.mount-list-item:hover{border-color:var(--gold-deep);background:#12272e}.mount-list-item.active{border-color:var(--gold);background:#d8b66a1f;color:var(--gold-bright)}.mount-detail{display:flex;flex-direction:column;gap:14px}.mount-detail-name{margin:0;font-family:Georgia,serif;color:var(--gold-bright);font-size:20px}.mount-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media (max-width: 720px){.mount-detail-layout{grid-template-columns:1fr}.mount-list{flex-direction:row;flex-wrap:wrap;max-height:none}.mount-list-group{flex:1 1 140px}.mount-detail-grid{grid-template-columns:1fr}}.recruit-grid-scroll{overflow-x:auto}.recruit-grid{display:grid;min-width:560px;border:1px solid var(--panel-edge);border-radius:12px;overflow:hidden;background:#00000026}.rg-corner{background:var(--panel)}.rg-head{padding:9px 6px;text-align:center;font-weight:800;font-family:Georgia,serif;font-size:14px;letter-spacing:.03em;background:var(--panel);border-bottom:2px solid var(--panel-edge);border-left:1px solid var(--panel-edge)}.rg-label{display:flex;align-items:center;justify-content:center;font-weight:800;font-size:13px;color:var(--gold-bright);background:var(--panel);border-top:1px solid var(--panel-edge)}.rg-cell{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-content:flex-start;gap:8px;padding:8px;border-top:1px solid var(--panel-edge);border-left:1px solid var(--panel-edge)}.rg-card{display:flex;flex-direction:column;padding:0;overflow:hidden;background:#0d2026;border:1px solid var(--panel-edge);border-radius:10px;color:var(--ink);cursor:pointer;transition:border-color .15s}.rg-card:hover{border-color:var(--gold)}.rg-portrait{position:relative;width:100%;aspect-ratio:1 / 1;background:#0a1a1f}.rg-portrait img{width:100%;height:100%;object-fit:cover;object-position:center top;display:block}.rg-initial{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-family:Georgia,serif;font-weight:700;font-size:28px;color:var(--gold-deep)}.rg-icons{position:absolute;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:center;gap:7px;padding:10px 5px 4px;background:linear-gradient(to top,#000000c7,#0000)}.rg-ic{display:inline-flex;align-items:center;gap:2px;font-size:12px;font-weight:800;line-height:1;text-shadow:0 1px 2px rgba(0,0,0,.9)}.rg-ic.support{color:#ff8aa6}.rg-ic.renown{color:var(--gold-bright)}.nego-easy{color:#6bd88f}.nego-moderate{color:#f0c860}.nego-difficult{color:#f07a5f}.rg-name{display:block;padding:5px 3px 6px;font-size:11.5px;line-height:1.2;text-align:center;white-space:nowrap;overflow:hidden}@media (max-width: 720px){.recruit-grid{min-width:680px}.rg-cell{grid-template-columns:repeat(2,minmax(0,1fr))}}.cond-syms{display:inline-flex;flex-wrap:wrap;align-items:center;gap:10px}.cond-sym{display:inline-flex;align-items:center;gap:3px;font-weight:700;font-size:12.5px;line-height:1;white-space:nowrap}.cond-sym.support{color:#e8688a}.cond-sym.renown{color:var(--gold-bright)}.cond-syms-lg .cond-sym{font-size:15px;gap:4px}.cond-syms-lg .ci{width:16px;height:16px}.recruit-detail-line{margin-top:10px;font-size:13.5px}.recruit-detail-line b{color:var(--ink-faint)}.recruit-order{display:flex;flex-wrap:wrap;gap:8px}.recruit-order-chip{display:flex;align-items:center;gap:8px;padding:5px 12px 5px 5px;border-radius:22px;border:1px solid var(--panel-edge);background:#0d2026;cursor:grab;font-size:13px;-webkit-user-select:none;user-select:none}.recruit-order-chip.dragging{opacity:.4}.recruit-order-chip:active{cursor:grabbing}.recruit-edit-head{width:100%;background:transparent;border:none;color:var(--ink);cursor:pointer;padding:0;align-items:center}.cond-icons{display:inline-flex;flex-wrap:wrap;gap:9px;align-items:center;font-size:11.5px}.cond-icons.lg{font-size:15px;gap:14px}.cond-icon{display:inline-flex;align-items:center;gap:3px;white-space:nowrap;font-weight:700}.cond-icon.support{color:#e8688a}.cond-icon.renown{color:var(--gold-bright)}.cond-icon.nego{color:var(--ink-dim)}.ci{width:13px;height:13px;fill:currentColor;flex:none}.cond-icons.lg .ci{width:17px;height:17px}.learnset-table{table-layout:auto}.learnset-table th,.learnset-table td{overflow-wrap:normal;vertical-align:top}.learnset-cell{display:flex;flex-direction:column;align-items:flex-start;gap:3px}.learnset-cell .tag{cursor:default;white-space:nowrap}.learnset-disclaimer{margin:0 0 14px;color:var(--ink-faint);font-size:12.5px}.learnset-disclaimer i{font-style:italic;color:var(--ink-dim)}.learnset-tabs button{display:inline-flex;align-items:center;justify-content:center;min-width:48px}.battalion-table{min-width:980px}.battalion-table .th-sort{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.battalion-table .th-sort:hover{color:var(--gold-bright)}.growth-chip.heat{border-color:#00000047}.growth-chip.heat .gc-k{color:#ece6d6c7}.growth-chip.heat .gc-v{color:#f4efe0}.char-learnsets{display:flex;flex-direction:column;gap:14px;margin-top:8px}.cl-prof-head{display:flex;align-items:center;gap:8px;margin-bottom:5px;color:var(--gold-bright)}.cl-ranks{display:flex;flex-direction:column;gap:4px}.cl-rank{display:flex;gap:10px;align-items:baseline}.cl-rank-k{width:30px;flex-shrink:0;font-weight:800;font-size:12px;color:var(--ink-faint);text-align:right}.cl-rank-v{display:inline-flex;flex-wrap:wrap;gap:3px}
