/* Lumi & Pip's card game: shared kid-friendly styles. Everything is prefixed .lg- so it never touches other site CSS. */
:root { --lg-gold:#ffd36b; --lg-gold2:#fff4c8; --lg-ink:#14142a; --lg-card:rgba(20,14,44,.72); --lg-line:rgba(255,255,255,.16); --lg-r:22px; --lg-tap:60px; }
body.lg-has-nav { padding-top:0; }
.lg-nav { position:sticky; top:0; z-index:60; display:flex; align-items:center; gap:12px; padding:8px max(12px, env(safe-area-inset-left)); background:rgba(14,10,34,.82); backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px); border-bottom:1px solid var(--lg-line); font-family:Nunito, system-ui, sans-serif; }
.lg-hi { display:flex; align-items:center; gap:8px; text-decoration:none; color:#fff; flex:none; min-height:var(--lg-tap); padding:0 6px; border-radius:16px; }
.lg-hi-c svg, .lg-hi-slot .lumi svg { width:46px; height:auto; display:block; filter:drop-shadow(0 2px 8px rgba(255,255,255,.35)); }
.lg-hi-t { font-weight:800; font-size:18px; white-space:nowrap; }
.lg-nav-row { display:flex; gap:8px; overflow-x:auto; scrollbar-width:none; flex:1 1 auto; min-width:0; padding:2px; -webkit-overflow-scrolling:touch; scroll-snap-type:x proximity; }
.lg-nav-row::-webkit-scrollbar { display:none; }
.lg-nb { flex:none; display:flex; align-items:center; gap:8px; min-height:var(--lg-tap); padding:0 18px; border-radius:18px; background:rgba(255,255,255,.08); border:2px solid rgba(255,255,255,.14); color:#fff; text-decoration:none; font-weight:800; font-size:19px; scroll-snap-align:start; transition:transform .12s, background .2s; }
.lg-nb:hover { background:rgba(255,255,255,.16); }
.lg-nb:active { transform:scale(.96); }
.lg-nb.on { background:linear-gradient(100deg,var(--lg-gold2),var(--lg-gold)); color:var(--lg-ink); border-color:transparent; }
.lg-nb-i { font-size:24px; line-height:1; }
.lg-nav-me { display:flex; gap:8px; flex:none; }
.lg-chip { display:flex; align-items:center; gap:6px; min-height:var(--lg-tap); min-width:var(--lg-tap); justify-content:center; padding:0 14px; border-radius:18px; border:2px solid rgba(255,255,255,.18); background:rgba(255,255,255,.08); color:#fff; font:800 19px Nunito, system-ui, sans-serif; cursor:pointer; text-decoration:none; }
.lg-chip span { font-size:22px; }
.lg-streak.ready { background:linear-gradient(100deg,#ffb347,#ff7ac6); border-color:transparent; animation:lg-pulse 1.6s ease-in-out infinite; }
.lg-dust-ic { color:var(--lg-gold); }
.lg-bump { animation:lg-bump .5s; }
@keyframes lg-bump { 40% { transform:scale(1.18); } }
@keyframes lg-pulse { 50% { box-shadow:0 0 0 6px rgba(255,180,90,.25); } }
@media (max-width:1180px) { .lg-hi-t { display:none; } .lg-nb { padding:0 14px; font-size:18px; } }
@media (max-width:760px) {
  .lg-nav { flex-wrap:wrap; gap:6px 8px; padding:6px 8px; }
  .lg-hi { order:1; min-height:56px; }
  .lg-hi-t { display:inline; font-size:17px; }
  .lg-nav-me { order:2; margin-left:auto; gap:6px; }
  .lg-chip { min-height:56px; min-width:56px; padding:0 10px; font-size:18px; }
  .lg-nav-row { order:3; flex:1 1 100%; }
  .lg-nb { min-height:58px; padding:0 16px; flex-direction:column; justify-content:center; gap:0; font-size:17px; min-width:84px; }
}
@media (max-width:400px) { .lg-hi-t { display:none; } }

/* buttons + text */
.lg-btn { display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:64px; padding:0 28px; border-radius:20px; border:0; cursor:pointer; text-decoration:none; font:800 21px/1.1 Nunito, system-ui, sans-serif; color:var(--lg-ink); background:linear-gradient(100deg,#fff,#dfe8ff); box-shadow:0 6px 0 rgba(0,0,0,.25); transition:transform .1s; }
.lg-btn:active { transform:translateY(3px); box-shadow:0 3px 0 rgba(0,0,0,.25); }
.lg-btn-gold { background:linear-gradient(100deg,var(--lg-gold2),var(--lg-gold)); }
.lg-btn-pink { background:linear-gradient(100deg,#ffd6ef,#ff8fd0); }
.lg-btn-big { min-height:84px; font-size:28px; padding:0 40px; border-radius:26px; }
.lg-ghost { background:rgba(255,255,255,.1); color:#fff; border:2px solid rgba(255,255,255,.3); box-shadow:none; }
.lg-btn[disabled], .lg-btn[aria-disabled="true"] { opacity:.55; }
.lg-lead { font-size:21px; line-height:1.45; }
.lg-small { font-size:18px; opacity:.85; }
.lg-big-emoji { font-size:64px; margin:0; line-height:1.1; }
.lg-row-btns { display:flex; flex-wrap:wrap; gap:14px; justify-content:center; margin-top:18px; }

/* toast + modal */
.lg-toast { position:fixed; left:50%; bottom:22px; transform:translate(-50%, 160%); z-index:120; background:#1d1640; color:#fff; border:2px solid var(--lg-gold); border-radius:20px; padding:14px 22px; font:800 19px Nunito, system-ui, sans-serif; max-width:min(92vw, 640px); text-align:center; transition:transform .35s; box-shadow:0 10px 40px rgba(0,0,0,.5); }
.lg-toast.on { transform:translate(-50%, 0); }
.lg-lock { overflow:hidden; }
.lg-modal { position:fixed; inset:0; z-index:100; display:grid; place-items:center; background:rgba(6,4,20,.72); padding:14px; font-family:Nunito, system-ui, sans-serif; color:#fff; }
.lg-modal-in { position:relative; width:min(100%, 720px); max-height:92vh; overflow:auto; background:linear-gradient(160deg,#2a1d5c,#140d33); border:2px solid rgba(255,255,255,.18); border-radius:28px; padding:30px 22px 26px; box-shadow:0 30px 80px rgba(0,0,0,.6); text-align:center; }
.lg-modal-open .lg-modal-in { width:min(100%, 1100px); }
.lg-x { position:absolute; right:12px; top:12px; width:56px; height:56px; border-radius:50%; border:0; background:rgba(255,255,255,.14); color:#fff; font-size:24px; cursor:pointer; z-index:2; }
.lg-daily h2, .lg-open h2 { font-size:34px; margin:6px 0 8px; }
.lg-week { display:flex; gap:8px; justify-content:center; list-style:none; padding:0; margin:16px 0; flex-wrap:wrap; }
.lg-week li { width:68px; height:76px; border-radius:16px; background:rgba(255,255,255,.08); display:flex; flex-direction:column; align-items:center; justify-content:center; font-size:18px; border:2px solid transparent; }
.lg-week li b { font-size:22px; }
.lg-week li.got { opacity:.55; }
.lg-week li.now { border-color:var(--lg-gold); background:rgba(255,211,107,.2); transform:scale(1.08); }
.lg-reward { font-size:26px; font-weight:800; color:var(--lg-gold); margin:8px 0 18px; }

/* Pip bubble */
.lg-pipsay { position:fixed; left:14px; bottom:14px; z-index:90; display:flex; align-items:flex-end; gap:8px; max-width:min(440px, calc(100vw - 28px)); transform:translateY(140%); transition:transform .4s; pointer-events:none; }
.lg-pipsay.on { transform:none; pointer-events:auto; }
.lg-pipsay-p svg { width:72px; height:72px; filter:drop-shadow(0 0 14px rgba(255,226,122,.7)); animation:lg-bob 2.4s ease-in-out infinite; }
.lg-pipsay-t { background:#fff8dc; color:#1c1430; border-radius:20px 20px 20px 6px; padding:14px 18px; font:700 19px/1.35 Nunito, system-ui, sans-serif; margin:0 0 30px; box-shadow:0 8px 30px rgba(0,0,0,.4); }
.lg-pipsay-x { position:absolute; right:-6px; top:-14px; width:44px; height:44px; border-radius:50%; border:0; background:#2a1d5c; color:#fff; font-size:18px; cursor:pointer; }
@keyframes lg-bob { 50% { transform:translateY(-6px) rotate(4deg); } }

/* sparkle burst */
.lg-burst { position:fixed; inset:0; pointer-events:none; z-index:130; }
.lg-burst i { position:absolute; width:12px; height:12px; border-radius:50%; animation:lg-fly 1.3s cubic-bezier(.2,.7,.3,1) forwards; box-shadow:0 0 10px currentColor; }
@keyframes lg-fly { to { transform:translate(var(--dx), var(--dy)) scale(.2); opacity:0; } }

/* cards */
.lg-card { position:relative; }
.lg-card .pc-slot { margin:0; }
.lg-fin, .lg-pet, .lg-count, .lg-new, .lg-evt, .lg-mine, .lg-codstar { position:absolute; z-index:6; font:800 15px/1 Nunito, system-ui, sans-serif; border-radius:999px; padding:6px 10px; pointer-events:none; }
.lg-fin { left:50%; transform:translateX(-50%); bottom:-12px; background:linear-gradient(100deg,#ff9de2,#8fc8ff); color:#14142a; white-space:nowrap; }
.lg-pet { left:50%; transform:translateX(-50%); top:-14px; background:#fff8dc; color:#3a2a10; white-space:nowrap; font-size:16px; }
.lg-count { right:-8px; top:-10px; background:#ffd36b; color:#14142a; font-size:18px; min-width:40px; text-align:center; }
.lg-new { left:-8px; top:-10px; background:#5dffa0; color:#0b2a17; font-size:16px; }
.lg-evt { right:-6px; bottom:22%; background:#ffb347; color:#3a1a05; font-size:13px; }
.lg-mine { left:50%; transform:translateX(-50%); bottom:-14px; background:linear-gradient(100deg,#fff4c8,#ff9de2); color:#2a1030; white-space:nowrap; font-size:13px; }
.lg-codstar { left:-6px; bottom:-8px; width:36px; height:36px; padding:0; display:grid; place-items:center; background:#ffd36b; color:#7a4a00; font-size:22px; }
.lg-card.fin-rev .pc-slot, .lg-card.fin-fa .pc-slot, .lg-card.fin-ir .pc-slot, .lg-card.fin-sir .pc-slot, .lg-card.fin-gold .pc-slot { filter:drop-shadow(0 0 10px rgba(255,157,226,.55)); }
.lg-card.fin-gold .pc-slot { filter:drop-shadow(0 0 16px rgba(255,204,51,.85)); }
.lg-card-evt .pc-slot { filter:drop-shadow(0 0 14px rgba(255,179,71,.75)); }
.lg-card-mine .pc-slot { filter:drop-shadow(0 0 18px rgba(255,244,200,.95)); }
.lg-card-ph { aspect-ratio:63/88; border-radius:14px; background:rgba(255,255,255,.08); display:grid; place-items:center; font-weight:800; }
.lg-grid { display:grid; grid-template-columns:repeat(auto-fill, minmax(170px, 1fr)); gap:22px 16px; }
.lg-grid-pack { grid-template-columns:repeat(auto-fill, minmax(150px, 1fr)); margin:18px 0; }
/* card frames (cosmetic overlay class on .lg-card) */
.lg-card[class*="frame-"]::after { content:""; position:absolute; inset:-6px; border-radius:18px; pointer-events:none; z-index:5; }
.lg-card.frame-silver::after { border:4px solid #e7ecff; box-shadow:0 0 14px #c9d6ff; }
.lg-card.frame-comet::after { border:4px solid #8fc8ff; box-shadow:0 0 18px #4fd2ff; }
.lg-card.frame-nebula::after { border:4px solid transparent; background:linear-gradient(#0000,#0000) padding-box, conic-gradient(#a77bff,#ff5fa2,#4fd2ff,#a77bff) border-box; -webkit-mask:linear-gradient(#000 0 0) padding-box exclude, linear-gradient(#000 0 0); mask:linear-gradient(#000 0 0) padding-box exclude, linear-gradient(#000 0 0); }
.lg-card.frame-harvest::after { border:4px solid #ffcc33; box-shadow:0 0 18px #ffb347; }
.lg-card.frame-aurora::after { border:4px solid #5dffa0; box-shadow:0 0 18px #5dffa0, 0 0 30px #a77bff; animation:lg-hue 4s linear infinite; }
.lg-card.frame-twinkle::after { border:4px dotted #ffe27a; box-shadow:0 0 20px #ffe27a; animation:lg-tw 1.4s ease-in-out infinite; }
@keyframes lg-hue { to { filter:hue-rotate(360deg); } }
@keyframes lg-tw { 50% { opacity:.55; } }

/* pack + opener */
.lg-pack { position:relative; display:block; width:200px; aspect-ratio:3/4.2; border-radius:18px; overflow:hidden; background:linear-gradient(160deg,var(--pc),var(--pd)); box-shadow:0 18px 40px rgba(0,0,0,.5), inset 0 0 0 4px rgba(255,255,255,.4); margin:0 auto; }
.lg-pack img { position:absolute; inset:18% 8% 26%; width:84%; height:56%; object-fit:cover; border-radius:12px; opacity:.92; }
.lg-pack-foil { position:absolute; inset:0; background:repeating-linear-gradient(115deg,rgba(255,255,255,.0) 0 18px,rgba(255,255,255,.22) 18px 26px); mix-blend-mode:overlay; }
.lg-pack-star svg { position:absolute; left:50%; top:4%; width:46px; transform:translateX(-50%); }
.lg-pack-name { position:absolute; left:0; right:0; bottom:6%; text-align:center; font:900 20px/1 Nunito, system-ui, sans-serif; color:#fff; text-shadow:0 2px 6px rgba(0,0,0,.6); letter-spacing:.02em; }
.lg-pack-name small { display:block; font-size:13px; margin-top:4px; letter-spacing:.12em; opacity:.9; }
.lg-open-pack { cursor:pointer; display:inline-block; animation:lg-wobble 2.2s ease-in-out infinite; }
.lg-open-pack .lg-pack { width:min(260px, 60vw); }
.lg-open[data-stage="rip"] .lg-open-pack { animation:lg-rip .65s forwards; }
.lg-open[data-stage="cards"] .lg-open-pack, .lg-open[data-stage="all"] .lg-open-pack { display:none; }
.lg-open-hint { font-size:22px; font-weight:800; }
.lg-open-go { margin-top:10px; }
.lg-open-card { width:min(320px, 76vw); margin:0 auto; }
.lg-open-card.flipin { animation:lg-flipin .55s cubic-bezier(.2,.8,.3,1.2); }
.lg-open-n { font-size:20px; font-weight:800; min-height:28px; margin:20px 0 6px; }
.lg-open-acts { display:flex; gap:14px; justify-content:center; flex-wrap:wrap; }
@keyframes lg-wobble { 0%,100% { transform:rotate(-3deg); } 50% { transform:rotate(3deg) translateY(-6px); } }
@keyframes lg-rip { 40% { transform:scale(1.12) rotate(-6deg); } 100% { transform:scale(1.4); opacity:0; filter:brightness(3); } }
@keyframes lg-flipin { from { transform:rotateY(90deg) scale(.7); opacity:0; } to { transform:none; opacity:1; } }

/* rarity spotlight */
.lg-spot { position:fixed; inset:0; z-index:125; background:rgba(4,2,14,.86); display:flex; flex-direction:column; align-items:center; justify-content:center; cursor:pointer; color:#fff; font-family:Nunito, system-ui, sans-serif; transition:opacity .4s; }
.lg-spot.out { opacity:0; }
.lg-spot-beam { position:absolute; left:50%; top:-10%; width:60vmin; height:120vh; transform:translateX(-50%); background:radial-gradient(ellipse at top, rgba(255,255,255,.5), rgba(255,255,255,0) 70%); animation:lg-sweep 4s ease-in-out; }
.lg-spot-stage2 .lg-spot-beam { background:radial-gradient(ellipse at top, rgba(255,210,74,.6), rgba(255,210,74,0) 70%); }
.lg-spot-legendary .lg-spot-beam { background:conic-gradient(from 180deg at 50% 0%, #ff5fa2, #ffd24a, #5dffa0, #4fd2ff, #a77bff, #ff5fa2); opacity:.45; filter:blur(20px); }
.lg-spot-card { width:min(300px, 70vw); animation:lg-rise 4s ease-in-out; position:relative; z-index:1; }
.lg-spot-banner { position:relative; z-index:1; font-size:40px; font-weight:900; color:var(--lg-gold); text-shadow:0 0 20px rgba(255,211,107,.8); margin:26px 0 4px; }
.lg-spot-pip svg { position:absolute; right:6vw; bottom:8vh; width:90px; animation:lg-bob 1s ease-in-out infinite; }
.lg-spot-skip { position:relative; z-index:1; font-size:18px; opacity:.8; }
@keyframes lg-sweep { 0% { transform:translateX(-120%) rotate(-12deg); } 50% { transform:translateX(-50%) rotate(0); } }
@keyframes lg-rise { 0% { transform:translateY(60px) rotateY(0) scale(.8); opacity:0; } 30% { opacity:1; } 70% { transform:translateY(0) rotateY(360deg) scale(1.05); } 100% { transform:none; } }

/* page shell for game pages */
.lg-page { max-width:1500px; margin:0 auto; padding:22px clamp(12px, 3vw, 36px) 80px; color:#fff; font-family:Nunito, system-ui, sans-serif; font-size:20px; }
.lg-page h1 { font-size:clamp(38px, 5vw, 60px); margin:10px 0 6px; line-height:1.05; }
.lg-page h2 { font-size:clamp(28px, 3.2vw, 40px); margin:0 0 10px; }
.lg-page h3 { font-size:26px; margin:0 0 6px; }
.lg-panel { background:var(--lg-card); border:2px solid var(--lg-line); border-radius:var(--lg-r); padding:22px; backdrop-filter:blur(6px); -webkit-backdrop-filter:blur(6px); }
.lg-tabs { display:flex; flex-wrap:wrap; gap:10px; margin:14px 0; }
.lg-tab { min-height:60px; padding:0 20px; border-radius:18px; border:2px solid rgba(255,255,255,.25); background:rgba(255,255,255,.08); color:#fff; font:800 19px Nunito, system-ui, sans-serif; cursor:pointer; }
.lg-tab[aria-pressed="true"] { background:linear-gradient(100deg,var(--lg-gold2),var(--lg-gold)); color:var(--lg-ink); border-color:transparent; }
.lg-decks { display:grid; grid-template-columns:repeat(auto-fill, minmax(200px, 1fr)); gap:16px; }
.lg-deck { position:relative; display:flex; flex-direction:column; align-items:stretch; text-align:left; gap:0; padding:0; overflow:hidden; border-radius:20px; border:3px solid rgba(255,255,255,.16); background:linear-gradient(160deg, var(--c, #8fb4ff), var(--d, #3b56b8)); color:#fff; cursor:pointer; text-decoration:none; min-height:180px; font-family:Nunito, system-ui, sans-serif; transition:transform .12s; }
.lg-deck:active { transform:scale(.97); }
.lg-deck img { width:100%; aspect-ratio:4/3; object-fit:cover; display:block; }
.lg-deck b { font-size:21px; padding:10px 14px 0; }
.lg-deck small { font-size:17px; padding:2px 14px 12px; opacity:.92; }
.lg-deck .lg-deck-n { position:absolute; right:10px; top:10px; background:rgba(0,0,0,.55); border-radius:999px; padding:6px 12px; font-weight:800; font-size:16px; }
@media (max-width:760px) { .lg-page { font-size:21px; padding-top:14px; } .lg-decks { grid-template-columns:repeat(2, 1fr); gap:12px; } .lg-deck { min-height:150px; } .lg-deck b { font-size:19px; } .lg-grid { grid-template-columns:repeat(2, 1fr); gap:20px 12px; } .lg-btn { font-size:20px; } }
@media (prefers-reduced-motion: reduce) { .lg-open-pack, .lg-streak.ready, .lg-pipsay-p svg, .lg-card[class*="frame-"]::after { animation:none !important; } .lg-spot-beam, .lg-spot-card { animation:none; } }
/* /play/ mode bar */
.lg-mode{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:center;max-width:1100px;margin:10px auto 14px;padding:0 14px}
.lg-mode-t{font-weight:800;font-size:19px;color:#fff}
.lg-mode .lg-chip{min-height:58px;font-size:18px}
.lg-mode .lg-chip[aria-pressed="true"]{background:#ffd34d;color:#2a1650}
.lg-mode-n{flex-basis:100%;text-align:center;font-size:17px;color:#e9e2ff}

/* ===== Batch 1 item 5: collecting extras ===== */
/* pet-name dice + device-only typing, group keypad */
.lg-dice { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:12px; margin:16px 0; }
.lg-dice .lg-code { min-width:8ch; min-height:1.4em; font-size:26px; font-weight:900; text-align:center; }
.lg-own { margin:12px 0; padding:12px 14px; border-radius:18px; background:rgba(255,255,255,.06); }
.lg-own summary { min-height:56px; display:flex; align-items:center; font-weight:800; font-size:18px; cursor:pointer; }
.lg-own .lg-btn { margin-top:10px; }
.lg-keypad { display:grid; grid-template-columns:repeat(4, minmax(0, 1fr)); gap:10px; max-width:420px; margin:8px auto 14px; }
.lg-key { min-height:64px; border-radius:18px; border:2px solid rgba(255,255,255,.25); background:rgba(255,255,255,.1); color:#fff; font:900 26px Nunito, system-ui, sans-serif; cursor:pointer; }
.lg-key:active { transform:scale(.96); }
.lg-key-x { background:rgba(255,120,150,.18); }
/* card number + Shiny */
.lg-num { position:absolute; z-index:6; right:6px; bottom:6px; font:900 13px/1 Nunito, system-ui, sans-serif; padding:5px 8px; border-radius:999px; background:rgba(8,6,24,.82); color:#fff; pointer-events:none; white-space:nowrap; }
.lg-card.fin-shiny .pc-slot { filter:drop-shadow(0 0 12px rgba(157,224,255,.9)); }
.lg-card.fin-shiny::before { content:""; position:absolute; inset:0; z-index:5; border-radius:14px; pointer-events:none; background:linear-gradient(115deg, transparent 30%, rgba(255,255,255,.55) 45%, rgba(157,224,255,.35) 52%, transparent 66%); background-size:250% 100%; mix-blend-mode:screen; animation:lg-shimmer 2.8s ease-in-out infinite; }
.lg-fin-shiny { background:linear-gradient(100deg,#9de0ff,#fff,#c9a2ff) !important; }
@keyframes lg-shimmer { 0% { background-position:120% 0; } 60%, 100% { background-position:-120% 0; } }
/* binder: rank chip, filters, galaxy picker, silhouettes */
.lg-rankchip { display:inline-flex; flex-wrap:wrap; align-items:center; gap:6px 8px; min-height:56px; margin-top:8px; padding:6px 16px; border-radius:18px; border:2px solid var(--rc, #ffd36b); background:rgba(255,255,255,.07); color:#fff; font-weight:900; font-size:19px; text-decoration:none; }
.lg-rankchip small { font-weight:700; font-size:15px; opacity:.85; }
.lg-filters { margin-bottom:4px; }
.lg-galpick { display:grid; grid-template-columns:repeat(auto-fill, minmax(150px, 1fr)); gap:10px; margin-top:14px; }
.lg-galpick .lg-btn { padding:8px 12px; min-height:64px; font-size:18px; flex-direction:column; gap:2px; }
.lg-galpick .lg-btn small { font-size:14px; font-weight:700; opacity:.85; }
.lg-galbtn { border:3px solid var(--gc, #8fb4ff) !important; }
.lg-galbtn[aria-pressed="true"] { background:var(--gc, #8fb4ff); color:#14142a; }
.lg-sil { position:absolute; inset:0; width:100%; height:100%; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:6px; border-radius:14px; border:3px dashed var(--gc, #8fb4ff); background:radial-gradient(circle at 50% 40%, rgba(255,255,255,.08), rgba(0,0,0,.35)); color:#fff; cursor:pointer; overflow:hidden; padding:0; font:inherit; }
.lg-sil-img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; filter:brightness(0) saturate(0); opacity:.45; }
.lg-sil-q { position:relative; font:900 clamp(34px, 7vw, 64px)/1 Nunito, system-ui, sans-serif; color:var(--gc, #8fb4ff); text-shadow:0 0 14px rgba(0,0,0,.8); }
.lg-sil-n { position:relative; font-weight:900; font-size:clamp(13px, 2.4vw, 17px); padding:4px 10px; border-radius:999px; background:rgba(8,6,24,.8); }
.lg-sil-w { position:absolute; top:6px; right:6px; font-size:24px; }
/* New cards landed banner */
.lg-landed { display:flex; flex-wrap:wrap; align-items:center; gap:12px 18px; box-sizing:border-box; width:calc(100% - 24px); max-width:1100px; margin:14px auto 0; padding:16px 18px; border-radius:24px; background:linear-gradient(120deg, rgba(255,211,107,.25), rgba(201,162,255,.25)); border:3px solid #ffd36b; animation:lg-pop .5s ease-out; }
.lg-landed-e { font-size:48px; margin:0; }
.lg-landed-t { flex:1 1 220px; min-width:0; }
.lg-landed-t h2 { margin:0 0 4px; font-size:26px; line-height:1.2; }
.lg-landed-t p { margin:0; font-size:18px; }
.lg-landed-b { display:flex; flex-wrap:wrap; gap:10px; flex:1 1 100%; }
.lg-landed-b .lg-btn { flex:1 1 200px; }
@keyframes lg-pop { from { transform:scale(.94); opacity:0; } to { transform:none; opacity:1; } }
/* binder covers + stickers */
.lg-cover-link { display:block; text-decoration:none; color:#fff; margin-bottom:12px; border-radius:24px; }
.lg-cover { position:relative; display:flex; align-items:center; gap:14px; padding:14px 18px; border-radius:24px; overflow:hidden; color:#fff; min-height:96px; border:3px solid rgba(255,255,255,.25); box-shadow:inset 0 0 0 2px rgba(0,0,0,.2); }
.lg-cover-st { display:grid; grid-template-columns:repeat(9, 1fr); gap:4px; flex:1 1 auto; min-width:0; }
.lg-stk-spot { aspect-ratio:1; display:grid; place-items:center; border-radius:50%; background:rgba(255,255,255,.08); font-size:clamp(16px, 3.4vw, 30px); }
.lg-cover-name { flex:0 0 auto; text-align:right; font-weight:900; font-size:20px; line-height:1.2; text-shadow:0 2px 6px rgba(0,0,0,.6); }
.lg-cover-name small { display:block; font-size:15px; font-weight:800; opacity:.9; }
@media (max-width:600px) { .lg-cover { flex-direction:column; align-items:stretch; } .lg-cover-name { text-align:left; } }
.lg-cover-starry { background:radial-gradient(2px 2px at 12% 30%, #fff, transparent), radial-gradient(2px 2px at 70% 20%, #fff, transparent), radial-gradient(1.5px 1.5px at 40% 70%, #fff, transparent), radial-gradient(2px 2px at 88% 75%, #fff, transparent), linear-gradient(135deg, #1b1650, #2a1e6e 55%, #0f0c30); }
.lg-cover-comet { background:linear-gradient(160deg, transparent 40%, rgba(143,200,255,.45) 50%, transparent 60%), linear-gradient(135deg, #0d2a52, #1a4a8a); }
.lg-cover-sunset { background:linear-gradient(180deg, #ff9d6b, #ff6fa8 55%, #7a4ab8); }
.lg-cover-ocean { background:radial-gradient(circle at 30% 30%, rgba(93,255,224,.35), transparent 60%), linear-gradient(135deg, #0a3a5a, #1f6f9a); }
.lg-cover-rainbow { background:linear-gradient(110deg, #ff7a9c, #ffb36b, #ffe27a, #7dffb0, #7ac8ff, #b48cff); }
.lg-cover-aurora { background:linear-gradient(170deg, rgba(93,255,160,.55), transparent 50%), linear-gradient(200deg, rgba(167,123,255,.6), transparent 60%), #0b1a2e; }
.lg-cover-gold { background:radial-gradient(circle at 70% 30%, rgba(255,255,255,.5), transparent 40%), linear-gradient(135deg, #b8860b, #ffd36b 50%, #a0700a); color:#2a1a00; }
.lg-cover-gold .lg-cover-name { color:#2a1a00; text-shadow:0 1px 0 rgba(255,255,255,.5); }
.lg-cover-crown { background:radial-gradient(circle at 50% 0, rgba(255,211,107,.6), transparent 55%), conic-gradient(from 200deg, #4a1d8a, #ff5fa2, #ffd36b, #4fd2ff, #4a1d8a); }
@media (prefers-reduced-motion: reduce) { .lg-card.fin-shiny::before, .lg-landed { animation:none !important; } .lg-card.fin-shiny::before { background-position:50% 0; opacity:.5; } }
