/* Composition and interaction; cosmetic skins retain their artwork and effects. */
:root{--ux-fast:150ms;--ux-panel:220ms;--ux-line:#ffffff16;--ux-muted:#a5b3c6}
:is(.home-path,.collection-piece,.shop-item){transition:transform var(--ux-fast),border-color var(--ux-fast)}
:is(.home-path,.collection-piece):hover{transform:translateY(-3px);border-color:#dfb96a60}
:is(.home-path,.collection-piece,.shop-try-btn,.fitting-confirm,.fitting-compare):focus-visible{outline:2px solid #80cce6;outline-offset:4px}
.hero-v2 .hero-v2-inner{max-width:1320px;gap:25px;padding-top:40px;display:grid;grid-template-columns:minmax(0,1.8fr) minmax(300px,1fr);grid-template-areas:"intro paths" "media media" "social social";align-items:start}
.hero-v2 .hero-v2-top{grid-area:intro;min-width:0}
.hero-v2 .hero-v2-bottom{grid-area:media;min-width:0}
.hero-v2 .hero-fullrow{grid-area:social;min-width:0}
.hero-v2 .hero-v2-top{text-align:left;align-items:flex-start}
.hero-v2 .hero-title{font-size:clamp(58px,7vw,100px);line-height:1;margin-bottom:8px}
.hero-v2 .hero-subtitle{max-width:55ch;line-height:1.6;font-size:16px}
.hero-v2 .hero-stats{margin:20px 0 0;justify-content:flex-start}
.hero-v2 .hero-stat-value{font-size:30px;min-width:78px;font-variant-numeric:tabular-nums}
.hero-v2 .hero-v2-bottom{grid-template-columns:minmax(0,1.8fr) minmax(280px,1fr);gap:22px}
.hero-v2 .hero-v2-top :is(.gm-path,.lp-spark){margin-left:0}
.hero-v2 .hero-splash.loaded{opacity:.52}

.hero-v2 .hero-fullrow{margin-top:0}
.home-paths{grid-area:paths;display:grid;grid-template-columns:1fr;gap:14px;width:100%;align-self:center;min-width:0}
.home-path{display:flex;flex-direction:column;justify-content:center;gap:9px;min-width:0;min-height:136px;padding:22px;text-decoration:none;color:#e7edf6;border:1px solid var(--border);border-radius:0;background:var(--bg-card)}
.home-path span{font:600 10px/1.5 Rajdhani,sans-serif;letter-spacing:.14em;color:#d8ba7b}
.home-path strong{font:400 28px/1.12 var(--font-display,'Bebas Neue'),sans-serif;letter-spacing:.035em}
.home-path p{font-size:14px;line-height:1.5;color:var(--ux-muted);margin:4px 0 14px}
.home-path b{font-size:13px;color:#d8ba7b}.home-path-feature{flex-direction:row;align-items:center;gap:20px}
.home-path-feature img{width:94px;height:110px;object-fit:contain}.home-path-feature strong{display:block;margin-top:6px}
.profile-page{max-width:1180px}.profile-hero{min-height:210px;padding:34px!important;gap:26px!important}
.profile-identity h1{font-size:clamp(30px,5vw,52px)}.hero-balance strong{font-variant-numeric:tabular-nums}
.profile-collection{margin:22px 0;padding:28px;border:1px solid var(--ux-line);border-radius:0;background:var(--bg-card)}
.profile-collection header{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}
.profile-collection header span{color:#d8ba7b;font-size:11px;letter-spacing:.12em}.profile-collection h2{font:600 26px/1.3 Rajdhani,sans-serif;margin-top:5px}
.profile-collection a{color:#d8ba7b;text-decoration:none;font-size:14px}.profile-collection p{color:var(--ux-muted);font-size:14px;line-height:1.6;margin-top:14px}
.collection-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:12px}
.collection-piece{display:flex;flex-direction:column;align-items:center;text-align:center;gap:7px;padding:12px;border:1px solid var(--ux-line);border-radius:0;min-width:0}
.collection-piece .shop-cosmetic-preview{display:grid;place-items:center;width:100%;height:110px;font-size:30px;background-color:#080f1c;border-radius:0;background-position:center;background-size:contain;background-repeat:no-repeat}
.collection-piece strong{font-size:15px;color:#e7edf6}.collection-piece small{font-size:12px;color:var(--ux-muted)}

.profile-page .profile-privacy{margin-top:22px}
.shop-page{max-width:1280px}.shop-hero{text-align:left}.shop-sub{max-width:65ch;margin-left:0!important;line-height:1.6}
.shop-item-name{line-height:1.25}.shop-item-desc{line-height:1.6;color:var(--ux-muted)}
.shop-cosmetic-card .shop-cosmetic-preview{min-height:165px}.shop-item :is(.shop-buy-btn,.shop-equip-btn,.shop-try-btn){min-height:42px;border-radius:0;letter-spacing:.015em}
.shop-try-btn{background:transparent;color:#c6d2e3;border:1px solid #ffffff24;margin:0 0 8px;cursor:pointer;width:100%;font:600 13px Rajdhani,sans-serif}
.shop-side-link{transition:background var(--ux-fast);border-radius:0}.shop-buy-result{line-height:1.55;font-size:13px}
.shop-feedback:empty{display:none}.shop-feedback{padding:12px 16px;border:1px solid #80cce655;background:#112331;color:#c6e6f1;border-radius:8px;font-size:14px}
.shop-fitting-room{width:min(540px,calc(100vw - 28px));max-height:calc(100dvh - 40px);overflow:auto;box-sizing:border-box;padding:32px;border:1px solid #485265;border-radius:0;background:var(--bg-card,#111925);color:#e7edf6;box-shadow:0 30px 100px #0009;margin:auto}
.shop-fitting-room::backdrop{background:#030812c9;backdrop-filter:blur(5px)}.shop-fitting-room[open]{animation:fitting-enter var(--ux-panel) ease-out}
.fitting-close{position:absolute;right:12px;top:12px;min-width:40px;min-height:40px;border:0;background:transparent;color:#a5b3c6;font-size:26px;cursor:pointer}
.fitting-kicker{color:#d8ba7b;font-size:12px;letter-spacing:.06em;margin:0 35px 8px 0}.shop-fitting-room h2{font:600 30px/1.2 Rajdhani,sans-serif;margin:0 30px 12px 0}
.fitting-description,.fitting-note,.fitting-selection{font-size:14px;line-height:1.65;color:#a5b3c6;overflow-wrap:anywhere}
.fitting-canvas{background:#080e19;border:1px solid var(--ux-line);border-radius:0;padding:25px 16px;margin:22px 0 10px}
.fitting-card{position:relative;display:flex;min-height:160px;flex-direction:column;justify-content:center;gap:12px;padding:24px!important;overflow:hidden;border:1px solid #ffffff26;border-radius:0}
.fitting-card strong{font:600 30px Rajdhani,sans-serif;overflow-wrap:anywhere}.fitting-card small{font-size:10px;letter-spacing:.09em}.fitting-card span{font-size:13px;text-transform:uppercase}
.fitting-compare{border:0;background:transparent;color:#80cce6;padding:10px 0;cursor:pointer;font-size:13px}.fitting-note{border-top:1px solid var(--ux-line);padding-top:16px;margin-top:12px}
.fitting-confirm{display:block;width:100%;padding:14px 20px;margin-top:18px;border:0;border-radius:0;background:var(--gold,#e1bc70);color:#0b1019;font:700 16px Rajdhani,sans-serif;cursor:pointer}
.fitting-confirm:disabled{opacity:.45;cursor:not-allowed}.fitting-login{display:inline-block;color:#80cce6;margin-top:12px}
@keyframes fitting-enter{from{opacity:0;transform:translateY(8px) scale(.99)}to{opacity:1;transform:none}}
@media(max-width:950px){.hero-v2 .hero-v2-inner{grid-template-columns:minmax(0,1fr);grid-template-areas:"intro" "media" "paths" "social"}.hero-v2 .hero-v2-bottom{grid-template-columns:1fr}.home-paths{grid-template-columns:1fr 1fr}.home-path-feature{grid-column:1/-1;justify-content:flex-start}.hero-v2 .hero-v2-inner{padding-inline:20px}.profile-collection{padding:20px}}
@media(max-width:600px){.home-paths{grid-template-columns:1fr}.home-path{min-height:145px;padding:20px}.profile-hero{padding:22px!important}.profile-collection header{align-items:flex-start;flex-direction:column}.collection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.shop-fitting-room{padding:24px}.hero-v2 .hero-stat-value{font-size:25px;min-width:60px}}
@media(prefers-reduced-motion:reduce){.home-path,.collection-piece,.shop-item,.shop-fitting-room{animation:none!important;transition:none!important;transform:none!important}}

.collection-piece img{width:100%;height:110px;object-fit:contain}
.shop-buy-result[hidden],.profile-collection[hidden],.shop-item[hidden]{display:none!important}

.shop-filter-row{display:flex;align-items:end;gap:14px;flex-wrap:wrap;margin:16px 0 22px}.shop-filter-row label{display:grid;gap:6px;font-size:12px;color:#a5b3c6}.shop-filter-row select{min-height:40px;border:1px solid #ffffff24;border-radius:6px;background:#101827;color:#e7edf6;padding:8px 12px;font:14px Rajdhani,sans-serif}.shop-filter-row select:disabled{opacity:.5}#shop-result-count{padding:10px 0;font-size:13px;color:#a5b3c6}#shop-empty{padding:20px;border:1px dashed #ffffff24;border-radius:8px;color:#a5b3c6;font-size:14px;line-height:1.6}#shop-empty[hidden]{display:none}

/* Same cut corners and gold hairline used by the schedule and legacy panels. */
.home-path,.profile-collection,.collection-piece,.shop-fitting-room{position:relative;clip-path:polygon(14px 0,100% 0,100% calc(100% - 14px),calc(100% - 14px) 100%,0 100%,0 14px);border-color:var(--border);border-radius:0}
.home-path::before,.profile-collection::before{content:'';position:absolute;top:0;left:14px;width:42px;height:2px;background:var(--gold);pointer-events:none}
.home-path span,.home-path b,.profile-collection header span{color:var(--gold)}
.home-path:focus-visible,.collection-piece:focus-visible{outline-offset:-4px}
.hero-v2 .gm-path-head{gap:12px;flex-wrap:wrap}
.hero-v2 .hero-v2-top :is(.gm-path,.lp-spark){width:100%;max-width:420px}
.hero-v2 .sch-panel{max-width:100%;box-sizing:border-box}
.profile-page :is(.next-reward,.profile-activity){border-radius:0}
.shop-feedback,.fitting-canvas,#shop-empty{border-radius:0}
