.wedding-scene-host{position:relative;isolation:isolate}.wedding-preview-root{position:relative;width:100%;height:100%;overflow:hidden;display:flex;align-items:center;justify-content:center}.wedding-preview-stage{position:relative;width:1080px;height:1920px;flex-shrink:0;transform-origin:center center;display:flex;flex-direction:column}.wedding-preview-chrome{position:absolute;inset:0;z-index:10;pointer-events:none}.wedding-preview-chrome button{pointer-events:auto}.wp-header-card{position:absolute;top:130px;left:50%;transform:translateX(-50%);width:540px;height:200px}.wp-faction-glyph{position:absolute;left:-56px;top:76px;width:60px;height:67px;z-index:2}.wp-faction-glyph img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 2px 4px rgba(0,0,0,.6))}.wp-quality-bg{position:absolute;left:0;top:30px;width:540px;height:140px}.wp-quality-bg-img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.wp-quality-letter{position:absolute;left:20px;top:36px;width:108px;height:72px;object-fit:contain;z-index:2;filter:drop-shadow(0 2px 4px rgba(0,0,0,.4))}.wp-hero-name{left:126px;top:50%;transform:translateY(-50%);width:396px;font-weight:400;color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.95),0 0 10px rgba(0,0,0,.8);white-space:normal;align-items:center;justify-content:center;text-align:center;letter-spacing:.3px;line-height:1.15;font-size:clamp(22px,calc(396px / var(--name-len, 1) * 1.7),38px)}.wp-element-shields,.wp-hero-name{position:absolute;display:flex;z-index:3}.wp-element-shields{top:308px;left:50%;transform:translateX(-50%);gap:12px}.wp-class-icon{width:58px;height:58px;display:flex;align-items:center;justify-content:center;filter:drop-shadow(0 2px 4px rgba(0,0,0,.55))}.wp-class-icon img{width:100%;height:100%;object-fit:contain}.wp-cv-line{position:absolute;top:374px;left:50%;transform:translateX(-50%);padding:4px 14px;font-size:24px;color:hsla(0,0%,100%,.95);text-shadow:0 2px 4px rgba(0,0,0,.95),0 0 8px rgba(0,0,0,.8);white-space:nowrap;background:rgba(0,0,0,.35);border-radius:6px;z-index:3}.wp-nav-arrow{position:absolute;top:960px;width:76px;height:96px;padding:0;border:none;background:transparent;cursor:pointer;transition:transform .12s ease,opacity .12s ease;opacity:.85}.wp-nav-arrow:hover{opacity:1;transform:scale(1.1)}.wp-nav-arrow:active{transform:scale(.95)}.wp-nav-arrow img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 2px 6px rgba(0,0,0,.7))}.wp-nav-arrow-left{left:32px;transform:scaleX(-1)}.wp-nav-arrow-left:hover{transform:scaleX(-1) scale(1.1)}.wp-nav-arrow-left:active{transform:scaleX(-1) scale(.95)}.wp-nav-arrow-right{right:32px}.wp-bottom-back{position:absolute;left:0;bottom:0;width:140px;height:140px;display:flex;align-items:center;justify-content:center;pointer-events:auto;z-index:12;background:transparent;border:none;padding:0;cursor:pointer;transition:transform .12s ease,filter .12s ease}.wp-bottom-back:hover{transform:scale(1.05);filter:brightness(1.15)}.wp-bottom-back:active{transform:scale(.95)}.wp-bottom-back img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 4px 8px rgba(0,0,0,.7))}.wedding-overlay-top{position:absolute;top:460px;left:24px;z-index:2;pointer-events:none;transition:opacity .2s ease,transform .2s ease}.wedding-chrome-buttons{display:flex;flex-direction:column;gap:20px;pointer-events:auto}.wedding-chrome-btn{display:flex;align-items:center;justify-content:center;width:96px;height:96px;padding:0;background:transparent;border:none;border-radius:50%;cursor:pointer;transition:transform .12s ease,filter .12s ease}.wedding-chrome-btn img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 4px 8px rgba(0,0,0,.55))}.wedding-chrome-btn:hover{transform:scale(1.05);filter:brightness(1.1) drop-shadow(0 4px 10px rgba(0,0,0,.55))}.wedding-chrome-btn:active{transform:scale(.95)}.wedding-chrome-btn.is-active img{filter:drop-shadow(0 0 12px rgba(255,200,140,.85)) drop-shadow(0 4px 8px rgba(0,0,0,.55))}.wedding-overlay-bottom{position:absolute;left:0;right:0;bottom:0;z-index:2;display:flex;flex-direction:column;gap:18px;padding:24px 30px 30px;background:linear-gradient(0deg,rgba(8,4,12,.7) 0,rgba(8,4,12,.45) 60%,transparent);pointer-events:none;transition:opacity .2s ease,transform .2s ease}.wedding-overlay-bottom>*{pointer-events:auto}.wedding-drag-progress{position:absolute;top:0;left:0;right:0;height:8px;z-index:3;pointer-events:none;background:rgba(8,4,12,.4);overflow:hidden}.wedding-drag-progress-fill{height:100%;background:linear-gradient(90deg,rgba(255,184,138,.6),rgba(255,220,178,.95));transition:width 30ms linear,background .2s ease;box-shadow:0 0 8px rgba(255,200,160,.6)}.wedding-drag-progress.is-committed .wedding-drag-progress-fill{background:linear-gradient(90deg,rgba(255,138,110,.85),#ffc49e);box-shadow:0 0 14px rgba(255,160,130,.85)}.wedding-item-rail{display:flex;justify-content:center;gap:10px;flex-wrap:nowrap;padding:6px 12px}.wedding-item-card{position:relative;width:105px;height:105px;padding:0;border:none;background:transparent;cursor:pointer;transition:transform .12s ease,filter .12s ease;flex-shrink:0}.wedding-item-card:hover{transform:translateY(-2px) scale(1.05);filter:brightness(1.15)}.wedding-item-card:active{transform:scale(.95)}.wedding-item-card.is-active{filter:drop-shadow(0 0 6px rgba(255,150,200,.85))}.wedding-item-card.is-stat-only{opacity:.85}.wedding-item-frame,.wedding-item-icon{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.wedding-item-frame{z-index:1}.wedding-item-icon{z-index:2;object-fit:contain;padding:9px}.wedding-item-badge{position:absolute;top:4px;right:7px;z-index:3;font-size:17px;color:#fff7c4;text-shadow:0 1px 2px rgba(0,0,0,.85);pointer-events:none}.wedding-action-bar{display:flex;justify-content:center;gap:24px}.wedding-action-btn{width:300px;height:92px;padding:0;font-size:30px;font-weight:700;letter-spacing:.04em;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.6);background:transparent no-repeat 50%/100% 100%;border:none;border-radius:0;cursor:pointer;transition:transform .12s ease,filter .12s ease}.wedding-action-remove{background-image:url(/ui/icons/atlas_common_house/common_house_btn_big_red.png)}.wedding-action-wear{background-image:url(/ui/icons/atlas_common_house/common_house_btn_big_yellow.png);color:#4a2515;text-shadow:0 1px 2px rgba(255,240,180,.55)}.wedding-action-btn:hover{transform:translateY(-1px);filter:brightness(1.08)}.wedding-action-btn:active{transform:scale(.97);filter:brightness(.95)}.wedding-modal-overlay{position:fixed;inset:0;z-index:1000;background:rgba(0,0,0,.62);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;animation:wedding-modal-fade-in .16s ease-out;padding:20px}@keyframes wedding-modal-fade-in{0%{opacity:0}to{opacity:1}}.wedding-modal-dialog{position:relative;width:min(500px,92vw);color:#3a1f4a;filter:drop-shadow(0 18px 38px rgba(40,14,60,.55));animation:wedding-modal-scale-in .2s cubic-bezier(.16,1,.3,1);padding:44px 22px 22px;border-radius:18px;background:linear-gradient(180deg,#f6ecfa,#eadcf2 55%,#e2d0ee);box-shadow:0 0 0 1px rgba(157,110,184,.55),inset 0 0 0 2px hsla(0,0%,100%,.7),inset 0 0 0 4px rgba(196,162,220,.45),0 24px 48px rgba(40,14,60,.45);box-sizing:border-box;overflow:visible}.wedding-modal-dialog:before{content:"";position:absolute;top:-8px;left:-8px;width:120px;height:120px;pointer-events:none;background:radial-gradient(circle at 30% 35%,rgba(255,180,220,.55) 0,rgba(255,180,220,.22) 22%,transparent 48%),radial-gradient(circle at 55% 55%,rgba(196,162,220,.7) 0,rgba(196,162,220,.28) 30%,transparent 60%);filter:blur(.5px);border-top-left-radius:18px}@keyframes wedding-modal-scale-in{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.wedding-modal-title-plate{position:absolute;top:12px;left:22px;display:flex;align-items:center;padding:6px 14px;z-index:2;border-radius:999px;background:linear-gradient(180deg,#8d5aae,#5e2e85);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.25),0 2px 4px rgba(40,14,60,.4)}.wedding-modal-title-text{position:relative;z-index:1;font-size:14px;font-weight:700;color:#fff;letter-spacing:.04em;text-shadow:0 1px 2px rgba(40,14,60,.55);font-style:italic}.wedding-modal-close{position:absolute;top:12px;right:14px;width:28px;height:28px;background:linear-gradient(180deg,#f4eaf6,#d8c0ea);border:1px solid rgba(110,70,145,.55);border-radius:50%;padding:0;cursor:pointer;z-index:3;transition:transform .12s ease,background .12s ease;display:flex;align-items:center;justify-content:center;color:#5e2e85;font-size:18px;font-weight:700;line-height:1;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.7),0 2px 3px rgba(40,14,60,.25)}.wedding-modal-close:hover{transform:scale(1.06);background:linear-gradient(180deg,#fff,#e6d5f0)}.wedding-modal-close:active{transform:scale(.96)}.wedding-modal-body{display:flex;flex-direction:column;gap:14px;padding:6px 6px 4px}.wedding-modal-header{display:grid;grid-template-columns:88px 1fr auto;grid-gap:12px;gap:12px;align-items:center}.wedding-modal-icon-wrap{position:relative;width:88px;height:88px}.wedding-modal-icon,.wedding-modal-icon-frame{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.wedding-modal-icon-frame{z-index:1}.wedding-modal-icon{z-index:2;padding:8px;object-fit:contain}.wedding-modal-titles{display:flex;flex-direction:column;gap:4px;min-width:0}.wedding-modal-name{margin:0;font-size:18px;font-weight:700;color:#b15ad6;line-height:1.2;letter-spacing:.01em}.wedding-modal-slot{margin:0;font-size:13px;color:#3a1f4a;font-weight:600}.wedding-modal-badge{display:inline-block;margin-top:2px;font-weight:600;padding:2px 10px;border-radius:999px;background:linear-gradient(180deg,#d4b8e6,#b88dd2);color:#fff;width:max-content;text-shadow:0 1px 1px rgba(40,14,60,.4)}.wedding-modal-badge,.wedding-modal-in-use{font-size:11px;border:1px solid rgba(110,70,145,.45)}.wedding-modal-in-use{align-self:flex-start;margin-top:6px;font-weight:700;color:#5e2e85;letter-spacing:.04em;padding:2px 8px;border-radius:6px;background:rgba(196,162,220,.25)}.wedding-modal-section{padding-top:4px}.wedding-modal-section-title{margin:0 0 8px;font-size:13px;font-weight:700;color:#5e2e85;letter-spacing:.04em;display:flex;align-items:center;gap:6px;padding:4px 12px;border-radius:6px 14px 14px 6px;background:linear-gradient(90deg,rgba(196,162,220,.55),rgba(196,162,220,.18) 75%,transparent);border-left:3px solid #8d5aae}.wedding-modal-info-icon{font-size:12px;color:#8d5aae;cursor:help;margin-left:auto}.wedding-modal-attr-list{list-style:none;margin:0;padding:0 4px;display:flex;flex-direction:column;gap:4px}.wedding-modal-attr{display:flex;justify-content:space-between;font-size:13px;color:#3a1f4a}.wedding-modal-attr-label{color:#c47a52;font-weight:600}.wedding-modal-attr-value{font-weight:700;color:#c47a52}.wedding-modal-flavor{margin:0;font-size:12px;font-style:italic;color:#6e4a85;line-height:1.5;padding:6px 0}.wedding-modal-toggle-row{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;margin-top:4px;background:hsla(0,0%,100%,.55);border:1px solid rgba(196,162,220,.45);border-radius:10px}.wedding-modal-toggle-label{font-size:13px;font-weight:600;color:#3a1f4a}.wedding-modal-toggle{position:relative;width:64px;height:28px;border-radius:999px;border:1px solid rgba(110,70,145,.45);background:linear-gradient(180deg,#d8c0e8,#b69ad0);cursor:pointer;transition:background .2s ease,border-color .2s ease;padding:0}.wedding-modal-toggle.is-on{background:linear-gradient(180deg,rgba(180,120,220,.95),rgba(110,60,165,.95));border-color:rgba(220,190,240,.85)}.wedding-modal-toggle.is-disabled{opacity:.5;cursor:not-allowed}.wedding-modal-toggle-knob{display:block;font-size:10px;font-weight:700;letter-spacing:.06em;color:#fff;text-align:center;line-height:28px;text-shadow:0 1px 1px rgba(40,14,60,.45)}@media (max-width:768px){.wedding-overlay-top,.wp-nav-arrow-left{left:96px}.wp-nav-arrow-right{right:96px}.wp-bottom-back{left:96px;bottom:0}.wedding-item-card{width:140px;height:140px}.wedding-item-icon{padding:13px}.wedding-item-badge{font-size:22px;top:5px;right:8px}.wedding-item-rail{flex-wrap:wrap;gap:16px;padding:10px 20px}.wedding-overlay-bottom{padding:24px 96px 30px}.wedding-modal-dialog{padding:40px 14px 16px}.wedding-modal-title-plate{top:10px;left:14px;padding:5px 12px}.wedding-modal-title-text{font-size:13px}.wedding-modal-close{top:10px;right:10px;width:26px;height:26px;font-size:16px}.wedding-modal-dialog:before{width:96px;height:96px}.wedding-modal-header{grid-template-columns:72px 1fr;grid-template-rows:auto auto}.wedding-modal-icon-wrap{width:72px;height:72px}.wedding-modal-in-use{grid-column:1/-1}}.soul-sections-wrap{flex:1 1;overflow-y:auto;padding:0;display:flex;flex-direction:column}.soul-legend{display:flex;flex-wrap:wrap;gap:14px;padding:14px 24px;margin:16px 24px 0;background:hsla(0,0%,100%,.02);border:1px solid hsla(0,0%,100%,.06);border-radius:10px}.soul-legend-item{display:flex;align-items:flex-start;gap:10px;flex:1 1;min-width:260px}.soul-legend-tag{flex-shrink:0;padding:3px 10px;border-radius:999px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;border:1px solid;align-self:center}.soul-legend-tag-standard{color:#93c5fd;background:rgba(59,130,246,.14);border-color:rgba(59,130,246,.4)}.soul-legend-tag-limited{color:#fcd34d;background:rgba(234,179,8,.16);border-color:rgba(234,179,8,.5)}.soul-legend-text{font-size:12px;line-height:1.4;color:var(--text-dim)}.soul-set-grid{padding:24px;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:24px;gap:24px;align-content:start}.soul-set-group{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:8px;gap:8px;padding:14px;border-radius:14px;background:hsla(0,0%,100%,.02);border:1px solid hsla(0,0%,100%,.05);transition:background .2s,border-color .2s}.soul-set-group:hover{background:hsla(0,0%,100%,.035);border-color:hsla(0,0%,100%,.09)}.soul-set-events,.soul-set-primary{display:flex;justify-content:center}.soul-set-events{flex-wrap:wrap;gap:8px;padding-top:8px;border-top:1px dashed hsla(0,0%,100%,.07)}.soul-card{display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer;transition:transform .15s}.soul-card:hover{transform:translateY(-3px) scale(1.03)}.soul-card-size-default{width:100%;max-width:180px}.soul-card-size-event{width:56px;gap:0}.soul-card-inner{position:relative;width:100%;aspect-ratio:1;overflow:hidden}.soul-card-inner img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;pointer-events:none}.soul-frame{z-index:0}.soul-art{z-index:1;transform:scale(.62)}.soul-shimmer{position:absolute;inset:0;z-index:2;overflow:hidden;pointer-events:none;border-radius:50%;mask-image:radial-gradient(circle at center,#000 42%,transparent 43%);-webkit-mask-image:radial-gradient(circle at center,#000 42%,transparent 43%)}.soul-shimmer:before{content:"";position:absolute;top:-50%;left:-80%;width:50%;height:200%;background:linear-gradient(105deg,transparent 30%,rgba(200,180,255,.15) 45%,hsla(0,0%,100%,.25) 50%,rgba(200,180,255,.15) 55%,transparent 70%);animation:soul-sweep 3s ease-in-out infinite}@keyframes soul-sweep{0%{transform:translateX(0)}to{transform:translateX(400%)}}.soul-card-name{font-size:13px;color:var(--text);text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-weight:500;letter-spacing:.02em}.soul-event-badge{bottom:2px;right:2px;font-size:8px;color:#ffca6a;background:rgba(0,0,0,.55);padding:1px 4px;border-radius:3px;font-weight:600;letter-spacing:.05em}.soul-card-tag,.soul-event-badge{position:absolute;z-index:3;text-transform:uppercase;pointer-events:none}.soul-card-tag{top:8px;right:8px;padding:3px 10px;border-radius:999px;font-size:10px;font-weight:700;letter-spacing:.08em;border:1px solid;box-shadow:0 2px 6px rgba(0,0,0,.5)}.soul-card-tag-standard{color:#dbeafe;background:rgba(29,78,216,.92);border-color:rgba(147,197,253,.9)}.soul-card-tag-limited{color:#fef3c7;background:rgba(161,98,7,.92);border-color:rgba(252,211,77,.9)}.lb-box-soul{width:min(94vw,1080px);height:min(88vh,720px)}.lb-box-soul .lb-content{display:flex;flex-direction:row;min-height:0}.lb-soul-body{flex:1 1;display:flex;align-items:center;justify-content:center;padding:32px;min-width:0;min-height:0;background:radial-gradient(circle at center,rgba(88,60,160,.12) 0,transparent 60%)}.lb-soul-art{max-width:min(100%,640px);max-height:100%;object-fit:contain;filter:drop-shadow(0 12px 28px rgba(0,0,0,.55))}.soul-detail-panel{width:min(440px,48%);flex-shrink:0;display:flex;flex-direction:column;gap:16px;padding:18px;overflow-y:auto;background:rgba(12,12,18,.95);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-left:1px solid var(--border);color:var(--text)}.soul-detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.soul-detail-header-left{display:flex;align-items:center;gap:14px;min-width:0;flex:1 1}.soul-detail-set-icon{width:56px;height:56px;flex-shrink:0;border-radius:10px;background:hsla(0,0%,100%,.04);padding:6px;object-fit:contain}.soul-detail-title{display:flex;flex-direction:column;gap:6px;min-width:0}.soul-detail-name{font-size:20px;font-weight:700;letter-spacing:.02em;color:#f1e7c4;text-shadow:0 1px 2px rgba(0,0,0,.5)}.soul-detail-tags{display:flex;flex-wrap:wrap;gap:6px}.soul-detail-tag{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:999px;font-size:10px;text-transform:uppercase;letter-spacing:.6px;font-weight:600;border:1px solid hsla(0,0%,100%,.12)}.soul-detail-tag-standard{color:#93c5fd;background:rgba(59,130,246,.14);border-color:rgba(59,130,246,.35)}.soul-detail-tag-limited{color:#fcd34d;background:rgba(234,179,8,.16);border-color:rgba(234,179,8,.45)}.soul-detail-tag-profession{color:var(--text-dim);background:hsla(0,0%,100%,.04)}.soul-detail-tag-icon{width:14px;height:14px;object-fit:contain}.soul-detail-desc{margin:0;font-size:13px;line-height:1.5;color:var(--text-dim)}.soul-bonus-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.soul-bonus-item{display:flex;align-items:center;gap:10px;padding:10px 12px;background:rgba(124,106,247,.08);border:1px solid rgba(124,106,247,.25);border-radius:8px}.soul-bonus-badge{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#c4b5fd;background:rgba(124,106,247,.2);padding:3px 8px;border-radius:999px;flex-shrink:0}.soul-bonus-text{font-size:13px;color:var(--text);font-weight:500}.soul-skills-section{display:flex;flex-direction:column;gap:8px}.soul-skills-header{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text-dim);padding-bottom:4px;border-bottom:1px solid hsla(0,0%,100%,.08)}.soul-skills-header-bonus{color:#fbbf24;margin-top:12px}.soul-skills-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.soul-skill-item{display:flex;gap:10px;padding:8px 10px;background:hsla(0,0%,100%,.02);border:1px solid hsla(0,0%,100%,.06);border-radius:8px}.soul-skill-icon{width:40px;height:40px;flex-shrink:0;border-radius:6px;object-fit:contain;background:rgba(0,0,0,.35)}.soul-skill-icon-empty{border:1px dashed hsla(0,0%,100%,.1)}.soul-skill-body{display:flex;flex-direction:column;gap:4px;min-width:0}.soul-skill-title-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.soul-skill-tier{font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:2px 6px;border:1px solid;border-radius:999px;opacity:.85}.soul-skill-name{font-size:13px;font-weight:700}.soul-tier-flash{background:linear-gradient(100deg,#ef4444,#f97316 7%,#fde047 14%,#4ade80 22%,#38bdf8 30%,#a78bfa 38%,#f472b6 46%,#ef4444 50%,#f97316 57%,#fde047 64%,#4ade80 72%,#38bdf8 80%,#a78bfa 88%,#f472b6 96%,#ef4444);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:soul-flash-shimmer 3s linear infinite}.soul-skill-tier.soul-tier-flash{position:relative;border:1px solid transparent;opacity:1}.soul-skill-tier.soul-tier-flash:before{content:"";position:absolute;inset:-1px;border-radius:999px;padding:1px;background:linear-gradient(100deg,#ef4444,#f97316 7%,#fde047 14%,#4ade80 22%,#38bdf8 30%,#a78bfa 38%,#f472b6 46%,#ef4444 50%,#f97316 57%,#fde047 64%,#4ade80 72%,#38bdf8 80%,#a78bfa 88%,#f472b6 96%,#ef4444);background-size:200% 100%;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:soul-flash-shimmer 3s linear infinite;pointer-events:none}@keyframes soul-flash-shimmer{0%{background-position:0 50%}to{background-position:-100% 50%}}.soul-skill-desc{margin:0;font-size:12px;line-height:1.45;color:var(--text-dim);white-space:pre-wrap}.soul-variants{display:flex;flex-direction:column;gap:8px}.soul-variants-header{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text-dim);padding-bottom:4px;border-bottom:1px solid hsla(0,0%,100%,.08)}.soul-variants-strip{display:flex;flex-wrap:wrap;gap:8px}.soul-variant-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:1px solid transparent;padding:4px;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:4px;transition:transform .15s,border-color .15s,background .15s}.soul-variant-thumb img{width:54px;height:54px;object-fit:contain}.soul-variant-thumb-label{font-size:10px;color:var(--text-dim);max-width:64px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.soul-variant-thumb:hover{background:hsla(0,0%,100%,.03);transform:translateY(-2px)}.soul-variant-thumb.is-active{border-color:var(--accent,#7c6af7);background:rgba(124,106,247,.12)}.soul-variant-thumb.is-active .soul-variant-thumb-label{color:var(--text);font-weight:600}@media (max-width:900px){.lb-box-soul .lb-content{flex-direction:column}.soul-detail-panel{width:100%;border-left:none;border-top:1px solid var(--border);max-height:55%}}.lb-box-spirit{width:min(94vw,1080px);height:min(90vh,780px)}.lb-box-spirit .lb-content{display:flex;flex-direction:row;min-height:0}.lb-preview-wrap{position:relative;flex:1 1;min-height:0;min-width:0;display:flex;flex-direction:column;overflow:hidden}.compat-heroes-rail{width:150px;flex-shrink:0;display:flex;flex-direction:column;gap:10px;padding:12px 10px;overflow-y:auto;background:rgba(12,12,18,.92);border-right:1px solid var(--border);color:var(--text)}.compat-heroes-rail-header{font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--text-dim);display:flex;align-items:center;gap:8px;padding:0 2px 6px;border-bottom:1px solid hsla(0,0%,100%,.08)}.compat-heroes-rail-count{font-size:10px;color:var(--accent);background:rgba(124,106,247,.15);padding:1px 7px;border-radius:999px;letter-spacing:0}.compat-heroes-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);grid-gap:6px;gap:6px}.compat-hero-card{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:1px solid transparent;border-radius:8px;padding:0;cursor:pointer;display:block;aspect-ratio:1/1;overflow:hidden;position:relative;transition:transform .12s,border-color .12s,box-shadow .12s}.compat-hero-card:hover{border-color:var(--accent);box-shadow:0 0 0 1px rgba(124,106,247,.45),0 4px 12px rgba(124,106,247,.2);transform:translateY(-1px)}.compat-hero-card:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px var(--accent)}.compat-hero-portrait{width:100%;height:100%;object-fit:cover;display:block;background:rgba(0,0,0,.35)}.spirit-skills-fab{position:absolute;right:14px;bottom:60px;z-index:6;display:inline-flex;align-items:center;gap:8px;padding:8px 14px 8px 10px;border-radius:999px;background:rgba(12,12,18,.85);border:1px solid hsla(0,0%,100%,.14);color:var(--text);font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 8px 22px rgba(0,0,0,.45);transition:background .15s,border-color .15s,color .15s,transform .15s}.spirit-skills-fab:hover{background:rgba(124,106,247,.22);border-color:var(--accent);color:#fff;transform:translateY(-1px)}.spirit-skills-fab:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px var(--accent)}.spirit-skills-fab svg{color:#fbbf24}.spirit-skills-fab-label{line-height:1}.spirit-skills-modal-overlay{position:absolute;inset:0;z-index:20;background:rgba(0,0,0,.6);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:24px}.spirit-skills-modal{width:min(560px,100%);max-height:min(90%,640px);display:flex;flex-direction:column;gap:14px;padding:18px 20px 20px;background:rgba(20,20,28,.98);border:1px solid hsla(0,0%,100%,.1);border-radius:14px;box-shadow:0 24px 60px rgba(0,0,0,.55);color:var(--text);overflow:hidden}.spirit-skills-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.spirit-skills-modal-eyebrow{font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--text-dim);margin-bottom:4px}.spirit-skills-modal-title{font-size:18px;font-weight:700;color:#f1e7c4;text-shadow:0 1px 2px rgba(0,0,0,.4)}.spirit-skills-modal-close{background:none;border:1px solid var(--border);color:var(--text-dim);font-size:14px;cursor:pointer;padding:4px 8px;border-radius:6px;transition:background .1s,color .1s,border-color .1s}.spirit-skills-modal-close:hover{background:rgba(124,106,247,.12);color:var(--text);border-color:var(--accent-dim)}.spirit-level-pills{display:flex;flex-wrap:wrap;gap:6px}.spirit-level-pill{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:hsla(0,0%,100%,.03);border:1px solid hsla(0,0%,100%,.08);color:var(--text-dim);font:inherit;padding:6px 10px;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:2px;min-width:50px;transition:background .15s,border-color .15s,color .15s}.spirit-level-pill:hover{background:rgba(124,106,247,.1);border-color:rgba(124,106,247,.4);color:var(--text)}.spirit-level-pill.is-active{background:rgba(124,106,247,.2);border-color:var(--accent);color:var(--text)}.spirit-level-pill-stars{font-size:9px;color:#fbbf24;line-height:1;max-width:70px;overflow:hidden;white-space:nowrap}.spirit-level-pill-label{font-size:13px;font-weight:700;letter-spacing:.04em}.spirit-level-pill-subtitle{font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#fbbf24;line-height:1}.spirit-skill-card{display:flex;gap:12px;padding:14px;background:hsla(0,0%,100%,.02);border:1px solid hsla(0,0%,100%,.06);border-radius:10px;overflow-y:auto}.spirit-skill-icon{width:54px;height:54px;flex-shrink:0;border-radius:8px;object-fit:contain;background:rgba(0,0,0,.35)}.spirit-skill-icon-empty{border:1px dashed hsla(0,0%,100%,.1)}.spirit-skill-body{display:flex;flex-direction:column;gap:6px;min-width:0}.spirit-skill-name{font-size:14px;font-weight:700;color:var(--text)}.spirit-skill-desc{margin:0;font-size:12px;line-height:1.5;color:var(--text-dim);white-space:pre-wrap}@media (max-width:900px){.lb-box-spirit .lb-content{flex-direction:column}.compat-heroes-rail{width:100%;max-height:108px;flex-direction:row;border-right:none;border-bottom:1px solid var(--border);overflow-x:auto;overflow-y:hidden;padding:10px}.compat-heroes-rail-header{display:none}.compat-heroes-list{display:flex;flex-direction:row;gap:6px}.compat-hero-card{width:64px;flex-shrink:0}.spirit-skills-fab{bottom:56px;padding:6px 12px 6px 8px;font-size:11px}.spirit-skills-modal{padding:14px 16px 16px}}.hsm-overlay{position:absolute;inset:0;z-index:60;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.62);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);padding:32px 16px;animation:hsm-fade-in .16s ease-out}@keyframes hsm-fade-in{0%{opacity:0}to{opacity:1}}.hsm-dialog{position:relative;width:min(560px,92vw);max-height:min(85vh,880px);display:flex;flex-direction:column;overflow:visible;border-style:solid;border-width:88px 50px 50px;border-image-source:var(--hsm-frame-url);border-image-slice:88 50 50 50 fill;border-image-width:88px 50px 50px 50px;border-image-repeat:stretch;box-sizing:border-box;filter:drop-shadow(0 18px 38px rgba(0,0,0,.7));animation:hsm-scale-in .2s cubic-bezier(.16,1,.3,1)}@keyframes hsm-scale-in{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}.hsm-title-plate{position:absolute;top:-84px;left:50%;transform:translateX(-50%);width:320px;height:80px;pointer-events:none;display:flex;align-items:center;justify-content:center;z-index:2}.hsm-title-plate-img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 4px 8px rgba(0,0,0,.5))}.hsm-title-text{position:relative;font-size:22px;font-weight:700;letter-spacing:.08em;color:#4a2515;text-shadow:0 1px 0 rgba(255,230,170,.45),0 2px 3px rgba(0,0,0,.25);padding-bottom:6px}.hsm-close{position:absolute;top:-75px;right:-22px;width:56px;height:130px;padding:0;border:none;background:transparent;cursor:pointer;z-index:3;transition:transform .14s ease;filter:drop-shadow(0 4px 8px rgba(0,0,0,.55))}.hsm-close img{width:100%;height:100%;object-fit:contain;display:block;pointer-events:none}.hsm-close:hover{transform:scale(1.06)}.hsm-close:active{transform:scale(.96)}.hsm-body{flex:1 1 auto;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:18px 14px 22px;box-shadow:inset 0 6px 8px -4px rgba(74,37,21,.18)}.hsm-body::-webkit-scrollbar{width:8px}.hsm-body::-webkit-scrollbar-track{background:transparent}.hsm-body::-webkit-scrollbar-thumb{background:rgba(74,37,21,.28);border-radius:4px}.hsm-body::-webkit-scrollbar-thumb:hover{background:rgba(74,37,21,.44)}.hsm-skills-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:16px}.hsm-skill-item{background:#fff5dc;border:1px solid rgba(122,80,40,.18);border-radius:6px;padding:12px 12px 14px}.hsm-skill-head{display:flex;align-items:center;gap:12px}.hsm-skill-icon-frame{position:relative;width:56px;height:56px;flex-shrink:0;background-image:var(--hsm-skill-frame-url);background-size:contain;background-repeat:no-repeat;background-position:50%;display:flex;align-items:center;justify-content:center}.hsm-skill-icon{width:42px;height:42px;border-radius:50%;object-fit:cover}.hsm-skill-icon-empty{background:rgba(74,37,21,.15)}.hsm-skill-titles{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:2px}.hsm-skill-name{font-size:18px;font-weight:700;color:#2c1a0e;line-height:1.2;word-break:break-word}.hsm-skill-type{font-size:13px;font-weight:600;color:#2f8f3c;line-height:1.2}.hsm-skill-type--wedding{color:#c63c63}.hsm-skill-separator{height:8px;margin:10px 0 8px;background-image:var(--hsm-separator-url);background-size:100% 100%;background-repeat:no-repeat;background-position:50%}.hsm-skill-desc{margin:0;font-size:14px;line-height:1.55;color:#2c1a0e;white-space:pre-wrap;word-break:break-word}.hsm-skill-desc span[style*=color]{text-shadow:0 0 1px rgba(255,245,220,.6)}.hsm-body--manifest{display:flex;flex-direction:column;gap:14px;padding:18px 14px}.hsm-manifest-header{display:flex;align-items:center;gap:14px;padding:12px 14px;background:#fff5dc;border:1px solid rgba(122,80,40,.18);border-radius:6px}.hsm-manifest-icon-frame{position:relative;width:88px;height:88px;flex-shrink:0;background-image:var(--hsm-skill-frame-url);background-size:contain;background-repeat:no-repeat;background-position:50%;display:flex;align-items:center;justify-content:center}.hsm-manifest-icon{width:64px;height:64px;border-radius:50%;object-fit:cover}.hsm-manifest-icon-numeral{position:absolute;bottom:-4px;left:50%;transform:translateX(-50%);min-width:30px;padding:1px 8px 2px;background:linear-gradient(180deg,#f9d97a,#d09a3a 55%,#8e5c1c);color:#4a2515;font-size:13px;font-weight:800;letter-spacing:.04em;text-align:center;border-radius:999px;border:1px solid rgba(74,37,21,.55);text-shadow:0 1px 0 rgba(255,230,170,.5);box-shadow:inset 0 1px 0 rgba(255,245,200,.6),0 1px 2px rgba(0,0,0,.35)}.hsm-manifest-titles{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:4px}.hsm-manifest-name{font-size:19px;font-weight:700;color:#2c1a0e;line-height:1.2;word-break:break-word}.hsm-manifest-name-numeral{font-weight:700;color:#4a2515;margin-left:2px}.hsm-manifest-skill-type{font-size:13px;font-weight:600;color:#2f8f3c;line-height:1.2}.hsm-manifest-flavor{margin:0;padding:0 4px;font-size:13px;font-style:italic;line-height:1.5;color:rgba(74,37,21,.78);white-space:pre-wrap;word-break:break-word}.hsm-manifest-levels{list-style:none;margin:0;padding:8px 6px;display:flex;flex-direction:column;gap:0;background:#fff8e2;border:1px solid rgba(122,80,40,.22);border-radius:6px}.hsm-manifest-level{display:flex;align-items:baseline;gap:8px;padding:7px 10px;border-bottom:1px solid rgba(122,80,40,.14);font-size:14px;line-height:1.35}.hsm-manifest-level:last-child{border-bottom:none}.hsm-manifest-level-numeral{flex-shrink:0;min-width:38px;color:#b04a2a;font-weight:700;letter-spacing:.02em}.hsm-manifest-level-desc{flex:1 1;color:#2c1a0e;white-space:pre-wrap;word-break:break-word}.hsm-manifest-level-desc span[style*=color]{text-shadow:0 0 1px rgba(255,245,220,.6)}@media (max-width:768px){.hsm-overlay{padding:20px 4px}.hsm-dialog{width:100%;max-width:none;max-height:88vh;border-width:72px 22px 30px;border-image-slice:88 50 50 50 fill;border-image-width:72px 22px 30px 22px}.hsm-title-plate{top:-68px;width:240px;height:64px}.hsm-title-text{font-size:18px;padding-bottom:4px}.hsm-close{top:-60px;right:0;width:44px;height:102px}.hsm-body{padding:14px 6px 16px}.hsm-skills-list{gap:12px}.hsm-skill-item{padding:10px 8px 12px}.hsm-skill-icon-frame{width:48px;height:48px}.hsm-skill-icon{width:36px;height:36px}.hsm-skill-name{font-size:16px}.hsm-skill-type{font-size:12px}.hsm-skill-desc{font-size:13px}.hsm-body--manifest{padding:14px 8px 16px;gap:10px}.hsm-manifest-header{padding:10px;gap:10px}.hsm-manifest-icon-frame{width:72px;height:72px}.hsm-manifest-icon{width:52px;height:52px}.hsm-manifest-icon-numeral{font-size:12px;min-width:26px;padding:1px 6px 2px}.hsm-manifest-name{font-size:16px}.hsm-manifest-flavor,.hsm-manifest-skill-type{font-size:12px}.hsm-manifest-levels{padding:6px 4px}.hsm-manifest-level{font-size:13px;padding:6px 8px;gap:6px}.hsm-manifest-level-numeral{min-width:32px}}.auto-translate-toggle{display:flex;align-items:center;gap:10px;padding:10px 16px;margin:0;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;border-top:1px solid hsla(0,0%,100%,.06);border-bottom:1px solid hsla(0,0%,100%,.06);transition:background .15s}.auto-translate-toggle:hover{background:hsla(0,0%,100%,.025)}.auto-translate-toggle input[type=checkbox]{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;clip:rect(0,0,0,0);overflow:hidden;white-space:nowrap}.auto-translate-switch{position:relative;width:32px;height:18px;border-radius:999px;background:hsla(0,0%,100%,.1);transition:background .2s;flex-shrink:0}.auto-translate-switch:after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:#cbd5e1;transition:transform .2s,background .2s}.auto-translate-toggle input[type=checkbox]:checked+.auto-translate-switch{background:var(--accent,#7c6af7)}.auto-translate-toggle input[type=checkbox]:checked+.auto-translate-switch:after{transform:translateX(14px);background:#fff}.auto-translate-toggle input[type=checkbox]:focus-visible+.auto-translate-switch{outline:2px solid var(--accent,#7c6af7);outline-offset:2px}.auto-translate-text{display:flex;flex-direction:column;gap:1px;min-width:0}.auto-translate-label{font-size:12px;font-weight:600;color:var(--text);letter-spacing:.02em}.auto-translate-sub{font-size:10px;color:var(--text-dim);letter-spacing:.05em;text-transform:uppercase}[data-translated=true]{background:color-mix(in srgb,var(--accent,#7c6af7) 8%,transparent);border-radius:3px;padding:0 3px;margin:0 -3px;-webkit-text-decoration-line:underline;text-decoration-line:underline;-webkit-text-decoration-style:dotted;text-decoration-style:dotted;-webkit-text-decoration-color:color-mix(in srgb,var(--accent,#7c6af7) 55%,transparent);text-decoration-color:color-mix(in srgb,var(--accent,#7c6af7) 55%,transparent);text-underline-offset:3px;cursor:help}.view-mode-toggle{display:flex;align-items:center;gap:10px;padding:10px 16px;margin:0;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;border-top:1px solid hsla(0,0%,100%,.06);border-bottom:1px solid hsla(0,0%,100%,.06);transition:background .15s}.view-mode-toggle:hover{background:hsla(0,0%,100%,.025)}.view-mode-toggle input[type=checkbox]{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;clip:rect(0,0,0,0);overflow:hidden;white-space:nowrap}.view-mode-switch{position:relative;width:32px;height:18px;border-radius:999px;background:hsla(0,0%,100%,.1);transition:background .2s;flex-shrink:0}.view-mode-switch:after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:#cbd5e1;transition:transform .2s,background .2s}.view-mode-toggle input[type=checkbox]:checked+.view-mode-switch{background:var(--accent,#7c6af7)}.view-mode-toggle input[type=checkbox]:checked+.view-mode-switch:after{transform:translateX(14px);background:#fff}.view-mode-toggle input[type=checkbox]:focus-visible+.view-mode-switch{outline:2px solid var(--accent,#7c6af7);outline-offset:2px}.view-mode-text{display:flex;flex-direction:column;gap:1px;min-width:0}.view-mode-label{font-size:12px;font-weight:600;color:var(--text);letter-spacing:.02em}.view-mode-sub{font-size:10px;color:var(--text-dim);letter-spacing:.05em;text-transform:uppercase}.view-mode-toggle--toolbar{padding:6px 12px;border:1px solid hsla(0,0%,100%,.08);border-radius:8px;background:hsla(0,0%,100%,.02)}.view-mode-toggle--toolbar:hover{background:hsla(0,0%,100%,.05);border-color:hsla(0,0%,100%,.14)}.chibi-grid{flex:1 1;overflow-y:auto;padding:20px;display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));grid-gap:16px;gap:16px;align-content:start}.chibi-card{display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer;transition:transform .15s}.chibi-card:hover{transform:translateY(-4px) scale(1.03)}.chibi-card-inner{position:relative;width:100%;aspect-ratio:1;border-radius:50%;overflow:hidden;background:hsla(0,0%,100%,.04);border:2px solid hsla(0,0%,100%,.08);transition:border-color .2s,box-shadow .2s}.chibi-card:hover .chibi-card-inner{border-color:hsla(0,0%,100%,.2);box-shadow:0 0 16px hsla(0,0%,100%,.06)}.chibi-atlas{width:100%;height:100%;object-fit:cover;pointer-events:none}.chibi-play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.45);color:hsla(0,0%,100%,.85);opacity:0;transition:opacity .2s;border-radius:50%}.chibi-card:hover .chibi-play{opacity:1}.chibi-thumb-loading{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.chibi-card-name{font-size:12px;color:var(--text-dim);text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.mobile-header{display:none}.mobile-menu-btn{display:none;width:40px;height:40px;border-radius:8px;background:var(--surface);border:1px solid var(--border);cursor:pointer;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:0;flex-shrink:0}.mobile-menu-btn span{display:block;width:18px;height:2px;background:var(--text);border-radius:1px;transition:transform .25s,opacity .2s;transform-origin:center}.mobile-menu-btn.open span:first-child{transform:translateY(7px) rotate(45deg)}.mobile-menu-btn.open span:nth-child(2){opacity:0}.mobile-menu-btn.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.sidebar-backdrop{display:none;position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:899}.hero-filters-toggle{display:none}@media (max-width:768px){body{overflow:auto;overflow-x:hidden}.layout{flex-direction:column;height:auto;min-height:100vh;min-height:100dvh;overflow:visible}.content{overflow:visible;min-height:0;padding-top:52px}.mobile-header{display:flex;position:fixed;top:var(--topnav-h-mobile);left:0;right:0;z-index:901;height:48px;align-items:center;gap:10px;padding:6px 12px;background:var(--surface);border-bottom:1px solid var(--border);box-shadow:0 2px 8px rgba(0,0,0,.3)}.page-below-nav{padding-top:var(--topnav-h-mobile);height:auto;min-height:100vh;min-height:100dvh}.mobile-menu-btn{display:flex}.mobile-header-search{flex:1 1;min-width:0}.sidebar{position:fixed;top:calc(var(--topnav-h-mobile) + 48px);left:0;bottom:0;width:var(--sidebar-w-mobile);z-index:900;transform:translateX(-100%);transition:transform .25s ease;border-right:1px solid var(--border);padding-bottom:max(16px,env(safe-area-inset-bottom))}.sidebar.open{transform:translateX(0)}.sidebar-backdrop.open{display:block}.content-header{padding-left:16px}.hero-grid,.soul-grid,.spirit-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:12px}.chibi-grid,.trans-grid,.wedding-grid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:12px}.grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px}.hero-sections,.soul-sections,.spirit-sections{padding:16px;gap:20px}.chibi-grid,.trans-grid,.wedding-grid{padding:16px}.hero-filters{padding:10px 12px;gap:8px}.hero-filters-toggle{display:flex;align-items:center;gap:5px;margin-left:8px;background:var(--bg);color:var(--text-dim);border:1px solid var(--border);border-radius:6px;padding:5px 10px;font-size:11px;cursor:pointer;transition:background .12s,color .12s,border-color .12s;white-space:nowrap}.hero-filters-toggle:hover{background:var(--surface2);color:var(--text)}.hero-filters-toggle svg{transition:transform .2s}.hero-filters-toggle.expanded svg{transform:rotate(180deg)}.hero-filters-body{max-height:0;overflow:hidden;transition:max-height .25s ease;display:flex;flex-direction:column;gap:8px}.hero-filters-body.expanded{max-height:500px}.hero-filters-group{flex-direction:column;gap:4px}.hero-filters-label{min-width:auto;padding-top:0}.hero-filters-group .hero-filters-label{padding-top:0}.hero-filter-chip{padding:3px 9px;font-size:10px}.hero-filter-chip.icon-chip .chip-label{display:none}.hero-filter-chip.icon-chip{padding:3px 5px}.hero-filter-chip.icon-chip .chip-icon{width:18px;height:18px}.hero-filter-chip.icon-chip .chip-icon.chip-icon-rarity{width:28px;height:15px}.lb-box,.lb-box.lb-box-hero,.lb-box.lb-box-wedding{width:100vw;height:100vh;height:100dvh;border-radius:0;border:none;max-width:none;max-height:none}.lb-header{padding:10px 14px}.lb-title{font-size:13px;gap:6px}.lb-cat-tag{font-size:10px;padding:1px 6px}.lb-tabs{gap:2px}.lb-tab{padding:4px 8px;font-size:11px}.lb-footer{padding:8px 14px max(8px,env(safe-area-inset-bottom))}.lb-strip{padding:8px 14px}.lb-thumb{width:48px;height:48px}.lb-arrow{width:34px;height:34px;font-size:18px}.lb-arrow-left{left:6px}.lb-arrow-right{right:6px}.spine-controls{bottom:6px;padding:3px;border-radius:8px}.spine-ctrl-btn{padding:4px 8px;font-size:10px}.spine-variant-bar{overflow-x:auto;-webkit-overflow-scrolling:touch;justify-content:flex-start}.spine-variant-tab{padding:8px 16px;font-size:12px;flex-shrink:0}.spine-year-badge{width:90px;height:44px}.spine-year-text{font-size:20px}.hd-eye-btn,.hd-skills-icon-btn{width:40px;height:40px;left:10px}.hd-skills-row{bottom:50px;padding:8px 14px;border-radius:10px}.hd-skill-icon-btn{width:44px;height:44px}.hd-skill-popover{width:min(300px,85vw)}.hero-skills-panel{width:min(320px,80%);top:50px;right:8px;bottom:8px}}@media (max-width:480px){.hero-grid,.soul-grid,.spirit-grid{grid-template-columns:repeat(auto-fill,minmax(85px,1fr));gap:10px}.chibi-grid{grid-template-columns:repeat(auto-fill,minmax(95px,1fr));gap:10px}.wedding-grid{grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:10px}.trans-grid{grid-template-columns:repeat(auto-fill,minmax(95px,1fr));gap:10px}.grid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:10px}.chibi-grid,.hero-sections,.soul-sections,.spirit-sections,.trans-grid,.wedding-grid{padding:12px}.chibi-card-name,.hero-card-name,.soul-card-name,.spirit-card-name,.trans-card-name,.wedding-card-name{font-size:10px}.hero-rarity-heading,.soul-type-heading,.spirit-type-heading{font-size:13px;margin-bottom:8px}.lb-header{flex-wrap:wrap;gap:6px;padding:8px 12px}.lb-title{flex:1 1 100%;font-size:12px}.lb-header-right{flex:1 1 100%;justify-content:space-between}.lb-filename{font-size:11px;max-width:50vw}.content-header{padding-right:10px;font-size:12px}.hd-eye-btn,.hd-skills-icon-btn{width:34px;height:34px;left:6px}.hd-skills-row{bottom:40px;padding:6px 10px}.hd-skill-icon-btn{width:38px;height:38px}.hero-skills-panel{width:min(280px,85%);top:40px;right:6px;bottom:6px}}@media (hover:none){.chibi-card:hover,.hero-card:hover,.soul-card:hover,.spirit-card:hover,.trans-card:hover,.wedding-card:hover{transform:none}.chibi-card:hover .chibi-card-inner{border-color:hsla(0,0%,100%,.08);box-shadow:none}.chibi-card:hover .chibi-play{opacity:0}}body.scroll-locked{overflow:hidden!important}.pn-modal-backdrop{position:fixed;inset:0;z-index:2000;background:rgba(0,0,0,.6);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:24px;animation:pn-fade-in .15s ease-out}.pn-modal{width:100%;max-width:600px;max-height:calc(100vh - 48px);background:var(--surface);border:1px solid var(--border);border-radius:calc(var(--radius) * 1.25);display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.5);animation:pn-slide-up .2s cubic-bezier(.2,.9,.3,1)}.pn-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:20px 24px 16px;border-bottom:1px solid var(--border)}.pn-modal-eyebrow{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin-bottom:4px}.pn-modal-title{font-size:18px;font-weight:700;color:var(--text)}.pn-modal-close{flex-shrink:0;width:32px;height:32px;border-radius:8px;border:none;background:transparent;color:var(--text-dim);font-size:22px;line-height:1;cursor:pointer;transition:background .12s,color .12s}.pn-modal-close:hover{background:var(--surface2);color:var(--text)}.pn-modal-body{padding:16px 24px;overflow-y:auto;flex:1 1}.pn-modal-entry+.pn-modal-entry{margin-top:20px;padding-top:20px;border-top:1px solid var(--border)}.pn-modal-entry-head{display:flex;align-items:center;gap:10px;margin-bottom:6px}.pn-modal-version{font-size:11px;font-weight:700;letter-spacing:.04em;color:var(--accent);text-transform:uppercase}.pn-modal-date{font-size:11px;color:var(--text-dim)}.pn-modal-entry-title{font-size:14px;font-weight:600;color:var(--text);margin-bottom:8px}.pn-modal-content h1{display:none}.pn-modal-content h2{font-size:13px;font-weight:600;margin-top:14px;margin-bottom:6px;color:var(--text)}.pn-modal-content h3{font-size:12px;font-weight:600;margin-top:10px;margin-bottom:4px}.pn-modal-content p{font-size:13px;line-height:1.7;color:var(--text-dim);margin-bottom:6px}.pn-modal-content ul{padding-left:18px;margin-bottom:6px}.pn-modal-content li{font-size:13px;line-height:1.7;color:var(--text-dim)}.pn-modal-content strong{color:var(--text);font-weight:600}.pn-modal-content code{background:var(--surface2);padding:2px 6px;border-radius:4px;font-size:12px}.pn-modal-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 24px 18px;border-top:1px solid var(--border)}.pn-modal-link{font-size:13px;color:var(--text-dim);text-decoration:none;transition:color .12s}.pn-modal-link:hover{color:var(--accent)}.pn-modal-primary{padding:8px 18px;border-radius:8px;border:none;background:var(--accent);color:var(--bg);font-size:13px;font-weight:600;cursor:pointer;transition:filter .12s}.pn-modal-primary:hover{filter:brightness(1.1)}@keyframes pn-fade-in{0%{opacity:0}to{opacity:1}}@keyframes pn-slide-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (max-width:600px){.pn-modal-backdrop{padding:12px}.pn-modal-head{padding:16px 18px 12px}.pn-modal-body{padding:12px 18px}.pn-modal-foot{padding:12px 18px 14px;flex-direction:column-reverse;align-items:stretch}.pn-modal-primary{width:100%}.pn-modal-link{text-align:center}}@font-face{font-family:__Cinzel_bee7a3;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/b497598118275079-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Cinzel_bee7a3;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/a273567b21a7c318-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Cinzel_bee7a3;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/b497598118275079-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Cinzel_bee7a3;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/a273567b21a7c318-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Cinzel_bee7a3;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/b497598118275079-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Cinzel_bee7a3;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/a273567b21a7c318-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Cinzel_Fallback_bee7a3;src:local("Times New Roman");ascent-override:71.31%;descent-override:27.18%;line-gap-override:0.00%;size-adjust:136.86%}.__className_bee7a3{font-family:__Cinzel_bee7a3,__Cinzel_Fallback_bee7a3;font-style:normal}.__variable_bee7a3{--font-hero-name:"__Cinzel_bee7a3","__Cinzel_Fallback_bee7a3"}