:root{--font-display:"Fredoka", "Nunito", system-ui, sans-serif;--font-body:"Nunito", system-ui, -apple-system, Segoe UI, Roboto, Arial, "Apple Color Emoji", "Segoe UI Emoji", sans-serif;--cream:#fff8f0;--peach:#ffe5d9;--sky:#c8ecff;--mint:#c5f9e0;--lavender:#e8deff;--lemon:#fff59d;--sun:#ffd54f;--coral:#ff7a6e;--pink:#ff8dc7;--ocean:#42c3ff;--grass:#69e49a;--grape:#a78bfa;--ink:#3d3a55;--ink-soft:#6c6888;--white:#fff;--card:#fff;--card-tint:#ffffffeb;--stroke:#3d3a5524;--stroke-strong:#3d3a5538;--bg1:var(--cream);--bg2:var(--peach);--text:var(--ink);--muted:var(--ink-soft);--blue:var(--ocean);--blue2:#2aaef5;--cyan:#5ee7df;--yellow:var(--sun);--green:var(--grass);--red:var(--coral);--shadow:0 18px 50px #3d3a6224}*,:before,:after{box-sizing:border-box}html,body{height:100%}#root{flex-direction:column;min-height:100dvh;display:flex}body{font-family:var(--font-body);color:var(--text);background-color:var(--cream);background-image:radial-gradient(900px 500px at 8% 12%, #ffdab9a6, transparent 55%), radial-gradient(800px 480px at 92% 8%, #c8ecffbf, transparent 50%), radial-gradient(700px 420px at 50% 100%, #e8deff8c, transparent 45%), linear-gradient(180deg, #fffefc 0%, var(--cream) 35%, #e8f8ff 100%);background-attachment:fixed;margin:0;font-weight:600}h1,h2,h3,.brandTitle,.cardTitle,.landingHeroTitle,.landingSectionTitle,.landingCtaTitle,.landingGameName,.landingPillTitle,.landingStepTitle,.playMenuTitle,.libraryPageTitle,.generatePageTitle,.nameSetupTitle,.wizardTitle,.gameOverTitle{font-family:var(--font-display)}.app{flex-direction:column;flex:1;width:100%;min-height:0;display:flex}.topbar{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:2px solid var(--stroke);background:#ffffffb8;justify-content:space-between;align-items:center;gap:16px;padding:16px 22px;display:flex;box-shadow:0 4px 24px #3d3a620f}.brand{align-items:center;gap:14px;display:flex}.brandMark{object-fit:contain;background:#fffffff2;border:3px solid #ffffffd9;border-radius:16px;flex-shrink:0;width:48px;height:48px;display:block;box-shadow:0 8px #3d3a621f}.brandTitle{letter-spacing:.02em;color:var(--ink);font-size:1.15rem;font-weight:700;line-height:1.15}.brandSubtitle{color:var(--ink-soft);font-size:.8rem;font-weight:600}.topbarActions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.topbarMusicBtn{align-items:center;gap:6px;padding:8px 12px;font-size:.85rem;font-weight:700;display:inline-flex}.topbarMusicIcon{font-size:1.1rem;line-height:1}.topbarMusicLabel{white-space:nowrap}@media (width<=520px){.topbarMusicLabel{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.topbarMusicBtn{padding:8px 10px}}.musicToggleBtnCompact{flex-shrink:0;align-items:center;gap:6px;padding:8px 12px;font-size:.82rem;font-weight:800;display:inline-flex}.musicToggleBtnCompactLabel{white-space:nowrap}@media (width<=480px){.musicToggleBtnCompactLabel{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.musicToggleBtnCompact{padding:8px 10px}}.layout{grid-template-columns:420px 1fr;align-items:start;gap:18px;padding:0 18px 20px;display:grid}@media (width<=1050px){.layout{grid-template-columns:1fr;padding-bottom:26px}}.panel{flex-direction:column;gap:14px;display:flex}.stage{flex-direction:column;gap:14px;min-height:0;display:flex}.card{background:var(--card);border:2px solid var(--stroke);box-shadow:var(--shadow);border-radius:22px;padding:18px}.cardTitle{letter-spacing:.04em;color:var(--ink-soft);text-transform:uppercase;margin-bottom:12px;font-size:.8rem;font-weight:700}.field{flex-direction:column;gap:6px;margin-bottom:12px;display:flex}.label{color:var(--ink-soft);font-size:.8rem;font-weight:700}.input{border:2px solid var(--stroke);width:100%;color:var(--ink);font-family:var(--font-body);background:#fefeff;border-radius:16px;outline:none;padding:12px 14px;font-size:1rem;font-weight:600}.input:focus{border-color:var(--ocean);box-shadow:0 0 0 4px #42c3ff40}.textarea{resize:vertical;min-height:88px}.row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.hint{color:var(--ink-soft);margin-top:6px;font-size:.85rem;font-weight:600;line-height:1.45}.btn,.fileBtn,.teamBtn{border:2px solid var(--stroke-strong);background:var(--white);color:var(--ink);font-family:var(--font-display);letter-spacing:.02em;cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:16px;padding:10px 16px;font-weight:600;transition:transform 80ms,box-shadow .2s,background .2s,border-color .2s}.btn:hover,.fileBtn:hover,.teamBtn:hover{border-color:#a78bfa73;transform:translateY(-2px);box-shadow:0 10px 24px #3d3a621f}.btn:active,.fileBtn:active,.teamBtn:active{transform:translateY(0)}.btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;transform:none}.btn.primary{color:#fff;text-shadow:0 1px #00000014;background:linear-gradient(135deg,#60a5fa,#a78bfa);border-color:#60a5fa80}.btn.success{color:#064e3b;background:linear-gradient(135deg,#4ade80,#34d399);border-color:#34d3998c}.btn.danger{color:#fff;background:linear-gradient(135deg,#fb923c,#f472b6);border-color:#fb923c73}.btn.big{border-radius:18px;padding:14px 18px;font-size:1.05rem}.segmented{border:2px solid var(--stroke);background:#f3f4ff;border-radius:18px;display:flex;overflow:hidden}.segBtn{color:var(--ink-soft);font-family:var(--font-display);cursor:pointer;background:0 0;border:0;padding:12px 14px;font-weight:600}.segBtn.active{color:var(--ink);background:linear-gradient(135deg,#ffd54fd9,#ffb6c1a6)}.fileBtn{position:relative;overflow:hidden}.fileBtn input{opacity:0;cursor:pointer;position:absolute;inset:0}.check{color:var(--ink-soft);align-items:center;gap:8px;font-size:13px;display:flex}.check input{transform:translateY(1px)}.callout{background:#ede9fea6;border:2px solid #a78bfa59;border-radius:16px;margin-top:10px;padding:12px 14px;font-weight:600}.callout.error{color:#9f1239;background:#ffe4e6d9;border-color:#fb71858c}.callout.success{color:#14532d;background:#dcfce7eb;border-color:#22c55e8c}.nameSetupTeachingNote{color:var(--ink);background:#e0f2fecc;border-color:#38bdf873;margin-top:14px;margin-bottom:0;font-size:14px;font-weight:600;line-height:1.45}.playerCountRow{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.playerCountBtn{min-width:44px;font-family:var(--font-display);font-weight:800}.grid{aspect-ratio:1;align-content:stretch;gap:clamp(8px,1.2vmin,14px);width:auto;max-width:100%;height:100%;max-height:100%;display:grid}.tile{aspect-ratio:1;cursor:pointer;background:radial-gradient(120px 80px at 20% 20%,#ffffff73,#0000 55%),linear-gradient(165deg,#7dd3fc,#60a5fa);border:2px solid #ffffff8c;border-radius:clamp(14px,2.2vmin,22px);justify-content:center;align-items:center;height:auto;display:flex;position:relative;overflow:hidden;box-shadow:0 8px #3d3a621f,inset 0 2px #ffffff59}.tile:hover{filter:brightness(1.04);transform:translateY(-2px)scale(1.02)}.tile:active{transform:translateY(1px)scale(.99)}.tile:disabled{cursor:not-allowed}.tile.used{opacity:1;background:#9ca3af;border-color:#6b7280e6;box-shadow:inset 0 2px 6px #0000001f}.tile.used:hover,.tile.used:active{filter:none;transform:none}.tileNum{font-family:var(--font-display);letter-spacing:.02em;color:#fff;text-shadow:0 3px #0000001f,0 8px 20px #00000026;font-size:clamp(32px,4vw,62px);font-weight:700}.tileSpark{filter:blur(2px);opacity:.7;background:radial-gradient(circle at 30% 30%,#ffffff59,#0000 60%);width:220px;height:220px;position:absolute;transform:rotate(18deg)}.stageFooter{flex-wrap:wrap;gap:10px;display:flex}.pill{border:2px solid var(--stroke);color:var(--ink-soft);background:#ffffffbf;border-radius:999px;padding:10px 14px;font-weight:700}.pill b{color:var(--ink)}.scoreGrid{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (width<=1050px){.scoreGrid{grid-template-columns:1fr}}.scoreCard{border:2px solid var(--stroke);background:var(--card);border-radius:18px;padding:14px;box-shadow:0 8px 28px #3d3a6214}.scoreLabel{color:var(--ink-soft);text-transform:uppercase;font-size:12px;font-weight:800;font-family:var(--font-display)}.scoreValue{font-family:var(--font-display);color:var(--ocean);margin:4px 0 10px;font-size:34px;font-weight:700}.teamBtn.active{background:linear-gradient(135deg,#ffd54f73,#a7efd18c);border-color:#60a5fa73}.modalOverlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#3d3a6259;justify-content:center;align-items:center;padding:18px;display:flex;position:fixed;inset:0}.modal{background:linear-gradient(#fffefb,#f0f9ff);border:3px solid #ffffffd9;border-radius:26px;width:min(980px,100%);overflow:hidden;box-shadow:0 28px 80px #3d3a6233}.dailyLimitCard{text-align:center;background:linear-gradient(#fff7ed,#fce7f3 45%,#e0f2fe);border:3px solid #ec489973;border-radius:22px;width:min(520px,100%);padding:28px 24px 22px;animation:.7s cubic-bezier(.2,1.08,.2,1) both celebrateCardIn;box-shadow:0 30px 80px #11182759}.dailyLimitTitle{font-family:var(--font-display);color:#0f172a;margin:0 0 10px;font-size:1.8rem;font-weight:900}.dailyLimitBody{color:#0f172ad1;margin:0 0 18px;font-size:1.05rem;font-weight:700;line-height:1.5}.memberOnlyModalCard{text-align:center;background:linear-gradient(#fefce8,#e0e7ff 40%,#fce7f3);border:3px solid #6366f166;border-radius:22px;width:min(520px,100%);padding:28px 24px 22px;animation:.55s cubic-bezier(.2,1.08,.2,1) both celebrateCardIn;box-shadow:0 30px 80px #1118274d}.memberOnlyModalTitle{font-family:var(--font-display);color:var(--ink);margin:0 0 10px;font-size:1.65rem;font-weight:900}.memberOnlyModalBody{color:var(--ink-soft);margin:0 0 20px;font-size:1.02rem;font-weight:700;line-height:1.5}.memberOnlyModalActions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.memberOnlyModalCardOtcPro{text-align:left;background:linear-gradient(145deg,#f8fafc 0%,#eef2ff 45%,#fdf4ff 100%);border:none;width:min(720px,100vw - 28px);max-height:min(90vh,900px);padding:0;overflow-y:auto;box-shadow:0 4px 24px #0f172a14,0 24px 64px #4338ca1f}.memberOnlyModalOtcProHeader{text-align:center;border-bottom:1px solid #6366f126;padding:26px 24px 8px}.memberOnlyModalOtcProBadge{color:#fff;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:12px;justify-content:center;align-items:center;width:40px;height:40px;margin-bottom:10px;font-size:1.1rem;font-weight:800;display:inline-flex;box-shadow:0 8px 20px #6366f159}.memberOnlyModalTitleOtcPro{background:linear-gradient(120deg,#1e1b4b,#4c1d95);color:#0000;-webkit-background-clip:text;background-clip:text;margin-bottom:6px}.memberOnlyModalOtcProSub{color:#1e1b4bb8;margin:0;font-size:.95rem;font-weight:600;line-height:1.45}.memberOnlyModalActionsOtcPro{border-top:1px solid #6366f11f;justify-content:center;padding:16px 24px 22px}.memberOnlyModalDismiss{color:var(--ink-soft);background:#0f172a0f;border:2px solid #0f172a1f;font-weight:700}.memberOnlyModalDismiss:hover{background:#0f172a1a;border-color:#0f172a33}.otcProOfferChoices{padding:20px 22px 18px}.otcProOfferChoicesCompact{padding:16px 20px 14px}.otcProOfferChoicesLead{color:#1e1b4bd9;text-align:center;margin:0 0 18px;font-size:.98rem;font-weight:600;line-height:1.55}.otcProOfferChoicesLead strong{color:#3730a3;font-weight:800}.otcProOfferGrid{grid-template-columns:1fr 1fr;gap:14px;display:grid}@media (width<=620px){.otcProOfferGrid{grid-template-columns:1fr}}.otcProOfferCard{text-align:left;color:inherit;border-radius:18px;flex-direction:column;align-items:stretch;min-height:100%;padding:18px 18px 16px;text-decoration:none;transition:transform .2s,box-shadow .2s;display:flex;position:relative}.otcProOfferCard:hover{color:inherit;text-decoration:none;transform:translateY(-3px)}.otcProOfferCard:focus-visible{outline-offset:2px;outline:3px solid #6366f18c}.otcProOfferCardBundle{color:#f5f3ff;background:linear-gradient(155deg,#1e1b4b 0%,#312e81 40%,#4c1d95 100%);border:1px solid #a78bfa59;box-shadow:0 12px 32px #1e1b4b59}.otcProOfferCardBundle:hover{box-shadow:0 18px 44px #1e1b4b73}.otcProOfferCardSolo{background:linear-gradient(#fff 0%,#faf5ff 100%);border:2px solid #6366f159;box-shadow:0 8px 24px #0f172a0f}.otcProOfferCardSolo:hover{border-color:#6366f18c;box-shadow:0 14px 36px #6366f11f}.otcProOfferCardKicker{letter-spacing:.1em;text-transform:uppercase;opacity:.88;margin-bottom:6px;font-size:.72rem;font-weight:800;display:block}.otcProOfferCardBundle .otcProOfferCardKicker{color:#c4b5fd}.otcProOfferCardSolo .otcProOfferCardKicker{color:#6d28d9}.otcProOfferCardTitle{font-family:var(--font-display);margin:0 0 8px;font-size:1.22rem;font-weight:900;line-height:1.2}.otcProOfferCardBundle .otcProOfferCardTitle{color:#fff}.otcProOfferCardSolo .otcProOfferCardTitle{color:#1e1b4b}.otcProOfferCardDesc{flex:1;margin:0 0 14px;font-size:.86rem;font-weight:600;line-height:1.5}.otcProOfferCardBundle .otcProOfferCardDesc{color:#f5f3ffe0}.otcProOfferCardSolo .otcProOfferCardDesc{color:#1e1b4bbf}.otcProOfferPriceRow{border-radius:12px;flex-wrap:wrap;align-items:baseline;gap:2px 8px;margin-bottom:14px;padding:10px 12px;display:flex}.otcProOfferCardBundle .otcProOfferPriceRow{background:#0003}.otcProOfferCardSolo .otcProOfferPriceRow{background:#6366f114;border:1px solid #6366f126}.otcProOfferPriceCurrency{opacity:.9;font-size:1.1rem;font-weight:800}.otcProOfferCardBundle .otcProOfferPriceCurrency{color:#e9d5ff}.otcProOfferCardSolo .otcProOfferPriceCurrency{color:#5b21b6}.otcProOfferPriceAmount{letter-spacing:-.03em;font-size:2rem;font-weight:900;line-height:1}.otcProOfferCardBundle .otcProOfferPriceAmount{color:#fff}.otcProOfferCardSolo .otcProOfferPriceAmount{color:#4c1d95}.otcProOfferPriceSuffix{width:100%;margin-top:4px;font-size:.78rem;font-weight:700;line-height:1.35}.otcProOfferCardBundle .otcProOfferPriceSuffix{color:#f5f3ffbf}.otcProOfferCardSolo .otcProOfferPriceSuffix{color:#1e1b4ba6}.otcProOfferCardCta{color:#422006;background:linear-gradient(135deg,#fbbf24,#f59e0b);border-radius:12px;justify-content:center;align-items:center;gap:8px;margin-top:auto;padding:12px 16px;font-size:.92rem;font-weight:800;display:inline-flex;box-shadow:0 4px 14px #f59e0b66}.otcProOfferCardBundle:hover .otcProOfferCardCta{background:linear-gradient(135deg,#fcd34d,#fbbf24)}.otcProOfferCardCtaOutline{color:#4c1d95;box-shadow:none;background:0 0;border:2px solid #6366f18c}.otcProOfferCardSolo:hover .otcProOfferCardCtaOutline{background:#6366f114;border-color:#6366f1}.otcProOfferCardCtaArrow{font-weight:900;transition:transform .2s}.otcProOfferCard:hover .otcProOfferCardCtaArrow{transform:translate(4px)}.otcProOfferChoicesFootnote{text-align:center;color:#1e1b4b80;margin:16px 0 0;font-size:.78rem;font-weight:600;line-height:1.4}.otcProOfferPaywallCallout{background:linear-gradient(145deg,#ecfdf5f7 0%,#f0fdfae6 50%,#fffffff0 100%);border:1px solid #2dd4bf6b;border-radius:16px;margin:0 0 14px;padding:16px 18px;box-shadow:0 6px 22px #0d94881a}.otcProOfferPaywallCalloutTitle{letter-spacing:.08em;text-transform:uppercase;color:#0f766e;margin:0 0 8px;font-size:.72rem;font-weight:900}.otcProOfferPaywallCalloutBody{color:#0f172ad1;margin:0 0 12px;font-size:.92rem;font-weight:600;line-height:1.55}.otcProOfferPaywallCalloutRow{flex-wrap:wrap;align-items:center;gap:10px 14px;display:flex}.otcProOfferPaywallLink{color:#1d4ed8;text-underline-offset:3px;font-size:.88rem;font-weight:800;text-decoration:underline}.otcProOfferPaywallLink:hover{color:#1e40af}.otcProOfferPaywallLinkPrimary{color:#fff;background:linear-gradient(135deg,#0d9488 0%,#0f766e 100%);border-radius:12px;justify-content:center;align-items:center;min-height:40px;padding:0 16px;text-decoration:none;display:inline-flex;box-shadow:0 8px 22px #0d948852}.otcProOfferPaywallLinkPrimary:hover{color:#fff;box-shadow:0 10px 26px #0d948866}.otcProOfferPaywallDefaultNote{color:#1e1b4bc7;text-align:center;margin:0 0 16px;font-size:.9rem;font-weight:600;line-height:1.55}.otcProOfferGridPaywall{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}@media (width<=640px){.otcProOfferGridPaywall{grid-template-columns:1fr}}.otcProOfferCardPaywallDefault.otcProOfferCardSolo{border-width:2px;border-color:#0d94888c;box-shadow:0 12px 32px #0d94882e}.otcProOfferCardPaywallBundle.otcProOfferCardBundle{opacity:.96;box-shadow:0 8px 24px #6366f11f}.otcProPaywallUpsell{text-align:left;background:linear-gradient(135deg,#f8fafcf2,#eff6ffe0);border:1px solid #6366f138;border-radius:16px;margin:16px 0 0;padding:14px 16px}.otcProPaywallUpsellAuth{margin-top:20px}.memberOnlyModalCard .otcProPaywallUpsell{margin-top:14px}.otcProPaywallUpsellTitle{letter-spacing:.06em;text-transform:uppercase;color:#5b21b6;margin:0 0 8px;font-size:.75rem;font-weight:900}.otcProPaywallUpsellBody{color:#1e1b4bd9;margin:0 0 12px;font-size:.88rem;font-weight:600;line-height:1.5}.otcProPaywallUpsellActions{flex-wrap:wrap;gap:10px;margin-bottom:10px;display:flex}.otcProPaywallUpsellBtn{border:2px solid #0000;border-radius:12px;justify-content:center;align-items:center;min-height:40px;padding:0 16px;font-size:.88rem;font-weight:800;text-decoration:none;display:inline-flex}.otcProPaywallUpsellBtnPrimary{color:#fff;background:linear-gradient(135deg,#0d9488 0%,#0f766e 100%);box-shadow:0 6px 18px #0d948847}.otcProPaywallUpsellBtnPrimary:hover{color:#fff}.otcProPaywallUpsellBtnGhost{color:#1d4ed8;background:#fff;border-color:#2563eb59}.otcProPaywallUpsellBtnGhost:hover{background:#eff6fff2}.otcProPaywallUpsellFoot{color:#1e1b4ba6;margin:0;font-size:.8rem;font-weight:600;line-height:1.45}.topbarGuestTry{color:#0f766e;background:#ccfbf1f2;border:2px solid #2dd4bf73;border-radius:999px;max-width:200px;padding:6px 12px;font-size:13px;font-weight:800;line-height:1.25}.modalHeader{border-bottom:2px solid var(--stroke);background:#fffbeb99;justify-content:space-between;align-items:center;padding:16px 18px;display:flex}.modalKicker{font-family:var(--font-display);letter-spacing:.02em;color:var(--ink-soft);font-weight:700}.iconBtn{border:2px solid var(--stroke);background:var(--white);color:var(--ink);cursor:pointer;border-radius:14px;padding:8px 12px;font-weight:700}.modalBody{gap:14px;padding:18px;display:grid}.qa{border:2px solid var(--stroke);background:#ffffffd9;border-radius:20px;padding:16px}.qa.answer{background:#ecfdf5a6;border-color:#34d39973}.qaLabel{color:var(--ink-soft);text-transform:uppercase;font-size:.75rem;font-weight:800;font-family:var(--font-display);margin-bottom:8px}.qaText{font-family:var(--font-display);letter-spacing:.01em;color:var(--ink);font-size:clamp(1.15rem,2.2vw,1.75rem);font-weight:600;line-height:1.3}.qaImageFrame{border-radius:18px;min-height:180px;margin-top:12px;position:relative;overflow:visible}.qaImageSkeleton{background:linear-gradient(110deg,#e2e8f0 8%,#f8fafc 18%,#e2e8f0 33%) 0 0/200% 100%;border:3px solid #e2e8f0f2;border-radius:18px;justify-content:center;align-items:center;min-height:200px;animation:1.35s ease-in-out infinite qaImageShimmer;display:flex}.qaImageSkeletonLabel{font-family:var(--font-display);color:var(--ink-soft);font-size:.95rem;font-weight:700}@keyframes qaImageShimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.qaImage{object-fit:cover;opacity:0;border:3px solid #ffffffe6;border-radius:18px;width:100%;max-height:360px;transition:opacity .25s ease-out;display:block;box-shadow:0 12px 32px #3d3a621f}.qaImage.qaImageReady{opacity:1}.qaImageError{color:var(--ink-soft);text-align:center;margin:0;padding:16px;font-size:.9rem;font-weight:600}.qaImageEnlargeBtn{cursor:zoom-in;text-align:left;background:0 0;border:none;border-radius:18px;width:100%;margin:0;padding:0;transition:transform .22s,box-shadow .22s;display:block}.qaImageEnlargeBtn:hover{filter:brightness(1.02)}.qaImageEnlargeBtn:focus-visible{outline:3px solid var(--grape);outline-offset:4px}.qaImageEnlargeHint{color:var(--ink-soft);text-align:center;margin:8px 0 0;font-size:.78rem;font-weight:700}.imageLightboxOverlay{z-index:12000;cursor:zoom-out;-webkit-backdrop-filter:blur(8px);background:#0f172ae0;justify-content:center;align-items:center;padding:min(24px,4vw);animation:.22s ease-out imageLightboxFadeIn;display:flex;position:fixed;inset:0}@keyframes imageLightboxFadeIn{0%{opacity:0}to{opacity:1}}.imageLightboxDialog{cursor:default;flex-direction:column;align-items:center;gap:12px;max-width:min(96vw,1400px);max-height:92vh;display:flex;position:relative}.imageLightboxClose{z-index:2;color:#fff;cursor:pointer;background:#1e1b4beb;border:2px solid #ffffff80;border-radius:14px;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.25rem;font-weight:700;transition:transform .2s,background .2s;display:flex;position:absolute;top:-6px;right:-6px;box-shadow:0 8px 24px #00000059}.imageLightboxClose:hover{background:#312e81f2;transform:scale(1.06)}.imageLightboxClose:focus-visible{outline-offset:2px;outline:3px solid #fff}.imageLightboxImg{object-fit:contain;border:3px solid #ffffffeb;border-radius:16px;width:auto;max-width:100%;height:auto;max-height:min(82vh,900px);display:block;box-shadow:0 24px 80px #00000073}.imageLightboxHint{color:#f8fafcbf;text-align:center;margin:0;font-size:.85rem;font-weight:700}@media (prefers-reduced-motion:reduce){.imageLightboxOverlay{animation:none}}.answerHidden{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.badge{color:#92400e;font-family:var(--font-display);background:#fef3c7e6;border:2px solid #fbbf2480;border-radius:999px;padding:8px 12px;font-weight:700}.modalActions{border-top:2px solid var(--stroke);background:#f8fafccc;flex-wrap:wrap;align-items:center;gap:10px;padding:16px 18px 20px;display:flex}.showBtn{justify-content:center;align-items:center;gap:10px;display:inline-flex}.spacer{flex:1}.libraryHeader{justify-content:space-between;align-items:baseline;gap:10px;margin:6px 0 10px;display:flex}.libraryTitle{font-family:var(--font-display);letter-spacing:.02em;font-weight:700}.libraryMeta{color:var(--ink-soft);font-size:12px;font-weight:700}.libraryGrid{grid-template-columns:1fr;gap:10px;max-height:340px;padding-right:4px;display:grid;overflow:auto}.libCard{text-align:left;border:2px solid var(--stroke);background:var(--card);cursor:pointer;border-radius:18px;grid-template-columns:110px 1fr;gap:10px;padding:12px;display:grid;box-shadow:0 6px 20px #3d3a620f}.libCard:hover{border-color:#60a5fa73;transform:translateY(-2px)}.libThumbWrap{position:relative}.libThumb{object-fit:cover;border:2px solid var(--stroke);border-radius:14px;width:110px;height:70px}.libBadge{font-family:var(--font-display);border:2px solid var(--stroke);background:#fffffff2;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:700;position:absolute;bottom:6px;right:6px}.libTitleText{font-family:var(--font-display);color:var(--ink);font-weight:700;line-height:1.15}.libSub{color:var(--ink-soft);margin-top:4px;font-size:12px;font-weight:600}.brandLink{color:inherit;align-items:center;text-decoration:none}.siteHeader{flex-shrink:0}.landingPage{flex-direction:column;flex:1;min-width:0;min-height:100dvh;display:flex}.landingNav{z-index:200;-webkit-backdrop-filter:blur(16px);border-bottom:2px solid var(--stroke);background:#fffefcc7;padding:10px 16px;position:sticky;top:0;box-shadow:0 4px 28px #3d3a620f}.landingNavInner{justify-content:space-between;align-items:center;gap:14px;max-width:1120px;margin:0 auto;display:flex}.landingNavBrand{color:var(--ink);flex-shrink:0;align-items:center;gap:11px;min-width:0;text-decoration:none;display:flex}.landingNavLogo{object-fit:contain;background:#fffffff2;border:2px solid #fffffff2;border-radius:14px;flex-shrink:0;width:44px;height:44px;box-shadow:0 4px 14px #3d3a621a}.landingNavName{font-family:var(--font-display);letter-spacing:.02em;font-size:clamp(.82rem,2.5vw,1rem);font-weight:700;line-height:1.15}.landingNavDesktop{flex:1;justify-content:center;align-items:center;gap:2px;display:flex}.landingNavLink{font-family:var(--font-display);color:var(--ink-soft);border-radius:999px;padding:8px 14px;font-size:.86rem;font-weight:700;text-decoration:none;transition:color .2s,background .2s,transform .2s}.landingNavLink:hover{color:var(--ink);background:#a78bfa29;transform:translateY(-1px)}.landingNavLink:focus-visible{outline:3px solid var(--grape);outline-offset:2px}.landingNavCtas{flex-shrink:0;align-items:center;gap:8px;display:flex}.landingNavLoading{color:var(--ink-soft);padding:0 8px;font-weight:700}.landingNavUser{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;max-width:120px;font-size:11px;font-weight:700;display:none;overflow:hidden}@media (width>=900px){.landingNavUser{display:block}}.landingNavCtaShrink{padding-left:14px;padding-right:14px}.landingBtnOutline{font-family:var(--font-display);color:var(--ink);background:#ffffffbf;border:2px solid #3d3a6229;border-radius:999px;padding:9px 18px;font-size:.88rem;font-weight:700;text-decoration:none;transition:border-color .2s,background .2s,transform .2s,box-shadow .2s}.landingBtnOutline:hover{background:#fff;border-color:#a78bfa8c;transform:translateY(-2px);box-shadow:0 8px 22px #3d3a621a}.landingBtnPrimary{font-family:var(--font-display);color:#fff;background:linear-gradient(135deg,#ec4899,#a78bfa 48%,#38bdf8);border:2px solid #ffffff73;border-radius:999px;padding:9px 20px;font-size:.88rem;font-weight:700;text-decoration:none;transition:transform .2s,box-shadow .2s,filter .2s;box-shadow:0 5px #3d3a6224}.landingBtnPrimary:hover{filter:brightness(1.04);transform:translateY(-2px);box-shadow:0 8px #3d3a621c}.landingBtnGhost{font-family:var(--font-display);color:var(--ink-soft);cursor:pointer;background:0 0;border:none;border-radius:999px;padding:8px 12px;font-size:.82rem;font-weight:700;transition:color .2s,background .2s}.landingBtnGhost:hover{color:var(--ink);background:#3d3a620f}.landingMenuToggle{cursor:pointer;background:#ffffffd9;border:2px solid #3d3a621f;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:8px 10px;transition:border-color .2s,background .2s,transform .2s;display:none}.landingMenuToggle:hover{border-color:#a78bfa66;transform:scale(1.03)}.landingMenuToggleLines{flex-direction:column;gap:5px;width:22px;display:flex}.landingMenuLine{background:var(--ink);border-radius:2px;height:3px;transition:transform .3s,opacity .25s;display:block}.landingMenuToggle[aria-expanded=true] .landingMenuLine:first-child{transform:translateY(8px)rotate(45deg)}.landingMenuToggle[aria-expanded=true] .landingMenuLine:nth-child(2){opacity:0;transform:scaleX(0)}.landingMenuToggle[aria-expanded=true] .landingMenuLine:nth-child(3){transform:translateY(-8px)rotate(-45deg)}.landingMenuToggleLabel{font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);font-size:.65rem;font-weight:800}.landingNavMobile{border-top:1px solid var(--stroke);background:#fffefcf2;flex-direction:column;gap:4px;padding:12px 16px 18px;display:none}.landingNavMobile.open{display:flex}.landingNavMobileLink{font-family:var(--font-display);color:var(--ink);border-radius:14px;padding:12px 14px;font-size:.95rem;font-weight:700;text-decoration:none;transition:background .2s}.landingNavMobileLink:hover{background:#a78bfa1f}.landingNavMobileStrong{background:linear-gradient(135deg,#ec48991f,#a78bfa1f)}.landingNavMobileBtn{font-family:var(--font-display);color:var(--ink-soft);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:14px;padding:12px 14px;font-size:.95rem;font-weight:700;transition:background .2s}.landingNavMobileBtn:hover{color:var(--ink);background:#3d3a620f}@media (width<=820px){.landingNavDesktop{display:none}.landingMenuToggle{display:flex}.landingNavCtas .landingBtnOutline,.landingNavCtas .landingBtnPrimary,.landingNavCtas .landingNavUser,.landingNavCtas .landingBtnGhost,.landingNavCtas .landingNavCtaShrink{display:none}.landingNavCtas:has(.landingMenuToggle) .landingNavLoading{margin-right:auto}}.landingMain{flex-direction:column;flex:1;display:flex}.landingHero{padding:clamp(40px,9vw,88px) 20px clamp(56px,11vw,104px);position:relative;overflow:hidden}.landingHeroMesh{pointer-events:none;background:radial-gradient(100% 80% at 50% -20%,#fde04759,#0000 55%),radial-gradient(70% 50% at 0%,#c4b5fd47,#0000 50%),radial-gradient(70% 50% at 100% 40%,#7dd3fc52,#0000 50%),linear-gradient(#fffefb 0%,#f0f9ff 42%,#fdf4ff 100%);position:absolute;inset:0}.landingHeroBlob{filter:blur(50px);opacity:.55;pointer-events:none;border-radius:50%;animation:14s ease-in-out infinite landingBlobFloat;position:absolute}.landingHeroBlobA{background:#fda4af;width:min(320px,55vw);height:min(320px,55vw);animation-delay:0s;top:10%;right:-8%}.landingHeroBlobB{background:#7dd3fc;width:min(280px,50vw);height:min(280px,50vw);animation-delay:-7s;bottom:5%;left:-10%}@keyframes landingBlobFloat{0%,to{transform:translate(0)scale(1)}50%{transform:translate(-12px,18px)scale(1.05)}}.landingHeroInner{z-index:1;text-align:center;max-width:900px;margin:0 auto;position:relative}@keyframes landingFadeUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.landingHeroAnim{animation:.75s cubic-bezier(.22,1,.36,1) backwards landingFadeUp}@media (prefers-reduced-motion:reduce){.landingHeroAnim{opacity:1;animation:none;transform:none}.landingHeroBlob{animation:none}.landingPillCard,.landingGameCard,.landingStep,.landingTeachersPanel,.landingGameCardImg{transition:none}.landingGameCard:hover .landingGameCardImg,.landingGameCardMoreGames:hover .landingGameMoreSvg{transform:none}}.landingHeroKicker{font-family:var(--font-display);letter-spacing:.12em;text-transform:uppercase;color:#db2777;margin:0 0 14px;font-size:.82rem;font-weight:800}.landingHeroLogoMark{aspect-ratio:1;object-fit:contain;filter:drop-shadow(0 10px 28px #3d3a621f);background:#fffffff2;border:3px solid #ffffffe6;border-radius:22px;width:min(100%,clamp(140px,32vw,220px));height:auto;margin:0 auto 22px;transition:transform .35s,filter .35s,box-shadow .35s;display:block;box-shadow:0 10px #3d3a621a}.landingHeroLogoMark:hover{filter:drop-shadow(0 16px 36px #3d3a6229);transform:scale(1.04)translateY(-4px);box-shadow:0 14px #3d3a6214}.landingHeroTitle{letter-spacing:.02em;color:var(--ink);margin:0 0 18px;font-size:clamp(1.85rem,5vw,3rem);font-weight:700;line-height:1.12}.landingHeroLead{max-width:640px;color:var(--ink-soft);margin:0 auto 28px;font-size:clamp(1.02rem,2.2vw,1.2rem);font-weight:600;line-height:1.6}.landingHeroActions{flex-direction:column;align-items:center;gap:12px;display:flex}.landingHeroBtnRow{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.landingHeroCtaPrimary{font-family:var(--font-display);color:#fff;background:linear-gradient(135deg,#ec4899,#a78bfa 45%,#0ea5e9);border:3px solid #ffffff80;border-radius:999px;padding:16px 36px;font-size:1.05rem;font-weight:800;text-decoration:none;transition:transform .25s,box-shadow .25s,filter .25s;box-shadow:0 10px #3d3a6224}.landingHeroCtaPrimary:hover{filter:brightness(1.05);transform:translateY(-4px);box-shadow:0 14px #3d3a621a}.landingHeroCtaSecondary{font-family:var(--font-display);color:var(--ink);background:#ffffffe6;border:3px solid #3d3a6229;border-radius:999px;padding:16px 32px;font-size:1.05rem;font-weight:800;text-decoration:none;transition:transform .25s,border-color .25s,box-shadow .25s;box-shadow:0 8px #3d3a6214}.landingHeroCtaSecondary:hover{border-color:#a78bfa73;transform:translateY(-3px);box-shadow:0 11px #3d3a6212}.landingHeroCtaTry{font-family:var(--font-display);color:#0f766e;background:linear-gradient(#ecfdf5,#ccfbf1);border:3px solid #2dd4bf8c;border-radius:999px;padding:16px 28px;font-size:1.05rem;font-weight:800;text-decoration:none;transition:transform .25s,border-color .25s,box-shadow .25s;box-shadow:0 8px #0d948826}.landingHeroCtaTry:hover{border-color:#14b8a6bf;transform:translateY(-3px);box-shadow:0 11px #0d94881f}button.landingHeroCtaTry{cursor:pointer}button.landingHeroCtaTry:disabled{opacity:.8;cursor:wait;transform:none}.landingHeroTryError{text-align:center;color:#b45309;max-width:520px;margin:0;font-size:.9rem;font-weight:700;line-height:1.4}.landingNavMobileBtnLink{cursor:pointer;width:100%;font:inherit;text-align:left;background:0 0;border:none;display:block}.landingNavMobileBtnLink:disabled{opacity:.65;cursor:not-allowed}.landingHeroCtaGhost{font-family:var(--font-display);color:var(--ink-soft);cursor:pointer;background:#ffffff80;border:2px solid #0000;border-radius:999px;padding:12px 22px;font-size:1rem;font-weight:700;transition:color .2s,background .2s}.landingHeroCtaGhost:hover{color:var(--ink);background:#ffffffd9}.landingHeroHint{color:var(--ink-soft);margin:0;font-size:.92rem;font-weight:700}.landingHeroSignedIn{color:var(--ink-soft);margin:0 0 4px;font-size:.95rem;font-weight:600}.landingSection{padding:clamp(52px,9vw,92px) 20px;scroll-margin-top:76px}.landingSectionTint{background:linear-gradient(#ffffff8c,#e0f2fe59)}.landingSectionGames{background:linear-gradient(#fce7f333,#fff6)}.landingSectionOtcUpgrade{background:linear-gradient(#f5f3ffe6,#e0f2fe80)}#otc-pro,#pricing{scroll-margin-top:76px}.landingOtcHomeSalesPanel{background:linear-gradient(155deg,#fffffffa 0%,#f0f9ffeb 45%,#fffffff5 100%);border:1px solid #788cdc59;border-radius:28px;max-width:1120px;margin:0 auto;padding:clamp(28px,5vw,44px) clamp(22px,4vw,40px);box-shadow:0 24px 60px #0f172a14,inset 0 0 0 1px #ffffff14}.landingOtcHomeSalesGrid{grid-template-columns:minmax(0,1.05fr) minmax(260px,1fr);align-items:start;gap:clamp(22px,4vw,40px);display:grid}.landingOtcHomeSalesCopy{min-width:0}.landingOtcHomePriceBlock{background:linear-gradient(145deg,#ecfdf5f7 0%,#f0fdfae6 45%,#fffffff0 100%);border:1px solid #2dd4bf61;border-radius:16px;margin:18px 0 20px;padding:16px 18px;box-shadow:0 6px 26px #0d94881a}.landingOtcHomePriceBadge{text-transform:uppercase;letter-spacing:.07em;color:#fff;background:linear-gradient(135deg,#0d9488,#059669);border-radius:999px;margin-bottom:10px;padding:6px 12px;font-size:.68rem;font-weight:800;display:inline-block;box-shadow:0 4px 14px #0d948859}.landingOtcHomePriceRow{flex-wrap:wrap;align-items:flex-end;gap:10px 20px;display:flex}.landingOtcHomePriceNow{margin:0;line-height:1}.landingOtcHomePriceNowInner{letter-spacing:-.035em;color:#0f766e;font-variant-numeric:tabular-nums;font-size:clamp(1.85rem,4.5vw,2.45rem);font-weight:800}.landingOtcHomePricePeriod{color:#64748b;margin-left:3px;font-size:.48em;font-weight:700}.landingOtcHomePriceCompare{color:#475569;flex:1;min-width:min(100%,11rem);margin:0;font-size:.88rem;font-weight:600;line-height:1.4}.landingOtcHomePriceIfSeparate{color:#475569;border-top:1px solid #0d948838;margin:12px 0 0;padding-top:10px;font-size:.86rem;font-weight:600;line-height:1.35}.landingOtcHomePriceFoot{color:#0f766e;border-top:1px solid #94a3b847;margin:12px 0 0;padding-top:10px;font-size:.82rem;font-weight:600;line-height:1.35}.landingOtcBundleSurface{--otc-bundle-text:#0f172a;--otc-bundle-muted:#475569;background:#ffffff8c;border:1px solid #cbd5e18c;border-radius:20px;padding:16px 14px 14px;box-shadow:0 8px 28px #0f172a0f}.landingOtcBundleFeaturesTitle{text-transform:uppercase;letter-spacing:.08em;color:var(--otc-bundle-muted);margin:0 0 12px;font-size:.72rem;font-weight:800}.landingOtcBundleFeatures{gap:10px;margin:0;padding:0;list-style:none;display:grid}@media (width>=480px){.landingOtcBundleFeatures{grid-template-columns:1fr 1fr}}.landingOtcBundleFeature{color:var(--otc-bundle-text);background:#ffffffb8;border:1px solid #cbd5e173;border-radius:14px;align-items:center;gap:12px;padding:10px 12px;font-size:.82rem;font-weight:600;transition:border-color .2s,box-shadow .2s;display:flex}.landingOtcBundleFeature:hover{border-color:#0d948859;box-shadow:0 6px 20px #0d948814}.landingOtcBundleLogoWrap{background:#fff;border:1px solid #cbd5e18c;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex;box-shadow:0 2px 10px #0f172a0f}.landingOtcBundleLogoWrapSvg{background:linear-gradient(165deg,#fafafa 0%,#f1f5f9 100%);border-color:#94a3b873}.landingOtcBundleIconSvg{flex-shrink:0;width:26px;height:26px;display:block}.landingOtcBundleLogo{object-fit:contain;width:40px;height:40px;display:block}.landingOtcBundleLabel{flex:1;min-width:0;line-height:1.3}@media (width<=900px){.landingOtcHomeSalesGrid{grid-template-columns:1fr}}@media (width<=620px){.landingOtcHomeSalesCopy .landingOtcUpgradeEyebrow,.landingOtcHomeSalesCopy .landingOtcUpgradeTitle,.landingOtcHomeSalesCopy .landingOtcUpgradeLead{text-align:center}.landingOtcHomeSalesCopy .landingOtcUpgradeActions{justify-content:center}.landingOtcHomeSalesCopy .landingOtcNoThanks{margin-left:auto;margin-right:auto;display:block}}.landingSectionVocabSpotlight{background:linear-gradient(135deg,#ecfdf5eb 0%,#e0f2fe8c 42%,#faf5ffe6 100%);border-top:1px solid #2dd4bf33;border-bottom:1px solid #a78bfa24}.landingVocabSpotlightKicker{text-align:center;max-width:40rem;font-family:var(--font-display);letter-spacing:.1em;text-transform:uppercase;color:#0f766e;margin:0 auto 12px;font-size:.82rem;font-weight:800}.landingVocabSpotlightBody{grid-template-columns:minmax(150px,200px) minmax(0,1fr);align-items:start;gap:clamp(24px,4.5vw,44px);max-width:880px;margin:clamp(28px,4.5vw,40px) auto 0;display:grid}.landingVocabSpotlightArt{justify-content:center;justify-self:center;align-items:center;width:100%;max-width:220px;min-height:200px;display:flex;position:relative}.landingVocabSpotlightOrb{filter:blur(.5px);background:radial-gradient(circle at 40% 35%,#34d39959,#0000 55%),radial-gradient(circle at 70% 60%,#a78bfa47,#0000 50%);border-radius:999px;width:min(100%,220px);height:min(100%,220px);position:absolute}.landingVocabSpotlightCard{z-index:1;background:linear-gradient(165deg,#fffffff5 0%,#f0fdfae0 100%);border:2px solid #ffffffd9;border-radius:26px;flex-direction:column;align-items:center;gap:12px;padding:24px 20px 18px;display:flex;position:relative;box-shadow:0 18px 48px #0f766e1f,0 4px #2dd4bf26}.landingVocabSpotlightIcon{filter:drop-shadow(0 10px 24px #0f766e33);width:clamp(96px,18vw,120px);height:auto;display:block}.landingVocabSpotlightCardLabel{font-family:var(--font-display);letter-spacing:.02em;color:#134e4a;font-size:1rem;font-weight:900}.landingVocabSpotlightList{text-align:left;color:var(--ink-soft);align-self:center;margin:4px 0 0;padding:0 0 0 1.25rem;font-size:1.02rem;font-weight:600;line-height:1.75}.landingVocabSpotlightList li{margin-bottom:10px}.landingVocabSpotlightList li:last-child{margin-bottom:0}.landingVocabSpotlightFooter{justify-content:center;margin-top:32px;display:flex}@media (width<=720px){.landingVocabSpotlightBody{grid-template-columns:1fr;justify-items:center;margin-top:24px}.landingVocabSpotlightArt{max-width:200px;min-height:180px}.landingVocabSpotlightList{width:100%;max-width:28rem;margin-top:8px;padding-top:4px}}.landingOtcComingSoon{background:linear-gradient(#fff3,#e0f2fe40);padding:clamp(40px,7vw,72px) 20px clamp(8px,2vw,16px);scroll-margin-top:76px}.landingOtcComingSoonCard{background:linear-gradient(145deg,#fffffff7 0%,#f0f9ffeb 38%,#e0f2fee0 100%);border:1px solid #38bdf861;border-radius:26px;flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:clamp(18px,3vw,28px);max-width:1100px;margin:0 auto;padding:clamp(22px,3.5vw,30px) clamp(22px,3.5vw,36px);display:flex;box-shadow:0 18px 50px #082f4912,inset 0 1px #ffffffe6}.landingOtcComingSoonLogo{flex:none;justify-content:center;align-items:center;display:flex}.landingOtcComingSoonLogoSvg{filter:drop-shadow(0 4px 12px #ca8a0440);width:clamp(88px,14vw,118px);height:auto;display:block}.landingOtcComingSoonMain{flex:260px;min-width:0}.landingOtcComingSoonTitle{font-family:var(--font-display);letter-spacing:-.02em;color:#0369a1;margin:0 0 10px;font-size:clamp(1.35rem,2.4vw,1.75rem);font-weight:900;line-height:1.2}.landingOtcComingSoonBody{color:var(--ink-soft);max-width:52ch;margin:0;font-size:clamp(.95rem,1.35vw,1.06rem);font-weight:600;line-height:1.55}.landingOtcComingSoonCountdown{border-left:1px solid #0e74901f;border-right:1px solid #0e74901f;flex-direction:column;flex:none;justify-content:center;align-items:center;min-width:5.5rem;padding:6px 10px;display:flex}.landingOtcComingSoonCountNum{font-family:var(--font-display);color:#0284c7;letter-spacing:-.04em;font-size:clamp(2.4rem,5vw,3.1rem);font-weight:900;line-height:1}.landingOtcComingSoonCountLabel{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);margin-top:6px;font-size:.78rem;font-weight:800}.landingOtcComingSoonCta{font-family:var(--font-display);color:#fff;background:linear-gradient(#0ea5e9 0%,#0284c7 100%);border:2px solid #0284c759;border-radius:999px;flex:none;justify-content:center;align-items:center;margin-left:auto;padding:14px 22px;font-size:.95rem;font-weight:800;text-decoration:none;transition:transform .2s,box-shadow .2s;display:inline-flex;box-shadow:0 8px 24px #0284c747}.landingOtcComingSoonCta:hover{transform:translateY(-2px);box-shadow:0 12px 32px #0284c759}@media (width<=820px){.landingOtcComingSoonCard{text-align:center;flex-direction:column;align-items:stretch}.landingOtcComingSoonLogo{justify-content:center}.landingOtcComingSoonMain{text-align:center}.landingOtcComingSoonBody{margin:0 auto}.landingOtcComingSoonCountdown{min-width:unset;border:1px solid #0e74901f;border-left:none;border-right:none;flex-flow:wrap;justify-content:center;gap:8px 12px;padding:14px 0}.landingOtcComingSoonCountLabel{text-transform:none;letter-spacing:0;align-self:center;margin-top:0;font-size:.95rem;font-weight:700}.landingOtcComingSoonCta{margin-left:0;width:100%;max-width:360px;margin-inline:auto}}.landingOtcUpgradePanel{background:radial-gradient(circle at 86% 14%,#fbbf243d,#0000 26%),linear-gradient(135deg,#fffffff0,#f5f3ffeb 56%,#e0f2fee6);border:2px solid #a78bfa47;border-radius:28px;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);align-items:center;gap:clamp(24px,4vw,44px);max-width:1080px;margin:0 auto;padding:clamp(28px,5vw,44px) clamp(22px,4vw,40px);display:grid;overflow:hidden;box-shadow:0 10px 44px #4c1d9517,inset 0 1px #ffffffd1}.landingOtcUpgradeCopy{min-width:0}.landingOtcUpgradeEyebrow{color:#6d28d9;font-family:var(--font-display);letter-spacing:.1em;text-transform:uppercase;text-align:left;margin:0 0 10px;font-size:.8rem;font-weight:900}.landingOtcUpgradeTitle{text-align:left;max-width:680px}.landingOtcUpgradeLead{text-align:left;margin-bottom:8px;margin-left:0;margin-right:0}.landingOtcUpgradeList{text-align:left;max-width:600px;color:var(--ink-soft);margin:22px 0 0;padding:0 0 0 1.2rem;font-size:1.02rem;font-weight:600;line-height:1.7}.landingOtcUpgradeList li{margin-bottom:10px}.landingOtcUpgradeSuite{text-align:center;max-width:640px;color:var(--ink-soft);margin:26px auto 0;font-size:1.05rem;font-weight:600;line-height:1.65}.landingOtcUpgradeSuite strong{color:var(--ink)}.landingOtcUpgradeActions{flex-wrap:wrap;justify-content:flex-start;gap:12px;margin-top:28px;display:flex}.landingOtcNoThanks{color:#0369a1;font:inherit;text-underline-offset:4px;cursor:pointer;background:0 0;border:0;margin:18px 0 0;padding:0;font-weight:800;text-decoration:underline}.landingOtcNoThanks:hover{color:#075985}.landingOtcUpgradeVisual{justify-content:center;align-items:center;min-height:340px;display:flex;position:relative}.landingOtcUpgradeVisual:before{content:"";filter:blur(2px);background:linear-gradient(135deg,#7c3aed38,#0ea5e92e);border-radius:999px;width:280px;height:280px;position:absolute}.landingOtcVisualCard{z-index:1;background:#ffffffe0;border:2px solid #ffffffc7;border-radius:26px;flex-direction:column;gap:8px;display:flex;position:relative;box-shadow:0 18px 46px #4c1d9529}.landingOtcVisualCardMain{color:#1e1b4b;width:min(100%,290px);padding:26px}.landingOtcVisualIcon{color:#422006;width:64px;height:64px;font-family:var(--font-display);background:linear-gradient(135deg,#fde047,#f59e0b);border-radius:20px;justify-content:center;align-items:center;font-weight:900;display:inline-flex;box-shadow:0 10px 24px #f59e0b42}.landingOtcVisualCardMain strong{font-family:var(--font-display);font-size:1.35rem;font-weight:900}.landingOtcVisualCardMain span:last-child{color:#1e1b4bb8;font-weight:700;line-height:1.45}.landingOtcVisualStack{z-index:2;gap:10px;display:grid;position:absolute;bottom:18px;right:0}.landingOtcVisualStack span{color:#312e81;background:#fffffff0;border:1px solid #6366f12e;border-radius:999px;padding:10px 14px;font-size:.84rem;font-weight:800;display:block;box-shadow:0 8px 22px #0f172a14}.landingAppPricing{background:#ffffffd1;border:2px solid #6366f12e;border-radius:28px;max-width:1080px;margin:clamp(22px,4vw,36px) auto 0;padding:clamp(22px,4vw,34px);animation:.25s vbSlideUp;box-shadow:0 12px 38px #0f172a12}.landingAppPricingHeader{max-width:760px;margin-bottom:22px}.landingAppPricingTitle{font-family:var(--font-display);color:var(--ink);margin:0 0 10px;font-size:clamp(1.35rem,3vw,1.9rem);font-weight:900}.landingAppPricingLead{color:var(--ink-soft);margin:0;font-size:1rem;font-weight:600;line-height:1.65}.landingAppPricingGrid{grid-template-columns:repeat(3,minmax(0,1fr))}.landingAppPricingGrid .otcProOfferCard{gap:0}.landingAppPricingFeatures{margin:0 0 16px;padding-left:1.1rem;font-size:.84rem;font-weight:700;line-height:1.5}.otcProOfferCardBundle .landingAppPricingFeatures{color:#f5f3ffe0}.otcProOfferCardSolo .landingAppPricingFeatures{color:#1e1b4bb8}.landingAppPricingAnnual{background:linear-gradient(#fff 0%,#fffbeb 100%);border-color:#f59e0b6b}@media (width<=900px){.landingOtcUpgradePanel{grid-template-columns:1fr}.landingOtcUpgradeVisual{min-height:280px}.landingOtcVisualStack{width:min(100%,320px);bottom:0;right:50%;transform:translate(50%)}.landingAppPricingGrid{grid-template-columns:1fr}}@media (width<=620px){.landingOtcUpgradeEyebrow,.landingOtcUpgradeTitle,.landingOtcUpgradeLead{text-align:center}.landingOtcUpgradeActions{justify-content:center}.landingOtcNoThanks{margin-left:auto;margin-right:auto;display:block}.landingOtcUpgradeVisual{display:none}}.landingSectionInner{max-width:1120px;margin:0 auto}.landingSectionTitle{letter-spacing:.02em;color:var(--ink);text-align:center;margin:0 0 14px;font-size:clamp(1.65rem,4vw,2.4rem);font-weight:700}.landingSectionLead{text-align:center;max-width:700px;color:var(--ink-soft);margin:0 auto;font-size:1.05rem;font-weight:600;line-height:1.65}.landingPillGrid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;margin-top:40px;display:grid}.landingPillCard{border:2px solid var(--stroke);background:var(--card);border-radius:26px;padding:28px 24px 26px;transition:transform .3s cubic-bezier(.22,1,.36,1),box-shadow .3s,border-color .3s;position:relative;overflow:hidden;box-shadow:0 4px #3d3a620f}.landingPillCard:before{content:"";background:var(--pill-accent,linear-gradient(145deg, #f5f3ff, #e0f2fe));opacity:0;pointer-events:none;transition:opacity .35s;position:absolute;inset:0}.landingPillCard:hover{border-color:#a78bfa66;transform:translateY(-10px)rotate(-.6deg);box-shadow:0 22px 48px #3d3a621f}.landingPillCard:hover:before{opacity:.55}.landingPillIcon{z-index:1;margin-bottom:12px;font-size:2.1rem;line-height:1;display:block;position:relative}.landingPillTitle{z-index:1;color:var(--ink);margin:0 0 10px;font-size:1.25rem;font-weight:700;position:relative}.landingPillBody{z-index:1;color:var(--ink-soft);margin:0;font-size:.95rem;font-weight:600;line-height:1.55;position:relative}.landingSteps{flex-direction:column;gap:22px;max-width:880px;margin:44px auto 0;padding:0;list-style:none;display:flex}.landingStep{border:2px solid var(--stroke);background:#ffffffe0;border-radius:24px;align-items:flex-start;gap:20px;padding:24px 26px;transition:transform .28s,box-shadow .28s,border-color .28s;display:flex;box-shadow:0 6px #3d3a620d}.landingStep:hover{border-color:#38bdf859;transform:translate(8px);box-shadow:0 10px 28px #3d3a6214}.landingStepNum{width:48px;height:48px;font-family:var(--font-display);color:#fff;background:linear-gradient(145deg,#f472b6,#a78bfa);border-radius:16px;flex-shrink:0;justify-content:center;align-items:center;font-size:1.25rem;font-weight:800;display:flex;box-shadow:0 4px #3d3a621f}.landingStepBody{min-width:0}.landingStepTitle{color:var(--ink);margin:0 0 6px;font-size:1.2rem;font-weight:700}.landingStepText{color:var(--ink-soft);margin:0;font-size:.98rem;font-weight:600;line-height:1.55}.landingGameGrid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-top:44px;display:grid}a.landingGameCard{color:inherit;cursor:pointer;text-decoration:none}button.landingGameCard{text-align:left;font:inherit;color:inherit;cursor:pointer}.landingGameCardLocked{opacity:.97}.landingGameLockBadge{z-index:2;text-transform:uppercase;letter-spacing:.08em;color:#92400e;background:linear-gradient(#fef3c7,#fde68a);border:2px solid #f59e0b80;border-radius:999px;padding:5px 10px;font-size:10px;font-weight:800;position:absolute;top:12px;right:12px}.landingGameCard{border:2px solid var(--stroke);background:var(--card);border-radius:26px;flex-direction:column;padding:0;transition:transform .32s cubic-bezier(.22,1,.36,1),box-shadow .32s,border-color .32s;display:flex;position:relative;overflow:hidden}.landingGameCardShot{aspect-ratio:16/10;background:linear-gradient(#f1f5f9,#e2e8f0);border-bottom:1px solid #3d3a6214;width:100%;position:relative}.landingGameCardImg{object-fit:cover;object-position:top center;width:100%;height:100%;transition:transform .45s cubic-bezier(.22,1,.36,1);display:block}.landingGameCard:hover .landingGameCardImg{transform:scale(1.04)}.landingGameCardMoreGames{background:linear-gradient(#fff 0%,#f8fafc 100%);border-style:solid;border-color:#6366f138}.landingGameCardMoreShot{background:linear-gradient(165deg,#eef2ff 0%,#e0e7ff 45%,#f5f3ff 100%);justify-content:center;align-items:center;display:flex}.landingGameMoreSvg{filter:drop-shadow(0 10px 24px #4338ca2e);width:min(58%,200px);height:auto;max-height:82%;transition:transform .45s cubic-bezier(.22,1,.36,1)}.landingGameCardMoreGames:hover .landingGameMoreSvg{transform:scale(1.06)}.landingGameCardShotSvg{justify-content:center;align-items:center;display:flex}.landingGameCardShotSvg .landingGameDecorSvg{filter:drop-shadow(0 10px 22px #3d3a621f);width:min(62%,220px);height:auto;max-height:84%;transition:transform .45s cubic-bezier(.22,1,.36,1)}.landingGameCard:hover .landingGameDecorSvg{transform:scale(1.05)}.landingGameCardContent{flex-direction:column;flex:1;padding:20px 22px 22px;display:flex}.landingGameCard:after{content:"";background:var(--game-hue,var(--grape));opacity:.85;height:5px;transition:height .3s;position:absolute;top:0;left:0;right:0}.landingGameCard:hover{border-color:#3d3a621f;transform:translateY(-8px)scale(1.01);box-shadow:0 24px 50px #3d3a6221}.landingGameCard:hover:after{height:8px}.landingGameCardTop{margin-bottom:12px}.landingGameKicker{font-family:var(--font-display);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:4px;font-size:.72rem;font-weight:800;display:block}.landingGameName{color:var(--ink);margin:0;font-size:1.45rem;font-weight:700}.landingGameBody{color:var(--ink-soft);flex:1;margin:0 0 14px;font-size:.95rem;font-weight:600;line-height:1.55}.landingGameMeta{color:#3d3a6273;margin:0;font-size:.8rem;font-weight:700}.landingTeachersInner{grid-template-columns:1fr 1fr;align-items:center;gap:36px;display:grid}.landingTeachersCopy .landingSectionTitle{text-align:left}@media (width<=800px){.landingTeachersInner{grid-template-columns:1fr}.landingTeachersCopy .landingSectionTitle{text-align:center}}.landingTeachersList{color:var(--ink-soft);margin:20px 0 0;padding-left:1.2rem;font-size:1.02rem;font-weight:600;line-height:1.75}.landingTeachersList li{margin-bottom:8px}.landingTeachersPanel{border:2px solid var(--stroke);background:linear-gradient(145deg,#fff 0%,#e0f2fe 50%,#fce7f3 100%);border-radius:28px;justify-content:center;align-items:center;min-height:220px;transition:transform .35s,box-shadow .35s;display:flex;position:relative;box-shadow:0 8px #3d3a620f}.landingTeachersPanel:hover{transform:rotate(-1deg)scale(1.02);box-shadow:0 14px 40px #3d3a621a}.landingTeachersPanelText{z-index:2;font-family:var(--font-display);color:var(--ink);text-align:center;margin:0;padding:20px;font-size:1.35rem;font-weight:800;position:relative}.landingTeachersFloat{z-index:1;font-size:2.5rem;animation:5s ease-in-out infinite landingFloaty;position:absolute}.landingTeachersFloat2{font-size:2rem;animation-delay:-1.5s;top:12%;right:14%}.landingTeachersFloat3{font-size:2.2rem;animation-delay:-3s;bottom:14%;left:12%}@keyframes landingFloaty{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.landingCtaBand{color:#f8fafc;text-align:center;background:linear-gradient(125deg,#1e1b4b 0%,#4c1d95 40%,#831843 100%);padding:clamp(52px,10vw,88px) 20px}.landingCtaInner{max-width:640px;margin:0 auto}.landingCtaTitle{color:#fff;margin:0 0 12px;font-size:clamp(1.75rem,4vw,2.5rem);font-weight:700}.landingCtaSub{color:#f8fafce0;margin:0 0 28px;font-size:1.05rem;font-weight:600;line-height:1.6}.landingCtaRow{flex-direction:column;align-items:center;gap:16px;display:flex}.landingCtaButton{font-family:var(--font-display);color:#1e1b4b;background:linear-gradient(#fff 0%,#e0e7ff 100%);border:3px solid #ffffffb3;border-radius:999px;padding:16px 40px;font-size:1.1rem;font-weight:800;text-decoration:none;transition:transform .25s,box-shadow .25s,filter .25s;box-shadow:0 8px #0003}.landingCtaButton:hover{filter:brightness(1.03);transform:translateY(-4px)scale(1.02);box-shadow:0 12px #0000002e}.landingCtaLink{color:#f8fafce6;text-underline-offset:4px;font-size:.95rem;font-weight:700;text-decoration:underline;transition:color .2s}.landingCtaLink:hover{color:#fff}.landingFooter{border-top:2px solid var(--stroke);background:#ffffffa6;padding:22px 20px 28px}.landingFooterInner{text-align:center;max-width:1120px;color:var(--ink-soft);flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 12px;margin:0 auto;font-size:.88rem;font-weight:600;display:flex}.landingFooterBrand{font-family:var(--font-display);color:var(--ink);font-weight:800}.landingFooterSep{opacity:.45}.landingFooterLinks{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 18px;max-width:1120px;margin:12px auto 0;font-size:.92rem;font-weight:800;display:flex}.landingFooterLinks a{color:var(--ink);text-underline-offset:3px;text-decoration:underline}.landingHeroHint a{color:#4338ca;font-weight:800}.landingSectionLead+.landingSectionLead{margin-top:14px}.landingFaqList{gap:14px;max-width:760px;margin:22px auto 0;display:grid}.landingFaqItem{border:2px solid var(--stroke);text-align:left;background:#fff;border-radius:16px;padding:16px 18px}.landingFaqQuestion{color:var(--ink);margin:0 0 8px;font-size:1.05rem;font-weight:800}.landingFaqAnswer{color:var(--ink-soft);margin:0;font-weight:650;line-height:1.55}.landingFaqAnswer a{color:#4338ca;font-weight:800}.topbarUser{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;max-width:160px;font-size:12px;font-weight:700;overflow:hidden}@media (width<=520px){.topbarUser{display:none}}.authPage{background:linear-gradient(#e8f4fc,#fdf4ff 55%,#e8fce8 100%);min-height:100dvh}.authMain{max-width:440px;margin:0 auto;padding:32px 18px 48px}.authCard{padding:28px 22px 24px}.authBrandLink{justify-content:center;margin:0 0 16px;text-decoration:none;display:flex}.authBrandLogo{object-fit:contain;background:#fffffff2;border:3px solid #ffffffe6;border-radius:18px;width:72px;height:72px;box-shadow:0 6px #3d3a621a}.authTitle{font-family:var(--font-display);color:var(--ink);margin:0 0 8px;font-size:1.65rem;font-weight:800}.authSub{color:var(--ink-soft);margin:0 0 22px;font-size:14px;font-weight:600;line-height:1.45}.authForm{flex-direction:column;gap:4px;display:flex}.authFieldRow{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 12px;margin-bottom:2px;display:flex}.authForgotLink{color:#1d4ed8;border-radius:8px;padding:4px 2px;font-size:13px;font-weight:800;text-decoration:none;transition:color .15s,background .15s}.authForgotLink:hover{color:#1e3a8a;background:#2563eb1a;text-decoration:underline}.authForgotLink:focus-visible{outline-offset:2px;outline:3px solid #2563eb73}.authSpamWarn{background:linear-gradient(135deg,#fff7ed 0%,#ffedd5 45%,#fef3c7 100%);border:3px solid #f59e0b;border-radius:16px;margin:0 0 18px;padding:16px 16px 14px;box-shadow:0 4px #f59e0b40}.authSpamWarnTitle{font-family:var(--font-display);letter-spacing:.02em;color:#9a3412;margin:0 0 8px;font-size:clamp(1.05rem,2.8vw,1.25rem);font-weight:900;line-height:1.2;display:block}.authSpamWarnBody{color:#7c2d12;margin:0;font-size:15px;font-weight:700;line-height:1.5}.authSpamWarnBody strong{color:#c2410c;font-weight:900}.authForgotSubmit{padding-block:14px;font-size:1.02rem;font-weight:800;box-shadow:0 4px #2563eb38}.authSubmit{justify-content:center;width:100%;margin-top:12px}.authFooter{text-align:center;color:var(--ink-soft);margin:18px 0 0;font-size:14px;font-weight:600}.authFooter a{color:#2563eb;font-weight:800}.authHomeLink{text-align:center;color:#2563eb;margin-top:16px;font-size:14px;font-weight:700;text-decoration:none;display:block}.authGate{justify-content:center;align-items:center;min-height:50vh;padding:40px 20px;display:flex}.authGateText{font-family:var(--font-display);color:var(--ink-soft);font-size:1.1rem;font-weight:700}.playMenuPage .playMenuMain{flex:1;max-width:900px;margin:0 auto;padding:24px 20px 40px}.playMenuTitle{color:var(--ink);margin:0 0 8px;font-size:clamp(1.6rem,4vw,2.2rem);font-weight:700}.playMenuSub{color:var(--ink-soft);margin:0 0 28px;font-weight:600}.playMenuLayout{flex-direction:column;gap:18px;display:flex}.playMenuCards{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.playMenuNonQuizBar{box-sizing:border-box;width:100%;color:inherit;background:linear-gradient(145deg,#f0fdf4,#d1fae5);border:3px solid #10b98159;border-radius:24px;flex-direction:row;align-items:center;gap:20px 24px;padding:22px 24px;text-decoration:none;transition:transform .12s,border-color .2s,box-shadow .2s;display:flex;box-shadow:0 12px 36px #3d3a621a}.playMenuNonQuizBar:hover{border-color:#10b981a6;transform:translateY(-3px);box-shadow:0 14px 40px #10b9812e}.playMenuNonQuizBarIcon{flex-shrink:0;font-size:2.5rem;line-height:1}.playMenuNonQuizBarBody{flex:1;min-width:0}.playMenuNonQuizBarTitle{font-family:var(--font-display);color:var(--ink);margin:0 0 6px;font-size:1.35rem;font-weight:700}.playMenuNonQuizBarDesc{color:var(--ink-soft);margin:0;font-size:.95rem;font-weight:600;line-height:1.45}@media (width<=960px){.playMenuCards{grid-template-columns:1fr}.playMenuNonQuizBar{text-align:left;flex-direction:column;align-items:flex-start}}.nonQuizHubPage .nonQuizHubMain{flex:1;max-width:880px;margin:0 auto;padding:24px 20px 40px}.nonQuizHubTitle{color:var(--ink);margin:0 0 8px;font-size:clamp(1.6rem,4vw,2.2rem);font-weight:700}.nonQuizHubSub{color:var(--ink-soft);margin:0 0 28px;font-weight:600}.nonQuizHubCards{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;display:grid}.nonQuizHubCard{color:inherit;background:linear-gradient(145deg,#ecfeff,#e0f2fe);border:3px solid #fffffff2;border-radius:24px;padding:28px 22px;text-decoration:none;transition:transform .15s,box-shadow .2s,border-color .2s;display:block;box-shadow:0 12px 36px #3d3a621a}.nonQuizHubCard:hover{border-color:#0ea5e973;transform:translateY(-5px)rotate(.4deg);box-shadow:0 16px 44px #0ea5e926}.nonQuizHubCard h2{font-family:var(--font-display);color:var(--ink);margin:12px 0 8px;font-size:1.35rem;font-weight:700}.nonQuizHubCard p{color:var(--ink-soft);margin:0;font-size:.95rem;font-weight:600;line-height:1.45}.nonQuizHubCardIcon{font-size:2.25rem}.nonQuizHubAccessLoading{color:var(--ink-soft);margin:0 0 24px;font-weight:700}.nonQuizHubCardLocked{cursor:pointer;text-align:left;font:inherit;opacity:.96;position:relative}.nonQuizHubCardLocked:hover{border-color:#f59e0b73;transform:translateY(-4px)}.nonQuizHubLockBadge{text-transform:uppercase;letter-spacing:.08em;color:#92400e;background:linear-gradient(#fef3c7,#fde68a);border:2px solid #f59e0b80;border-radius:999px;padding:5px 10px;font-size:10px;font-weight:800;position:absolute;top:14px;right:14px}.featureAccessLoadingPage{background:var(--bg,#f8fafc);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.featureAccessLoadingMain{text-align:center;max-width:320px}.featureAccessLoadingSpinner{border:3px solid #6366f133;border-top-color:#6366f1d9;border-radius:50%;width:40px;height:40px;margin:0 auto 16px;animation:.75s linear infinite featureAccessSpin}@keyframes featureAccessSpin{to{transform:rotate(360deg)}}.featureAccessLoadingText{color:var(--ink-soft,#64748b);margin:0;font-size:1rem;font-weight:600}.hangmanPage{flex-direction:column;flex:1;min-height:0;display:flex}.hangmanPage .hangmanMain{flex-direction:column;flex:1;max-width:720px;min-height:0;margin:0 auto;padding:20px 16px 48px;display:flex}.hangmanMain--play{flex:1;width:100%;max-width:none;min-height:0;padding:12px clamp(12px,2.5vw,28px) 16px}.hangmanMain--play .hangmanPlayTop.card,.hangmanMain--play .hangmanKeyboard.card{border-width:2px;box-shadow:0 6px 20px #3d3a6212}.hangmanHeadRow{flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.hangmanMain--play .hangmanHeadRow{margin-bottom:8px}.hangmanTitle{color:var(--ink);font-size:clamp(1.5rem,4vw,2rem);font-weight:800;font-family:var(--font-display);margin:0}.hangmanBack{flex-shrink:0}.hangmanSetup{padding:24px 22px 28px}.hangmanSetupTitle{font-size:1.35rem;font-family:var(--font-display);margin:0 0 8px}.hangmanSetupHint{color:var(--ink-soft);margin:0 0 20px;font-weight:600;line-height:1.45}.hangmanSegRow{flex-wrap:wrap;gap:8px;display:flex}.hangmanSeg{cursor:pointer;background:#fff;border:2px solid #6366f159;border-radius:999px;padding:8px 14px;font-size:13px;font-weight:800;transition:transform .12s,background .2s,border-color .2s}.hangmanSeg:hover{border-color:#6366f199;transform:scale(1.04)}.hangmanSeg.active{color:#fff;background:linear-gradient(#a5b4fc,#818cf8);border-color:#4f46e5}.hangmanSourceRow{flex-direction:column;gap:10px;display:flex}.hangmanRadio{cursor:pointer;align-items:center;gap:10px;font-weight:700;display:flex}.hangmanSecretRow .hangmanSecretInputs{flex-wrap:wrap;align-items:stretch;gap:10px;display:flex}.hangmanSecretInput{letter-spacing:.06em;flex:1;min-width:180px;font-weight:800}.hangmanHideBtn{align-self:center}.hangmanInlineErr{margin-top:10px;padding:10px 12px}.hangmanStartBtn{width:100%;max-width:280px;margin-top:22px;padding:14px 20px;font-size:1.05rem}.hangmanPlay{flex-direction:column;flex:1;gap:clamp(6px,1vh,12px);min-height:0;display:flex;position:relative}.hangmanPlayTop{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;min-height:0;margin-bottom:0;padding:clamp(8px,1.2vh,18px) clamp(10px,2vw,18px);display:flex}.hangmanSvg{color:#1e293b;filter:drop-shadow(0 4px 12px #1e293b1f);width:auto;max-width:min(92vw,520px);height:min(48vh,100dvh - 300px,420px);min-height:160px;margin:0 auto clamp(6px,1vh,12px);display:block}.hangmanWordRow{flex-wrap:wrap;justify-content:center;align-items:center;gap:clamp(6px,1.2vw,14px);min-height:40px;margin:clamp(6px,1vh,14px) 0 clamp(4px,.8vh,10px);display:flex}.hangmanSlot{font-size:clamp(1.25rem,min(5vw,5vh),2.35rem);font-weight:900;font-family:var(--font-display);color:#94a3b8;text-align:center;min-width:1.1em;transition:color .25s,transform .25s}.hangmanSlot.revealed{color:#0f766e;transform:scale(1.08)}.hangmanWrongLabel{color:var(--ink-soft);margin:0;font-size:clamp(.8rem,1.8vh,.95rem);font-weight:800}.hangmanKeyboard{flex-wrap:wrap;flex-shrink:0;place-content:flex-end center;gap:clamp(4px,.9vw,9px);max-width:min(920px,100%);margin:0 auto;padding:clamp(8px,1.2vh,14px) clamp(6px,1.5vw,12px);display:flex}.hangmanKey{cursor:pointer;background:linear-gradient(#fff,#f1f5f9);border:2px solid #94a3b880;border-radius:12px;width:clamp(34px,7.2vw,52px);height:clamp(38px,7.8vw,54px);font-size:clamp(13px,2.9vw,18px);font-weight:900;transition:transform .1s,opacity .2s,background .2s}.hangmanKey:hover:not(:disabled){border-color:#6366f1;transform:translateY(-2px)}.hangmanKey:disabled{cursor:default}.hangmanKey.miss{opacity:.45;background:#fee2e2;border-color:#fca5a5}.hangmanKey.correct{opacity:.55;background:#d1fae5;border-color:#6ee7b7}.hangmanShake .hangmanPlayTop{animation:.45s hangmanShake}@keyframes hangmanShake{0%,to{transform:translate(0)}20%{transform:translate(-8px)}40%{transform:translate(8px)}60%{transform:translate(-5px)}80%{transform:translate(5px)}}.hangmanOverlay{z-index:20;text-align:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff0;border:3px solid #10b98173;border-radius:22px;flex-direction:column;justify-content:center;align-items:center;margin:0;padding:20px 16px;animation:.45s cubic-bezier(.34,1.56,.64,1) hangmanPop;display:flex;position:absolute;inset:0;box-shadow:0 16px 48px #0f172a1f}@keyframes hangmanPop{0%{opacity:0;transform:scale(.92)translateY(12px)}to{opacity:1;transform:scale(1)translateY(0)}}.hangmanEndTitle{font-family:var(--font-display);margin:0 0 8px;font-size:1.6rem}.hangmanEndSub{color:var(--ink-soft);margin:0 0 18px;font-weight:700}.hangmanReveal{color:#0f766e;font-size:1.15em}.hangmanEndActions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.wordSearchPage{flex-direction:column;flex:1;min-height:0;display:flex}.wordSearchPage .wordSearchMain{flex-direction:column;flex:1;max-width:960px;min-height:0;margin:0 auto;padding:20px 16px 48px;display:flex}.wordSearchMain--play{flex:1;width:100%;max-width:none;min-height:0;padding:10px clamp(10px,2vw,24px) 12px}.wordSearchHeadRow{flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.wordSearchMain--play .wordSearchHeadRow{margin-bottom:8px}.wordSearchTitle{color:var(--ink);font-size:clamp(1.5rem,4vw,2rem);font-weight:800;font-family:var(--font-display);margin:0}.wordSearchIntro{color:var(--ink-soft);max-width:640px;margin:0 0 22px;font-weight:600;line-height:1.5}.wordSearchPickGrid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;display:grid}.wordSearchPickCard{text-align:left;cursor:pointer;font:inherit;color:inherit;background:linear-gradient(155deg,#fffbeb,#fef3c7);border:3px solid #fbbf2459;border-radius:22px;padding:22px 18px;transition:transform .12s,box-shadow .2s,border-color .2s}.wordSearchPickCard:hover{border-color:#f59e0ba6;transform:translateY(-4px);box-shadow:0 14px 36px #f59e0b2e}.wordSearchPickCard h2{font-size:1.2rem;font-family:var(--font-display);margin:10px 0 6px}.wordSearchPickCard p{color:var(--ink-soft);margin:0;font-size:.9rem;font-weight:600}.wordSearchPickIcon{font-size:2rem}.wordSearchCard{max-width:min(560px,100%);padding:22px 20px 26px}.wordSearchGridSizeField{margin-top:6px}.wordSearchGridSegRow{flex-wrap:wrap;gap:10px;display:flex}.wordSearchGridSeg{cursor:pointer;min-width:96px;font:inherit;color:inherit;background:#fff;border:2px solid #6366f159;border-radius:16px;flex-direction:column;flex:100px;justify-content:center;align-items:center;gap:2px;padding:12px 10px;transition:transform .1s,border-color .2s,background .2s;display:flex}.wordSearchGridSeg:hover{border-color:#6366f18c;transform:translateY(-2px)}.wordSearchGridSeg.active{color:#1e1b4b;background:linear-gradient(#c7d2fe,#a5b4fc);border-color:#4f46e5}.wordSearchGridSegTitle{font-size:1rem;font-weight:900;font-family:var(--font-display)}.wordSearchGridSegHint{text-transform:uppercase;letter-spacing:.06em;opacity:.85;font-size:11px;font-weight:800}.wordSearchGridSizeHint{margin-top:8px;margin-bottom:0}.wordSearchCardTitle{font-family:var(--font-display);margin:0 0 12px;font-size:1.3rem}.wordSearchManualList{flex-direction:column;gap:10px;margin:14px 0 16px;display:flex}.wordSearchCardActions{flex-wrap:wrap;gap:10px;margin-top:8px;display:flex}.wordSearchAiResult{border-top:2px dashed #94a3b880;margin-top:24px;padding-top:20px}.wordSearchAiResultTitle{margin:0 0 10px;font-size:1.05rem}.wordSearchBuildBtn{margin-top:14px}.wordSearchPlay{flex-direction:column;gap:18px;display:flex}.wordSearchPlay--fit{flex:1;gap:clamp(8px,1.2vh,14px);min-height:0;position:relative}@media (width>=900px){.wordSearchPlay--fit{flex-direction:row;align-items:stretch}.wordSearchPlay--fit .wordSearchWordList{flex-direction:column;flex:0 0 min(200px,22vw);max-height:100%;display:flex;overflow:hidden}.wordSearchPlay--fit .wordSearchWords{flex:1;min-height:0;overflow-y:auto}.wordSearchPlay--fit .wordSearchGridWrap{flex:1;min-width:0;min-height:0}}@media (width<=899px){.wordSearchPlay--fit .wordSearchWordList{flex-direction:column;flex-shrink:0;max-height:28vh;display:flex;overflow:hidden}.wordSearchPlay--fit .wordSearchWords{flex-flow:wrap;flex:1;align-content:flex-start;gap:6px;min-height:0;overflow-y:auto}.wordSearchPlay--fit .wordSearchWords li{flex:none}}.wordSearchWordList{padding:14px 14px 16px}.wordSearchWordListTitle{font-size:clamp(1rem,2.2vh,1.15rem);font-family:var(--font-display);margin:0 0 6px}.wordSearchGridBadge{color:#4f46e5;letter-spacing:.04em;margin:0 0 8px;font-size:12px;font-weight:800}.wordSearchTapHint{color:var(--ink-soft);margin:0 0 8px;font-size:clamp(11px,1.6vh,13px);font-weight:700}.wordSearchWords{flex-direction:column;gap:8px;margin:0 0 16px;padding:0;list-style:none;display:flex}.wordSearchWords li{letter-spacing:.04em;background:#f1f5f9e6;border:2px solid #0000;border-radius:10px;padding:6px 10px;font-size:clamp(.82rem,1.8vh,1rem);font-weight:800;transition:opacity .3s,background .3s}.wordSearchWords li.found{opacity:.55;background:#d1fae5;border-color:#6ee7b7;text-decoration:line-through}.wordSearchPlayActions{margin-top:8px}.wordSearchGridWrap{touch-action:none;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;min-height:0;padding:6px 8px 10px;display:flex;overflow:hidden}.wordSearchPlay--fit .wordSearchGridWrap{flex:1;min-height:0;container-type:size}.wordSearchGrid{box-sizing:border-box;margin:0 auto;display:grid}@supports (width:1cqmin){.wordSearchPlay--fit .wordSearchGrid{gap:clamp(3px,.45cqmin,6px);width:min(96cqmin,98cqw,98cqh);max-width:100%;height:min(96cqmin,98cqw,98cqh);max-height:100%}}@supports not (width:1cqmin){.wordSearchPlay--fit .wordSearchGrid{gap:clamp(3px,.55vmin,6px);width:min(86vmin,100vw - 24px);max-width:100%;height:min(86vmin,100vw - 24px);max-height:min(86vmin,100dvh - 200px)}}.wordSearchCell{aspect-ratio:1;cursor:pointer;background:linear-gradient(#fff,#f8fafc);border:2px solid #6366f140;justify-content:center;align-items:center;width:100%;min-width:0;height:100%;min-height:0;font-weight:900;transition:transform .1s,background .2s,border-color .2s;display:flex}@supports (width:1cqmin){.wordSearchPlay--fit .wordSearchCell{border-radius:clamp(6px,.75cqmin,12px);font-size:clamp(11px,5.2cqmin,24px)}}@supports not (width:1cqmin){.wordSearchPlay--fit .wordSearchCell{border-radius:10px;font-size:clamp(12px,3vmin,22px)}}.wordSearchCell:hover{border-color:#6366f18c;transform:scale(1.06)}.wordSearchCell.isSelected{background:#fef08a;border-color:#eab308;box-shadow:0 0 0 3px #eab30859}.wordSearchCell.isDragPreview{color:#312e81;background:linear-gradient(#e0e7ff,#c7d2fe);border-color:#6366f1;box-shadow:0 0 0 2px #6366f159}.wordSearchCell.isFound.isDragPreview,.wordSearchCell.isFound{color:#14532d;background:linear-gradient(#bbf7d0,#86efac);border-color:#22c55e}.wordSearchPulse .wordSearchGridWrap{animation:.35s wordSearchShake}@keyframes wordSearchShake{0%,to{transform:translate(0)}25%{transform:translate(-6px)}75%{transform:translate(6px)}}.wordSearchPlay--fit .wordSearchWin{z-index:25;text-align:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff0;border:3px solid #22c55e73;border-radius:22px;flex-direction:column;justify-content:center;align-items:center;margin:0;padding:20px 16px;animation:.45s cubic-bezier(.34,1.56,.64,1) hangmanPop;display:flex;position:absolute;inset:0;box-shadow:0 16px 48px #0f172a1f}.wordSearchWin{text-align:center;background:linear-gradient(160deg,#ecfdf5,#d1fae5);border:3px solid #22c55e73;padding:22px 18px;animation:.45s cubic-bezier(.34,1.56,.64,1) hangmanPop}.wordSearchWinTitle{font-family:var(--font-display);margin:0 0 14px;font-size:1.45rem}.playMenuCard{color:inherit;background:linear-gradient(145deg,#fffefb,#fae8ff);border:3px solid #ffffffe6;border-radius:24px;padding:28px 22px;text-decoration:none;transition:transform .12s,border-color .2s;display:block;box-shadow:0 12px 36px #3d3a621a}.playMenuCard:hover{border-color:#60a5fa80;transform:translateY(-4px)rotate(-.5deg)}.playMenuCard h2{font-family:var(--font-display);color:var(--ink);margin:12px 0 8px;font-size:1.35rem;font-weight:700}.playMenuCard p{color:var(--ink-soft);margin:0;font-size:.95rem;font-weight:600;line-height:1.45}.playMenuCardIcon{font-size:2.25rem}.playMenuCardIconImg{object-fit:cover;border-radius:12px;width:48px;height:48px}button.playMenuCard{text-align:left;cursor:pointer;width:100%;font:inherit}.playMenuCardGuestLock{opacity:.96;position:relative}.playMenuCardGuestLock:hover{border-color:#f59e0b73;transform:translateY(-2px)}.playMenuCardLoading{opacity:.8;pointer-events:none;cursor:default}.playMenuCardLockBadge{text-transform:uppercase;letter-spacing:.08em;color:#92400e;background:linear-gradient(#fef3c7,#fde68a);border:2px solid #f59e0b80;border-radius:999px;margin-top:4px;padding:4px 10px;font-size:11px;font-weight:800;display:inline-block}.homeBackLink{color:#2563eb;font-weight:800;font-family:var(--font-display);margin-top:28px;text-decoration:none;display:inline-block}.libraryPage .libraryPageMain{flex:1;width:100%;max-width:1200px;margin:0 auto;padding:0 20px 40px}.libraryPageHead{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.libraryPageTitle{color:var(--ink);margin:0;font-size:clamp(1.5rem,3vw,2rem);font-weight:700}.libraryPageSub{color:var(--ink-soft);max-width:520px;margin:6px 0 0;font-weight:600}.libraryGridTabs{flex-wrap:wrap;gap:8px;margin:0 0 16px;display:flex}.libraryGridTab{font:inherit;cursor:pointer;border:2px solid var(--stroke);color:var(--ink);font-weight:800;font-family:var(--font-display);background:#ffffffbf;border-radius:999px;padding:10px 18px;transition:border-color .15s,background .15s}.libraryGridTab:hover{border-color:#a78bfa73}.libraryGridTab.active{background:linear-gradient(135deg,#e0f2fef2,#faf5fffa);border-color:#a78bfad9;box-shadow:0 0 0 3px #a78bfa33}.libraryPageEmpty{border:2px dashed var(--stroke);color:var(--ink-soft);text-align:center;border-radius:16px;margin:24px 0 0;padding:16px 18px;font-weight:600}.libraryPageSearch{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;display:flex}.librarySearchInput{max-width:400px}.libraryPageMeta{color:var(--ink-soft);font-size:13px;font-weight:800;font-family:var(--font-display)}.libraryPageError{margin-bottom:14px}.libraryPageGrid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px;display:grid}.libraryPageCard{text-align:left;background:var(--card);cursor:pointer;color:inherit;border:3px solid #fffffff2;border-radius:22px;padding:0;transition:transform .1s,border-color .2s;overflow:hidden;box-shadow:0 10px 32px #3d3a621a}.libraryPageCard:hover{border-color:#a78bfa8c;transform:translateY(-3px)}.libraryPageThumbWrap{aspect-ratio:16/10;position:relative}.libraryPageThumb{object-fit:cover;width:100%;height:100%;display:block}.libraryPageBadge{border:2px solid var(--stroke);font-family:var(--font-display);color:var(--ink);background:#fffffff2;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:700;position:absolute;bottom:10px;right:10px}.libraryPageTier{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.06em;z-index:1;border-radius:999px;padding:6px 10px;font-size:11px;font-weight:800;position:absolute;top:10px;left:10px}.libraryPageTierFree{color:#065f46;background:linear-gradient(#d1fae5,#a7f3d0);border:2px solid #10b98173}.libraryPageTierPro{color:#92400e;background:linear-gradient(#fef3c7,#fde68a);border:2px solid #f59e0b8c}.libraryPageGuestHint{color:var(--ink-soft);max-width:640px;margin-top:8px;font-size:14px;font-weight:600;display:block}.libraryPageCardBody{padding:14px 16px 18px}.libraryPageCardTitle{font-family:var(--font-display);color:var(--ink);margin:0 0 6px;font-size:1.08rem;font-weight:700;line-height:1.2}.libraryPagePairs{font-size:14px;font-weight:800;font-family:var(--font-display);color:#2563eb;margin:0 0 6px}.libraryPageCardMeta{color:var(--ink-soft);margin:0;font-size:13px;font-weight:600}.generatePage .generatePageMain{flex:1;width:100%;max-width:560px;margin:0 auto;padding:0 20px 40px}.generatePageHead{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.generatePageTitle{color:var(--ink);margin:0;font-size:1.75rem;font-weight:700}.generatePageSub{color:var(--ink-soft);margin:6px 0 0;font-weight:600}.manualCreatePage .manualCreateMain{flex:1;width:100%;max-width:640px;margin:0 auto;padding:0 20px 40px}.manualCreateHead{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.manualCreateTitle{color:var(--ink);margin:0;font-size:1.75rem;font-weight:700}.manualCreateSub{color:var(--ink-soft);margin:6px 0 0;font-weight:600;line-height:1.45}.manualCreateCard{overflow:visible}.manualCreateBody{padding:16px 18px 20px}.manualCreateProgressHint{color:var(--ink-soft);margin:0 0 16px;font-size:14px;font-weight:600;line-height:1.45}.manualCreateActions{margin-top:8px}.manualCreateStepActions{border-top:none;margin-top:8px;padding-top:0}.manualImagePreview{flex-direction:column;align-items:flex-start;gap:10px;display:flex}.manualPreviewImg{border:2px solid var(--stroke);object-fit:contain;background:#f8fafce6;border-radius:12px;max-width:100%;max-height:220px}.manualFileRow{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.manualFileInput{padding:8px;font-size:14px}.manualUploading{color:#2563eb;font-size:13px;font-weight:700}.generatePageGridPick{margin-bottom:18px}.wizardShell{padding:0;overflow:hidden}.wizardTop{border-bottom:2px solid var(--stroke);background:linear-gradient(90deg,#fef3c780,#e0f2fe80);justify-content:space-between;align-items:center;gap:12px;padding:16px 18px 12px;display:flex}.wizardDots{align-items:center;gap:8px;display:flex}.wizardDot{background:#3d3a6226;border:2px solid #3d3a621f;border-radius:999px;width:10px;height:10px;transform:scale(.95)}.wizardDot.active{background:linear-gradient(135deg,#f472b6,#a78bfa);border-color:#a78bfa99;transform:scale(1);box-shadow:0 0 0 4px #a78bfa33}.wizardTitle{color:var(--ink);font-weight:700}.wizardViewport{width:100%;overflow:hidden}.wizardTrack{will-change:transform;width:300%;transition:transform .42s cubic-bezier(.2,.9,.2,1);display:flex}.wizardStep{box-sizing:border-box;flex:0 0 33.3333%;min-width:0;padding:16px 18px 18px}.wizardActions{border-top:2px solid var(--stroke);background:#f8fafcd9;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px 16px;display:flex}.wizardSummary{border:2px solid var(--stroke);background:#f0f9ffa6;border-radius:18px;padding:12px 14px}.wizardSummaryRow{justify-content:space-between;gap:12px;padding:6px 4px;display:flex}.wizardSummaryLabel{color:var(--ink-soft);text-transform:uppercase;font-size:12px;font-weight:800;font-family:var(--font-display)}.wizardSummaryValue{font-family:var(--font-display);color:var(--ink);font-weight:700}.loadingOverlay{z-index:200;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffcf8d1;justify-content:center;align-items:center;padding:24px 16px;display:flex;position:fixed;inset:0}.loadingCard{text-align:center;background:linear-gradient(#fffefb,#e0f2fe);border:3px solid #fffffff2;border-radius:26px;width:min(560px,92vw);padding:26px 22px 22px;box-shadow:0 24px 70px #3d3a6226}.loadingAnim{height:64px;margin-bottom:10px;position:relative}.loadingOrb{background:#60a5fa;border-radius:999px;width:18px;height:18px;margin:auto;position:absolute;inset:0;box-shadow:0 0 0 6px #60a5fa33,0 0 22px #60a5fa73}.loadingOrb.orb1{animation:1.1s linear infinite orbSpin,1.1s ease-in-out infinite orbPulse}.loadingOrb.orb2{background:#fbbf24;animation:1.1s linear infinite reverse orbSpin,1.1s ease-in-out .15s infinite orbPulse;box-shadow:0 0 0 6px #fbbf2433,0 0 22px #fbbf2473}.loadingOrb.orb3{background:#f472b6;animation:1.1s linear infinite orbSpin,1.1s ease-in-out .3s infinite orbPulse;box-shadow:0 0 0 6px #f472b633,0 0 22px #f472b666}@keyframes orbSpin{0%{transform:translate(-52px)scale(.95)}33%{transform:translate(0)translateY(-14px)scale(1.02)}66%{transform:translate(52px)scale(.98)}to{transform:translate(-52px)scale(.95)}}@keyframes orbPulse{0%,to{filter:saturate()brightness()}50%{filter:saturate(1.15)brightness(1.08)}}.loadingTitle{font-size:1.35rem;font-family:var(--font-display);color:var(--ink);margin:0;font-weight:700}.loadingSub{color:var(--ink-soft);margin-top:8px;font-weight:700}.loadingNoteBlock{margin:18px 0 0;padding:0 6px}.loadingNote{color:var(--ink-soft);text-align:center;margin:0;padding:0;font-size:.9rem;font-weight:600;line-height:1.5}.loadingNote+.loadingNote{margin-top:12px}.loadingDoNotClose{color:#dc2626;text-align:center;letter-spacing:.01em;margin:16px 0 0;font-size:.95rem;font-weight:800}.nameSetupPage .nameSetupMain{flex:1;justify-content:center;align-items:flex-start;padding:32px 16px 48px;display:flex}.nameSetupCard{width:100%;max-width:520px}.nameSetupTitle{color:var(--ink);margin:0 0 8px;font-size:1.6rem;font-weight:700}.nameSetupSub{color:var(--ink-soft);margin:0 0 20px;font-weight:600}.nameSetupStepKicker{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);margin:0 0 6px;font-size:.78rem;font-weight:800}.nameSetupSection.nameSetupSectionFirst{border-top:none;margin-top:0;padding-top:0}.nameSetupReview{text-align:center}.nameSetupReviewLine{color:var(--ink);margin:0 0 12px;font-size:1.02rem;font-weight:600}.nameSetupReviewLine:last-child{margin-bottom:0}.nameSetupActions{margin-top:16px}.nameSetupActionsWizard{justify-content:space-between}.checkboxCard{border:2px solid var(--stroke);cursor:pointer;background:#ffffffe6;border-radius:18px;align-items:flex-start;gap:14px;padding:16px 18px;transition:border-color .15s,box-shadow .15s;display:flex}.checkboxCard:hover{border-color:#a78bfa73;box-shadow:0 6px 20px #3d3a6214}.checkboxCard input{accent-color:#a78bfa;flex-shrink:0;width:20px;height:20px;margin-top:4px}.checkboxCard span{text-align:left;flex-direction:column;gap:6px;display:flex}.checkboxCardSub{color:var(--ink-soft);font-size:13px;font-weight:600;line-height:1.45}.nameSetupSection{border-top:2px solid var(--stroke);margin-top:22px;padding-top:18px}.nameSetupSectionTitle{font-size:1.05rem;font-weight:700;font-family:var(--font-display);color:var(--ink);margin:0 0 4px}.nameSetupSectionSub{color:var(--ink-soft);margin:0 0 12px;font-size:13px;font-weight:600}.optionRow{flex-wrap:wrap;gap:10px;display:flex}.optionCol{flex-direction:column;gap:10px;display:flex}.radioCard{border:2px solid var(--stroke);cursor:pointer;background:#ffffffd9;border-radius:18px;align-items:flex-start;gap:12px;padding:14px 16px;transition:border-color .15s,box-shadow .15s;display:flex}.radioCard:hover{border-color:#a78bfa73;box-shadow:0 6px 20px #3d3a6214}.radioCard input{accent-color:#a78bfa;margin-top:4px}.radioCard span{text-align:left;flex-direction:column;gap:4px;display:flex}.radioCardSub{color:var(--ink-soft);font-size:13px;font-weight:600}.gamePlayPage{box-sizing:border-box;background:radial-gradient(900px 520px at 50% 0,#fef3c780,#0000 55%),linear-gradient(#e8f4fc,#fdf4ff 50%,#e8fce8 100%);flex-direction:column;flex:1;height:100dvh;min-height:100dvh;max-height:100dvh;display:flex;overflow:hidden}.gamePlayPage .siteHeader{display:none}.gamePlayPage .gamePlayMain{flex-direction:column;flex:1 1 0;align-items:stretch;width:100%;max-width:none;min-height:0;margin:0;padding:0;display:flex;overflow:hidden}.gamePlayGridBoard{flex:1;justify-content:center;align-items:center;width:100%;min-height:0;padding:4px 6px 8px;display:flex}.gamePlayGridBoard.gamePlayGridBoardWide{flex:1 1 0;justify-content:stretch;align-self:stretch;align-items:stretch;width:100%;height:100%;min-height:0;padding:6px 10px 10px}.gamePlayPage .grid{--playBoard:min(calc(100vw - 12px), calc(100dvh - 168px));width:var(--playBoard);height:var(--playBoard);aspect-ratio:1;align-content:stretch;gap:clamp(3px,.9vmin,7px);max-width:calc(100vw - 12px);max-height:calc(100dvh - 168px)}.gamePlayPage .grid.gridBoardWide{width:100%;min-width:0;max-width:none;height:100%;min-height:0;max-height:none;aspect-ratio:unset;flex:1 1 0;align-content:stretch;align-self:stretch;gap:clamp(4px,.7vmin,10px)}.gamePlayPage .grid.gridBoardWide .tile{aspect-ratio:unset;border-radius:clamp(10px,1.8vmin,18px);width:100%;min-width:0;height:100%;min-height:0}.gamePlayPage .grid.gridBoardWide .tileNum{font-size:clamp(22px,min(5vw,11vmin),56px)}.gamePlayPage .tile.tileWithEmoji{container:playTile/size}.gamePlayPage .tile.tileWithEmoji .tileEmoji{z-index:1;text-align:center;justify-content:center;align-items:center;max-width:88%;max-height:88%;font-family:Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji,sans-serif;font-size:clamp(30px,min(50cqmin,16vmin),92px);line-height:1;display:flex;position:relative}.gamePlayPage .grid.gridBoardWide .tileSpark{width:160%;max-width:280px;height:160%;max-height:200px}.gamePlayPage .tile{border-width:3px;border-color:#ffffff8c;border-radius:clamp(12px,2.4vmin,22px);box-shadow:0 5px #3d3a621f,inset 0 2px #ffffff59}.gamePlayPage .tile:hover{filter:brightness(1.04);transform:translateY(-2px)scale(1.015)}.gamePlayPage .tileNum,.gamePlayPage .tileEmoji{text-shadow:0 2px #0000001f,0 6px 18px #0003;filter:drop-shadow(0 1px #ffffff40)}.gamePlayPage .tileSpark{opacity:.4}.gamePlayPage .tile.used{background:#94a3b8;border-color:#475569f2;box-shadow:inset 0 2px 8px #0f172a26}.gamePlayPage .tile.used:hover,.gamePlayPage .tile.used:active{filter:none;transform:none}.gamePlayBar{color:var(--ink);background:radial-gradient(circle at 12% 20%,#ffdc968c,#0000 45%),radial-gradient(circle at 88% 30%,#ffb4dc66,#0000 40%),linear-gradient(#fffdf5,#ffecc8);border-bottom:3px solid #ffffffa6;flex-wrap:wrap;flex-shrink:0;justify-content:center;align-items:center;gap:12px 16px;padding:12px 14px 14px;display:flex;box-shadow:0 8px 28px #3d3a6214}.gamePlayBar .btn{color:var(--ink);background:#ffffffd9;border-color:#3d3a621f}.gamePlayBar .btn:hover{border-color:#60a5fa80;box-shadow:0 8px 18px #3d3a621a}.gamePlayPlayers{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.gamePlayPlayers.scoreHero{flex:1;justify-content:center;width:100%}.gamePlayPlayers.gamePlayPlayersMany{flex-wrap:wrap;gap:10px}.gamePlayPlayers.gamePlayPlayersMany .playerPill{padding:8px 12px}.gamePlayPlayers.gamePlayPlayersMany .playerPillName{font-size:clamp(.92rem,1.8vw,1.12rem)}.gamePlayPlayers.gamePlayPlayersMany .playerPillScore{font-size:clamp(1.15rem,2.4vw,1.55rem)}.playerPill{background:#ffffffbf;border:2px solid #3d3a6214;border-radius:16px;align-items:center;gap:10px;padding:10px 14px;display:flex}.playerPill.active{background:linear-gradient(135deg,#bfdbfea6,#fffffff2);border-color:#60a5fa8c;box-shadow:0 0 0 4px #60a5fa2e}.playerPillName{font-family:var(--font-display);color:var(--ink);font-size:clamp(1.05rem,2.2vw,1.35rem);font-weight:700}.playerPillScore{font-family:var(--font-display);color:#2563eb;font-size:clamp(1.55rem,3vw,2.1rem);font-weight:700}.animatedScore{font-variant-numeric:tabular-nums;min-width:2ch;display:inline-block}.gamePlayVs{font-family:var(--font-display);color:#3d3a6266;font-weight:700}.gamePlayTurnBlock{text-align:center;flex:1;width:100%;min-width:200px}.gamePlayTurn{color:var(--ink);font-size:clamp(14px,2vw,17px);font-weight:800;font-family:var(--font-display);margin:0 0 4px}.gamePlayScoringHint{color:#3d3a628c;margin:0;font-size:12px;font-weight:700}.gamePlayBarLinks{gap:8px;display:flex}.classicGridPlayBar{grid-template-columns:minmax(0,1fr) minmax(140px,1fr) auto;place-items:center stretch;gap:12px 18px;display:grid}.classicGridPlayBar .gamePlayPlayers.scoreHero{flex:unset;justify-content:flex-start;justify-self:start;width:auto}.classicGridPlayBar .gamePlayTurnBlock{flex:unset;text-align:center;width:auto;min-width:0}.classicGridPlayBar .gamePlayTurn{margin:0}.gamePlayBarRight{flex-wrap:wrap;justify-self:end;align-items:center;gap:12px;display:flex}.classicGridPlayBar .slHeaderTimer{min-width:clamp(158px,22vw,200px);padding:10px 16px 12px}.classicGridPlayBar .slHeaderTimerValue{font-size:clamp(1.55rem,3.2vw,2.25rem)}@media (width<=900px){.classicGridPlayBar{grid-template-columns:1fr;justify-items:stretch}.classicGridPlayBar .gamePlayPlayers.scoreHero{justify-content:center;justify-self:stretch;width:100%}.classicGridPlayBar .gamePlayTurnBlock{order:2}.classicGridPlayBar .gamePlayBarRight{order:3;justify-content:center;justify-self:stretch}.classicGridPlayBar .slHeaderTimer{min-width:min(100%,220px)}}.tile.locked{opacity:.72;filter:saturate(.65);background:linear-gradient(#cbd5e1,#94a3b8)}.tile.tileFun{background-image:none;box-shadow:0 5px #3d3a6224,inset 0 2px #ffffff47}.tile.tileFun0{background:linear-gradient(165deg,#ffb347,coral)}.tile.tileFun1{background:linear-gradient(165deg,#ff9de2,#e879f9)}.tile.tileFun2{background:linear-gradient(165deg,#ff8a8a,#f87171)}.tile.tileFun3{background:linear-gradient(165deg,#7bed9f,#2ed573)}.tile.tileFun4{background:linear-gradient(165deg,#74c0fc,#4dabf7)}.tile.tileFun5{background:linear-gradient(165deg,#ffe066,#fcc419)}.tile.tileFun6{background:linear-gradient(165deg,#da77f2,#ae3ec9)}.tile.tileFun7{background:linear-gradient(165deg,#8cecff,#3bc9db)}.tile[class*=tileFun].used{opacity:.9;filter:brightness(.78)saturate(.95);border-color:#00000014;box-shadow:0 2px #3d3a621f}.tile[class*=tileFun].used .tileNum,.tile[class*=tileFun].used .tileEmoji{color:#fffffff2}.tile[class*=tileFun].locked{opacity:.8;filter:saturate(.55)brightness(.9)}.modalOverlay{z-index:100}.modalKickerEmoji{font-size:clamp(2.5rem,8vw,3.5rem);line-height:1}.modalTurnHint{text-align:center;color:var(--ink-soft);margin:0;font-size:15px;font-weight:600}.tileEmoji{font-size:clamp(2rem,5vw,3.25rem);line-height:1.05;display:block}.tile.tileTierGreen{background:radial-gradient(120px 80px at 25% 20%,#ffffff59,#0000 55%),linear-gradient(#69e49a,#22c55e);border-color:#dcfce7d9}.tile.tileTierOrange{background:radial-gradient(120px 80px at 25% 20%,#ffffff4d,#0000 55%),linear-gradient(#ffb366,#f97316);border-color:#ffedd5e6}.tile.tileTierRed{background:radial-gradient(120px 80px at 25% 20%,#ffffff47,#0000 55%),linear-gradient(#fb7185,#e11d48);border-color:#ffe4e6e6}.tile.locked.tileTierGreen,.tile.locked.tileTierOrange,.tile.locked.tileTierRed{opacity:.62}.celebrationBody{justify-content:center;align-items:center;min-height:220px;padding:32px 16px;display:flex}.pointsCelebration{text-align:center}.pointsCelebrationKicker{font-family:var(--font-display);color:#db2777;text-transform:uppercase;letter-spacing:.08em;margin:0 0 4px;font-size:14px;font-weight:700}.pointsCelebrationLabel{color:var(--ink-soft);margin:0;font-size:13px;font-weight:700}.pointsCelebrationNumber{font-family:var(--font-display);background:linear-gradient(135deg,#22d3ee,#a78bfa,#f472b6);color:#0000;-webkit-text-fill-color:transparent;filter:drop-shadow(0 4px 12px #a78bfa59);-webkit-background-clip:text;background-clip:text;margin:8px 0 0;font-size:clamp(4rem,14vw,7rem);font-weight:700;line-height:1;animation:.55s cubic-bezier(.2,.9,.2,1.2) both popScore}@keyframes popScore{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}.celebrateOverlay,.gameOverOverlay{z-index:360;-webkit-backdrop-filter:blur(9px)saturate(1.15);backdrop-filter:blur(9px)saturate(1.15);background:radial-gradient(circle at 22% 16%,#fb718552,#0000 46%),radial-gradient(circle at 78% 84%,#22d3ee47,#0000 46%),radial-gradient(circle at 68% 12%,#facc153d,#0000 42%),#1412238f;justify-content:center;align-items:center;padding:22px;display:flex;position:fixed;inset:0}.celebrateCard,.gameOverCard{text-align:center;transform-origin:50%;background:radial-gradient(circle at 15% 0,#ffffff73,#0000 45%),linear-gradient(145deg,#fff8f1 0%,#ffe4f0 26%,#e0f2fe 55%,#fef3c7 100%);border:3px solid #ffffffeb;border-radius:32px;width:100%;max-width:680px;padding:clamp(28px,4vw,46px) clamp(22px,3.6vw,38px);animation:.7s cubic-bezier(.2,1.08,.2,1) both celebrateCardIn;box-shadow:0 28px 90px #17133380,0 0 0 7px #ffffff42,inset 0 1px #ffffffd9}.celebrateKicker,.gameOverKicker{color:#6b21a8;font-family:var(--font-display);text-transform:uppercase;letter-spacing:.16em;margin:0 0 6px;font-size:12px;font-weight:900}.celebrateTitle,.gameOverTitle{color:#0f172a;text-shadow:0 1px #ffffffb3;margin:0 0 10px;font-size:clamp(1.95rem,4.7vw,3.15rem);font-weight:900;line-height:1.12}.celebrateWinnerName,.gameOverWinner{font-family:var(--font-display);letter-spacing:.02em;background:linear-gradient(130deg,#ec4899 0%,#7c3aed 33%,#06b6d4 67%,#f59e0b 100%);color:#0000;-webkit-text-fill-color:transparent;filter:drop-shadow(0 5px 20px #ec489952);-webkit-background-clip:text;background-clip:text;margin:0 0 12px;font-size:clamp(2rem,8.2vw,4.35rem);font-weight:900;line-height:1;animation:.86s cubic-bezier(.2,1.1,.2,1) both celebrateWinnerPop}.celebrateSubtitle{color:#0f172ad6;margin:0 0 18px;font-size:clamp(1rem,2.5vw,1.22rem);font-weight:700;line-height:1.45}.celebrateDetails{margin:0 0 20px}.gameOverScores{text-align:left;gap:10px;margin:0;display:grid}.gameOverScoreRow{border:2px solid var(--stroke);font-family:var(--font-display);background:#ffffffd9;border-radius:16px;justify-content:space-between;align-items:center;padding:12px 14px;font-weight:600;display:flex}.celebrateActions,.gameOverActions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.celebrateActions .btn,.celebrateActions a.btn,.gameOverActions .btn,.gameOverActions a.btn{text-align:center;justify-content:center;min-width:150px}@keyframes celebrateCardIn{0%{opacity:0;transform:translateY(18px)scale(.9)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes celebrateWinnerPop{0%{opacity:0;transform:scale(.55)}66%{opacity:1;transform:scale(1.08)}to{opacity:1;transform:scale(1)}}.gameModePage .gameModeMain{max-width:900px;margin:0 auto;padding:24px 16px 48px}.gameModeCard{padding:28px 24px 24px}.gameModeTitle{font-family:var(--font-display);color:var(--ink);margin:0 0 8px;font-size:clamp(1.5rem,3.5vw,2rem);font-weight:800}.gameModeSub{color:var(--ink-soft);margin:0 0 24px;font-size:15px;font-weight:600}.gameModeGrid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;margin-bottom:20px;display:grid}@media (width<=640px){.gameModeGrid{grid-template-columns:1fr}}.gameModeChoice{text-align:left;border:3px solid var(--stroke);cursor:pointer;font:inherit;color:var(--ink);background:#ffffffe0;border-radius:20px;flex-direction:column;align-items:flex-start;gap:8px;padding:20px 18px;transition:border-color .15s,box-shadow .15s,transform .12s;display:flex;position:relative}.gameModeTierBadge{z-index:1;text-transform:uppercase;letter-spacing:.07em;pointer-events:none;border-radius:999px;padding:5px 9px;font-size:10px;font-weight:800;position:absolute;top:12px;right:12px}.gameModeTierBadgeFree{color:#065f46;background:linear-gradient(#d1fae5,#a7f3d0);border:2px solid #10b98173}.gameModeTierBadgePro{color:#92400e;background:linear-gradient(#fef3c7,#fde68a);border:2px solid #f59e0b8c}.gameModeChoice:hover:not(:disabled){border-color:#60a5fa8c;transform:translateY(-2px);box-shadow:0 10px 28px #3d3a621a}.gameModeChoiceDisabled,.gameModeChoice:disabled{opacity:.55;cursor:not-allowed;transform:none}.gameModeChoiceKicker{text-transform:uppercase;letter-spacing:.08em;color:#3d3a6273;font-size:12px;font-weight:800}.gameModeChoiceTitle{font-family:var(--font-display);font-size:1.35rem;font-weight:800}.gameModeChoiceBody{color:var(--ink-soft);font-size:14px;font-weight:600;line-height:1.45}.gameModeChoiceWarn{color:#b45309;margin-top:4px;font-size:13px;font-weight:700}.gameModeChoiceImageNote{color:#dc2626;margin-top:2px;font-size:13px;font-weight:800}.gameModeActions{gap:10px;display:flex}.gameModeStudyWrap{margin-bottom:22px}.gameModeStudyChoice{text-align:left;cursor:pointer;width:100%;font:inherit;color:var(--ink);background:linear-gradient(135deg,#a78bfa61 0%,#69e49a6b 45%,#ffd66661 100%);border:none;border-radius:24px;align-items:center;gap:16px;padding:22px 22px 22px 20px;transition:transform .15s,box-shadow .15s;display:flex;position:relative;box-shadow:0 0 0 3px #ffffffe0,0 0 0 6px #a78bfa80,0 16px 40px #3d3a6229}.gameModeStudyChoice:hover{transform:translateY(-3px);box-shadow:0 0 0 3px #fffffff2,0 0 0 6px #42c3ff8c,0 22px 48px #3d3a6233}.gameModeStudyBadge{z-index:1;position:absolute;top:12px;right:12px}.gameModeStudySparkle{filter:drop-shadow(0 2px 4px #0000001a);flex-shrink:0;font-size:2.25rem;line-height:1}.gameModeStudyInner{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.gameModeStudyKicker{text-transform:uppercase;letter-spacing:.12em;color:#3d3a6285;font-size:11px;font-weight:800}.gameModeStudyHeadline{font-family:var(--font-display);color:var(--ink);font-size:clamp(1.35rem,3.5vw,1.85rem);font-weight:800;line-height:1.2}.gameModeStudyBody{color:var(--ink-soft);max-width:52ch;font-size:14px;font-weight:650;line-height:1.5}.gameModeStudyGo{font-family:var(--font-display);background:linear-gradient(#fff,#fff8f0);border:3px solid #3d3a621f;border-radius:999px;flex-shrink:0;padding:12px 18px;font-size:15px;font-weight:800;box-shadow:0 4px #3d3a621a}.gameModeSplit{align-items:center;gap:14px;margin:8px 0 20px;display:flex}.gameModeSplitLine{background:linear-gradient(90deg, transparent, var(--stroke-strong), transparent);border-radius:2px;flex:1;height:2px}.gameModeSplitText{text-transform:uppercase;letter-spacing:.1em;color:#3d3a626b;white-space:nowrap;font-size:12px;font-weight:800}@media (width<=560px){.gameModeStudyChoice{flex-wrap:wrap}.gameModeStudyGo{text-align:center;width:100%}}.studySlideshowPage{background:linear-gradient(165deg,#fff4e6 0%,#e8f4ff 35%,#f3e8ff 70%,#e6fcf0 100%);flex-direction:column;min-height:100dvh;display:flex}.studySlideshowTop{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 16px;width:100%;max-width:960px;margin:0 auto;padding:12px 18px 8px;display:flex}.studySlideshowBack{font-weight:800}.studySlideshowProgress{flex-wrap:wrap;align-items:center;gap:10px 14px;display:flex}.studySlideshowProgressBadge{font-family:var(--font-display);color:var(--ink);background:linear-gradient(#fff,#fef3c7);border:3px solid #ffa72673;border-radius:999px;padding:8px 16px;font-size:17px;font-weight:800;box-shadow:0 4px #fa8c162e}.studySlideshowProgressHint{color:#3d3a6280;font-size:12px;font-weight:700}.studySlideshowMain{flex-direction:column;flex:1;width:100%;max-width:920px;min-height:0;margin:0 auto;padding:8px 16px 16px;display:flex}.studySlideCard{background:linear-gradient(145deg,#fffffff7 0%,#fff8f0f0 100%);border:4px solid #fffffff2;border-radius:28px;flex-direction:column;flex:1;gap:20px;min-height:0;padding:clamp(20px,4vw,36px);animation:.45s cubic-bezier(.22,1,.36,1) studyCardPop;display:flex;box-shadow:0 0 0 3px #a78bfa38,0 24px 60px #3d3a621f}.studySlideCard--qImgTxt{gap:14px;padding:clamp(14px,3vw,24px)}.studySlideCard--qImgTxt>.studySlideSection{gap:10px}.studySlideCard--qImgTxt>.studySlideSection .studySlideImage{max-height:min(34vh,300px)}.studySlideCard--qImgTxt>.studySlideSection .studySlideQuestionText{padding:2px 6px 0;font-size:clamp(.95rem,2.35vw,1.4rem);line-height:1.32}.studySlideCard--aImgTxt{gap:14px;padding:clamp(14px,3vw,24px)}.studySlideCard--aImgTxt .studySlideAnswerPanel .studySlideImage{max-height:min(32vh,280px)}.studySlideCard--aImgTxt .studySlideAnswerText{font-size:clamp(.95rem,2.35vw,1.4rem);line-height:1.32}.studySlideCard--aImgTxt .studySlideAnswerPanel{gap:10px;padding:14px 16px 16px}.studySlideCard--qImgTxt.studySlideCard--aImgTxt{gap:10px;padding:clamp(12px,2.5vw,20px)}.studySlideCard--qImgTxt.studySlideCard--aImgTxt>.studySlideSection .studySlideImage,.studySlideCard--qImgTxt.studySlideCard--aImgTxt .studySlideAnswerPanel .studySlideImage{max-height:min(24vh,200px)}.studySlideCard--qImgTxt.studySlideCard--aImgTxt>.studySlideSection .studySlideQuestionText,.studySlideCard--qImgTxt.studySlideCard--aImgTxt .studySlideAnswerText{font-size:clamp(.88rem,2.05vw,1.22rem);line-height:1.3}.studySlideCard--qImgTxt.studySlideCard--aImgTxt .studySlideAnswerPanel{gap:8px;padding:10px 12px 12px}.studySlideCard--qImgTxt.studySlideCard--aImgTxt .studySlideToggleRow{padding:0}.studySlideCard--qImgTxt.studySlideCard--aImgTxt .studyAnswerToggle{padding:10px 20px;font-size:15px;box-shadow:0 4px #6d28d924}.studySlideCard--qImgTxt.studySlideCard--aImgTxt .studySlideNav{gap:8px;padding-top:4px}.studySlideCard--qImgTxt.studySlideCard--aImgTxt .studySlideEyebrow{font-size:11px}@keyframes studyCardPop{0%{opacity:0;transform:translateY(16px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.studySlideSection{flex-direction:column;align-items:stretch;gap:16px;display:flex}.studySlideEyebrow{text-transform:uppercase;letter-spacing:.14em;color:#42c3fff2;text-shadow:0 1px #fffc;font-size:12px;font-weight:800}.studySlideEyebrowAnswer{color:#ff8ac7f2}.studySlideImageBtn{cursor:zoom-in;background:linear-gradient(#f8fafc,#e0f2fe);border:none;border-radius:22px;align-self:center;width:100%;max-width:min(100%,680px);margin:0;padding:0;overflow:hidden;box-shadow:inset 0 0 0 4px #ffffffe6,0 12px 32px #0e74901f}.studySlideImageBtnAnswer{background:linear-gradient(#fffbeb,#fef3c7);box-shadow:inset 0 0 0 4px #ffffffe6,0 12px 32px #f59e0b24}.studySlideImage{object-fit:contain;width:100%;height:auto;max-height:min(52vh,480px);display:block}.studySlideQuestionText{font-family:var(--font-display);color:var(--ink);text-align:center;margin:0;padding:8px 8px 0;font-size:clamp(1.6rem,4.5vw,2.85rem);font-weight:700;line-height:1.28}.studySlidePictureHint{text-align:center;color:var(--ink-soft);margin:0;font-size:clamp(1.05rem,2.8vw,1.35rem);font-weight:700;line-height:1.4}.studySlideMuted{color:#3d3a6273;font-weight:700}.studySlideToggleRow{justify-content:center;padding:4px 0;display:flex}.studyAnswerToggle{font-family:var(--font-display);color:var(--ink);background:linear-gradient(#faf5ff,#ede9fe);border:3px solid #a78bfa73;border-radius:999px;padding:14px 28px;font-size:clamp(16px,2.8vw,19px);font-weight:800;transition:transform .12s,box-shadow .12s;box-shadow:0 6px #6d28d929}.studyAnswerToggle:hover{transform:translateY(-2px)}.studyAnswerToggleOn{background:linear-gradient(#ecfdf5,#d1fae5);border-color:#69e49aa6;box-shadow:0 6px #10b98133}.studySlideAnswerPanel{background:linear-gradient(135deg,#fff1a8e0 0%,#ffd699e6 50%,#ffb7c5c7 100%);border:3px dashed #ff7a6e7a;border-radius:22px;flex-direction:column;align-items:stretch;gap:14px;padding:20px 20px 22px;display:flex}.studySlideAnswerText{font-family:var(--font-display);color:var(--ink);text-align:center;margin:0;font-size:clamp(1.45rem,4vw,2.5rem);font-weight:800;line-height:1.25}.studySlideNav{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:8px;display:flex}.studyNavBtn{min-width:120px;font-weight:800}.studyNavBtn:disabled{opacity:.4}.studySlideDots{flex-wrap:wrap;justify-content:center;gap:6px;max-width:min(100%,300px);max-height:56px;display:flex;overflow-y:auto}.studyDot{background:#3d3a622e;border-radius:999px;flex-shrink:0;width:9px;height:9px}.studyDot.active{background:linear-gradient(135deg, var(--ocean), var(--grape));transform:scale(1.35);box-shadow:0 0 0 2px #ffffffe6}.tttPlayPage .tttPlayBar .gamePlayPlayers{justify-content:center}.tttPlayPage .playerPillScore{display:none}.tttPillMark{color:#2563eb;font-weight:800}.tttBoardWrap{justify-content:center;align-items:center}.tttBoard{aspect-ratio:1;background:linear-gradient(145deg,#1e293b,#0f172a);border-radius:20px;grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(3,1fr);gap:8px;width:min(100vw - 24px,min(92vw,420px));max-width:420px;padding:10px;display:grid;box-shadow:0 16px 48px #0f172a59,inset 0 1px #ffffff0f}.tttCell{cursor:pointer;font:inherit;background:linear-gradient(#f8fafc,#e2e8f0);border:none;border-radius:12px;justify-content:center;align-items:center;transition:transform .1s,filter .1s;display:flex;position:relative;box-shadow:0 4px #0f172a2e,inset 0 1px #ffffffe6}.tttCell:hover:not(:disabled){filter:brightness(1.03);transform:translateY(-2px)}.tttCellMuted{opacity:.75;cursor:default}.tttCellFilled{cursor:default;background:linear-gradient(#94a3b8,#64748b);box-shadow:inset 0 3px 12px #0f172a59,0 2px #0f172a33}.tttCellFilled:hover{filter:none;transform:none}.tttCellLabel{font-family:var(--font-display);color:#334155;text-shadow:0 1px #fff9;font-size:clamp(1.4rem,5vmin,2rem);font-weight:800}.tttMark{font-family:var(--font-display);text-shadow:0 2px #0003;font-size:clamp(2.2rem,10vmin,3.5rem);font-weight:900;line-height:1}.tttMarkX{color:#fef08a}.tttMarkO{color:#7dd3fc}.tttGameOverCard{text-align:center}.tttGameOverSub{color:var(--ink-soft);margin:0 0 16px;font-size:15px;font-weight:600}.tttGameOverMarks{text-align:left;border:2px solid var(--stroke);font-family:var(--font-display);background:#ffffffe6;border-radius:16px;flex-direction:column;gap:8px;margin:0 0 22px;padding:14px 16px;font-size:15px;font-weight:600;display:flex}.tttGameOverXo{font-size:1.1em}.tttGameOverActions{flex-direction:column}.c4ReviewSwatch{vertical-align:-3px;border:2px solid #0000001f;border-radius:50%;width:14px;height:14px;margin-right:6px;display:inline-block}.c4ReviewRed{background:linear-gradient(165deg,#f87171,#dc2626);box-shadow:inset 0 2px #ffffff59}.c4ReviewYellow{background:linear-gradient(165deg,#fde047,#ca8a04);box-shadow:inset 0 2px #ffffff73}.c4PlayPage{background:radial-gradient(120% 80% at 50% -20%,#ffc87873,#0000 50%),#fc6 linear-gradient(#ffc94d 0%,#ffb347 35%,#fc6 100%)!important}.c4PlayPage:before{content:"";pointer-events:none;opacity:.14;z-index:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80' viewBox='0 0 80 80'%3E%3Ctext x='10' y='28' font-size='22' fill='%23b45309'%3E♥%3C/text%3E%3Ctext x='44' y='52' font-size='18' fill='%23b45309'%3E★%3C/text%3E%3Ctext x='20' y='68' font-size='16' fill='%23b45309'%3E✎%3C/text%3E%3C/svg%3E");position:fixed;inset:0}.c4PlayPage .c4PlayBar,.c4PlayPage .gamePlayBar{z-index:1;background:radial-gradient(circle at 10% 30%,#ffffffa6,#0000 42%),linear-gradient(#fffdf0f2,#ffe6aaeb);border-bottom-color:#ffffff8c;position:relative}.gamePlayPage .gamePlayMain.c4PlayMain{align-items:center}.c4PlayMain{z-index:1;flex:1;justify-content:center;align-items:center;min-height:0;padding:8px 12px 16px;display:flex;position:relative}.c4MainInner{justify-content:center;align-items:center;width:100%;max-width:min(1040px,100%);margin-left:auto;margin-right:auto;display:flex}.c4PlayPlayers{gap:14px!important}.c4PlayerCard{background:#ffffffeb;border:3px solid #ffffffd9;border-radius:18px;flex-direction:column;align-items:center;gap:8px;min-width:120px;padding:12px 18px 14px;transition:border-color .2s,box-shadow .2s,transform .2s;display:flex;box-shadow:0 6px #b453091f}.c4PlayerCardActive{border-color:#7c3aed;transform:translateY(-1px);box-shadow:0 0 0 3px #7c3aed40,0 8px #7c3aed26}.c4PlayerCardName{font-family:var(--font-display);color:var(--ink);text-align:center;font-size:.95rem;font-weight:800}.c4PlayerDiscDot{border:3px solid #ffffffe6;border-radius:50%;width:36px;height:36px;box-shadow:0 4px #0000001f,inset 0 3px 8px #ffffff59}.c4DotRed{background:radial-gradient(circle at 32% 28%,#fca5a5,#dc2626 45%,#991b1b)}.c4DotYellow{background:radial-gradient(circle at 32% 28%,#fef9c3,#eab308 50%,#a16207)}.c4Vs{color:#78350fbf;font-weight:900}.c4Stage{justify-content:center;width:100%;display:flex}.c4BoardFrame{background:linear-gradient(#fffffff7,#fffaebf0);border:4px solid #fffffff2;border-radius:clamp(18px,3vw,28px);width:100%;max-width:min(840px,100%);padding:clamp(14px,2.8vw,26px);box-shadow:0 20px 50px #78350f2e,inset 0 1px #ffffffe6}.c4BoardFace{grid-template-columns:repeat(7,1fr);align-items:end;gap:clamp(4px,1vw,10px);display:grid}.c4Column{flex-direction:column;align-items:stretch;gap:8px;min-width:0;display:flex}.c4ColHead{font-family:var(--font-display);cursor:pointer;color:#fff;text-shadow:0 2px #0f172a,0 0 0 2px #1e40af;background:linear-gradient(#1d4ed8,#0b3a8c);border:none;border-radius:14px;padding:10px 4px 12px;font-size:clamp(1.2rem,4.6vmin,1.9rem);font-weight:900;line-height:1;transition:transform .12s,filter .15s;box-shadow:0 5px #0f172a59,inset 0 2px #fff3}.c4ColHead:hover:not(:disabled){filter:brightness(1.06);transform:translateY(-2px)}.c4ColHead:active:not(:disabled){transform:translateY(1px)}.c4ColHead:disabled,.c4ColHeadFull{opacity:.45;cursor:not-allowed;filter:grayscale(.2)}.c4ColumnTrack{aspect-ratio:1/6.15;background:linear-gradient(#0369a1,#0c4a6e 55%,#082f49);border:3px solid #ffffff1f;border-radius:clamp(12px,2vmin,20px);grid-template-rows:repeat(6,1fr);width:100%;padding:clamp(6px,1.35vmin,11px);display:grid;position:relative;box-shadow:inset 0 6px 16px #00000059,0 8px #0f172a33}.c4Cell{justify-content:center;align-items:center;min-height:0;display:flex}.c4Hole{aspect-ratio:1;background:radial-gradient(circle at 50% 42%,#f8fafc,#e2e8f0 55%,#cbd5e1);border-radius:50%;justify-content:center;align-items:center;width:82%;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 4px 10px #0f172a59,0 2px #ffffff40}.c4Disc{aspect-ratio:1;border-radius:50%;width:78%;box-shadow:0 4px #0000002e,inset 0 3px 10px #ffffff73}.c4DiscPlaced{animation:.38s cubic-bezier(.34,1.35,.64,1) forwards c4DiscLand}@keyframes c4DiscLand{0%{opacity:.85;transform:scale(.65)}60%{transform:scale(1.08)}to{opacity:1;transform:scale(1)}}.c4DiscRed{background:radial-gradient(circle at 32% 28%,#fecaca,#ef4444 45%,#b91c1c)}.c4DiscYellow{background:radial-gradient(circle at 32% 28%,#fef9c3,#eab308 48%,#a16207)}.c4FallingWrap{pointer-events:none;z-index:5;justify-content:center;display:flex;position:absolute;inset:0}.c4DiscFalling{aspect-ratio:1;will-change:top, transform;filter:drop-shadow(0 6px 8px #00000059);width:74%;max-width:52px;animation:.72s cubic-bezier(.28,.85,.32,1.12) forwards c4DiscDrop;position:absolute;top:-14.1667%;left:50%;transform:translate(-50%)}@keyframes c4DiscDrop{0%{top:-14.1667%;transform:translate(-50%)scale(.94)}72%{top:calc((100% / 6) * (var(--c4-land-row) + .52));transform:translate(-50%,-50%)scale(1.03)}88%{top:calc((100% / 6) * (var(--c4-land-row) + .5));transform:translate(-50%,-50%)scale(.98)}to{top:calc((100% / 6) * (var(--c4-land-row) + .5));transform:translate(-50%,-50%)scale(1)}}@media (prefers-reduced-motion:reduce){.c4DiscFalling{animation-duration:.01ms!important}.c4DiscPlaced{animation:none!important}}.c4GameOverCard{background:linear-gradient(#fffefb,#fff7ed)}.c4GameOverSub{color:var(--ink-soft);margin:0 0 18px;font-size:15px;font-weight:600}.c4GameOverDiscs{text-align:left;border:2px solid var(--stroke);background:#ffffffeb;border-radius:16px;flex-direction:column;gap:10px;margin:0 0 22px;padding:14px 16px;font-weight:600;display:flex}.c4GameOverDiscRow{align-items:center;gap:10px;display:flex}.c4MiniDisc{border:2px solid #0000001a;border-radius:50%;flex-shrink:0;width:22px;height:22px}.c4MiniRed{background:radial-gradient(circle at 30% 25%,#fca5a5,#dc2626)}.c4MiniYellow{background:radial-gradient(circle at 30% 25%,#fef08a,#ca8a04)}.c4GameOverActions{flex-direction:column}.bonusModalOverlay{z-index:60;background:#5b21b647}.bonusModalCard{background:linear-gradient(165deg,#fefce8 0%,#fff7ed 40%,#fdf4ff 100%);border-width:3px;border-color:#a78bfa8c;width:min(440px,100%);box-shadow:0 28px 70px #5b21b638,inset 0 1px #ffffffe6}.bonusModalBody{text-align:center;padding:22px 20px 10px}.bonusEmoji{filter:drop-shadow(0 6px 12px #5b21b633);margin-bottom:8px;font-size:clamp(3.5rem,14vw,5rem);line-height:1;animation:.55s cubic-bezier(.34,1.4,.64,1) both bonusPop}@keyframes bonusPop{0%{opacity:0;transform:scale(.5)rotate(-8deg)}to{opacity:1;transform:scale(1)rotate(0)}}.bonusTitle{font-family:var(--font-display);color:var(--ink);margin:0 0 10px;font-size:clamp(1.35rem,4vw,1.75rem);font-weight:800}.bonusDescription{color:var(--ink-soft);margin:0;font-size:1rem;font-weight:600;line-height:1.45}.bonusHint{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);margin:18px 0 10px;font-size:.88rem;font-weight:800}.bonusPlayerPickGrid{flex-direction:column;gap:10px;margin-top:4px;display:flex}.bonusPlayerPickBtn{width:100%;font-family:var(--font-display);border-radius:16px;justify-content:center;padding:14px 16px;font-weight:700}.bonusModalActions{justify-content:center;padding:0 18px 20px}@media (prefers-reduced-motion:reduce){.bonusEmoji{animation:none}}.memoryMatchPage{--mem-chrome:calc(120px + min(200px, 30dvh) + 32px + env(safe-area-inset-top,0px) + env(safe-area-inset-bottom,0px));flex-direction:column;height:100dvh;max-height:100dvh;display:flex;overflow:hidden;background:radial-gradient(90% 60% at 50% -10%,#a78bfa59,#0000 55%),linear-gradient(185deg,#fdf4ff 0%,#e0f2fe 50%,#fef9c3 100%)!important}.memoryMatchPage>.topbar,.memoryMatchPage>.memoryMatchBar{flex-shrink:0}.memoryMatchBar{background:linear-gradient(#fffffff0,#faf5ffe0);border-bottom:2px solid #ffffffa6;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.memoryMatchPlayers{flex-wrap:wrap;flex:1;gap:8px;min-width:0;display:flex}.memoryMatchPlayersMany .playerPill{font-size:13px}.memoryMatchTurn{color:var(--ink-soft);text-align:center;order:3;width:100%;margin:0;font-size:14px;font-weight:700}.memoryMatchActions{gap:8px;display:flex}.memoryMatchDisplayConfig{background:#ffffffb8;border:1px solid #7c3aed33;border-radius:12px;align-items:center;gap:8px;padding:8px 10px;display:inline-flex}.memoryMatchDisplayLabel{color:#6d28d9;font-size:12px;font-weight:800}.memoryMatchABSelect{border-radius:10px;width:auto;min-width:112px;padding:7px 10px;font-size:13px}.memoryMatchMain{flex:1;justify-content:center;align-items:center;width:100%;min-height:0;padding:6px 8px 10px;display:flex;overflow:hidden}.memoryMatchEmpty{text-align:center;max-width:420px;color:var(--ink-soft);margin:24px auto;font-weight:700;line-height:1.45}.memoryBackFaceRow{flex-wrap:wrap;gap:12px;margin-top:8px;display:flex}.memoryBackFaceBtn{min-width:120px;font-weight:800}.memoryGrid{--mem-cols:4;--mem-rows:3;width:min(calc(100vw - 16px), calc((100dvh - var(--mem-chrome)) * var(--mem-cols) / var(--mem-rows)));max-width:calc(100vw - 16px);max-height:calc(100dvh - var(--mem-chrome));aspect-ratio:var(--mem-cols) / var(--mem-rows);box-sizing:border-box;place-items:stretch stretch;gap:clamp(4px,1.1vmin,10px);margin:0 auto;display:grid}.memoryCardOuter{aspect-ratio:1;cursor:pointer;width:100%;min-width:0;max-width:100%;min-height:0;font:inherit;-webkit-tap-highlight-color:transparent;background:0 0;border:none;border-radius:16px;padding:0;display:block;position:relative}.memoryCardOuter:disabled{cursor:default}.memoryCardOuter:not(:disabled):hover .memoryCard3d{filter:brightness(1.03)}.memoryCardPerspectiveShell{perspective:1100px;perspective-origin:50%;position:absolute;inset:0}.memoryCard3d{width:100%;height:100%;transform-style:preserve-3d;-webkit-transform-style:preserve-3d;border-radius:16px;transition:transform .55s cubic-bezier(.4,.2,.2,1);position:absolute;inset:0}.memoryCardOuterFlipped .memoryCard3d,.memoryCardOuterMatched .memoryCard3d{transform:rotateY(180deg)}.memoryCardFace{backface-visibility:hidden;border:3px solid #ffffffd9;border-radius:16px;justify-content:center;align-items:center;padding:10px;display:flex;position:absolute;inset:0;box-shadow:0 8px #5b21b61f,inset 0 1px #ffffff80}.memoryCardBack{color:#fef08a;background:linear-gradient(145deg,#7c3aed,#4f46e5 40%,#312e81);transform:translateZ(1px)}.memoryCardBackGlyph{font-family:var(--font-display);text-shadow:0 4px #0003;-webkit-user-select:none;user-select:none;font-weight:900;line-height:1}.memoryCardBackNumber{font-size:clamp(1.75rem,7vmin,2.75rem)}.memoryCardBackEmoji{text-shadow:0 2px #00000026;font-family:Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji,sans-serif;font-size:clamp(2.25rem,9vmin,3.25rem)}.memoryCardFront{background:linear-gradient(165deg,#fffefb,#e0f2fe);flex-direction:column;align-items:stretch;gap:6px;overflow:hidden;transform:rotateY(180deg)translateZ(1px)}.memoryCardFaceStack{flex-direction:column;flex:auto;justify-content:center;align-items:center;gap:6px;width:100%;min-width:0;min-height:0;display:flex}.memoryCardFaceStackImageOnly{justify-content:center;gap:0}.memoryCardOuterMatched .memoryCardFront{border-color:#34d399d9;box-shadow:0 0 0 3px #10b98140,0 8px #10b98126}.memoryCardText{font-weight:800;font-family:var(--font-display);text-align:center;color:var(--ink);overflow-wrap:anywhere;word-break:break-word;-webkit-hyphens:auto;hyphens:auto;-webkit-overflow-scrolling:touch;flex:auto;width:100%;min-height:0;padding:2px 2px 0;line-height:1.28;overflow:hidden auto}.memoryCardTextLenXS{font-size:clamp(15px,5vmin,26px)}.memoryCardTextLenShort{font-size:clamp(14px,4vmin,21px)}.memoryCardTextLenMid{font-size:clamp(12px,3.2vmin,17px)}.memoryCardTextLenLong{font-size:clamp(11px,2.6vmin,14px);line-height:1.32}.memoryCardImg{object-fit:contain;border-radius:10px;flex-shrink:1;width:auto;max-width:100%;height:auto;min-height:0;max-height:min(52%,140px)}.memoryCardFaceStackImageOnly .memoryCardImg,.memoryCardFaceStackImageOnly .memoryCardImgLightboxHit{max-width:96%;max-height:min(86%,220px)}.memoryCardFaceStackImageOnly .memoryCardImgLightboxHit{flex:auto;min-height:0}.memoryCardImgLightboxHit{cursor:zoom-in;border-radius:10px;flex-shrink:1;justify-content:center;align-items:center;max-width:100%;min-height:0;max-height:min(52%,140px);transition:box-shadow .2s,transform .2s;display:flex}.memoryCardImgLightboxHit:hover{transform:scale(1.02);box-shadow:0 0 0 3px #a78bfa73}.memoryCardImgLightboxHit:focus-visible{outline:3px solid var(--grape);outline-offset:2px}.memoryCardImgLightboxHit .memoryCardImg{width:auto;max-height:100%}.memoryCardFaceStackImageOnly .memoryCardImgLightboxHit .memoryCardImg{max-height:min(86%,220px)}.memoryCardFaceHint{color:#3d3a6259;text-transform:uppercase;font-size:11px;font-weight:800;position:absolute;bottom:6px;right:8px}.memoryGameOverOverlay{z-index:280;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#3d3a626b;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.memoryGameOverCard{text-align:center;width:100%;max-width:420px;padding:28px 22px 24px}.memoryGameOverTitle{font-family:var(--font-display);margin:0 0 10px;font-size:1.75rem;font-weight:800}.memoryGameOverWinner{color:var(--ink-soft);margin:0 0 16px;font-weight:600}.memoryGameOverScores{text-align:left;margin:0 0 20px;padding-left:20px;font-weight:600}.memoryGameOverBtns{flex-direction:column;gap:10px;display:flex}.snakesPlayerBlock{border-top:2px dashed var(--stroke);margin-top:8px;padding-top:12px}.snakesPlayerTitle{margin-bottom:4px!important;font-size:1rem!important}.snakesEmojiPick{flex-wrap:wrap;gap:8px;display:flex}.snakesEmojiBtn{border:3px solid var(--stroke);cursor:pointer;background:#ffffffe6;border-radius:12px;width:44px;height:44px;font-size:1.35rem;transition:transform .12s,border-color .12s}.snakesEmojiBtn:hover{border-color:#60a5fa8c;transform:scale(1.06)}.snakesEmojiBtnActive{border-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed33}.snakesReviewEmoji{margin-right:6px;font-size:1.4rem}.snakesLaddersPage{color:#1e3a5f;flex-direction:column;flex:1;width:100%;min-height:0;display:flex;background:radial-gradient(90% 55% at 70% 8%,#fde0c880,#0000 50%),radial-gradient(70% 45% at 15% 90%,#bae6fd73,#0000 48%),radial-gradient(50% 40% at 90% 60%,#fbcfe859,#0000 45%),linear-gradient(175deg,#bae6fd 0%,#e0f2fe 35%,#fce7f3 70%,#fef3c7 100%)!important}.snakesLaddersPage .siteHeader{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffb8;border-bottom-color:#7dd3fc59}.slTopBar{background:#ffffff8c;border-bottom:1px solid #0e749026;flex-shrink:0;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px 14px;padding:8px 12px;display:grid}.slTopActions{flex-wrap:wrap;justify-self:end;align-items:center;gap:8px;display:flex}.slTopRight{justify-content:flex-end;align-items:center;gap:12px;display:flex}.slTopActions .musicToggleBtnCompact{align-self:center}.musicToggleIssue{color:#b91c1c;white-space:normal;text-align:left;max-width:280px;margin-top:4px;font-size:11px;line-height:1.3;display:block}.musicToggleIssueCompact{color:#b91c1c;white-space:normal;text-align:left;max-width:180px;margin-top:4px;font-size:10px;line-height:1.25;display:block}.slPlayers{flex-wrap:wrap;justify-self:start;gap:8px;display:flex}.slTopRollWrap{justify-self:center}.slTopRollBtn{min-width:clamp(190px,24vw,280px);min-height:56px;font-family:var(--font-display);letter-spacing:.02em;color:#fff;background:linear-gradient(135deg,#f97316,#ec4899 56%,#a855f7);border:3px solid #ffffffe6;border-radius:999px;justify-content:center;padding:14px 26px;font-size:clamp(1.05rem,1.5vw,1.3rem);font-weight:900;animation:1.7s ease-in-out infinite slTopRollGlow;box-shadow:0 10px #be185d47,0 0 0 4px #fbbf2457,0 0 24px #ec489961}.slTopRollBtn:hover:not(:disabled){transform:translateY(-1px)scale(1.01);box-shadow:0 11px #be185d42,0 0 0 5px #fbbf2470,0 0 30px #ec48997a}.slTopRollBtn:disabled{opacity:.68;filter:saturate(.65);animation:none;box-shadow:0 6px #94a3b852}@keyframes slTopRollGlow{0%,to{box-shadow:0 10px #be185d47,0 0 0 4px #fbbf2457,0 0 24px #ec489957}50%{box-shadow:0 10px #be185d47,0 0 0 6px #fbbf2480,0 0 34px #ec489985}}.slPlayerPill{color:#0c4a6e;background:#ffffffe0;border:2px solid #0ea5e940;border-radius:999px;align-items:center;gap:8px;padding:8px 14px;font-size:14px;font-weight:600;display:flex}.slPlayerPill.active{background:linear-gradient(135deg,#fffefb,#fce7f3);border-color:#ec48998c;box-shadow:0 0 0 3px #fbcfe899}.slPlayerScore{color:#db2777;margin-left:4px;font-size:12px;font-weight:800}.slPlayerEmoji{font-size:1.25rem;line-height:1}.slHeaderTimer{background:linear-gradient(135deg,#fffffff0,#fbcfe8b8);border:2px solid #ec489959;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;min-width:170px;padding:8px 14px 10px;display:flex;box-shadow:0 8px 22px #ec489929,inset 0 1px #ffffffbf}.slHeaderTimerLabel{letter-spacing:.12em;text-transform:uppercase;color:#9d174d;margin-bottom:2px;font-size:11px;font-weight:800}.slHeaderTimerValue{font-family:var(--font-display);color:#7e22ce;text-shadow:0 1px #ffffffb8;font-size:clamp(1.45rem,2.7vw,2rem);font-weight:900;line-height:1}.slHeaderTimerNoLimit{background:linear-gradient(135deg,#fffffff0,#bfdbfeb8);border-color:#0ea5e959}.slHeaderTimerNoLimit .slHeaderTimerLabel{color:#155e75}.slHeaderTimerNoLimit .slHeaderTimerValue{color:#0f766e}.slTopActions .btn{color:#0c4a6e;border-color:#0ea5e959}.slMain{flex:1;grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(168px,238px) minmax(0,1fr);align-items:start;gap:12px 26px;width:100%;max-width:none;min-height:0;margin:0;padding:6px clamp(14px,3.2vw,36px) 12px;display:grid}.slLegendPanel{color:#0c4a6e;background:#ffffffd1;border:2px solid #0ea5e938;border-radius:16px;max-height:min(72dvh,100%);padding:14px 14px 16px;font-size:13px;line-height:1.4;position:sticky;top:6px;overflow-y:auto;box-shadow:0 8px 24px #0e749014}.slLegendTitle{font-family:var(--font-display);color:#155e75;margin:0 0 10px;font-size:15px;font-weight:800}.slLegendList{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.slLegendItem{align-items:flex-start;gap:10px;display:flex}.slLegendSwatch{border-radius:8px;flex-shrink:0;width:12px;height:44px;margin-top:2px;box-shadow:inset 0 1px #ffffff80}.slLegendSwatchLadder{background:linear-gradient(#6ee7b7,#34d399);border:2px solid #05966959}.slLegendSwatchSnake{background:linear-gradient(#f0abfc,#e879f9);border:2px solid #c026d359}.slLegendSwatchCoin{background:radial-gradient(circle at 30% 25%,#fef9c3,#facc15 55%,#eab308);border:clamp(2px,.35vmin,3px) solid #d97706;border-radius:50%;justify-content:center;align-items:center;width:clamp(28px,9vmin,40px);height:clamp(28px,9vmin,40px);margin-top:4px;display:flex;box-shadow:0 2px #b4530959}.slLegendMiniStar{color:#92400e;text-shadow:0 1px #fff6;font-size:clamp(12px,3.8vmin,18px);font-weight:900;line-height:1}.slLegendStrong{color:#0e7490;margin-bottom:2px;display:block}.slLegendText{color:#0c4a6ee0;margin:0;font-size:13px;font-weight:600;line-height:1.5}.slCenterPlay{grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr) minmax(210px,300px);align-items:start;gap:10px 20px;min-width:0;min-height:0;display:grid}.slBoardColumn{justify-content:flex-end;align-items:flex-start;min-width:0;min-height:0;padding:2px 8px 2px 2px;display:flex}.slDiceColumn{flex-direction:column;flex-shrink:0;gap:10px;padding:2px 0 2px 4px;display:flex}.slInfoCard{background:#ffffffe6;border:2px solid #0ea5e938;border-radius:16px;flex-direction:column;gap:10px;padding:14px 14px 16px;display:flex;box-shadow:0 8px 24px #0e749017}@media (width<=900px){.slTopBar{grid-template-columns:1fr;justify-items:stretch}.slPlayers{justify-self:stretch}.slTopRollWrap{justify-content:center;justify-self:center;width:100%;display:flex}.slTopRollBtn{width:min(100%,340px)}.slTopActions{justify-content:center;justify-self:stretch}.slTopRight{flex-wrap:wrap;justify-content:center;justify-self:stretch}.slHeaderTimer{min-width:190px}.slMain{grid-template-rows:auto minmax(0,1fr);grid-template-columns:1fr;align-items:stretch;gap:10px;padding:4px clamp(12px,4vw,22px) 10px}.slLegendPanel{order:0;max-height:none;position:static}.slCenterPlay{order:1;grid-template-rows:minmax(0,1fr) auto;grid-template-columns:1fr;min-height:0}.slBoardColumn{order:0;justify-content:center}.slDiceColumn{flex-flow:wrap;order:1;align-items:center;gap:8px}.slInfoCard{width:100%}.slTurnLine{flex:100%;margin:0;font-size:14px}.slDiceBox{flex-shrink:0;width:84px;padding:10px 6px}.slDiceFace{font-size:2.4rem}.slRollBtn{flex:1;min-width:120px}.slHint{flex:100%;margin:0;font-size:12px}}.slTurnLine{color:#164e63;margin:0;font-size:15px;font-weight:600;line-height:1.45}.slDiceBox{text-align:center;background:linear-gradient(160deg,#6ee7b7,#34d399);border:3px solid #ffffffd9;border-radius:20px;padding:16px;transition:box-shadow .3s,transform .3s;box-shadow:0 6px #05966959}.slDiceRolling{animation:.7s ease-in-out slDiceShake;box-shadow:0 0 28px #38bdf859}@keyframes slDiceShake{0%,to{transform:rotate(0)}20%{transform:rotate(-10deg)translateY(-2px)}40%{transform:rotate(8deg)translateY(1px)}60%{transform:rotate(-6deg)}80%{transform:rotate(4deg)}}.slDiceLabel{text-transform:uppercase;letter-spacing:.12em;color:#064e3bbf;margin-bottom:6px;font-size:11px;font-weight:800;display:block}.slDiceFace{font-family:var(--font-display);color:#fff;text-shadow:0 3px #05966973;font-size:3.25rem;font-weight:900;line-height:1}.slRollBtn{justify-content:center;width:100%}.slHint{color:#0c4a6ec7;margin:0;font-size:13px;font-weight:500;line-height:1.45}.slBoardScene{box-sizing:border-box;width:min(100%,114.667dvh - 137.6px,100vw - 300px);max-width:100%;margin:0 auto;position:relative}.slBoardPaperRip{opacity:.55;pointer-events:none;z-index:2;background:repeating-linear-gradient(90deg,#0000,#0000 6px,#fff6 6px 8px);border-radius:4px;height:14px;position:absolute;top:-6px;left:5%;right:5%}@media (width<=900px){.slBoardScene{width:min(100vw - 16px,120dvh - 264px)}}.slBoardGlow{pointer-events:none;z-index:0;background:radial-gradient(circle at 50% 35%,#fbcfe859,#0000 55%);position:absolute;inset:-10%}.slBoardFrame{--sl-frame-pad:clamp(8px, 1.4vmin, 16px);--sl-grid-border:2px;z-index:1;box-sizing:border-box;width:100%;padding:var(--sl-frame-pad);background:linear-gradient(#fffefb 0%,#f0f9ff 55%,#fff7ed 100%);border:3px solid #fffffff2;border-radius:clamp(14px,2vmin,22px);position:relative;box-shadow:0 20px 50px #0e74902e,0 2px #0ea5e91f,inset 0 1px #ffffffe6;container:sl-board/inline-size}.slBoardGridWrap{aspect-ratio:8/6;border:var(--sl-grid-border) solid #7dd3fc59;box-sizing:border-box;background:linear-gradient(145deg,#e0f2fee6,#fef3c780);border-radius:clamp(12px,1.8vmin,18px);width:100%;position:relative;overflow:hidden}.slBoardGrid{box-sizing:border-box;border:0;gap:0;width:100%;height:100%;padding:0;display:grid;position:absolute;inset:0}.slCell{font-family:var(--font-display);color:#0369a1;background:linear-gradient(165deg,#fffefb,#e0f2fe 45%,#bae6fd);border:1px solid #7dd3fc66;border-radius:0;justify-content:center;align-items:center;font-size:clamp(12px,min(3.2vw,3.5vh),26px);font-weight:800;display:flex;position:relative;box-shadow:inset 0 2px #ffffffe6,0 2px #0e749014}.slCellLadderLow{color:#065f46;background:linear-gradient(165deg,#ecfdf5,#a7f3d0)}.slCellLadderHigh{color:#047857;background:linear-gradient(165deg,#d1fae5,#6ee7b7)}.slCellSnakeHead{color:#9d174d;background:linear-gradient(165deg,#fdf2f8,#fbcfe8)}.slCellSnakeTail{color:#6b21a8;background:linear-gradient(165deg,#faf5ff,#e9d5ff)}.slCellStar{box-shadow:inset 0 0 0 2px #fef3c7e6,0 0 0 2px #eab30873,0 4px 14px #fbbf244d}.slCellFinish{color:#9a3412;background:linear-gradient(165deg,#ffedd5,#fdba74)}.slCellNum{opacity:.92;text-shadow:0 1px #fffc}.slCellNumUnderCoin{opacity:.22}.slStarCoinLayer{inset:var(--sl-grid-border);pointer-events:none;z-index:3;position:absolute}.slStarCoinBoard{box-sizing:border-box;width:clamp(1.35rem,10.2cqw,5rem);height:clamp(1.35rem,10.2cqw,5rem);animation:2.4s ease-in-out infinite slStarCoinFloat;position:absolute;transform:translate(-50%,-50%)}.slStarCoinBoardDisk{background:radial-gradient(circle at 32% 28%,#fffef0 0%,#fef08a 35%,#facc15 70%,#eab308 100%);border:clamp(2px,.32cqw,3px) solid #d97706;border-radius:50%;position:absolute;inset:0;box-shadow:inset 0 3px 8px #ffffffa6,inset 0 -4px 10px #b4530940,0 4px #b4530933}.slStarCoinBoardStar{color:#92400e;text-shadow:0 1px #ffffff80,0 -1px #78350f59;filter:drop-shadow(0 1px 2px #0000001f);font-size:clamp(.78rem,5.8cqw,1.85rem);font-weight:900;line-height:1;position:absolute;top:50%;left:50%;transform:translate(-50%,-54%)}@keyframes slStarCoinFloat{0%,to{transform:translate(-50%,-50%)scale(1)}50%{transform:translate(-50%,-53%)scale(1.02)}}.slFinishIcon{filter:drop-shadow(0 1px #fffc);font-size:clamp(11px,2vmin,18px);line-height:1;position:absolute;bottom:3px;left:4px}.slSvg{inset:var(--sl-grid-border);pointer-events:none;z-index:2;width:auto;height:auto;position:absolute;overflow:hidden}.slPathLadder{stroke-width:1.5px;stroke-linecap:round;opacity:.88;filter:drop-shadow(0 2px 4px #22d3ee66)}.slPathSnake{stroke-width:1.85px;stroke-linecap:round;opacity:.9;filter:drop-shadow(0 2px 5px #f472b673)}.slSnakeHeadSvg{filter:drop-shadow(0 1px 3px #00000040)}.slSnakeHeadCore{fill:#f472b6;stroke:#9d174d;stroke-width:.22px}.slSnakeHeadEye{fill:#1f2937}.slSnakeTongue{stroke:#be123c;stroke-width:.16px;stroke-linecap:round;fill:none}.slPathPulse{animation:.85s ease-in-out 2 slPathGlow}@keyframes slPathGlow{0%,to{stroke-width:1.1px;opacity:.85}50%{stroke-width:2px;opacity:1}}.slTokenLayer{inset:var(--sl-grid-border);pointer-events:none;z-index:4;position:absolute}.slToken{text-shadow:0 0 0 3px #fffffff2,0 2px #0c4a6e40;filter:drop-shadow(0 3px 4px #0000001f);z-index:5;font-size:clamp(2.7rem,8.4vmin,4rem);line-height:1;transition:top .11s cubic-bezier(.33,1,.68,1),left .11s cubic-bezier(.33,1,.68,1),transform .11s;position:absolute}.slStartStrip{text-align:center;background:#ffffffa6;border:2px dashed #0ea5e959;border-radius:18px;margin-top:14px;padding:12px 16px}.slStartLabel{color:#0e7490;margin-bottom:10px;font-size:13px;font-weight:700;display:block}.slStartDock{justify-content:center;align-items:center;gap:4px;min-height:56px;display:flex}.slTokenStart{justify-content:center;align-items:center;display:inline-flex;position:relative}.slBonusToast{z-index:200;color:#fff;background:linear-gradient(100deg,#4c1d95,#7c3aed 50%,#c026d3);border-radius:999px;align-items:center;gap:12px;padding:14px 22px;font-size:15px;font-weight:700;animation:.45s cubic-bezier(.34,1.4,.64,1) both slBonusPop;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 16px 40px #4c1d9573}@keyframes slBonusPop{0%{opacity:0;transform:translate(-50%)translateY(20px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.slBonusStar{font-size:1.4rem;animation:1.5s ease-in-out infinite slStarTwinkle}.slDiceRevealOverlay{z-index:350;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0f172a8c;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.slDiceRevealCard{text-align:center;background:linear-gradient(#fffefb 0%,#e0f2fe 100%);border:3px solid #fffffff2;border-radius:28px;width:100%;max-width:420px;padding:36px 32px 32px;box-shadow:0 28px 70px #0e749040}.slDiceRevealKicker{color:#155e75;margin:0 0 8px;font-size:1.15rem;font-weight:700}.slDiceRevealNum{font-family:var(--font-display);color:#0369a1;text-shadow:0 4px #ffffffe6,0 8px 24px #0ea5e959;margin:12px 0 16px;font-size:clamp(5.5rem,28vw,10rem);font-weight:900;line-height:1}.slDiceRevealSub{color:#0c4a6ec7;margin:0 0 22px;font-size:.95rem;font-weight:600;line-height:1.4}.slDiceRevealBtn{min-width:160px;font-size:1.05rem;font-weight:800}.slWinOverlay{z-index:320;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0f172aa6;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.slWinCard{text-align:center;background:linear-gradient(#fffefb,#fce7f3);border:3px solid #f472b673;width:100%;max-width:400px;padding:32px 24px 28px}.slWinTitle{font-family:var(--font-display);color:#0c4a6e;margin:0 0 8px;font-size:2rem;font-weight:900}.slWinSub{color:#155e75;margin:0 0 22px;font-size:1.1rem;font-weight:600}.slStarModalOverlay{z-index:340;background:#1e1b4b80}.slStarModal{text-align:center;background:linear-gradient(#fffbeb 0%,#fff7ed 40%,#fffefb 100%);border:3px solid #eab308a6;width:min(420px,100%);padding:28px 24px 24px;box-shadow:0 24px 60px #78350f40,inset 0 1px #ffffffe6}.slStarModalCoin{width:min(120px,42vw);height:min(120px,42vw);margin:0 auto 16px;position:relative}.slStarModalCoinRing{background:radial-gradient(circle at 32% 28%,#fffef0 0%,#0000 42%),linear-gradient(145deg,#fde047 0%,#eab308 25%,#ca8a04 55%,#a16207 85%,#fde68a 100%);border-radius:50%;animation:.7s cubic-bezier(.34,1.4,.64,1) both slStarModalCoinSpin;position:absolute;inset:0;box-shadow:0 0 0 4px #fef3c7f2,0 0 0 7px #ca8a0466,inset 0 4px 14px #fffbebcc,inset 0 -6px 16px #78350f66,0 14px 28px #92400e66}.slStarModalCoinStar{color:#78350f;text-shadow:0 2px #ffffff80,0 -1px #451a0359;filter:drop-shadow(0 4px 6px #0000001f);font-size:clamp(2.75rem,14vw,3.75rem);font-weight:900;line-height:1;position:absolute;top:50%;left:50%;transform:translate(-50%,-54%)}@keyframes slStarModalCoinSpin{0%{opacity:0;transform:scale(.4)rotate(-40deg)}to{opacity:1;transform:scale(1)rotate(0)}}.slStarModalTitle{font-family:var(--font-display);color:#92400e;margin:0 0 10px;font-size:1.65rem;font-weight:900}.slStarModalBody{color:#451a03;margin:0 0 22px;font-size:1.08rem;font-weight:700;line-height:1.45}.slStarModalActions{justify-content:center;display:flex}.snakesBonusYesNo{flex-wrap:wrap;gap:12px;margin-top:8px;display:flex}.snakesBonusYesNoBtn{min-width:120px;font-weight:800}@media (prefers-reduced-motion:reduce){.memoryCard3d{transition-duration:.01ms}.slDiceRolling,.slPathPulse,.slStarCoinBoard,.slStarModalCoinRing,.slBonusToast{animation:none!important}.slToken{transition:none}}.vocabBuilderPage{min-height:100dvh}.vbMain{max-width:960px;margin:0 auto;padding:24px 16px 60px}.vbHeader{text-align:center;margin-bottom:32px}.vbHeaderIcon{border-radius:16px;width:64px;height:64px;margin-bottom:10px}.vbTitle{font-family:var(--font-display);color:var(--ink);margin:0 0 8px;font-size:2rem;font-weight:900}.vbSub{color:var(--ink-soft);margin:0 0 20px;font-size:1rem;line-height:1.5}.vbNonOtcHint{color:var(--ink);background:linear-gradient(135deg,#fef3c7a6,#fde68a59);border:1px solid #f59e0b59;border-radius:14px;margin:-8px 0 16px;padding:12px 16px;font-size:.95rem;line-height:1.45}.vbCreateBtn{border-radius:14px;padding:12px 28px;font-size:1rem;font-weight:800}.vbModal-overlay{z-index:900;background:#3d3a5573;justify-content:center;align-items:center;padding:16px;animation:.2s vbFadeIn;display:flex;position:fixed;inset:0}.vbModal h2{font-family:var(--font-display);margin:0 0 16px;font-size:1.3rem;font-weight:800}.vbLabel{color:var(--ink);margin-bottom:14px;font-size:.92rem;font-weight:700;display:block}.vbRequired{color:var(--coral)}.vbOptional{color:var(--ink-soft);font-size:.85rem;font-weight:600}.vbInput{width:100%;font-family:var(--font-body);border:2px solid var(--stroke-strong);background:var(--cream);color:var(--ink);border-radius:12px;outline:none;margin-top:6px;padding:10px 14px;font-size:.95rem;font-weight:600;transition:border-color .15s,box-shadow .15s;display:block}.vbInput:focus{border-color:var(--ocean);box-shadow:0 0 0 3px #42c3ff33}.vbTextarea{resize:vertical;min-height:64px}.vbModalActions{justify-content:flex-end;gap:10px;margin-top:18px;display:flex}.vbError{color:var(--coral);background:#ff7a6e1a;border-radius:10px;margin:12px 0;padding:10px 14px;font-size:.9rem;font-weight:700}.vbNotice{color:#92400e;background:#ffd54f33;border-radius:10px;margin:10px 0;padding:10px 14px;font-size:.9rem;font-weight:700}.vbLoading{text-align:center;color:var(--ink-soft);padding:60px 0}.vbSpinner{border:4px solid var(--stroke);border-top-color:var(--ocean);border-radius:50%;width:40px;height:40px;margin:0 auto 12px;animation:.7s linear infinite vbSpin}.vbSpinnerSmall{border-width:3px;width:20px;height:20px;margin:0}@keyframes vbSpin{to{transform:rotate(360deg)}}.vbEmpty{text-align:center;color:var(--ink-soft);padding:48px 20px}.vbEmptyIcon{margin-bottom:12px;font-size:3rem}.vbEmptyIconImg{border-radius:16px;width:72px;height:72px;margin-bottom:12px}.vbEmptyText{color:var(--ink-soft);font-style:italic}.vbUsageMeter{color:var(--ink-soft);background:var(--smoke);border-radius:10px;align-items:center;gap:8px;width:fit-content;margin-bottom:10px;padding:6px 14px;font-size:.82rem;display:flex}.vbUsageMeterLabel{font-weight:600}.vbUsageMeterCount{color:var(--ink);font-weight:800}.vbUsageMeterCount.vbUsageWarn{color:#d97706}.vbUsageMeterCount.vbUsageFull{color:#dc2626}.vbTableGrid{grid-template-columns:1fr;gap:16px;display:grid}@media (width>=640px){.vbTableGrid{grid-template-columns:repeat(2,1fr);gap:20px}}@media (width>=960px){.vbTableGrid{grid-template-columns:repeat(3,1fr);gap:22px}}.vbTableCard{background:var(--white);border:2px solid var(--stroke);cursor:pointer;border-radius:16px;flex-direction:column;padding:20px;transition:transform .15s,box-shadow .15s,border-color .15s;display:flex;position:relative}.vbTableCard:hover{border-color:var(--ocean);transform:translateY(-3px);box-shadow:0 12px 32px #3d3a551f}.vbTableCardHead{align-items:center;gap:10px;margin-bottom:6px;display:flex}.vbTableCardIcon{font-size:1.4rem}.vbTableCardIconImg{object-fit:cover;border-radius:7px;flex-shrink:0;width:28px;height:28px}.vbTableCardHead h3{font-family:var(--font-display);margin:0;font-size:1.1rem;font-weight:800}.vbTableCardTopic{color:var(--ink-soft);margin:0 0 10px;font-size:.88rem}.vbTableCardMeta{color:var(--ink-soft);justify-content:space-between;margin-top:auto;font-size:.82rem;display:flex}.vbTableCardDelete{cursor:pointer;opacity:0;background:0 0;border:none;font-size:1rem;transition:opacity .15s;position:absolute;top:10px;right:10px}.vbTableCard:hover .vbTableCardDelete{opacity:.6}.vbTableCardDelete:hover{opacity:1!important}.vbDetailHeader{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.vbDetailHeaderLeft{flex:1;min-width:0}.vbDetailHeaderRight{flex-shrink:0}.vbBackLink{color:var(--ocean);margin-bottom:8px;font-size:.9rem;font-weight:700;text-decoration:none;display:inline-block}.vbBackLink:hover{text-decoration:underline}.vbTopicBadge{background:var(--lavender);color:var(--grape);border-radius:20px;align-items:center;gap:6px;margin-top:4px;padding:4px 12px;font-size:.82rem;font-weight:700;display:inline-flex}.vbTopicBadgeIcon{object-fit:cover;border-radius:4px;width:18px;height:18px}.vbModeToggle{background:#e8eef7;border-radius:12px;gap:2px;padding:3px;display:inline-flex}.vbModeToggleBtn{color:var(--ink-soft);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:10px;padding:8px 20px;font-size:.88rem;font-weight:700;transition:background .15s,color .15s,box-shadow .15s}.vbModeToggleBtn.active{background:var(--white);color:var(--ocean);box-shadow:0 2px 8px #00000014}.vbModeToggleBtn:hover:not(.active){color:var(--ink)}.vbEditActions{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:20px;display:flex}.vbNewRowBtn{color:var(--white);cursor:pointer;background:#16b870;border:none;border-radius:10px;padding:8px 18px;font-size:.88rem;font-weight:700;transition:background .15s,transform .1s}.vbNewRowBtn:hover{background:#12a562;transform:translateY(-1px)}.vbGenerateAllBtn{border-radius:10px;padding:8px 20px;font-size:.88rem;font-weight:700}.vbActionBtn{border-radius:10px;padding:8px 16px;font-size:.85rem;font-weight:700}.vbTableWrap{background:var(--white);border:2px solid #dde3ed;border-radius:16px;overflow-x:auto;box-shadow:0 2px 12px #3d3a550f}.vbTable{border-collapse:collapse;table-layout:fixed;width:100%}.vbTableHeader{background:#edf2f9}.vbTableHeader th{text-align:left;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.04em;border-bottom:2px solid #dde3ed;padding:12px 14px;font-size:.78rem;font-weight:800}.vbThVocab{width:16%}.vbThDef{width:24%}.vbThSentence{width:26%}.vbThImage{width:14%}.vbThActions{width:20%}.vbTableView .vbThVocab{width:14%}.vbTableView .vbThDef{width:24%}.vbTableView .vbThSentence{width:26%}.vbTableView .vbThImage{width:18%}.vbTableView .vbThProgress{box-sizing:border-box;width:18%;min-width:156px;padding-left:12px;padding-right:14px}.vbTableView .vbTdProgress{box-sizing:border-box;width:18%;min-width:156px;padding:14px 14px 14px 12px;overflow:visible}.vbTableView .vbProgressPicker{box-sizing:border-box;flex-wrap:nowrap;justify-content:center;width:100%;max-width:100%;padding:0 2px}.vbTableView .vbProgressLabel{box-sizing:border-box;word-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;max-width:100%;margin-left:auto;margin-right:auto;padding-left:4px;padding-right:4px}.vbTableRow{border-bottom:1px solid #edf2f9;transition:background .12s}.vbTableRow:last-child{border-bottom:none}.vbTableRow:hover{background:#f7f9fc}.vbRowGenerating{background:#42c3ff0f}.vbTd{vertical-align:top;color:var(--ink);padding:14px;font-size:.92rem;line-height:1.5}.vbCellWordWrap{align-items:center;gap:6px;display:flex}.vbCellWord{font-family:var(--font-display);color:var(--ink);font-size:1rem;font-weight:800}.vbPlaceholder{color:var(--ink-soft);font-size:.85rem;font-weight:400}.vbCellInput{width:100%;font-family:var(--font-body);color:var(--ink);background:#fafbfe;border:2px solid #d0d7e2;border-radius:8px;outline:none;padding:8px 10px;font-size:.9rem;font-weight:600;transition:border-color .15s,box-shadow .15s;display:block}.vbCellInput:focus{border-color:var(--ocean);box-shadow:0 0 0 3px #42c3ff2e}.vbCellAiBtn{cursor:pointer;opacity:.5;background:0 0;border:none;border-radius:4px;flex-shrink:0;padding:2px 4px;font-size:.8rem;transition:opacity .15s}.vbCellAiBtn:hover{opacity:1;background:#42c3ff1a}.vbCellText{line-height:1.55}.vbCellEmpty{background:#f0f3f8;border-radius:6px;min-height:32px}.vbImgLightboxTrigger{cursor:zoom-in;vertical-align:middle;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;margin:0;padding:0;line-height:0;display:inline-flex}.vbImgLightboxTrigger:focus-visible{outline:3px solid var(--ocean);outline-offset:3px}.vbImgLightboxTrigger:hover .vbCellImg,.vbImgLightboxTrigger:hover .vbViewImg{transform:scale(1.03);box-shadow:0 10px 28px #3d3a6238}.vbImgLightboxTriggerView{width:100%;max-width:120px}.vbCellImg{object-fit:cover;border:1px solid #dde3ed;border-radius:8px;width:80px;height:60px;transition:box-shadow .2s,transform .2s}.vbCellImgEmpty{background:#f0f3f8;border-radius:8px;width:80px;height:60px}.vbRowActionBtns{flex-direction:column;align-items:stretch;gap:6px;display:flex}.vbRowGenerateBtn{white-space:nowrap;color:var(--white);cursor:pointer;background:linear-gradient(135deg,#7c6cf0,#a78bfa);border:none;border-radius:10px;padding:8px 14px;font-size:.82rem;font-weight:700;transition:transform .1s,box-shadow .15s}.vbRowGenerateBtn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 14px #a78bfa59}.vbRowGenerateBtn:disabled{opacity:.5;cursor:default}.vbRowDeleteBtn{cursor:pointer;opacity:.3;text-align:center;background:0 0;border:none;padding:4px;font-size:.85rem;transition:opacity .15s}.vbRowDeleteBtn:hover{opacity:1}.vbRowGenSpinner{flex-direction:column;align-items:center;gap:4px;display:flex}.vbRowGenLabel{color:var(--ocean);font-size:.72rem;font-weight:700}.vbTableFooter{text-align:center;border-top:1px solid #edf2f9;padding:12px 14px}.vbAddRowFooterBtn{color:var(--ocean);cursor:pointer;background:0 0;border:2px dashed #c4d5e8;border-radius:8px;padding:6px 20px;font-size:.85rem;font-weight:700;transition:background .15s,border-color .15s}.vbAddRowFooterBtn:hover{border-color:var(--ocean);background:#42c3ff0f}.vbViewWord{font-family:var(--font-display);color:var(--ink);font-size:1.05rem;font-weight:800}.vbViewDef,.vbViewExample{line-height:1.6}.vbSpeakable{cursor:pointer;border-radius:6px;padding:4px 6px;transition:background .12s}.vbSpeakable:hover{background:#42c3ff1a}.vbViewEmpty{color:var(--ink-soft);font-style:italic}.vbViewImg{aspect-ratio:4/3;object-fit:cover;border:1px solid #dde3ed;border-radius:10px;width:100%;max-width:120px;height:auto;transition:box-shadow .2s,transform .2s}.vbViewImgEmpty{aspect-ratio:4/3;background:#f0f3f8;border-radius:10px;width:100%;max-width:120px}.vbImageLightboxOverlay{z-index:10000;padding:max(16px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));-webkit-backdrop-filter:blur(10px);background:radial-gradient(at 50% 40%,#6366f12e,#0000 55%),#0f1220c7;justify-content:center;align-items:center;animation:.22s vbLightboxFadeIn;display:flex;position:fixed;inset:0}@keyframes vbLightboxFadeIn{0%{opacity:0}to{opacity:1}}.vbImageLightboxPanel{flex-direction:column;align-items:center;gap:14px;max-width:min(94vw,1120px);max-height:92vh;animation:.3s cubic-bezier(.34,1.25,.64,1) vbLightboxPop;display:flex;position:relative}@keyframes vbLightboxPop{0%{opacity:0;transform:scale(.92)translateY(12px)}to{opacity:1;transform:scale(1)translateY(0)}}.vbImageLightboxClose{z-index:2;cursor:pointer;color:#1e1b4b;background:linear-gradient(160deg,#fff 0%,#eef2ff 100%);border:none;border-radius:50%;justify-content:center;align-items:center;width:46px;height:46px;font-size:1.65rem;font-weight:300;line-height:1;transition:transform .15s,box-shadow .15s;display:flex;position:absolute;top:-6px;right:-6px;box-shadow:0 6px 24px #00000059,0 0 0 2px #ffffff80}.vbImageLightboxClose:hover{transform:scale(1.06);box-shadow:0 8px 28px #0006,0 0 0 2px #ffffffa6}.vbImageLightboxClose:focus-visible{outline-offset:2px;outline:3px solid #a5b4fc}.vbImageLightboxFrame{background:#fff;border-radius:20px;line-height:0;overflow:hidden;box-shadow:0 28px 70px #00000080,0 0 0 1px #ffffff26}.vbImageLightboxImg{object-fit:contain;width:auto;max-width:min(90vw,1080px);height:auto;max-height:min(78vh,820px);display:block}.vbImageLightboxCaption{font-family:var(--font-display);color:#f8fafc;text-align:center;text-shadow:0 2px 16px #0000008c;letter-spacing:.02em;margin:0;padding:0 8px;font-size:clamp(1rem,2.5vw,1.25rem);font-weight:800}.vbCellEditWrap{position:static}.vbTdDef,.vbTdSentence{position:relative}.vbCellTextarea{width:100%;font-family:var(--font-body);color:var(--ink);resize:none;background:#fafbfe;border:2px solid #d0d7e2;border-radius:8px;outline:none;min-height:48px;padding:8px 10px;font-size:.88rem;font-weight:500;line-height:1.5;transition:border-color .15s,box-shadow .15s;display:block;overflow:hidden}.vbCellTextarea:focus{border-color:var(--ocean);box-shadow:0 0 0 3px #42c3ff2e}.vbCellTextareaWithGen{padding-bottom:36px;padding-right:10px}.vbCellGenBtn{cursor:pointer;opacity:.55;z-index:2;background:#fffffff2;border:1px solid #d0d7e2;border-radius:6px;padding:2px 5px;font-size:.9rem;line-height:1;transition:opacity .15s,background .15s,transform .1s,box-shadow .15s}.vbCellGenBtnInCell{position:absolute;bottom:12px;right:12px}.vbCellGenBtn:hover:not(:disabled){opacity:1;background:#fff;transform:scale(1.15);box-shadow:0 4px 12px #3d3a621f}.vbCellGenBtn:disabled{opacity:.2;cursor:default}.vbCellEditBtn{cursor:pointer;opacity:.5;background:0 0;border:none;border-radius:4px;flex-shrink:0;padding:2px 4px;font-size:.8rem;transition:opacity .15s}.vbCellEditBtn:hover{opacity:1;background:#42c3ff1a}.vbTeacherTip{color:#78600a;background:linear-gradient(135deg,#fef9e7,#fef3c7);border:2px solid #f6e27a;border-radius:12px;align-items:flex-start;gap:10px;margin-bottom:16px;padding:12px 16px;font-size:.88rem;font-weight:600;line-height:1.5;display:flex}.vbTeacherTipIcon{flex-shrink:0;margin-top:1px;font-size:1.2rem}.vbCellSpinner{justify-content:center;align-items:center;padding:12px 0;display:flex}.vbCellImageWrap{flex-direction:column;align-items:center;gap:6px;display:flex;position:relative}.vbCellImageBtns{gap:4px;display:flex}.vbCellImageBtns .vbCellGenBtn{position:static}.vbCellUploadBtn{cursor:pointer;opacity:.6;background:#ffffffd9;border:1px solid #d0d7e2;border-radius:6px;padding:3px 6px;font-size:.85rem;transition:opacity .15s}.vbCellUploadBtn:hover:not(:disabled){opacity:1}.vbCellUploadBtn:disabled{opacity:.3;cursor:default}.vbStudentGrid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;margin-bottom:24px;display:grid}.vbStudentCard{background:var(--white);border:2px solid var(--stroke);cursor:pointer;text-align:center;border-radius:18px;padding:24px 18px;transition:transform .15s,box-shadow .15s,border-color .15s}.vbStudentCard:hover{border-color:var(--ocean);transform:translateY(-3px);box-shadow:0 12px 32px #3d3a551f}.vbStudentCardOther{border-color:var(--lavender);background:#f7f5ff}.vbStudentAvatar{background:var(--lavender);border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 12px;font-size:1.8rem;display:flex;overflow:hidden}.vbStudentAvatarOther{background:#e8deff}.vbStudentAvatarImg{object-fit:cover;width:100%;height:100%}.vbStudentCard h3{font-family:var(--font-display);margin:0 0 4px;font-size:1.05rem;font-weight:800}.vbStudentDesc{color:var(--ink-soft);margin:0 0 6px;font-size:.82rem;line-height:1.4}.vbStudentCount{color:var(--ink-soft);font-size:.78rem;font-weight:700}.vbStudentFolderStats{flex-wrap:wrap;justify-content:center;gap:8px 10px;margin:10px 0 8px;display:flex}.vbStudentFolderStatPill{color:var(--ink);background:linear-gradient(135deg,#e8f4fd,#f0f4ff);border:1px solid #c4dbf6;border-radius:999px;align-items:baseline;gap:5px;padding:6px 12px;font-size:.78rem;font-weight:700;display:inline-flex}.vbStudentFolderStatPillDone{background:linear-gradient(135deg,#e8f5e9,#e0f7e9);border-color:#a5d6a7}.vbStudentFolderStatNum{font-family:var(--font-display);color:var(--ocean);font-size:1rem;font-weight:900}.vbStudentFolderStatPillDone .vbStudentFolderStatNum{color:#2e7d32}.vbStudentFolderStatText{color:var(--ink-soft);font-size:.74rem;font-weight:700}.vbStudentWordsLearned{color:var(--ink-soft);margin:0 0 6px;font-size:.82rem;line-height:1.35}.vbStudentWordsLearned strong{color:var(--ink);font-weight:800}.vbStudentPageHeader{align-items:center;gap:14px;display:flex}.vbStudentPageAvatar{object-fit:cover;border:2px solid var(--lavender);border-radius:50%;width:56px;height:56px}.vbStudentPageAvatarPlaceholder{background:var(--lavender);border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;font-size:1.6rem;display:flex}.vbStudentAvatarWrap{flex-shrink:0;display:inline-block;position:relative}.vbStudentAvatarEditBtn{border:2px solid var(--white);background:var(--ocean);width:26px;height:26px;color:var(--white);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:.72rem;transition:transform .15s;display:flex;position:absolute;bottom:-2px;right:-2px}.vbStudentAvatarEditBtn:hover:not(:disabled){transform:scale(1.1)}.vbStudentHeaderBtns{align-items:center;gap:8px;display:flex}.vbEditStudentBtn{border-color:var(--ocean)!important;color:var(--ocean)!important}.vbEditStudentAvatarRow{margin-bottom:16px}.vbEditStudentAvatarPreview{align-items:center;gap:12px;margin-top:8px;display:flex}.vbEditStudentAvatarImg{object-fit:cover;border:2px solid var(--lavender);border-radius:50%;width:56px;height:56px}.vbEditStudentAvatarPlaceholder{background:var(--lavender);border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;font-size:1.6rem;display:flex}.vbEditStudentAvatarBtn{font-size:.85rem}.vbStudentPageDesc{color:var(--ink-soft);margin:2px 0 0;font-size:.88rem}.vbDeleteStudentBtn{color:var(--coral);border:2px solid var(--coral);cursor:pointer;background:0 0;border-radius:8px;padding:6px 14px;font-size:.82rem;font-weight:700;transition:background .15s}.vbDeleteStudentBtn:hover{background:#ff7a6e14}.vbTableCardActions2{align-items:center;gap:6px;margin-top:10px;display:flex}.vbTableCardBtn{color:var(--ocean);cursor:pointer;background:0 0;border:1px solid #c4d5e8;border-radius:6px;padding:4px 10px;font-size:.75rem;font-weight:700;transition:background .15s}.vbTableCardBtn:hover{background:#42c3ff14}.vbMoveTargetList{flex-direction:column;gap:6px;max-height:300px;margin:10px 0;display:flex;overflow-y:auto}.vbMoveTargetBtn{border:2px solid var(--stroke);background:var(--white);cursor:pointer;text-align:left;border-radius:12px;align-items:center;gap:10px;padding:10px 14px;font-size:.92rem;font-weight:700;transition:border-color .15s,background .15s;display:flex}.vbMoveTargetBtn:hover{border-color:var(--ocean);background:#42c3ff0a}.vbMoveTargetImg{object-fit:cover;border-radius:50%;width:28px;height:28px}.vbProfileUploadArea{align-items:center;gap:12px;margin-top:8px;display:flex}.vbProfilePreview{object-fit:cover;border:2px solid var(--lavender);border-radius:50%;width:56px;height:56px}.vbProfilePlaceholder{background:var(--cream);border:2px dashed var(--stroke-strong);width:56px;height:56px;color:var(--ink-soft);border-radius:50%;justify-content:center;align-items:center;font-size:.72rem;display:flex}.vbSection{border-top:2px solid var(--stroke);margin-top:28px;padding-top:20px}.vbSection h2{font-family:var(--font-display);margin:0 0 14px;font-size:1.2rem;font-weight:800}.vbCreateQuizForm{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.vbCreateQuizForm .vbInput{flex:1;min-width:180px;margin:0}.vbCheckLabel{cursor:pointer;align-items:center;gap:6px;font-size:.9rem;font-weight:700;display:flex}.vbCheckLabel input[type=checkbox]{width:18px;height:18px;accent-color:var(--ocean)}.vbQuizList{flex-direction:column;gap:10px;display:flex}.vbQuizCard{background:var(--white);border:2px solid var(--stroke);border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:14px 18px;display:flex}.vbQuizCardInfo{flex-wrap:wrap;align-items:baseline;gap:8px 16px;display:flex}.vbQuizCardInfo strong{font-family:var(--font-display)}.vbQuizCardInfo span{color:var(--ink-soft);font-size:.82rem}.vbQuizCardActions{gap:8px;display:flex}.vbHwMeta{color:var(--ink-soft);flex-wrap:wrap;gap:8px 16px;margin-bottom:20px;font-size:.9rem;display:flex}.vbHwStatus{text-transform:uppercase;border-radius:8px;padding:3px 10px;font-size:.8rem;font-weight:800}.vbHwStatus.active{color:#166534;background:#69e49a33}.vbHwStatus.closed{color:#991b1b;background:#ff7a6e26}.vbShareBox{background:var(--sky);border-radius:14px;margin-bottom:16px;padding:16px 18px}.vbShareLabel{margin:0 0 8px;font-size:.9rem;font-weight:700}.vbShareRow{gap:8px;display:flex}.vbShareInput{flex:1;margin:0;font-size:.85rem}.vbCloseBtn{margin-bottom:16px;font-size:.85rem}.vbAttemptsTable{border:2px solid var(--stroke);border-radius:14px;overflow:hidden}.vbAttemptHeader{background:var(--lavender);grid-template-columns:1fr 80px 160px;gap:8px;padding:10px 16px;font-size:.85rem;font-weight:800;display:grid}.vbAttemptRow{border-top:1px solid var(--stroke);grid-template-columns:1fr 80px 160px;gap:8px;padding:10px 16px;font-size:.88rem;display:grid}.vbAttemptName{font-weight:700}.vbAttemptScore{color:var(--grape);font-weight:800}.vbAttemptDate{color:var(--ink-soft);font-size:.82rem}.vbStudentPage{background:radial-gradient(800px at 20% 30%, #c8ecff80, transparent 60%), radial-gradient(600px at 80% 70%, #e8deff73, transparent 55%), var(--cream);justify-content:center;align-items:center;min-height:100dvh;padding:20px;display:flex}.vbStudentCard{background:var(--white);text-align:center;border-radius:24px;width:100%;max-width:520px;padding:32px 28px;animation:.3s vbSlideUp;box-shadow:0 20px 50px #3d3a5524}.vbStudentCard h1{font-family:var(--font-display);margin:0 0 10px;font-size:1.6rem;font-weight:900}.vbStudentCard h2{font-family:var(--font-display);margin:0 0 16px;font-size:1.15rem}.vbStudentNameInput{text-align:center;max-width:280px;margin:16px auto 12px}.vbStartBtn{border-radius:14px;padding:12px 36px;font-size:1.05rem}.vbStudentProgress{color:var(--ink-soft);margin-bottom:6px;font-size:.85rem;font-weight:800}.vbStudentProgressBar{background:var(--stroke);border-radius:3px;height:6px;margin-bottom:20px;overflow:hidden}.vbStudentProgressFill{background:linear-gradient(90deg, var(--ocean), var(--grape));border-radius:3px;height:100%;transition:width .3s}.vbStudentQImage{object-fit:cover;border:3px solid var(--stroke);border-radius:14px;width:140px;height:140px;margin:0 auto 14px;display:block}.vbStudentQuestion{margin:0 0 16px;font-size:1.1rem;line-height:1.45}.vbStudentAnswer{text-align:center;max-width:340px;margin:0 auto 20px;font-size:1rem}.vbStudentNav{justify-content:center;gap:10px;display:flex}.vbStudentDone{padding:40px 28px}.vbScoreCircle{background:linear-gradient(135deg, var(--grass), var(--ocean));width:100px;height:100px;font-family:var(--font-display);color:var(--white);border-radius:50%;justify-content:center;align-items:center;margin:16px auto;font-size:1.6rem;font-weight:900;display:flex;box-shadow:0 8px 24px #42c3ff4d}.topbarVocabLink{align-items:center;gap:5px;font-size:.85rem;font-weight:700;display:inline-flex}.topbarVocabIcon{object-fit:cover;vertical-align:middle;border-radius:5px;width:22px;height:22px}@keyframes vbFadeIn{0%{opacity:0}to{opacity:1}}@keyframes vbSlideUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media (width<=900px){.vbThActions{width:16%}.vbTd{padding:10px;font-size:.88rem}.vbCellImg,.vbCellImgEmpty{width:64px;height:48px}.vbViewImg{max-width:90px}}@media (width>=768px){.vbStudentPageHeader{gap:20px}.vbStudentPageAvatar{width:72px;height:72px}.vbStudentPageAvatarPlaceholder{width:72px;height:72px;font-size:2rem}.vbStudentPageDesc{max-width:500px;font-size:.95rem}.vbStudentHeaderBtns{flex-direction:row;gap:10px}.vbStudentListCount{font-size:.9rem}.vbTableCard{padding:24px}.vbTableCardHead h3{font-size:1.15rem}.vbTableCardTopic{font-size:.92rem}.vbTableCardDiffBadge{padding:4px 12px;font-size:.78rem}.vbTableCardProgress{gap:10px}.vbCardProgressItem{padding:3px 10px;font-size:.76rem}.vbTableCardActions2{gap:8px}.vbTableCardBtn{padding:5px 14px;font-size:.8rem}}@media (width<=600px){.vbDetailHeader{flex-direction:column}.vbEditActions,.vbCreateActions{flex-direction:column;align-items:stretch}.vbDifficultyWrap{margin-left:0}.vbTable,.vbTable thead,.vbTable tbody,.vbTable tr,.vbTable th,.vbTable td{display:block}.vbTableHeader{display:none}.vbTableRow{border-bottom:2px solid #edf2f9;margin-bottom:12px;padding:16px;position:relative}.vbTd{padding:6px 0;width:100%!important}.vbTdVocab{border-bottom:1px solid #edf2f9;margin-bottom:6px;padding-bottom:8px;font-size:1.05rem}.vbTdImage{text-align:center}.vbCellImg,.vbCellImgEmpty{aspect-ratio:4/3;width:100%;max-width:200px;height:auto}.vbViewImg{width:100%;max-width:200px}.vbImgLightboxTriggerView{max-width:200px}.vbTdActions{padding-top:10px}.vbRowActionBtns{flex-direction:row;justify-content:space-between}.vbCreateQuizForm{flex-direction:column;align-items:stretch}.vbAttemptHeader,.vbAttemptRow{grid-template-columns:1fr 60px 120px}.vbStudentNav{flex-direction:column}.vbStudentGrid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.vbStudentPageHeader{text-align:center;flex-direction:column}.vbCellGenBtnInCell{bottom:10px;right:10px}.vbCellTextareaWithGen{padding-bottom:40px}}.otcProPaywall{text-align:center;background:var(--white);border:2px solid var(--stroke);border-radius:20px;max-width:480px;margin:24px auto;padding:48px 24px;animation:.3s vbSlideUp}.otcProPaywallRich{background:linear-gradient(145deg,#f8fafc 0%,#eef2ff 50%,#faf5ff 100%);border:none;max-width:720px;padding:0;overflow:hidden;box-shadow:0 4px 24px #0f172a0f,0 20px 50px #6366f11a}.otcProPaywallRichInner{padding:28px 22px 26px}.otcProPaywallBadge{color:#fff;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:14px;justify-content:center;align-items:center;width:44px;height:44px;margin-bottom:12px;font-size:1.15rem;font-weight:800;display:inline-flex;box-shadow:0 10px 24px #6366f159}.otcProPaywallRich .otcProPaywallTitle{background:linear-gradient(120deg,#1e1b4b,#5b21b6);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:1.55rem}.otcProPaywallDeck{color:#1e1b4bc7;max-width:520px;margin:0 auto 8px;font-size:1rem;font-weight:600;line-height:1.55}.otcProPaywallRich .otcProOfferChoices{padding-left:0;padding-right:0}.otcProPaywallRich .otcProOfferChoicesFootnote{margin-bottom:4px}.otcProPaywallIcon{margin-bottom:12px;font-size:3rem}.otcProPaywallTitle{font-family:var(--font-display);color:var(--ink);margin:0 0 10px;font-size:1.4rem;font-weight:900}.otcProPaywallBody{color:var(--ink-soft);margin:0 0 20px;font-size:1rem;line-height:1.6}.otcProLink{color:var(--ocean);font-weight:700;text-decoration:underline}.otcProLink:hover{color:var(--blue2)}.otcProPaywallBtn{border-radius:14px;padding:12px 28px;font-size:1rem;font-weight:800}.vbPatienceNotice{color:#3a5ba0;background:linear-gradient(135deg,#e8f4fd,#f0e6ff);border:2px solid #c4dbf6;border-radius:14px;align-items:center;gap:10px;margin-bottom:16px;padding:14px 18px;font-size:.92rem;font-weight:600;animation:.3s vbFadeIn;display:flex}.vbPatienceIcon{flex-shrink:0;font-size:1.3rem}.vbThProgress{text-align:center;width:10%}.vbTdProgress{text-align:center;vertical-align:middle}.vbProgressPicker{justify-content:center;gap:6px;margin-bottom:4px;display:flex}.vbProgressBtn{cursor:pointer;opacity:.5;background:#f0f2f7;border:2px solid #0000;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:.9rem;transition:transform .2s,border-color .2s,box-shadow .2s,background .2s,opacity .2s;display:flex}.vbTableView .vbProgressBtn{opacity:.72}.vbProgressBtn:hover{opacity:.85;transform:scale(1.15)}.vbProgressBtn.active{opacity:1;transform:scale(1.2);box-shadow:0 2px 10px #00000026}.vbProgressLearning.active{background:#fff3e0;border-color:#ff9800}.vbProgressNearly.active{background:#fffde7;border-color:#fdd835}.vbProgressKnow.active{background:#e8f5e9;border-color:#4caf50}.vbProgressLabel{letter-spacing:.02em;font-size:.7rem;font-weight:700;animation:.2s vbFadeIn;display:block}.vbProgressLabelLearning{color:#e65100}.vbProgressLabelNearly{color:#f9a825}.vbProgressLabelKnow{color:#2e7d32}.vbProgressBadge{border-radius:20px;align-items:center;gap:4px;padding:4px 10px;font-size:.78rem;font-weight:700;display:inline-flex}.vbProgressBadgeLearning{color:#e65100;background:#fff3e0}.vbProgressBadgeNearly{color:#f9a825;background:#fffde7}.vbProgressBadgeKnow{color:#2e7d32;background:#e8f5e9}.vbProgressBadgeNone{color:var(--ink-soft);font-size:.82rem}.vbGameReqModal{max-width:460px}.vbGameReqList{color:var(--ink);margin:14px 0;padding-left:1.25em;font-size:.9rem;line-height:1.55}.vbGameReqList li{margin-bottom:12px}.vbGameReqList li:last-child{margin-bottom:0}.vbGameReqHint{color:var(--ink-soft);margin:0 0 6px;font-size:.86rem;line-height:1.5}.vbDiffPickerModal{max-width:420px}.vbDiffPickerBtns{flex-direction:column;gap:10px;margin-bottom:18px;display:flex}.vbDiffPickerBtn{border:2px solid var(--stroke);background:var(--white);cursor:pointer;text-align:left;border-radius:14px;align-items:center;gap:14px;padding:16px 18px;transition:border-color .15s,background .15s,transform .12s,box-shadow .15s;display:flex}.vbDiffPickerBtn:hover{transform:translateY(-2px);box-shadow:0 4px 16px #00000014}.vbDiffEasy:hover{background:#e8f5e9;border-color:#4caf50}.vbDiffMedium:hover{background:#fff3e0;border-color:#ff9800}.vbDiffHard:hover{background:#ffebee;border-color:#e53935}.vbDiffPickerIcon{flex-shrink:0;font-size:1.6rem}.vbDiffPickerName{color:var(--ink);font-size:1rem;font-weight:800}.vbDiffPickerDesc{color:var(--ink-soft);margin-left:auto;font-size:.82rem}.vbTableCardDiffBadge{border-radius:20px;align-items:center;gap:4px;margin-top:4px;padding:3px 10px;font-size:.72rem;font-weight:700;display:inline-flex}.vbTableCardDiff-easy{color:#2e7d32;background:#e8f5e9}.vbTableCardDiff-medium{color:#e65100;background:#fff3e0}.vbTableCardDiff-hard{color:#c62828;background:#ffebee}.vbTableCardProgress{border-top:1px solid #edf2f9;flex-wrap:wrap;gap:8px;margin-top:6px;padding-top:6px;display:flex}.vbCardProgressItem{border-radius:12px;align-items:center;gap:3px;padding:2px 8px;font-size:.72rem;font-weight:700;display:inline-flex}.vbCardProgressKnown{color:#2e7d32;background:#e8f5e9}.vbCardProgressNearly{color:#f9a825;background:#fffde7}.vbCardProgressLearning{color:#e65100;background:#fff3e0}.vbCardProgressUnset{color:#6b7a99;background:#f0f2f7}.vbStudentListCount{color:#3a5ba0;background:linear-gradient(135deg,#e8f4fd,#f0e6ff);border:2px solid #c4dbf6;border-radius:14px;align-items:center;gap:6px;padding:8px 16px;font-size:.9rem;font-weight:700;display:inline-flex}.topbarVocabLocked{opacity:.7;cursor:pointer}.topbarVocabLoading{opacity:.65;pointer-events:none;cursor:default}.vbModal-overlay{z-index:9000;background:#00000073;justify-content:center;align-items:center;animation:.2s vbFadeIn;display:flex;position:fixed;inset:0}.vbModal{background:var(--white);border-radius:20px;width:90%;max-width:480px;padding:32px 28px;animation:.25s vbSlideUp;box-shadow:0 12px 48px #0000002e}.vbModal h2{font-family:var(--font-display);color:var(--ink);margin:0 0 4px;font-size:1.35rem;font-weight:900}.vbModalSub{color:var(--ink-soft);margin:0 0 18px;font-size:.92rem}.vbModalOptions{flex-direction:column;gap:10px;margin-bottom:18px;display:flex}.vbModalRadio{border:2px solid var(--stroke);cursor:pointer;border-radius:12px;align-items:flex-start;gap:10px;padding:12px 14px;transition:border-color .15s,background .15s;display:flex}.vbModalRadio:has(input:checked){border-color:var(--ocean);background:#42c3ff0f}.vbModalRadio input[type=radio]{accent-color:var(--ocean);flex-shrink:0;margin-top:4px}.vbModalRadio span{font-size:.93rem;line-height:1.4}.vbModalRadio small{color:var(--ink-soft);font-size:.82rem}.vbModalField{margin-bottom:16px}.vbModalField .vbLabel{color:var(--ink);margin-bottom:6px;font-size:.88rem;font-weight:700;display:block}.vbModalField .vbInput{border:2px solid var(--stroke);background:var(--white);width:100%;color:var(--ink);border-radius:10px;padding:10px 14px;font-size:.92rem}.vbModalActions{border-top:1px solid var(--stroke);justify-content:flex-end;gap:10px;padding-top:8px;display:flex}.vbNotice{color:#e65100;background:#fff3e0;border:1px solid #ffe0b2;border-radius:10px;margin-bottom:14px;padding:10px 14px;font-size:.88rem}.vbDifficultyWrap{align-items:center;gap:8px;margin-left:auto;display:flex}.vbDifficultyLabel{color:var(--ink-soft);font-size:.85rem;font-weight:700}.vbDifficultySelect{border:2px solid var(--stroke);background:var(--white);color:var(--ink);cursor:pointer;border-radius:10px;padding:6px 12px;font-size:.88rem}.vbCreateActions{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:20px;display:flex}.vbCreateBtn{border:2px solid var(--stroke);background:var(--white);color:var(--ink);cursor:pointer;border-radius:12px;align-items:center;gap:6px;padding:10px 18px;font-size:.9rem;font-weight:700;transition:background .15s,border-color .15s,transform .1s;display:inline-flex}.vbCreateBtn:hover:not(:disabled){border-color:var(--ocean);background:#42c3ff14;transform:translateY(-1px)}.vbCreateBtn:disabled{opacity:.5;cursor:not-allowed}.vbJoinBrand{text-decoration:none}.vbJoinHero{background:linear-gradient(160deg,#e0f2fe 0%,#f0e6ff 35%,#fce7f3 70%,#fff7ed 100%)}.vbJoinHeroBlob{filter:blur(100px);opacity:.4;pointer-events:none;border-radius:50%;position:absolute}.vbJoinBlobA{background:#7dd3fc;width:500px;height:500px;top:-120px;left:-80px}.vbJoinBlobB{background:#c4b5fd;width:400px;height:400px;bottom:-100px;right:-60px}.vbJoinShowcase{color:#e2e8f0;background:linear-gradient(160deg,#0f172a 0%,#1e293b 100%)}.vbJoinShowcase .landingSectionTitle{color:#f1f5f9}.vbJoinShowcaseGrid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:20px;margin-top:36px;display:grid}.vbJoinShowcaseCard{text-align:center;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:18px;padding:28px 22px;transition:transform .2s,background .2s}.vbJoinShowcaseCard:hover{background:#ffffff1a;transform:translateY(-4px)}.vbJoinShowcaseIcon{margin-bottom:12px;font-size:2.2rem}.vbJoinShowcaseCard h3{font-family:var(--font-display);color:#f8fafc;margin:0 0 8px;font-size:1.1rem;font-weight:800}.vbJoinShowcaseCard p{color:#94a3b8;margin:0;font-size:.88rem;line-height:1.6}.vbJoinUseCaseGrid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;margin-top:36px;display:grid}.vbJoinUseCaseCard{background:var(--white);border:2px solid var(--stroke);text-align:center;border-radius:18px;padding:28px 22px;transition:transform .2s,box-shadow .2s}.vbJoinUseCaseCard:hover{transform:translateY(-4px);box-shadow:0 8px 28px #00000014}.vbJoinUseCaseEmoji{margin-bottom:12px;font-size:2.4rem;display:block}.vbJoinUseCaseTitle{font-family:var(--font-display);color:var(--ink);margin:0 0 8px;font-size:1.05rem;font-weight:800}.vbJoinUseCaseBody{color:var(--ink-soft);margin:0;font-size:.88rem;line-height:1.6}.vbJoinCtaBand{background:linear-gradient(145deg,#4f46e5,#7c3aed,#a855f7)}@media (width<=600px){.vbJoinShowcaseGrid,.vbJoinUseCaseGrid{grid-template-columns:1fr}}
