@import url('https://fonts.googleapis.com/css2?family=Archivo:wdth,wght@125,700;125,800;125,900&family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@500;700&family=Cinzel:wght@700;900&display=swap');
/* Valhalla skin: loaded after style.css on launchvalhalla.fun only. Every rule below is scoped to html[data-brand="valhalla"], so santahat.gold never moves a pixel. */
/* Gold leaf on black iron: Archivo (expanded) for display, Inter for body, JetBrains Mono for every number, Cinzel as the one inscription layer. Painted icons only, no emoji. */
/* <base href="/"> is set, so every url() is root-relative (valhalla/…). Keyframes are global, so the new ones are vh-prefixed; the Santa ones (tkUp, rowUp, chipRise, sparkFly, smSheen, actIn…) are kept and recoloured through the classes that use them. */

/* ---- tokens: the browns become iron, the OSRS yellow becomes heading gold, the gold family stays so the literal house-gold values in style.css read as hoard gold for free */
html[data-brand="valhalla"]{--bg:#06070A;--ink:#0A0C10;--panel:#14171E;--panel2:#0D1016;--wood:#1A1E27;--wood2:#262B36;--edge:#2B3140;--frame:#363D4D;--frame2:#4A5366;--gold:#F0B23E;--gold1:#FFE9A8;--gold2:#E7A72F;--gold3:#8E6416;--gold-txt:#FFD56A;--yel:#FFD56A;--frost:#8FB8FF;--cyan:#8FB8FF;--aurora:#4FE3B0;--ember:#FF6A3D;--grn:#3DF06A;--red:#FF5C5C;--txt:#ECEAE3;--dim:#9AA3B2;--mute:#5E6774;--line:rgba(255,255,255,.06);--hover:rgba(240,178,62,.07);--glass:rgba(10,12,16,.72);--ring:rgba(143,184,255,.35);--hi:rgba(200,215,235,.10);--ring-out:#04060A;--row-top:linear-gradient(90deg,rgba(240,178,62,.16),transparent 55%);--bifrost:linear-gradient(90deg,var(--frost),var(--aurora) 55%,var(--gold));--ease:cubic-bezier(.2,.7,.2,1);--sans:'Inter',-apple-system,'Segoe UI',system-ui,sans-serif;--mono:'JetBrains Mono',ui-monospace,Menlo,monospace;--disp:'Archivo',var(--sans);--insc:'Cinzel',serif;
  --grain:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .62 0 0 0 0 .68 0 0 0 0 .78 .08 0 0 0 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)'/%3E%3C/svg%3E")} /* 4% hammered-iron grain, no asset */
html[data-brand="valhalla"]{scrollbar-color:var(--wood2) var(--bg)}
html[data-brand="valhalla"]::-webkit-scrollbar,html[data-brand="valhalla"] ::-webkit-scrollbar{width:10px;height:10px}html[data-brand="valhalla"]::-webkit-scrollbar-track,html[data-brand="valhalla"] ::-webkit-scrollbar-track{background:var(--bg)}html[data-brand="valhalla"]::-webkit-scrollbar-thumb,html[data-brand="valhalla"] ::-webkit-scrollbar-thumb{background:var(--wood2);border:2px solid var(--bg);border-radius:6px}html[data-brand="valhalla"] ::-webkit-scrollbar-thumb:hover{background:var(--frame2)}
html[data-brand="valhalla"] ::selection{background:rgba(240,178,62,.35);color:#fff}

/* ---- ground: the longhall at night behind everything; the snow is gone and one warm glow sits at the top, like the fire behind the header */
html[data-brand="valhalla"]{background:var(--bg)}html[data-brand="valhalla"]::before{content:'';position:fixed;inset:0;z-index:-1;background:var(--bg) url('valhalla/bg.jpg') center top/cover no-repeat;transform:translateZ(0);will-change:transform;pointer-events:none} /* the hall sits on its own GPU layer: background-attachment:fixed repainted the whole page on every scroll frame */
html[data-brand="valhalla"] body{background:transparent;color:var(--txt);font:400 16px/1.45 var(--sans)}
html[data-brand="valhalla"] body::before{background:radial-gradient(ellipse at 50% 0%,rgba(143,184,255,.06),transparent 45%),radial-gradient(ellipse at center,transparent 55%,rgba(0,0,0,.55) 100%)}
html[data-brand="valhalla"] body::after{animation:none;inset:0;opacity:1;background:radial-gradient(60% 40% at 50% 0%,rgba(240,178,62,.10),transparent 70%)}
html[data-brand="valhalla"] a{color:var(--gold-txt)}
html[data-brand="valhalla"] button,html[data-brand="valhalla"] input,html[data-brand="valhalla"] select,html[data-brand="valhalla"] textarea{font-family:var(--sans);font-size:15px}
html[data-brand="valhalla"] input,html[data-brand="valhalla"] select,html[data-brand="valhalla"] textarea{font-size:16px} /* iOS zooms any input under 16px */
html[data-brand="valhalla"] .note{color:var(--dim);font-size:15px}
html[data-brand="valhalla"] footer{font-size:13px;color:var(--mute);opacity:1}
html[data-brand="valhalla"] section.on{animation:vhIn .16s var(--ease) both}
@keyframes vhIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
html[data-brand="valhalla"] header img,html[data-brand="valhalla"] .ge-title img,html[data-brand="valhalla"] .ca-head img,html[data-brand="valhalla"] .card img,html[data-brand="valhalla"] .ic{image-rendering:auto}

/* ---- hidden on this host (the markup stays in the DOM so app.js's top-level lookups never throw) */
html[data-brand="valhalla"] #s-plaza,html[data-brand="valhalla"] #s-todt,html[data-brand="valhalla"] #s-advent,html[data-brand="valhalla"] #s-index,html[data-brand="valhalla"] #s-quests,html[data-brand="valhalla"] #s-pfp,html[data-brand="valhalla"] #s-lore,html[data-brand="valhalla"] #s-art{display:none!important}
html[data-brand="valhalla"] nav a[data-s=plaza],html[data-brand="valhalla"] nav a[data-s=advent],html[data-brand="valhalla"] nav a[data-s=todt],html[data-brand="valhalla"] nav a[data-s=index],html[data-brand="valhalla"] nav a[data-s=quests],html[data-brand="valhalla"] nav a[data-s=art],html[data-brand="valhalla"] nav a[data-s=lore]{display:none}
html[data-brand="valhalla"] #lq-yield,html[data-brand="valhalla"] .lp2-create,html[data-brand="valhalla"] [data-fw=todt],html[data-brand="valhalla"] .hero{display:none} /* "Any wallet's yield" is $SANTA holder lore (hats, Nice/Naughty); the plaza hero is the Santa vault */

/* ---- type: every Press Start 2P and VT323 selector in style.css re-declared (Cinzel caps at the metric-matched size, Inter, or mono); display in Archivo expanded; numbers in JetBrains Mono */
html[data-brand="valhalla"] .pix,html[data-brand="valhalla"] .ge-row .it b,html[data-brand="valhalla"] .cup-row b,html[data-brand="valhalla"] .pod-sym,html[data-brand="valhalla"] .claim .t,html[data-brand="valhalla"] .sw-tok b,html[data-brand="valhalla"] .ge-ic{font-family:var(--insc);font-weight:700;font-size:13px;letter-spacing:1.2px;text-transform:uppercase}
html[data-brand="valhalla"] .ge-row .rk{font:700 12px var(--insc);letter-spacing:1px;color:var(--mute)}html[data-brand="valhalla"] .ge-row.base .rk{font-size:11px;color:var(--gold-txt)}html[data-brand="valhalla"] .ge-row.gp .rk{font-size:11px;color:var(--gold2)}
html[data-brand="valhalla"] .tr-chip{font:700 11px/1 var(--insc);letter-spacing:1px}
html[data-brand="valhalla"] .cup-clock b{font:700 15px var(--insc);letter-spacing:1.2px;font-variant-numeric:tabular-nums;color:#fff;text-shadow:0 0 12px rgba(240,178,62,.5),0 1px 0 #000}
html[data-brand="valhalla"] .lp-risk-h{font:600 11px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--dim)}
html[data-brand="valhalla"] .hero h1,html[data-brand="valhalla"] .card .name,html[data-brand="valhalla"] .count,html[data-brand="valhalla"] .row .rk,html[data-brand="valhalla"] .todt-bar .hint .big,html[data-brand="valhalla"] .home-h{font-family:var(--disp)} /* Santa-only pages, hidden above; re-declared anyway so no pixel face can surface */
html[data-brand="valhalla"] .po-timer,html[data-brand="valhalla"] .ca-addr,html[data-brand="valhalla"] .pod-medal,html[data-brand="valhalla"] .medal{font-family:var(--mono);font-variant-numeric:tabular-nums}
html[data-brand="valhalla"] .cd-chart .lbl,html[data-brand="valhalla"] .sn b u,html[data-brand="valhalla"] .tr-snipe .th b em,html[data-brand="valhalla"] .gp-m b em{font-family:var(--sans);font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--gold-txt)}
html[data-brand="valhalla"] .dd-list,html[data-brand="valhalla"] .ge-mode,html[data-brand="valhalla"] .ge-soon,html[data-brand="valhalla"] .ge-warn,html[data-brand="valhalla"] .ge-island,html[data-brand="valhalla"] .ge-isle,html[data-brand="valhalla"] .king-id b em,html[data-brand="valhalla"] .sm-crest{font-family:var(--sans)}
html[data-brand="valhalla"] header .brand{font:900 20px/1 var(--disp);font-stretch:125%;letter-spacing:.04em;text-transform:uppercase;color:var(--gold-txt);text-shadow:0 1px 0 #000,0 2px 8px rgba(0,0,0,.6)}
html[data-brand="valhalla"] .ge-title b{display:block;font:900 26px/1.1 var(--disp);font-stretch:125%;letter-spacing:.04em;text-transform:uppercase;background:linear-gradient(180deg,var(--gold1) 0%,#ffd06a 40%,var(--gold2) 65%,var(--gold3) 100%);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:none;filter:drop-shadow(0 2px 0 #000)}
html[data-brand="valhalla"] .ge-title i{font:600 12px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--dim);vertical-align:middle}html[data-brand="valhalla"] .ge-title span{font:400 13px var(--sans);color:var(--dim)}
html[data-brand="valhalla"] .ge-title img{width:32px;height:32px;filter:drop-shadow(0 1px 2px rgba(0,0,0,.6))}
html[data-brand="valhalla"] .lq-title{font:900 clamp(28px,4vw,40px)/1 var(--disp);font-stretch:125%;letter-spacing:.04em;text-transform:uppercase;color:var(--gold-txt);text-shadow:0 2px 0 #000,0 0 24px rgba(240,178,62,.2);margin:0 0 8px}
html[data-brand="valhalla"] .lq-title[data-eyebrow]::before{content:attr(data-eyebrow);display:block;font:900 12px/1 var(--insc);letter-spacing:.22em;color:var(--dim);margin-bottom:10px;text-shadow:none} /* the Cinzel eyebrow ("THE WELLS") comes from the brand dictionary via data-eyebrow */
html[data-brand="valhalla"] .panel h2,html[data-brand="valhalla"] .vb-modal h3{font:800 15px/1.2 var(--disp);font-stretch:125%;letter-spacing:.08em;text-transform:uppercase;text-shadow:0 1px 0 #000}html[data-brand="valhalla"] .vb-modal h3{font-size:18px}
html[data-brand="valhalla"] .cup-title b,html[data-brand="valhalla"] .cup-name b,html[data-brand="valhalla"] .king-strip .king-id b,html[data-brand="valhalla"] .ld-card .ld-name,html[data-brand="valhalla"] .ld-addh,html[data-brand="valhalla"] .tr-head b,html[data-brand="valhalla"] .lq-card h3,html[data-brand="valhalla"] .ge-sec b,html[data-brand="valhalla"] .lf-card-sym,html[data-brand="valhalla"] .ldsum-hero span,html[data-brand="valhalla"] .cd-card h4{font-family:var(--disp);font-stretch:125%;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--gold-txt);text-shadow:0 2px 0 #000}
html[data-brand="valhalla"] .cup-title b,html[data-brand="valhalla"] .cup-name b{font-size:20px}html[data-brand="valhalla"] .king-strip .king-id b{font-size:18px}html[data-brand="valhalla"] .ld-card .ld-name{font-size:15px}html[data-brand="valhalla"] .tr-head b{font-size:13px;letter-spacing:.08em}html[data-brand="valhalla"] .ge-sec b{font-size:12px;letter-spacing:.12em;text-shadow:none}html[data-brand="valhalla"] .lf-card-sym{font-size:22px}
html[data-brand="valhalla"] .lq-card h3,html[data-brand="valhalla"] .cd-card h4,html[data-brand="valhalla"] .ldsum-hero span{font-size:11px;letter-spacing:.14em;color:var(--dim);text-shadow:none}html[data-brand="valhalla"] .cd-card h4 small{font:400 13px var(--sans);letter-spacing:0;text-transform:none}
html[data-brand="valhalla"] .ge-tok-id>b{font:900 26px/1.1 var(--disp);font-stretch:125%;letter-spacing:.02em;color:var(--txt);text-shadow:none}html[data-brand="valhalla"] .ge-tok-id span{font:400 14px var(--sans);color:var(--dim)}
html[data-brand="valhalla"] .stat b,html[data-brand="valhalla"] .po-big,html[data-brand="valhalla"] .po-mid,html[data-brand="valhalla"] .sw-amt,html[data-brand="valhalla"] .ldsum-hero b,html[data-brand="valhalla"] .lq-tile b,html[data-brand="valhalla"] .vb-rows b,html[data-brand="valhalla"] .tt-rk,html[data-brand="valhalla"] .ge-tok-px>b,html[data-brand="valhalla"] .ge-tok-px span,html[data-brand="valhalla"] .ge-stats b,html[data-brand="valhalla"] .ycell b,html[data-brand="valhalla"] .pb-top b,html[data-brand="valhalla"] .lp-risk-g b,html[data-brand="valhalla"] .poolbox b,html[data-brand="valhalla"] .earn b,html[data-brand="valhalla"] .cup-prize b,html[data-brand="valhalla"] .pod-perf,html[data-brand="valhalla"] .pod-prize,html[data-brand="valhalla"] .ldsum-tiles b,html[data-brand="valhalla"] .ld-metrics b,html[data-brand="valhalla"] .king-mini b,html[data-brand="valhalla"] .king-bar span,html[data-brand="valhalla"] .king-bar em,html[data-brand="valhalla"] .cd-id b,html[data-brand="valhalla"] .cd-px b,html[data-brand="valhalla"] .cd-claim b,html[data-brand="valhalla"] .cd-kv dd,html[data-brand="valhalla"] .cd-snipebig em,html[data-brand="valhalla"] .ref-stats b,html[data-brand="valhalla"] .tt-usd,html[data-brand="valhalla"] .rb em,html[data-brand="valhalla"] .ge-tape .tp,html[data-brand="valhalla"] .ge-ca code,html[data-brand="valhalla"] .ref-link code,html[data-brand="valhalla"] .walletline code,html[data-brand="valhalla"] .ge-tok-id code,html[data-brand="valhalla"] .cup-row .cp,html[data-brand="valhalla"] .cup-row .cm,html[data-brand="valhalla"] .cup-row .cz,html[data-brand="valhalla"] .gs-pos-big,html[data-brand="valhalla"] .th em,html[data-brand="valhalla"] .sn em,html[data-brand="valhalla"] .ge-grad span,html[data-brand="valhalla"] .vh-stat b,html[data-brand="valhalla"] .ge-sched b,html[data-brand="valhalla"] .ge-row .r,html[data-brand="valhalla"] .sw-lines b,html[data-brand="valhalla"] .ge-dev b,html[data-brand="valhalla"] .ldsum-row em,html[data-brand="valhalla"] .lsum b,html[data-brand="valhalla"] .mono{font-family:var(--mono);font-variant-numeric:tabular-nums;text-shadow:none}
html[data-brand="valhalla"] .stat b{font-weight:700;font-size:24px;color:var(--gold-txt)}html[data-brand="valhalla"] .stat span{font-size:13px;color:var(--dim)}html[data-brand="valhalla"] .stat span:first-child{font:600 11px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--dim)}
html[data-brand="valhalla"] .ge-tok-px>b{font-weight:700;font-size:28px;color:var(--gold-txt)}html[data-brand="valhalla"] .ge-tok-px span{font-size:13px;font-weight:500;color:var(--dim)}
html[data-brand="valhalla"] .sw-amt{font-weight:700;font-size:28px;color:var(--txt)}html[data-brand="valhalla"] .sw-amt::placeholder{color:var(--mute)}
html[data-brand="valhalla"] .vb-rows b{font-weight:700;font-size:15px;color:var(--gold-txt)}html[data-brand="valhalla"] .vb-rows span{font:600 11px var(--sans);letter-spacing:.14em;color:var(--dim)}
html[data-brand="valhalla"] h1,html[data-brand="valhalla"] h2,html[data-brand="valhalla"] h3{text-wrap:balance}

/* ---- header: sticky blurred iron, 56px, a gold hairline; nav pills become text tabs; the wallet button is an iron pill with the avatar when signed in */
html[data-brand="valhalla"] header{position:sticky;top:0;z-index:20;min-height:56px;padding:0 18px;gap:12px;background:var(--grain),linear-gradient(180deg,rgba(14,16,22,.92),rgba(10,12,16,.88));background-blend-mode:overlay,normal;backdrop-filter:none;-webkit-backdrop-filter:blur(10px);border-bottom:1px solid rgba(240,178,62,.28);box-shadow:0 8px 24px rgba(0,0,0,.45)}
html[data-brand="valhalla"] header img{width:28px;height:28px;filter:drop-shadow(0 1px 2px rgba(0,0,0,.6))}
html[data-brand="valhalla"] header a.home:hover .brand{filter:brightness(1.1)}
html[data-brand="valhalla"] nav{gap:2px}html[data-brand="valhalla"] nav a{background:none;border:0;border-radius:6px;padding:8px 12px;color:var(--dim);font:600 14px/1.25 var(--sans);box-shadow:none;transition:color .12s var(--ease),background .12s var(--ease)}
html[data-brand="valhalla"] nav a:hover{transform:none;color:var(--txt);background:rgba(255,255,255,.04);box-shadow:none}
html[data-brand="valhalla"] nav a.on{color:var(--gold-txt);background:rgba(240,178,62,.08);box-shadow:inset 0 -2px 0 var(--gold);border-color:transparent;font-weight:600;text-shadow:none}
html[data-brand="valhalla"] #connectBtn{background:linear-gradient(180deg,var(--wood2),var(--wood));color:var(--txt);border:1px solid var(--frame);font:600 14px/1 var(--sans);box-shadow:inset 0 1px 0 var(--hi),0 1px 0 #000;text-shadow:none;font-variant-numeric:tabular-nums}
html[data-brand="valhalla"] #connectBtn:hover{border-color:var(--frame2);filter:none}
html[data-brand="valhalla"] .btn.me-btn{display:inline-flex;align-items:center;gap:8px;height:36px;padding:0 14px 0 6px;border-radius:999px}html[data-brand="valhalla"] .me-btn .av{width:24px;height:24px;font-size:12px;border-color:var(--gold3)}html[data-brand="valhalla"] .me-btn span{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* ---- strips: the High Seat (#kingBar) and the airdrop bar */
html[data-brand="valhalla"] .king-bar{padding:8px 18px;background:linear-gradient(90deg,rgba(240,178,62,.14),rgba(240,178,62,.04) 60%,transparent),var(--ink);border-bottom:1px solid rgba(240,178,62,.25);font:500 14px var(--sans)}
html[data-brand="valhalla"] .king-bar b{font:800 14px var(--disp);font-stretch:125%;letter-spacing:.04em;text-transform:uppercase;color:var(--gold-txt);transition:opacity .3s}html[data-brand="valhalla"] .king-bar span,html[data-brand="valhalla"] .king-bar em{font-size:13px;color:var(--dim);transition:opacity .3s}html[data-brand="valhalla"] .king-bar em{color:var(--txt)}
html[data-brand="valhalla"] .king-bar .kb-go{color:var(--gold-txt);border:1px solid var(--gold3);border-radius:999px;padding:2px 10px;font:600 12px var(--sans)}html[data-brand="valhalla"] .king-bar img{border-radius:50%;box-shadow:0 0 0 1px var(--gold3)}
html[data-brand="valhalla"] .kb-crown .ic{width:18px;height:18px;vertical-align:-3px}html[data-brand="valhalla"] .king-bar.vh-new .kb-crown .ic{animation:vhCrown .4s var(--ease) 1} /* a new High Seat: the circlet beats once */
@keyframes vhCrown{50%{transform:scale(1.15)}}
html[data-brand="valhalla"] .air-bar{padding:8px 18px;background:linear-gradient(90deg,rgba(61,240,106,.14),rgba(61,240,106,.03) 60%,transparent),var(--ink);border-bottom:1px solid rgba(61,240,106,.3);font:500 14px var(--sans)}html[data-brand="valhalla"] .air-bar .ab-tag{background:var(--grn);color:#04210A;border-radius:4px;font:700 11px/1.6 var(--sans);letter-spacing:.12em}html[data-brand="valhalla"] .air-bar b,html[data-brand="valhalla"] .air-bar i{color:#B9FFC6}

/* ---- buttons: gold leaf primary, iron secondary, ghost, danger */
html[data-brand="valhalla"] .btn{background:linear-gradient(180deg,var(--gold1),var(--gold2) 55%,#C98A1E);color:#1A1204;border:1px solid #7A5612;border-radius:8px;padding:7px 14px;font:600 15px/1.2 var(--sans);box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 1px 0 #5C3F0C,0 6px 16px rgba(240,178,62,.18);text-shadow:none;cursor:pointer;transition:filter .15s var(--ease),transform .08s,box-shadow .15s var(--ease)}
html[data-brand="valhalla"] .btn:hover{transform:none;filter:brightness(1.06);box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 1px 0 #5C3F0C,0 8px 20px rgba(240,178,62,.26)}
html[data-brand="valhalla"] .btn:active{transform:translateY(1px);box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 0 0 #5C3F0C}
html[data-brand="valhalla"] .btn:disabled{opacity:.4;box-shadow:none;filter:none;transform:none}
html[data-brand="valhalla"] .btn.sec{background:linear-gradient(180deg,var(--wood2),var(--wood));color:var(--txt);border-color:var(--frame);box-shadow:inset 0 1px 0 var(--hi),0 1px 0 #000;text-shadow:none}html[data-brand="valhalla"] .btn.sec:hover{border-color:var(--frame2);filter:none;box-shadow:inset 0 1px 0 var(--hi),0 1px 0 #000}
html[data-brand="valhalla"] .btn[data-ld=stop],html[data-brand="valhalla"] .btn[data-ld=hide],html[data-brand="valhalla"] .btn[data-lp2remove],html[data-brand="valhalla"] .btn.danger{background:transparent;border-color:rgba(255,92,92,.5);color:var(--red);box-shadow:none}html[data-brand="valhalla"] .btn[data-ld=stop]:hover,html[data-brand="valhalla"] .btn[data-ld=hide]:hover,html[data-brand="valhalla"] .btn[data-lp2remove]:hover{background:rgba(255,92,92,.08);border-color:var(--red)}
html[data-brand="valhalla"] .btn.ghost,html[data-brand="valhalla"] .linkbtn{background:none;border-color:transparent;color:var(--dim);box-shadow:none}html[data-brand="valhalla"] .linkbtn{color:var(--gold-txt)}
html[data-brand="valhalla"] .ge-acts .btn{font-size:15px}
html[data-brand="valhalla"] .cg-big{animation:vhRing .7s ease-out 1} /* "Claim the spoils" lands with one gold ring pulse */
@keyframes vhRing{0%{box-shadow:0 0 0 0 rgba(240,178,62,.55)}100%{box-shadow:0 0 0 8px rgba(240,178,62,0)}}

/* ---- the panel: gold hairline along the top of black iron, 4% grain, drop shadow (one construction, repeated); the Hall Shield before every heading, the gold inlay rule after it */
html[data-brand="valhalla"] .panel,html[data-brand="valhalla"] .stat,html[data-brand="valhalla"] .vb-modal,html[data-brand="valhalla"] .lq-tile,html[data-brand="valhalla"] .ldsum,html[data-brand="valhalla"] .lc-box,html[data-brand="valhalla"] .sc-box,html[data-brand="valhalla"] .ge-cup,html[data-brand="valhalla"] .earn,html[data-brand="valhalla"] .payout,html[data-brand="valhalla"] .ca,html[data-brand="valhalla"] .cd-coin,html[data-brand="valhalla"] .lf-card,html[data-brand="valhalla"] .pod,html[data-brand="valhalla"] .ld-card{background:var(--grain),linear-gradient(180deg,var(--panel),var(--panel2));background-blend-mode:overlay,normal;border:1px solid var(--frame);border-radius:10px;box-shadow:inset 0 1px 0 rgba(240,178,62,.22),inset 0 0 0 1px rgba(255,255,255,.02),0 12px 32px rgba(0,0,0,.55)}
html[data-brand="valhalla"] .panel h2::before{width:16px;height:16px;background-image:url('valhalla/mark.png')}html[data-brand="valhalla"] .vb-modal h3::before{width:18px;height:18px;background-image:url('valhalla/mark.png')}
html[data-brand="valhalla"] .panel h2::after{height:1px;margin-left:8px;background:linear-gradient(90deg,transparent 40%,rgba(255,233,168,.6) 50%,transparent 60%) no-repeat,linear-gradient(90deg,rgba(240,178,62,.5),transparent);background-size:50% 100%,100% 100%;background-position:-100% 0,0 0;animation:vhGlint 12s linear infinite} /* the inlay glints once per 12 s: one pass, opacity and position only */
@keyframes vhGlint{0%,80%{background-position:-100% 0,0 0}100%{background-position:200% 0,0 0}}
html[data-brand="valhalla"] .gallery .panel:hover{transform:none;box-shadow:inset 0 1px 0 rgba(240,178,62,.22),0 16px 36px rgba(0,0,0,.6)}
html[data-brand="valhalla"] .stat::after{background:radial-gradient(circle,rgba(240,178,62,.14),transparent 65%)}
html[data-brand="valhalla"] .badge{background:var(--wood);border:1px solid var(--edge);border-radius:4px;color:var(--gold-txt);font:600 11px/1.6 var(--sans);letter-spacing:.06em;box-shadow:none}

/* ---- ink wells: the inner surfaces, a frost ring when something inside has focus */
html[data-brand="valhalla"] .ge-table,html[data-brand="valhalla"] .sw-box,html[data-brand="valhalla"] .claim,html[data-brand="valhalla"] .ge-stats div,html[data-brand="valhalla"] .ge-trust,html[data-brand="valhalla"] .ge-ref,html[data-brand="valhalla"] .ge-posts,html[data-brand="valhalla"] .ge-dev,html[data-brand="valhalla"] .poolbox div,html[data-brand="valhalla"] .payback,html[data-brand="valhalla"] .ycell,html[data-brand="valhalla"] .ylist,html[data-brand="valhalla"] .vb-rows,html[data-brand="valhalla"] .vb-steps,html[data-brand="valhalla"] .cd-card,html[data-brand="valhalla"] .gs-box,html[data-brand="valhalla"] .lp-risk,html[data-brand="valhalla"] .lp-risk-g>div,html[data-brand="valhalla"] .lq-card,html[data-brand="valhalla"] .ld-metrics div,html[data-brand="valhalla"] .ldsum-tiles>div,html[data-brand="valhalla"] .king-mini div,html[data-brand="valhalla"] .cup-rows,html[data-brand="valhalla"] .me-id,html[data-brand="valhalla"] .al-h,html[data-brand="valhalla"] .vh,html[data-brand="valhalla"] .ld-addrow,html[data-brand="valhalla"] .lf-short,html[data-brand="valhalla"] .walletline code{background:var(--ink);border:1px solid var(--edge);border-radius:8px;box-shadow:inset 0 1px 0 rgba(0,0,0,.6)}
html[data-brand="valhalla"] .ge-table{border-radius:10px}
html[data-brand="valhalla"] .sw-box:focus-within,html[data-brand="valhalla"] .ge-check:focus-within input,html[data-brand="valhalla"] .gp-form:focus-within input{border-color:var(--frost);box-shadow:0 0 0 2px var(--ring)}
html[data-brand="valhalla"] .lp-risk{border-left:2px solid var(--ember)}html[data-brand="valhalla"] .lp-risk-g b{font-weight:700;font-size:18px;color:var(--gold-txt)}html[data-brand="valhalla"] .lp-risk-g span,html[data-brand="valhalla"] .poolbox span,html[data-brand="valhalla"] .ycell span,html[data-brand="valhalla"] .ge-stats span,html[data-brand="valhalla"] .ldsum-tiles span,html[data-brand="valhalla"] .ld-metrics span,html[data-brand="valhalla"] .king-mini span,html[data-brand="valhalla"] .lq-tile span,html[data-brand="valhalla"] .pb-top span,html[data-brand="valhalla"] .cd-claim span,html[data-brand="valhalla"] .gs-h,html[data-brand="valhalla"] .lc-next span,html[data-brand="valhalla"] .ge-tape-h,html[data-brand="valhalla"] .cup-bar .cup-clock,html[data-brand="valhalla"] .po-label,html[data-brand="valhalla"] .ge-tools label{font:600 11px/1.5 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--dim)}
html[data-brand="valhalla"] .poolbox b,html[data-brand="valhalla"] .ycell b,html[data-brand="valhalla"] .pb-top b,html[data-brand="valhalla"] .ge-stats b{font-weight:700;font-size:18px;color:var(--gold-txt)}html[data-brand="valhalla"] .ge-stats div[title*="burn"] b{color:var(--ember)}
html[data-brand="valhalla"] .lf-short{border-color:var(--gold3);background:rgba(240,178,62,.06)}html[data-brand="valhalla"] .lf-short b{color:var(--gold-txt)}

/* ---- inputs, selects, the custom dropdowns (glass) and segmented controls */
html[data-brand="valhalla"] .lf-fields input,html[data-brand="valhalla"] .lf-fields textarea,html[data-brand="valhalla"] .lf-seed input,html[data-brand="valhalla"] .ge-tools select,html[data-brand="valhalla"] .ge-tools input,html[data-brand="valhalla"] .ge-check input,html[data-brand="valhalla"] .form input,html[data-brand="valhalla"] .form textarea,html[data-brand="valhalla"] .lf-tax input,html[data-brand="valhalla"] .ge-dev input,html[data-brand="valhalla"] .ge-devlinks input,html[data-brand="valhalla"] .ge-devlinks textarea,html[data-brand="valhalla"] .cd-manage input,html[data-brand="valhalla"] .cd-manage select,html[data-brand="valhalla"] .cd-manage textarea,html[data-brand="valhalla"] .ld-new select,html[data-brand="valhalla"] .ld-new input,html[data-brand="valhalla"] .ld-addrow input,html[data-brand="valhalla"] .gp-form input,html[data-brand="valhalla"] .id-row input,html[data-brand="valhalla"] .lp-amt-row input,html[data-brand="valhalla"] select,html[data-brand="valhalla"] .sw-tok select,html[data-brand="valhalla"] .lf-pair select{background:var(--ink);color:var(--txt);border:1px solid var(--edge);border-radius:8px;padding:9px 12px;font:500 16px/1.3 var(--sans);box-shadow:inset 0 1px 0 rgba(0,0,0,.6)}
html[data-brand="valhalla"] .lf-fields input,html[data-brand="valhalla"] .lf-fields textarea,html[data-brand="valhalla"] .lf-seed input{min-height:44px}
html[data-brand="valhalla"] input[type=number],html[data-brand="valhalla"] .ge-ca code,html[data-brand="valhalla"] .walletline code{font-family:var(--mono);font-variant-numeric:tabular-nums}
html[data-brand="valhalla"] input::placeholder,html[data-brand="valhalla"] textarea::placeholder{color:var(--mute)}
html[data-brand="valhalla"] input:focus,html[data-brand="valhalla"] textarea:focus,html[data-brand="valhalla"] select:focus{outline:none;border-color:var(--frost)!important;box-shadow:0 0 0 2px var(--ring)} /* style.css L109 sets the warm ring with !important; the frost ring has to out-rank it */
html[data-brand="valhalla"] .lf-fields input.missing,html[data-brand="valhalla"] .lf-img.missing{border-color:var(--red);box-shadow:0 0 0 2px rgba(255,92,92,.25)}
html[data-brand="valhalla"] .lf-check input{accent-color:var(--gold)}
html[data-brand="valhalla"] .dd-btn{background:var(--ink);color:var(--txt);border:1px solid var(--edge);border-radius:8px;padding:9px 12px;font:500 15px/1.3 var(--sans);box-shadow:inset 0 1px 0 rgba(0,0,0,.6)}html[data-brand="valhalla"] .dd-btn:hover{border-color:var(--frame2);color:var(--txt)}
html[data-brand="valhalla"] .dd.open .dd-btn{border-color:var(--frost);color:var(--txt);box-shadow:0 0 0 2px var(--ring)}html[data-brand="valhalla"] .dd-btn:focus-visible{outline:2px solid var(--frost);outline-offset:1px}html[data-brand="valhalla"] .dd-caret{border-top-color:var(--gold)}
html[data-brand="valhalla"] .dd-list{background:var(--glass);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid var(--frame);border-radius:10px;box-shadow:0 16px 40px rgba(0,0,0,.6),inset 0 1px 0 rgba(240,178,62,.18);padding:4px;font:500 15px/1.3 var(--sans);color:var(--txt);scrollbar-color:var(--wood2) transparent}
html[data-brand="valhalla"] .dd-opt{min-height:40px;display:flex;align-items:center;padding:0 12px 0 28px;border-radius:6px}html[data-brand="valhalla"] .dd-opt.kb{background:var(--hover);color:var(--txt)}html[data-brand="valhalla"] .dd-opt.on{color:var(--gold-txt)}
html[data-brand="valhalla"] .dd-opt.on::before{width:6px;height:6px;margin-top:-3px;background:var(--gold);transform:none;border-radius:1px;box-shadow:0 0 6px rgba(240,178,62,.6)} /* a gold square, not the diamond */
html[data-brand="valhalla"] .dd-list::-webkit-scrollbar-thumb{background:var(--wood2);border-color:transparent}html[data-brand="valhalla"] .dd-list::-webkit-scrollbar-track{background:transparent}
html[data-brand="valhalla"] .sw-tok .dd-btn,html[data-brand="valhalla"] .cd-manage .dd-btn,html[data-brand="valhalla"] .lf-pair .dd-btn,html[data-brand="valhalla"] .sw-tok select,html[data-brand="valhalla"] .lf-pair select{background:var(--wood);padding:5px 10px;font-size:14px}html[data-brand="valhalla"] .lf-pair .dd:has(select.on) .dd-btn,html[data-brand="valhalla"] .lf-pair select.on{border-color:var(--gold3);color:var(--gold-txt)}
html[data-brand="valhalla"] .ge-tabs{background:var(--ink);border:1px solid var(--edge);border-radius:8px;padding:3px;gap:2px}html[data-brand="valhalla"] .ge-tabs button{color:var(--dim);font:600 14px/1.3 var(--sans);padding:6px 12px;border-radius:6px;transition:color .12s var(--ease),background .12s var(--ease)}html[data-brand="valhalla"] .ge-tabs button:hover{color:var(--txt)}
html[data-brand="valhalla"] .ge-tabs button.on{background:rgba(240,178,62,.08);color:var(--gold-txt);box-shadow:inset 0 -2px 0 var(--gold)}html[data-brand="valhalla"] .ge-tabs i{font-size:12px;color:var(--mute)}html[data-brand="valhalla"] .ge-tabs button.dead{color:var(--mute)}
html[data-brand="valhalla"] .sw-slip button,html[data-brand="valhalla"] .tt-tabs button,html[data-brand="valhalla"] .sw-max button{background:var(--ink);border:1px solid var(--edge);border-radius:999px;color:var(--dim);font:600 12px/1.4 var(--sans);padding:3px 10px}
html[data-brand="valhalla"] .sw-slip button.on,html[data-brand="valhalla"] .tt-tabs button.on,html[data-brand="valhalla"] .sw-max button:hover{background:rgba(240,178,62,.1);color:var(--gold-txt);border-color:var(--gold3)}html[data-brand="valhalla"] .sw-slip span{font-size:13px}
html[data-brand="valhalla"] .ge-chart-src button.on{color:#1A1204}

/* ---- board: ink table, hairline dividers, no stripes, a left rail per tier, the Bifröst bar under every Trenches name */
html[data-brand="valhalla"] .ge-th{background:#0E1117;color:var(--dim);font:600 11px/1.3 var(--sans);letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid var(--edge);padding:9px 10px}
html[data-brand="valhalla"] .ge-row{min-height:52px;border-bottom:1px solid var(--line);transition:background .12s var(--ease)}html[data-brand="valhalla"] .ge-row:nth-child(even){background:transparent}html[data-brand="valhalla"] .ge-row:hover{background:var(--hover)}
html[data-brand="valhalla"] .ge-row.base,html[data-brand="valhalla"] .ge-row.gp{background:rgba(240,178,62,.03);border-left:2px solid var(--gold3);padding-left:8px}
html[data-brand="valhalla"] .ge-row.isle{border-left:2px solid var(--frost);padding-left:8px}html[data-brand="valhalla"] .ge-row.chosen{border-left:2px solid var(--gold);padding-left:8px}
html[data-brand="valhalla"] .ge-row.isle .it>span{flex:1 1 auto}html[data-brand="valhalla"] .ge-row.isle .it>span::after{content:'';display:block;height:3px;margin-top:4px;border-radius:2px;background:var(--bifrost) 0 0/var(--grad,0%) 100% no-repeat,rgba(143,184,255,.15);transition:background-size .7s var(--ease)} /* renderBoard sets style="--grad:NN%" on Trenches rows */
html[data-brand="valhalla"] .ge-row .it small{font:400 12px var(--sans);color:var(--dim)}html[data-brand="valhalla"] .ge-row .it b{color:var(--yel);line-height:1.25}html[data-brand="valhalla"] .lp-inline{color:var(--dim)}
html[data-brand="valhalla"] .ge-row .r{font-size:13px;font-weight:500}html[data-brand="valhalla"] .ge-row .r b{font-weight:700;font-size:13px}html[data-brand="valhalla"] .ge-row .r small{font-size:11px;color:var(--dim)}html[data-brand="valhalla"] .ge-row .r .na{color:var(--mute)}
html[data-brand="valhalla"] .ge-row .go{color:var(--gold3);font-size:22px}html[data-brand="valhalla"] .ge-row:hover .go{color:var(--gold)}
html[data-brand="valhalla"] .ge-ic{border:1px solid var(--edge);background:var(--panel2);color:var(--yel)}html[data-brand="valhalla"] .ge-ic.sm{font-size:10px}html[data-brand="valhalla"] .ge-ic.big{border-color:var(--frame2)}
html[data-brand="valhalla"] .ge-sec{border-top-color:var(--line)}html[data-brand="valhalla"] .ge-sec span{font-size:12px}html[data-brand="valhalla"] .ge-sec a{color:var(--gold-txt)}
html[data-brand="valhalla"] #ecoHead [data-sort]:hover{color:var(--txt)}html[data-brand="valhalla"] #ecoHead [data-sort].on{color:var(--gold-txt)}html[data-brand="valhalla"] #ecoHead [data-sort].on::after{border-top-color:var(--gold);transition:transform .15s var(--ease)}html[data-brand="valhalla"] #ecoHead [data-sort].on.asc::after{border-top:6px solid var(--gold);border-bottom:0;transform:rotate(180deg)}
html[data-brand="valhalla"] .ge-row.sm-top,html[data-brand="valhalla"] .ge-row.sm-top:nth-child(even){background:var(--row-top),transparent;border-top:1px solid rgba(240,178,62,.35);border-bottom:1px solid rgba(240,178,62,.2);box-shadow:inset 2px 0 0 var(--gold),inset 0 0 28px rgba(240,178,62,.06)} /* a coin forged here that sits in the Hall top 10: gold sweep, no red */
html[data-brand="valhalla"] .ge-row.sm-top:hover{background:linear-gradient(90deg,rgba(240,178,62,.22),transparent 55%),var(--hover)}
html[data-brand="valhalla"] .ge-row.sm-top::after{background:linear-gradient(105deg,transparent 43%,rgba(255,233,168,.22) 50%,transparent 57%);background-size:260% 100%;background-repeat:no-repeat;animation:smSheen 6s linear infinite} /* smSheen stays on, brighter than Santa's .14 */
html[data-brand="valhalla"] .ge-row.sm-top .rk{color:var(--gold-txt);text-shadow:0 0 9px rgba(240,178,62,.6)}html[data-brand="valhalla"] .ge-row.sm-top .ge-ic{box-shadow:0 0 0 2px var(--gold),0 0 16px rgba(240,178,62,.5)}html[data-brand="valhalla"] .ge-row.sm-top .mc b{color:var(--gold1)}
html[data-brand="valhalla"] .sm-crest{font:700 10px/1 var(--insc);letter-spacing:.08em;text-transform:uppercase;color:#1A1204;background:linear-gradient(180deg,#ffe9a6,#e0a534);border:1px solid #fff3c4;border-radius:999px;padding:3px 8px 3px 5px;box-shadow:0 1px 0 rgba(0,0,0,.55),0 0 12px rgba(240,178,62,.3)}
html[data-brand="valhalla"] .sm-crest.plain{background:none;color:var(--gold-txt);border-color:var(--gold3);box-shadow:none}html[data-brand="valhalla"] .sm-note{color:var(--gold-txt)}
/* the board grid: the same minmax(0,…) tracks as style.css, numeric cells +4px because Inter and the mono are wider than VT323; one @container per step, copied whole (a scoped rule cannot partially override a track list) */
html[data-brand="valhalla"] .ge-wide .ge-th,html[data-brand="valhalla"] .ge-wide .ge-row{grid-template-columns:40px minmax(150px,1fr) 104px 64px 64px 64px 70px 80px 76px 70px 84px 18px}
@container (max-width:1040px){html[data-brand="valhalla"] .ge-wide .ge-th,html[data-brand="valhalla"] .ge-wide .ge-row{grid-template-columns:40px minmax(150px,1fr) 104px 64px 64px 70px 80px 76px 70px 84px 18px}}
@container (max-width:970px){html[data-brand="valhalla"] .ge-wide .ge-th,html[data-brand="valhalla"] .ge-wide .ge-row{grid-template-columns:40px minmax(150px,1fr) 104px 64px 70px 80px 76px 70px 84px 18px}}
@container (max-width:900px){html[data-brand="valhalla"] .ge-wide .ge-th,html[data-brand="valhalla"] .ge-wide .ge-row{grid-template-columns:40px minmax(150px,1fr) 104px 64px 70px 80px 76px 84px 18px}}
@container (max-width:820px){html[data-brand="valhalla"] .ge-wide .ge-th,html[data-brand="valhalla"] .ge-wide .ge-row{grid-template-columns:40px minmax(140px,1fr) 104px 70px 80px 76px 84px 18px}}
@container (max-width:740px){html[data-brand="valhalla"] .ge-wide .ge-th,html[data-brand="valhalla"] .ge-wide .ge-row{grid-template-columns:40px minmax(140px,1fr) 104px 70px 76px 84px 18px}}
@container (max-width:640px){html[data-brand="valhalla"] .ge-wide .ge-th,html[data-brand="valhalla"] .ge-wide .ge-row{grid-template-columns:40px minmax(0,1fr) 104px 70px 84px 18px}}
@container (max-width:520px){html[data-brand="valhalla"] .ge-wide .ge-th,html[data-brand="valhalla"] .ge-wide .ge-row{grid-template-columns:28px minmax(0,1fr) 86px 60px 16px;gap:6px;padding:6px 6px}html[data-brand="valhalla"] .ge-wide .ge-row.base,html[data-brand="valhalla"] .ge-wide .ge-row.gp,html[data-brand="valhalla"] .ge-wide .ge-row.isle,html[data-brand="valhalla"] .ge-wide .ge-row.chosen{padding-left:4px}html[data-brand="valhalla"] .ge-wide .ge-row .it b{font-size:11px;letter-spacing:.5px}html[data-brand="valhalla"] .ge-wide .ge-row .it small{font-size:11px}html[data-brand="valhalla"] .ge-wide .ge-row .it b .ge-mode{display:block;width:max-content;max-width:100%;margin-top:3px}} /* the name column is ~50px after the icon here: Cinzel caps at 11px fit what the 10px pixel face fitted, the tax pill takes its own line */

/* ---- pills and tags: iron capsules, Inter 600 11px caps; the Trenches tag is frost, tax modes ember / green / frost, warnings red */
html[data-brand="valhalla"] .lq-tag,html[data-brand="valhalla"] .king-id b em,html[data-brand="valhalla"] .king-strip .king-id em,html[data-brand="valhalla"] .ge-mode,html[data-brand="valhalla"] .ge-soon,html[data-brand="valhalla"] .ge-warn,html[data-brand="valhalla"] .ge-island,html[data-brand="valhalla"] .ge-isle,html[data-brand="valhalla"] .lf-card-tags i,html[data-brand="valhalla"] .gp-dev,html[data-brand="valhalla"] .gp-hold,html[data-brand="valhalla"] .og{background:#11141B;border:1px solid var(--edge);border-radius:999px;font:600 11px/1.5 var(--sans);letter-spacing:.06em;text-transform:uppercase;padding:2px 8px;color:var(--dim);vertical-align:middle;text-shadow:none}
html[data-brand="valhalla"] .ge-mode{display:inline-block;max-width:100%;letter-spacing:.04em}html[data-brand="valhalla"] .ge-mode.m-burn{color:var(--ember);border-color:rgba(255,106,61,.5);background:rgba(255,106,61,.08)}html[data-brand="valhalla"] .ge-mode.m-rewards{color:var(--grn);border-color:rgba(61,240,106,.45);background:rgba(61,240,106,.08)}html[data-brand="valhalla"] .ge-mode.m-buyback{color:var(--frost);border-color:rgba(143,184,255,.45);background:rgba(143,184,255,.08)}
html[data-brand="valhalla"] .ge-warn{color:var(--red);border-color:rgba(255,92,92,.5);background:rgba(255,92,92,.08)}html[data-brand="valhalla"] .ge-soon,html[data-brand="valhalla"] .lq-tag,html[data-brand="valhalla"] .king-id b em,html[data-brand="valhalla"] .king-strip .king-id em{color:var(--gold-txt);border-color:var(--gold3)}
html[data-brand="valhalla"] .ge-island,html[data-brand="valhalla"] .ge-isle{color:var(--frost);border-color:rgba(143,184,255,.4);background:rgba(143,184,255,.06);border-radius:4px;padding:1px 6px}
html[data-brand="valhalla"] .ge-island.rep-good{color:var(--grn);border-color:rgba(61,240,106,.45)}html[data-brand="valhalla"] .ge-island.rep-mid{color:var(--gold-txt);border-color:var(--gold3)}html[data-brand="valhalla"] .ge-island.rep-bad{color:var(--red);border-color:rgba(255,92,92,.5)}
html[data-brand="valhalla"] .gp-dev{color:var(--frost);border-color:rgba(143,184,255,.45)}html[data-brand="valhalla"] .gp-hold{color:var(--grn);border-color:rgba(61,240,106,.35);background:rgba(61,240,106,.08)}html[data-brand="valhalla"] .gp-hold.gp-out{color:var(--dim);border-color:var(--edge);background:#11141B}
html[data-brand="valhalla"] .og{text-transform:none;letter-spacing:0;font-size:12px;font-weight:500;color:var(--txt);gap:5px}html[data-brand="valhalla"] .og b{color:var(--dim)}html[data-brand="valhalla"] .og-top{border-color:var(--gold3)}html[data-brand="valhalla"] .og-top b{color:var(--gold-txt)}
html[data-brand="valhalla"] .live{color:var(--grn);border-color:var(--grn);border-radius:4px;font:700 11px/1.6 var(--sans);letter-spacing:.16em;animation:vhLive 1.6s ease-in-out infinite}
@keyframes vhLive{0%,100%{opacity:1;box-shadow:0 0 0 0 rgba(61,240,106,.6)}50%{opacity:.75;box-shadow:0 0 0 6px rgba(61,240,106,0),0 0 10px rgba(61,240,106,.35)}} /* livepulse in the house green, a touch wider */
html[data-brand="valhalla"] .gp-burnt,html[data-brand="valhalla"] .cd-burned b,html[data-brand="valhalla"] .cd-burned em,html[data-brand="valhalla"] .ge-issuer,html[data-brand="valhalla"] #lfPairNote b{color:var(--ember)}

/* ---- token page: ghost back, Archivo name, mono price, ink stat tiles, the Bifröst graduation bar, The Oath, the tape, the Bench */
html[data-brand="valhalla"] .ge-back{background:transparent;border:0;color:var(--dim);font-size:28px;border-radius:8px;transition:color .12s var(--ease),background .12s var(--ease)}html[data-brand="valhalla"] .ge-back:hover{color:var(--txt);background:rgba(255,255,255,.05)}
html[data-brand="valhalla"] .ge-banner{border:1px solid var(--frame);border-radius:10px;background:var(--ink) url('valhalla/banner.jpg') center/cover no-repeat}
html[data-brand="valhalla"] .ge-chart,html[data-brand="valhalla"] .ge-ownchart{border:1px solid var(--edge);border-radius:10px}
html[data-brand="valhalla"] .ge-stats div{box-shadow:inset 0 1px 0 rgba(240,178,62,.14)}
html[data-brand="valhalla"] .ge-grad .bar{height:8px;background:rgba(143,184,255,.12);border:1px solid var(--edge);border-radius:4px}html[data-brand="valhalla"] .ge-grad .bar i{position:relative;background:var(--bifrost);box-shadow:0 0 10px rgba(143,184,255,.25);transition:width .7s var(--ease)}
html[data-brand="valhalla"] .ge-grad .bar i::after{content:'';position:absolute;right:0;top:0;bottom:0;width:2px;background:var(--gold1);box-shadow:0 0 6px var(--gold1)} /* the gold cap at the fill edge */
html[data-brand="valhalla"] .ge-grad.full .bar i{background:var(--gold);box-shadow:0 0 14px rgba(240,178,62,.5)}html[data-brand="valhalla"] .ge-grad span{font-size:13px;font-weight:500;color:var(--dim)}
html[data-brand="valhalla"] .vh-sweep{position:relative;overflow:hidden}html[data-brand="valhalla"] .vh-sweep::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(100deg,transparent 40%,rgba(255,233,168,.35) 50%,transparent 60%) no-repeat;background-size:200% 100%;animation:vhSweep .5s ease-out 1 both} /* chosen: one gold light sweep across the row or the coin header, added by app.js */
@keyframes vhSweep{from{background-position:200% 0}to{background-position:-100% 0}}
html[data-brand="valhalla"] .vh-pop{animation:vhPop .2s var(--ease) 1 both}
@keyframes vhPop{from{transform:scale(.8);opacity:0}to{transform:none;opacity:1}}
html[data-brand="valhalla"] .ge-trust{font:400 15px/1.45 var(--sans)}html[data-brand="valhalla"] .tr-grid{gap:0 14px}html[data-brand="valhalla"] .tr-grid>div{padding:6px 0;border-bottom:1px solid var(--line)}html[data-brand="valhalla"] .tr-warn,html[data-brand="valhalla"] .tr-fee{color:var(--gold-txt)}html[data-brand="valhalla"] .tr-na{color:var(--mute)}
html[data-brand="valhalla"] .th i,html[data-brand="valhalla"] .sn i{background:var(--gold3);opacity:1}html[data-brand="valhalla"] .th.lab b{color:var(--gold-txt)}html[data-brand="valhalla"] .sn em.sold{color:var(--red)}html[data-brand="valhalla"] .tip{border-color:var(--edge);color:var(--mute)}
html[data-brand="valhalla"] .ge-devsold,html[data-brand="valhalla"] .tr-devsold{background:rgba(255,92,92,.08);border:1px solid rgba(255,92,92,.4);border-radius:8px;color:#FFB3B3}html[data-brand="valhalla"] .ge-devsold b{color:var(--red)}
html[data-brand="valhalla"] .ge-sched{background:rgba(240,178,62,.08);border:1px solid var(--gold3);border-radius:8px}html[data-brand="valhalla"] .ge-sched b{color:var(--gold-txt);font-size:16px}html[data-brand="valhalla"] .tr-curve{border-color:rgba(61,240,106,.35);color:#9FE3A8}
html[data-brand="valhalla"] .ge-tape .tp{background:var(--ink);border-color:var(--line);font-size:13px;font-weight:500;color:var(--txt)}html[data-brand="valhalla"] .ge-tape .tp:first-of-type{border-top-color:var(--line);border-radius:8px 8px 0 0}html[data-brand="valhalla"] .ge-tape .tp:last-child{border-radius:0 0 8px 8px}html[data-brand="valhalla"] .ge-tape .tp b{color:var(--gold-txt)}html[data-brand="valhalla"] .ge-tape .tp:hover{background:var(--hover)}html[data-brand="valhalla"] .ge-tape .tp i{font-size:12px}
html[data-brand="valhalla"] .ge-ca code{background:var(--ink);border:1px solid var(--edge);border-radius:8px;padding:9px 12px;font-size:13px;color:var(--txt)}
html[data-brand="valhalla"] .ge-links a{background:var(--wood);border:1px solid var(--edge);border-radius:999px;font:500 13px/1.6 var(--sans);padding:4px 12px}html[data-brand="valhalla"] .ge-links a:hover{background:var(--wood2);border-color:var(--frame2)}
html[data-brand="valhalla"] .ge-ref{font-size:14px}html[data-brand="valhalla"] .ref-link code{background:var(--wood);border-color:var(--edge);border-radius:6px;font-size:12px;color:var(--gold-txt)}html[data-brand="valhalla"] .ref-stats div{background:var(--wood);border-color:var(--edge);border-radius:8px}html[data-brand="valhalla"] .ref-stats b{color:var(--gold-txt);font-weight:700}html[data-brand="valhalla"] .ref-stats span,html[data-brand="valhalla"] .ref-stats i{font-size:12px}
html[data-brand="valhalla"] .ge-dev{font-size:14px}html[data-brand="valhalla"] .ge-dev b{color:var(--gold-txt)}html[data-brand="valhalla"] .ge-dev input{width:72px;padding:5px 8px;font-size:14px}
html[data-brand="valhalla"] .ge-launcher{color:var(--gold-txt);border-bottom-color:var(--gold3)}html[data-brand="valhalla"] .ge-launcher i.rep-mid{color:var(--gold-txt)}html[data-brand="valhalla"] .ge-launcher i.rep-bad{color:var(--red)}
html[data-brand="valhalla"] .ge-watch.on{border-color:var(--gold3);color:var(--gold-txt)}html[data-brand="valhalla"] .ge-tok-px .ge-watch{font-size:13px;padding:5px 10px}
html[data-brand="valhalla"] .ge-taxline{font-size:14px}
html[data-brand="valhalla"] .gp-m{background:rgba(255,255,255,.03);border-radius:6px;font-size:15px}html[data-brand="valhalla"] .gp-m b{color:var(--gold-txt)}html[data-brand="valhalla"] .gp-m.dev b{color:var(--frost)}html[data-brand="valhalla"] .gp-m small{font-size:12px}
html[data-brand="valhalla"] .gs-meter{background:linear-gradient(90deg,#3A1A1A,#5A1F1F);border-color:var(--edge)}html[data-brand="valhalla"] .gs-meter i{background:linear-gradient(90deg,var(--gold3),var(--gold));box-shadow:0 0 10px rgba(240,178,62,.45)} /* Horns up in gold against Horns down in red */
html[data-brand="valhalla"] .gs-btn{background:var(--wood);border:1px solid var(--edge);border-radius:8px;font:600 14px/1.3 var(--sans);color:var(--txt)}html[data-brand="valhalla"] .gs-bull.on,html[data-brand="valhalla"] .gs-bull:hover{border-color:var(--gold3);color:var(--gold-txt)}html[data-brand="valhalla"] .gs-bear.on,html[data-brand="valhalla"] .gs-bear:hover{border-color:rgba(255,92,92,.6);color:#FF8A80}
html[data-brand="valhalla"] .gs-vrow,html[data-brand="valhalla"] .gs-pos-f,html[data-brand="valhalla"] .gs-l li small,html[data-brand="valhalla"] .tt-foot{font-size:13px}html[data-brand="valhalla"] .gs-l li{font-size:15px}
html[data-brand="valhalla"] .gs-pos{background:linear-gradient(90deg,rgba(240,178,62,.12),var(--ink) 60%);border-color:var(--gold3)}html[data-brand="valhalla"] .gs-pos-big{font-weight:700;font-size:30px}html[data-brand="valhalla"] .gs-pos-big.up{color:var(--grn)}html[data-brand="valhalla"] .gs-pos-big.dn{color:var(--red)}

/* ---- swap: an ink well with the mono amount; Buy stays the gold primary, Sell goes iron with red text */
html[data-brand="valhalla"] .sw-box{padding:10px 12px}html[data-brand="valhalla"] .sw-arrow{color:var(--gold)}html[data-brand="valhalla"] .sw-px,html[data-brand="valhalla"] .sw-bal{font-size:13px}html[data-brand="valhalla"] .sw-bal b{font-family:var(--mono)}
html[data-brand="valhalla"] .sw-lines{background:var(--panel2);border-color:var(--edge);border-radius:8px}html[data-brand="valhalla"] .sw-lines div{border-bottom-color:var(--line);font-size:13px}html[data-brand="valhalla"] .sw-lines b{font-size:13px}
html[data-brand="valhalla"] .sw-go{font-size:16px;padding:10px}html[data-brand="valhalla"] .sw-go.sell{background:linear-gradient(180deg,var(--wood2),var(--wood));color:var(--red);border-color:rgba(255,92,92,.5);box-shadow:none}html[data-brand="valhalla"] .sw-st{font-size:14px}

/* ---- the aside: Berserkers, Skalds, the Feast; rank discs gold / cold silver / bronze; avatars ringed in old gold */
html[data-brand="valhalla"] .ge-side{top:66px}
html[data-brand="valhalla"] .tt-row{min-height:44px;border-top-color:var(--line)}html[data-brand="valhalla"] .tt-rk{font-weight:700;font-size:12px;background:rgba(255,255,255,.05);color:var(--mute)}
html[data-brand="valhalla"] .tt-1 .tt-rk{background:linear-gradient(180deg,#FFE9A8,#F0B23E);color:#1A1204}html[data-brand="valhalla"] .tt-2 .tt-rk{background:linear-gradient(180deg,#E6EBF2,#C7CDD8);color:#151A22}html[data-brand="valhalla"] .tt-3 .tt-rk{background:linear-gradient(180deg,#D9955E,#B9773F);color:#1A1204}
html[data-brand="valhalla"] .tt-who{font:600 14px/1.3 var(--sans)}html[data-brand="valhalla"] .tt-who small,html[data-brand="valhalla"] .tt-usd small{font:400 12px var(--sans)}html[data-brand="valhalla"] .tt-usd{font-weight:700;font-size:14px;color:var(--gold-txt)}html[data-brand="valhalla"] .tt-usd em.up{color:var(--grn)}html[data-brand="valhalla"] .tt-usd em.dn{color:var(--red)}
html[data-brand="valhalla"] .tt-claim{border:1px dashed var(--gold3);background:rgba(240,178,62,.06);color:var(--gold-txt);border-radius:8px;font:600 13px/1.3 var(--sans)}html[data-brand="valhalla"] .tt-claim:hover{background:rgba(240,178,62,.12)}html[data-brand="valhalla"] .tt-foot{border-top-color:var(--line)}
html[data-brand="valhalla"] .rb{background:rgba(255,255,255,.03);border-radius:6px;font-size:14px;min-height:36px;align-items:center}html[data-brand="valhalla"] .rb b{color:var(--txt);font-weight:600}html[data-brand="valhalla"] .rb i{font-size:12px}html[data-brand="valhalla"] .rb em{color:var(--gold-txt);font-weight:700;font-size:13px}html[data-brand="valhalla"] .rb span{font-family:var(--mono);color:var(--mute);font-size:12px}
html[data-brand="valhalla"] .av{border-color:var(--gold3);background:var(--panel2)}html[data-brand="valhalla"] .av-gen{font-family:var(--sans)}
html[data-brand="valhalla"] .earn{padding:10px 12px;margin-bottom:8px}html[data-brand="valhalla"] .earn span{font:600 11px/1.5 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--dim)}html[data-brand="valhalla"] .earn b{font-weight:700;font-size:28px;color:var(--gold-txt)}html[data-brand="valhalla"] .earn-parts i,html[data-brand="valhalla"] .earn-open{font-size:13px}html[data-brand="valhalla"] .earn-parts em{font-family:var(--mono)}
html[data-brand="valhalla"] .claim{padding:10px 12px}html[data-brand="valhalla"] .claim .t{color:var(--yel)}html[data-brand="valhalla"] .claim .st,html[data-brand="valhalla"] #claims .st{font-size:13px}html[data-brand="valhalla"] .claim .st b{font-family:var(--mono);color:var(--txt)}html[data-brand="valhalla"] .claim .mine{color:var(--grn);font-size:14px}html[data-brand="valhalla"] .claim .btn{font-size:14px}
html[data-brand="valhalla"] .cg-all{border-color:var(--gold3);box-shadow:inset 0 1px 0 rgba(240,178,62,.35),inset 0 1px 0 rgba(0,0,0,0)}html[data-brand="valhalla"] .cg-big{font-size:15px;padding:11px 12px}html[data-brand="valhalla"] .claims-hist summary{font-size:13px}
html[data-brand="valhalla"] .ge-check input{padding:7px 10px;font-size:14px}html[data-brand="valhalla"] .ge-check .btn{font-size:14px}

/* ---- Yggdrasil (#vhTree, the flywheel in the aside) and the Plaza flywheel classes it reuses */
html[data-brand="valhalla"] .fw-head{gap:8px}html[data-brand="valhalla"] .fw-head .note{font-size:13px}html[data-brand="valhalla"] .fw-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:8px}
html[data-brand="valhalla"] .fw-grid .stat{padding:8px 10px;border-radius:8px;box-shadow:inset 0 1px 0 rgba(240,178,62,.16),0 4px 12px rgba(0,0,0,.35)}html[data-brand="valhalla"] .fw-grid .stat b{font-size:18px}html[data-brand="valhalla"] .fw-grid .stat span{font-size:12px}html[data-brand="valhalla"] .fw-grid .stat span:first-child{font-size:10px}
html[data-brand="valhalla"] .ge-tree[hidden]{display:none}

/* ---- the command band at the top of the Hall (.vh-hero, app.js fills the four live tiles): the open doors of the hall behind a left dark gradient */
html[data-brand="valhalla"] .vh-hero{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:16px;align-items:center;min-height:120px;margin:0 0 10px;padding:18px 22px;position:relative;overflow:hidden;border:1px solid var(--frame);border-radius:10px;background:linear-gradient(90deg,var(--panel2) 0%,rgba(13,16,22,.94) 42%,rgba(13,16,22,.55) 70%,rgba(13,16,22,.2) 100%),url('valhalla/hero.jpg') right 40%/cover no-repeat var(--panel2);box-shadow:inset 0 1px 0 rgba(240,178,62,.22),0 12px 32px rgba(0,0,0,.55)}
html[data-brand="valhalla"] .vh-hero[hidden]{display:none}
html[data-brand="valhalla"] .vh-eyebrow{display:block;font:900 12px/1 var(--insc);letter-spacing:.22em;text-transform:uppercase;color:var(--dim);margin-bottom:8px}
html[data-brand="valhalla"] .vh-title{margin:0 0 6px;font:900 clamp(30px,4.6vw,46px)/1 var(--disp);font-stretch:125%;text-transform:uppercase;letter-spacing:.04em;background:linear-gradient(180deg,var(--gold1) 0%,#ffd06a 40%,var(--gold2) 65%,var(--gold3) 100%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 2px 0 #000)}
html[data-brand="valhalla"] .vh-sub{margin:0 0 12px;max-width:68ch;color:var(--txt);font-size:15px;text-shadow:0 1px 2px rgba(0,0,0,.8)}
html[data-brand="valhalla"] .vh-cta{display:flex;gap:8px;flex-wrap:wrap}
html[data-brand="valhalla"] .vh-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
html[data-brand="valhalla"] .vh-stat{display:flex;flex-direction:column;gap:2px;min-width:0;padding:10px 12px;background:rgba(10,12,16,.72);border:1px solid var(--edge);border-radius:8px;box-shadow:inset 0 1px 0 rgba(240,178,62,.14);backdrop-filter:none;-webkit-backdrop-filter:blur(4px)}
html[data-brand="valhalla"] .vh-stat span{font:600 11px/1.3 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--dim)}html[data-brand="valhalla"] .vh-stat b{font-weight:700;font-size:22px;line-height:1.1;color:var(--gold-txt);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}html[data-brand="valhalla"] .vh-stat small{font-size:12px;color:var(--dim)}

/* ---- the High Seat panel and the Valhalla Cup: podium with gold / silver / bronze top hairlines, the horn, the cup rows */
html[data-brand="valhalla"] .ge-king{background:var(--grain),linear-gradient(90deg,rgba(240,178,62,.10),transparent 60%),linear-gradient(180deg,var(--panel),var(--panel2));background-blend-mode:overlay,normal,normal}
html[data-brand="valhalla"] .king-strip .kb-crown{filter:drop-shadow(0 0 8px rgba(240,178,62,.5))}html[data-brand="valhalla"] .king-strip .king-ic{box-shadow:0 0 0 2px var(--ring-out),0 0 0 3px rgba(240,178,62,.55),0 0 14px rgba(240,178,62,.3)}
html[data-brand="valhalla"] .king-strip .king-id span{font-size:13px}html[data-brand="valhalla"] .king-mini div{border-radius:6px;box-shadow:none}html[data-brand="valhalla"] .king-mini b{font-weight:700;font-size:14px}html[data-brand="valhalla"] .king-mini span{font-size:10px;letter-spacing:.1em}
html[data-brand="valhalla"] .ge-cup{background:var(--grain),radial-gradient(60% 40% at 50% 0%,rgba(240,178,62,.08),transparent 70%),linear-gradient(180deg,var(--panel),var(--panel2));background-blend-mode:overlay,normal,normal;box-shadow:inset 0 1px 0 rgba(240,178,62,.35),0 12px 32px rgba(0,0,0,.55)}
html[data-brand="valhalla"] .cup-trophy{filter:drop-shadow(0 0 10px rgba(240,178,62,.65))}html[data-brand="valhalla"] .cup-title span,html[data-brand="valhalla"] .cup-name span,html[data-brand="valhalla"] .cup-prize span{font-size:13px}html[data-brand="valhalla"] .cup-name em,html[data-brand="valhalla"] .cup-title b em{color:var(--gold2)}
html[data-brand="valhalla"] .cup-prize b{font-weight:700}html[data-brand="valhalla"] .shimmer{background:linear-gradient(100deg,var(--gold-txt) 0%,#FFF6D8 40%,var(--gold2) 55%,var(--gold-txt) 100%);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 2px 0 #000) drop-shadow(0 0 8px rgba(240,178,62,.35));animation:shimmer 3.2s linear infinite}
html[data-brand="valhalla"] .cup-bar .cup-clock{border-left-color:var(--line)}html[data-brand="valhalla"] .cup-open{border-color:rgba(240,178,62,.3);border-radius:8px;font-size:13px}html[data-brand="valhalla"] .cup-how summary{color:var(--gold2)}html[data-brand="valhalla"] .cup-how summary::before{color:var(--gold)}
html[data-brand="valhalla"] .pod{border-radius:10px;--pod-c:transparent;box-shadow:inset 0 2px 0 var(--pod-c),inset 0 0 0 1px rgba(255,255,255,.02),0 12px 32px rgba(0,0,0,.55)}html[data-brand="valhalla"] .pod:hover{transform:translateY(-1px)}
html[data-brand="valhalla"] .pod.first{--pod-c:#F0B23E;border-color:var(--frame);box-shadow:inset 0 2px 0 var(--pod-c),0 0 22px rgba(240,178,62,.18),0 12px 32px rgba(0,0,0,.55);background:var(--grain),radial-gradient(80% 60% at 50% 0%,rgba(240,178,62,.12),transparent 70%),linear-gradient(180deg,var(--panel),var(--panel2));background-blend-mode:overlay,normal,normal}
html[data-brand="valhalla"] .pod.second{--pod-c:#C7CDD8;border-color:var(--frame)}html[data-brand="valhalla"] .pod.third{--pod-c:#B9773F;border-color:var(--frame)}html[data-brand="valhalla"] .pod.empty{border-style:dashed}
html[data-brand="valhalla"] .pod-medal{font-weight:700;font-size:13px;border-color:var(--ring-out);box-shadow:0 0 10px rgba(240,178,62,.4)}html[data-brand="valhalla"] .pod.first .pod-medal{background:#F0B23E}html[data-brand="valhalla"] .pod.second .pod-medal{background:#C7CDD8}html[data-brand="valhalla"] .pod.third .pod-medal{background:#B9773F}html[data-brand="valhalla"] .pod.empty .pod-medal{background:var(--wood2);color:var(--dim)}
html[data-brand="valhalla"] .pod-sym{color:var(--yel)}html[data-brand="valhalla"] .pod-perf{font-weight:700;font-size:22px}html[data-brand="valhalla"] .pod.first .pod-perf{font-size:28px}html[data-brand="valhalla"] .pod-prize{color:var(--gold-txt);font-size:13px;font-weight:500}html[data-brand="valhalla"] .pod-note{font-size:12px}
html[data-brand="valhalla"] .ge-ic.pod{border-color:var(--frame2)}html[data-brand="valhalla"] .pod.first .ge-ic.pod{box-shadow:0 0 16px rgba(240,178,62,.4)}
html[data-brand="valhalla"] .pod-share,html[data-brand="valhalla"] .toq,html[data-brand="valhalla"] .ld-bar,html[data-brand="valhalla"] .ldsum-bar,html[data-brand="valhalla"] .bar,html[data-brand="valhalla"] .pb-bar{background:var(--ink);border-color:var(--edge)}
html[data-brand="valhalla"] .pod-share i,html[data-brand="valhalla"] .toq i,html[data-brand="valhalla"] .ld-bar i,html[data-brand="valhalla"] .ldsum-bar i,html[data-brand="valhalla"] .bar i,html[data-brand="valhalla"] .pb-bar i{background:var(--bifrost);box-shadow:0 0 8px rgba(143,184,255,.3)}html[data-brand="valhalla"] .bar.bad i{background:linear-gradient(90deg,#7A1F1F,var(--red))}
html[data-brand="valhalla"] .ge-cup .cup-rows,html[data-brand="valhalla"] .ge-cup .cup-open{background:rgba(10,12,16,.8)} /* the ink well was solid and hid the cup-fx motes behind the rows; Santa's is .85 */
html[data-brand="valhalla"] .cup-row{border-bottom-color:var(--line)}html[data-brand="valhalla"] .cup-row:hover{background:var(--hover)}html[data-brand="valhalla"] .cup-row.podium{background:rgba(240,178,62,.05)}html[data-brand="valhalla"] .ge-cup .cup-row:nth-child(odd){border-right-color:var(--line)}
html[data-brand="valhalla"] .cup-row b{color:var(--yel)}html[data-brand="valhalla"] .cup-row .cr{font-family:var(--mono);font-size:12px;color:var(--mute)}html[data-brand="valhalla"] .cup-row .cp{font-weight:700;font-size:14px}html[data-brand="valhalla"] .cup-row .cm{font-size:13px}html[data-brand="valhalla"] .cup-row .cz{font-size:12px}html[data-brand="valhalla"] .cup-row .cz em{color:var(--gold-txt);font-size:13px}html[data-brand="valhalla"] .cup-foot{font-size:12px}
html[data-brand="valhalla"] .medal{font-weight:700;font-size:10px;box-shadow:0 0 6px rgba(240,178,62,.5)}html[data-brand="valhalla"] .medal.m1{background:#F0B23E}html[data-brand="valhalla"] .medal.m2{background:#C7CDD8}html[data-brand="valhalla"] .medal.m3{background:#B9773F}

/* ---- the Gjallarhorn rail (.act-strip): a 36px chip rail on ink, every chip with a coloured dot (green buy, red sell, gold chosen / High Seat, frost forged); actIn keeps the gold glow */
html[data-brand="valhalla"] .act-strip{min-height:36px;padding:0 8px;border:1px solid var(--line);border-radius:8px;background:var(--ink)}html[data-brand="valhalla"] .act-track{padding:7px 0} /* the track clips (overflow:hidden), so the actIn glow needs room inside it */
html[data-brand="valhalla"] .act-new{animation:vhActIn 9s ease-out}
@keyframes vhActIn{0%,45%{border-color:#FFD56A;background-color:rgba(240,178,62,.14);box-shadow:0 0 14px 2px rgba(240,178,62,.65)}100%{box-shadow:0 0 0 0 rgba(240,178,62,0)}} /* actIn in hoard gold, plus a gold wash on the chip */
html[data-brand="valhalla"] .act{background:#11141B;border:1px solid var(--edge);border-radius:999px;font:500 13px/1.4 var(--sans);padding:4px 10px 4px 8px;color:var(--txt);gap:6px}html[data-brand="valhalla"] .act::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--dim);flex:none}
html[data-brand="valhalla"] .act b{color:var(--gold-txt)}html[data-brand="valhalla"] .act span{color:var(--dim)}html[data-brand="valhalla"] .act:hover{border-color:var(--gold3)}
html[data-brand="valhalla"] .act-buy{border-color:rgba(61,240,106,.35)}html[data-brand="valhalla"] .act-buy::before{background:var(--grn)}html[data-brand="valhalla"] .act-buy b:first-of-type{color:var(--grn)}
html[data-brand="valhalla"] .act-sell{border-color:rgba(255,92,92,.35)}html[data-brand="valhalla"] .act-sell::before{background:var(--red)}html[data-brand="valhalla"] .act-sell b:first-of-type{color:#FF8A80}
html[data-brand="valhalla"] .act-launch{border-color:rgba(143,184,255,.45);background:rgba(143,184,255,.08)}html[data-brand="valhalla"] .act-launch::before{background:var(--frost)}
html[data-brand="valhalla"] .act-graduate{border-color:var(--gold3);background:rgba(240,178,62,.1)}html[data-brand="valhalla"] .act-graduate::before,html[data-brand="valhalla"] .act-king::before{background:var(--gold)}html[data-brand="valhalla"] .act-king{border-color:var(--gold3)}html[data-brand="valhalla"] .act-post{border-color:rgba(143,184,255,.35)}html[data-brand="valhalla"] .act-post::before{background:var(--frost)}
html[data-brand="valhalla"] .tr-chip.buy{color:#06210D;background:linear-gradient(180deg,#8DFFAA,var(--grn));border-color:#D6FFE0;box-shadow:0 0 16px rgba(61,240,106,.7)}html[data-brand="valhalla"] .tr-chip.sell{color:#2A0606;background:linear-gradient(180deg,#FFB0B0,var(--red));border-color:#FFE0E0;box-shadow:0 0 14px rgba(255,92,92,.6)}
html[data-brand="valhalla"] .tr-spark{background:var(--gold1);box-shadow:0 0 6px var(--gold),0 0 2px #fff}html[data-brand="valhalla"] .tr-spark:nth-of-type(3n){background:var(--ember);box-shadow:0 0 6px var(--ember)} /* sparkFly keeps its path: gold, ember at the tail */
/* ---- live-effect parity with Santa (owner 10-05): the chart FX canvas sits on top, sells flash red on the tape, the price pop glows, the Berserkers board flashes in hoard gold and the rank lift in the house green */
html[data-brand="valhalla"] .ge-fx{z-index:4} /* the coin shower, ring and +BUY splash draw over the chart and its source toggle (z 3) */
html[data-brand="valhalla"] .ge-tape .tp.sell.fresh{animation:sellpop 1.2s ease-out} /* Santa flashes every fresh tape row green, sells included */
html[data-brand="valhalla"] .ge-tok-px.buy-pop>b{animation:vhPxPop .9s ease-out;transform-origin:right center;display:block}
@keyframes vhPxPop{0%{transform:scale(1)}20%{transform:scale(1.18);color:#3DF06A;text-shadow:0 0 16px rgba(61,240,106,.85),0 0 3px #fff}100%{transform:scale(1);text-shadow:0 0 0 rgba(61,240,106,0)}} /* pxpop plus a green glow */
html[data-brand="valhalla"] .tt-flash{animation:vhTtFlash 1.6s ease-out}html[data-brand="valhalla"] .tt-flash.tt-up .tt-rk{animation:vhTtUp 1.2s ease-out}
@keyframes vhTtFlash{0%{background:rgba(240,178,62,.26)}100%{background:transparent}}@keyframes vhTtUp{0%{transform:translateY(6px) scale(1.25);box-shadow:0 0 14px rgba(61,240,106,.85)}100%{transform:none}} /* ttFlash / ttUp: the mint glow becomes #3DF06A */

/* ---- the Forge: the three-step wizard and the live card (forge heat at its base, gold on the last step); the launch box */
html[data-brand="valhalla"] .lf-stepper{position:relative;gap:8px}html[data-brand="valhalla"] .lf-stepper::before{content:'';position:absolute;left:12%;right:12%;top:50%;height:1px;background:var(--edge)}
html[data-brand="valhalla"] .lf-stepper button{position:relative;background:linear-gradient(180deg,var(--wood2),var(--wood));border:1px solid var(--frame);border-radius:999px;color:var(--dim);font:600 14px/1.3 var(--sans);box-shadow:inset 0 1px 0 var(--hi)}html[data-brand="valhalla"] .lf-stepper button b{background:rgba(255,255,255,.06);color:var(--dim);font:700 12px var(--mono);width:22px;height:22px}
html[data-brand="valhalla"] .lf-stepper button.on{background:linear-gradient(180deg,var(--gold1),var(--gold2));color:#1A1204;border-color:#7A5612;box-shadow:0 0 16px rgba(240,178,62,.3),inset 0 1px 0 rgba(255,255,255,.35)}html[data-brand="valhalla"] .lf-stepper button.on b{background:#1A1204;color:var(--gold-txt)}
html[data-brand="valhalla"] .lf-stepper button.done{color:var(--gold-txt);border-color:var(--gold3);background:var(--ink)}html[data-brand="valhalla"] .lf-stepper button.done b{background:rgba(240,178,62,.12);color:var(--gold-txt)}
html[data-brand="valhalla"] .lf-card{border-radius:12px;background:var(--grain),radial-gradient(60% 50% at 50% 100%,rgba(255,106,61,.18),transparent),linear-gradient(180deg,var(--panel),var(--panel2));background-blend-mode:overlay,normal,normal;transition:background .3s}
html[data-brand="valhalla"] .ge-launchbox[data-step="3"] .lf-card{background:var(--grain),radial-gradient(60% 50% at 50% 100%,rgba(240,178,62,.2),transparent),linear-gradient(180deg,var(--panel),var(--panel2));background-blend-mode:overlay,normal,normal;box-shadow:inset 0 1px 0 rgba(240,178,62,.35),0 0 28px rgba(240,178,62,.12),0 12px 32px rgba(0,0,0,.55)}
html[data-brand="valhalla"] .lf-card-ic{background:var(--ink);border:2px solid var(--gold);box-shadow:0 0 0 4px rgba(240,178,62,.12),0 0 28px rgba(240,178,62,.3)}html[data-brand="valhalla"] .lf-card-ic span{color:var(--gold-txt);font-family:var(--disp)}html[data-brand="valhalla"] .lf-card-name{font-size:14px}html[data-brand="valhalla"] .lf-card-where{font-size:12px}html[data-brand="valhalla"] .lf-card-tags i{text-transform:none;letter-spacing:0;color:var(--txt)}
html[data-brand="valhalla"] .lf-img{border:1px dashed var(--frame2);border-radius:10px;background-color:var(--ink);font-size:14px}
html[data-brand="valhalla"] .lf-facts span::before{content:'';display:inline-block;width:4px;height:4px;background:var(--gold);margin:0 6px 2px 0;vertical-align:middle} /* bullets are a 4px gold square */
html[data-brand="valhalla"] .lf-facts,html[data-brand="valhalla"] .lf-hint,html[data-brand="valhalla"] .lf-check i{font-size:13px}html[data-brand="valhalla"] .lf-seed,html[data-brand="valhalla"] .lf-mode,html[data-brand="valhalla"] .lf-check{font-size:14px}
html[data-brand="valhalla"] .lf-venues .ge-tabs{background:none;border:0;padding:0}html[data-brand="valhalla"] .lf-venues .ge-tabs button{background:linear-gradient(180deg,var(--wood2),var(--wood));border:1px solid var(--frame);border-radius:10px;color:var(--txt);box-shadow:inset 0 1px 0 var(--hi)}html[data-brand="valhalla"] .lf-venues .ge-tabs button small{color:var(--dim);font-size:12px;opacity:1}
html[data-brand="valhalla"] .lf-venues .ge-tabs button.on{background:linear-gradient(180deg,var(--wood2),var(--wood));color:var(--txt);box-shadow:inset 3px 0 0 var(--gold),0 0 0 1px var(--gold3),0 0 18px rgba(240,178,62,.18)} /* an iron card with a gold left rail when chosen */
html[data-brand="valhalla"] .ge-launchbox .vb-rows b{font-size:14px}html[data-brand="valhalla"] .lf-devout b{color:var(--gold-txt);font-family:var(--mono)}html[data-brand="valhalla"] .lf-liq b{color:var(--gold-txt)}html[data-brand="valhalla"] .ge-taxline.ge-venue{font-size:13px}

/* ---- modals (glass + blur), the step dots, the share-card (saga) dialog, the profile sheet */
html[data-brand="valhalla"] .vb-overlay{background:rgba(4,5,8,.7);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
html[data-brand="valhalla"] .vb-modal{border-radius:12px;padding:18px 20px 16px}html[data-brand="valhalla"] .vb-modal p{font-size:15px}html[data-brand="valhalla"] .vb-modal .note{font-size:14px}
html[data-brand="valhalla"] .vb-step b{font-size:15px}html[data-brand="valhalla"] .vb-step span{font-size:13px}html[data-brand="valhalla"] .vb-dot{border-color:var(--edge)}html[data-brand="valhalla"] .vb-step.on b{color:var(--gold-txt)}html[data-brand="valhalla"] .vb-step.on .vb-dot{border-color:var(--gold);background:var(--gold);box-shadow:0 0 8px rgba(240,178,62,.6)}
html[data-brand="valhalla"] .vb-step.done .vb-dot{border-color:var(--grn);background:var(--grn)}html[data-brand="valhalla"] .vb-step.done span,html[data-brand="valhalla"] .vb-pmsg.ok{color:#9FE3A8}html[data-brand="valhalla"] .vb-pmsg{font-size:14px}
html[data-brand="valhalla"] .vb-overlay.lc-ov{background:var(--glass)}
html[data-brand="valhalla"] .lc-box{width:min(520px,92vw);border-radius:14px;padding:28px 24px 22px;border-color:var(--gold);box-shadow:inset 0 1px 0 rgba(240,178,62,.35),0 0 60px rgba(240,178,62,.38),0 24px 64px rgba(0,0,0,.6)}
html[data-brand="valhalla"] .lc-fx{z-index:3} /* the text and buttons below are position:relative here, which painted them over the confetti canvas; pointer-events stay off */
html[data-brand="valhalla"] .lc-box::before{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(100deg,transparent 40%,rgba(255,233,168,.22) 50%,transparent 60%) no-repeat;background-size:200% 100%;animation:vhSweep .6s ease-out .3s 1 both} /* FORGED: one gold light sweep */
html[data-brand="valhalla"] .lc-coin{background:conic-gradient(from 0deg,var(--gold3),var(--gold1),var(--gold2),var(--frost),var(--gold3))}html[data-brand="valhalla"] .lc-coin img{background:var(--ink)}
html[data-brand="valhalla"] .lc-box h2{font:900 34px/1 var(--disp);font-stretch:125%;letter-spacing:.04em;text-transform:uppercase;color:var(--gold-txt);text-shadow:0 2px 0 #000;position:relative}html[data-brand="valhalla"] .lc-box p{font-size:15px;position:relative}
html[data-brand="valhalla"] .lc-acts,html[data-brand="valhalla"] .lc-next{position:relative}html[data-brand="valhalla"] .lc-next{border-top-color:var(--line)}html[data-brand="valhalla"] .lc-next button{background:var(--ink);border:1px solid var(--edge);border-radius:8px;font:500 15px/1.3 var(--sans);color:var(--txt)}html[data-brand="valhalla"] .lc-next button:hover{border-color:var(--gold3);color:var(--gold-txt)}
html[data-brand="valhalla"] .vb-overlay.sc-ov{background:rgba(4,5,8,.78)}html[data-brand="valhalla"] .sc-box{border-radius:14px;box-shadow:inset 0 1px 0 rgba(240,178,62,.35),0 24px 64px rgba(0,0,0,.6)}
html[data-brand="valhalla"] .sc-img{background:var(--ink);border:1px solid var(--frame);border-radius:10px;box-shadow:inset 0 1px 0 rgba(240,178,62,.3)}html[data-brand="valhalla"] .sc-load{font-size:14px}html[data-brand="valhalla"] .sc-load i{border-color:rgba(240,178,62,.25);border-top-color:var(--gold)}html[data-brand="valhalla"] .sc-x:hover,html[data-brand="valhalla"] .sc-id{color:var(--gold-txt)}html[data-brand="valhalla"] .sc-note,html[data-brand="valhalla"] .sc-id{font-size:13px}
html[data-brand="valhalla"] .id-step{border-top-color:var(--line)}html[data-brand="valhalla"] .id-n{border-color:var(--gold3);color:var(--gold-txt);font:700 13px var(--mono)}html[data-brand="valhalla"] .id-step.done .id-n{background:rgba(61,240,106,.12);border-color:var(--grn)}html[data-brand="valhalla"] .id-t{font:600 16px/1.3 var(--sans)}html[data-brand="valhalla"] .id-ok{color:var(--grn);font-size:14px}
html[data-brand="valhalla"] .me-id span,html[data-brand="valhalla"] .al-h span,html[data-brand="valhalla"] .al-kinds{font-size:13px}html[data-brand="valhalla"] .al-kinds input{accent-color:var(--gold)}
html[data-brand="valhalla"] .vh-t{color:var(--gold-txt)}html[data-brand="valhalla"] .vh-hint,html[data-brand="valhalla"] .vh-alt{font-size:13px}html[data-brand="valhalla"] .vh-hint code{color:var(--yel);font-family:var(--mono)}html[data-brand="valhalla"] #mePanel.flash{box-shadow:0 0 0 2px var(--gold)}

/* ---- the Forge dashboard (/creator) */
html[data-brand="valhalla"] .cd-coin{padding:12px}html[data-brand="valhalla"] .cd-id b{font-weight:700;font-size:24px;color:var(--gold-txt)}html[data-brand="valhalla"] .cd-px b{font-weight:700;font-size:20px;color:var(--gold-txt)}html[data-brand="valhalla"] .cd-id small,html[data-brand="valhalla"] .cd-px small,html[data-brand="valhalla"] .cd-totals small,html[data-brand="valhalla"] .cd-claim small,html[data-brand="valhalla"] .cd-kv dd small,html[data-brand="valhalla"] .cd-card .note,html[data-brand="valhalla"] .cd-legend,html[data-brand="valhalla"] .cd-snipebig em small{font-size:13px}
html[data-brand="valhalla"] .cd-claim{background:var(--panel2);border:1px solid var(--edge);border-radius:8px}html[data-brand="valhalla"] .cd-claim b{font-weight:700;font-size:22px;color:var(--grn)}html[data-brand="valhalla"] .cd-claim .btn,html[data-brand="valhalla"] .cd-head .btn,html[data-brand="valhalla"] .cd-manage .btn,html[data-brand="valhalla"] .cd-refresh{font-size:14px}
html[data-brand="valhalla"] .cd-kv{font-size:14px}html[data-brand="valhalla"] .cd-kv dd b,html[data-brand="valhalla"] .cd-hover b{color:var(--gold-txt)}html[data-brand="valhalla"] .cd-hover{font-size:14px}html[data-brand="valhalla"] .cd-st{color:var(--gold-txt);font-size:14px}
html[data-brand="valhalla"] .cd-chart .bar{fill:var(--gold3)}html[data-brand="valhalla"] .cd-chart g.on .bar,html[data-brand="valhalla"] .cd-chart g:hover .bar{fill:var(--gold)}html[data-brand="valhalla"] .cd-chart .axis{stroke:var(--edge)}html[data-brand="valhalla"] .cd-chart .lbl{fill:var(--dim);text-transform:none;letter-spacing:0}
html[data-brand="valhalla"] .cd-chart .bar.snipe{fill:#4F7FD0}html[data-brand="valhalla"] .cd-chart g.on .bar.snipe,html[data-brand="valhalla"] .cd-chart g:hover .bar.snipe{fill:var(--frost)}html[data-brand="valhalla"] .cd-legend .sw{background:var(--gold3)}html[data-brand="valhalla"] .cd-legend .sw.snipe{background:var(--frost)}html[data-brand="valhalla"] .cd-snipebig b,html[data-brand="valhalla"] .cd-snipebig em{color:var(--frost)}
html[data-brand="valhalla"] .cd-manage .cd-row{font-size:14px}html[data-brand="valhalla"] .cd-manage input,html[data-brand="valhalla"] .cd-manage select,html[data-brand="valhalla"] .cd-manage textarea,html[data-brand="valhalla"] .ld-new select,html[data-brand="valhalla"] .ld-new input,html[data-brand="valhalla"] .ld-addrow input,html[data-brand="valhalla"] .ge-devlinks input,html[data-brand="valhalla"] .ge-devlinks textarea{background:var(--wood);padding:6px 10px;font-size:14px}
html[data-brand="valhalla"] .cd-managecard summary h4::before{color:var(--mute)}html[data-brand="valhalla"] .cd-bridge .br-short{color:var(--gold-txt);font-family:var(--mono)}html[data-brand="valhalla"] .cd-empty p{font-size:15px}html[data-brand="valhalla"] .ge-devtg code{background:var(--ink);color:var(--gold-txt);font-family:var(--mono)}

/* ---- sell ladders: the summary plaque, the tiles, the Bifröst fill under the existing sheen */
html[data-brand="valhalla"] .ldsum{padding:16px 18px 12px}html[data-brand="valhalla"] .ldsum:before{border-color:rgba(240,178,62,.16);border-radius:8px}
html[data-brand="valhalla"] .ldsum-hero b{font-weight:700;font-size:48px;background:linear-gradient(180deg,var(--gold1) 0%,#ffd06a 38%,var(--gold2) 62%,var(--gold3) 100%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 2px 0 #000) drop-shadow(0 0 16px rgba(240,178,62,.22))}html[data-brand="valhalla"] .ldsum-hero b i{font-size:18px;letter-spacing:.04em}html[data-brand="valhalla"] .ldsum-hero small{font-size:13px}
html[data-brand="valhalla"] .ldsum-tiles>div{box-shadow:inset 0 1px 0 rgba(240,178,62,.12)}html[data-brand="valhalla"] .ldsum-tiles b{font-weight:700;font-size:20px;color:var(--gold-txt)}html[data-brand="valhalla"] .ldsum-tiles small{font-size:12px}html[data-brand="valhalla"] .ldsum-tiles .btn{font-size:13px;padding:4px 10px}
html[data-brand="valhalla"] .ldsum-coins{border-top-color:var(--line)}html[data-brand="valhalla"] .ldsum-row{border-bottom-color:var(--line);font-size:14px}html[data-brand="valhalla"] .ldsum-row img{box-shadow:0 0 0 1px var(--gold3),0 1px 3px #000}html[data-brand="valhalla"] .ldsum-row em{color:var(--gold-txt)}html[data-brand="valhalla"] .ldsum-row small,html[data-brand="valhalla"] .ldsum-tg{font-size:13px}html[data-brand="valhalla"] .ldsum-tg b{color:var(--gold-txt)}
html[data-brand="valhalla"] .ld-card{padding:10px 12px}html[data-brand="valhalla"] .ld-card .ld-ic{box-shadow:0 0 0 2px var(--ring-out),0 0 0 3px var(--gold3);background:var(--ink)}html[data-brand="valhalla"] .ld-metrics b{font-weight:700;font-size:16px}html[data-brand="valhalla"] .ld-metrics span,html[data-brand="valhalla"] .ld-metrics small{font-size:11px}
html[data-brand="valhalla"] .ld-grid{font-size:14px}html[data-brand="valhalla"] .ld-grid b{font-family:var(--mono)}html[data-brand="valhalla"] .ld-warn{border-color:rgba(255,92,92,.5);border-radius:8px;background:rgba(255,92,92,.06)}html[data-brand="valhalla"] .ld-offstat{font-size:13px}
html[data-brand="valhalla"] .ld-xp .fill{background:var(--bifrost);box-shadow:0 0 8px rgba(143,184,255,.35)}html[data-brand="valhalla"] .ld-xp.gain{box-shadow:0 0 18px rgba(240,178,62,.4),0 -1px 10px rgba(240,178,62,.25)}html[data-brand="valhalla"] .ld-xp.gain .fill{box-shadow:0 0 16px rgba(240,178,62,.6),0 0 34px rgba(240,178,62,.35)}html[data-brand="valhalla"] .ld-xp .label{color:var(--gold1)}

/* ---- Liquidity: the hero is a panel with the open doors behind a left dark gradient; Public pools wear the gold, the Shieldwall stays iron */
html[data-brand="valhalla"] .lq-hero{margin:0 0 12px;padding:20px 22px 18px;position:relative;overflow:hidden;border:1px solid var(--frame);border-radius:10px;background:linear-gradient(90deg,var(--panel2) 0%,rgba(13,16,22,.94) 42%,rgba(13,16,22,.6) 70%,rgba(13,16,22,.25) 100%),url('valhalla/hero.jpg') right 40%/cover no-repeat var(--panel2);box-shadow:inset 0 1px 0 rgba(240,178,62,.22),0 12px 32px rgba(0,0,0,.55)}
html[data-brand="valhalla"] .lq-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px} /* public pools lead, ladders second, the SANTA/GP floor last */
html[data-brand="valhalla"] .lq-tile[data-jump="lpPools"]{order:1}html[data-brand="valhalla"] .lq-tile[data-jump="lq-meteora"]{order:2}html[data-brand="valhalla"] .lq-tile[data-jump="lq-sg"]{order:3}
html[data-brand="valhalla"] #s-lp.on{display:flex;flex-direction:column}html[data-brand="valhalla"] #s-lp>.lq-hero{order:0}html[data-brand="valhalla"] #s-lp>#lpPools{order:1}html[data-brand="valhalla"] #s-lp>#lq-meteora{order:2}html[data-brand="valhalla"] #s-lp>#lq-sg{order:3}html[data-brand="valhalla"] #s-lp>.lq-close{order:4}
html[data-brand="valhalla"] .lq-tile{padding:14px 16px;border-radius:10px;transition:transform .15s var(--ease),border-color .15s var(--ease),box-shadow .15s var(--ease)}html[data-brand="valhalla"] .lq-tile:hover,html[data-brand="valhalla"] .lq-tile:focus-visible{transform:translateY(-1px);border-color:var(--frame2);box-shadow:inset 0 1px 0 rgba(240,178,62,.22),0 16px 36px rgba(0,0,0,.6)}
html[data-brand="valhalla"] .lq-tile b{font-weight:700;font-size:22px;color:var(--gold-txt)}html[data-brand="valhalla"] .lq-tile small{font-size:12px}
html[data-brand="valhalla"] .lq-tile.gold{border-color:var(--frame);background:var(--grain),linear-gradient(180deg,var(--panel),var(--panel2));background-blend-mode:overlay,normal} /* the markup's gold class sits on the ladders tile: iron here */
html[data-brand="valhalla"] .lq-tile[data-jump="lpPools"]{border-color:var(--gold3);box-shadow:inset 0 1px 0 rgba(240,178,62,.55),0 0 0 1px rgba(240,178,62,.12),0 12px 32px rgba(0,0,0,.55);background:var(--grain),radial-gradient(120% 160% at 0% 0%,rgba(240,178,62,.14),transparent 60%),linear-gradient(180deg,var(--panel),var(--panel2));background-blend-mode:overlay,normal,normal}
html[data-brand="valhalla"] .lq-trust,html[data-brand="valhalla"] .lq-close p{color:var(--dim);font-size:14px;max-width:68ch}html[data-brand="valhalla"] .lq-trust[hidden],html[data-brand="valhalla"] .lq-close[hidden]{display:none}
html[data-brand="valhalla"] .lq-card{padding:12px}html[data-brand="valhalla"] .lq-pool-h h2{flex:1 1 220px}html[data-brand="valhalla"] .lp-pool{font-size:15px}
html[data-brand="valhalla"] .poolbox div{padding:8px 10px}html[data-brand="valhalla"] .lp-risk-g small,html[data-brand="valhalla"] .ycell small,html[data-brand="valhalla"] .pb-note,html[data-brand="valhalla"] .ychain{font-size:13px}html[data-brand="valhalla"] .pb-days{font-size:15px}html[data-brand="valhalla"] .ychain b{color:var(--gold-txt)}html[data-brand="valhalla"] .ylist{font-size:14px}html[data-brand="valhalla"] .ylist div{border-bottom-color:var(--line)}html[data-brand="valhalla"] .ylist .gldx{color:var(--gold-txt)}
html[data-brand="valhalla"] .payback.done{border-color:var(--grn)}html[data-brand="valhalla"] .payback.done .pb-bar i{background:linear-gradient(90deg,#1C7A2C,var(--grn))}

/* ---- the painted icons: the Hall Shield replaces the hat, the circlet the crown, the horn the trophy, the longship the whale; new classes for the new concepts */
html[data-brand="valhalla"] .ic-hat,html[data-brand="valhalla"] .ic-shield{background-image:url('valhalla/icons/shield.png')}
html[data-brand="valhalla"] .ic-crown,html[data-brand="valhalla"] .ic-circlet{background-image:url('valhalla/icons/circlet.png')}
html[data-brand="valhalla"] .ic-trophy,html[data-brand="valhalla"] .ic-horn{background-image:url('valhalla/icons/horn.png')}
html[data-brand="valhalla"] .ic-whale{background-image:url('valhalla/icons/longship.png')}
html[data-brand="valhalla"] .ic-raven{background-image:url('valhalla/icons/raven.png')}html[data-brand="valhalla"] .ic-forge{background-image:url('valhalla/icons/anvil.png')}html[data-brand="valhalla"] .ic-well{background-image:url('valhalla/icons/well.png')}html[data-brand="valhalla"] .ic-gjallar{background-image:url('valhalla/icons/gjallar.png')}html[data-brand="valhalla"] .ic-bifrost{background-image:url('valhalla/icons/bifrost.png')}
html[data-brand="valhalla"] .soc-b{background:radial-gradient(circle at 35% 30%,var(--wood2),var(--ink) 75%);border-color:var(--frame);box-shadow:inset 0 1px 0 var(--hi),0 1px 3px #000}html[data-brand="valhalla"] .soc-b:hover,html[data-brand="valhalla"] .soc-b:focus-visible{border-color:var(--gold-txt);box-shadow:inset 0 1px 0 var(--hi),0 0 10px rgba(240,178,62,.5),0 1px 3px #000}html[data-brand="valhalla"] .soc.big .soc-b{background:radial-gradient(circle at 35% 30%,#2E3442,var(--ink) 72%)}

/* ---- toast: an iron pill with the shield mark; bottom-right on desktop */
html[data-brand="valhalla"] #toast{left:auto;right:16px;bottom:16px;transform:none;background:linear-gradient(180deg,var(--wood2),var(--wood));border:1px solid var(--frame);border-radius:999px;color:var(--txt);font:500 14px/1.3 var(--sans);padding:10px 18px 10px 40px;text-align:left;box-shadow:inset 0 1px 0 var(--hi),0 12px 32px rgba(0,0,0,.55);animation:vhToast .16s var(--ease)}
html[data-brand="valhalla"] #toast::before{content:'';position:absolute;left:14px;top:50%;width:16px;height:16px;margin-top:-8px;background:url('valhalla/mark.png') center/contain no-repeat}
html[data-brand="valhalla"] #toast.ok{border-color:rgba(61,240,106,.5)}html[data-brand="valhalla"] #toast.bad{border-color:rgba(255,92,92,.5)}
@keyframes vhToast{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

/* ---- phones: the header stays static with a sideways nav, the command band stacks, "Forge a coin" becomes a gold FAB on the board view, toasts sit above it, 16px gutters */
@media(max-width:980px){html[data-brand="valhalla"] .ge-side{position:static}}
@media(max-width:820px){
  html[data-brand="valhalla"] header{position:static;min-height:0;padding:8px 16px;gap:8px}
  html[data-brand="valhalla"] header .brand{font-size:18px}
  html[data-brand="valhalla"] nav{order:3;width:100%;margin-left:0;flex-wrap:nowrap;overflow-x:auto;gap:2px;padding:0 0 6px}
  html[data-brand="valhalla"] nav a{white-space:nowrap;padding:7px 10px;font-size:13px;flex:0 0 auto}
  html[data-brand="valhalla"] #wallet .btn{padding:6px 12px;font-size:14px}
  html[data-brand="valhalla"] main{padding:10px 16px}
  html[data-brand="valhalla"] .vh-hero{grid-template-columns:minmax(0,1fr);min-height:0;padding:16px;gap:12px;background-position:right 30%}
  html[data-brand="valhalla"] .vh-title{font-size:30px}html[data-brand="valhalla"] .vh-cta .btn.sec{display:none}
  html[data-brand="valhalla"] .lq-hero{padding:16px}html[data-brand="valhalla"] .lq-tiles{grid-template-columns:minmax(0,1fr)}html[data-brand="valhalla"] .lq-tile b{font-size:20px}
  html[data-brand="valhalla"] body:not(.tok) #s-eco.on #ecoLaunch{position:fixed;right:16px;bottom:16px;z-index:30;height:56px;padding:0 22px;border-radius:999px;font-size:15px;box-shadow:0 10px 28px rgba(0,0,0,.55),0 0 24px rgba(240,178,62,.3),inset 0 1px 0 rgba(255,255,255,.35)}
  html[data-brand="valhalla"] #toast{left:50%;right:auto;transform:translateX(-50%);bottom:88px;max-width:calc(100vw - 32px)}
  html[data-brand="valhalla"] .ge-social{grid-template-columns:minmax(0,1fr)}
  html[data-brand="valhalla"] .ge-title b{font-size:20px}html[data-brand="valhalla"] .ge-title img{width:28px;height:28px}
}
@media(max-width:640px){html[data-brand="valhalla"] .king-bar{gap:8px;padding:8px 16px}html[data-brand="valhalla"] .king-bar b{font-size:12px;letter-spacing:.02em;flex:none}html[data-brand="valhalla"] .king-bar em{min-width:0;overflow:hidden;text-overflow:ellipsis;font-size:12px}html[data-brand="valhalla"] .king-bar .kb-go{flex:none;padding:2px 8px}}
@media(max-width:480px){html[data-brand="valhalla"] body{font-size:15px}html[data-brand="valhalla"] .lc-box h2{font-size:28px}html[data-brand="valhalla"] .ldsum-hero b{font-size:34px}html[data-brand="valhalla"] .stat b{font-size:20px}html[data-brand="valhalla"] .ge-tok-id>b{font-size:22px}html[data-brand="valhalla"] .ge-tok-px>b{font-size:24px}html[data-brand="valhalla"] .vh-stat b{font-size:18px}}
/* ---- motion is for things that happened: the new loops die under reduced motion like the Santa ones do */
@media(prefers-reduced-motion:reduce){html[data-brand="valhalla"] .panel h2::after,html[data-brand="valhalla"] .lc-box::before,html[data-brand="valhalla"] section.on,html[data-brand="valhalla"] .cg-big,html[data-brand="valhalla"] .vh-sweep::after,html[data-brand="valhalla"] .vh-pop,html[data-brand="valhalla"] .king-bar.vh-new .kb-crown .ic,html[data-brand="valhalla"] #toast,html[data-brand="valhalla"] .act-new,html[data-brand="valhalla"] .tt-flash,html[data-brand="valhalla"] .tt-flash.tt-up .tt-rk,html[data-brand="valhalla"] .lc-box{animation:none}html[data-brand="valhalla"] .ge-grad .bar i,html[data-brand="valhalla"] .ge-row.isle .it>span::after,html[data-brand="valhalla"] .lq-tile,html[data-brand="valhalla"] .pod{transition:none}}

/* FALLBACK (Longhall path), kept commented: if a board step still wraps or clips after the +4px widenings, restore the pixel face for the DATA columns only and keep Inter on prose, headings and buttons (VT323 would then have to return to the @import on line 1):
html[data-brand="valhalla"] .ge-row small,html[data-brand="valhalla"] .ge-row .nm,html[data-brand="valhalla"] .tr-row,html[data-brand="valhalla"] .poolbox{font-family:'VT323',monospace;font-size:22px;line-height:1.25} */

/* scroll smoothness: no per-panel noise blend over the moving page, no blur behind the sticky header or the hero tiles */
html[data-brand="valhalla"]{--grain:none}html[data-brand="valhalla"] header{background:linear-gradient(180deg,rgba(14,16,22,.97),rgba(10,12,16,.95));-webkit-backdrop-filter:none;backdrop-filter:none}html[data-brand="valhalla"] .vh-stat{-webkit-backdrop-filter:none;backdrop-filter:none;background:rgba(10,12,16,.82)}
html[data-brand="valhalla"] .src-tag{color:var(--gold-txt);background:rgba(212,175,95,.10);border-color:rgba(212,175,95,.28)}html[data-brand="valhalla"] .src-tag.src-fomo{color:#e9b38a;background:rgba(233,179,138,.10);border-color:rgba(233,179,138,.3)}
