/* All Stars: shared styles for every page.
   1. fonts  2. design tokens + components (from the brand kit)  3. layout shell  4. live-data UI */
@import url("https://fonts.googleapis.com/css2?family=Big+Shoulders+Display:wght@700;800;900&family=JetBrains+Mono:wght@500&family=Manrope:wght@500;600;700;800&display=swap");

/* ---------------------------------------------------------------- tokens + components */
:root{--bg: #0a0910; --surface: #14121d; --surface-raised: #1e1b2a; --line: #2f2a42; --ink: #f5f1fa; --ink-muted: #aaa3bd; --ink-faint: #757089; --neon: #ff3d7f; --sunset: #ff8a3d; --crown: #ffc83d; --live: #3de0ff; --on-accent: #0a0910; --neon-tint: #ff3d7f24; --live-tint: #3de0ff1f; --crown-tint: #ffc83d1f; --error: #ff6b6b; --space-1: 4px; --space-2: 8px; --space-3: 12px; --space-4: 16px; --space-5: 24px; --space-6: 32px; --space-7: 48px; --space-8: 80px; --radius-sm: 6px; --radius-md: 12px; --radius-lg: 20px; --radius-pill: 999px; --glow-neon: 0 0 0 1px #ff3d7f, 0 0 28px #ff3d7f66; --glow-live: 0 0 0 1px #3de0ff, 0 0 32px #3de0ff4d; --glow-crown: 0 0 0 1px #ffc83d, 0 0 32px #ffc83d40; --font-display: "Big Shoulders Display", "Arial Narrow", sans-serif; --font-sans: "Manrope", system-ui, sans-serif; --font-mono: "JetBrains Mono", ui-monospace, monospace;}
.as-upper{text-transform: uppercase;}
/* Sunset stripe: the brand motif. Hard stripes, never a gradient. */
.as-stripes{display: flex; flex-direction: column; gap: 3px;}
.as-stripes i{display: block; height: 4px; border-radius: 2px;}
.as-stripes i:nth-child(1){background: var(--crown);}
.as-stripes i:nth-child(2){background: var(--sunset);}
.as-stripes i:nth-child(3){background: var(--neon);}
/* Wordmark */
.as-wordmark{display: inline-flex; flex-direction: column; gap: 6px; font-family: var(--font-display); text-transform: uppercase; color: var(--ink); line-height: .9;}
.as-wordmark .as-wm-tag{font-family: var(--font-sans); font-weight: 800; font-size: 11px; letter-spacing: .3em; color: var(--ink-muted);}
.as-wordmark .as-wm-name{font-weight: 900; font-size: 56px; letter-spacing: -.01em;}
.as-wordmark .as-wm-name b{color: var(--neon); font-weight: 900;}
/* Buttons */
.as-btn{display: inline-flex; align-items: center; justify-content: center; gap: var(--space-2); height: 48px; padding: 0 var(--space-5); border-radius: var(--radius-md); border: 1px solid transparent; font: 800 13px/1 var(--font-sans); letter-spacing: .12em; text-transform: uppercase; cursor: pointer; transition: box-shadow .15s, background .15s, transform .1s;}
.as-btn:active{transform: translateY(1px);}
.as-btn:focus-visible{outline: 2px solid var(--neon); outline-offset: 3px;}
.as-btn-primary{background: var(--neon); color: var(--on-accent);}
.as-btn-primary:hover{box-shadow: var(--glow-neon);}
.as-btn-secondary{background: transparent; color: var(--ink); border-color: var(--ink-muted);}
.as-btn-secondary:hover{border-color: var(--ink); background: var(--surface-raised);}
.as-btn-ghost{background: transparent; color: var(--ink-muted); padding: 0 var(--space-3);}
.as-btn-ghost:hover{color: var(--ink);}
.as-btn[disabled], .as-btn.is-disabled{background: var(--surface-raised); color: var(--ink-faint); border-color: var(--line); box-shadow: none; cursor: not-allowed;}
.as-btn-sm{height: 36px; padding: 0 var(--space-4); font-size: 11px;}
/* Badges */
.as-badge{display: inline-flex; align-items: center; gap: 6px; height: 24px; padding: 0 var(--space-2); border-radius: var(--radius-sm); font: 800 11px/1 var(--font-sans); letter-spacing: .12em; text-transform: uppercase;}
.as-badge-live{background: var(--live-tint); color: var(--live); border-radius: var(--radius-pill); padding: 0 10px;}
.as-badge-live::before{content: ""; width: 7px; height: 7px; border-radius: 50%; background: var(--live); box-shadow: 0 0 8px var(--live);}
.as-badge-crown{background: var(--crown); color: var(--on-accent);}
.as-badge-lead{background: var(--sunset); color: var(--on-accent);}
.as-badge-locked{background: var(--surface-raised); color: var(--ink-faint);}
.as-badge-open{background: var(--surface-raised); color: var(--ink-muted);}
/* Era tile */
.as-era{position: relative; display: flex; flex-direction: column; justify-content: space-between; gap: var(--space-4); min-height: 168px; padding: var(--space-5); border-radius: var(--radius-lg); background: var(--surface); border: 1px solid var(--line); overflow: hidden;}
.as-era > *{position: relative; z-index: 1;}
.as-era > .as-badge{align-self: flex-start;}
.as-era > .as-era-num{position: absolute; z-index: 0; right: 12px; top: -8px; font: 900 96px/1 var(--font-display); color: var(--surface-raised); pointer-events: none;}
.as-era-name{font: 900 32px/.95 var(--font-display); text-transform: uppercase;}
.as-era-meta{font: 500 13px/18px var(--font-sans); color: var(--ink-muted);}
.as-era.is-live{border-color: var(--live); box-shadow: var(--glow-live); background: linear-gradient(var(--live-tint), var(--live-tint)), var(--surface);}
.as-era.is-locked{background: var(--bg); border-style: dashed;}
.as-era.is-locked .as-era-name{color: var(--ink-faint);}
.as-era.is-done .as-era-champ{color: var(--crown); font-weight: 800;}
/* Character card */
.as-card{display: flex; flex-direction: column; border-radius: var(--radius-lg); background: var(--surface); border: 1px solid var(--line); overflow: hidden;}
.as-card-art{position: relative; aspect-ratio: 4 / 5; background: repeating-linear-gradient(135deg, var(--surface-raised) 0 10px, var(--surface) 10px 20px); display: flex; align-items: center; justify-content: center; color: var(--ink-faint); font: 800 11px/1 var(--font-sans); letter-spacing: .14em; text-transform: uppercase;}
.as-card-art .as-badge{position: absolute; top: var(--space-3); left: var(--space-3);}
.as-card-body{display: flex; flex-direction: column; gap: var(--space-3); padding: var(--space-4);}
.as-card-name{font: 800 28px/.95 var(--font-display); text-transform: uppercase;}
.as-card-votes{display: flex; justify-content: space-between; align-items: baseline; font: 500 13px/1 var(--font-sans); color: var(--ink-muted);}
.as-card-votes strong{font: 800 22px/1 var(--font-display); color: var(--ink);}
.as-bar{height: 8px; border-radius: var(--radius-sm); background: var(--surface-raised); overflow: hidden;}
.as-bar > i{display: block; height: 100%; border-radius: var(--radius-sm); background: var(--ink-muted);}
.as-card.is-leading .as-bar > i{background: var(--sunset);}
.as-card.is-selected{border-color: var(--neon); box-shadow: var(--glow-neon);}
.as-card.is-selected .as-bar > i{background: var(--neon);}
.as-card.is-crowned{border-color: var(--crown); box-shadow: var(--glow-crown);}
.as-card.is-crowned .as-card-name{color: var(--crown);}
.as-card.is-benched{opacity: .72;}
/* Countdown */
.as-countdown{display: inline-flex; gap: var(--space-2); align-items: flex-start;}
.as-countdown-unit{display: flex; flex-direction: column; align-items: center; gap: 6px; min-width: 64px; padding: var(--space-3) var(--space-2); border-radius: var(--radius-md); background: var(--surface); border: 1px solid var(--line);}
.as-countdown-unit b{font: 900 40px/1 var(--font-display); color: var(--live); font-variant-numeric: tabular-nums;}
.as-countdown-unit span{font: 800 10px/1 var(--font-sans); letter-spacing: .14em; color: var(--ink-muted); text-transform: uppercase;}
.as-countdown.is-ended b{color: var(--ink-faint);}
/* Holder gate */
.as-gate{display: flex; align-items: center; gap: var(--space-4); padding: var(--space-4) var(--space-5); border-radius: var(--radius-lg); border: 1px solid var(--line); background: var(--surface);}
.as-gate-icon{flex: none; width: 40px; height: 40px; border-radius: var(--radius-md); display: grid; place-items: center; font: 900 18px/1 var(--font-display);}
.as-gate-text{flex: 1; display: flex; flex-direction: column; gap: 2px;}
.as-gate-text strong{font: 800 15px/20px var(--font-sans);}
.as-gate-text span{font: 500 13px/18px var(--font-sans); color: var(--ink-muted);}
.as-gate.is-ok{border-color: var(--live); background: linear-gradient(var(--live-tint), var(--live-tint)), var(--surface);}
.as-gate.is-ok .as-gate-icon{background: var(--live); color: var(--on-accent);}
.as-gate.is-need .as-gate-icon{background: var(--neon); color: var(--on-accent);}
.as-gate.is-connect .as-gate-icon{background: var(--surface-raised); color: var(--ink);}
/* Contract chip */
.as-ca{display: inline-flex; align-items: center; gap: var(--space-3); height: 40px; padding: 0 var(--space-2) 0 var(--space-3); border-radius: var(--radius-md); background: var(--surface-raised); border: 1px solid var(--line);}
.as-ca-label{font: 800 10px/1 var(--font-sans); letter-spacing: .14em; color: var(--ink-muted); text-transform: uppercase;}
.as-ca code{font: 500 13px/1 var(--font-mono); color: var(--ink);}
.as-ca button{height: 28px; padding: 0 10px; border: 0; border-radius: var(--radius-sm); background: var(--surface); color: var(--ink); font: 800 10px/1 var(--font-sans); letter-spacing: .12em; text-transform: uppercase; cursor: pointer;}
.as-ca button:hover{background: var(--line);}
/* Icons: inline SVG, 2px stroke, round caps. Never glyphs or emoji. */
.as-icon{width: 20px; height: 20px; flex: none; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round;}
/* Pot counter */
.as-pot{display: flex; flex-direction: column; gap: var(--space-4); padding: var(--space-5); border-radius: var(--radius-lg); background: linear-gradient(180deg, var(--crown-tint), var(--surface) 70%); border: 1px solid var(--crown); box-shadow: 0 12px 40px -12px #ffc83d55;}
.as-pot-label{display: flex; justify-content: space-between; align-items: center; gap: var(--space-3); font: 800 12px/1 var(--font-sans); letter-spacing: .14em; text-transform: uppercase; color: var(--ink-muted);}
.as-pot-amount{font: 900 72px/.85 var(--font-display); color: var(--crown); font-variant-numeric: tabular-nums; letter-spacing: -.01em;}
.as-pot-amount small{font-size: .42em; color: var(--ink); margin-left: 6px; letter-spacing: 0;}
.as-pot-split{display: flex; gap: 3px; height: 10px;}
.as-pot-split i{display: block; border-radius: 3px;}
.as-pot-split i:nth-child(1){flex: 50; background: var(--crown);}
.as-pot-split i:nth-child(2){flex: 30; background: var(--sunset);}
.as-pot-split i:nth-child(3){flex: 20; background: var(--line);}
.as-pot-legend{display: flex; flex-wrap: wrap; gap: var(--space-2) var(--space-4); font: 500 13px/18px var(--font-sans); color: var(--ink-muted);}
.as-pot-legend b{color: var(--ink); font-weight: 800;}
/* Ticket */
.as-ticket{position: relative; display: inline-flex; align-items: stretch; border-radius: var(--radius-md); background: var(--crown); color: var(--on-accent); overflow: hidden; -webkit-mask: radial-gradient(circle 9px at 0 50%, #0000 98%, #000) left / 51% 100% no-repeat, radial-gradient(circle 9px at 100% 50%, #0000 98%, #000) right / 51% 100% no-repeat; mask: radial-gradient(circle 9px at 0 50%, #0000 98%, #000) left / 51% 100% no-repeat, radial-gradient(circle 9px at 100% 50%, #0000 98%, #000) right / 51% 100% no-repeat;}
.as-ticket-main{display: flex; flex-direction: column; gap: 4px; padding: 12px 18px 12px 22px;}
.as-ticket-main span{font: 800 11px/1 var(--font-sans); letter-spacing: .14em; text-transform: uppercase; opacity: .75;}
.as-ticket-main b{font: 900 26px/1 var(--font-display); text-transform: uppercase;}
.as-ticket-stub{display: flex; align-items: center; padding: 0 22px 0 16px; border-left: 2px dashed #0a091066; font: 900 22px/1 var(--font-display); font-variant-numeric: tabular-nums;}
.as-ticket.is-pending{background: var(--surface-raised); color: var(--ink);}
.as-ticket.is-pending .as-ticket-stub{border-left-color: var(--line); color: var(--ink-muted);}
/* Draw result */
.as-draw{display: flex; flex-direction: column; border-radius: var(--radius-lg); background: var(--surface); border: 1px solid var(--line); overflow: hidden;}
.as-draw-main{display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: var(--space-4); padding: var(--space-5); background: var(--crown); color: var(--on-accent);}
.as-draw-main code{font: 500 15px/1 var(--font-mono);}
.as-draw-main b{font: 900 48px/.9 var(--font-display); text-transform: uppercase;}
.as-draw-row{display: grid; grid-template-columns: 40px 1fr auto auto; gap: var(--space-4); align-items: center; padding: 14px var(--space-5); border-top: 1px solid var(--line); font: 500 14px/20px var(--font-sans);}
.as-draw-row:first-of-type{border-top: 0;}
.as-draw-row code{font: 500 13px/1 var(--font-mono);}
.as-draw-row b{font: 800 18px/1 var(--font-display); color: var(--crown); text-align: right; font-variant-numeric: tabular-nums;}
.as-draw-row a{font: 800 11px/1 var(--font-sans); letter-spacing: .12em; text-transform: uppercase; color: var(--ink-muted); text-decoration: none;}
.as-draw-row a:hover{color: var(--ink);}
.as-draw-proof{display: flex; align-items: center; gap: var(--space-2); padding: 14px var(--space-5); border-top: 1px solid var(--line); background: var(--bg); font: 500 13px/18px var(--font-sans); color: var(--ink-muted);}
/* Buyback feed */
.as-feed{display: flex; flex-direction: column; border-radius: var(--radius-lg); background: var(--surface); border: 1px solid var(--line); overflow: hidden;}
.as-feed-row{display: grid; grid-template-columns: 88px 1fr auto 24px; gap: var(--space-4); align-items: center; padding: 14px var(--space-5); border-top: 1px solid var(--line); font: 500 14px/20px var(--font-sans);}
.as-feed-row:first-child{border-top: 0;}
.as-feed-row time{font: 500 12px/1 var(--font-mono); color: var(--ink-muted);}
.as-feed-row strong{font-weight: 800;}
.as-feed-row b{font: 800 20px/1 var(--font-display); color: var(--sunset); text-align: right; font-variant-numeric: tabular-nums;}
.as-feed-row a{color: var(--ink-muted); display: flex;}
.as-feed-row a:hover{color: var(--ink);}
/* Fee flow: two lanes, source to destination */
.as-flow{display: grid; grid-template-columns: minmax(0, 1fr) 64px minmax(0, 1fr) 64px minmax(0, 1fr); align-items: center; gap: var(--space-3) 0;}
.as-flow-node{display: flex; flex-direction: column; gap: 6px; padding: var(--space-4) var(--space-5); border-radius: var(--radius-md); background: var(--surface); border: 1px solid var(--line);}
.as-flow-node span{font: 800 11px/1 var(--font-sans); letter-spacing: .14em; text-transform: uppercase; color: var(--ink-muted);}
.as-flow-node b{font: 900 26px/1 var(--font-display); text-transform: uppercase;}
.as-flow-node p{margin: 0; font: 500 13px/19px var(--font-sans); color: var(--ink-muted);}
.as-flow-arrow{height: 2px; margin: 0 8px; position: relative; background: currentColor;}
.as-flow-arrow::after{content: ""; position: absolute; right: -2px; top: -5px; border: 6px solid transparent; border-left: 8px solid currentColor; border-right: 0;}
.as-flow-node.is-pot{border-color: var(--crown); background: linear-gradient(var(--crown-tint), var(--crown-tint)), var(--surface);}
.as-flow-node.is-pot b{color: var(--crown);}
.as-flow-node.is-buyback{border-color: var(--sunset);}
.as-flow-node.is-buyback b{color: var(--sunset);}
@media (max-width: 760px){.as-flow{grid-template-columns: 1fr;} .as-flow-arrow{width: 2px; height: 28px; margin: 0 auto;} .as-flow-arrow::after{right: -5px; top: auto; bottom: -2px; border: 6px solid transparent; border-top: 8px solid currentColor; border-bottom: 0;}}
.as-draw-proof a{color: var(--ink); text-decoration: underline; text-underline-offset: 3px; text-decoration-color: var(--crown);}
.as-draw-proof a:hover{color: var(--crown);}

/* ---------------------------------------------------------------- layout shell */
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none !important}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-sans);padding-bottom:env(safe-area-inset-bottom)}
img{max-width:100%;display:block}
a{color:var(--neon)}a:hover{color:var(--ink)}
.wrap{width:100%;max-width:1344px;margin:0 auto;padding-left:48px;padding-right:48px}
.disp{font-family:var(--font-display);font-weight:900;text-transform:uppercase;letter-spacing:-.01em}
.neon-word{color:var(--neon);text-shadow:0 0 18px #ff3d7f99,0 0 48px #ff3d7f55}
.gold-word{color:var(--crown);text-shadow:0 0 18px #ffc83d80,0 0 48px #ffc83d40}
.num{font-variant-numeric:tabular-nums}
.muted{color:var(--ink-muted)}
.gold{color:var(--crown)}
.label{font:800 11px/1 var(--font-sans);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-muted)}
.lede{margin:0;max-width:560px;font:500 19px/30px var(--font-sans);color:#d9d3e6}
.page{background:var(--bg);color:var(--ink);min-height:100vh;overflow:hidden}
.sec{padding-top:96px;padding-bottom:96px;display:flex;flex-direction:column;gap:40px}
.sec-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px}
.sec-title{margin:0;font:900 88px/.88 var(--font-display);text-transform:uppercase;letter-spacing:-.01em}
.sec-note{margin:0;max-width:380px;font:500 16px/25px var(--font-sans);color:var(--ink-muted)}
.pulse{animation:as-pulse 1.6s ease-out infinite}
@keyframes as-pulse{0%{box-shadow:0 0 0 0 #3de0ff99}100%{box-shadow:0 0 0 14px #3de0ff00}}

.site-head{position:relative;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:24px;padding-bottom:24px}
.brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink)}
.brand span{font:900 28px/1 var(--font-display);text-transform:uppercase;white-space:nowrap}
.brand em{font-style:normal;color:var(--neon)}
.navlinks{display:flex;gap:28px}
.navlink{color:var(--ink-muted);text-decoration:none;font:800 12px/1 var(--font-sans);letter-spacing:.14em;text-transform:uppercase;padding:14px 0}
.navlink:hover,.navlink.on{color:var(--ink)}
.navlink.on{box-shadow:inset 0 -2px 0 var(--neon)}
.head-actions{display:flex;align-items:center;gap:12px}
.pot-pill{display:inline-flex;align-items:center;gap:10px;height:36px;padding:0 14px;border-radius:var(--radius-md);border:1px solid #ffc83d66;background:#ffc83d12;color:var(--ink-muted);text-decoration:none;font:800 11px/1 var(--font-sans);letter-spacing:.14em;text-transform:uppercase;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.pot-pill b{font:900 18px/1 var(--font-display);letter-spacing:0;color:var(--crown)}
.pot-pill:hover{color:var(--ink);border-color:var(--crown)}

.site-foot{display:flex;flex-direction:column;gap:24px;padding-top:72px;padding-bottom:120px;border-top:1px solid var(--line)}
.site-foot .brand span{font-size:40px}
.legal{margin:0;max-width:640px;font:500 13px/20px var(--font-sans);color:var(--ink-faint)}

.tabbar{display:none}
@media (max-width:760px){
  .wrap{padding-left:20px;padding-right:20px}
  .hide-m,.navlinks{display:none !important}
  .sec{padding-top:64px;padding-bottom:64px}
  .sec-title{font-size:56px}
  .tabbar{position:fixed;z-index:50;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(5,1fr);padding:6px;border-radius:20px;border:1px solid #ffffff1a;background:#14121dcc;-webkit-backdrop-filter:blur(18px) saturate(140%);backdrop-filter:blur(18px) saturate(140%);box-shadow:0 12px 40px #0009}
  .tab{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 0;border-radius:14px;color:var(--ink-muted);text-decoration:none;font:800 10px/1 var(--font-sans);letter-spacing:.1em;text-transform:uppercase}
  .tab svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
  .tab.on{color:var(--ink);background:#ffffff0f}
  .tab.pot.on{color:var(--crown)}
  .site-foot{padding-bottom:140px}
}

/* ---------------------------------------------------------------- live-data UI */
/* Wallet pill: glass, sits in every header. */
.wallet-pill{display:inline-flex;align-items:center;gap:10px;height:36px;padding:0 14px;border-radius:var(--radius-md);border:1px solid #ffffff1f;background:#ffffff0d;color:var(--ink);font:500 13px/1 var(--font-mono);cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:border-color .15s,background .15s}
.wallet-pill:hover{border-color:var(--live);background:#3de0ff14}
.wallet-pill::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--ink-faint)}
.wallet-pill.is-on::before{background:var(--live);box-shadow:0 0 8px var(--live)}
.wallet-pill:not(.is-on){font:800 11px/1 var(--font-sans);letter-spacing:.14em;text-transform:uppercase}

/* Character art from Storage fills the existing art slots. */
.art-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1}
.has-art > svg.bust,.has-art > .f-slot,.has-art > span:not([class]),.has-art > [aria-hidden="true"]:not(.art-shade){display:none}
.art-shade{position:absolute;inset:0;z-index:2;background:linear-gradient(180deg,#0a091000 45%,#0a0910d9 100%);pointer-events:none}
.has-art > .f-pct,.has-art > .f-rank{z-index:3}

/* Devnet ribbon */
.net-ribbon{position:fixed;z-index:60;left:16px;bottom:16px;display:inline-flex;align-items:center;gap:8px;height:28px;padding:0 12px;border-radius:999px;border:1px solid #3de0ff66;background:#0a0910b3;color:var(--live);font:800 10px/1 var(--font-sans);letter-spacing:.16em;text-transform:uppercase;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);pointer-events:none}
.net-ribbon::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--live)}

/* Toasts */
.toasts{position:fixed;z-index:70;right:20px;bottom:20px;display:flex;flex-direction:column;gap:10px;max-width:min(380px,calc(100vw - 40px))}
.toast{padding:14px 18px;border-radius:14px;border:1px solid #ffffff1f;background:#1e1b2ae6;color:var(--ink);font:600 14px/20px var(--font-sans);box-shadow:0 12px 40px #0008;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);animation:toast-in .2s ease-out}
.toast.is-error{border-color:#ff6b6b88}
.toast.is-ok{border-color:#3de0ff88}
@keyframes toast-in{from{opacity:0;transform:translateY(8px)}}
@media (max-width:760px){.toasts{bottom:96px;right:12px}.net-ribbon{left:12px;bottom:calc(96px + env(safe-area-inset-bottom))}}

/* Wallet picker (glass sheet) */
.wallet-sheet{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:20px;background:#0a0910a6;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.wallet-sheet[hidden]{display:none}
.wallet-card{width:min(380px,100%);display:flex;flex-direction:column;gap:12px;padding:24px;border-radius:24px;border:1px solid #ffffff1f;background:linear-gradient(160deg,#ffffff14,#ffffff05);-webkit-backdrop-filter:blur(24px) saturate(140%);backdrop-filter:blur(24px) saturate(140%);box-shadow:0 30px 80px #000a}
.wallet-card h3{margin:0 0 4px;font:900 36px/.9 var(--font-display);text-transform:uppercase}
.wallet-card p{margin:0 0 8px;font:500 14px/20px var(--font-sans);color:var(--ink-muted)}
.wallet-opt{display:flex;align-items:center;justify-content:space-between;height:52px;padding:0 18px;border-radius:14px;border:1px solid #ffffff1a;background:#ffffff0a;color:var(--ink);font:800 14px/1 var(--font-sans);cursor:pointer;text-decoration:none}
.wallet-opt:hover{border-color:var(--live);background:#3de0ff14;color:var(--ink)}
.wallet-opt small{font:600 11px/1 var(--font-sans);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint)}

/* Empty / loading states */
.empty{display:flex;flex-direction:column;gap:8px;padding:40px;border-radius:20px;border:1px dashed var(--line);color:var(--ink-muted);font:500 15px/23px var(--font-sans)}
.empty strong{font:900 32px/1 var(--font-display);text-transform:uppercase;color:var(--ink)}
.is-loading{opacity:.5}
[data-copy]{cursor:pointer}
