:root{
  --glass:rgba(13,22,38,.62); --glass-2:rgba(22,34,56,.55); --glass-line:rgba(255,255,255,.12); --glass-hi:rgba(255,255,255,.06);
  --text:#f4f7fb; --text-2:#b7c3d6; --text-3:#8394ad;
  --gold:#ffc857; --gold-2:#f5a524; --mint:#5ee0b0; --up:#ff8a5b; --down:#6cc4ff;
  --r:20px; --r-sm:12px;
  --blur:saturate(160%) blur(18px);
  --font:"Inter",system-ui,-apple-system,sans-serif; --num:"Outfit","Inter",system-ui,sans-serif;
  --ease:cubic-bezier(.2,.8,.2,1); --ease-ui:cubic-bezier(.4,0,.2,1);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:#0d1726}
body{margin:0;font-family:var(--font);color:var(--text);min-height:100vh;overflow-x:hidden;-webkit-font-smoothing:antialiased;background:transparent}
h1,h2,h3{margin:0;font-weight:700;letter-spacing:-.02em}
button{font:inherit;color:inherit}
a{color:inherit}

/* backdrop */
.backdrop{position:fixed;inset:0;z-index:-1;overflow:hidden}
.bd-img{position:absolute;inset:-4%;background:#7fb6e6 url(../img/bg.webp) center 30%/cover no-repeat}
.bd-img::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(120,180,235,.0),rgba(120,180,235,0) 40%)}
.bd-shade{position:absolute;inset:0;background:radial-gradient(120% 80% at 50% 10%,rgba(8,14,26,0) 0%,rgba(8,14,26,.25) 60%,rgba(8,14,26,.55) 100%),linear-gradient(180deg,rgba(8,14,26,0) 50%,rgba(8,14,26,.45))}

/* glass */
.glass{background:var(--glass);border:1px solid var(--glass-line);border-radius:var(--r);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:0 1px 0 var(--glass-hi) inset,0 20px 50px rgba(5,10,20,.28)}

/* nav */
.nav{position:sticky;top:12px;z-index:40;margin:12px auto 0;width:min(1240px,100% - 24px);display:flex;align-items:center;gap:18px;padding:10px 12px 10px 18px;border-radius:16px}
.brand{display:flex;align-items:center;gap:8px;text-decoration:none;font-weight:800;font-size:1.15rem;white-space:nowrap}
.brand b{color:var(--gold);font-weight:800}
.live-dot{width:9px;height:9px;border-radius:50%;background:var(--mint);box-shadow:0 0 0 4px rgba(94,224,176,.18)}
.links{display:flex;gap:4px;background:rgba(255,255,255,.05);border-radius:12px;padding:4px}
.links a{text-decoration:none;font-size:.9rem;color:var(--text-2);padding:7px 14px;border-radius:9px;transition:background .2s var(--ease-ui),color .2s var(--ease-ui)}
.links a:hover{color:var(--text)}
.links a.on{background:rgba(255,255,255,.12);color:var(--text)}
.nav-stats{margin-inline-start:auto;display:flex;gap:20px}
.nav-stats span{display:flex;flex-direction:column;align-items:flex-start;line-height:1.1}
.nav-stats b{font-family:var(--num);font-weight:700;font-size:1rem;}
.nav-stats small{font-size:.7rem;color:var(--text-3)}

/* hero */
.hero{width:min(1240px,100% - 24px);margin:22px auto 0;min-height:calc(100vh - 100px);display:grid;grid-template-columns:370px 1fr;grid-template-rows:auto auto auto;gap:16px 34px;align-content:center}
.vault{grid-column:1/-1;grid-row:1}.hero-copy{grid-column:1;grid-row:2}.hero-side{grid-column:1;grid-row:3}.island-wrap{grid-column:2;grid-row:2}.hero-feed{grid-column:2;grid-row:3}
.hero-copy{padding:28px 26px}
.kicker{display:block;font-size:.78rem;font-weight:600;color:var(--gold);letter-spacing:.02em;margin-bottom:6px}
.big{font-family:var(--num);font-weight:800;font-size:clamp(4rem,7.5vw,6.4rem);line-height:.95;text-align:left;background:linear-gradient(180deg,#fff2c4,var(--gold) 55%,var(--gold-2));-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 6px 24px rgba(255,180,60,.25))}
.lead{font-size:1.05rem;line-height:1.6;color:var(--text-2);margin:12px 0 20px}
.lead b{color:var(--text)}
.power{display:flex;align-items:center;gap:10px;background:rgba(255,255,255,.05);border:1px solid var(--glass-line);border-radius:14px;padding:12px 14px}
.power>div{display:flex;flex-direction:column;gap:2px}
.power small{font-size:.72rem;color:var(--text-3)}
.power span{font-family:var(--num);font-weight:700;font-size:1.2rem;display:flex;align-items:center;gap:6px}
.power .now span{color:var(--gold)}
.power em{font-style:normal}
.power-arrow{width:34px;color:var(--text-3);flex:none}
.cta{display:inline-flex;align-items:center;gap:8px;margin-top:18px;text-decoration:none;font-weight:600;font-size:.95rem;padding:11px 18px;border-radius:12px;background:linear-gradient(180deg,#ffd77a,var(--gold-2));color:#2a1a02;box-shadow:0 6px 20px rgba(245,165,36,.35);transition:transform .2s var(--ease-ui),box-shadow .2s var(--ease-ui)}
.cta:hover{transform:translateY(-1px);box-shadow:0 10px 26px rgba(245,165,36,.45)}
.coin{display:inline-block;width:1em;height:1em;border-radius:50%;flex:none;background:radial-gradient(circle at 35% 30%,#fff3b8 0 16%,#f5b82e 46%,#b9770c 100%);box-shadow:inset 0 0 0 .08em #9b5f0a,inset 0 0 0 .2em rgba(255,240,170,.5)}

.island-wrap{position:relative;align-self:center}
.island{position:relative;user-select:none}
.island img{display:block;width:100%;height:auto;filter:drop-shadow(0 30px 40px rgba(10,20,40,.35))}
.rooms{position:absolute;inset:0}
.room{position:absolute;transform:translate(-50%,-50%);width:var(--s);height:var(--s);border:0;padding:0;background:none;cursor:pointer;border-radius:50%}
.room::before{content:"";position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle,rgba(255,214,110,calc(.25 + var(--heat)*.6)) 0%,rgba(255,170,50,calc(var(--heat)*.35)) 45%,rgba(255,170,50,0) 70%)}
.room b{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-family:var(--num);font-weight:600;font-size:.68rem;color:#fff;background:rgba(10,18,32,.72);border:1px solid rgba(255,200,87,.55);border-radius:999px;padding:1px 7px;white-space:nowrap;backdrop-filter:blur(6px)}
.room.on b{background:var(--gold);color:#241500;border-color:#fff3c4}
.room:focus-visible{outline:2px solid #fff;outline-offset:2px}
.room-card{position:absolute;left:2%;top:6%;padding:12px 16px;min-width:170px;display:flex;flex-direction:column;gap:4px;border-radius:14px}
.room-card small{font-size:.72rem;color:var(--gold)}
.room-card strong{font-size:1.2rem}
.rc-row{display:flex;justify-content:space-between;gap:14px;font-size:.85rem;color:var(--text-2)}
.rc-row b{font-family:var(--num);color:var(--text);}

.hero-side .mini{padding:14px 16px}
.stories{flex-direction:row!important}.stories li{flex:1;grid-template-columns:1fr!important;justify-items:start;gap:6px!important}
.mini h3{font-size:.95rem;margin-bottom:10px;color:var(--text-2);font-weight:600}
.stories{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.stories li{display:grid;grid-template-columns:36px 1fr;gap:10px;align-items:center;padding:8px;border-radius:12px;background:rgba(255,255,255,.04);cursor:pointer;transition:background .2s var(--ease-ui)}
.stories li:hover{background:rgba(255,255,255,.09)}
.stories .ic{width:36px;height:36px;border-radius:10px;background:rgba(255,255,255,.08) center/26px no-repeat}
.stories b{display:block;font-size:.85rem;font-weight:600;line-height:1.3}
.stories em{font-style:normal;display:inline-block;font-family:var(--num);font-weight:700;font-size:.95rem}
.stories em.up{color:var(--up)}.stories em.down{color:var(--down)}.stories em.flat{color:var(--mint)}

/* sections */
.sec,.sky-sec{width:min(1240px,100% - 24px);margin:90px auto 0}
.sec-head{max-width:720px;margin-bottom:18px}
.sec-num{display:inline-block;font-family:var(--num);font-weight:700;font-size:.8rem;letter-spacing:.12em;color:var(--gold);margin-bottom:6px;text-shadow:0 1px 8px rgba(0,0,0,.35)}
.sec-head h2{font-size:clamp(1.7rem,3vw,2.4rem);font-weight:800;text-shadow:0 2px 20px rgba(0,0,0,.3)}
.sec-head p{color:#e6edf7;margin:8px 0 0;line-height:1.6;text-shadow:0 1px 10px rgba(0,0,0,.4)}

/* price sky */
.sky-ui{padding:14px;overflow:hidden}
.sky-tools{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:12px}
.search{display:flex;align-items:center;gap:8px;background:rgba(255,255,255,.07);border:1px solid var(--glass-line);border-radius:12px;padding:0 12px;height:40px;flex:1 1 220px;max-width:320px}
.search svg{width:16px;color:var(--text-3);flex:none}
.search input{flex:1;min-width:0;background:none;border:0;outline:0;color:var(--text);font:inherit;font-size:.9rem;height:100%}
.chips{display:flex;gap:6px;flex-wrap:wrap}
.chip{border:1px solid var(--glass-line);background:rgba(255,255,255,.05);color:var(--text-2);border-radius:999px;padding:7px 12px;font-size:.82rem;cursor:pointer;display:inline-flex;gap:6px;align-items:center;transition:all .2s var(--ease-ui)}
.chip i{width:8px;height:8px;border-radius:50%}
.chip.on{background:rgba(255,255,255,.14);color:var(--text);border-color:rgba(255,255,255,.28)}
.seg{display:flex;background:rgba(255,255,255,.06);border-radius:11px;padding:3px;margin-inline-start:auto}
.seg button{border:0;background:none;color:var(--text-2);padding:6px 12px;border-radius:8px;font-size:.82rem;cursor:pointer}
.seg button.on{background:rgba(255,255,255,.14);color:var(--text)}

.stage{position:relative;height:min(68vh,640px);min-height:440px;border-radius:14px;overflow:hidden;
  background:linear-gradient(180deg,rgba(130,190,250,.18) 0%,rgba(130,190,250,.06) 48%,rgba(40,60,90,.22) 52%,rgba(10,18,32,.45) 100%)}
.axis{position:absolute;inset:0;pointer-events:none}
.axis div{position:absolute;inset-inline:0;border-top:1px dashed rgba(255,255,255,.1)}
.axis span{position:absolute;left:8px;top:-9px;font-family:var(--num);font-size:.72rem;color:var(--text-3);background:rgba(13,22,38,.6);padding:0 6px;border-radius:6px}
.ground-line{position:absolute;inset-inline:0;top:var(--g,50%);height:0;border-top:2px solid rgba(255,200,87,.55);box-shadow:0 0 24px rgba(255,200,87,.35);pointer-events:none}
.ground-line span{position:absolute;left:6px;top:-11px;font-size:.72rem;font-weight:600;color:#241500;background:var(--gold);padding:1px 8px;border-radius:999px}
.lanes{position:absolute;inset:0 0 0 var(--gutter,64px);display:grid;pointer-events:none}
.lane{border-inline-start:1px solid rgba(255,255,255,.05);position:relative}
.lane:first-child{border:0}
.lane span{position:absolute;bottom:10px;left:50%;transform:translateX(-50%);font-size:.75rem;color:var(--text-3);white-space:nowrap}
.field{position:absolute;inset:0}
.it{position:absolute;left:0;top:0;width:var(--z);height:var(--z);margin:calc(var(--z)/-2) 0 0 calc(var(--z)/-2);border:0;padding:0;cursor:pointer;border-radius:30%;
  background:rgba(255,255,255,.1) center/72% no-repeat;box-shadow:0 0 0 1px rgba(255,255,255,.14),0 4px 12px rgba(0,0,0,.25);will-change:transform}
.it.up{box-shadow:0 0 0 1.5px rgba(255,138,91,.55),0 4px 14px rgba(255,120,60,.25)}
.it.down{box-shadow:0 0 0 1.5px rgba(108,196,255,.5),0 4px 14px rgba(60,140,255,.2)}
.it.noicon::after{content:attr(data-l);position:absolute;inset:0;display:grid;place-items:center;font-family:var(--num);font-weight:700;font-size:calc(var(--z)*.42);color:var(--text-2)}
.it.dim{opacity:.12;pointer-events:none}
.it.hit{z-index:3;box-shadow:0 0 0 2px var(--gold),0 0 22px rgba(255,200,87,.6)}
.it:focus-visible{outline:2px solid #fff;outline-offset:2px}
.hover-tag{position:absolute;z-index:6;pointer-events:none;background:rgba(10,18,32,.9);border:1px solid var(--glass-line);border-radius:10px;padding:6px 10px;font-size:.8rem;white-space:nowrap;transform:translate(-50%,calc(-100% - 14px))}
.hover-tag{display:flex;flex-direction:column;gap:2px;align-items:center;padding:7px 12px}
.ht-name{font-weight:600;font-size:.82rem}
.ht-row{display:flex;align-items:center;gap:6px;font-family:var(--num);font-size:.8rem}
.ht-row em{font-style:normal;color:var(--text-2)}
.ht-row b{font-weight:700}
.timeline{display:flex;align-items:center;gap:14px;margin-top:12px;padding:6px 4px}
.play{flex:none;width:44px;height:44px;border-radius:50%;border:0;cursor:pointer;background:linear-gradient(180deg,#ffd77a,var(--gold-2));color:#2a1a02;display:grid;place-items:center;box-shadow:0 6px 18px rgba(245,165,36,.35)}
.play svg{width:18px;fill:currentColor}
.play .i-pause{display:none}.play.on .i-pause{display:block}.play.on .i-play{display:none}
.tl-track{flex:1;position:relative;}
.tl-track input{width:100%;accent-color:var(--gold);height:22px;cursor:pointer}
.tl-ticks{display:flex;justify-content:space-between;font-size:.68rem;color:var(--text-3);font-family:var(--num);padding:0 6px}
.tl-day{flex:none;min-width:110px;text-align:right;display:flex;flex-direction:column;line-height:1.15}
.tl-day b{font-family:var(--num);font-size:1.15rem}
.tl-day small{color:var(--gold);font-family:var(--num);font-size:.8rem}

/* drawer */
.drawer{position:fixed;z-index:60;top:84px;right:16px;width:min(380px,100% - 32px);max-height:calc(100vh - 100px);overflow:auto;padding:20px;transform:translateX(110%);opacity:0;transition:transform .45s var(--ease),opacity .3s var(--ease-ui);background:rgba(13,22,38,.86)}
.drawer.open{transform:none;opacity:1}
.dr-close{position:absolute;top:12px;right:12px;width:32px;height:32px;border-radius:10px;border:1px solid var(--glass-line);background:rgba(255,255,255,.06);cursor:pointer}
.dr-head{display:flex;gap:12px;align-items:center;margin-bottom:14px;padding-right:36px}
.dr-icon{width:56px;height:56px;border-radius:16px;background:rgba(255,255,255,.08) center/40px no-repeat;flex:none;box-shadow:0 0 0 1px var(--glass-line)}
.dr-head strong{display:block;font-size:1.1rem;line-height:1.25}
.dr-head small{color:var(--text-3);font-size:.8rem}
.dr-chg{font-family:var(--num);font-weight:800;font-size:2.6rem;text-align:left;line-height:1}
.dr-chg.up{color:var(--up)}.dr-chg.down{color:var(--down)}
.dr-chart{height:150px;margin:12px 0}
.dr-chart svg{width:100%;height:100%;display:block;overflow:visible}
.dr-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.dr-grid div{background:rgba(255,255,255,.05);border-radius:12px;padding:10px 12px}
.dr-grid small{display:block;font-size:.72rem;color:var(--text-3)}
.dr-grid b{font-family:var(--num);font-size:1.05rem;display:inline-flex;align-items:center;gap:5px}
.dr-million{margin-top:12px;padding:12px 14px;border-radius:12px;background:linear-gradient(135deg,rgba(255,200,87,.16),rgba(255,200,87,.04));border:1px solid rgba(255,200,87,.25);font-size:.9rem;line-height:1.55}
.dr-million b{font-family:var(--num);color:var(--gold)}

/* cards */
.cards3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.card{padding:22px}
.basket{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0 14px}
.basket span{width:42px;height:42px;border-radius:12px;background:rgba(255,255,255,.08) center/28px no-repeat;position:relative}
.basket em{position:absolute;bottom:-5px;right:-5px;font-style:normal;font-family:var(--num);font-size:.66rem;font-weight:700;background:var(--gold);color:#241500;border-radius:6px;padding:0 4px}
.kv{display:flex;justify-content:space-between;padding:9px 0;border-bottom:1px solid var(--glass-line);color:var(--text-2)}
.kv b{font-family:var(--num);color:var(--text);display:inline-flex;align-items:center;gap:6px}
.pill{margin-top:14px;padding:9px 12px;border-radius:12px;text-align:center;font-weight:600;font-family:var(--num)}
.pill.calm{background:rgba(94,224,176,.14);color:var(--mint)}
.cbars{display:flex;flex-direction:column;gap:11px;margin-top:10px}
.cbar{display:grid;grid-template-columns:70px 1fr 62px;gap:10px;align-items:center;font-size:.85rem;color:var(--text-2)}
.cbar .tr{height:10px;border-radius:6px;background:rgba(255,255,255,.07);position:relative;}
.cbar .z{position:absolute;top:-3px;bottom:-3px;width:1.5px;background:rgba(255,255,255,.35)}
.cbar .f{position:absolute;top:0;bottom:0;border-radius:6px}
.cbar .f.pos{background:linear-gradient(90deg,#ffb36b,var(--up))}
.cbar .f.neg{background:linear-gradient(90deg,var(--down),#a7dcff)}
.cbar b{font-family:var(--num);color:var(--text);text-align:right}
.typ{font-family:var(--num);font-weight:800;font-size:3.6rem;color:var(--down);text-align:left;margin:14px 0 8px}
.fine{font-size:.88rem;line-height:1.6;color:var(--text-2);margin:0}

/* chart panel */
.panel-chart{padding:22px 22px 16px;position:relative}
.pc-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}
.pc-head h2{font-size:1.4rem}
.pc-head p{margin:6px 0 0;color:var(--text-2);font-size:.9rem;max-width:640px;line-height:1.5}
.tabs{display:flex;background:rgba(255,255,255,.06);border-radius:12px;padding:4px}
.tabs button{border:0;background:none;color:var(--text-2);padding:8px 14px;border-radius:9px;font-size:.88rem;cursor:pointer;transition:background .2s var(--ease-ui),color .2s var(--ease-ui)}
.tabs button.on{background:rgba(255,255,255,.14);color:var(--text)}
.legend{display:flex;gap:14px;flex-wrap:wrap;font-size:.8rem;color:var(--text-2);margin:14px 0 6px}
.legend span{display:inline-flex;align-items:center;gap:6px}
.legend i{width:14px;height:3px;border-radius:2px}
.chart{position:relative;width:100%;aspect-ratio:2.7/1;min-height:240px}
.chart svg{display:block;width:100%;height:100%;overflow:visible}
.ax{font-family:var(--num);font-size:11px;fill:#8394ad}
.ax-blue{fill:#6cc4ff}
.base-lbl{fill:var(--gold);font-family:var(--font)}
.bar-r.dim{opacity:.4}
.tip{position:absolute;pointer-events:none;background:rgba(10,18,32,.92);border:1px solid var(--glass-line);border-radius:12px;padding:9px 12px;font-size:.82rem;min-width:150px;z-index:5;backdrop-filter:blur(10px)}
.tip h4{margin:0 0 5px;font-size:.82rem;color:var(--gold)}
.tip .row{display:flex;justify-content:space-between;gap:14px;color:var(--text-2)}
.tip .row b{font-family:var(--num);color:var(--text);}

/* method */
.method summary{cursor:pointer;padding:18px 22px;font-weight:600;font-size:1.05rem;list-style:none;display:flex;justify-content:space-between}
.method summary::-webkit-details-marker{display:none}
.method summary::after{content:"+";font-family:var(--num);font-size:1.3rem;line-height:1;color:var(--gold)}
.method[open] summary::after{content:"−"}
.method-body{padding:0 22px 20px;line-height:1.75;color:var(--text-2)}
.method-body b{color:var(--text)}
.method-body p{margin:0 0 10px}
.foot{text-align:center;color:#dfe8f3;font-size:.8rem;padding:60px 16px 40px;text-shadow:0 1px 8px rgba(0,0,0,.5)}

/* responsive */
@media (max-width:1100px){
  .hero{grid-template-columns:1fr;min-height:0}
  .vault{grid-column:1;grid-row:1}.island-wrap{grid-column:1;grid-row:2}.hero-feed{grid-column:1;grid-row:3}.hero-copy{grid-column:1;grid-row:4}.hero-side{grid-column:1;grid-row:5}
  .nav-stats{display:none}
}
@media (max-width:760px){
  .stories{flex-direction:column!important}
  .links{display:none}
  .cards3{grid-template-columns:1fr}
  .room-card{position:static;margin-top:10px}
  .room b{font-size:.55rem;padding:0 4px}
  .stage{height:62vh;min-height:420px}
  .seg{margin-inline-start:0}
  .chart{aspect-ratio:1.4/1}
  .drawer{top:auto;bottom:0;left:0;right:0;width:100%;max-height:78vh;border-radius:20px 20px 0 0;transform:translateY(105%)}
  .drawer.open{transform:none}
  .sec,.sky-sec{margin-top:64px}
}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
.it{transition:transform .5s var(--ease),opacity .3s var(--ease-ui),box-shadow .2s var(--ease-ui)}
.it.ghost{opacity:.25}
.it.sel{z-index:4;box-shadow:0 0 0 2.5px #fff,0 0 26px rgba(255,255,255,.5)}
.it:hover{z-index:5}

/* world money */
.world-grid{display:grid;grid-template-columns:1.05fr 1.2fr 1fr;gap:16px}
.w-hero,.w-pyramid,.w-calc{padding:22px}
.w-big{font-family:var(--num);font-weight:800;font-size:clamp(3.4rem,6vw,4.8rem);line-height:1;text-align:left;margin:6px 0 14px;background:linear-gradient(180deg,#fff2c4,var(--gold) 55%,var(--gold-2));-webkit-background-clip:text;background-clip:text;color:transparent}
.w-range{margin-bottom:10px}
.w-range-bar{position:relative;height:8px;border-radius:5px;background:rgba(255,255,255,.08)}
.w-range-bar i{position:absolute;top:0;bottom:0;border-radius:5px;background:linear-gradient(90deg,rgba(255,200,87,.35),rgba(255,200,87,.8),rgba(255,200,87,.35))}
.w-range-bar b{position:absolute;top:-4px;width:3px;height:16px;border-radius:2px;background:#fff;box-shadow:0 0 10px rgba(255,255,255,.7)}
.w-range-lbl{display:flex;justify-content:space-between;font-family:var(--num);font-size:.75rem;color:var(--text-3);margin-top:6px}
.w-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:16px}
.w-kpis div{background:rgba(255,255,255,.05);border-radius:12px;padding:10px 12px}
.w-kpis small{display:block;font-size:.7rem;color:var(--text-3)}
.w-kpis b{font-family:var(--num);font-size:1.15rem;display:block}
.wp-head{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;align-items:flex-end;margin-bottom:14px}
.wp-head h3{font-size:1.2rem;line-height:1.35;margin-top:2px}
.gold{color:var(--gold)}
.wp-legend{display:flex;gap:12px;font-size:.75rem;color:var(--text-2)}
.wp-legend span{display:inline-flex;align-items:center;gap:5px}
.wp-legend i{width:10px;height:10px;border-radius:3px}
.wp-legend .pl,.pyr .pl{background:linear-gradient(90deg,#6cc4ff,#9ad8ff)}
.wp-legend .ms,.pyr .ms{background:linear-gradient(90deg,var(--gold-2),#ffd77a)}
.pyr{display:flex;flex-direction:column-reverse;gap:6px}
.pyr-row{display:grid;grid-template-columns:1fr 54px 1fr;align-items:center;gap:8px;font-size:.72rem}
.pyr-row .lv{text-align:center;font-family:var(--num);color:var(--text-2);font-size:.75rem}
.pyr-row .side{height:18px;display:flex;align-items:center;gap:6px;}
.pyr-row .side.l{justify-content:flex-end}
.pyr-row .bar{height:100%;border-radius:5px;min-width:2px;width:calc((100% - 46px) * var(--k))}
.pyr-row .num{font-family:var(--num);font-weight:600;color:var(--text);white-space:nowrap;font-size:.7rem;flex:none}
.pyr-row.rich .lv{color:var(--gold);font-weight:700}
.calc-top{display:flex;align-items:flex-end;gap:14px;margin:6px 0 8px}
.calc-top img{height:84px;filter:drop-shadow(0 6px 12px rgba(0,0,0,.35))}
.calc-lvl span{display:block;font-size:.75rem;color:var(--text-3)}
.calc-lvl b{font-family:var(--num);font-weight:800;font-size:3rem;line-height:1;color:var(--gold)}
#calc{width:100%;accent-color:var(--gold);margin:4px 0 8px}
.calc-buys{display:flex;flex-direction:column;gap:6px;margin-top:12px}
.calc-buys div{display:grid;grid-template-columns:30px 1fr auto;align-items:center;gap:8px;font-size:.82rem;color:var(--text-2);background:rgba(255,255,255,.04);border-radius:10px;padding:6px 8px}
.calc-buys i{width:28px;height:28px;background:center/contain no-repeat}
.calc-buys b{font-family:var(--num);color:var(--text);}
.w-mobs{margin-top:16px;padding:18px 20px}
.wm-head{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.wm-head h3{font-size:1.15rem;margin-top:2px}
.wm-legend{display:flex;gap:14px;font-size:.75rem;color:var(--text-3)}
.wm-legend b{font-family:var(--num);color:var(--text);margin-inline-end:4px}
.wm-legend b.est,.mob b.est{color:var(--text-2);font-weight:600}
.mob-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:8px}
.mob{display:flex;flex-direction:column;align-items:center;gap:3px;padding:10px 6px 8px;border-radius:14px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.05);transition:background .2s var(--ease-ui),border-color .2s var(--ease-ui)}
.mob:hover{background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.14)}
.mob-img{height:64px;width:100%;display:flex;align-items:flex-end;justify-content:center}
.mob-img img{max-height:64px;max-width:92px;object-fit:contain}
.mob-nm{font-size:.74rem;color:var(--text-2);text-align:center;line-height:1.25;min-height:2.5em;display:flex;align-items:center}
.mob b{font-family:var(--num);font-size:.92rem;display:inline-flex;align-items:center;gap:4px;}
.mob b.tag{font-family:var(--font);font-size:.72rem;padding:1px 8px;border-radius:999px;background:rgba(255,138,91,.18);color:var(--up)}
.mob.event b.tag{background:rgba(209,140,255,.18);color:#d18cff}
.mob small{font-size:.66rem;color:var(--text-3)}
.mob.boss{background:linear-gradient(180deg,rgba(255,138,91,.1),rgba(255,255,255,.03))}
.wm-more{display:block;margin:14px auto 0;border:1px solid var(--glass-line);background:rgba(255,255,255,.07);color:var(--text);border-radius:12px;padding:9px 18px;font-size:.88rem;cursor:pointer;transition:background .2s var(--ease-ui)}
.wm-more:hover{background:rgba(255,255,255,.13)}
@media (max-width:520px){.mob-grid{grid-template-columns:repeat(3,1fr)}}
.credit{font-size:.78rem;color:#dfe8f3;margin:12px 4px 0;text-shadow:0 1px 8px rgba(0,0,0,.5)}
.credit a{color:var(--gold)}
.dr-kills{margin-top:8px;font-size:.85rem;color:var(--text-2);display:flex;align-items:center;gap:8px}
.dr-kills img{height:30px}
.dr-kills b{font-family:var(--num);color:var(--text)}
@media (max-width:1100px){.world-grid{grid-template-columns:1fr 1fr}.w-calc{grid-column:1/-1}}
@media (max-width:760px){.world-grid{grid-template-columns:1fr}.w-kpis{grid-template-columns:1fr 1fr 1fr}.w-kpis b{font-size:1rem}}

/* dollar */
.usd-grid{display:grid;grid-template-columns:.85fr 1.4fr;gap:16px}
.usd-hero{padding:22px}
.usd-big{display:flex;align-items:center;gap:12px;font-family:var(--num);font-weight:800;font-size:clamp(3rem,5.5vw,4.4rem);line-height:1;color:var(--mint);justify-content:flex-start;margin:8px 0 6px}
.usd-big .coin{width:.7em;height:.7em}
.usd-then{color:var(--text-2);font-size:.95rem}
.usd-then b{font-family:var(--num);color:var(--text)}
.usd-x{display:flex;align-items:baseline;gap:10px;margin:16px 0 8px}
.usd-x span{font-family:var(--num);font-weight:800;font-size:2.2rem;color:var(--gold)}
.usd-x small{color:var(--text-2)}
.usd-items{display:flex;gap:6px;flex-wrap:wrap;margin-top:14px}
.usd-items span{width:36px;height:36px;border-radius:10px;background:rgba(255,255,255,.07) center/26px no-repeat}
.usd-chart{padding:20px 20px 14px;position:relative}
.usd-chart h3{font-size:1.15rem}
.usd-chart .chart{aspect-ratio:2.3/1;margin-top:10px}
/* flows */
.flow-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:16px}
.flow-chart{padding:18px 20px;position:relative}
.flow-box{aspect-ratio:2.1/1}
.tip .dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-inline-end:6px}
.sinks{padding:20px}
.sinks ol{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column;gap:7px}
.sinks li{display:grid;grid-template-columns:18px 30px minmax(0,1fr) 70px 54px;align-items:center;gap:8px;font-size:.8rem}
.sinks .rk{font-family:var(--num);color:var(--text-3);text-align:center}
.sinks .ic{width:30px;height:30px;border-radius:9px;background:rgba(255,255,255,.07) center/22px no-repeat}
.sinks .nm{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-2)}
.sinks .bar{height:6px;border-radius:4px;background:rgba(255,255,255,.07);overflow:hidden}
.sinks .bar i{display:block;height:100%;border-radius:4px}
.sinks b{font-family:var(--num);text-align:right}
@media (max-width:900px){.usd-grid,.flow-grid{grid-template-columns:1fr}}

/* upgrades */
.upg-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-bottom:16px}
.kpi{padding:14px 16px;border-radius:16px}
.kpi small{display:block;font-size:.75rem;color:var(--text-3)}
.kpi b{display:block;font-family:var(--num);font-weight:800;font-size:1.8rem;color:var(--gold);text-align:left;line-height:1.15}
.kpi span{font-size:.75rem;color:var(--text-2)}
.upg-grid{display:grid;grid-template-columns:300px 1fr;gap:16px}
.upg-list{padding:14px;display:flex;flex-direction:column;gap:10px;max-height:520px}
.upg-list .search{max-width:none;flex:none}
.upg-list ul{list-style:none;margin:0;padding:0;overflow:auto;display:flex;flex-direction:column;gap:4px;scrollbar-width:thin}
.upg-list li{display:grid;grid-template-columns:30px 1fr auto;align-items:center;gap:8px;padding:6px 8px;border-radius:10px;cursor:pointer;font-size:.82rem;color:var(--text-2);transition:background .2s var(--ease-ui),color .2s var(--ease-ui)}
.upg-list li:hover{background:rgba(255,255,255,.06);color:var(--text)}
.upg-list li.on{background:rgba(255,200,87,.14);color:var(--text)}
.upg-list li i{width:30px;height:30px;border-radius:9px;background:rgba(255,255,255,.07) center/22px no-repeat}
.upg-list li span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.upg-list li b{font-family:var(--num);font-size:.78rem;color:var(--gold)}
.upg-main{padding:20px 22px 16px;display:flex;flex-direction:column}
.upg-head{display:flex;align-items:center;gap:12px}
.upg-icon{width:52px;height:52px;border-radius:14px;background:rgba(255,255,255,.08) center/36px no-repeat;flex:none}
.upg-head strong{display:block;font-size:1.15rem}
.upg-head small{color:var(--text-3);font-size:.78rem}
.upg-top{margin-inline-start:auto;text-align:right}
.upg-top small{display:block;font-size:.7rem;color:var(--text-3)}
.upg-top b{font-family:var(--num);font-weight:800;font-size:1.8rem;color:var(--up)}
.stairs{flex:1;min-height:300px;display:flex;align-items:flex-end;gap:8px;margin:20px 0 10px;padding-top:40px}
.step{flex:1;min-width:0;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;position:relative}
.st-bar{display:block;width:100%;height:var(--h);border-radius:10px 10px 4px 4px;background:linear-gradient(180deg,#ffd77a,var(--gold-2));box-shadow:0 6px 18px rgba(245,165,36,.25)}
.st-bar.ask{background:linear-gradient(180deg,rgba(255,215,122,.22),rgba(245,165,36,.08));box-shadow:inset 0 0 0 1.5px rgba(255,200,87,.7)}
.step.neg .st-bar{background:linear-gradient(180deg,#9ad8ff,#4aa8e8);box-shadow:none}
.step.neg .st-bar.ask{background:rgba(108,196,255,.12);box-shadow:inset 0 0 0 1.5px rgba(108,196,255,.6)}
.step.zero .st-bar{background:linear-gradient(180deg,#fff,#cfd8e6)}
.st-price{font-family:var(--num);font-weight:700;font-size:.82rem;display:inline-flex;align-items:center;gap:4px;margin-bottom:2px;white-space:nowrap}
.st-x{font-family:var(--num);font-size:.72rem;color:var(--text-3);margin-bottom:6px}
.st-n{font-family:var(--num);font-weight:800;font-size:1.05rem;margin-top:8px}
.step.zero .st-n{color:#fff}
.step:not(.zero):not(.neg) .st-n{color:var(--gold)}
.step.neg .st-n{color:var(--down)}
.st-c{font-size:.62rem;color:var(--text-3);white-space:nowrap}
.upg-legend{display:flex;gap:16px;flex-wrap:wrap;font-size:.75rem;color:var(--text-2)}
.upg-legend span{display:inline-flex;align-items:center;gap:6px}
.upg-legend i{width:14px;height:10px;border-radius:3px}
.upg-legend i.sold{background:linear-gradient(180deg,#ffd77a,var(--gold-2))}
.upg-legend i.ask{box-shadow:inset 0 0 0 1.5px rgba(255,200,87,.7)}
.muted-s{color:var(--text-3)}
@media (max-width:900px){.upg-grid{grid-template-columns:1fr}.upg-list{max-height:280px}.stairs{gap:4px}.st-price{font-size:.68rem}.st-c{display:none}}

/* farm */
.farm-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:16px}
.farm-mobs,.farm-maps{padding:20px}
.fm-head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.fm-legend{display:flex;gap:12px;font-size:.72rem;color:var(--text-2)}
.fm-legend span{display:inline-flex;align-items:center;gap:5px}
.fm-legend i,.vbar i{display:inline-block;height:8px;border-radius:4px}
.fm-legend i{width:12px}
.fm-legend .m,.vbar .m{background:linear-gradient(90deg,var(--gold-2),#ffd77a)}
.fm-legend .d,.vbar .d{background:linear-gradient(90deg,#5ee0b0,#9af0cf)}
.farm-mobs ol,.farm-maps ol{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}
.farm-mobs li{display:grid;grid-template-columns:18px 56px minmax(0,1fr) 120px 74px;align-items:center;gap:10px;padding:6px 8px;border-radius:12px;background:rgba(255,255,255,.035)}
.farm-mobs .rk,.farm-maps .rk{font-family:var(--num);color:var(--text-3);text-align:center;font-size:.8rem}
.mob-s{height:44px;display:flex;align-items:center;justify-content:center}
.mob-s img{max-height:44px;max-width:56px;object-fit:contain}
.farm-mobs .nm,.farm-maps .nm{display:flex;flex-direction:column;min-width:0}
.farm-mobs .nm b,.farm-maps .nm b{font-size:.88rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.farm-mobs .nm small,.farm-maps .nm small{font-size:.7rem;color:var(--text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.vbar{display:flex;height:8px;border-radius:4px;background:rgba(255,255,255,.07);overflow:hidden}
.vbar i{height:100%;border-radius:0}
.val{font-family:var(--num);font-size:.92rem;display:inline-flex;align-items:center;gap:5px;justify-content:flex-end}
.farm-maps li{display:grid;grid-template-columns:76px minmax(0,1fr) 70px 46px;align-items:center;gap:10px;padding:6px 8px;border-radius:12px;background:rgba(255,255,255,.035)}
.mm{display:flex;align-items:flex-end;height:34px}
.mm img{max-height:34px;max-width:34px;object-fit:contain;margin-right:-6px}
.mbar{height:6px;border-radius:4px;background:rgba(255,255,255,.07);overflow:hidden}
.mbar i{display:block;height:100%;background:linear-gradient(90deg,var(--gold-2),#ffd77a);border-radius:4px}
.boss-k{margin-top:18px}
.farm-bosses{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;margin-top:10px}
.boss-t{display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 6px;border-radius:14px;background:linear-gradient(180deg,rgba(255,138,91,.12),rgba(255,255,255,.03));text-align:center}
.boss-t img{height:54px;max-width:84px;object-fit:contain}
.boss-t b{font-size:.78rem}
.boss-t small{font-size:.65rem;color:var(--text-3)}
.boss-t span{font-family:var(--num);font-size:.85rem;display:inline-flex;align-items:center;gap:4px}
.boss-t em{font-style:normal;font-size:.6rem;color:var(--text-3)}
.treasure{margin-top:16px;padding:20px}
.tr-head{display:flex;justify-content:space-between;align-items:flex-end;gap:10px;flex-wrap:wrap;margin-bottom:14px}
.tr-head h3{font-size:1.15rem;margin-top:2px}
.tr-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px}
.tr{display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px;padding:14px 10px 12px;border-radius:16px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.06);transition:background .2s var(--ease-ui),border-color .2s var(--ease-ui)}
.tr:hover{background:rgba(255,200,87,.08);border-color:rgba(255,200,87,.25)}
.tr-icon{width:52px;height:52px;border-radius:14px;background:rgba(255,255,255,.08) center/36px no-repeat;box-shadow:0 0 0 1px rgba(255,200,87,.25),0 0 22px rgba(255,200,87,.12)}
.tr-name{font-size:.82rem;line-height:1.25;min-height:2.5em;display:flex;align-items:center}
.tr-price{font-family:var(--num);font-weight:800;font-size:1.15rem;color:var(--gold);display:inline-flex;align-items:center;gap:5px}
.tr-by{display:flex;gap:4px;align-items:flex-end;height:38px}
.tr-by img{max-height:38px;max-width:48px;object-fit:contain}
.tr small{font-size:.66rem;color:var(--text-3)}
.tr em{font-style:normal;font-family:var(--num);font-size:.72rem;color:var(--mint)}
@media (max-width:900px){.farm-grid{grid-template-columns:1fr}}
@media (max-width:520px){
  .farm-mobs li{grid-template-columns:44px minmax(0,1fr) 64px;gap:8px}
  .farm-mobs .rk,.farm-mobs .vbar{display:none}
  .farm-maps li{grid-template-columns:56px minmax(0,1fr) 44px}
  .farm-maps .mbar{display:none}
  .tr-grid{grid-template-columns:repeat(2,1fr)}
}
/* grid children may shrink below their content (charts set an intrinsic width) */
.usd-grid>*,.flow-grid>*,.world-grid>*,.farm-grid>*,.upg-grid>*,.cards3>*,.hero>*{min-width:0}

.evt-l{fill:#cfd9e6;font-family:var(--font);font-size:10.5px}

/* ---------- live: world-money vault ---------- */
.vault{position:relative;overflow:hidden;padding:18px 26px 20px;background:linear-gradient(180deg,rgba(40,28,6,.55),rgba(13,22,38,.66));border-color:rgba(255,200,87,.28)}
.vault::before{content:"";position:absolute;inset:-40% -10% auto;height:160%;background:radial-gradient(50% 45% at 50% 0%,rgba(255,200,87,.22),transparent 70%);pointer-events:none}
.v-top{position:relative;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.live-pill{display:inline-flex;align-items:center;gap:6px;font-size:.7rem;font-weight:800;letter-spacing:.12em;color:#ff6b6b;background:rgba(255,80,80,.12);border:1px solid rgba(255,107,107,.35);padding:3px 9px 3px 8px;border-radius:999px}
.live-pill i,.live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#ff5a5a;box-shadow:0 0 0 0 rgba(255,90,90,.6);animation:livepulse 1.8s infinite}
@keyframes livepulse{0%{box-shadow:0 0 0 0 rgba(255,90,90,.55)}70%{box-shadow:0 0 0 8px rgba(255,90,90,0)}100%{box-shadow:0 0 0 0 rgba(255,90,90,0)}}
.v-kicker{font-size:.86rem;font-weight:600;color:var(--text-2)}
.v-usd{margin-left:auto;font-family:var(--num);font-weight:600;font-size:.95rem;color:var(--mint);font-variant-numeric:tabular-nums}
.v-num{position:relative;display:flex;align-items:center;gap:.22em;margin:6px 0 12px;font-family:var(--num);font-weight:800;font-size:clamp(2rem,7.6vw,5.6rem);line-height:1;letter-spacing:-.01em;filter:drop-shadow(0 6px 26px rgba(255,180,60,.28))}
.v-coin{font-size:.62em;margin-right:.08em;animation:coinspin 6s var(--ease-ui) infinite}
@keyframes coinspin{0%,80%{transform:rotateY(0)}100%{transform:rotateY(360deg)}}
.odo{display:inline-flex;font-variant-numeric:tabular-nums}
.odo .d{display:inline-block;height:1em;overflow:hidden;width:.6em}
.odo .strip{display:flex;flex-direction:column;transform:translateY(calc(var(--d,0) * -1em));transition:transform .45s cubic-bezier(.25,.9,.3,1);will-change:transform}
.odo .strip.fast{transition:none}
.odo .strip span,.odo .sep{display:block;height:1em;line-height:1;text-align:center;background:linear-gradient(180deg,#fff4cc 10%,var(--gold) 55%,var(--gold-2) 95%);-webkit-background-clip:text;background-clip:text;color:transparent}
.odo .sep{width:.28em;opacity:.7}
.v-sub{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.v-sub span{display:flex;flex-direction:column;gap:2px;padding:9px 12px;border-radius:12px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.07)}
.v-sub b{font-family:var(--num);font-weight:700;font-size:1.15rem;color:var(--text);font-variant-numeric:tabular-nums}
.v-sub small{font-size:.72rem;color:var(--text-3)}

/* ---------- live: trade feed ---------- */
.feed{padding:14px 14px 12px!important}
.hero-feed{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:14px;align-self:start}
.hero-feed .pulse-row{grid-template-columns:1fr;margin-top:0;align-content:start}
.feed-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.feed-h h3{display:flex;align-items:center;gap:8px;margin:0!important;color:var(--text)!important}
.feed-h small{font-size:.7rem;color:var(--text-3);font-variant-numeric:tabular-nums}
.feed-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;min-height:calc(5 * 46px)}
.feed-list li{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:10px;align-items:center;padding:6px 8px;border-radius:10px;background:rgba(255,255,255,.035);height:42px}
.feed-list li.big{background:linear-gradient(90deg,rgba(255,200,87,.16),rgba(255,200,87,.03));box-shadow:inset 0 0 0 1px rgba(255,200,87,.3)}
.feed-list li.in{animation:feedin .7s var(--ease) both}
@keyframes feedin{0%{opacity:0;transform:translateY(-10px);background:rgba(255,200,87,.28)}40%{opacity:1;transform:none}100%{background:rgba(255,255,255,.035)}}
.feed-list li.big.in{animation:feedin-big .9s var(--ease) both}
@keyframes feedin-big{0%{opacity:0;transform:translateY(-10px) scale(.98)}50%{opacity:1;transform:none}}
.feed-list .ic,.pulse-row .ic{width:30px;height:30px;border-radius:8px;background:rgba(255,255,255,.07) center/24px no-repeat;image-rendering:pixelated}
.feed-list .nm{display:flex;flex-direction:column;min-width:0}
.feed-list .nm b{font-size:.82rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.feed-list .nm small{font-size:.68rem;color:var(--text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.feed-list .amt{display:flex;flex-direction:column;align-items:flex-end}
.feed-list .amt b{display:flex;align-items:center;gap:5px;font-family:var(--num);font-weight:700;font-size:.9rem;color:var(--gold)}
.feed-list .amt small{font-size:.66rem;color:var(--text-3);font-variant-numeric:tabular-nums}
.pulse-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:10px}
.pulse-row>div{display:flex;flex-direction:column;gap:3px;padding:8px;border-radius:10px;background:rgba(255,255,255,.05);min-width:0}
.pulse-row small{font-size:.62rem;color:var(--text-3);text-transform:uppercase;letter-spacing:.06em}
.pulse-row span{display:flex;align-items:center;gap:6px;min-width:0}
.pulse-row span b{font-size:.74rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pulse-row span b.n{font-family:var(--num);font-size:1.05rem}
.pulse-row .ic{width:22px;height:22px;flex:none;background-size:18px}
.pulse-row em{font-style:normal;font-family:var(--num);font-size:.75rem;color:var(--gold)}

/* ---------- live: room pings on the island ---------- */
.room .ping{position:absolute;left:50%;top:50%;width:26px;height:26px;margin:-13px 0 0 -13px;border-radius:50%;border:2px solid rgba(255,220,130,.9);pointer-events:none;animation:roomping 1.6s var(--ease) forwards}
@keyframes roomping{0%{transform:scale(.4);opacity:1}100%{transform:scale(3.2);opacity:0}}
.room .pop{position:absolute;left:50%;top:0;transform:translate(-50%,0);pointer-events:none;font-family:var(--num);font-weight:700;font-size:.74rem;color:#2a1a02;background:linear-gradient(180deg,#ffe39a,var(--gold-2));padding:2px 8px;border-radius:999px;box-shadow:0 4px 14px rgba(245,165,36,.55);white-space:nowrap;animation:roompop 2.4s var(--ease) forwards;z-index:3}
@keyframes roompop{0%{opacity:0;transform:translate(-50%,10px) scale(.8)}14%{opacity:1;transform:translate(-50%,-6px) scale(1)}78%{opacity:1}100%{opacity:0;transform:translate(-50%,-40px)}}
.room .spark{position:absolute;left:50%;top:40%;width:11px;height:11px;margin:-5.5px 0 0 -5.5px;border-radius:50%;pointer-events:none;background:radial-gradient(circle at 35% 30%,#fff7d0 0 25%,#ffc857 55%,#c27a0c 100%);box-shadow:0 0 8px rgba(255,200,87,.8);animation:spark 1.2s var(--ease) forwards}
@keyframes spark{0%{opacity:0;transform:translate(0,4px) scale(.5)}20%{opacity:1;transform:translate(calc(var(--dx)*.3),-8px) scale(1)}100%{opacity:0;transform:translate(var(--dx),-30px) scale(.6)}}
.island-note{position:absolute;right:2%;bottom:-2px;font-size:.7rem;color:var(--text-2);background:rgba(10,18,32,.55);padding:3px 10px;border-radius:999px;backdrop-filter:blur(6px);display:flex;gap:8px;align-items:center}
.island-note i{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--gold);box-shadow:0 0 6px var(--gold)}
.room .shelf{position:absolute;left:50%;top:calc(50% + 11px);transform:translateX(-50%);width:26px;height:26px;border-radius:8px;background:rgba(10,18,32,.7);border:1px solid rgba(255,200,87,.45);backdrop-filter:blur(6px);box-shadow:0 4px 10px rgba(0,0,0,.3);overflow:hidden;pointer-events:auto}
.room .shelf i{position:absolute;inset:2px;background:center/contain no-repeat;image-rendering:pixelated}
.room .shelf i.new{animation:shelfin .5s var(--ease) both}
.room .shelf i.out{animation:shelfout .4s var(--ease-ui) forwards}
@keyframes shelfin{0%{transform:translateY(100%);opacity:0}100%{transform:none;opacity:1}}
@keyframes shelfout{to{transform:translateY(-100%);opacity:0}}
.room .pop{display:flex;align-items:center;gap:5px}
.room .pop i{width:20px;height:20px;background:center/contain no-repeat;image-rendering:pixelated;filter:drop-shadow(0 1px 1px rgba(0,0,0,.35))}
@media (max-width:760px){
  .room .shelf{width:16px;height:16px;top:calc(50% + 7px);border-radius:5px}
  .room .shelf i{inset:1px}
  .room .pop{font-size:.6rem;padding:1px 6px}.room .pop i{width:14px;height:14px}
  .island-note{position:static;margin-top:8px;justify-content:center}
  .vault{padding:14px 16px 16px}
  .v-sub{grid-template-columns:repeat(2,minmax(0,1fr))}
  .v-usd{margin-left:0;width:100%}
  .hero-feed{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){.live-pill i,.live-dot,.v-coin{animation:none}}

.links a{white-space:nowrap}
@media (max-width:1480px){.nav-stats{display:none}}

/* ---------- clarity: intro, parts, how-to ---------- */
.intro{width:min(1240px,100% - 24px);margin:26px auto 0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:28px;align-items:center}
.intro h1{font-family:var(--num);font-size:clamp(1.9rem,3.4vw,2.9rem);line-height:1.08;font-weight:800;letter-spacing:-.02em;text-shadow:0 2px 24px rgba(0,0,0,.35)}
.intro h1 span{background:linear-gradient(180deg,#fff2c4,var(--gold) 60%,var(--gold-2));-webkit-background-clip:text;background-clip:text;color:transparent}
.intro p{margin:10px 0 0;font-size:1.02rem;line-height:1.55;color:#e6edf7;text-shadow:0 1px 10px rgba(0,0,0,.45);max-width:520px}
.actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.act{display:flex;flex-direction:column;gap:3px;padding:14px;border-radius:16px;text-decoration:none;background:var(--glass);border:1px solid var(--glass-line);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);transition:transform .2s var(--ease-ui),border-color .2s,background .2s}
.act:hover{transform:translateY(-3px);border-color:rgba(255,200,87,.55);background:rgba(30,40,62,.75)}
.act i{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;margin-bottom:6px;background:linear-gradient(180deg,#ffd77a,var(--gold-2));box-shadow:0 6px 16px rgba(245,165,36,.3)}
.act i svg{width:22px;height:22px;fill:none;stroke:#2a1a02;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.act b{font-size:.95rem}
.act small{font-size:.74rem;color:var(--text-2);line-height:1.35}
.a-sell{border-color:rgba(255,200,87,.45);background:linear-gradient(180deg,rgba(60,44,10,.6),var(--glass))}
.hero{margin-top:18px;min-height:0}
.part{width:min(1240px,100% - 24px);margin:110px auto -40px;padding:26px 0 0;border-top:1px solid rgba(255,255,255,.18);text-align:left}
.part-n{display:inline-block;font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#241500;background:var(--gold);padding:3px 10px;border-radius:999px}
.part h2{font-family:var(--num);font-size:clamp(2rem,4vw,3rem);font-weight:800;margin-top:10px;text-shadow:0 2px 24px rgba(0,0,0,.4)}
.part p{margin:6px 0 0;color:#e6edf7;font-size:1rem;text-shadow:0 1px 10px rgba(0,0,0,.45);max-width:640px}
.howto{list-style:none;counter-reset:h;margin:12px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.howto li{counter-increment:h;display:inline-flex;align-items:center;gap:8px;font-size:.8rem;color:var(--text);background:rgba(13,22,38,.55);border:1px solid var(--glass-line);padding:5px 12px 5px 6px;border-radius:999px;backdrop-filter:blur(8px)}
.howto li::before{content:counter(h);display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--gold);color:#241500;font-weight:800;font-size:.7rem}
.sec-num{font-size:.8rem}
@media (max-width:1100px){.intro{grid-template-columns:1fr}}
@media (max-width:760px){
  .actions{grid-template-columns:repeat(2,minmax(0,1fr))}
  .act{padding:12px}
  .part{margin:80px auto -30px}
  .links{display:flex!important;overflow-x:auto;scrollbar-width:none;gap:2px;min-width:0;flex:1}
  .links a{padding:6px 9px!important;font-size:.82rem}
  .nav{gap:8px}
  .brand{font-size:.95rem}
}
.intro-copy{padding:22px 24px;border-radius:var(--r);background:linear-gradient(135deg,rgba(13,22,38,.72),rgba(13,22,38,.5));border:1px solid var(--glass-line);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur)}
.intro h1,.intro p{text-shadow:none}
.intro h1 span{filter:drop-shadow(0 2px 10px rgba(255,170,40,.25))}
.intro p{color:var(--text-2)}
.actions{align-self:stretch}
.actions{align-self:center}
.act{min-height:150px}
.act::after{content:"Go →";margin-top:auto;padding-top:8px;font-size:.74rem;font-weight:700;color:var(--gold);opacity:.8;transition:opacity .2s,transform .2s var(--ease-ui)}
.act:hover::after{opacity:1;transform:translateX(3px)}
.intro h1{font-size:clamp(1.8rem,3vw,2.6rem)}
@media (max-width:760px){.act{min-height:0}}
.upg-list li.cnt{display:block;cursor:default;font-size:.72rem;color:var(--text-3);padding:2px 8px 6px}
.upg-list li.cnt:hover{background:none}
.upg-list li b.lv{font-family:var(--font);font-size:.62rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--mint);background:rgba(94,224,176,.12);padding:2px 6px;border-radius:999px}
.upg-empty{margin:auto;max-width:420px;text-align:center;color:var(--text-2);font-size:.9rem;line-height:1.55;padding:30px 10px}
.upg-empty a{display:inline-block;margin-top:8px;color:var(--gold);font-weight:600}

/* mobile QA pass, Nov 2026 */
html{scroll-padding-top:96px}
@media (max-width:760px){
  .links{-webkit-mask-image:linear-gradient(90deg,#000 82%,transparent);mask-image:linear-gradient(90deg,#000 82%,transparent);padding-right:18px}
  .links a{min-height:40px;display:inline-flex;align-items:center}
  .room b{font-size:.68rem!important;padding:1px 5px!important}
  .room::before{content:"";position:absolute;inset:-6px}
  .lane span{font-size:.6rem;max-width:calc(100% - 4px);overflow:hidden;text-overflow:clip;left:2px;transform:none}
  small.ago,.st-price,.island-note,.live-pill{font-size:.75rem!important}
  input[type=range]{min-height:40px}
  input[type=search],input[type=text],select{min-height:44px;font-size:16px!important}
}
@media (max-width:430px){.brand span{display:none}}

/* in-game style item tooltip (sky drawer) */
.dr-tip{margin:12px 0 4px}
.dr-tip:empty{display:none}
.mt-load{font-size:.8rem;color:var(--text-3);padding:8px 0}
.mt{background:linear-gradient(180deg,rgba(17,22,40,.96),rgba(10,14,28,.96));border:1px solid rgba(160,180,220,.35);border-radius:8px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.6),0 8px 24px rgba(0,0,0,.35);padding:10px 12px 12px;font-size:.84rem;color:#fff;font-family:var(--font)}
.mt-name{text-align:center;font-weight:800;font-size:.98rem;letter-spacing:.01em;padding-bottom:6px}
.mt-flags{display:flex;justify-content:center;gap:8px;margin:-2px 0 6px}
.mt-flags em{font-style:normal;font-size:.72rem;color:#ffcc66}
.mt-top{display:flex;gap:12px;align-items:flex-start;padding:8px 0;border-top:1px dashed rgba(255,255,255,.18)}
.mt-ico{flex:none;width:58px;height:58px;border-radius:6px;background:#fff center/40px no-repeat;image-rendering:pixelated;box-shadow:inset 0 0 0 2px rgba(0,0,0,.15)}
.mt-req{display:flex;flex-direction:column;gap:2px;font-size:.76rem;color:#c9d2e3;letter-spacing:.03em}
.mt-req b{color:#fff;font-family:var(--num)}
.mt-job{color:#ffcc66;margin-top:2px}
.mt-st{list-style:none;margin:0;padding:8px 0 0;border-top:1px dashed rgba(255,255,255,.18);display:grid;gap:2px}
.mt-st li{color:#e8eef8}
.mt-d{margin:8px 0 0;padding-top:8px;border-top:1px dashed rgba(255,255,255,.18);color:#d7dfec;line-height:1.5;white-space:normal}
.mt-d b{color:#ffcc66}
@media (max-width:760px){
  .sky-tools .seg{width:100%;justify-content:space-between}
  .sky-tools .seg button{flex:1;min-height:40px}
}
.sec-head{background:rgba(8,16,30,.5);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:16px;padding:14px 18px;width:fit-content;max-width:min(760px,100%)}
.sec-head p{color:#dfe7f3}

/* ---- item sheet (Nov 2026): price path + AI forecast ---- */
.drawer{width:min(460px,100% - 32px);padding:22px 22px 26px;background:rgba(11,19,34,.94);box-shadow:0 30px 80px rgba(0,0,0,.5)}
.dr-grab{display:none}
.dr-close{width:40px;height:40px;font-size:1rem;color:var(--text)}
.dr-head{margin-bottom:10px}
.dr-price{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 12px;margin:4px 0 12px}
.dr-price b{font-family:var(--num);font-size:2rem;font-weight:800;display:inline-flex;align-items:center;gap:8px;line-height:1}
.dr-price b .coin{width:22px;height:22px}
.dr-price .dr-chg{font-size:1.05rem;font-weight:700;padding:3px 10px;border-radius:999px;background:rgba(255,255,255,.07);text-align:left}
.dr-price .dr-chg.up{background:rgba(255,138,91,.14)}.dr-price .dr-chg.down{background:rgba(108,196,255,.14)}
.dr-price small{color:var(--text-2);font-size:.8rem}
.dr-tabs{display:inline-flex;background:rgba(255,255,255,.06);border-radius:10px;padding:3px;gap:2px}
.dr-tabs button{border:0;background:none;color:var(--text-2);font:600 .8rem var(--font);padding:7px 14px;border-radius:8px;cursor:pointer;min-height:34px}
.dr-tabs button.on{background:rgba(255,255,255,.14);color:var(--text)}
.dr-chart{position:relative;height:210px;margin:10px 0 6px;touch-action:pan-y;user-select:none;-webkit-user-select:none}
.dr-chart svg{width:100%;height:100%;display:block;overflow:visible;cursor:crosshair}
.dr-chart .grid{stroke:rgba(255,255,255,.07)}
.dr-chart .ylbl{fill:var(--text-3);font:11px var(--num)}
.dr-chart .xlbl{fill:var(--text-2);font:11px var(--font)}
.dr-chart .mk{fill:#ffc857;font:600 10.5px var(--num)}
.dr-chart .fc-zone{fill:rgba(255,255,255,.035)}
.dr-chart .scrub{stroke:#fff;stroke-opacity:.5;stroke-dasharray:3 3}
.dr-chart .scrub-dot{fill:#fff}
.dr-read{position:absolute;top:0;pointer-events:none;background:rgba(6,12,24,.92);border:1px solid var(--glass-line);border-radius:10px;padding:6px 10px;display:flex;flex-direction:column;gap:1px;white-space:nowrap;z-index:2}
.dr-read b{font-size:.72rem;color:var(--text-2);font-weight:600}
.dr-read span{font:700 .95rem var(--num)}
.dr-read small{font-size:.72rem;color:var(--text-3)}
.dr-legend{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:.74rem;color:var(--text-2);margin-bottom:12px}
.dr-legend i{display:inline-block;width:16px;height:0;border-top:2.5px solid #ff8a5b;vertical-align:middle;margin-right:6px}
.dr-legend .lg-fc{border-top:2.5px dashed #5ee0b0}.dr-legend .lg-launch{border-top:2px dashed #ffc857}
.fc-load,.fc-none{font-size:.85rem;color:var(--text-2);padding:14px;border-radius:14px;background:rgba(255,255,255,.04);margin-bottom:12px}
.fc{position:relative;border-radius:16px;padding:14px 16px 12px;margin-bottom:12px;border:1px solid rgba(201,182,255,.28);background:linear-gradient(140deg,rgba(150,120,255,.16),rgba(94,224,176,.06) 70%);overflow:hidden}
.fc.up{border-color:rgba(94,224,176,.35)}.fc.down{border-color:rgba(255,138,91,.35);background:linear-gradient(140deg,rgba(150,120,255,.14),rgba(255,138,91,.07) 70%)}
.fc::before{content:"";position:absolute;inset:-40% -20% auto auto;width:180px;height:180px;background:radial-gradient(circle,rgba(170,140,255,.25),transparent 70%);pointer-events:none}
.fc-top{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px}
.fc-badge{font-size:.7rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#d9ccff;background:rgba(150,120,255,.2);padding:4px 9px;border-radius:999px}
.fc-badge::before{content:"✦ "}
.fc-conf{font-size:.74rem;color:var(--text-2);display:inline-flex;align-items:center;gap:7px}
.fc-conf i{width:46px;height:6px;border-radius:9px;background:linear-gradient(90deg,#c9b6ff var(--c),rgba(255,255,255,.12) var(--c))}
.fc-main{display:flex;gap:12px;align-items:center}
.fc-arrow{flex:none;width:48px;height:48px;border-radius:14px;display:grid;place-items:center;font-size:1.6rem;font-weight:800;background:rgba(201,182,255,.18);color:#e5dcff}
.fc.up .fc-arrow{background:rgba(94,224,176,.18);color:#5ee0b0}.fc.down .fc-arrow{background:rgba(255,138,91,.18);color:#ff8a5b}
.fc-main b{display:block;font-size:1.05rem}
.fc-main span{display:inline-flex;align-items:center;gap:5px;font:700 1.15rem var(--num)}
.fc-main span em{font-style:normal;font-size:.85rem;color:var(--text-2);margin-left:4px}
.fc-main small{display:block;color:var(--text-2);font-size:.78rem;font-family:var(--num)}
.fc-why{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:5px}
.fc-why li{display:flex;gap:8px;align-items:center;font-size:.82rem;color:var(--text)}
.fc-why li i{font-style:normal;font-size:.6rem;width:18px;height:18px;border-radius:6px;display:grid;place-items:center;flex:none}
.fc-why li.pos i{background:rgba(94,224,176,.18);color:#5ee0b0}.fc-why li.neg i{background:rgba(255,138,91,.18);color:#ff8a5b}
.fc-wave{margin-top:12px;padding-top:10px;border-top:1px solid rgba(255,255,255,.08)}
.fc-wave b{font-size:.78rem;color:var(--text-2);font-weight:700}
.wave-bar{display:flex;height:9px;border-radius:9px;overflow:hidden;margin:7px 0 6px;gap:2px}
.w-coming{background:#5ee0b0}.w-using{background:#ffc857}.w-out{background:rgba(255,255,255,.22)}
.wave-k{display:flex;flex-wrap:wrap;gap:3px 12px;font-size:.74rem;color:var(--text-2)}
.wave-k i{display:inline-block;width:8px;height:8px;border-radius:3px;margin-right:5px}
.fc-note{margin:10px 0 0;font-size:.72rem;line-height:1.45;color:var(--text-3)}
.dr-grid{grid-template-columns:1fr 1fr 1fr}
.dr-grid b{font-size:.98rem;flex-wrap:wrap}
.dr-grid b em{font-style:normal;font-family:var(--font);font-size:.68rem;color:var(--text-3);font-weight:500;width:100%}
.dr-ingame{margin-top:12px}
.dr-ingame summary{cursor:pointer;font-size:.82rem;font-weight:700;color:var(--text-2);padding:6px 0;list-style:none}
.dr-ingame summary::before{content:"▸ ";color:var(--gold)}
.dr-ingame[open] summary::before{content:"▾ "}
.dr-ingame .dr-tip{margin:4px 0 0}
.dr-actions{margin-top:14px}
.btn-gold{display:flex;justify-content:center;align-items:center;min-height:46px;border-radius:14px;background:linear-gradient(180deg,#ffd27a,#ffb53d);color:#241500;font-weight:800;text-decoration:none;box-shadow:0 8px 24px rgba(255,180,60,.25)}
.btn-gold:hover{filter:brightness(1.05)}
.dr-million{font-size:.82rem}
@media (max-width:760px){
  .drawer{max-height:90vh;padding:10px 16px 28px}
  .dr-grab{display:block;width:44px;height:5px;border-radius:9px;background:rgba(255,255,255,.25);margin:0 auto 10px}
  .dr-close{top:14px}
  .dr-grid{grid-template-columns:1fr 1fr}
  .dr-chart{height:190px}
  .dr-price b{font-size:1.7rem}
}
.fc-badge{white-space:nowrap}
.fc-conf{white-space:nowrap}
.fc-why-h{margin-top:12px;font-size:.72rem;font-weight:700;color:var(--text-2);display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}
.fc-why-h span{font-weight:500;color:var(--text-3)}
.fc-why{margin-top:6px}

@media (max-width: 760px){.bd-img{background-image:url(../img/bg-s.webp)}}
