@charset "UTF-8";
:root {
  --bg:#0b0e13;
  --surface:#13171f;
  --raised:#1a202a;
  --ink:#f2f5f7;
  --muted:#a1aab8;
  --line:#2a313d;
  --lime:#c9ff68;
  --orange:#ff9c55;
  --violet:#b49aff;
  --error:#ffc1b7;
  --font:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --display:var(--font);
  --ease:cubic-bezier(.2,.65,.2,1);
  color-scheme:dark;
}
* { box-sizing:border-box; }
html { scroll-behavior:smooth;scroll-padding-top:28px; }
body { margin:0;color:var(--ink);background:var(--bg);font-family:var(--font);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased;background-image:radial-gradient(ellipse at 82% 7%,#26392324,transparent 32%); }
body:has(dialog[open]) { overflow:hidden; }
button,input { font:inherit; }
button,a { -webkit-tap-highlight-color:transparent;touch-action:manipulation; }
button { cursor:pointer;color:inherit; }
button:disabled { cursor:not-allowed;opacity:.6; }
a { color:inherit;text-decoration:none; }
button:focus-visible,a:focus-visible,canvas:focus-visible { outline:3px solid var(--lime);outline-offset:5px; }
button:not(:disabled):active,.button:active { transform:translateY(1px); }
h1,h2,h3,p { margin:0; }
h1,h2,h3 { line-height:1.2; }
::selection { color:var(--bg);background:var(--lime); }
[hidden] { display:none !important; }
.wrap { width:min(1220px,calc(100% - 80px));margin-inline:auto; }
.icon { width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto;vertical-align:middle; }
.icon-library { position:absolute;width:0;height:0;overflow:hidden; }
.skip-link { position:fixed;top:-100px;left:20px;z-index:200;background:var(--lime);color:var(--bg);padding:12px 20px; }
.skip-link:focus { top:15px; }
.top-rail { background:#11151b;border-bottom:1px solid #222932; }
.top-rail .wrap { min-height:33px;display:flex;align-items:center;justify-content:space-between;font-size:9px;letter-spacing:1.5px;font-weight:600;color:#afb6bf; }
.top-rail span { display:flex;align-items:center;gap:10px; }
.top-rail i { width:5px;height:5px;background:var(--lime);box-shadow:0 0 10px #c9ff6855; }
.top-rail b { color:var(--lime);font-size:13px; }
.site-header { min-height:96px;display:flex;align-items:center;gap:32px;border-bottom:1px solid var(--line); }
.brand { display:inline-flex;align-items:center;gap:11px;white-space:nowrap;font-family:var(--display);font-size:29px;letter-spacing:-1.5px;font-weight:400;min-width:0; }
.site-header .brand { max-width:37%; }.brand>span { overflow:hidden;text-overflow:ellipsis; }
.brand-mark { width:32px;height:36px;color:var(--lime);flex:0 0 auto; }
.brand-dot { color:var(--lime); }
.main-nav { display:flex;align-items:center;gap:31px;margin-left:38px;font-size:13px;font-weight:600; }
.main-nav a { min-height:44px;display:flex;align-items:center;gap:7px;position:relative;color:var(--muted);transition:color .2s; }
.main-nav a:hover,.main-nav .nav-active { color:var(--ink); }
.main-nav .nav-active::after { content:"";position:absolute;left:0;right:0;bottom:-26px;height:2px;background:var(--lime); }
.main-nav a>span { font-size:10px;border:1px solid #394336;color:var(--lime);min-width:21px;text-align:center;border-radius:3px;line-height:19px; }
.history-button { margin-left:auto;display:flex;align-items:center;justify-content:center;gap:10px;background:#1b2227;border:1px solid #394b35;min-height:44px;padding:10px 15px;font-size:12px;font-weight:600;border-radius:4px;transition:background .2s,border-color .2s; }
.history-button:hover { background:#253126;border-color:#779f4e; }.history-button>.icon { width:18px;height:18px;color:var(--lime); }
.history-count { font-size:10px;line-height:20px;min-width:20px;text-align:center;background:#c9ff6820;color:var(--lime);border-radius:2px; }
.hero { display:grid;grid-template-columns:1fr 1.04fr;gap:35px;align-items:center;min-height:629px;padding-block:48px 54px; }
.eyebrow { display:flex;align-items:center;gap:9px;font-size:10px;font-weight:700;letter-spacing:1.6px;color:var(--lime); }
.eyebrow-line { width:21px;height:2px;background:currentColor;flex-shrink:0; }
.hero h1 { font-family:var(--display);font-size:clamp(43px,4.15vw,62px);letter-spacing:-1.9px;line-height:1.09;text-transform:uppercase;font-weight:400;margin:23px 0;max-width:625px;overflow-wrap:anywhere;text-wrap:balance; }
.hero-description { color:var(--muted);max-width:455px;font-size:15px;line-height:1.85; }
.hero-actions { display:flex;align-items:center;gap:21px;flex-wrap:wrap;margin-top:30px; }
.button { display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:51px;padding:13px 19px;border:1px solid transparent;border-radius:3px;font-size:12px;font-weight:700;line-height:1.5;transition:background .2s,color .2s,box-shadow .2s;text-transform:uppercase;letter-spacing:.35px; }
.button .icon { width:18px;height:18px; }.button-primary { background:var(--lime);color:#141b10;box-shadow:inset 0 -3px #0000001c; }
.button-primary:hover { background:#dbffa0;box-shadow:0 0 24px #c9ff6814; }.button-secondary { background:#242c37;border-color:#3d4958;color:var(--ink); }.button-secondary:hover { background:#303b49; }
.hero-note { font-size:11px;color:var(--muted);display:flex;align-items:center;gap:6px; }.hero-note .icon { width:14px;height:14px;color:var(--lime); }
.hero-status { display:flex;gap:27px;margin-top:32px;padding-top:22px;border-top:1px solid #232c34;max-width:435px;font-size:11px;color:var(--muted); }
.hero-status>span { display:flex;align-items:center;gap:8px; }.hero-status .icon { width:15px;height:15px;color:#768673; }.hero-status b { color:var(--ink);font-size:14px;font-weight:600; }
.hero-art { width:100%;height:510px;position:relative;isolation:isolate;min-width:0; }
.hero-grid { position:absolute;inset:17px 0 34px;background-image:linear-gradient(#60723b0b 1px,transparent 1px),linear-gradient(90deg,#60723b0b 1px,transparent 1px);background-size:33px 33px;border:1px solid #323e2c60;clip-path:polygon(0 0,calc(100% - 22px) 0,100% 22px,100% 100%,22px 100%,0 calc(100% - 22px)); }
.hero-halo { position:absolute;inset:5% -4% 3%;background:radial-gradient(ellipse,#b8ec441a,transparent 66%);z-index:-1; }
.hud-corner { position:absolute;width:27px;height:27px;border-color:#7c9b47;border-style:solid;border-width:0; }.corner-tl { top:17px;left:0;border-top-width:2px;border-left-width:2px; }.corner-br { bottom:34px;right:0;border-bottom-width:2px;border-right-width:2px; }
.hero-art-label { position:absolute;top:38px;left:24px;font-size:8px;font-weight:600;letter-spacing:1.8px;color:#96a18c; }.hero-art-coordinates { position:absolute;right:19px;top:80px;font-size:8px;color:#6f7b68;font-variant-numeric:tabular-nums;line-height:1.8;letter-spacing:1px; }
.hero-crate { position:absolute;width:100%;max-width:none;height:auto;left:0;top:-26px;filter:drop-shadow(0 22px 19px #00000050);animation:crate-entrance .6s var(--ease) both; }
@keyframes crate-entrance { from { opacity:0;transform:translateY(18px); } to { opacity:1;transform:translateY(0); } }
.floating-chip { position:absolute;display:flex;align-items:center;gap:10px;padding:11px 13px;background:#191f27e8;border:1px solid #49583c;color:#b9c2b1;font-size:7px;font-weight:500;letter-spacing:1px;line-height:1.7;z-index:2;box-shadow:0 10px 20px #00000030;transform:rotate(-8deg); }
.floating-chip strong { font-size:10px;color:var(--lime);letter-spacing:.8px; }.floating-chip .icon { color:var(--lime);width:22px;height:25px; }.chip-xp { top:125px;left:4px; }.chip-unlock { right:-9px;bottom:135px;transform:rotate(8deg);border-color:#5d5142; }.chip-unlock strong,.chip-unlock .icon { color:var(--orange); }
.hero-art-footer { position:absolute;bottom:52px;left:24px;right:23px;display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:7px;letter-spacing:1.1px;color:#a0ac98; }.hero-art-footer b { color:var(--lime);margin-inline:6px; }.hero-art-footer>.icon { width:16px;height:16px;color:var(--lime); }
.mini-barcode { width:34px;height:18px;background:repeating-linear-gradient(90deg,#a1b881 0,#a1b881 1px,transparent 1px,transparent 3px,#a1b881 3px,#a1b881 5px,transparent 5px,transparent 7px);opacity:.7; }
.promise-strip { background:#141a1f;border-block:1px solid #2b3630; }
.promise-strip .wrap { min-height:66px;display:flex;align-items:center;justify-content:space-between;gap:24px; }.promise-strip span { display:flex;align-items:center;gap:10px;white-space:nowrap;font-size:10px;font-weight:600;letter-spacing:1.15px;color:#c0c8ce; }.promise-strip .icon { color:var(--lime);width:18px;height:18px; }.promise-strip i { width:4px;height:4px;background:#475540;transform:rotate(45deg); }
.cards-section { padding-block:68px 61px; }
.section-heading { display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:28px; }.section-heading h2 { font-family:var(--display);text-transform:uppercase;font-size:38px;letter-spacing:-1px;font-weight:400;margin-top:13px; }.soft-punctuation { color:var(--lime); }.section-heading>p { color:var(--muted);font-size:12px;line-height:1.85; }
.cards-toolbar { display:flex;align-items:center;justify-content:space-between;gap:15px;padding-bottom:21px;margin-bottom:24px;border-bottom:1px solid var(--line); }
.filter-tabs { display:flex;gap:6px; }.filter-tab { min-height:44px;padding:9px 15px;border:1px solid transparent;border-radius:3px;font-size:12px;color:var(--muted);background:transparent;font-weight:600;transition:background .2s,color .2s,border-color .2s; }.filter-tab:hover { background:#1c242c; }.filter-tab.is-active { color:var(--lime);background:#c9ff6810;border-color:#c9ff6840; }.filter-tab>span { padding:1px 5px;margin-left:7px;font-size:10px;background:#c9ff6817;border-radius:2px; }
.availability-note { display:flex;align-items:center;gap:7px;font-size:10px;color:var(--muted); }.availability-note>span { width:5px;height:5px;background:var(--lime); }
.card-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px; }
.game-card { --card-color:var(--lime);background:var(--surface);border:1px solid var(--line);border-radius:7px;overflow:hidden;min-width:0;position:relative;transition:border-color .25s,box-shadow .25s,transform .25s; }
.theme-mint { --card-color:#c9ff68; }.theme-coral { --card-color:#ff9c55; }.theme-violet { --card-color:#b49aff; }.theme-gold { --card-color:#ffdb79; }
.game-card:hover { transform:translateY(-5px);border-color:color-mix(in srgb,var(--card-color) 60%,#2a313d);box-shadow:0 15px 35px #00000030; }
.card-art { height:237px;padding:17px 20px;background:#11171b;position:relative;overflow:hidden;border-bottom:1px solid #2a313d;color:var(--card-color);background-image:radial-gradient(ellipse at 50% 49%,color-mix(in srgb,var(--card-color) 14%,transparent),transparent 68%),linear-gradient(#6b7b4108 1px,transparent 1px),linear-gradient(90deg,#6b7b4108 1px,transparent 1px);background-size:auto,28px 28px,28px 28px; }
.card-art::after { content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--card-color);box-shadow:0 0 18px color-mix(in srgb,var(--card-color) 25%,transparent); }
.card-art-top { display:flex;align-items:center;justify-content:space-between;gap:10px;position:relative;z-index:1;font-size:8px;letter-spacing:1px;font-weight:600; }.card-art-top>span:first-child { display:flex;align-items:center;gap:5px; }.card-art-top i { width:4px;height:4px;background:currentColor; }.card-mini-brand { color:#9da8a5;font-size:8px; }
.card-item-svg { position:absolute;width:230px;height:174px;left:calc(50% - 115px);top:27px;filter:drop-shadow(0 9px 7px #00000050);transition:transform .3s var(--ease); }.game-card:hover .card-item-svg { transform:translateY(-4px); }
.loot-top { fill:#34402f;fill:color-mix(in srgb,var(--card-color) 20%,#171e1d);stroke:currentColor;stroke-opacity:.6; }.loot-front { fill:#202c24;fill:color-mix(in srgb,var(--card-color) 10%,#11181d);stroke:currentColor;stroke-opacity:.35; }.loot-side { fill:#141d18;fill:color-mix(in srgb,var(--card-color) 6%,#0e151a);stroke:currentColor;stroke-opacity:.3; }
.loot-glyph-crystal,.loot-glyph-star { display:none; }.theme-coral .loot-glyph-bolt,.theme-violet .loot-glyph-bolt { display:none; }.theme-coral .loot-glyph-crystal,.theme-violet .loot-glyph-star { display:block; }
.item-platform { position:absolute;width:145px;height:73px;border:1px solid #739b3b20;left:calc(50% - 72px);top:108px;transform:rotateX(64deg) rotateZ(-6deg);box-shadow:0 0 0 15px #97b34d04,0 0 0 30px #97b34d03; }
.card-art-stamp { position:absolute;right:17px;top:72px;font-size:7px;font-weight:600;letter-spacing:1.1px;color:#7f8e82;line-height:1.8;writing-mode:vertical-rl; }
.card-silver-strip { position:absolute;bottom:17px;left:20px;right:20px;background:repeating-linear-gradient(125deg,#242c35 0,#242c35 3px,#2c343e 3px,#2c343e 5px);border:1px solid #56614e77;border-radius:2px;min-height:34px;display:flex;align-items:center;justify-content:center;gap:11px;color:#b8c4af;font-size:8px;font-weight:600;letter-spacing:1.6px; }.card-silver-strip .icon { width:13px;height:13px;color:var(--card-color); }
.card-body { padding:21px 21px 20px; }.card-label-row { display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px;min-height:20px; }.card-state { display:flex;align-items:center;gap:5px;color:#c4d2bc;font-size:10px; }.card-state::before { content:"";width:4px;height:4px;background:var(--card-color); }.demo-badge { padding:2px 6px;border:1px solid #5d5642;background:#ffce6a0b;color:#e2c78b;font-size:8px;letter-spacing:.8px;font-weight:600;border-radius:2px; }
.card-body h3 { font-size:23px;font-weight:700;letter-spacing:-.5px;overflow-wrap:anywhere; }.card-description { margin-top:9px;min-height:43px;font-size:12px;line-height:1.8;color:var(--muted);overflow-wrap:anywhere; }.card-details { display:flex;align-items:center;gap:7px;font-size:10px;color:#b4bbc3;margin-top:17px;min-height:24px; }.card-details .icon { width:15px;height:15px;color:var(--card-color); }
.card-bottom { display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line);margin-top:17px;padding-top:17px; }.card-free { font-size:15px;font-weight:700;line-height:1.3; }.card-free>span { display:block;margin-top:5px;font-size:9px;font-weight:400;color:var(--muted); }
.card-play { display:flex;align-items:center;justify-content:center;gap:11px;background:var(--card-color);color:#141a13;border:1px solid transparent;min-height:44px;padding:10px 13px;border-radius:3px;font-size:11px;font-weight:700;transition:background .2s,box-shadow .2s; }.card-play:hover:not(:disabled) { background:color-mix(in srgb,var(--card-color) 70%,#fff);box-shadow:0 0 16px color-mix(in srgb,var(--card-color) 13%,transparent); }.card-play .icon { width:16px;height:16px; }.card-play:disabled { color:#a4adb5;background:#242d36;border-color:#39434e;opacity:1; }.is-played .card-play { background:#222d23;border-color:#5f7745;color:var(--lime); }.is-played .card-play:hover { color:#0f160e; }
.demo-explanation { display:flex;align-items:flex-start;justify-content:center;gap:7px;font-size:10px;color:var(--muted);text-align:center;margin-top:26px; }.demo-explanation .icon { width:13px;height:13px;margin-top:2px;color:#bdc5b4; }.demo-explanation strong { font-size:9px;color:#dfc38b; }
.empty-state { padding:44px 23px;text-align:center;color:var(--muted); }.empty-state>.icon { width:35px;height:35px;margin-bottom:15px;color:var(--lime); }.empty-state h3 { font-size:23px;letter-spacing:-.5px;color:var(--ink);margin-bottom:9px; }.empty-state p { max-width:385px;margin-inline:auto;font-size:13px; }.empty-state .button { margin-top:20px; }.no-cards { grid-column:1/-1;border:1px dashed #3f4a3b;border-radius:5px;background:#121a17; }.filter-empty { background:#151d1a;border:1px solid #303e2b;border-radius:5px; }
.how-section { display:grid;grid-template-columns:.85fr 2fr;gap:53px;padding-block:47px 51px;border-block:1px solid var(--line); }
.how-intro h2 { font-family:var(--display);text-transform:uppercase;font-weight:400;font-size:30px;letter-spacing:-.5px;line-height:1.3;margin:14px 0 15px; }.how-intro>p:last-child { font-size:12px;color:var(--muted);line-height:1.9; }
.how-steps { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px;align-items:start;padding-top:5px; }.step-number { display:flex;align-items:center;gap:16px;font-size:13px;font-weight:600;color:var(--lime);padding-bottom:16px;border-bottom:1px solid #3a4730;margin-bottom:17px; }.step-number .icon { width:20px;height:20px;margin-left:auto;color:#879776; }.how-steps h3 { font-size:16px;font-weight:600;margin-bottom:9px;letter-spacing:-.15px; }.how-steps p { font-size:11px;color:var(--muted);line-height:1.9;max-width:210px; }
.closing-note { display:flex;align-items:center;gap:28px;margin-block:51px;padding:32px;background:linear-gradient(110deg,#1a261c,#17201d 66%,#1c2720);border:1px solid #3e5131;position:relative;overflow:hidden;border-radius:5px; }
.closing-note::after { content:"";position:absolute;right:10%;width:60px;height:240px;transform:skew(-27deg);background:#b4ff5305;pointer-events:none; }.closing-symbol { display:flex;justify-content:center;align-items:center;width:67px;height:67px;border:1px solid #b6ed6a44;background:#c9ff680b;transform:skew(-8deg);flex-shrink:0; }.closing-symbol .icon { color:var(--lime);width:31px;height:31px;transform:skew(8deg); }.closing-note .eyebrow { font-size:8px;letter-spacing:1.4px; }.closing-note h2 { font-family:var(--display);text-transform:uppercase;font-weight:400;font-size:28px;letter-spacing:-.8px;margin-top:9px; }.closing-note p { font-size:11px;color:var(--muted);margin-top:8px; }.closing-note .button { margin-left:auto;white-space:nowrap;z-index:1; }
.site-footer { display:flex;align-items:center;gap:24px;border-top:1px solid var(--line);padding-block:25px 30px;font-size:10px;color:var(--muted); }.footer-brand { font-size:23px;color:var(--ink);max-width:32%; }.footer-brand .brand-mark { width:24px;height:27px; }.site-footer>p { font-size:8px;letter-spacing:1.1px; }.site-footer>div { display:flex;align-items:center;gap:23px;margin-left:auto; }.site-footer a:not(.brand),.text-button { display:inline-flex;align-items:center;gap:5px;min-height:44px; }.site-footer .icon { width:12px;height:12px; }.text-button { padding:0;background:none;border:0;color:var(--muted);font-size:11px; }.site-footer a:hover,.text-button:hover { color:var(--lime); }
dialog { width:min(94vw,490px);max-height:calc(100dvh - 32px);padding:26px;background:#141a23;color:var(--ink);border:1px solid #3b4935;border-radius:7px;box-shadow:0 30px 100px #00000080;overflow-y:auto;overscroll-behavior:contain; }
dialog::backdrop { background:#02050bd9;backdrop-filter:blur(5px); }dialog[open] { animation:modal-enter .22s var(--ease); }@keyframes modal-enter { from { opacity:0;transform:translateY(12px) scale(.98); } to { opacity:1;transform:translateY(0) scale(1); } }
.modal-heading { display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid #2b3541; }.modal-heading .eyebrow { font-size:8px;letter-spacing:1.2px; }.icon-button { display:inline-flex;align-items:center;justify-content:center;width:44px;min-width:44px;height:44px;padding:10px;border:1px solid #3e4b58;border-radius:3px;background:#1a232e;color:#c3ced9;transition:background .2s; }.icon-button:hover { background:#2b3846;color:white; }.icon-button .icon { width:18px;height:18px; }.modal-close { border:0;background:transparent;margin-right:-8px; }dialog>h2 { font-family:var(--display);font-size:27px;font-weight:400;letter-spacing:-.5px;overflow-wrap:anywhere; }.modal-subtitle { color:var(--muted);font-size:12px;line-height:1.8;margin:10px 0 21px; }
.modal-loading { min-height:250px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;font-size:13px; }.loading-spinner { width:29px;height:29px;border:2px solid #303c31;border-top-color:var(--lime);border-radius:50%;animation:loading-spin .8s linear infinite; }@keyframes loading-spin { to { transform:rotate(360deg); } }
.error-box { background:#34221f;border:1px solid #825145;border-radius:4px;color:var(--error);padding:20px;font-size:13px; }.error-box .button { margin-top:15px; }
.scratch-area { --card-color:var(--lime);position:relative;height:258px;border-radius:4px;background:#141e1b;background:radial-gradient(ellipse,color-mix(in srgb,var(--card-color) 15%,#121820),#121820);overflow:hidden;border:1px solid color-mix(in srgb,var(--card-color) 40%,#2c363a);isolation:isolate; }
.scratch-area.theme-coral { --card-color:#ff9c55; }.scratch-area.theme-violet { --card-color:#b49aff; }.scratch-area.theme-gold { --card-color:#ffdb79; }.scratch-area canvas { position:absolute;inset:0;width:100%;height:100%;touch-action:none;cursor:crosshair;transition:opacity .35s;z-index:2; }.scratch-area.is-revealed canvas { opacity:0;pointer-events:none; }.scratch-prize { position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:20px; }.prize-decoration { display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid color-mix(in srgb,var(--card-color) 50%,#28343d);background:#ffffff08;margin-bottom:14px;color:var(--card-color); }.prize-decoration .icon { width:22px;height:22px; }.prize-eyebrow { color:#c1cabd;font-size:8px;letter-spacing:1.8px;font-weight:600;margin-bottom:8px; }.scratch-prize h3 { color:var(--card-color);font-family:var(--display);font-weight:400;font-size:29px;line-height:1.15;overflow-wrap:anywhere;max-width:100%; }.scratch-prize p { font-size:11px;line-height:1.7;color:#c4ccd2;max-width:300px;margin-top:10px;overflow-wrap:anywhere; }
.scratch-progress-row { display:flex;align-items:center;justify-content:space-between;font-size:10px;color:#b3bec6;margin-top:18px; }.scratch-progress-row span:last-child { color:var(--lime);font-variant-numeric:tabular-nums;font-weight:600; }progress { width:100%;height:4px;display:block;appearance:none;border:0;background:#2b3540;border-radius:1px;overflow:hidden;margin-top:8px; }progress::-webkit-progress-bar { background:#2b3540; }progress::-webkit-progress-value { background:var(--lime); }progress::-moz-progress-bar { background:var(--lime); }.reveal-button { display:flex;flex-direction:column;align-items:center;gap:4px;background:transparent;border:1px solid transparent;border-radius:3px;min-height:59px;width:100%;padding:12px;margin-top:8px;font-size:10px;color:var(--muted); }.reveal-button>span { display:flex;align-items:center;gap:8px;color:var(--lime);font-size:12px;font-weight:600; }.reveal-button .icon { width:14px;height:14px; }.reveal-button:hover { background:#c9ff6808;border-color:#c9ff6815; }
.result-message { font-size:12px;line-height:1.8;margin-top:18px;color:#d2dadd; }.claim-code-box { margin-top:16px;border:1px solid #607a41;background:#1e2b21;padding:15px;border-radius:3px; }.claim-code-box>span { color:#c4d8b0;font-size:8px;letter-spacing:1.3px;font-weight:600; }.claim-code-box>div { display:flex;align-items:center;justify-content:space-between;gap:10px;margin:5px 0; }.claim-code-box code { font-size:17px;font-weight:600;letter-spacing:1px;color:var(--lime);overflow-wrap:anywhere;min-width:0; }.claim-code-box p { font-size:10px;color:#b9c6b2;line-height:1.8; }.claim-code-box .icon-button { color:var(--lime);border-color:#526743;background:#293626; }.modal-done { width:100%;margin-top:20px; }.scratch-session-note { margin-top:17px;color:#aab4bd;font-size:9px;text-align:center; }
.scratch-confetti { position:absolute;inset:0;pointer-events:none;z-index:3;overflow:hidden; }.scratch-confetti i { position:absolute;left:var(--x);top:-12px;width:7px;height:12px;background:var(--confetti-color);border-radius:1px;animation:confetti-fall var(--fall-time) var(--fall-delay) ease-out both; }@keyframes confetti-fall { 0% { transform:translate3d(0,-10px,0) rotate(0);opacity:1; }100% { transform:translate3d(var(--drift),290px,0) rotate(var(--turn));opacity:0; } }
.history-dialog { width:min(94vw,560px); }.history-list { display:grid;gap:12px; }.history-item { display:grid;grid-template-columns:38px 1fr;gap:12px;background:#1a222c;border:1px solid #34424b;border-radius:4px;padding:16px; }.history-item-icon { width:38px;height:38px;display:flex;align-items:center;justify-content:center;background:#c9ff680a;border:1px solid #526742;color:var(--lime);border-radius:3px; }.history-item-icon .icon { width:19px;height:19px; }.history-item h3 { font-size:16px;letter-spacing:-.3px;font-weight:600; }.history-item p { font-size:10px;color:#b4bdc7;margin-top:5px; }.history-item .history-prize { font-size:13px;color:var(--lime);font-weight:600; }.history-item code { display:inline-block;color:#d4dfbf;font-size:11px;letter-spacing:.5px;margin-top:8px;overflow-wrap:anywhere; }.history-item .text-button { font-size:11px;color:#d9eac7;min-height:38px;gap:6px;display:flex; }.history-item .text-button .icon { width:14px;height:14px; }.history-privacy-note { font-size:10px;color:#aab4bf;line-height:1.85;margin-top:21px;padding-top:17px;border-top:1px solid var(--line); }.history-status { font-size:12px;color:#bac5b3;margin-bottom:12px; }.rules-dialog { width:min(94vw,590px); }.rules-copy h3 { color:var(--lime);font-size:15px;font-weight:600;margin-top:25px;margin-bottom:9px; }.rules-copy p { color:#b9c2ce;font-size:12px;line-height:1.95;margin-top:9px; }
.toast { position:fixed;bottom:calc(24px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);max-width:calc(100% - 32px);padding:13px 21px;background:#202c25;color:#edffe0;border:1px solid #668347;border-radius:4px;box-shadow:0 6px 24px #00000050;z-index:100;font-size:12px;text-align:center; }.noscript-note { padding:20px;color:#151b10;background:var(--lime);text-align:center; }
@media(min-width:1440px) { .hero h1 { font-size:61px; }.hero { min-height:650px; } }
@media(max-width:1100px) { .wrap { width:calc(100% - 56px); }.main-nav { margin-left:8px;gap:22px;font-size:12px; }.hero { grid-template-columns:1fr 1fr;gap:18px;min-height:560px; }.hero h1 { font-size:49px; }.hero-art { height:445px; }.hero-crate { top:29px; }.hero-note { display:none; }.hero-art-label { left:16px;font-size:7px; }.hero-art-footer { left:16px;right:16px;font-size:6px;gap:8px; }.hero-art-footer b { margin-inline:2px; }.hero-art-coordinates { display:none; }.floating-chip { padding:9px 10px;gap:7px; }.floating-chip strong { font-size:8px; }.floating-chip .icon { width:17px;height:20px; }.chip-xp { top:109px;left:-5px; }.chip-unlock { bottom:110px;right:-5px; }.promise-strip .wrap { gap:17px; }.promise-strip span { font-size:8px;letter-spacing:1px; }.card-grid { gap:17px; }.card-body { padding:18px 17px; }.card-art { padding-inline:16px; }.card-art-top { font-size:7px; }.card-art-stamp { display:none; }.card-bottom { gap:8px; }.card-play { font-size:10px;padding-inline:10px;gap:7px; }.card-body h3 { font-size:21px; }.how-section { gap:32px;grid-template-columns:.85fr 2fr; }.how-intro h2 { font-size:26px; }.how-steps { gap:18px; }.closing-note { padding:29px;gap:23px; }.closing-note h2 { font-size:25px; }.closing-symbol { width:55px;height:55px; } }
@media(max-width:850px) { .site-header { min-height:86px;gap:17px; }.brand { font-size:26px; }.brand-mark { width:28px;height:32px; }.main-nav { margin-left:auto;gap:20px;font-size:11px; }.main-nav .nav-active::after { bottom:-21px; }.history-button { margin-left:5px;padding:9px 12px; }.history-button>span:not(.history-count) { display:none; }.hero { min-height:510px;grid-template-columns:1.07fr 1fr;gap:10px;padding-block:34px 40px; }.hero h1 { font-size:41px; }.hero .eyebrow { font-size:8px;letter-spacing:1.15px; }.hero-description { font-size:13px; }.hero-art { height:390px; }.hero-crate { width:calc(100% + 70px);left:-35px;top:51px; }.hero-art-label { font-size:6px;letter-spacing:1px;top:36px; }.hero-art-footer { font-size:5px;bottom:50px;letter-spacing:.8px; }.hero-art-footer>.icon { width:12px; }.mini-barcode { width:23px;min-width:23px;height:15px; }.chip-xp { top:99px;left:-8px; }.chip-unlock { bottom:94px; }.hero-actions .button { font-size:10px;padding-inline:13px;gap:8px; }.hero-status { margin-top:23px;padding-top:18px;gap:15px;font-size:9px; }.hero-status .icon { width:13px;height:13px; }.hero-status b { font-size:12px; }.promise-strip .wrap { gap:15px; }.promise-strip span { font-size:7px;letter-spacing:.7px;gap:7px; }.promise-strip .icon { width:14px;height:14px; }.card-grid { grid-template-columns:repeat(2,minmax(0,1fr));gap:22px; }.card-art { height:237px; }.card-body h3 { font-size:24px; }.card-play { padding-inline:13px;font-size:11px; }.section-heading h2 { font-size:33px; }.section-heading>p { font-size:11px; }.how-section { grid-template-columns:1fr;gap:28px; }.how-intro h2 { font-size:30px; }.how-intro h2 br,.how-intro>p:last-child br { display:none; }.how-intro h2 br::after,.how-intro>p:last-child br::after { content:" "; }.how-steps { gap:29px; }.closing-note { gap:22px;flex-wrap:wrap; }.closing-note .button { margin-left:77px; }.site-footer { gap:9px 19px;flex-wrap:wrap; }.site-footer>div { gap:17px; }.site-footer>p { font-size:7px; } }
@media(max-width:600px) { .wrap { width:calc(100% - 36px); }.top-rail .wrap { min-height:29px;font-size:8px;letter-spacing:1px; }.top-rail .wrap>span:last-child { font-size:7px;letter-spacing:.5px;gap:5px; }.top-rail .wrap>span:last-child b { font-size:9px; }.site-header { min-height:77px;gap:11px; }.brand { font-size:24px;gap:8px; }.brand-mark { width:26px;height:29px; }.site-header .brand { max-width:49%; }.main-nav { margin-left:auto; }.main-nav a { font-size:10px;gap:5px; }.main-nav a:nth-child(2) { display:none; }.main-nav .nav-active::after { bottom:-17px; }.main-nav a>span { font-size:9px;min-width:17px;line-height:17px; }.history-button { margin-left:4px;padding:8px 10px;gap:6px; }.history-count { font-size:9px;min-width:17px;line-height:18px; }.history-button>.icon { width:17px;height:17px; }.hero { display:flex;flex-direction:column;align-items:stretch;min-height:0;gap:12px;padding-block:33px 24px; }.hero h1 { font-size:clamp(37px,10.4vw,58px);letter-spacing:-1.3px;max-width:520px;margin:20px 0 18px;line-height:1.12; }.hero .eyebrow { font-size:8px;letter-spacing:1.25px; }.hero-description { font-size:13px;max-width:440px; }.hero-actions { gap:14px;margin-top:23px; }.hero-actions .button { font-size:11px;padding:13px 16px;min-height:49px;gap:10px; }.hero-actions .button>.icon { width:16px;height:16px; }.hero-note { display:flex;font-size:9px; }.hero-status { font-size:10px;max-width:none;justify-content:flex-start;gap:27px;margin-top:21px;padding-top:17px; }.hero-status b { font-size:12px; }.hero-art { height:350px;max-width:430px;align-self:center;margin-top:5px; }.hero-crate { width:calc(100% + 20px);left:-10px;top:8px; }.hero-art-label { top:36px;left:17px;font-size:6px; }.hero-art-footer { left:15px;right:15px;bottom:49px;font-size:5.5px;letter-spacing:.7px; }.hero-art-footer>.icon { width:13px; }.chip-xp { top:88px;left:0; }.chip-unlock { bottom:97px;right:-2px; }.floating-chip { padding:8px 9px;font-size:6px; }.floating-chip strong { font-size:8px; }.floating-chip .icon { width:18px;height:18px; }.hero-grid { inset:17px 0 31px; }.corner-br { bottom:31px; }.promise-strip .wrap { display:grid;grid-template-columns:1fr 1fr;padding-block:17px;min-height:0;gap:17px 15px; }.promise-strip i { display:none; }.promise-strip span { font-size:8px;gap:8px;letter-spacing:.65px; }.promise-strip .icon { width:15px;height:15px; }.promise-strip .strip-last { display:flex; }.cards-section { padding-block:40px 36px; }.section-heading { margin-bottom:22px; }.section-heading h2 { font-size:33px;letter-spacing:-1px;margin-top:12px; }.section-heading .eyebrow { font-size:7px;letter-spacing:1px;gap:7px; }.section-heading .eyebrow-line { width:15px; }.section-heading>p { display:none; }.cards-toolbar { flex-wrap:wrap;gap:13px;margin-bottom:21px;padding-bottom:18px; }.filter-tabs { gap:3px; }.filter-tab { font-size:10px;padding:8px 10px;min-height:44px; }.filter-tab>span { margin-left:4px;font-size:9px;padding-inline:4px; }.availability-note { font-size:9px;margin-left:1px; }.card-grid { grid-template-columns:1fr;gap:22px; }.game-card { border-radius:5px; }.card-art { height:242px;padding:18px 21px; }.card-art-top { font-size:8px; }.card-item-svg { width:239px;height:180px;left:calc(50% - 120px);top:29px; }.card-art-stamp { display:block;right:21px; }.card-silver-strip { left:22px;right:22px; }.card-body { padding:20px 21px; }.card-body h3 { font-size:25px; }.card-description { font-size:13px;min-height:0; }.card-state { font-size:11px; }.demo-badge { font-size:9px; }.card-details { font-size:11px;margin-top:15px; }.card-bottom { margin-top:16px;padding-top:16px; }.card-free { font-size:17px; }.card-free>span { font-size:10px; }.card-play { font-size:12px;padding:11px 15px;gap:13px; }.demo-explanation { justify-content:flex-start;font-size:9px;gap:5px;text-align:left; }.demo-explanation strong { font-size:8px; }.how-section { padding-block:33px;gap:25px; }.how-intro h2 { font-size:26px;margin-top:13px; }.how-steps { grid-template-columns:1fr;gap:25px; }.how-steps article { display:grid;grid-template-columns:45px 1fr;gap:0 16px; }.step-number { grid-row:1/3;flex-direction:column;gap:8px;border-bottom:0;border-right:1px solid #405133;padding:2px 13px 0 0;margin:0;font-size:13px; }.step-number .icon { margin-left:0;width:17px;height:17px; }.how-steps h3 { font-size:16px;margin-bottom:6px; }.how-steps p { max-width:none;font-size:12px; }.closing-note { margin-block:33px;gap:18px;padding:23px; }.closing-symbol { width:40px;height:45px;align-self:flex-start; }.closing-symbol .icon { width:23px;height:23px; }.closing-note>div:not(.closing-symbol) { flex:1; }.closing-note .eyebrow { font-size:6px;letter-spacing:1px; }.closing-note h2 { font-size:22px;line-height:1.3;letter-spacing:-.5px; }.closing-note p { font-size:11px; }.closing-note .button { margin-left:0;width:100%;font-size:11px; }.site-footer { gap:8px 17px;padding-block:21px 25px; }.footer-brand { font-size:23px;max-width:45%;gap:7px; }.footer-brand .brand-mark { width:23px;height:26px; }.site-footer>p { font-size:7px;letter-spacing:.8px; }.site-footer>div { width:100%;margin-left:0;justify-content:space-between;margin-top:3px; }.text-button,.site-footer a:not(.brand) { font-size:10px; }dialog { max-height:calc(100dvh - 24px);width:calc(100% - 24px);padding:20px;border-radius:5px; }dialog>h2 { font-size:25px; }.modal-heading { margin-bottom:12px; }.modal-heading .eyebrow { font-size:7px;letter-spacing:.85px; }.scratch-area { height:245px; }.scratch-prize h3 { font-size:27px; }.scratch-session-note { font-size:9px; }.claim-code-box code { font-size:15px;letter-spacing:.6px; }.history-item { padding:13px;grid-template-columns:32px 1fr;gap:10px; }.history-item-icon { width:32px;height:32px; }.history-item h3 { font-size:15px; }.rules-copy p { font-size:12px; } }
@media(max-width:360px) { .top-rail .wrap>span:last-child { display:none; }.hero-note { display:none; }.hero-art { height:315px; }.hero-crate { top:18px; }.hero-art-footer { font-size:5px;letter-spacing:.4px; }.floating-chip { padding:7px; }.chip-xp { top:82px; }.chip-unlock { bottom:87px; }.main-nav { display:none; }.history-button { margin-left:auto; }.filter-tab { font-size:9px;padding-inline:8px; }.card-body { padding-inline:17px; }.card-play { font-size:11px;padding-inline:11px; } }
@media(min-width:601px) and (max-width:850px) { .hero-crate { top:25px; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; }*,*::before,*::after { animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important; }.game-card:hover,.game-card:hover .card-item-svg { transform:none; }.scratch-confetti { display:none; } }

/* The dedicated chooser keeps real campaign cards in a compact, face-down deck. */
.selection-heading { padding-block:22px 25px; }
.selection-page .selection-back-link,.selection-page .section-heading { display:none; }
.selection-page .selection-heading-row { margin-top:0; }
.selection-back-link { display:inline-flex;align-items:center;gap:10px;min-height:44px;color:#a9b6c4;font-size:10px; }.selection-back-link>span { color:#5c6d7f; }.selection-back-link:hover { color:var(--lime); }
.selection-heading-row { display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:24px; }.selection-heading-row h1 { font-family:var(--display);font-size:43px;line-height:1.2;letter-spacing:-1px;font-weight:400;text-transform:uppercase;margin:14px 0 17px; }.selection-heading-row>div>p:last-child { max-width:620px;color:#adb9c5;font-size:13px;line-height:1.9; }
.selection-counter { display:flex;align-items:center;gap:16px;min-width:194px;padding:22px 25px;border:1px solid #34482b;background:#18221a;clip-path:polygon(0 0,calc(100% - 13px) 0,100% 13px,100% 100%,0 100%); }.selection-counter>.icon { width:27px;height:27px;color:var(--lime); }.selection-counter strong { font-family:var(--display);font-size:32px;font-weight:400;color:var(--lime);line-height:1; }.selection-counter>span { font-size:10px;line-height:1.7;color:#c1cdb9; }
.selection-page .cards-section { padding-top:3px;min-height:55dvh; }.selection-page .section-heading h2 { font-family:var(--font);font-size:24px;text-transform:none;letter-spacing:-.4px;font-weight:600;margin-top:9px; }.selection-page .section-heading .eyebrow { font-size:8px;letter-spacing:1.25px; }.selection-page .section-heading>p { font-size:11px; }.selection-page .cards-toolbar { margin-bottom:17px;padding-bottom:17px; }
.deck-toolbar { display:flex;align-items:center;justify-content:space-between;gap:22px;margin:0 0 18px; }.deck-toolbar>div { display:flex;align-items:flex-start;gap:9px;min-width:0; }.deck-toolbar p { color:#c1ceb7;font-size:11px;line-height:1.8; }.deck-status-dot { width:5px;height:5px;flex-shrink:0;background:var(--lime);margin-top:7px; }.deck-toolbar .button { min-height:44px;font-size:10px;padding:10px 14px;gap:9px;white-space:nowrap; }.deck-toolbar .button .icon { width:16px;height:16px; }.deck-toolbar .button:disabled { opacity:.65; }
.selection-page .deck-stage { position:relative;isolation:isolate;padding:22px;border:1px solid #303e30;border-radius:5px;background:#11171a;background-image:radial-gradient(ellipse at 50% 5%,#c9ff6806,transparent 70%),linear-gradient(#87996305 1px,transparent 1px),linear-gradient(90deg,#87996305 1px,transparent 1px);background-size:auto,30px 30px,30px 30px; }
.selection-page .card-grid { grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;perspective:900px; }
.selection-page .game-card { min-width:0;border-radius:5px;box-shadow:0 4px 0 #00000030;transform-origin:50% 50%; }.selection-page .game-card:hover { transform:translateY(-4px); }.selection-page .card-grid.is-shuffling .game-card { will-change:transform;pointer-events:none; }.selection-page .card-grid.is-shuffling .game-card:hover { transform:none; }
.selection-card-back { height:171px;background-color:#121b1b;background-image:repeating-linear-gradient(135deg,transparent 0,transparent 12px,#9ab96a07 12px,#9ab96a07 13px),radial-gradient(ellipse at center,color-mix(in srgb,var(--card-color) 12%,transparent),transparent 72%);border-bottom:1px solid color-mix(in srgb,var(--card-color) 35%,#252e32); }
.selection-card-topline { position:absolute;inset:12px 12px auto;display:flex;align-items:center;justify-content:space-between;color:#a3b19b;font-size:7px;line-height:1.5;letter-spacing:.8px; }.selection-slot-number { color:var(--card-color);font-size:9px;font-weight:600;font-variant-numeric:tabular-nums; }
.selection-back-mark { position:absolute;top:48px;left:calc(50% - 29px);width:58px;height:64px;color:var(--card-color);filter:drop-shadow(0 0 13px color-mix(in srgb,var(--card-color) 17%,transparent)); }
.selection-back-corner { position:absolute;width:22px;height:22px;border-color:color-mix(in srgb,var(--card-color) 45%,transparent);border-style:solid;border-width:0; }.back-corner-one { left:17px;top:39px;border-top-width:1px;border-left-width:1px; }.back-corner-two { right:17px;bottom:40px;border-bottom-width:1px;border-right-width:1px; }
.selection-card-seal { position:absolute;left:12px;right:12px;bottom:14px;display:flex;justify-content:center;align-items:center;gap:6px;color:#b3c1aa;font-size:6px;letter-spacing:1.15px; }.selection-card-seal .icon { width:11px;height:11px;color:var(--card-color); }
.selection-page .card-upload-image { top:37px;left:18px;width:calc(100% - 36px);height:83px; }.selection-card.has-upload .selection-back-mark { display:none; }
.selection-page .card-body { padding:13px 13px 12px; }.selection-page .card-label-row { min-height:16px;gap:6px;margin-bottom:7px;align-items:flex-start; }.selection-page .card-state { font-size:8px;line-height:1.5;gap:4px; }.selection-page .card-state::before { flex-shrink:0;margin-top:4px; }.selection-page .demo-badge { padding:1px 4px;font-size:6px;letter-spacing:.6px; }.selection-page .card-body h3 { min-height:36px;font-size:16px;line-height:1.2;letter-spacing:-.3px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden; }.selection-page .card-description,.selection-page .card-details,.selection-page .card-free { display:none; }
.selection-page .card-bottom { border:0;margin-top:10px;padding-top:0; }.selection-page .card-play { width:100%;min-height:44px;padding:10px 10px;gap:6px;justify-content:space-between;font-size:10px; }.selection-page .card-play>.icon { width:14px;height:14px; }.selection-page .card-play::after { content:"";position:absolute;inset:0;z-index:2; }.selection-card:has(.card-play:focus-visible) { outline:2px solid var(--lime);outline-offset:4px; }
.selection-page .demo-explanation { margin-top:21px; }.selection-page .site-footer { margin-top:8px; }
@media(max-width:1050px) { .selection-page .card-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }.selection-heading-row h1 { font-size:37px; }.selection-counter { min-width:173px;padding:19px;gap:13px; }.selection-page .deck-stage { padding:18px; } }
@media(max-width:700px) { .selection-heading { padding-block:20px 29px; }.selection-heading-row { margin-top:17px;align-items:flex-start;gap:20px; }.selection-heading-row h1 { font-size:32px;max-width:400px;margin-top:13px; }.selection-heading-row>div>p:last-child { font-size:12px; }.selection-counter { display:none; }.selection-page .section-heading>p { display:none; }.selection-page .card-grid { grid-template-columns:repeat(2,minmax(0,1fr));gap:15px; }.selection-page .card-body h3 { font-size:17px; }.selection-page .card-upload-image { height:85px; } }
@media(max-width:450px) { .selection-heading { padding-block:16px 25px; }.selection-back-link { font-size:9px;gap:8px; }.selection-heading-row { margin-top:15px; }.selection-heading-row .eyebrow { font-size:8px;letter-spacing:1.1px; }.selection-heading-row h1 { font-size:31px;line-height:1.25;margin-block:13px 15px; }.selection-heading-row>div>p:last-child { font-size:12px;line-height:1.9; }.selection-page .section-heading { margin-bottom:18px; }.selection-page .section-heading h2 { font-size:22px; }.selection-page .section-heading .eyebrow { font-size:7px;letter-spacing:1px; }.deck-toolbar { align-items:flex-start;gap:13px;margin-bottom:15px; }.deck-toolbar>div { gap:7px; }.deck-toolbar p { font-size:11px;line-height:1.8; }.deck-status-dot { width:4px;height:4px;margin-top:7px; }.deck-toolbar .button { font-size:10px;padding:9px 10px;gap:6px;min-height:44px; }.deck-toolbar .button .icon { width:13px;height:13px; }.selection-page .deck-stage { padding:12px; }.selection-page .card-grid { gap:12px; }.selection-card-back { height:133px; }.selection-card-topline { inset:10px 9px auto;font-size:5px;letter-spacing:.6px; }.selection-slot-number { font-size:8px; }.selection-back-mark { width:45px;height:50px;left:calc(50% - 22px);top:38px; }.selection-back-corner { width:16px;height:16px; }.back-corner-one { left:12px;top:30px; }.back-corner-two { right:12px;bottom:31px; }.selection-card-seal { bottom:10px;left:6px;right:6px;font-size:4.8px;letter-spacing:.65px;gap:4px; }.selection-card-seal .icon { width:9px;height:9px; }.selection-page .card-upload-image { top:31px;left:12px;width:calc(100% - 24px);height:64px; }.selection-page .card-body { padding:10px 10px 9px; }.selection-page .card-label-row { min-height:30px;gap:4px; }.selection-page .card-state { font-size:10px;gap:4px; }.selection-page .card-state::before { width:3px;height:3px;margin-top:3px; }.selection-page .demo-badge { font-size:8px;letter-spacing:.4px;padding-inline:3px; }.selection-page .card-body h3 { font-size:16px;min-height:39px;line-height:1.2;letter-spacing:-.2px; }.selection-page .card-bottom { margin-top:9px; }.selection-page .card-play { font-size:11px;padding:10px 8px;gap:4px;min-height:44px; }.selection-page .card-play>.icon { width:12px;height:12px; } }
@media(prefers-reduced-motion:reduce) { .selection-page .game-card:hover { transform:none; } }

/* Accounts and administrator-managed media share the existing drop theme. */
.header-account { display:flex;align-items:center;gap:9px;margin-left:auto;min-width:0; }
.header-account .history-button { margin-left:0; }
.account-profile-link { display:flex;align-items:center;gap:7px;min-height:44px;padding:9px 11px;max-width:145px;min-width:0;border:1px solid #344438;background:#19231d;border-radius:3px;font-size:12px;color:#dae9cb; }
.account-profile-link>span { overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }.account-profile-link .icon { width:15px;height:15px;color:var(--lime); }.account-profile-link:hover { background:#263521; }
.header-logout { margin:0; }.header-logout .icon-button { width:44px;min-width:44px; }
.header-login { display:flex;align-items:center;min-height:44px;padding:8px;font-size:12px;color:#c3cbd4; }.header-login:hover { color:var(--lime); }.header-signup { min-height:44px;padding:10px 13px;font-size:10px;gap:10px; }.header-signup .icon { width:15px;height:15px; }
.game-card.has-upload .card-item-svg,.game-card.has-upload .item-platform { display:none; }
.card-upload-image { position:absolute;left:20px;top:41px;width:calc(100% - 40px);height:145px;object-fit:contain;object-position:center;z-index:1;pointer-events:none;filter:drop-shadow(0 9px 9px #00000050); }
.scratch-prize.has-prize-image .prize-decoration { display:none; }.scratch-area.has-prize-image { height:310px; }
.prize-image { display:block;max-width:180px;width:auto;height:92px;max-height:92px;object-fit:contain;margin:0 auto 13px;filter:drop-shadow(0 6px 7px #00000040); }
.scratch-prize.has-prize-image h3 { font-size:25px; }.scratch-prize.has-prize-image p { max-height:56px;overflow:auto;overscroll-behavior:contain; }
.history-item.has-history-image { grid-template-columns:70px 1fr; }.history-item.has-history-image .history-item-icon { width:70px;height:70px; }.history-prize-image { display:block;width:100%;height:100%;object-fit:contain;padding:5px; }
.account-site-header .account-back-link { margin-left:auto;min-height:44px;display:flex;align-items:center;gap:12px;color:#bac5d0;font-size:12px; }.account-back-link .icon { width:17px;height:17px; }.account-back-link:hover { color:var(--lime); }
.account-footer>span { font-size:11px; }.account-footer>a { margin-left:auto; }
.auth-layout { display:grid;grid-template-columns:1fr 1fr;gap:90px;max-width:1060px;margin-inline:auto;padding:70px 0 85px;align-items:start;min-height:calc(100dvh - 260px); }
.auth-intro { padding-top:20px; }.auth-intro h1 { font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:43px;letter-spacing:-1px;line-height:1.2;margin:20px 0; }.auth-intro>p:not(.eyebrow) { color:var(--muted);font-size:14px;line-height:1.9;max-width:350px; }
.auth-feature { display:flex;align-items:flex-start;gap:14px;margin-top:28px; }.auth-feature>.icon { color:var(--lime);width:21px;height:21px;margin-top:3px; }.auth-feature h2 { font-size:15px;font-weight:600;margin-bottom:6px; }.auth-feature p { font-size:12px;line-height:1.8;color:var(--muted); }
.auth-decoration { display:flex;align-items:center;justify-content:center;gap:22px;max-width:350px;min-height:103px;border:1px solid #3a4d2b;margin-top:36px;background:linear-gradient(110deg,#24381d,#141c18);clip-path:polygon(0 0,calc(100% - 18px) 0,100% 18px,100% 100%,18px 100%,0 calc(100% - 18px)); }.auth-decoration .icon { color:var(--lime);width:32px;height:32px; }.auth-decoration>span { font-size:11px;font-weight:700;letter-spacing:2px;color:var(--lime); }
.auth-panel { background:#151b24;border:1px solid #3b4b34;border-radius:5px;padding:29px;box-shadow:0 20px 50px #00000025;min-width:0; }
.auth-panel-label { display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid #303a44;margin-bottom:23px;padding-bottom:16px; }.auth-panel-label .eyebrow { font-size:8px;letter-spacing:1.5px; }.auth-panel-label .icon { color:var(--lime);width:18px;height:18px; }
.auth-panel>h2 { font-family:var(--display);font-size:27px;font-weight:400;letter-spacing:-.5px;overflow-wrap:anywhere; }.auth-subtitle { color:#aab6c3;font-size:12px;line-height:1.9;margin:12px 0 24px; }
.auth-form { display:grid;gap:19px; }.auth-field { min-width:0; }.auth-field label { display:block;font-size:12px;font-weight:600;color:#d9e2e9;margin-bottom:8px; }.auth-field label>span { color:var(--lime); }
.auth-field input { width:100%;min-height:48px;padding:11px 13px;border:1px solid #3b4959;border-radius:3px;background:#0d131b;color:#f1f5f7;font-family:var(--font);font-size:16px;line-height:1.5;outline:none;box-shadow:inset 0 1px 3px #00000020; }
.auth-field input:focus { border-color:var(--lime);box-shadow:0 0 0 3px #c9ff6817; }.auth-field.has-error input { border-color:#d88977; }.auth-field input:-webkit-autofill { -webkit-box-shadow:0 0 0 1000px #17211c inset;-webkit-text-fill-color:#e7f0e4;caret-color:#e7f0e4; }
.field-hint { color:#a4b1bf;font-size:10px;line-height:1.8;margin-top:7px; }.field-errors { color:#ffc1b7;font-size:11px;line-height:1.8;margin-top:7px; }.field-errors p+p { margin-top:4px; }.auth-errors { background:#3c2522;border:1px solid #976150;border-radius:3px;padding:12px 14px;color:#ffcec2;font-size:12px;line-height:1.9; }.auth-errors p+p { margin-top:7px; }
.auth-submit { display:flex;width:100%;margin-top:5px;justify-content:space-between; }.auth-switch { padding-top:20px;margin-top:20px;border-top:1px solid #2e3943;font-size:12px;line-height:1.8;color:#adb8c5; }.auth-switch a { color:var(--lime);font-weight:600;display:inline-flex;align-items:center;min-height:44px; }.auth-switch a:hover { text-decoration:underline; }
.auth-account-note { font-size:10px;line-height:1.8;color:#9fadb9;margin-top:10px; }.auth-success { padding:17px;display:flex;gap:12px;align-items:flex-start;margin-bottom:23px;background:#1c2c20;border:1px solid #526d3d;font-size:13px;line-height:1.9;color:#daeacb; }.auth-success .icon { color:var(--lime);width:20px;height:20px;margin-top:3px; }
.profile-heading { display:flex;align-items:flex-end;justify-content:space-between;gap:25px;padding-block:43px 31px; }.profile-heading h1 { font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:37px;letter-spacing:-1px;margin:14px 0;overflow-wrap:anywhere; }.profile-heading>div>p:last-child { color:var(--muted);font-size:13px; }
.profile-layout { display:grid;grid-template-columns:250px 1fr;gap:27px;padding-bottom:60px;align-items:start; }
.profile-account { border:1px solid #35442e;border-radius:5px;background:#151e1a;padding:25px 21px;min-width:0; }.profile-avatar { width:59px;height:59px;display:flex;align-items:center;justify-content:center;background:#c9ff680b;border:1px solid #607b43;margin-bottom:19px; }.profile-avatar .icon { width:26px;height:26px;color:var(--lime); }.profile-account>.eyebrow { font-size:7px;letter-spacing:1.3px; }.profile-account h2 { font-size:24px;overflow-wrap:anywhere;font-weight:600;letter-spacing:-.6px;margin:9px 0; }.profile-account>p { color:#a6b4a8;font-size:11px;line-height:1.9; }
.profile-account-actions { display:grid;gap:5px;border-block:1px solid #34402f;padding-block:16px;margin-block:21px; }.profile-account-actions>a,.profile-account-actions button { display:flex;align-items:center;gap:9px;padding:10px 0;min-height:44px;border:0;background:transparent;color:#dbe8d3;font-size:12px;width:100%;text-align:left; }.profile-account-actions>a:hover,.profile-account-actions button:hover { color:var(--lime); }.profile-account-actions .icon { width:16px;height:16px; }.profile-account-actions>a>.icon:last-child { margin-left:auto;width:14px;height:14px; }.profile-account-actions form { margin:0; }.profile-account>.profile-account-note { font-size:10px;line-height:1.9; }
.profile-inventory { min-width:0; }.profile-stats { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid #323d49;border-radius:5px;background:#151c25;margin-bottom:28px; }.profile-stats>div { padding:21px;display:flex;flex-direction:column;gap:8px;min-width:0; }.profile-stats>div+div { border-left:1px solid #323d49; }.profile-stats strong { font-family:var(--display);font-weight:400;font-size:28px;line-height:1.1;color:var(--lime);overflow-wrap:anywhere; }.profile-stats span { font-size:11px;color:#acb9c5;line-height:1.7; }
.inventory-heading { display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:17px; }.inventory-heading h2 { font-size:20px;font-weight:600;letter-spacing:-.4px; }.inventory-heading>span { font-size:7px;letter-spacing:1.5px;color:#93a0ad; }
.profile-play-list { display:grid;gap:17px; }.profile-play { display:grid;grid-template-columns:86px 1fr;gap:18px;background:#151c25;border:1px solid #303d48;border-radius:5px;padding:20px;min-width:0; }.profile-play.is-winning { border-color:#526a3c; }.profile-play-visual { width:86px;height:86px;display:flex;align-items:center;justify-content:center;border:1px solid #384c32;background:#1d2a20;overflow:hidden; }.profile-play-visual>.icon { color:var(--lime);width:32px;height:32px; }.profile-play-visual img { display:block;width:100%;height:100%;padding:7px;object-fit:contain; }.profile-play-content { min-width:0; }.profile-play-labels { display:flex;align-items:center;gap:9px;flex-wrap:wrap;font-size:10px;color:#a9b8c5;margin-bottom:9px; }.profile-play-labels>span:first-child { overflow-wrap:anywhere; }.profile-play-state { color:#c3d8ae;font-size:9px; }.profile-play-content h3 { font-size:21px;font-weight:600;letter-spacing:-.4px;overflow-wrap:anywhere; }.profile-play.is-winning h3 { color:var(--lime); }.profile-prize-description { font-size:12px;line-height:1.85;color:#b3bfcb;margin-top:9px;overflow-wrap:anywhere; }.profile-play-content time { display:block;font-size:10px;color:#99a7b5;margin-top:10px; }
.profile-claim { display:flex;align-items:center;justify-content:space-between;gap:13px;margin-top:15px;background:#1e2b21;border:1px solid #546d3f;border-radius:3px;padding:6px 9px 6px 13px; }.profile-claim code { font-size:14px;font-weight:600;letter-spacing:.7px;color:var(--lime);min-width:0;overflow-wrap:anywhere;user-select:all; }.profile-claim .icon-button { width:36px;min-width:44px;height:44px;padding:9px;background:transparent;border:0;color:#d0e4ba; }.profile-claim-instructions { margin-top:7px;color:#b8c9ac;font-size:10px;line-height:1.85; }.copy-feedback { min-height:15px;color:var(--lime);font-size:9px;line-height:1.7;margin-top:5px; }.profile-empty { border:1px dashed #3f5037;border-radius:5px;background:#131c17; }.profile-footnote { margin-top:22px;color:#aab6bf;font-size:10px;display:flex;align-items:flex-start;gap:8px;line-height:1.9; }.profile-footnote .icon { width:14px;height:14px;margin-top:2px; }
@media(max-width:1100px) { .header-account { gap:7px; }.account-profile-link { padding-inline:9px;max-width:125px; }.auth-layout { gap:50px; }.auth-intro h1 { font-size:38px; }.auth-panel { padding:26px; }.profile-layout { grid-template-columns:230px 1fr;gap:22px; }.profile-play { padding:18px;gap:15px; }.profile-stats>div { padding:18px; } }
@media(max-width:850px) { .site-header:not(.account-site-header) .main-nav a:nth-child(2) { display:none; }.account-profile-link { font-size:11px;max-width:112px; }.auth-layout { gap:28px; }.auth-intro h1 { font-size:32px; }.auth-panel { padding:23px; }.auth-panel>h2 { font-size:24px; }.auth-intro>p:not(.eyebrow) { font-size:13px; }.auth-feature { gap:10px; }.auth-feature p { font-size:11px; }.auth-feature h2 { font-size:14px; }.auth-decoration { gap:14px; }.auth-decoration>span { font-size:9px;letter-spacing:1px; }.profile-layout { grid-template-columns:1fr; }.profile-account { display:grid;grid-template-columns:58px 1fr;gap:0 18px;padding:20px; }.profile-avatar { grid-row:1/4;width:58px;height:58px;margin:0; }.profile-account h2 { font-size:22px;margin-block:5px; }.profile-account-actions { grid-column:1/-1;display:flex;align-items:center;gap:22px;padding-block:10px;margin-block:17px 11px; }.profile-account-actions>a { width:auto; }.profile-account-actions>a>.icon:last-child { display:none; }.profile-account>.profile-account-note { grid-column:1/-1; }.profile-heading h1 { font-size:31px; }.profile-heading .button { font-size:10px; } }
@media(max-width:600px) { .site-header:not(.account-site-header) .main-nav { display:none; }.header-account { gap:6px; }.header-account .history-button { padding:8px 10px;gap:6px; }.account-profile-link { max-width:96px;padding-inline:7px;font-size:10px;gap:6px; }.account-profile-link .icon { width:14px;height:14px; }.header-login { font-size:11px;padding:6px; }.header-signup { font-size:9px;padding-inline:10px;gap:7px; }.header-signup .icon { width:13px;height:13px; }.header-logout .icon-button { padding:9px; }.account-site-header .account-back-link { font-size:10px;gap:8px; }.account-back-link .icon { width:14px;height:14px; }.card-upload-image { top:44px;height:147px;left:22px;width:calc(100% - 44px); }.scratch-area.has-prize-image { height:302px; }.prize-image { max-width:150px;height:83px;max-height:83px; }.scratch-prize.has-prize-image h3 { font-size:24px; }.history-item.has-history-image { grid-template-columns:58px 1fr; }.history-item.has-history-image .history-item-icon { width:58px;height:58px; }.account-footer { gap:13px; }.account-footer>span { font-size:9px; }.account-footer>a { margin-left:0;font-size:10px; }.auth-layout { grid-template-columns:1fr;gap:25px;padding-block:31px 45px;min-height:0; }.auth-intro { padding:0; }.auth-intro h1 { font-size:30px;line-height:1.25;margin:16px 0 12px; }.auth-intro h1 br { display:none; }.auth-intro h1 br::after { content:" "; }.auth-intro>p:not(.eyebrow) { font-size:12px;max-width:100%; }.auth-feature,.auth-decoration { display:none; }.auth-panel { padding:23px 21px; }.auth-panel-label { padding-bottom:14px;margin-bottom:20px; }.auth-panel>h2 { font-size:25px; }.auth-subtitle { font-size:12px;margin-bottom:21px; }.auth-form { gap:18px; }.auth-field label { font-size:12px; }.auth-field input { min-height:49px;font-size:16px; }.auth-submit { min-height:49px;font-size:11px; }.auth-switch { padding-top:15px;margin-top:19px;font-size:12px; }.auth-account-note { font-size:10px; }.profile-heading { flex-direction:column;align-items:stretch;gap:21px;padding-block:31px 25px; }.profile-heading h1 { font-size:29px;line-height:1.25;margin-block:14px 12px; }.profile-heading>div>p:last-child { font-size:12px;line-height:1.85; }.profile-heading .button { font-size:11px; }.profile-layout { gap:23px;padding-bottom:38px; }.profile-account { padding:20px;gap:0 15px; }.profile-account h2 { font-size:22px; }.profile-account-actions { justify-content:space-between;gap:14px; }.profile-account-actions>a,.profile-account-actions button { font-size:11px;gap:7px; }.profile-stats { margin-bottom:24px; }.profile-stats>div { padding:17px 12px;gap:9px; }.profile-stats strong { font-size:25px; }.profile-stats span { font-size:9px;line-height:1.8; }.inventory-heading { gap:10px; }.inventory-heading h2 { font-size:19px; }.inventory-heading>span { font-size:6px;letter-spacing:1px; }.profile-play { grid-template-columns:62px 1fr;gap:13px;padding:16px 14px; }.profile-play-visual { width:62px;height:62px; }.profile-play-visual img { padding:4px; }.profile-play-visual>.icon { width:25px;height:25px; }.profile-play-labels { gap:6px;font-size:9px;margin-bottom:8px; }.profile-play-state { font-size:8px; }.profile-play-content h3 { font-size:20px; }.profile-prize-description { font-size:11px; }.profile-play-content time { font-size:9px; }.profile-claim { padding:5px 4px 5px 9px;gap:5px; }.profile-claim code { font-size:12px;letter-spacing:.4px; }.profile-claim .icon-button { padding:8px;width:34px;min-width:44px; }.profile-claim-instructions { font-size:9px; }.profile-footnote { font-size:9px; } }
@media(max-width:360px) { .site-header:not(.account-site-header) { gap:7px; }.site-header:not(.account-site-header) .brand { font-size:22px;gap:7px; }.site-header:not(.account-site-header) .brand-mark { width:24px; }.header-account .history-count { display:none; }.header-account .history-button { min-width:44px;padding-inline:10px; }.account-profile-link { max-width:72px; }.header-account { gap:5px; }.header-signup { font-size:8px;padding-inline:9px; }.header-login { font-size:10px;padding-inline:4px; }.profile-play { grid-template-columns:1fr; }.profile-play-visual { width:68px;height:68px; }.profile-claim code { font-size:13px; }.auth-panel { padding-inline:19px; } }

/* Identical faces keep every unopened card a surprise. */
.sr-only { position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0; }
.game-card.mystery-card { border-color:#394b38;background:#131b1e; }
.game-card.mystery-card .mystery-card-face { position:relative;display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:3 / 4;min-height:180px;padding:24px;border:0;border-radius:0;background:#131b1e;color:var(--lime);cursor:pointer;box-shadow:none; }
.mystery-card-face::before { content:"";position:absolute;inset:13px;border:1px solid #c9ff682b;border-radius:3px;pointer-events:none; }
.mystery-question { font-family:var(--display);font-size:clamp(64px,9vw,112px);font-weight:400;line-height:1; }
.game-card.mystery-card .mystery-card-face:hover:not(:disabled) { background:#1c291f;color:var(--lime);box-shadow:inset 0 0 36px #c9ff6808; }
.game-card.mystery-card .mystery-card-face:focus-visible { outline:3px solid var(--lime);outline-offset:-5px; }
.game-card.mystery-card .mystery-card-face:disabled { background:#131b1e;color:var(--lime);cursor:not-allowed; }

/* Turn the chosen mystery face before opening its scratch surface. */
.selection-card .mystery-card-face { perspective:900px; }
.selection-card .mystery-card-face::before { display:none; }
.mystery-card-turn { position:absolute;inset:0;display:block;transform-style:preserve-3d;pointer-events:none; }
.mystery-card-front,.mystery-card-reverse { position:absolute;inset:0;display:flex;align-items:center;justify-content:center;backface-visibility:hidden;border:13px solid #131b1e;border-radius:3px;box-shadow:inset 0 0 0 1px #c9ff682b;background:#131b1e; }
.mystery-card-reverse { transform:rotateY(180deg);flex-direction:column;gap:16px;background:repeating-linear-gradient(135deg,#394c3d 0 4px,#314335 4px 8px);color:#e4f6d2;letter-spacing:2px;font-size:12px; }
.mystery-card-reverse>.icon { width:38px;height:38px; }

.wallet-status {margin:0 0 18px;padding:13px 17px;border:1px solid #3c5136;border-radius:5px;background:#182119;color:#d5e2ca;font-size:14px;}
.wallet-status strong {color:var(--lime);}
.game-card.mystery-card {position:relative;}
.card-coin-price {position:absolute;bottom:22px;left:50%;transform:translateX(-50%);z-index:3;pointer-events:none;white-space:nowrap;padding:6px 12px;border:1px solid #46563a;border-radius:20px;background:#19221a;color:var(--lime);font-size:12px;font-weight:600;}

.header-wallet {display:flex;align-items:center;gap:6px;min-height:44px;flex-shrink:0;margin:0;padding:9px 11px;border:1px solid #455b32;border-radius:3px;background:#1b2518;color:#d5e2ca;font-size:12px;white-space:nowrap;}
.header-wallet strong {color:var(--lime);font-variant-numeric:tabular-nums;}
.header-wallet .icon {width:17px;height:17px;color:var(--lime);}
@media(max-width:1100px){.header-account .history-button>span:not(.history-count){display:none;}}
@media(max-width:600px){.site-header:not(.account-site-header){flex-wrap:wrap;padding-block:14px;gap:12px;}.site-header:not(.account-site-header) .brand{max-width:100%;}.header-account{width:100%;margin-left:0;justify-content:flex-end;}.header-wallet{font-size:11px;padding-inline:9px;}}

@media(max-width:600px){.site-header:not(.account-site-header) .main-nav{display:flex;gap:16px;}.main-nav a:nth-child(2){display:inline-flex;}.main-nav a:nth-child(3){display:none;}}

/* A single type family across navigation, headings and controls. */
body,input,button,select,textarea {font-family:var(--font);}
h1,h2,h3,.brand {font-weight:700;}
.hero h1,.section-heading h2,.how-intro h2,.closing-note h2,.profile-heading h1,.selection-heading h1 {font-weight:750;text-transform:none;}
.brand {font-weight:800;letter-spacing:-1.2px;}
.button {font-weight:600;text-transform:none;letter-spacing:-.15px;border-radius:30px;}
/* Keep the transparent raster brand symbol in its original proportions. */
img.brand-mark {object-fit:contain;}
