.character-page,.craft-page{gap:var(--unit-2);flex-direction:column;min-height:0;display:flex}.character-create-page{gap:var(--unit-3);flex-direction:column;display:flex}.character-hero,.tavern-hero,.market-hero,.leaderboard-hero,.party-hero,.settings-hero,.bestiary-hero,.item-catalog-hero,.quest-archive-hero,.guide-hero,.factions-hero,.quest-focus-hero,.craft-hero,.forge-hero,.dungeon-hero{background:radial-gradient(circle at 88% 0%, #ffb4a81a, transparent 46%), var(--surface-container-lowest);border:2px solid var(--outline-variant);padding:var(--unit-3) var(--unit-4);isolation:isolate;flex-shrink:0;position:relative;overflow:clip}.character-shell{gap:var(--unit-3);flex-direction:column;flex:1;min-height:0;display:flex}.character-page .game-header{margin-bottom:0}.character-tabs{gap:var(--unit-2);grid-template-columns:repeat(4,minmax(0,1fr));width:100%;display:grid}.character-tab-icon{flex-shrink:0}.character-panel{flex:1;min-height:0}.character-sheet-layout{gap:var(--unit-4);grid-template-columns:minmax(220px,260px) minmax(0,1fr);align-items:start;display:grid}.character-dossier-card{border:2px solid var(--outline-variant);background:linear-gradient(160deg, #ffdad40a, transparent 42%), var(--surface-container-low);padding:var(--unit-4);box-shadow:inset 0 0 24px #000000c7}.character-dossier-grid{gap:var(--unit-3);grid-template-columns:repeat(2,minmax(0,1fr));min-width:0;display:grid}.character-sheet-portrait{align-items:center;gap:var(--unit-3);text-align:center;flex-direction:column;display:flex}.character-sheet-portrait-frame{aspect-ratio:1;border:2px solid var(--outline-variant);background:var(--surface-container-lowest);width:100%;max-width:220px;overflow:hidden;box-shadow:inset 0 0 16px #000000bf,0 0 12px #8b000033}.character-sheet-portrait-img{object-fit:cover;width:100%;height:100%;display:block}.character-sheet-portrait-fallback{width:100%;height:100%;font-family:var(--font-display);color:var(--primary);place-items:center;font-size:4rem;display:grid}.character-sheet-name{font-family:var(--font-display);color:var(--primary);margin:0;font-size:1.45rem;line-height:1.1}.character-vital-pills{justify-content:center;gap:var(--unit-1);flex-wrap:wrap;display:flex}.character-vital-pill{border:1px solid var(--outline-variant);background:var(--surface-container);font-family:var(--font-mono);color:var(--on-surface-variant);align-items:center;padding:2px 8px;font-size:11px;display:inline-flex}.character-vital-pill-gold{color:var(--secondary);border-color:#e9c17673}.character-portrait-regen{width:100%;margin-top:var(--unit-2);letter-spacing:.04em;font-size:.72rem}.character-portrait-regen-note,.character-portrait-regen-error{margin:var(--unit-2) 0 0;text-align:center;font-size:.72rem;line-height:1.35}.currency-amount{flex-wrap:wrap;align-items:center;gap:6px 10px;display:inline-flex}.currency-amount--stack{gap:6px;width:100%;display:grid}.currency-amount--stack .currency-amount-segment{grid-template-columns:auto 1fr auto;align-items:center;gap:8px;display:grid}.currency-amount--stack .currency-amount-value{font-family:var(--font-mono);color:var(--secondary);text-align:right;font-variant-numeric:tabular-nums;font-size:.88rem;font-weight:700}.currency-amount--stack .currency-amount-unit{min-width:1.75rem;font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--outline);font-size:.68rem;font-weight:600}.currency-amount-segment{align-items:center;gap:4px;display:inline-flex}.currency-amount-icon{flex-shrink:0}.character-sheet-rep{font-family:var(--font-mono);margin:0;font-size:11px;line-height:1.4}.character-panel-title{margin:0 0 var(--unit-2);padding-bottom:var(--unit-2);border-bottom:2px solid var(--outline-variant);font-family:var(--font-display);color:var(--secondary);font-size:1.05rem}.character-sheet-panel{gap:var(--unit-2);flex-direction:column;min-width:0;display:flex}.character-attr-grid{gap:var(--unit-2);grid-template-columns:repeat(auto-fill,minmax(100px,1fr));display:grid}.character-attr-cell{padding:var(--unit-2);border:1px solid var(--outline-variant);background:var(--surface-container);flex-direction:column;gap:2px;display:flex}.character-attr-label{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--on-surface-variant);font-size:10px}.character-attr-value{font-family:var(--font-display);color:var(--on-surface);font-size:1.2rem}.character-attr-mod{font-family:var(--font-mono);font-size:12px}.character-spec-tags{gap:var(--unit-2);flex-wrap:wrap;display:flex}.character-spec-tag{padding:var(--unit-1) var(--unit-2);border:1px solid var(--secondary);color:var(--secondary);font-family:var(--font-mono);letter-spacing:.05em;text-transform:uppercase;background:#60440340;font-size:11px}.character-skill-list,.character-effect-list{gap:var(--unit-1);margin:0;padding:0;list-style:none;display:grid}.character-skill-list li,.character-effect-list li{justify-content:space-between;gap:var(--unit-3);padding:var(--unit-2);border:1px solid var(--outline-variant);background:var(--surface-container);font-family:var(--font-mono);font-size:12px;display:flex}.character-loading{padding:var(--unit-4) 0}@media (max-width:900px){.character-sheet-layout,.character-dossier-grid{grid-template-columns:1fr}}.character-panel{min-height:560px}.soul-forge{padding-bottom:var(--unit-6)}.soul-forge-panel{border:2px solid var(--outline-variant);background:linear-gradient(90deg, #1c1b1bf5, #0e0e0ee0), var(--surface-container-lowest);grid-template-columns:minmax(320px,.8fr) minmax(420px,1.2fr);min-height:660px;display:grid;overflow:hidden;box-shadow:inset 0 0 36px #000000e6,0 18px 50px #00000059}.soul-forge-form{border-right:1px solid var(--outline-variant);background:radial-gradient(circle at 0 0,#ffb4a812,#0000 36%),#20201fb8;padding:clamp(24px,4vw,42px)}.soul-forge-title h2,.soul-preview-head h2{font-family:var(--font-display);color:var(--primary);text-shadow:0 0 16px #ffb4a838;margin:0;font-size:clamp(2rem,4vw,3rem);line-height:.95}.soul-preview-head h2{color:var(--secondary)}.soul-forge-title p,.soul-preview-head span{margin:var(--unit-2) 0 var(--unit-6);color:var(--on-surface-variant);font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;font-size:.72rem;font-weight:700}.soul-field{margin-bottom:var(--unit-5)}.soul-field input,.soul-field textarea{background:#0e0e0eb8;border-color:#aa89846b}.soul-portrait-section{margin:var(--unit-5) 0}.soul-portrait-hint{margin:var(--unit-2) 0 var(--unit-3);font-size:.85rem;line-height:1.4}.soul-custom-appearance-toggle{margin:0 0 var(--unit-4);color:var(--secondary);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;font-size:.72rem;font-weight:700;text-decoration:underline;display:block}.soul-preview-portrait-img{object-fit:cover;border-radius:inherit;width:100%;height:100%}.hero-portrait-picker{gap:var(--unit-3);display:grid}.hero-portrait-picker-tabs{gap:var(--unit-2);flex-wrap:wrap;display:flex}.hero-portrait-picker-tab{color:var(--on-surface-variant);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;background:#0e0e0e8c;border:1px solid #aa89846b;padding:.35rem .7rem;font-size:.68rem;font-weight:700}.hero-portrait-picker-tab.is-active{border-color:var(--primary);color:var(--primary);background:#ffb4a814}.hero-portrait-picker-grid{gap:var(--unit-2);grid-template-columns:repeat(auto-fill,minmax(88px,1fr));display:grid}.hero-portrait-picker-card{color:var(--on-surface);cursor:pointer;text-align:center;background:#0e0e0e8c;border:2px solid #aa898459;gap:.35rem;padding:.35rem;transition:border-color .16s,box-shadow .16s;display:grid}.hero-portrait-picker-card:hover,.hero-portrait-picker-card.is-active{border-color:var(--primary);box-shadow:0 0 14px #ffb4a829}.hero-portrait-picker-frame{aspect-ratio:1;background:#00000073;display:block;overflow:hidden}.hero-portrait-picker-img{object-fit:cover;width:100%;height:100%;display:block}.hero-portrait-picker-fallback{width:100%;height:100%;color:var(--on-surface-variant);font-family:var(--font-display);place-items:center;font-size:1.4rem;display:grid}.hero-portrait-picker-label{font-family:var(--font-mono);letter-spacing:.04em;color:var(--on-surface-variant);font-size:.58rem;font-weight:700;line-height:1.25}.hero-portrait-picker-status{margin:var(--unit-2) 0}.character-appearance-actions{gap:var(--unit-2);margin-top:var(--unit-3);display:grid}.character-appearance-picker{margin-top:var(--unit-3);padding:var(--unit-3);background:#00000047;border:1px solid #aa898459}.character-appearance-picker-lead{margin:0 0 var(--unit-3);font-size:.85rem}.soul-presentation-group{gap:var(--unit-2);margin-top:var(--unit-4);display:grid}.soul-presentation-options{gap:var(--unit-2);flex-wrap:wrap;display:flex}.soul-presentation-chip{min-width:6.5rem;padding:var(--unit-2) var(--unit-3);border:1px solid var(--outline-variant);background:var(--surface-container);color:var(--on-surface);font-family:var(--font-display);cursor:pointer;font-size:.9rem;transition:border-color .15s,background .15s}.soul-presentation-chip:hover{border-color:var(--secondary)}.soul-presentation-chip.is-active{border-color:var(--primary);background:radial-gradient(circle at 0% 0%, #ffb4a81f, transparent 52%), var(--primary-container);color:var(--primary)}.soul-origin-group{gap:var(--unit-3);margin-top:var(--unit-6);display:grid}.soul-origin-label{color:var(--secondary);font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;font-size:.7rem;font-weight:800}.soul-origin-card{gap:var(--unit-4);min-height:74px;padding:var(--unit-3) var(--unit-4);background:linear-gradient(90deg, #ffdad409, transparent), var(--surface-container);color:var(--on-surface);text-align:left;cursor:pointer;border:2px solid #aa89846b;grid-template-columns:auto 1fr auto;align-items:center;transition:border-color .16s,box-shadow .16s,transform .16s,background .16s;display:grid}.soul-origin-card:hover,.soul-origin-card-active{border-color:var(--primary);background:radial-gradient(circle at 0% 50%, #ffb4a81f, transparent 45%), var(--surface-container-high);transform:translateY(-1px);box-shadow:inset 0 0 22px #8b00003d,0 0 18px #ffb4a81f}.soul-origin-icon-img,.soul-preview-mini-icons span,.hero-mastery-icons span{border:2px solid var(--outline-variant);background:#0e0e0eb8;place-items:center;width:42px;height:42px;padding:6px;display:grid}.soul-origin-card-active .soul-origin-icon-img{border-color:var(--primary);box-shadow:0 0 12px #ffb4a826}.soul-origin-copy{gap:2px;display:grid}.soul-origin-copy strong{font-family:var(--font-display);color:var(--on-surface);font-size:1.2rem}.soul-origin-copy small,.soul-masteries span,.ability-slot small,.ability-library-card small{font-family:var(--font-mono);color:var(--on-surface-variant);letter-spacing:.08em;font-size:.68rem}.soul-origin-radio{border:2px solid var(--outline);width:20px;height:20px;box-shadow:inset 0 0 0 4px var(--surface-container);border-radius:50%}.soul-origin-card-active .soul-origin-radio{background:var(--primary)}.soul-preview{justify-content:flex-end;gap:var(--unit-4);flex-direction:column;padding:clamp(24px,4vw,42px);display:flex;position:relative;overflow:hidden}.soul-preview-backdrop{background:linear-gradient(90deg,#0e0e0e59,#0e0e0e1a),radial-gradient(circle at 50% 28%,#e3beb81f,#0000 18rem),radial-gradient(circle at 18% 100%,#8b000059,#0000 18rem),linear-gradient(#0e0e0e1a,#0e0e0ee6);position:absolute;inset:0}.soul-preview>:not(.soul-preview-backdrop){position:relative}.soul-preview-head{text-align:right;position:absolute;top:clamp(24px,4vw,42px);right:clamp(24px,4vw,42px)}.soul-preview-portrait{aspect-ratio:3/4;background:radial-gradient(circle at 50% 18%,#ffdad41f,#0000 38%),linear-gradient(#353535b8,#0e0e0ef2);border:2px solid #aa8984a8;align-self:center;place-items:center;width:min(48vw,270px);margin-top:150px;margin-bottom:auto;display:grid;box-shadow:inset 0 0 28px #000000e6,0 20px 60px #00000073}.soul-preview-portrait-icon{opacity:.88;filter:drop-shadow(0 0 18px #ffb4a833)}.soul-preview p{max-width:54ch;color:var(--on-surface-variant);margin:0}.soul-masteries{gap:var(--unit-2);flex-wrap:wrap;display:flex}.soul-masteries span{border:1px solid var(--outline-variant);color:var(--secondary);background:#0e0e0e94;padding:5px 9px}.soul-preview-actions{gap:var(--unit-4);justify-content:space-between;align-items:center;display:flex}.soul-preview-mini-icons{gap:var(--unit-2);display:flex}.soul-submit{min-width:min(100%,340px);padding:var(--unit-4) var(--unit-8);border:2px solid var(--outline-variant);background:linear-gradient(90deg, #ffb4a814, transparent), var(--surface-container-high);color:var(--primary);font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;font-size:1.35rem;font-weight:800}.soul-submit:hover:not(:disabled){border-color:var(--primary);box-shadow:0 0 22px #ffb4a833}.soul-submit:disabled{opacity:.45;cursor:not-allowed}.soul-forge-error{margin:var(--unit-3) 0 0;font-family:var(--font-mono)}.talent-shell{gap:var(--unit-3);grid-template-columns:minmax(0,1fr) minmax(248px,288px);min-height:640px;display:grid}.talent-canvas-card{border:2px solid var(--outline-variant);background:linear-gradient(160deg, #ffdad406, transparent 36%), var(--surface-container-lowest);flex-direction:column;min-width:0;display:flex;box-shadow:inset 0 0 32px #000000db}.talent-canvas-head{gap:var(--unit-4);padding:var(--unit-4);justify-content:space-between;align-items:flex-start;display:flex}.talent-canvas-head-meta{flex:0 auto;min-width:0}.talent-legend-label-short{display:none}.talent-points-sep{margin:0 .35em}.talent-canvas-head h2,.ability-loadout-head h2{margin:var(--unit-1) 0 0;color:var(--secondary);font-family:var(--font-display);font-size:1.8rem}.talent-legend{gap:var(--unit-3);flex-wrap:wrap;justify-content:flex-end;display:flex}.talent-legend-item,.talent-legend-toggle{color:var(--on-surface-variant);font-family:var(--font-mono);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0;font-size:.7rem;display:inline-flex}.talent-legend-item:before{content:"";border:1px solid;width:9px;height:9px;display:inline-block}.talent-legend-toggle:before{display:none}.talent-legend-toggle{opacity:.42;transition:opacity .15s}.talent-legend-toggle-on{opacity:1}.talent-legend-count{font-family:var(--font-mono);color:var(--secondary);opacity:.85;font-size:.62rem}.talent-branch-blade{color:#ff907f}.talent-branch-liturgie{color:var(--secondary)}.talent-branch-hunter{color:var(--tertiary)}.talent-branch-sorcery{color:#9eb8ff}.talent-branch-occult{color:#c97bd4}.talent-branch-ruse{color:#d4a574}.talent-canvas{min-height:480px;margin:0 var(--unit-2) var(--unit-2);cursor:grab;touch-action:none;background-image:radial-gradient(circle at 50% 50%, #e9c1760d, transparent 32%), radial-gradient(circle at 50% 50%, #8b00001a, transparent 55%), var(--noise);background-size:auto,auto,auto;border:1px solid #aa898447;flex:1;position:relative;overflow:hidden}.talent-canvas:active{cursor:grabbing}.talent-canvas-inner{transform-origin:0 0;will-change:transform;backface-visibility:hidden;contain:layout style paint;background-color:#080706;position:absolute;top:0;left:0}.talent-canvas-inner:after{content:"";z-index:0;pointer-events:none;opacity:.38;background:#080706;position:absolute;inset:0}.talent-canvas-bg{z-index:0;pointer-events:none;filter:brightness(.72)contrast(1.12)saturate(.82);width:100%;height:100%;margin:0;display:block;position:absolute;inset:0}.talent-canvas-bg-img{object-fit:cover;opacity:.55;backface-visibility:hidden;-webkit-user-drag:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block;transform:translateZ(0)}.talent-edges{z-index:1;width:100%;height:100%;position:absolute;inset:0}.talent-edge-layer-highlight{pointer-events:none}.talent-edge-layer{fill:none}.talent-edge-track{stroke:#100c0a;stroke-width:.58px;stroke-linecap:round;opacity:.92;transition:stroke .2s,opacity .2s,stroke-width .2s}.talent-edge-track-dim{opacity:.55}.talent-edge-track-active{stroke:#1e1612;stroke-width:.66px;opacity:1}.talent-edge-track-linked{stroke:#2a2018;stroke-width:.7px;opacity:1}.talent-edge-filament{stroke-width:.22px;stroke-linecap:round;opacity:1;transition:stroke .2s,opacity .2s,stroke-width .2s}.talent-edge-filament-blade{stroke:#c08074}.talent-edge-filament-liturgie,.talent-edge-filament-core{stroke:#c8a860}.talent-edge-filament-hunter{stroke:#98b070}.talent-edge-filament-sorcery{stroke:#88a0cc}.talent-edge-filament-occult{stroke:#b088c0}.talent-edge-filament-ruse{stroke:#c0a068}.talent-edge-filament-dim{opacity:.58}.talent-edge-filament-active{stroke-width:.3px;opacity:1}.talent-edge-filament-active.talent-edge-filament-blade{stroke:#f0a898}.talent-edge-filament-active.talent-edge-filament-liturgie,.talent-edge-filament-active.talent-edge-filament-core{stroke:#f0d080}.talent-edge-filament-active.talent-edge-filament-hunter{stroke:#b8d090}.talent-edge-filament-active.talent-edge-filament-sorcery{stroke:#a8c0f0}.talent-edge-filament-active.talent-edge-filament-occult{stroke:#d0a8e0}.talent-edge-filament-active.talent-edge-filament-ruse{stroke:#e0c088}.talent-edge-filament-linked{stroke:#f0d8a8;stroke-width:.32px;opacity:1}.talent-node{z-index:2;width:max-content;max-width:120px;color:var(--on-surface-variant);cursor:pointer;content-visibility:auto;contain-intrinsic-size:88px 88px;contain:layout style;background:0 0;border:0;flex-direction:column;align-items:center;padding:0;transition:transform .15s;display:flex;position:absolute;overflow:visible;transform:translate(-50%,-50%)}.talent-node:hover,.talent-node-selected{z-index:4;transform:translate(-50%,-50%)scale(1.08)}.talent-node-icon{box-shadow:none;background:0 0;border:0;place-items:center;transition:transform .15s;display:grid}.talent-node-chip{isolation:isolate;z-index:1;place-items:center;display:grid;position:relative;overflow:visible}.talent-node-frame{z-index:1;background:#1a1614;border:2px solid #7a5848;flex-shrink:0;place-items:center;transition:border-color .15s,box-shadow .15s,transform .15s;display:grid;position:relative;overflow:hidden;box-shadow:0 3px 8px #000c}.talent-node-frame-xl{--talent-frame-size:88px;width:var(--talent-frame-size);height:var(--talent-frame-size);border-width:3px;border-radius:12px}.talent-node-frame-lg{--talent-frame-size:76px;width:var(--talent-frame-size);height:var(--talent-frame-size);border-radius:10px}.talent-node-frame-md{--talent-frame-size:64px;width:var(--talent-frame-size);height:var(--talent-frame-size);border-radius:10px}.talent-node-frame-sm{--talent-frame-size:52px;width:var(--talent-frame-size);height:var(--talent-frame-size);border-radius:50%}.talent-node-frame-core,.talent-node-frame-major_passive{--talent-diamond-side:calc(var(--talent-frame-size) / 1.41421);width:var(--talent-diamond-side);height:var(--talent-diamond-side);border-radius:6px;overflow:visible;transform:rotate(45deg)}.talent-node-frame-core .talent-node-icon-img,.talent-node-frame-core .talent-node-icon-letter,.talent-node-frame-major_passive .talent-node-icon-img,.talent-node-frame-major_passive .talent-node-icon-letter{transform:rotate(-45deg)}.talent-node-frame-mastery{border-radius:12px}.talent-node-frame-major_active{border-radius:8px}.talent-node-frame-branch-core,.talent-node-frame-branch-liturgie{border-color:#c8a860}.talent-node-frame-branch-blade{border-color:#d08878}.talent-node-frame-branch-hunter{border-color:#98b070}.talent-node-frame-branch-sorcery{border-color:#88a0cc}.talent-node-frame-branch-occult{border-color:#b088c0}.talent-node-frame-branch-ruse{border-color:#c0a068}.talent-node:hover .talent-node-frame,.talent-node-selected .talent-node-frame,.talent-node-focus .talent-node-frame{border-color:#f0d8a8;box-shadow:0 0 0 1px #080706,0 0 0 3px #f0d8a8,0 4px 12px #000000d9}.talent-node-linked .talent-node-frame{border-color:#f0d8a8;box-shadow:0 0 0 1px #080706,0 0 0 2px #f0d8a8,0 3px 10px #000c}.talent-node-available .talent-node-frame{border-color:#d8b878}.talent-node-allocated .talent-node-frame{background:#221a18;border-color:#c8a060}.talent-node-granted .talent-node-frame{border-color:color-mix(in srgb, var(--accent-gold) 75%, #c8a060);box-shadow:0 0 0 1px var(--surface-container-lowest), 0 0 0 1px color-mix(in srgb, var(--accent-gold) 40%, transparent), inset 0 0 10px color-mix(in srgb, var(--accent-gold) 12%, transparent);background:#1c1814}.talent-node-allocated.talent-node-branch-blade .talent-node-frame{background:#241816;border-color:#e09888}.talent-node-allocated.talent-node-branch-liturgie .talent-node-frame,.talent-node-allocated.talent-node-branch-core .talent-node-frame{background:#242018;border-color:#e0c070}.talent-node-allocated.talent-node-branch-hunter .talent-node-frame{background:#1a2014;border-color:#a8c878}.talent-node-allocated.talent-node-branch-sorcery .talent-node-frame{background:#161a24;border-color:#98b0e0}.talent-node-allocated.talent-node-branch-occult .talent-node-frame{background:#201420;border-color:#c098d0}.talent-node-allocated.talent-node-branch-ruse .talent-node-frame{background:#201a12;border-color:#d0b070}.talent-node-locked .talent-node-frame{opacity:.88}.talent-node-locked .talent-node-icon-img,.talent-node-locked .talent-node-icon-letter{filter:grayscale(.5)brightness(.78)contrast(.95)}.talent-node-icon-sm,.talent-node-icon-md,.talent-node-icon-lg,.talent-node-icon-xl{width:100%;height:100%}.talent-node-icon-img{object-fit:contain;pointer-events:none;filter:contrast(1.18)brightness(1.1)drop-shadow(0 1px 3px #000000e6);width:88%;height:88%}.talent-node-icon-letter{font-family:var(--font-mono);color:var(--primary);font-size:1rem;font-weight:900}.talent-node-label{color:#ebe3d6;width:max-content;max-width:120px;font-family:var(--font-mono);text-align:center;letter-spacing:.02em;pointer-events:none;text-shadow:none;z-index:1;background:#0a0808;border:1px solid #6a5848;border-radius:2px;flex-direction:column;align-items:center;gap:1px;padding:3px 8px;font-size:.66rem;font-weight:700;line-height:1.2;transition:opacity .15s;display:flex;position:absolute;top:calc(100% + 5px);left:50%;transform:translate(-50%);box-shadow:0 2px 6px #000000b3}.talent-node-label-kind{color:#8a7d6e;letter-spacing:.08em;text-transform:uppercase;font-size:.52rem;font-weight:700;line-height:1.1}.talent-node-label-name{color:inherit;font-size:.66rem;font-weight:700;line-height:1.15}.talent-node-available .talent-node-label{color:#f0d8a8;background:#100c08;border-color:#a88858}.talent-node-available .talent-node-label-kind{color:#a88858}.talent-node-locked .talent-node-label{opacity:.75;color:#8a7d6e}.talent-canvas-inner--compact .talent-node-label{opacity:0;transition:opacity .15s}.talent-canvas-inner--compact .talent-node:hover .talent-node-label,.talent-canvas-inner--compact .talent-node-selected .talent-node-label{opacity:1}.talent-zoom-controls{left:var(--unit-4);bottom:var(--unit-4);z-index:4;gap:var(--unit-2);display:flex;position:absolute}.talent-zoom-controls button{border:1px solid var(--outline-variant);width:34px;height:34px;color:var(--on-surface-variant);font-family:var(--font-mono);cursor:pointer;background:#0e0e0eb8;place-items:center;font-size:1rem;transition:color .15s,border-color .15s;display:grid}.talent-zoom-controls button:hover{color:var(--secondary);border-color:var(--secondary)}.talent-detail{flex-direction:column;gap:0;min-width:0;padding:0;display:flex;overflow:hidden}.talent-detail-hero{gap:var(--unit-3);padding:var(--unit-4);background:linear-gradient(180deg, #ffdad40d, transparent 58%), var(--surface-container-high);border-bottom:1px solid var(--outline-variant);grid-template-columns:auto minmax(0,1fr);align-items:start;display:grid;overflow:visible}.talent-detail-head-copy{min-width:0}.talent-detail-icon-chip,.talent-detail-icon-wrap{flex-shrink:0}.talent-detail h2{color:var(--on-surface);font-family:var(--font-display);text-wrap:balance;overflow-wrap:anywhere;margin:0;font-size:clamp(1.05rem,2.2vw,1.45rem);line-height:1.15}.talent-detail-tags{margin-top:var(--unit-2);flex-wrap:wrap;gap:6px;display:flex}.talent-detail-tags span{border:1px solid var(--outline-variant);color:var(--on-surface-variant);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;background:#00000047;border-radius:2px;align-items:center;padding:3px 8px;font-size:9px;font-weight:700;display:inline-flex}.talent-detail-specs{margin:var(--unit-3);padding:var(--unit-2) var(--unit-3);border:1px solid var(--outline-variant);background:linear-gradient(#0000001f,#0000 42%),#0e0e0e73;border-radius:4px;gap:0;display:grid}.talent-detail-specs div,.hero-tactic-list li{justify-content:space-between;align-items:center;gap:var(--unit-3);padding:var(--unit-2) 0;border-bottom:1px solid color-mix(in srgb, var(--outline-variant) 65%, transparent);display:flex}.talent-detail-specs div:last-child,.hero-tactic-list li:last-child{border-bottom:0}.talent-detail-specs dt,.talent-rank-track span,.hero-tactic-list .hero-tactic-label,.hero-resistance-row>.labeled-hint{color:var(--on-surface-variant);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:700}.talent-detail-specs dd{color:var(--secondary);font-family:var(--font-mono);text-align:right;margin:0;font-size:.82rem}.talent-detail-cost-value{font-family:var(--font-display);color:var(--secondary);font-size:1.05rem}.talent-grimoire{gap:var(--unit-2);min-height:0;margin:0 var(--unit-3);padding:var(--unit-3);border:1px solid var(--outline-variant);background:radial-gradient(circle at 0 0,#e9c1760f,#0000 48%),#00000038;border-radius:4px;flex-direction:column;flex:1;display:flex;overflow-y:auto}.talent-grimoire-title{color:var(--secondary);margin:0}.talent-grimoire-summary{color:var(--on-surface-variant);margin:0;font-size:.88rem;font-style:italic;line-height:1.55}.talent-grimoire-effects{margin:var(--unit-1) 0 0;flex-direction:column;gap:6px;padding:0;list-style:none;display:flex}.talent-grimoire-effects li{border:1px solid var(--outline-variant);border-left:3px solid var(--tertiary);color:var(--on-surface);font-family:var(--font-mono);background:#0000003d;border-radius:2px;margin:0;padding:7px 10px;font-size:.78rem;line-height:1.35}.talent-grimoire h3:not(.talent-grimoire-title),.hero-status-card h3,.hero-mastery-panel h3,.ability-library h3{margin:0 0 var(--unit-3);color:var(--secondary);font-family:var(--font-display);font-size:1.15rem;line-height:1.1}.talent-grimoire p:not(.talent-grimoire-summary){color:var(--on-surface-variant)}.talent-detail-error{margin:0 var(--unit-3);padding:var(--unit-2) var(--unit-3);border:1px solid color-mix(in srgb, var(--error) 45%, var(--outline-variant));background:#7820282e;border-radius:4px;font-size:.82rem;line-height:1.4}.talent-detail-footer{padding-top:var(--unit-3);border-top:1px solid var(--outline-variant);background:linear-gradient(#0000,#00000024);flex-shrink:0;margin-top:auto}.talent-detail-actions{gap:var(--unit-2);padding:0 var(--unit-3) var(--unit-2);grid-template-columns:1fr 1fr;display:grid}.talent-respec-block{padding:0 var(--unit-3) var(--unit-3);gap:var(--unit-2);display:grid}.talent-rank-track{gap:var(--unit-2);margin:auto var(--unit-5) 0;grid-template-columns:auto 1fr auto;align-items:center;display:grid}.talent-rank-track div{background:#0006;border:1px solid #aa898440;height:6px}.talent-rank-track i{background:linear-gradient(90deg, var(--primary-container), var(--primary));height:100%;display:block}.talent-rank-track strong{color:var(--secondary);font-family:var(--font-mono);font-size:.7rem}.talent-respec-btn{width:100%}.talent-respec-hint,.talent-points-banner{font-size:.82rem}.talent-points-banner strong{color:var(--secondary)}.talent-points-banner--active strong:first-of-type{animation:1.8s ease-in-out infinite talent-points-pulse}@keyframes talent-points-pulse{0%,to{text-shadow:0 0 #e9c17600}50%{text-shadow:0 0 10px #e9c176d9}}.hero-status-layout{gap:var(--unit-4);grid-template-columns:minmax(260px,320px) minmax(0,1fr);align-items:start;display:grid}.hero-status-identity{gap:var(--unit-3);top:var(--unit-3);scrollbar-width:thin;max-height:calc(100vh - 96px);display:grid;position:sticky;overflow-y:auto}.hero-identity-head{gap:var(--unit-3);grid-template-columns:1fr;align-items:start;min-width:0;display:grid}.hero-identity-copy{gap:6px;min-width:0;display:grid}.hero-status-identity .character-sheet-portrait-frame{aspect-ratio:1;background:radial-gradient(circle at 50% 70%, #8b00002e, transparent 58%), var(--surface-container-lowest);width:100%;max-width:none}.hero-status-identity .character-sheet-portrait-img{object-fit:contain;object-position:center center}.hero-status-identity .character-sheet-portrait-fallback{font-size:clamp(2rem,8vw,3.2rem)}.hero-status-identity .character-sheet-name{text-align:left;overflow-wrap:anywhere;font-size:clamp(1.25rem,2vw,1.7rem);line-height:1.15}.character-sheet-epitaph{flex-direction:column;align-items:flex-start;gap:6px;min-width:0;margin:0;display:flex}.character-sheet-origin-badge{border:1px solid color-mix(in srgb, var(--secondary) 42%, var(--outline-variant));background:linear-gradient(160deg, color-mix(in srgb, var(--secondary) 14%, transparent), transparent 60%), #0006;align-items:center;gap:6px;max-width:100%;padding:3px 8px 3px 5px;display:inline-flex;box-shadow:inset 0 0 10px #0006}.character-sheet-origin-icon{opacity:.95;flex-shrink:0}.character-sheet-origin-label{color:var(--secondary);font-family:var(--font-mono);letter-spacing:.1em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-size:.68rem;font-weight:700;line-height:1.2;overflow:hidden}.character-sheet-origin-traits{flex-wrap:wrap;gap:4px;min-width:0;display:flex}.character-sheet-origin-trait{color:var(--on-surface-variant);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;background:#00000059;border:1px solid #aa898466;align-items:center;padding:2px 7px;font-size:.58rem;line-height:1.25;display:inline-flex}.hero-status-identity .character-sheet-epitaph{margin:0}.hero-status-identity .character-portrait-regen{margin-top:0}.hero-status-identity .character-portrait-regen-note,.hero-status-identity .character-portrait-regen-error{text-align:left}.hero-status-ledger{border:1px solid var(--outline-variant);background:#0e0e0e73;gap:6px;margin-top:2px;padding:8px 10px;display:grid}.hero-status-ledger-kicker{color:var(--outline);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;font-size:.62rem;font-weight:600}.hero-mastery-panel{padding-top:var(--unit-3);border-top:1px solid var(--outline-variant);margin-top:0}.hero-mastery-panel-compact h3{margin-bottom:var(--unit-2)}.hero-mastery-panel-compact .hero-mastery-icons span{width:34px;height:34px;padding:4px;font-size:.72rem}.hero-status-meta-grid{gap:var(--unit-2);grid-template-columns:1fr;display:grid}.hero-status-meta-grid .hero-power-panel,.hero-status-meta-grid .hero-renown-panel{min-width:0;padding:var(--unit-3)}.hero-status-meta-grid .hero-power-total strong{font-size:1.35rem}.hero-status-meta-grid .hero-renown-total strong{font-size:1.1rem}.hero-status-meta-grid .hero-renown-link{margin-top:var(--unit-2);font-size:.72rem}.hero-power-panel{gap:var(--unit-3);padding:var(--unit-4);border:2px solid var(--outline-variant);background:radial-gradient(circle at 100% 0,#e9c17614,#0000 55%),#0e0e0e7a;display:grid}.hero-power-panel h3{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--outline);margin:0;font-size:.68rem;font-weight:700}.hero-power-total{justify-content:space-between;align-items:baseline;gap:var(--unit-3);padding:var(--unit-2) var(--unit-3);background:#6044032e;border:1px solid #e9c17647;display:flex}.hero-power-total span{color:var(--outline);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;font-size:.72rem}.hero-power-total strong{color:var(--secondary);font-family:var(--font-display);font-size:clamp(1.6rem,3vw,2rem);font-weight:800;line-height:1}.hero-power-breakdown{gap:var(--unit-2);display:grid}.hero-power-row{justify-content:space-between;align-items:center;gap:var(--unit-3);padding:var(--unit-2) var(--unit-3);border:1px solid var(--outline-variant);background:#00000047;display:flex}.hero-power-row span{color:var(--on-surface-variant);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;font-size:.72rem}.hero-power-row strong{color:var(--secondary);font-family:var(--font-mono);font-size:.92rem;font-weight:700}.hero-power-row strong small{color:var(--outline);font-size:.72rem;font-weight:600}.hero-power-row-equipment strong{color:#d4a574}.hero-power-row-destinies strong{color:#b8a0e8}.hero-power-progress{gap:var(--unit-2);display:grid}.hero-power-progress-head{justify-content:space-between;align-items:center;gap:var(--unit-2);color:var(--outline);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;font-size:.62rem;display:flex}.hero-power-progress-bar{background:#0000006b;border:1px solid #aa89843d;height:6px;overflow:hidden}.hero-power-progress-bar i{height:100%;display:block}.hero-power-progress-bar-destinies i{background:linear-gradient(90deg,#7a5bb8,#b8a0e88c)}.hero-power-progress-bar-tree i{background:linear-gradient(90deg, var(--secondary), #e9c17673)}.hero-status-score-duo{gap:var(--unit-3);display:grid}.hero-renown-panel{padding:var(--unit-4);border:2px solid var(--outline-variant);background:linear-gradient(155deg, #b8a0e814, transparent 45%), var(--surface-container-low);box-shadow:inset 0 0 20px #000000b8}.hero-renown-panel h3{margin:0 0 var(--unit-3);letter-spacing:.06em;text-transform:uppercase;color:var(--secondary);font-size:.95rem}.hero-renown-total{align-items:center;gap:var(--unit-3);display:flex}.hero-renown-total span{color:var(--on-surface-variant);font-size:.75rem;display:block}.hero-renown-total strong{color:#d4c4f0;font-size:1.35rem}.hero-renown-tier{margin:var(--unit-2) 0;color:var(--secondary);font-size:.85rem}.hero-renown-progress-bar{background:#00000073;border-radius:3px;height:6px;overflow:hidden}.hero-renown-progress-bar i{background:linear-gradient(90deg,#7a5bb8,#b8a0e88c);height:100%;display:block}.hero-renown-link{margin-top:var(--unit-3);color:var(--secondary);font-size:.82rem;display:inline-block}.hero-titles-panel{padding:var(--unit-3);border:2px solid var(--outline-variant);background:var(--surface-container-low);box-shadow:inset 0 0 20px #000000b8}.hero-titles-head{gap:var(--unit-1);margin-bottom:var(--unit-3);display:grid}.hero-titles-panel h3{letter-spacing:.06em;text-transform:uppercase;color:var(--secondary);justify-content:space-between;align-items:baseline;margin:0;font-size:.95rem;display:flex}.hero-titles-hint{color:var(--on-surface-variant);margin:0;font-size:.74rem;line-height:1.35}.hero-titles-loading,.hero-titles-error{margin:0;font-size:.82rem}.hero-titles-count{text-transform:none;letter-spacing:normal;color:var(--on-surface-variant);font-size:.75rem}.hero-titles-slots{gap:var(--unit-2);margin-bottom:var(--unit-3);display:grid}.hero-titles-slot{align-items:center;gap:var(--unit-2);min-height:2.25rem;padding:var(--unit-2) var(--unit-3);border:1px dashed color-mix(in srgb, var(--outline-variant) 82%, transparent);background:#0e0e0e59;grid-template-columns:auto 1fr auto;display:grid}.hero-titles-slot-filled{border-style:solid;border-color:color-mix(in srgb, var(--secondary) 55%, var(--outline-variant));background:linear-gradient(90deg,#e9c17614,#0000 72%),#0e0e0e73}.hero-titles-slot-index{border:1px solid var(--outline-variant);width:1.35rem;height:1.35rem;color:var(--outline);font-family:var(--font-mono);justify-content:center;align-items:center;font-size:.68rem;font-weight:700;display:inline-flex}.hero-titles-slot-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--on-surface);font-family:var(--font-display);font-size:.86rem;overflow:hidden}.hero-titles-slot-empty{color:var(--outline);font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;font-size:.72rem}.hero-titles-slot-clear{border:1px solid var(--outline-variant);background:var(--surface-container);width:1.5rem;height:1.5rem;color:var(--on-surface-variant);cursor:pointer;padding:0;font-size:1rem;line-height:1;transition:color .15s,border-color .15s}.hero-titles-slot-clear:hover:not(:disabled){color:var(--primary);border-color:var(--primary)}.hero-titles-slot-clear:disabled{opacity:.5;cursor:wait}.hero-titles-list{gap:var(--unit-2);overscroll-behavior:contain;max-height:min(22rem,42vh);margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.hero-titles-list>li{min-width:0}.hero-titles-item{align-items:start;gap:var(--unit-2);width:100%;padding:var(--unit-2) var(--unit-3);border:1px solid var(--outline-variant);text-align:left;background:#0e0e0e6b;border-radius:0;grid-template-columns:auto 1fr;display:grid}.hero-titles-item-selectable{cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s}.hero-titles-item-selectable:hover:not(:disabled){border-color:var(--secondary);background:#e9c1760f}.hero-titles-item-selectable:disabled{opacity:.7;cursor:wait}.hero-titles-item-unlocked{color:var(--on-surface);opacity:1}.hero-titles-item-selected{border-color:var(--secondary);box-shadow:inset 2px 0 0 var(--secondary);background:linear-gradient(90deg,#e9c1761f,#0000 72%),#0e0e0e80}.hero-titles-item-locked{opacity:.72;grid-template-columns:1fr}.hero-titles-select-mark{width:1.25rem;color:var(--secondary);justify-content:center;align-items:center;margin-top:2px;font-size:.9rem;line-height:1;display:inline-flex}.hero-titles-copy{gap:2px;min-width:0;display:grid}.hero-titles-label{color:inherit;font-family:var(--font-display);font-size:.86rem;line-height:1.2}.hero-titles-desc{color:var(--on-surface-variant);font-size:.72rem;line-height:1.3}.hero-titles-progress-wrap{align-items:center;gap:var(--unit-2);margin-top:var(--unit-1);grid-template-columns:1fr auto;display:grid}.hero-titles-progress-bar{background:#ffffff14;height:4px;overflow:hidden}.hero-titles-progress-bar>span{background:linear-gradient(90deg, var(--outline-variant), var(--secondary));height:100%;display:block}.hero-titles-progress{font-family:var(--font-mono);color:var(--on-surface-variant);white-space:nowrap;font-size:.68rem}.character-sheet-featured-titles{gap:var(--unit-1);margin:var(--unit-1) 0 0;flex-wrap:wrap;display:flex}.character-sheet-featured-title{border:1px solid color-mix(in srgb, var(--secondary) 45%, var(--outline-variant));color:var(--secondary);font-family:var(--font-mono);letter-spacing:.04em;background:#e9c17614;align-items:center;padding:2px 8px;font-size:.68rem;font-weight:700;line-height:1.3;display:inline-flex}.factions-page{gap:var(--unit-4);min-height:0;padding:var(--unit-4);background:radial-gradient(circle at 84% 0%, #e9c1760f, transparent 48%), radial-gradient(circle at 8% 100%, #7a5bb80d, transparent 42%), var(--surface-container-lowest);flex-direction:column;display:flex}.factions-page .game-header{margin-bottom:0}.factions-hero{justify-content:space-between;align-items:flex-end;gap:var(--unit-4);padding:var(--unit-4);border:2px solid var(--outline-variant);background:radial-gradient(circle at 86% 0%, #b8a0e81f, transparent 50%), radial-gradient(circle at 10% 100%, #e9c1760f, transparent 42%), var(--surface-container-low);border-radius:4px;flex-direction:row;box-shadow:inset 0 0 28px #0000009e}.factions-hero-eyebrow{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--secondary);font-size:10px;font-weight:700}.factions-page-body{gap:var(--unit-3);min-width:0;padding:var(--unit-3);border:2px solid var(--outline-variant);background:radial-gradient(circle at 88% 0%, #b8a0e80d, transparent 46%), linear-gradient(160deg, #ffdad405, transparent 38%), var(--surface-container-lowest);border-radius:4px;flex-direction:column;display:flex;position:relative;box-shadow:inset 0 0 32px #0000008c}.faction-designer-menu{top:var(--unit-3);right:var(--unit-3);z-index:7;align-items:flex-end;gap:var(--unit-2);pointer-events:auto;flex-direction:column;max-width:min(100% - 2rem,22rem);display:flex;position:absolute}.faction-designer-menu-toggle{border:1px dashed color-mix(in srgb, var(--primary) 45%, var(--outline-variant));color:var(--primary);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:#7850c824;padding:.35rem .65rem;font-size:.65rem}.faction-designer-menu-toggle.is-open,.faction-designer-menu-toggle:hover{background:#7850c838}.faction-designer-menu-panel{width:100%;max-height:min(70vh,420px);padding:var(--unit-2) var(--unit-3);gap:var(--unit-2);background:#0e0e0ef0;flex-direction:column;display:flex;overflow-y:auto}.faction-designer-menu-hint{font-size:var(--text-xs);margin:0;line-height:1.35}.faction-designer-menu-section{flex-direction:column;gap:.35rem;display:flex}.faction-designer-menu-heading{font-size:var(--text-xs);letter-spacing:.05em;text-transform:uppercase;color:var(--on-surface-variant);margin:0}.faction-designer-menu-field{font-size:var(--text-xs);color:var(--on-surface-variant);flex-direction:column;gap:.25rem;display:flex}.faction-designer-menu-field input{border:1px solid var(--outline-variant);border-radius:var(--radius-sm,4px);background:var(--surface-container-low,var(--surface));min-height:2rem;color:var(--on-surface);font-family:var(--font-mono);padding:.3rem .5rem}.faction-designer-menu-actions{flex-wrap:wrap;gap:.35rem;display:flex}.faction-designer-menu-message{font-size:var(--text-xs);color:var(--primary);margin:0}.faction-designer-menu-message.is-error{color:var(--error)}.factions-page-panel{border:1px solid color-mix(in srgb, var(--outline-variant) 80%, transparent);background:radial-gradient(circle at 76% 0%, #8b00000d, transparent 54%), linear-gradient(160deg, #ffdad406, transparent 42%), var(--surface-container-low);border-radius:4px;min-width:0;overflow:hidden;box-shadow:inset 0 0 18px #0000007a}.factions-renown-panel{border-left:3px solid color-mix(in srgb, #b8a0e8 65%, var(--secondary))}.factions-panel-head-badge{border:1px solid color-mix(in srgb, #b8a0e8 45%, var(--outline-variant));background:color-mix(in srgb, #b8a0e8 12%, var(--surface-container));font-family:var(--font-mono);letter-spacing:.05em;text-transform:uppercase;color:color-mix(in srgb, #e8dcf8 85%, var(--secondary));border-radius:2px;flex-shrink:0;align-items:center;padding:.2rem .55rem;font-size:10px;font-weight:700;display:inline-flex}.factions-renown-panel-body{padding:var(--unit-4);background:0 0}.factions-page-panel--guide{max-width:52rem}.factions-page-panel-head{justify-content:space-between;align-items:center;gap:var(--unit-2);padding:var(--unit-2) var(--unit-4);border-bottom:1px solid color-mix(in srgb, var(--outline-variant) 75%, transparent);background:linear-gradient(180deg, #ffdad408, transparent 72%), color-mix(in srgb, var(--surface-container-low) 72%, transparent);display:flex}.factions-page-panel-body{gap:var(--unit-3);padding:var(--unit-4);min-width:0;display:grid}.factions-section-title{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--secondary);margin:0;font-size:10px;font-weight:700}.factions-empty{padding:var(--unit-4);border:1px dashed color-mix(in srgb, var(--outline-variant) 70%, transparent);background:var(--surface-container);border-radius:4px;margin:0}.world-renown-banner,.factions-renown-hero{padding:var(--unit-4) var(--unit-5);border:2px solid var(--outline-variant);border-left:3px solid color-mix(in srgb, #b8a0e8 65%, var(--secondary));background:radial-gradient(circle at 82% 0%, #b8a0e824, transparent 52%), linear-gradient(160deg, #ffdad408, transparent 42%), var(--surface-container-low);border-radius:4px;box-shadow:inset 0 0 28px #0000009e}.world-renown-banner-inner{align-items:flex-start;gap:var(--unit-4);flex-direction:column;width:100%;max-width:none;display:flex}.world-renown-hero{align-items:center;gap:var(--unit-3);width:100%;padding:var(--unit-2) var(--unit-3);border:1px solid color-mix(in srgb, var(--outline-variant) 50%, transparent);border-left:2px solid color-mix(in srgb, #b8a0e8 55%, var(--secondary));background:var(--surface-container);border-radius:4px;display:flex}.world-renown-icon{padding:var(--unit-2);background:color-mix(in srgb, #b8a0e8 10%, var(--surface-container-low));filter:drop-shadow(0 2px 10px #7a5bb880);border-radius:4px;flex-shrink:0}.world-renown-hero-copy{min-width:0}.world-renown-kicker{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--secondary);margin:0;font-size:10px;font-weight:700}.world-renown-score-row{align-items:baseline;gap:var(--unit-2) var(--unit-3);flex-wrap:wrap;margin-top:.25rem;display:flex}.world-renown-score{font-family:var(--font-display);font-variant-numeric:tabular-nums;color:#e8dcf8;text-shadow:0 0 20px #b8a0e840;margin:0;font-size:clamp(2rem,5vw,2.5rem);font-weight:700;line-height:1}.world-renown-tier-badge{border:1px solid color-mix(in srgb, #b8a0e8 45%, var(--outline-variant));background:color-mix(in srgb, #b8a0e8 12%, var(--surface-container));font-family:var(--font-mono);letter-spacing:.05em;text-transform:uppercase;color:color-mix(in srgb, #e8dcf8 85%, var(--secondary));border-radius:2px;align-items:center;padding:.2rem .55rem;font-size:10px;font-weight:700;display:inline-flex}.world-renown-formula{align-items:center;gap:var(--unit-2) var(--unit-3);width:100%;padding:var(--unit-3) var(--unit-4);border:1px solid color-mix(in srgb, var(--outline-variant) 65%, transparent);border-left:2px solid color-mix(in srgb, #b8a0e8 55%, var(--secondary));background:linear-gradient(180deg, #ffdad405, transparent 42%), var(--surface-container);border-radius:4px;flex-wrap:wrap;display:flex}.world-renown-formula-term{flex-direction:column;gap:.1rem;min-width:0;display:flex}.world-renown-formula-term--total .world-renown-formula-value{color:#e8dcf8}.world-renown-formula-label{letter-spacing:.07em;text-transform:uppercase;color:var(--on-surface-variant);font-size:.62rem}.world-renown-formula-value{font-variant-numeric:tabular-nums;color:var(--secondary);font-size:1rem;font-weight:600}.world-renown-formula-value--bonus{color:#b8e8c4}.world-renown-formula-op{color:var(--on-surface-variant);opacity:.65;flex-shrink:0;font-size:.9rem;font-weight:700}.world-renown-desc{margin:0;font-size:.86rem;line-height:1.5}.world-renown-progress-block{width:100%;padding:var(--unit-3);border:1px solid color-mix(in srgb, var(--outline-variant) 55%, transparent);border-left:2px solid color-mix(in srgb, #b8a0e8 55%, var(--secondary));background:var(--surface-container);border-radius:4px}.world-renown-progress-head{justify-content:space-between;align-items:baseline;gap:var(--unit-2);margin-bottom:var(--unit-2);color:var(--on-surface-variant);font-size:.78rem;display:flex}.world-renown-progress-pct{font-variant-numeric:tabular-nums;color:var(--secondary);font-weight:600}.world-renown-progress-bar{background:#00000080;border-radius:4px;height:8px;overflow:hidden}.world-renown-progress-bar i{border-radius:inherit;background:linear-gradient(90deg,#6a4aa8,#c9b8e8);height:100%;display:block;box-shadow:0 0 10px #b8a0e866}.world-renown-next{margin:var(--unit-2) 0 0;font-size:.76rem;line-height:1.35}.world-renown-leaderboard{padding:var(--unit-2) var(--unit-3);border:1px solid color-mix(in srgb, var(--outline-variant) 65%, transparent);background:var(--surface-container);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--secondary);border-radius:3px;align-items:center;gap:.25rem;font-size:10px;font-weight:700;text-decoration:none;transition:border-color .15s,color .15s,background .15s;display:inline-flex}.world-renown-leaderboard:hover{border-color:color-mix(in srgb, #b8a0e8 45%, var(--outline-variant));color:#e8dcf8;background:color-mix(in srgb, #b8a0e8 8%, var(--surface-container));text-decoration:none}@media (min-width:960px){.world-renown-banner-inner{gap:var(--unit-3) var(--unit-4);grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:start;display:grid}.world-renown-hero,.world-renown-formula,.world-renown-desc{grid-column:1}.world-renown-progress-block{flex-direction:column;grid-area:1/2/span 3;justify-content:center;align-self:stretch;display:flex}.world-renown-leaderboard{grid-column:1}}.factions-activity-hub{border-left:3px solid color-mix(in srgb, var(--tertiary) 70%, var(--secondary));gap:0;display:block}.factions-activity-hub .factions-page-panel-body{padding:var(--unit-4) var(--unit-5);gap:var(--unit-4)}.factions-activity-hub .faction-event-message{margin:0}.factions-activity-grid{gap:var(--unit-3);grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));align-items:stretch;width:100%;display:grid}.factions-activity-grid .faction-contract-card,.factions-activity-grid .faction-event-card,.factions-activity-grid .faction-world-boss-card{min-height:240px}.factions-activity-grid .faction-contract-card header,.factions-activity-grid .faction-event-card header,.factions-activity-grid .faction-world-boss-card header{padding:var(--unit-3) var(--unit-4) var(--unit-2)}.factions-activity-grid .faction-contract-card>:not(header):not(.faction-contract-progress),.factions-activity-grid .faction-event-card>:not(header),.factions-activity-grid .faction-world-boss-card>:not(header){padding-inline:var(--unit-4)}.factions-activity-grid .faction-contract-card>:not(header):first-of-type,.factions-activity-grid .faction-event-card>:not(header):first-of-type,.factions-activity-grid .faction-world-boss-card>:not(header):first-of-type{padding-top:var(--unit-3)}.factions-activity-grid .faction-contract-card>p:not(.faction-contract-progress-label):not(.faction-contract-claimed),.factions-activity-grid .faction-event-card>p:not(.faction-event-claimed),.factions-activity-grid .faction-world-boss-card>p:not(.faction-world-boss-defeated){color:var(--on-surface);margin:0;font-size:.88rem;line-height:1.45}.factions-activity-grid .faction-contract-progress{gap:var(--unit-2);padding:var(--unit-3) var(--unit-4) var(--unit-2);flex-direction:column;display:flex}.factions-activity-grid .faction-contract-progress-bar{box-sizing:border-box;border:1px solid color-mix(in srgb, var(--outline-variant) 45%, transparent);background:#00000073;border-radius:4px;width:100%;height:10px;margin:0;overflow:hidden}.factions-activity-grid .faction-contract-progress-label{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--outline);margin:0;font-size:10px;font-weight:700}.factions-activity-grid .faction-contract-rewards,.factions-activity-grid .faction-event-rewards{gap:var(--unit-2);margin:var(--unit-3) 0 0;background:0 0;border:none;border-radius:0;flex-wrap:wrap;padding:0;list-style:none;display:flex}.factions-activity-grid .faction-contract-rewards li,.factions-activity-grid .faction-event-rewards li{border:1px solid color-mix(in srgb, var(--outline-variant) 65%, transparent);font-family:var(--font-mono);letter-spacing:.03em;color:var(--secondary);background:#00000038;border-radius:3px;margin:0;padding:5px 10px;font-size:10px}.factions-activity-grid .faction-contract-rewards li+li,.factions-activity-grid .faction-event-rewards li+li{margin-top:0}.factions-activity-grid .faction-contract-card>.btn,.factions-activity-grid .faction-event-card>.btn,.factions-activity-grid .faction-world-boss-card>.btn,.factions-activity-grid .faction-contract-card>.faction-contract-claimed,.factions-activity-grid .faction-event-card>.faction-event-claimed,.factions-activity-grid .faction-world-boss-card>.faction-world-boss-defeated{margin:auto var(--unit-4) var(--unit-4);width:calc(100% - 2 * var(--unit-4));align-self:stretch}.factions-activity-grid .faction-contract-card>.btn{margin-top:var(--unit-4)}.factions-activity-grid .faction-contract-card>.btn:disabled{cursor:default;background:linear-gradient(180deg, #0000000a, transparent 28%), var(--surface-container-high);border:1px solid color-mix(in srgb, var(--outline-variant) 75%, transparent);color:var(--on-surface-variant);opacity:1;font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:700}.factions-activity-boss-slot{min-width:0}.factions-standing-section{border:2px solid var(--outline-variant);border-left:3px solid color-mix(in srgb, var(--secondary) 28%, var(--outline-variant));border-radius:0;box-shadow:inset 0 0 24px #0000009e}.factions-standing-section .factions-page-panel-head{background:linear-gradient(180deg, #ffdad408, transparent 72%), color-mix(in srgb, var(--surface-container-low) 78%, transparent);border-bottom:1px solid color-mix(in srgb, var(--outline-variant) 55%, transparent)}.factions-standing-section .factions-section-title{color:var(--secondary)}.factions-standing-section .factions-page-panel-body{padding:clamp(var(--unit-3), 2vw, var(--unit-4));background:linear-gradient(160deg, #ffdad405, transparent 42%), color-mix(in srgb, var(--surface-container-lowest) 62%, transparent);container:factions-standing/inline-size}.factions-standing-grid{gap:clamp(var(--unit-3), 2vw, var(--unit-4));grid-template-columns:minmax(0,1fr);display:grid}@container factions-standing (min-width:960px){.factions-standing-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}}.faction-standing-card{--faction-accent:var(--secondary);gap:var(--unit-3);min-width:0;padding:clamp(var(--unit-3), 2vw, var(--unit-4));border-left:3px solid color-mix(in srgb, var(--faction-accent) 55%, var(--outline-variant));background:linear-gradient(155deg, color-mix(in srgb, var(--faction-accent) 8%, transparent) 0%, transparent 46%), linear-gradient(180deg, #ffdad406, transparent 38%), var(--surface-container-high);scroll-margin-top:var(--unit-6);border-radius:2px;flex-direction:column;display:flex;box-shadow:inset 0 0 22px #000000ad;container:faction-card/inline-size}.faction-standing-card--military{--faction-accent:var(--primary)}.faction-standing-card--religion{--faction-accent:var(--tertiary)}.faction-standing-card--guild{--faction-accent:var(--secondary)}.faction-standing-card--criminal{--faction-accent:#c48a78}.faction-standing-emblem-frame{border:1px solid color-mix(in srgb, var(--faction-accent) 40%, var(--outline-variant));background:radial-gradient(circle at 40% 30%, color-mix(in srgb, var(--faction-accent) 18%, transparent), transparent 62%), color-mix(in srgb, var(--surface-container-lowest) 88%, #000);border-radius:2px;flex-shrink:0;place-items:center;width:4rem;height:4rem;display:grid;box-shadow:inset 0 0 12px #00000073}.faction-standing-emblem{opacity:.95;object-fit:contain;filter:drop-shadow(0 2px 8px #0006)}.faction-standing-head{gap:var(--unit-3);padding-bottom:var(--unit-3);border-bottom:1px solid color-mix(in srgb, var(--outline-variant) 42%, transparent);grid-template-columns:auto 1fr auto;align-items:start;display:grid}.faction-standing-identity{min-width:0}.faction-standing-kind{color:color-mix(in srgb, var(--faction-accent) 72%, var(--text-tertiary));margin:0}.faction-standing-head h2{font-family:var(--font-display);font-variant:small-caps;letter-spacing:.04em;color:color-mix(in srgb, var(--text-heading) 88%, var(--faction-accent));margin:.2rem 0;font-size:1.2rem;font-weight:700;line-height:1.15}.faction-standing-tagline{font-family:var(--font-prose);color:var(--text-secondary);margin:0;font-size:.88rem;font-style:italic;line-height:1.4}.faction-standing-zone{margin:var(--unit-2) 0 0;border:1px solid color-mix(in srgb, var(--outline-variant) 55%, transparent);background:color-mix(in srgb, #00000047 90%, var(--faction-accent) 6%);color:var(--text-secondary);border-radius:2px;align-items:center;gap:.4rem;padding:.15rem .5rem;font-size:.74rem;display:inline-flex}.faction-standing-zone-label{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary);font-size:9px;font-weight:700}.faction-standing-renown-bonus{align-items:center;gap:var(--unit-2);flex-wrap:wrap;margin:0;font-size:.78rem;display:flex}.faction-standing-renown-chip{border:1px solid color-mix(in srgb, var(--secondary) 32%, var(--outline-variant));background:color-mix(in srgb, var(--secondary) 6%, var(--surface-container));font-family:var(--font-mono);letter-spacing:.04em;color:var(--secondary);align-items:center;padding:.15rem .5rem;font-size:10px;font-weight:700;display:inline-flex}.faction-standing-body{gap:var(--unit-4);grid-template-columns:minmax(0,1fr);margin-top:0;display:grid}.faction-standing-main,.faction-standing-aside{gap:var(--unit-3);flex-direction:column;min-width:0;display:flex}@container faction-card (min-width:600px){.faction-standing-body{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:start}.faction-standing-aside{padding-left:var(--unit-4);border-left:1px solid color-mix(in srgb, var(--outline-variant) 38%, transparent)}}@container faction-card (max-width:599px){.faction-standing-head{gap:var(--unit-2);grid-template-columns:auto minmax(0,1fr)}.faction-standing-score{justify-content:flex-start;align-items:baseline;gap:var(--unit-2) var(--unit-3);text-align:left;flex-wrap:wrap;grid-column:1/-1;min-width:0;display:flex}.faction-standing-score-kicker{margin-bottom:0}.faction-standing-score strong{font-size:1.25rem}.faction-standing-score>span:not(.faction-standing-score-kicker){margin-top:0;margin-left:auto}.faction-standing-emblem-frame{width:3.25rem;height:3.25rem}.faction-standing-emblem{width:2.75rem;height:2.75rem}.faction-standing-head h2{font-size:1.08rem}.faction-standing-hq-cta{gap:var(--unit-2);grid-template-columns:auto minmax(0,1fr)}.faction-standing-hq-cta-status{grid-column:2;justify-self:start;margin-top:.15rem}}.faction-standing-progress{padding:var(--unit-3);border:1px solid color-mix(in srgb, var(--outline-variant) 48%, transparent);border-left:2px solid color-mix(in srgb, var(--faction-accent) 50%, var(--outline-variant));background:linear-gradient(180deg, color-mix(in srgb, var(--faction-accent) 6%, transparent), transparent 42%), var(--surface-container);border-radius:2px;margin:0;box-shadow:inset 0 0 14px #00000061}.faction-standing-description{padding:var(--unit-2) 0 0;box-shadow:none;font-family:var(--font-prose);color:var(--text-secondary);background:0 0;border:none;margin:0;font-size:.9rem;line-height:1.6}.faction-standing-perks-block,.faction-donate-panel{padding:var(--unit-3);border:1px solid color-mix(in srgb, var(--outline-variant) 38%, transparent);background:color-mix(in srgb, var(--surface-container) 82%, var(--surface-container-low));border-radius:0;margin:0;box-shadow:inset 0 0 10px #00000052}.faction-tier-ladder-details{border:1px solid color-mix(in srgb, var(--outline-variant) 32%, transparent);background:color-mix(in srgb, var(--surface-container-low) 88%, transparent);box-shadow:none;border-radius:0;margin:0;overflow:hidden}.faction-standing-progress-head{justify-content:space-between;align-items:baseline;gap:var(--unit-2);margin-bottom:var(--unit-1);display:flex}.faction-standing-progress-tier{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--text-tertiary);font-size:.68rem;font-weight:700}.faction-standing-progress-pct{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--secondary);font-size:.78rem;font-weight:700}.faction-standing-progress-values{margin:0 0 var(--unit-2);font-variant-numeric:tabular-nums;color:var(--text-secondary);font-size:.82rem}.faction-standing-next{margin:var(--unit-2) 0 0;color:var(--text-tertiary);font-size:.76rem}.faction-standing-score{text-align:right;padding:var(--unit-2) var(--unit-3);border:1px solid color-mix(in srgb, var(--faction-accent) 32%, var(--outline-variant));background:linear-gradient(160deg, color-mix(in srgb, var(--faction-accent) 10%, transparent), transparent 48%), color-mix(in srgb, var(--surface-container) 92%, var(--surface-container-low));border-radius:2px;flex-shrink:0;min-width:6rem;box-shadow:inset 0 0 10px #0006}.faction-standing-score-kicker{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:color-mix(in srgb, var(--faction-accent) 70%, var(--text-tertiary));margin-bottom:.2rem;font-size:9px;font-weight:700;display:block}.faction-standing-score strong{font-family:var(--font-display);font-variant-numeric:tabular-nums;color:color-mix(in srgb, var(--text-heading) 80%, var(--faction-accent));font-size:1.45rem;line-height:1;display:block}.faction-standing-score span{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--text-tertiary);margin-top:.3rem;font-size:9px;font-weight:700;display:block}.faction-standing-hq-cta{gap:var(--unit-2);padding:var(--unit-2) var(--unit-3);border:1px solid color-mix(in srgb, var(--faction-accent) 36%, var(--outline-variant));border-left:3px solid color-mix(in srgb, var(--faction-accent) 70%, var(--outline-variant));background:linear-gradient(120deg, color-mix(in srgb, var(--faction-accent) 12%, transparent), transparent 55%), color-mix(in srgb, var(--surface-container) 90%, var(--surface-container-lowest));color:inherit;border-radius:2px;grid-template-columns:auto 1fr auto;align-items:center;text-decoration:none;transition:border-color .15s,background .15s,transform .15s;display:grid}.faction-standing-hq-cta:hover{border-color:color-mix(in srgb, var(--faction-accent) 55%, var(--outline-variant));background:linear-gradient(120deg, color-mix(in srgb, var(--faction-accent) 18%, transparent), transparent 55%), color-mix(in srgb, var(--surface-container-high) 88%, var(--surface-container-lowest))}.faction-standing-hq-cta:focus-visible{outline:2px solid var(--faction-accent);outline-offset:2px}.faction-standing-hq-cta-icon{filter:drop-shadow(0 1px 2px #0006);flex-shrink:0}.faction-standing-hq-cta-copy{flex-direction:column;gap:.1rem;min-width:0;display:flex}.faction-standing-hq-cta-kicker{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:color-mix(in srgb, var(--faction-accent) 75%, var(--text-tertiary));font-size:9px;font-weight:700}.faction-standing-hq-cta-title{font-family:var(--font-display);color:var(--text-heading);font-size:1rem;font-weight:600;line-height:1.2}.faction-standing-hq-cta-hint{font-size:.78rem;line-height:1.3}.faction-standing-hq-cta-status{border:1px solid color-mix(in srgb, var(--outline-variant) 70%, var(--faction-accent));background:color-mix(in srgb, #00000059 88%, var(--faction-accent) 8%);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:color-mix(in srgb, var(--on-surface-variant) 80%, var(--faction-accent));border-radius:2px;flex-shrink:0;padding:.28rem .55rem;font-size:10px;font-weight:700}.faction-standing-hq-cta-status.is-open,.faction-standing-hq-cta.is-open .faction-standing-hq-cta-status{border-color:color-mix(in srgb, var(--success,#8fbc8f) 45%, var(--outline-variant));color:color-mix(in srgb, var(--success,#8fbc8f) 88%, white);background:color-mix(in srgb, var(--success,#8fbc8f) 14%, #0006)}.faction-standing-progress-bar{box-sizing:border-box;border:1px solid color-mix(in srgb, var(--outline-variant) 35%, transparent);background:#0000006b;border-radius:0;height:10px;overflow:hidden}.faction-standing-progress-bar i{height:100%;width:var(--progress-pct,0%);background:linear-gradient(90deg, color-mix(in srgb, var(--faction-accent) 82%, var(--outline-variant)), color-mix(in srgb, var(--faction-accent) 35%, transparent));box-shadow:0 0 8px color-mix(in srgb, var(--faction-accent) 30%, transparent);display:block}.faction-standing-perks{margin:var(--unit-1) 0 0;color:var(--text-secondary);padding-left:1rem;font-size:.82rem;line-height:1.45}.faction-standing-perks-block{border-left:2px solid color-mix(in srgb, var(--secondary) 38%, var(--outline-variant))}.faction-standing-perks-block.is-next{border-left-color:color-mix(in srgb, var(--tertiary) 38%, var(--outline-variant))}.faction-standing-perks-block h3{margin:0 0 var(--unit-1);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary);font-size:.68rem;font-weight:700}.faction-tier-ladder-details summary{cursor:pointer;padding:var(--unit-2) var(--unit-3);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--text-tertiary);font-size:10px;font-weight:700;list-style:none;transition:color .15s,background .15s}.faction-tier-ladder-details summary:hover{color:var(--secondary);background:color-mix(in srgb, var(--secondary) 4%, transparent)}.faction-tier-ladder-details summary::-webkit-details-marker{display:none}.faction-tier-ladder{padding:var(--unit-2) var(--unit-3) var(--unit-3);border-top:1px solid color-mix(in srgb, var(--outline-variant) 55%, transparent);gap:var(--unit-2);margin:0;list-style:none;display:grid}.faction-tier-step{padding:var(--unit-2) var(--unit-3);border:1px solid color-mix(in srgb, var(--outline-variant) 28%, transparent);background:color-mix(in srgb, var(--surface-container-low) 90%, transparent);opacity:.62;border-radius:0}.faction-tier-step.is-reached{opacity:.78}.faction-tier-step.is-current{opacity:1;border-color:color-mix(in srgb, var(--secondary) 38%, var(--outline-variant));background:color-mix(in srgb, var(--secondary) 5%, var(--surface-container-low))}.faction-tier-step-head{justify-content:space-between;gap:var(--unit-2);font-size:.85rem;display:flex}.faction-tier-step-standing{font-variant-numeric:tabular-nums;color:var(--on-surface-variant)}.faction-tier-step-desc{margin:var(--unit-1) 0 0;font-size:.78rem}.faction-tier-step-perks{margin:var(--unit-1) 0 0;color:var(--text-secondary);padding-left:1rem;font-size:.78rem}.faction-standing-tier-desc{padding:var(--unit-2) var(--unit-3);border-left:2px solid color-mix(in srgb, var(--outline-variant) 55%, transparent);color:var(--text-tertiary);margin:0;font-size:.8rem;line-height:1.45}.faction-donate-panel{border-left:2px solid color-mix(in srgb, var(--secondary) 34%, var(--outline-variant))}.faction-donate-panel h3{margin:0 0 var(--unit-2);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary);font-size:.68rem;font-weight:700}.faction-donate-meta{gap:var(--unit-2);margin:0 0 var(--unit-3);padding:0;display:grid}.faction-donate-meta-row{gap:var(--unit-1);grid-template-columns:1fr;align-items:baseline;display:grid}@container faction-card (min-width:420px){.faction-donate-meta-row{gap:var(--unit-2);grid-template-columns:minmax(5.5rem,.35fr) minmax(0,1fr)}}.faction-donate-meta-row dt{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--text-tertiary);margin:0;font-size:10px;font-weight:700}.faction-donate-meta-row dd{color:var(--text-secondary);overflow-wrap:break-word;margin:0;font-size:.78rem;line-height:1.4}.faction-donate-meta-remaining{margin-left:var(--unit-1);font-family:var(--font-mono);letter-spacing:.03em;color:var(--secondary);font-size:10px;font-weight:700;display:inline-block}.faction-contract-card .btn:disabled{border-color:color-mix(in srgb, var(--outline-variant) 70%, transparent);color:var(--on-surface-variant);background:var(--surface-container-low);opacity:1}.faction-donate-actions{gap:var(--unit-2);grid-template-columns:1fr;display:grid}@container faction-card (min-width:360px){.faction-donate-actions{grid-template-columns:repeat(3,minmax(0,1fr))}}.faction-donate-actions .btn{min-width:0;padding-inline:var(--unit-2);justify-content:center}.faction-donate-success{margin:var(--unit-2) 0 0;color:var(--secondary);font-size:.8rem}.faction-donate-error{margin:var(--unit-1) 0 0;font-size:.8rem}.faction-event-card,.faction-world-boss-card,.faction-contract-card{border:1px solid color-mix(in srgb, var(--outline-variant) 65%, transparent);background:linear-gradient(180deg, #ffdad405, transparent 42%), var(--surface-container);border-radius:4px;flex-direction:column;min-width:0;height:100%;padding:0;display:flex;overflow:hidden;box-shadow:inset 0 1px #ffffff08}.faction-event-card header,.faction-world-boss-card header,.faction-contract-card header{padding:var(--unit-3) var(--unit-4) var(--unit-2);border-bottom:1px solid color-mix(in srgb, var(--outline-variant) 55%, transparent);background:linear-gradient(180deg, #ffdad408, transparent 72%), color-mix(in srgb, var(--surface-container-low) 72%, transparent);flex-direction:column;gap:.15rem;margin:0;display:flex}.faction-contract-card header{justify-content:space-between;align-items:baseline;gap:var(--unit-2);flex-direction:row}.faction-event-card>:not(header),.faction-world-boss-card>:not(header),.faction-contract-card>:not(header):not(.faction-contract-progress){padding-inline:var(--unit-4)}.faction-event-card>:not(header):first-of-type,.faction-world-boss-card>:not(header):first-of-type,.faction-contract-card>:not(header):first-of-type{padding-top:var(--unit-3)}.faction-event-card>.btn,.faction-world-boss-card>.btn,.faction-contract-card>.btn,.faction-event-card>.faction-event-claimed,.faction-world-boss-card>.faction-world-boss-defeated,.faction-contract-card>.faction-contract-claimed{margin:var(--unit-3) var(--unit-4) var(--unit-4);align-self:stretch}.faction-event-card .btn,.faction-world-boss-card .btn,.faction-contract-card .btn{margin-top:auto}.faction-event-card{border-left:3px solid var(--secondary)}.faction-contract-card{border-left:3px solid var(--tertiary)}.faction-world-boss-card{border-left:3px solid color-mix(in srgb, var(--primary) 65%, var(--error));background:linear-gradient(155deg, #ff5a5a0d, transparent 50%), var(--surface-container)}.faction-event-card h3,.faction-world-boss-card h3{font-family:var(--font-display);color:var(--text-heading);margin:0;font-size:.95rem;line-height:1.15}.faction-contract-card h4{font-family:var(--font-display);color:var(--text-heading);margin:0;font-size:.92rem;line-height:1.15}.faction-contract-faction{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--outline);font-size:9px;font-weight:700}.faction-event-card p,.faction-world-boss-card p,.faction-contract-card p{margin:0;font-size:.85rem;line-height:1.4}.faction-event-rewards,.faction-contract-rewards{margin:var(--unit-2) 0 0;padding:var(--unit-2) var(--unit-3);border:1px solid color-mix(in srgb, var(--outline-variant) 40%, transparent);border-left:2px solid var(--secondary);background:var(--surface);color:var(--secondary);border-radius:3px;font-size:.82rem;list-style:none}.faction-event-rewards li+li,.faction-contract-rewards li+li{margin-top:.15rem}.faction-event-progress{margin:var(--unit-2) 0 0;color:var(--secondary);font-size:.8rem;font-weight:600}.faction-event-actions{gap:var(--unit-2);margin-top:var(--unit-3);flex-wrap:wrap;display:flex}.faction-contract-progress{gap:var(--unit-2);padding:var(--unit-3) var(--unit-4) var(--unit-2);flex-direction:column;display:flex}.faction-contract-progress-bar{box-sizing:border-box;background:#00000073;border-radius:3px;width:100%;height:10px;margin:0;overflow:hidden}.faction-event-claimed,.faction-event-message{padding:var(--unit-2) var(--unit-3);border:1px solid color-mix(in srgb, var(--outline-variant) 55%, transparent);border-left:2px solid var(--secondary);background:var(--surface);color:var(--on-surface-variant);border-radius:3px;margin:0;font-size:.82rem}.faction-world-boss-name{align-items:center;gap:var(--unit-2);margin:var(--unit-2) 0;font-size:.88rem;font-weight:600;display:flex}.faction-world-boss-reward,.faction-world-boss-defeated{margin:var(--unit-1) 0 var(--unit-2);font-size:.8rem}.faction-contract-progress-bar i{background:linear-gradient(90deg,#7a5bb8,#b8a0e88c);height:100%;display:block}.faction-contract-progress-label{margin:0;font-size:.72rem}.faction-contract-claimed{color:var(--on-surface-variant);font-size:.8rem}.factions-actions-guide{box-shadow:none;background:0 0;border:none;border-radius:0}.factions-actions-guide.factions-page-panel{overflow:hidden}.factions-actions-guide-summary{align-items:center;gap:var(--unit-3);padding:var(--unit-2) var(--unit-4);cursor:pointer;-webkit-user-select:none;user-select:none;border-bottom:1px solid #0000;list-style:none;display:flex}.factions-actions-guide[open] .factions-actions-guide-summary{border-bottom-color:color-mix(in srgb, var(--outline-variant) 75%, transparent)}.factions-actions-guide-summary::-webkit-details-marker{display:none}.factions-actions-guide-chevron{border-right:2px solid var(--secondary);border-bottom:2px solid var(--secondary);flex-shrink:0;width:.55rem;height:.55rem;transition:transform .15s;transform:rotate(-45deg)}.factions-actions-guide[open] .factions-actions-guide-chevron{transform:rotate(45deg)translateY(-2px)}.factions-actions-guide-copy{flex-direction:column;gap:.15rem;min-width:0;display:flex}.factions-actions-guide.factions-page-panel>.factions-actions-guide-summary{background:linear-gradient(180deg, #ffdad408, transparent 72%), color-mix(in srgb, var(--surface-container-low) 72%, transparent)}.factions-actions-guide-title{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--secondary);font-size:10px;font-weight:700}.factions-actions-guide-hint{font-size:.75rem}.factions-actions-guide-body{padding:var(--unit-3) var(--unit-4) var(--unit-4);background:var(--surface-container);border-top:none}.factions-actions-guide-list{gap:var(--unit-2);margin:var(--unit-3) 0 0;padding:0;list-style:none;display:grid}@media (min-width:640px){.factions-actions-guide-list{column-gap:var(--unit-4);grid-template-columns:repeat(2,minmax(0,1fr))}}.factions-actions-guide-list li{padding:var(--unit-2) var(--unit-2) var(--unit-2) var(--unit-4);color:var(--on-surface-variant);border-left:2px solid #e9c17659;font-size:.84rem;line-height:1.4;position:relative}.factions-actions-guide-list li:before{content:"";background:var(--secondary);border-radius:50%;width:6px;height:6px;position:absolute;top:.72rem;left:-5px;box-shadow:0 0 6px #e9c17659}@media (max-width:720px){.factions-page{padding:var(--unit-2);gap:var(--unit-3)}.factions-page-body{padding:var(--unit-2);gap:var(--unit-2)}.factions-hero,.world-renown-banner,.factions-page-panel-body,.factions-renown-panel-body,.factions-activity-hub .factions-page-panel-body{padding:var(--unit-3)}.factions-page-panel-head,.factions-actions-guide.factions-page-panel>.factions-actions-guide-summary,.world-renown-formula{padding:var(--unit-2) var(--unit-3)}.faction-standing-card{padding:var(--unit-3)}}.hero-mastery-icons{gap:var(--unit-2);flex-wrap:wrap;display:flex}.hero-status-panels{gap:var(--unit-3);grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;display:grid}.hero-status-card{padding:var(--unit-4);border:2px solid var(--outline-variant);background:linear-gradient(160deg, #ffdad409, transparent 38%), var(--surface-container-low);box-shadow:inset 0 0 24px #000000c7}.hero-status-combat,.hero-status-resistances,.hero-status-buffs,.hero-status-panels .hero-titles-panel{grid-column:1/-1}.hero-status-panels .hero-titles-panel{padding:var(--unit-4)}.hero-status-panels .hero-titles-head{justify-content:space-between;align-items:baseline;gap:var(--unit-2) var(--unit-4);flex-wrap:wrap;display:flex}.hero-status-panels .hero-titles-slots{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-status-panels .hero-titles-list{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));max-height:none}.hero-status-progress .character-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.hero-status-heading-with-icon{align-items:center;gap:7px;display:flex}.hero-status-heading-with-icon .game-icon{object-fit:contain;width:1.65rem;height:1.65rem;filter:drop-shadow(0 0 6px color-mix(in srgb, var(--secondary) 26%, transparent))}.hero-status-heading-with-icon .hero-status-section-icon,.hero-status-heading-with-icon .item-inspect-icon{filter:drop-shadow(0 0 6px color-mix(in srgb, var(--secondary) 26%, transparent));flex-shrink:0}.hero-tactic-label{align-items:center;gap:6px;display:inline-flex}.hero-tactic-icon,.hero-tactic-label .item-inspect-icon,.hero-tactic-label .damage-type-icon{flex-shrink:0}.character-summary-grid .character-summary-label-with-icon{flex-direction:row;align-items:center;gap:4px;display:inline-flex}.character-summary-label-with-icon .game-icon{object-fit:contain;width:1.1rem;height:1.1rem}.hero-status-buffs{padding-top:var(--unit-3);padding-bottom:var(--unit-3)}.hero-status-buffs .hero-active-effects{margin:0}.hero-status-buffs .hero-active-effects-head{margin-bottom:var(--unit-3)}.hero-status-buffs .hero-active-effects-head h4{color:var(--secondary);font-family:var(--font-display);letter-spacing:normal;text-transform:none;font-size:1.15rem;font-weight:400}.hero-status-buffs .hero-active-effects-list{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.hero-stat-tiles{gap:var(--unit-2);grid-template-columns:repeat(auto-fit,minmax(96px,1fr));display:grid}.hero-stat-tile{gap:var(--unit-1);padding:var(--unit-2) var(--unit-3);border:1px solid var(--outline-variant);border-top:3px solid var(--tile-accent,var(--outline-variant));background:#00000047;flex-direction:column;display:flex}.hero-stat-tile span{color:var(--outline);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;font-size:.62rem}.hero-stat-tile strong{color:var(--secondary);font-family:var(--font-display);font-size:1.35rem;line-height:1}.hero-stat-tile-hp{--tile-accent:#9f0000}.hero-stat-tile-endurance{--tile-accent:#7b5b00}.hero-stat-tile-mana{--tile-accent:#345b8d}.hero-stat-tile-bar{background:#0000008c;border:1px solid #aa898438;height:5px;margin-top:2px;overflow:hidden}.hero-stat-tile-bar-fill{background:linear-gradient(90deg, #8b1a12, var(--primary));height:100%;box-shadow:0 0 6px color-mix(in srgb, var(--primary) 40%, transparent);transition:width .2s;display:block}.hero-stat-tile--wounded strong{color:#f0b4a8}.hero-vitality-regen-note{gap:var(--unit-2);margin:var(--unit-3) 0 0;padding:var(--unit-2) var(--unit-3);border:1px solid color-mix(in srgb, var(--primary) 42%, var(--outline-variant));border-left:3px solid var(--primary);background:linear-gradient(90deg,#9f000029,#0000 55%),linear-gradient(160deg,#ffb4a80f,#0000 50%),#00000052;grid-template-columns:auto minmax(0,1fr);align-items:start;display:grid;box-shadow:inset 0 0 14px #8b00002e}.hero-vitality-regen-note-badge{border:1px solid color-mix(in srgb, var(--primary) 50%, var(--outline-variant));color:#f0b4a8;background:#00000073;place-items:center;width:30px;height:30px;display:grid}.hero-vitality-regen-note-icon{filter:drop-shadow(0 0 5px color-mix(in srgb, var(--primary) 35%, transparent))}.hero-vitality-regen-note-copy{gap:2px;min-width:0;display:grid}.hero-vitality-regen-note-title{color:#f0b4a8;font-family:var(--font-display);letter-spacing:.02em;font-size:.95rem;font-weight:400;line-height:1.15}.hero-vitality-regen-note-hint{color:var(--on-surface-variant);font-family:var(--font-prose);margin:0;font-size:.78rem;line-height:1.4}.hero-combat-legend{margin:calc(var(--unit-1) * -1) 0 var(--unit-3);font-size:.72rem;line-height:1.35}.hero-combat-duo{gap:var(--unit-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.hero-combat-column h4,.hero-combat-relics h4{margin:0 0 var(--unit-2);color:var(--outline);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;font-size:.62rem;font-weight:700}.hero-stat-value{text-align:right;flex-wrap:wrap;justify-content:flex-end;align-items:baseline;gap:.3rem;display:inline-flex}.hero-stat-equip-delta,.hero-stat-talent-delta,.hero-stat-buff-delta{letter-spacing:.02em;font-size:.72em;font-weight:700}.hero-stat-equip-delta{color:var(--tertiary)}.hero-stat-talent-delta{color:var(--secondary)}.hero-stat-buff-delta{color:#e8a0c8}.hero-stat-equip-delta--neg,.hero-stat-talent-delta--neg,.hero-stat-buff-delta--neg{color:var(--error)}.hero-stat-provenance{text-align:left;flex-direction:column;gap:.35rem;min-width:10rem;display:flex}.hero-stat-provenance-title{color:var(--secondary);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;font-size:.62rem;font-weight:700}.hero-stat-provenance-row{color:var(--on-surface-variant);font-family:var(--font-mono);justify-content:space-between;align-items:baseline;gap:.75rem;font-size:.72rem;display:flex}.hero-stat-provenance-row strong{color:var(--on-surface);font-weight:700}.hero-stat-provenance-row--talent strong{color:var(--secondary)}.hero-stat-provenance-row--equip strong{color:var(--tertiary)}.hero-stat-provenance-row--buff strong{color:#e8a0c8}.hero-stat-suffix{color:var(--on-surface-variant);letter-spacing:.02em;text-transform:lowercase;font-size:.68em;font-weight:600}.hero-combat-relics{margin-top:var(--unit-4);padding-top:var(--unit-3);border-top:1px solid #aa898447}.hero-combat-relic-chips{gap:var(--unit-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.hero-combat-relic-chips li{min-height:1.75rem;color:var(--on-surface-variant);font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;background:linear-gradient(160deg,#6044032e,#0000 55%),#00000052;border:1px solid #e9c17652;align-items:center;gap:.35rem;padding:.28rem .55rem;font-size:.62rem;font-weight:700;display:inline-flex}.hero-combat-relic-chips li strong{color:var(--secondary);letter-spacing:0;text-transform:none;font-size:.78rem}.hero-active-effects-head{justify-content:space-between;align-items:center;gap:var(--unit-2);margin-bottom:var(--unit-3);display:flex}.hero-active-effects-head h4{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--outline);margin:0;font-size:.68rem;font-weight:700}.hero-active-effects-count{min-width:22px;height:22px;color:var(--secondary);font-family:var(--font-mono);background:#60440338;border:1px solid #e9c17659;place-items:center;padding:0 6px;font-size:.68rem;font-weight:700;display:grid}.hero-active-effects-empty{align-items:flex-start;gap:var(--unit-2);padding:var(--unit-3) var(--unit-4);border:1px dashed color-mix(in srgb, var(--outline-variant) 85%, transparent);border-left:3px solid color-mix(in srgb, var(--secondary) 45%, var(--outline-variant));background:radial-gradient(at 0 0,#e9c17614,#0000 55%),linear-gradient(160deg,#ffdad409,#0000 48%),#00000047;flex-direction:column;margin:0;display:flex;box-shadow:inset 0 0 16px #0006}.hero-active-effects-empty-icon{opacity:.78;filter:drop-shadow(0 0 8px color-mix(in srgb, var(--secondary) 24%, transparent))}.hero-active-effects-empty-title{color:var(--secondary);font-family:var(--font-display);letter-spacing:.02em;margin:0;font-size:1.05rem;font-weight:400;line-height:1.2}.hero-active-effects-empty-hint{max-width:48ch;color:var(--on-surface-variant);font-family:var(--font-prose);margin:0;font-size:.82rem;line-height:1.45}.hero-active-effects-empty-link{margin-top:var(--unit-1);border:1px solid color-mix(in srgb, var(--secondary) 40%, var(--outline-variant));color:var(--secondary);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;background:linear-gradient(160deg,#60440338,#0000 55%),#0000006b;align-items:center;gap:.4rem;padding:.4rem .75rem;font-size:.68rem;font-weight:700;text-decoration:none;transition:border-color .15s,background .15s,color .15s;display:inline-flex}.hero-active-effects-empty-link:hover{border-color:var(--secondary);color:var(--on-surface);background:linear-gradient(160deg,#60440359,#0000 55%),#0000008c}.hero-status-buffs .hero-active-effects-empty{width:100%}.hero-active-effects-list{gap:var(--unit-2);margin:0;padding:0;list-style:none;display:grid}.hero-active-effect{gap:var(--unit-2);padding:var(--unit-2) var(--unit-3);border:1px solid var(--outline-variant);background:linear-gradient(135deg,#ffdad40a,#0000 55%),#0e0e0e8c;display:grid}.hero-active-effect-main{gap:var(--unit-2);grid-template-columns:auto 1fr auto;align-items:center;display:grid}.hero-active-effect-badge{border:1px solid var(--outline-variant);width:32px;height:32px;color:var(--secondary);font-family:var(--font-mono);letter-spacing:.04em;background:#00000059;place-items:center;font-size:.62rem;font-weight:800;display:grid}.hero-active-effect-icon,.hero-active-effect-badge .item-inspect-icon,.hero-active-effect-badge .damage-type-icon,.hero-active-effect-badge .character-icon{display:block}.hero-active-effect-copy{flex-direction:column;gap:2px;min-width:0;display:flex}.hero-active-effect-copy strong{color:var(--on-surface);font-family:var(--font-display);font-size:.88rem;font-weight:700;line-height:1.15}.hero-active-effect-stat{color:var(--tertiary);font-family:var(--font-mono);letter-spacing:.02em;font-size:.68rem;font-weight:700}.hero-active-effect-timer{color:var(--outline);font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;flex-shrink:0;font-size:.65rem;font-weight:700}.hero-active-effect-bar{background:#0000006b;border:1px solid #aa898438;height:4px;overflow:hidden}.hero-active-effect-bar i{background:linear-gradient(90deg, var(--secondary), #e9c1768c);height:100%;transition:width .4s;display:block}.hero-active-effect--maxHp .hero-active-effect-badge{color:#e88;border-color:#9f000073}.hero-active-effect--maxHp .hero-active-effect-bar i{background:linear-gradient(90deg,#9f0000,#9f000073)}.hero-active-effect--defense .hero-active-effect-badge{color:#d4a574;border-color:#7b5b0073}.hero-active-effect--defense .hero-active-effect-bar i{background:linear-gradient(90deg,#7b5b00,#7b5b0073)}.hero-active-effect--accuracy .hero-active-effect-badge{color:#b8cf88;border-color:#b8cf8873}.hero-active-effect--accuracy .hero-active-effect-bar i{background:linear-gradient(90deg,#6a8a3a,#b8cf8873)}.hero-active-effect--debuff{background:linear-gradient(135deg,#8b00001f,#0000 55%),#0e0e0e8c;border-color:#8b000059}.hero-active-effect--debuff .hero-active-effect-stat{color:#e88}.hero-active-effect--debuff .hero-active-effect-bar i{background:linear-gradient(90deg, var(--primary), #8b000073)}.hero-tactic-list strong{color:var(--secondary);font-family:var(--font-mono);text-align:right}.hero-tactic-list{margin:0;padding:0;list-style:none}.hero-resistance-list{grid-template-columns:1fr;gap:5px;display:grid}.hero-resistance-row{background:#0000002e;border:1px solid #aa898429;grid-template-columns:18px minmax(0,6.75rem) minmax(2.5rem,1fr) 2.75rem;align-items:center;column-gap:.45rem;min-width:0;padding:.3rem .4rem;display:grid}.hero-resistance-row>.labeled-hint{min-width:0}.hero-resistance-row>.labeled-hint,.hero-resistance-row>.labeled-hint span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.hero-resistance-bar{background:#00000080;border:1px solid #aa89843d;min-width:0;height:6px;overflow:hidden}.hero-resistance-bar-fill{height:100%;width:var(--resistance-width,0%);background:var(--resistance-fill,linear-gradient(90deg, var(--primary), var(--secondary)));display:block}.hero-resistance-value-tip{justify-content:flex-end;min-width:0;display:flex}.hero-resistance-row--weak{border-color:#d6454566}.hero-resistance-row--weak .hero-resistance-total-value{color:#e08a8a}.hero-resistance-total{width:100%;color:var(--secondary);font-family:var(--font-mono);white-space:nowrap;justify-content:flex-end;align-items:center;gap:.25rem;font-size:.78rem;font-weight:700;display:inline-flex}.hero-resistance-total-value{font-variant-numeric:tabular-nums;text-align:right;min-width:1.85rem}.hero-resistance-source-dots{justify-content:flex-start;align-items:center;gap:3px;width:.7rem;display:inline-flex}.hero-resistance-source-dot{border-radius:50%;flex-shrink:0;width:5px;height:5px;display:block}.hero-resistance-source-dot--talent{background:var(--secondary);box-shadow:0 0 4px color-mix(in srgb, var(--secondary) 50%, transparent)}.hero-resistance-source-dot--equip{background:var(--tertiary);box-shadow:0 0 4px color-mix(in srgb, var(--tertiary) 50%, transparent)}.hero-resistance-groups{gap:var(--unit-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}@media (max-width:820px){.hero-resistance-groups{grid-template-columns:1fr}}.hero-resistance-group{gap:var(--unit-1);align-content:start;min-width:0;display:grid}.hero-resistance-group-title{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--outline);margin:0 0 2px;font-size:.6rem;font-weight:700}.hero-resistance-icon{flex-shrink:0}.hero-stat-tile-label{align-items:center;gap:5px;display:inline-flex}.hero-stat-tile .hero-stat-tile-glyph{flex-shrink:0;display:inline-flex}.hero-stat-tile-icon{display:block}.hero-mastery-chips{gap:var(--unit-1);flex-wrap:wrap;display:flex}.hero-mastery-chip{border:1px solid var(--outline-variant);max-width:100%;font-family:var(--font-mono);color:var(--on-surface-variant);background:#0e0e0e99;align-items:center;gap:6px;padding:3px 8px 3px 3px;font-size:.68rem;display:inline-flex}.hero-mastery-chip-glyph{border:1px solid var(--secondary-container);width:20px;height:20px;color:var(--secondary);background:#60440340;place-items:center;font-size:.66rem;font-weight:700;display:grid}.hero-mastery-chip-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.hero-equipment-sets-panel{padding-top:var(--unit-3)}.hero-equipment-sets-panel h3{margin-bottom:var(--unit-2);font-size:1rem}.hero-equipment-sets-grid{gap:var(--unit-2);flex-direction:column;display:flex}.hero-equipment-set-card{padding:var(--unit-2) var(--unit-3);border:1px solid color-mix(in srgb, var(--outline-variant) 38%, transparent);border-left:2px solid color-mix(in srgb, var(--outline-variant) 55%, transparent);background:linear-gradient(160deg, #ffdad405, transparent 42%), color-mix(in srgb, var(--surface-container-low) 92%, transparent);border-radius:0;flex-direction:column;gap:6px;display:flex;box-shadow:inset 0 0 10px #0000006b}.hero-equipment-set-card.is-active{border-left-color:color-mix(in srgb, var(--secondary) 55%, var(--outline-variant));background:linear-gradient(160deg, #ffdad40a, transparent 42%), color-mix(in srgb, var(--secondary) 6%, var(--surface-container-low))}.hero-equipment-set-head{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.hero-equipment-set-icon{opacity:.9;flex-shrink:0}.hero-equipment-set-head .text-label-caps{flex:1;min-width:0;line-height:1.2}.hero-equipment-set-badge{border:1px solid color-mix(in srgb, var(--outline-variant) 45%, transparent);font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--text-tertiary);background:#00000047;border-radius:0;align-items:center;padding:2px 6px;font-size:.58rem;font-weight:700;line-height:1.2;display:inline-flex}.hero-equipment-set-card.is-active .hero-equipment-set-badge{border-color:color-mix(in srgb, var(--secondary) 40%, var(--outline-variant));color:var(--text-accent)}.hero-equipment-set-value{font-family:var(--font-display);font-variant:small-caps;letter-spacing:.03em;color:var(--text-accent);margin:0;font-size:.9rem;font-weight:700;line-height:1.25}.hero-equipment-set-hint{color:var(--text-tertiary);margin:0;font-size:.74rem;line-height:1.45}.hero-equipment-set-card.is-progress{border-left-color:color-mix(in srgb, var(--outline-variant) 70%, transparent)}.hero-equipment-set-bonuses{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.hero-equipment-set-bonuses li{color:var(--on-surface);flex-wrap:wrap;gap:.35em;font-size:.78rem;line-height:1.35;display:flex}.hero-equipment-set-bonuses li .muted{color:var(--text-tertiary)}.hero-status-identity .character-sheet-portrait-frame{border-color:var(--secondary-container);position:relative;box-shadow:inset 0 0 0 1px #e9c17652,inset 0 0 22px #000000b8,0 0 14px #8b000038}.hero-status-identity .character-sheet-portrait-frame:after{content:"";pointer-events:none;background:radial-gradient(circle at 50% 118%,#8b000066,#0000 62%);position:absolute;inset:0}.hero-status-identity .character-sheet-portrait-frame:before{content:"";z-index:2;pointer-events:none;background:linear-gradient(var(--secondary), var(--secondary)) left top / 13px 2px no-repeat, linear-gradient(var(--secondary), var(--secondary)) left top / 2px 13px no-repeat, linear-gradient(var(--secondary), var(--secondary)) right top / 13px 2px no-repeat, linear-gradient(var(--secondary), var(--secondary)) right top / 2px 13px no-repeat, linear-gradient(var(--secondary), var(--secondary)) left bottom / 13px 2px no-repeat, linear-gradient(var(--secondary), var(--secondary)) left bottom / 2px 13px no-repeat, linear-gradient(var(--secondary), var(--secondary)) right bottom / 13px 2px no-repeat, linear-gradient(var(--secondary), var(--secondary)) right bottom / 2px 13px no-repeat;opacity:.55;position:absolute;inset:5px}.ability-loadout-shell{gap:var(--unit-5);display:grid}.ability-loadout-head{gap:var(--unit-4);justify-content:space-between;align-items:flex-start;display:flex}.ability-loadout-head p{max-width:72ch;margin:var(--unit-2) 0 0}.ability-loadout-count{min-width:120px;padding:var(--unit-3);border:1px solid var(--outline-variant);background:#0e0e0e7a;place-items:center;display:grid}.ability-loadout-count strong{color:var(--secondary);font-family:var(--font-display);font-size:2rem}.ability-loadout-count span{font-family:var(--font-mono);color:var(--outline);text-transform:uppercase;font-size:.68rem}.ability-slot-grid{gap:var(--unit-3);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.ability-slot{gap:var(--unit-2);min-height:150px;padding:var(--unit-4);color:var(--on-surface-variant);text-align:center;background:#0e0e0e66;border:2px dashed #aa89846b;align-content:center;justify-items:center;display:grid;position:relative}.ability-slot-filled{background:radial-gradient(circle at 50% 0%, #8b00003d, transparent 58%), var(--surface-container);color:var(--on-surface);border-style:solid;border-color:#ffb4a885}.ability-slot-cost{top:var(--unit-2);right:var(--unit-2);color:var(--secondary);font-family:var(--font-mono);background:#0e0e0eb8;padding:2px 6px;font-size:.65rem;position:absolute}.ability-slot-damage-type{top:var(--unit-2);left:var(--unit-2);background:#0e0e0eb8;border:1px solid #aa898447;place-items:center;padding:2px;display:grid;position:absolute}.ability-slot-icon,.ability-slot-empty-plus{color:var(--primary);font-size:1.8rem}.ability-slot strong,.ability-library-card strong{font-family:var(--font-display);color:var(--on-surface);font-size:1.1rem}.ability-library-empty{justify-content:center;align-items:center;gap:var(--unit-2);margin-top:var(--unit-2);padding:var(--unit-5) var(--unit-4);text-align:center;background:radial-gradient(circle at 50% 0,#ffb4a814,#0000 55%),linear-gradient(160deg,#ffdad40a,#0000 50%),#00000047;border:1px dashed #aa898473;flex-direction:column;display:flex;box-shadow:inset 0 0 18px #00000073}.ability-library-empty-icon{opacity:.72;filter:drop-shadow(0 0 8px color-mix(in srgb, var(--secondary) 22%, transparent))}.ability-library-empty-title{color:var(--secondary);font-family:var(--font-display);letter-spacing:.02em;margin:0;font-size:1.1rem;font-weight:400;line-height:1.2}.ability-library-empty-hint{max-width:42ch;color:var(--on-surface-variant);font-family:var(--font-prose);margin:0;font-size:.8rem;line-height:1.45}.ability-library-empty-link{margin-top:var(--unit-1);color:var(--secondary);font-family:var(--font-mono);letter-spacing:.05em;text-transform:uppercase;background:linear-gradient(160deg,#60440338,#0000 55%),#0000006b;border:1px solid #e9c17666;align-items:center;gap:.4rem;padding:.4rem .75rem;font-size:.68rem;font-weight:700;text-decoration:none;transition:border-color .15s,color .15s,background .15s;display:inline-flex}.ability-library-empty-link:hover{border-color:var(--secondary);color:#f5ddb0;background:linear-gradient(160deg,#60440359,#0000 55%),#00000080}.ability-library-list{gap:var(--unit-3);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));display:grid}.ability-library-card{gap:var(--unit-3);min-height:88px;padding:var(--unit-3) var(--unit-4);border:2px solid var(--outline-variant);color:var(--on-surface);background:linear-gradient(160deg, #e9c1760d, transparent 42%), var(--surface-container);grid-template-columns:auto 1fr;align-items:center;transition:transform .15s,border-color .15s,box-shadow .15s;display:grid;position:relative;box-shadow:inset 0 0 12px #000000b8,0 6px 14px #0000006b}.ability-library-card-icon{background:radial-gradient(circle at 50% 20%,#ffdad41a,#0000 58%),#0e0e0e8c;border:2px solid #aa89848c;flex-shrink:0;place-items:center;width:52px;height:52px;display:grid;box-shadow:inset 0 0 10px #0000008c}.ability-library-card-body{gap:var(--unit-2);min-width:0;display:grid}.ability-library-card-meta{gap:var(--unit-2);flex-wrap:wrap;align-items:center;display:flex}.ability-library-card-cost,.ability-library-card-range,.ability-library-card-damage{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;background:#0e0e0e8c;border:1px solid #aa89846b;align-items:center;gap:4px;padding:2px 8px;font-size:.62rem;display:inline-flex}.ability-library-card-damage{border-color:#aa89843d;padding:2px 4px}.ability-library-card-cost{color:var(--secondary);border-color:#e9c17659}.ability-library-card-cost .resource-cost-badge,.ability-slot-cost .resource-cost-badge{text-transform:none;letter-spacing:0;font-size:inherit}.ability-library-card-range{color:var(--on-surface-variant)}.ability-loadout-actions{align-items:center;gap:var(--unit-3);margin:var(--unit-4) 0;flex-wrap:wrap;display:flex}.ability-slot-selected{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}.ability-library-card-btn{text-align:left;cursor:pointer;width:100%}.ability-library-card-btn:hover{border-color:var(--secondary);transform:translateY(-2px)}.ability-library-card-btn:hover .ability-library-card-icon{border-color:#e9c1768c;box-shadow:inset 0 0 10px #0000008c,0 0 10px #e9c1762e}.ability-library-card-assigned{background:radial-gradient(circle at 0% 0%, #8b00002e, transparent 52%), var(--surface-container);cursor:default;opacity:.82;border-color:#ffb4a86b}.ability-library-card-assigned:hover{border-color:#ffb4a86b;transform:none}.ability-library-card-assigned:after{content:"En barre";top:var(--unit-2);right:var(--unit-2);color:var(--primary);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;background:#8b000047;border:1px solid #ffb4a859;padding:2px 6px;font-size:.58rem;position:absolute}@media (max-width:1100px){.character-tabs,.ability-slot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.talent-shell,.soul-forge-panel,.hero-status-layout{grid-template-columns:1fr}.hero-status-identity{max-height:none;position:static;overflow:visible}.hero-identity-head{gap:var(--unit-3);grid-template-columns:minmax(148px,200px) minmax(0,1fr);align-items:start}.hero-status-identity .character-sheet-portrait-frame{aspect-ratio:1;width:100%;max-width:200px}.hero-identity-copy{align-content:start}.hero-status-ledger{max-width:18rem}.soul-forge-form{border-right:0;border-bottom:1px solid var(--outline-variant)}}@media (max-width:760px){.character-tabs,.hero-status-panels,.hero-status-meta-grid,.hero-combat-duo,.ability-slot-grid{grid-template-columns:1fr}.hero-identity-head{gap:var(--unit-2);grid-template-columns:72px minmax(0,1fr);align-items:start}.hero-status-identity .character-sheet-portrait-frame{aspect-ratio:1;width:72px;max-width:72px;max-height:none}.hero-status-identity .character-sheet-portrait-img{object-fit:cover;object-position:center top}.hero-status-identity .character-sheet-portrait-fallback{font-size:1.6rem}.hero-status-identity .character-sheet-name{font-size:1.15rem}.hero-status-identity .character-sheet-epitaph{font-size:.72rem}.hero-status-ledger{max-width:none;padding:6px 8px}.hero-status-progress .character-summary-grid,.hero-status-panels .hero-titles-slots,.hero-status-panels .hero-titles-list,.hero-resistance-list{grid-template-columns:1fr}.talent-canvas-head,.ability-loadout-head,.soul-preview-actions{flex-direction:column;align-items:stretch}}.hero-inspect-overlay{z-index:130}.hero-inspect-dialog{width:min(100%,520px);max-height:min(90vh,720px)}.hero-inspect-dialog-body{padding:var(--unit-4);background:var(--surface-container-lowest);overflow:auto}.hero-inspect-loading,.hero-inspect-error{padding:var(--unit-6) var(--unit-3);text-align:center}.hero-inspect-sheet{gap:var(--unit-4);display:grid}.hero-inspect-identity{gap:var(--unit-4);grid-template-columns:88px 1fr;align-items:center;display:grid}.hero-inspect-portrait-frame{border:2px solid var(--outline-variant);background:var(--surface-container-low);place-items:center;width:88px;height:88px;display:grid;overflow:hidden}.hero-inspect-portrait-img{object-fit:cover;width:100%;height:100%}.hero-inspect-portrait-fallback{font-family:var(--font-display);color:var(--secondary);font-size:2rem}.hero-inspect-name{font-family:var(--font-display);color:var(--on-surface);margin:0;font-size:1.45rem}.hero-inspect-you{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--secondary);margin-top:2px;font-size:.68rem;display:inline-block}.hero-inspect-titles{margin:var(--unit-2) 0 0;color:var(--outline);font-size:.85rem}.hero-inspect-section{margin:0}.hero-inspect-combat-duo{gap:var(--unit-3);grid-template-columns:1fr 1fr;display:grid}.hero-inspect-resistances .hero-resistance-groups{gap:var(--unit-3)}.hero-inspect-power .hero-power-panel{margin:0}.party-member-name-row{align-items:center;gap:var(--unit-2);display:inline-flex}.party-inspect-btn{opacity:.7}.party-inspect-btn:hover{opacity:1}@media (max-width:560px){.hero-inspect-identity{grid-template-columns:72px 1fr}.hero-inspect-portrait-frame{width:72px;height:72px}.hero-inspect-combat-duo{grid-template-columns:1fr}}.faction-hq-shop{padding:var(--unit-3);border:1px solid color-mix(in srgb,var(--outline-variant) 50%,transparent);background:color-mix(in srgb,var(--surface-container-high) 92%,transparent);min-width:0;margin:0}.faction-hq-shop-banner{gap:var(--unit-3);margin-bottom:var(--unit-2);padding-bottom:var(--unit-2);border-bottom:1px solid color-mix(in srgb,var(--outline-variant) 40%,transparent);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;display:flex}.faction-hq-shop-banner-main{gap:var(--unit-2);flex:16rem;align-items:flex-start;min-width:0;display:flex}.faction-hq-shop-banner-main h2{margin:0 0 .25rem;font-size:1.15rem}.faction-hq-shop-kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--on-surface-variant);margin-bottom:.15rem;font-size:.72rem;display:block}.faction-hq-shop-standing{text-align:right;flex-direction:column;align-items:flex-end;gap:.2rem;min-width:8rem;display:flex}.faction-hq-shop-standing strong{color:var(--primary);font-variant-numeric:tabular-nums;font-size:1.35rem;line-height:1.1}.faction-hq-shop-wallet{margin-top:.25rem;font-size:.85rem}.faction-hq-shop-notice{margin:0 0 var(--unit-2);font-size:.9rem}.faction-hq-shop-designer{margin:0 0 var(--unit-2);border-left:2px solid var(--tertiary);background:color-mix(in srgb,var(--tertiary) 10%,transparent);padding:.5rem .75rem;font-size:.85rem}.faction-hq-shop-status{margin:0 0 var(--unit-2)}.faction-hq-shop-status.ok{color:var(--primary)}.faction-hq-shop-status.err{color:var(--error)}.faction-hq-shop-tiers{gap:var(--unit-3);flex-direction:column;display:flex}.faction-hq-tier{padding:var(--unit-2);border:1px solid color-mix(in srgb,var(--outline-variant) 45%,transparent);background:color-mix(in srgb,var(--surface) 88%,transparent)}.faction-hq-tier.is-locked-tier{opacity:.88}.faction-hq-tier.is-unlocked{border-color:color-mix(in srgb,var(--primary) 35%,var(--outline-variant))}.faction-hq-tier-head{justify-content:space-between;gap:var(--unit-1);margin-bottom:var(--unit-2);flex-wrap:wrap;align-items:baseline;display:flex}.faction-hq-tier-head h3{margin:0;font-size:.95rem}.faction-hq-tier-badge{letter-spacing:.04em;text-transform:uppercase;color:var(--on-surface-variant);font-size:.75rem}.faction-hq-tier-badge.ok{color:var(--primary)}.faction-hq-tier-grid{gap:var(--unit-2);flex-direction:column;display:flex}.faction-hq-offer.is-locked{opacity:.7}.faction-hq-offer-icon-btn{appearance:none;cursor:pointer;background:0 0;border:0;border-radius:2px;margin:0;padding:0;line-height:0}.faction-hq-offer-icon-btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.faction-hq-req{color:var(--on-surface-variant);font-size:.82rem;display:block}.faction-hq-req.locked{color:var(--tertiary)}.faction-hq-shop-lock{color:var(--tertiary);font-size:.85em;display:block}
