.play-mobile-app{--r-btn:4px;--r-card:8px;--r-chip:4px;--r-img:0;--color-bg-app:#fff;--color-bg-subtle:#f7f8fa;--color-bg-muted:#eef1f6;--color-bg-inverse:#0b0d12;--color-ink-primary:#0b0d12;--color-ink-secondary:#3f4756;--color-ink-tertiary:#6b7280;--color-ink-on-color:#fff;--color-ink-on-dark:#f7f8fa;--color-border-subtle:#e5e8ee;--color-border-default:#d6dae2;--color-border-strong:#0b0d12;--color-brand-primary:#2d6bff;--color-brand-accent:#7a5cff;--color-brand-mint:#15c8a0;--color-status-success:#15c8a0;--color-status-warning:#f5b400;--color-status-danger:#e5484d;--color-status-info:#2d6bff;--color-lang-purple:#7c52d4;--color-lang-purple-hover:#6a3fc2;--color-lang-purple-pressed:#5a34a8;--color-lang-tint:color-mix(in srgb, var(--color-lang-purple) 10%, var(--color-bg-app));--color-lang-tint-soft:color-mix(in srgb, var(--color-lang-purple) 6%, var(--color-bg-app));--font-display:"Inter Display", Inter, system-ui, sans-serif;--font-text:Inter, system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-black:800;--tracking-tight:-.02em;--tracking-snug:-.01em;--tracking-normal:0;--tracking-wide:.08em;--type-h1-size:36px;--type-h2-size:28px;--type-h3-size:22px;--type-h4-size:18px;--type-body-lg-size:18px;--type-body-size:16px;--type-body-sm-size:14px;--type-label-size:13px;--type-caption-size:12px;--type-m-h1:26px;--type-m-h2:20px;--type-m-h3:17px;--type-m-h4:15px;--type-m-body:15px;--space-0:0px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:32px;--space-8:40px;--space-9:48px;--space-10:64px;--space-11:80px;--space-12:96px;--space-13:128px;--radius-xs:6px;--radius-sm:10px;--radius-md:14px;--radius-lg:20px;--radius-xl:28px;--radius-pill:999px;--shadow-sm:0 1px 2px #0b0d120f;--shadow-md:0 6px 16px #0b0d1214;--shadow-lg:0 16px 40px #0b0d121f;--shadow-focus:0 0 0 3px #2d6bff59;--duration-fast:.12s;--duration-base:.2s;--duration-slow:.32s;--duration-game:.48s;--easing-standard:cubic-bezier(.2, .8, .2, 1);--easing-emphasize:cubic-bezier(.16, 1, .3, 1);--easing-spring:cubic-bezier(.34, 1.56, .64, 1);--bp-sm:480px;--bp-md:768px;--bp-lg:1024px;--bp-xl:1280px;--bp-2xl:1440px;--container-max:1200px;--container-mobile:430px;--z-base:0;--z-raised:10;--z-sticky:100;--z-overlay:900;--z-modal:1000;--z-toast:1100;--logical-w:810;--logical-h:1440;--logical-ar:9/16;--gutter:var(--color-bg-subtle);--game-safe-area:16px;--game-scale:1;--brainy-chip-min:40px;--brainy-hero:80px;--tabbar-h:64px;max-width:var(--container-mobile);background:var(--color-bg-app);border-inline:1px solid var(--color-border-subtle);min-height:100vh;color:var(--color-ink-primary);font-family:var(--font-text);font-size:var(--type-m-body);box-sizing:border-box;margin-inline:auto;line-height:1.5;position:relative}.play-mobile-app *,.play-mobile-app :before,.play-mobile-app :after{box-sizing:border-box}.play-mobile-app button,.play-mobile-app input,.play-mobile-app select{font:inherit;color:inherit}.play-mobile-app button{cursor:pointer;background:0 0;border:0}.play-mobile-app svg{fill:none;stroke:currentColor;stroke-width:1.75px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.play-mobile-app :focus-visible{outline:none}.play-mobile-app .visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.play-mobile-app .skip{left:var(--space-4);top:calc(-1 * var(--space-10));z-index:var(--z-toast);padding:var(--space-3) var(--space-4);border-radius:var(--r-btn);background:var(--color-lang-purple);color:var(--color-ink-on-color);font-weight:var(--font-weight-bold);transition:top var(--duration-base) var(--easing-standard);text-decoration:none;position:absolute}.play-mobile-app .skip:focus{top:var(--space-4)}@media (prefers-reduced-motion:reduce){.play-mobile-app *{transition-duration:1ms!important;animation:none!important}}.play-mobile-app .wrap{padding:var(--space-4) var(--space-4) calc(var(--tabbar-h) + var(--space-3))}.play-mobile-app .hero{align-items:flex-end;gap:var(--space-3);min-height:56px;display:flex}.play-mobile-app .hero.has-brainy{min-height:88px;max-height:96px}.play-mobile-app .herosub{color:var(--color-ink-secondary);font-size:var(--type-m-body);flex:1;margin:0}.play-mobile-app .brainy{width:var(--brainy-hero);min-width:var(--brainy-chip-min);object-fit:contain;object-position:bottom;flex:none;height:auto}.play-mobile-app .brainyslot{width:var(--brainy-hero);aspect-ratio:1;padding:var(--space-1);text-align:center;border:1px dashed var(--color-border-default);border-radius:var(--r-btn);background:var(--color-bg-subtle);color:var(--color-ink-tertiary);font-size:var(--type-caption-size);flex:none;place-items:center;display:grid}.play-mobile-app .status{align-items:center;gap:var(--space-3);margin-top:var(--space-4);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border-default);border-radius:var(--r-btn);background:var(--color-bg-subtle);display:none}.play-mobile-app .status[data-show=true]{display:flex}.play-mobile-app .statusbust{width:var(--brainy-chip-min);aspect-ratio:1;border-radius:var(--r-btn);background:var(--color-bg-muted);color:var(--color-ink-tertiary);font-size:var(--type-caption-size);flex:none;place-items:center;display:grid}.play-mobile-app .status p{color:var(--color-ink-secondary);font-size:var(--type-body-sm-size);margin:0}.play-mobile-app .stack{gap:var(--space-4);margin-top:var(--space-4);display:grid}.play-mobile-app .card{padding:var(--space-4);background:var(--color-bg-app);border:1px solid var(--color-border-subtle);border-radius:var(--r-card)}.play-mobile-app .cardtitle{font-family:var(--font-display);font-size:var(--type-m-h3);letter-spacing:var(--tracking-snug);margin:0}.play-mobile-app .small{color:var(--color-ink-tertiary);font-size:var(--type-body-sm-size)}.play-mobile-app .sectiontitle{margin:var(--space-6) 0 0;font-family:var(--font-display);font-size:var(--type-m-h2);font-weight:var(--font-weight-bold);letter-spacing:var(--tracking-tight)}.play-mobile-app .chip{min-height:26px;padding:0 var(--space-3);border-radius:var(--r-btn);background:var(--color-lang-tint);color:var(--color-lang-purple);font-size:var(--type-label-size);font-weight:var(--font-weight-semibold);align-items:center;display:inline-flex}.play-mobile-app .chip--bronze{background:color-mix(in srgb, var(--color-status-warning) 18%, var(--color-bg-app));color:var(--color-ink-secondary)}.play-mobile-app .chip--silver{background:var(--color-bg-muted);color:var(--color-ink-secondary)}.play-mobile-app .chip--gold{background:color-mix(in srgb, var(--color-brand-mint) 18%, var(--color-bg-app));color:var(--color-ink-secondary)}.play-mobile-app .chip--blocked{background:var(--color-bg-muted);color:var(--color-ink-tertiary)}.play-mobile-app .btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:44px;padding:0 var(--space-4);border:1px solid var(--color-lang-purple);border-radius:var(--r-btn);background:var(--color-bg-app);color:var(--color-lang-purple);font-weight:var(--font-weight-bold);transition:background-color var(--duration-fast) var(--easing-standard);text-decoration:none;display:inline-flex}.play-mobile-app .btn--primary{background:var(--color-lang-purple);color:var(--color-ink-on-color)}.play-mobile-app .btn--primary:hover{background:var(--color-lang-purple-hover)}.play-mobile-app .btn--primary:active{background:var(--color-lang-purple-pressed)}.play-mobile-app .btn--quiet{border-color:var(--color-border-default);color:var(--color-ink-secondary)}.play-mobile-app .btn--link{color:var(--color-lang-purple);font-weight:var(--font-weight-semibold);border:0}.play-mobile-app .btn--block{width:100%}.play-mobile-app .btn[disabled]{background:var(--color-bg-muted);border-color:var(--color-border-default);color:var(--color-ink-tertiary);cursor:not-allowed}.play-mobile-app .btn svg{width:17px;height:17px}.play-mobile-app .btnrow{gap:var(--space-2);margin-top:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.play-mobile-app .deck{gap:var(--space-3);grid-template-columns:64px minmax(0,1fr);align-items:start;display:grid}.play-mobile-app .deckart{aspect-ratio:1;border-radius:var(--r-img);object-fit:cover;background:var(--color-bg-muted);width:64px}.play-mobile-app .deckname{margin:var(--space-1) 0;font-family:var(--font-display);font-size:var(--type-m-h3);letter-spacing:var(--tracking-snug)}.play-mobile-app .bar{height:6px;margin:var(--space-3) 0 var(--space-2);border-radius:var(--r-btn);background:var(--color-bg-muted);overflow:hidden}.play-mobile-app .bar span{background:var(--color-lang-purple);height:100%;display:block}.play-mobile-app .tabnums{font-variant-numeric:tabular-nums}.play-mobile-app .game--featured{border:2px solid var(--color-lang-purple)}.play-mobile-app .gamehead{gap:var(--space-3);grid-template-columns:56px minmax(0,1fr);align-items:center;display:grid}.play-mobile-app .gameicon{aspect-ratio:1;border-radius:var(--r-btn);background:var(--color-lang-tint);width:56px;color:var(--color-lang-purple);place-items:center;display:grid}.play-mobile-app .gameicon svg{width:26px;height:26px}.play-mobile-app .gameflag{align-items:center;gap:var(--space-1);margin:0 0 var(--space-1);color:var(--color-lang-purple);font-size:var(--type-label-size);font-weight:var(--font-weight-bold);display:inline-flex}.play-mobile-app .gameflag svg{width:13px;height:13px}.play-mobile-app .gamename{font-family:var(--font-display);font-size:var(--type-m-h3);letter-spacing:var(--tracking-snug);margin:0}.play-mobile-app .gamedesc{margin:var(--space-1) 0 0;color:var(--color-ink-secondary);font-size:var(--type-body-sm-size)}.play-mobile-app .gamemeta{align-items:center;gap:var(--space-3);margin:var(--space-3) 0 0;color:var(--color-ink-tertiary);font-size:var(--type-body-sm-size);flex-wrap:wrap;display:flex}.play-mobile-app .gamemeta b{color:var(--color-ink-primary);font-variant-numeric:tabular-nums}.play-mobile-app .renderer{font-family:var(--font-mono);font-size:var(--type-caption-size);color:var(--color-ink-tertiary)}.play-mobile-app .gameactions{gap:var(--space-1);margin-top:var(--space-4);display:grid}.play-mobile-app .week{gap:var(--space-2);margin-top:var(--space-3);grid-template-columns:repeat(7,1fr);display:grid}.play-mobile-app .day{text-align:center;color:var(--color-ink-tertiary);font-size:var(--type-caption-size);margin:0}.play-mobile-app .day i{aspect-ratio:1;margin-bottom:var(--space-1);border-radius:var(--r-btn);background:var(--color-lang-purple);display:block}.play-mobile-app .day[data-off] i{background:var(--color-bg-app);border:1px dashed var(--color-border-default)}.play-mobile-app .day[data-today] i{background:var(--color-lang-tint);border:2px solid var(--color-lang-purple)}.play-mobile-app .rowline{justify-content:space-between;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--color-border-subtle);font-size:var(--type-body-sm-size);margin:0;display:flex}.play-mobile-app .rowline:last-of-type{border-bottom:0}.play-mobile-app .rowline b{font-variant-numeric:tabular-nums}.play-mobile-app .fair{align-items:center;gap:var(--space-3);margin-top:var(--space-4);padding:var(--space-3) var(--space-4);border-radius:var(--r-btn);background:var(--color-bg-subtle);color:var(--color-ink-secondary);font-size:var(--type-body-sm-size);display:flex}.play-mobile-app .fair svg{flex:none;width:18px;height:18px}.play-mobile-app .note{margin-top:var(--space-4);padding:var(--space-3) var(--space-4);border:1px dashed var(--color-border-default);border-radius:var(--r-btn);color:var(--color-ink-tertiary);font-size:var(--type-body-sm-size)}.play-mobile-app .foot{justify-content:center;align-items:center;gap:var(--space-2);text-align:center;margin-top:var(--space-6);padding-top:var(--space-5);border-top:1px solid var(--color-border-subtle);color:var(--color-ink-tertiary);font-size:var(--type-body-sm-size);display:flex}.play-mobile-app .foot svg{flex:none;width:16px;height:16px}.play-mobile-app .foot a{color:var(--color-lang-purple);font-weight:var(--font-weight-semibold)}.play-mobile-app .skel{background:var(--color-bg-muted);border-radius:var(--r-btn)}.play-mobile-app .skel--line{height:14px;margin:var(--space-2) 0}.play-mobile-app .skel--btn{border-radius:var(--r-btn);height:44px}.play-mobile-app .skel--img{aspect-ratio:1;border-radius:var(--r-img);width:64px}.play-mobile-app .skel--icon{aspect-ratio:1;border-radius:var(--r-btn);width:56px}.play-mobile-app .w70{width:70%}.play-mobile-app .w45{width:45%}.play-mobile-app .w25{width:25%}.play-mobile-sheet{z-index:var(--z-modal,1000);max-width:var(--container-mobile,430px);background:var(--color-bg-app,#fff);color:var(--color-ink-primary,#0b0d12);font-family:var(--font-text,Inter, system-ui, sans-serif);font-size:var(--type-m-body,15px);box-sizing:border-box;margin-inline:auto;line-height:1.5;display:none;position:fixed;inset:0}.play-mobile-sheet *,.play-mobile-sheet :before,.play-mobile-sheet :after{box-sizing:border-box}.play-mobile-sheet[data-open=true]{grid-template-rows:auto 1fr auto;display:grid}.play-mobile-sheet .sheethead{align-items:center;gap:var(--space-3,12px);padding:var(--space-3,12px) var(--space-4,16px);border-bottom:1px solid var(--color-border-subtle,#e5e8ee);background:var(--color-bg-app,#fff);display:flex}.play-mobile-sheet .sheethead h2{font-family:var(--font-display,"Inter Display", Inter, system-ui, sans-serif);font-size:var(--type-m-h3,17px);letter-spacing:var(--tracking-snug,-.01em);font-weight:var(--font-weight-bold,700);margin:0}.play-mobile-sheet .sheetclose{border-radius:var(--r-card);width:44px;height:44px;color:var(--color-ink-secondary,#3f4756);cursor:pointer;background:0 0;border:0;place-items:center;display:grid}.play-mobile-sheet .sheetclose:focus-visible{outline:none}.play-mobile-sheet .sheetbody{padding:var(--space-4,16px);overflow-y:auto}.play-mobile-sheet .sheetfoot{gap:var(--space-2,8px);padding:var(--space-4,16px);padding-bottom:calc(var(--space-4,16px) + env(safe-area-inset-bottom,0px));border-top:1px solid var(--color-border-subtle,#e5e8ee);background:var(--color-bg-app,#fff);display:grid}.play-mobile-sheet .sizes{gap:var(--space-2,8px);margin-top:var(--space-3,12px);flex-wrap:wrap;display:flex}.play-mobile-sheet .size{min-width:56px;min-height:44px;padding:0 var(--space-3,12px);border:1px solid var(--color-border-default,#d6dae2);border-radius:var(--r-card);color:var(--color-ink-secondary,#3f4756);font-weight:var(--font-weight-bold,700);font-variant-numeric:tabular-nums;background:var(--color-bg-app,#fff);cursor:pointer;transition:background-color var(--duration-fast,.12s) var(--easing-standard,cubic-bezier(.2, .8, .2, 1));flex:1 1 0;justify-content:center;align-items:center;display:inline-flex}.play-mobile-sheet .size:focus-visible{outline:none}.play-mobile-sheet .size[aria-pressed=true]{background:var(--color-lang-purple,#7c52d4);border-color:var(--color-lang-purple,#7c52d4);color:var(--color-ink-on-color,#fff)}.play-mobile-sheet .pathtabs{gap:var(--space-4,16px);scrollbar-width:none;margin:0 calc(-1 * var(--space-4,16px));padding:0 var(--space-4,16px);border-bottom:1px solid var(--color-border-subtle,#e5e8ee);display:flex;overflow-x:auto}.play-mobile-sheet .pathtabs::-webkit-scrollbar{display:none}.play-mobile-sheet .ptab{min-height:44px;padding-bottom:var(--space-2,8px);white-space:nowrap;color:var(--color-ink-secondary,#3f4756);font-weight:var(--font-weight-bold,700);font-size:var(--type-body-sm-size,14px);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;flex:none}.play-mobile-sheet .ptab[aria-selected=true]{color:var(--color-lang-purple,#7c52d4);border-bottom-color:var(--color-lang-purple,#7c52d4)}.play-mobile-sheet .ptab[data-blocked=true]{color:var(--color-ink-tertiary,#6b7280)}.play-mobile-sheet .search{width:100%;min-height:44px;margin:var(--space-4,16px) 0;padding:0 var(--space-4,16px);border:1px solid var(--color-border-default,#d6dae2);border-radius:var(--r-card);background:var(--color-bg-app,#fff);color:var(--color-ink-primary,#0b0d12)}.play-mobile-sheet .decklist{gap:var(--space-2,8px);display:grid}.play-mobile-sheet .deckopt{gap:var(--space-3,12px);padding:var(--space-3,12px);text-align:left;border:1px solid var(--color-border-default,#d6dae2);border-radius:var(--r-card);background:var(--color-bg-app,#fff);cursor:pointer;grid-template-columns:56px minmax(0,1fr);align-items:center;display:grid}.play-mobile-sheet .deckopt[aria-pressed=true]{border:2px solid var(--color-lang-purple,#7c52d4);background:var(--color-lang-tint-soft,color-mix(in srgb, var(--color-lang-purple,#7c52d4) 6%, #fff))}.play-mobile-sheet .deckopt[disabled]{background:var(--color-bg-subtle,#f7f8fa);cursor:not-allowed}.play-mobile-sheet .deckopt img{aspect-ratio:1;border-radius:var(--r-img);object-fit:cover;background:var(--color-bg-muted,#eef1f6);width:56px}.play-mobile-sheet .deckopt strong{margin-bottom:2px;display:block}.play-mobile-sheet .empty{padding:var(--space-6,24px);text-align:center;color:var(--color-ink-tertiary,#6b7280);border:1px dashed var(--color-border-default,#d6dae2);border-radius:var(--r-card)}.play-mobile-sheet .scores{margin:var(--space-4,16px) 0;border:1px solid var(--color-border-subtle,#e5e8ee);border-radius:var(--r-card);grid-template-columns:repeat(3,1fr);display:grid}.play-mobile-sheet .scores div{padding:var(--space-3,12px);text-align:center;color:var(--color-ink-tertiary,#6b7280);font-size:var(--type-caption-size,12px);border-right:1px solid var(--color-border-subtle,#e5e8ee)}.play-mobile-sheet .scores div:last-child{border-right:0}.play-mobile-sheet .scores b{margin-top:var(--space-1,4px);font-size:var(--type-m-h3,17px);color:var(--color-ink-primary,#0b0d12);font-variant-numeric:tabular-nums;display:block}.play-mobile-sheet .scores div:first-child b{color:var(--color-lang-purple,#7c52d4)}.play-mobile-sheet .frame{padding:var(--space-3,12px);background:var(--color-bg-subtle,#f7f8fa);border-radius:var(--r-card);place-items:center;display:grid}.play-mobile-sheet .frameinner{aspect-ratio:9/16;gap:var(--space-2,8px);width:min(280px,100%);padding:var(--space-4,16px);background:var(--color-bg-app,#fff);border:1px solid var(--color-border-subtle,#e5e8ee);border-radius:var(--r-card);flex-direction:column;display:flex;overflow:hidden}.play-mobile-sheet .sb-scene{aspect-ratio:16/9;padding:var(--space-2,8px);text-align:center;border-radius:var(--r-card);background:var(--color-bg-muted,#eef1f6);color:var(--color-ink-tertiary,#6b7280);font-size:var(--type-caption-size,12px);place-items:center;display:grid}.play-mobile-sheet .sb-story{font-size:var(--type-body-sm-size,14px);flex:1;line-height:1.9;overflow:auto}.play-mobile-sheet .sb-blank{min-width:80px;min-height:44px;padding:0 var(--space-3,12px);background:var(--color-bg-app,#fff);color:var(--color-ink-primary,#0b0d12);border:1px solid var(--color-border-default,#d6dae2);border-radius:var(--r-card);transition:border-color var(--duration-base,.2s) var(--easing-standard,cubic-bezier(.2, .8, .2, 1)), background-color var(--duration-base,.2s) var(--easing-standard,cubic-bezier(.2, .8, .2, 1));justify-content:center;align-items:center;display:inline-flex}.play-mobile-sheet .sb-blank[data-state=filled]{border-color:var(--color-lang-purple,#7c52d4);background:color-mix(in srgb, var(--color-lang-purple,#7c52d4) 8%, #fff)}.play-mobile-sheet .sb-blank[data-state=correct]{border-color:var(--color-status-success,#15c8a0)}.play-mobile-sheet .sb-blank[data-state=incorrect]{border-color:var(--color-status-danger,#e5484d)}.play-mobile-sheet .sb-wordbank{z-index:var(--z-sticky,100);gap:var(--space-2,8px);padding:var(--space-2,8px);background:var(--color-bg-app,#fff);border-top:1px solid var(--color-border-subtle,#e5e8ee);flex-wrap:wrap;display:flex;position:sticky;bottom:0}.play-mobile-sheet .sb-chip{min-height:44px;padding:0 var(--space-3,12px);background:var(--color-bg-app,#fff);color:var(--color-ink-primary,#0b0d12);border:1px solid var(--color-border-default,#d6dae2);border-radius:var(--r-btn);font-weight:var(--font-weight-medium,500);font-size:var(--type-body-sm-size,14px);align-items:center;display:inline-flex}.play-mobile-sheet .sb-chip[data-state=placed]{opacity:.4;pointer-events:none}@media (width>=430px){.play-mobile-app{--brainy-hero:96px}}@media (width<=320px){.play-mobile-app{--brainy-hero:72px;--type-m-h1:22px}.play-mobile-app .btnrow{grid-template-columns:1fr}}.playpg{--r-btn:4px;--r-card:8px;--r-chip:4px;--r-img:0;--logical-w:810;--logical-h:1440;--logical-ar:9 / 16;--gutter:var(--color-bg-subtle);--game-safe-area:16px;background:var(--color-bg-app);color:var(--color-ink-primary);font-family:var(--font-text);font-size:var(--type-body-size);min-height:100dvh;line-height:1.5}.playpg .game--catchMeaning,.playpg .game--storyBlanks{--logical-w:810;--logical-h:1440;--logical-ar:9/16}.playpg *,.playpg :before,.playpg :after{box-sizing:border-box}.playpg button,.playpg input{font:inherit;color:inherit}.playpg button{cursor:pointer;background:0 0;border:0}.playpg :focus-visible{outline:none}.playpg svg{fill:none;stroke:currentColor;stroke-width:1.75px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.playpg [hidden]{display:none!important}.playpg .visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.playpg .skip{left:var(--space-4);top:calc(var(--space-9) * -1);z-index:var(--z-toast);padding:var(--space-3) var(--space-4);border-radius:var(--r-btn);background:var(--color-lang-purple);color:var(--color-ink-on-color);font-weight:var(--font-weight-bold);transition:top var(--duration-base) var(--easing-standard);text-decoration:none;position:absolute}.playpg .skip:focus{top:var(--space-4)}@media (prefers-reduced-motion:reduce){.playpg *,.playpg :before,.playpg :after{transition-duration:1ms!important;animation:none!important}}.playpg .btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:44px;padding:0 var(--space-5);border-radius:var(--r-btn);border:1px solid var(--color-lang-purple);background:var(--color-bg-app);color:var(--color-lang-purple);font-weight:var(--font-weight-bold);letter-spacing:var(--tracking-snug);transition:background var(--duration-fast) var(--easing-standard);text-decoration:none;display:inline-flex}.playpg .btn:hover{background:var(--color-bg-subtle)}.playpg .btn--primary{background:var(--color-lang-purple);color:var(--color-ink-on-color)}.playpg .btn--primary:hover{background:var(--color-lang-purple-hover)}.playpg .btn--primary:active{background:var(--color-lang-purple-pressed)}.playpg .btn--quiet{border-color:var(--color-border-default);color:var(--color-ink-secondary)}.playpg .btn--block{width:100%}.playpg .btn[disabled]{background:var(--color-bg-muted);border-color:var(--color-border-default);color:var(--color-ink-tertiary);cursor:not-allowed}.playpg .btn svg{width:18px;height:18px}.playpg .wrap{max-width:var(--container-max);padding:var(--space-8) var(--space-6) var(--space-6);margin-inline:auto}.playpg .head{min-height:150px;padding-right:var(--space-12);position:relative}.playpg .head h1{font-family:var(--font-display);font-size:var(--type-display-lg-size);font-weight:var(--font-weight-black);letter-spacing:var(--tracking-tight);margin:0}.playpg .head__sub{margin:var(--space-4) 0 0;color:var(--color-ink-tertiary);font-size:var(--type-body-lg-size)}.playpg .badge{align-items:center;gap:var(--space-2);vertical-align:middle;margin-left:var(--space-4);padding:var(--space-2) var(--space-3);border-radius:var(--r-btn);background:var(--color-lang-purple);color:var(--color-ink-on-color);font-size:var(--type-body-sm-size);font-weight:var(--font-weight-bold);display:inline-flex}.playpg .brainy{height:var(--brainy-hero-desktop);pointer-events:none;background:0 0;width:auto;position:absolute;top:0;right:0}.playpg .brainy__slot{width:var(--brainy-card-hero);aspect-ratio:1;padding:var(--space-3);text-align:center;border:1px dashed var(--color-border-default);border-radius:var(--r-btn);background:var(--color-bg-subtle);color:var(--color-ink-tertiary);font-size:var(--type-caption-size);place-items:center;display:grid;position:absolute;top:0;right:0}.playpg .status{align-items:center;gap:var(--space-3);min-height:72px;margin-top:var(--space-6);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border-default);border-radius:var(--r-card);background:var(--color-bg-subtle);display:none}.playpg .status[data-show=true]{display:flex}.playpg .status__bust{width:var(--brainy-chip-min);aspect-ratio:1;border-radius:var(--r-btn);background:var(--color-bg-muted);color:var(--color-ink-tertiary);font-size:var(--type-caption-size);place-items:center;display:grid;overflow:hidden}.playpg .status p{color:var(--color-ink-secondary);margin:0}.playpg .status strong{color:var(--color-ink-primary)}.playpg .grid{gap:var(--space-6);margin-top:var(--space-6);grid-template-columns:minmax(0,2fr) minmax(320px,1fr);display:grid}.playpg .stack{align-content:start;gap:var(--space-4);display:grid}.playpg .card{padding:var(--space-6);border:1px solid var(--color-border-subtle);border-radius:var(--r-card);background:var(--color-bg-app)}.playpg .card__title{font-family:var(--font-display);font-size:var(--type-h3-size);letter-spacing:var(--tracking-snug);margin:0}.playpg .small{color:var(--color-ink-tertiary);font-size:var(--type-body-sm-size)}.playpg .chip{min-height:32px;padding:0 var(--space-3);border-radius:var(--r-btn);background:var(--color-lang-tint);color:var(--color-lang-purple);font-size:var(--type-label-size);font-weight:var(--font-weight-semibold);align-items:center;display:inline-flex}.playpg .chip--bronze{background:color-mix(in srgb, var(--color-status-warning) 18%, var(--color-bg-app));color:var(--color-ink-secondary)}.playpg .chip--silver{background:var(--color-bg-muted);color:var(--color-ink-secondary)}.playpg .chip--gold{background:color-mix(in srgb, var(--color-brand-mint) 18%, var(--color-bg-app));color:var(--color-ink-secondary)}.playpg .game{gap:var(--space-5);grid-template-columns:88px minmax(0,1fr) auto;align-items:center;display:grid;position:relative}.playpg .game--featured{border:2px solid var(--color-lang-purple)}.playpg .game__flag{top:calc(var(--space-4) * -1);left:var(--space-5);padding:var(--space-1) var(--space-3);border-radius:var(--r-btn);background:var(--color-lang-purple);color:var(--color-ink-on-color);font-size:var(--type-label-size);font-weight:var(--font-weight-bold);margin:0;position:absolute}.playpg .game__icon{aspect-ratio:1;border-radius:var(--r-btn);background:var(--color-lang-tint);width:88px;color:var(--color-lang-purple);place-items:center;display:grid}.playpg .game__icon svg{width:38px;height:38px}.playpg .game__name{font-family:var(--font-display);font-size:var(--type-h2-size);letter-spacing:var(--tracking-tight);margin:0}.playpg .game__desc{margin:var(--space-2) 0 0;color:var(--color-ink-secondary)}.playpg .game__meta{align-items:center;gap:var(--space-4);margin-top:var(--space-3);color:var(--color-ink-tertiary);font-size:var(--type-body-sm-size);flex-wrap:wrap;display:flex}.playpg .game__meta b{font-variant-numeric:tabular-nums;color:var(--color-ink-primary)}.playpg .game__actions{gap:var(--space-3);display:flex}.playpg .renderer{font-family:var(--font-mono);font-size:var(--type-caption-size);color:var(--color-ink-tertiary)}.playpg .deck{gap:var(--space-4);grid-template-columns:120px minmax(0,1fr);display:grid}.playpg .deck__art{aspect-ratio:1;border-radius:var(--r-img);object-fit:cover;background:var(--color-bg-muted);width:120px}.playpg .deck__name{margin:var(--space-2) 0 var(--space-1);font-family:var(--font-display);font-size:var(--type-h3-size);letter-spacing:var(--tracking-snug)}.playpg .bar{height:10px;margin:var(--space-4) 0 var(--space-2);border-radius:var(--r-btn);background:var(--color-bg-muted);overflow:hidden}.playpg .bar span{background:var(--color-lang-purple);height:100%;display:block}.playpg .rowline{justify-content:space-between;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--color-border-subtle);margin:0;display:flex}.playpg .rowline:last-of-type{border-bottom:0}.playpg .rowline b{font-variant-numeric:tabular-nums}.playpg .fair{align-items:center;gap:var(--space-3);margin-top:var(--space-4);padding:var(--space-3) var(--space-4);border-radius:var(--r-btn);background:var(--color-bg-subtle);color:var(--color-ink-secondary);font-size:var(--type-body-sm-size);display:flex}.playpg .note{margin-top:var(--space-4);padding:var(--space-3) var(--space-4);border:1px dashed var(--color-border-default);border-radius:var(--r-btn);color:var(--color-ink-tertiary);font-size:var(--type-body-sm-size)}.playpg .sizes{gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.playpg .size{min-width:56px;min-height:44px;padding:0 var(--space-4);border-radius:var(--r-btn);border:1px solid var(--color-border-default);color:var(--color-ink-secondary);font-weight:var(--font-weight-bold);font-variant-numeric:tabular-nums;transition:background var(--duration-fast) var(--easing-standard)}.playpg .size[aria-pressed=true]{background:var(--color-lang-purple);border-color:var(--color-lang-purple);color:var(--color-ink-on-color)}.playpg .week{gap:var(--space-2);margin-top:var(--space-3);grid-template-columns:repeat(7,1fr);display:grid}.playpg .day{text-align:center;color:var(--color-ink-tertiary);font-size:var(--type-caption-size);margin:0}.playpg .day i{aspect-ratio:1;margin-bottom:var(--space-1);border-radius:var(--r-btn);background:var(--color-lang-purple);display:block}.playpg .day[data-off] i{background:var(--color-bg-app);border:1px dashed var(--color-border-default)}.playpg .skel{background:var(--color-bg-muted);border-radius:var(--r-btn)}.playpg .skel--line{height:18px;margin:var(--space-2) 0}.playpg .skel--btn{border-radius:var(--r-btn);width:120px;height:44px}.playpg .skel--img{height:120px}.playpg .w70{width:70%}.playpg .w45{width:45%}.playpg .w25{width:25%}.playpg .overlay{z-index:var(--z-modal);padding:var(--space-4);background:#0b0d1266;display:none;position:fixed;inset:0;overflow:auto}@media (width>=768px){.playpg .overlay{padding:var(--space-6)}}.playpg .overlay[data-open=true]{place-items:center;display:grid}.playpg .modal{width:min(720px,100%);padding:var(--space-4);background:var(--color-bg-app);border:1px solid var(--color-border-subtle);border-radius:var(--r-card);position:relative}@media (width>=768px){.playpg .modal{padding:var(--space-6)}}.playpg .modal--wide{width:min(1040px,100%)}.playpg .modal--deck-launch{width:min(var(--container-max,1200px), 860px);padding:var(--space-4);max-height:calc(100dvh - var(--space-4) * 2);background:var(--color-bg-app);border:1px solid var(--color-border-subtle);border-radius:var(--r-card);overflow-y:auto}@media (width>=768px){.playpg .modal--deck-launch{padding:var(--space-6);max-height:calc(100dvh - var(--space-6) * 2)}}.playpg .deck-launch__grid{gap:var(--space-4);flex-direction:column;display:flex}@media (width>=768px){.playpg .deck-launch__grid{gap:var(--space-6);grid-template-columns:min(320px,40%) minmax(0,1fr);align-items:start;display:grid}}.playpg .deck-launch__art-wrap{justify-content:center;align-items:center;width:100%;display:flex}.playpg .deck-launch__art{aspect-ratio:1;object-fit:cover;border-radius:var(--r-img);background:var(--color-bg-muted);width:min(56vw,240px);max-width:320px;display:block}@media (width<=375px){.playpg .deck-launch__art{width:min(56vw,190px)}}@media (width>=768px){.playpg .deck-launch__art{border-radius:var(--radius-lg);width:100%;max-width:320px}}.playpg .deck-launch__body{gap:var(--space-4);flex-direction:column;display:flex}.playpg .deck-launch__header{gap:var(--space-1);flex-direction:column;display:flex}.playpg .deck-launch__tier-row{align-items:center;gap:var(--space-2);display:flex}.playpg .chip--lang-purple{background:var(--color-lang-tint);color:var(--color-lang-purple);border:1px solid var(--color-lang-purple);font-weight:var(--font-weight-bold)}.playpg .deck-launch__title{margin:var(--space-1) 0 0;font-family:var(--font-display);font-size:var(--type-h2-size);font-weight:var(--font-weight-black);letter-spacing:var(--tracking-tight);color:var(--color-ink-primary);line-height:var(--type-h2-line)}@media (width<=375px){.playpg .deck-launch__title{font-size:var(--type-h3-size)}}.playpg .deck-launch__bar{height:8px;margin:var(--space-2) 0 var(--space-1);border-radius:var(--r-btn);background:var(--color-bg-muted);overflow:hidden}.playpg .deck-launch__bar span{background:var(--color-lang-purple);border-radius:var(--r-btn);height:100%;display:block}.playpg .deck-launch__mastery{color:var(--color-ink-secondary);font-size:var(--type-body-sm-size);margin:0}.playpg .deck-launch__section{gap:var(--space-2);flex-direction:column;display:flex}.playpg .deck-launch__section-header{justify-content:space-between;align-items:baseline;gap:var(--space-2);display:flex}.playpg .deck-launch__section-title{font-family:var(--font-display);font-size:var(--type-h4-size);font-weight:var(--font-weight-bold);color:var(--color-ink-primary);margin:0}.playpg .deck-launch__section-desc,.playpg .deck-launch__hint{color:var(--color-ink-tertiary);font-size:var(--type-caption-size);margin:0}.playpg .deck-launch__actions{gap:var(--space-2);flex-direction:column;display:flex}.playpg .deck-launch__meta{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.playpg .deck-launch__fair{padding:var(--space-2) var(--space-3);font-size:var(--type-caption-size);border-radius:var(--r-btn);background:var(--color-bg-subtle);color:var(--color-ink-secondary);align-items:center;gap:var(--space-2);flex:1;margin:0;display:flex}.playpg .deck-launch__fair svg{width:16px;height:16px;color:var(--color-ink-tertiary);flex-shrink:0}.playpg .deck-launch__mascot{flex-shrink:0;justify-content:center;align-items:center;min-width:48px;min-height:48px;display:flex}.playpg .deck-launch__brainy-img{object-fit:contain;width:48px;height:48px;min-height:40px}.playpg .modal__title{margin:0 0 var(--space-2);font-family:var(--font-display);font-size:var(--type-h2-size);letter-spacing:var(--tracking-tight)}.playpg .modal__close{top:var(--space-4);right:var(--space-4);border-radius:var(--r-card);width:44px;height:44px;color:var(--color-ink-secondary);place-items:center;display:grid;position:absolute}.playpg .modal__foot{justify-content:space-between;align-items:center;gap:var(--space-4);margin-top:var(--space-6);padding-top:var(--space-5);border-top:1px solid var(--color-border-subtle);flex-wrap:wrap;display:flex}.playpg .modal__actions{gap:var(--space-3);display:flex}.playpg .tabs{gap:var(--space-6);margin:var(--space-5) 0;border-bottom:1px solid var(--color-border-subtle);display:flex}.playpg .tab{padding-bottom:var(--space-3);color:var(--color-ink-secondary);font-weight:var(--font-weight-bold);border-bottom:2px solid #0000}.playpg .tab[aria-selected=true]{color:var(--color-lang-purple);border-color:var(--color-lang-purple)}.playpg .search{width:100%;min-height:44px;margin-bottom:var(--space-4);padding:0 var(--space-4);border:1px solid var(--color-border-default);border-radius:var(--r-btn)}.playpg .decks{gap:var(--space-4);grid-template-columns:repeat(3,1fr);display:grid}.playpg .deckopt{gap:var(--space-3);padding:var(--space-3);text-align:left;border:1px solid var(--color-border-default);border-radius:var(--r-btn);grid-template-columns:80px minmax(0,1fr);display:grid}.playpg .deckopt[aria-pressed=true]{border:2px solid var(--color-lang-purple);background:var(--color-lang-tint-soft)}.playpg .deckopt img{aspect-ratio:1;border-radius:var(--r-img);object-fit:cover;background:var(--color-bg-muted);width:80px}.playpg .deckopt strong{margin-bottom:var(--space-1);display:block}.playpg .scores{margin:var(--space-5) 0;border:1px solid var(--color-border-subtle);border-radius:var(--r-btn);grid-template-columns:repeat(3,1fr);display:grid}.playpg .scores div{padding:var(--space-4);text-align:center;color:var(--color-ink-tertiary);font-size:var(--type-body-sm-size);border-right:1px solid var(--color-border-subtle)}.playpg .scores div:last-child{border-right:0}.playpg .scores b{margin-top:var(--space-2);font-size:var(--type-h3-size);color:var(--color-ink-primary);font-variant-numeric:tabular-nums;display:block}.playpg .scores div:first-child b{color:var(--color-lang-purple)}.playpg .frame{padding:var(--space-4);background:var(--gutter);border-radius:var(--r-btn);place-items:center;display:grid}.playpg .frame__inner{width:min(280px,100%);aspect-ratio:var(--logical-ar);gap:var(--space-2);padding:var(--game-safe-area);background:var(--color-bg-app);border:1px solid var(--color-border-subtle);border-radius:var(--r-btn);flex-direction:column;display:flex;overflow:hidden}.playpg .frame__caption{margin-top:var(--space-3);text-align:center}.playpg .sb-scene{border-radius:var(--r-btn);background:var(--color-bg-muted);aspect-ratio:16/9;color:var(--color-ink-tertiary);font-size:var(--type-caption-size);text-align:center;padding:var(--space-2);place-items:center;display:grid}.playpg .sb-story{font-size:var(--type-body-sm-size);color:var(--color-ink-primary);flex:1;line-height:1.8;overflow:auto}.playpg .sb-blank{min-width:88px;min-height:44px;padding:0 var(--space-3);border:1px solid var(--color-border-default);border-radius:var(--r-btn);background:var(--color-bg-app);color:var(--color-ink-primary);transition:border-color var(--duration-base) var(--easing-standard), background-color var(--duration-base) var(--easing-standard);justify-content:center;align-items:center;display:inline-flex}.playpg .sb-blank[data-state=filled]{border-color:var(--color-lang-purple);background:color-mix(in srgb, var(--color-lang-purple) 8%, var(--color-bg-app))}.playpg .sb-blank[data-state=correct]{border-color:var(--color-status-success)}.playpg .sb-blank[data-state=incorrect]{border-color:var(--color-status-danger)}.playpg .sb-blank:focus-visible{outline:none}.playpg .sb-wordbank{z-index:var(--z-sticky);gap:var(--space-2);padding:var(--space-3) var(--space-4);background:var(--color-bg-app);border-top:1px solid var(--color-border-subtle);flex-wrap:wrap;display:flex;position:sticky;bottom:0}.playpg .sb-chip{min-height:44px;padding:0 var(--space-4);border:1px solid var(--color-border-default);border-radius:var(--r-btn);background:var(--color-bg-app);color:var(--color-ink-primary);font-size:var(--type-body-size);font-weight:var(--font-weight-medium);align-items:center;display:inline-flex}.playpg .sb-chip[data-state=placed]{opacity:.4;pointer-events:none}.playpg .sb-chip:focus-visible{outline:none}.playpg .harness{left:var(--space-4);bottom:var(--space-4);z-index:var(--z-toast);align-items:center;gap:var(--space-3);padding:var(--space-3);background:var(--color-bg-app);border:1px solid var(--color-border-default);border-radius:var(--r-btn);display:flex;position:fixed}.playpg .harness label{font-size:var(--type-label-size);font-weight:var(--font-weight-bold)}.playpg .harness select{max-width:280px;min-height:40px;padding:0 var(--space-2);border:1px solid var(--color-border-default);border-radius:var(--r-btn)}@media (width<=1280px){.playpg .wrap{padding-inline:var(--space-5)}}@media (width<=1024px){.playpg .grid{grid-template-columns:1fr}.playpg .decks{grid-template-columns:repeat(2,1fr)}.playpg .head{padding-right:0}.playpg .brainy,.playpg .brainy__slot{margin-top:var(--space-4);position:static}}@media (width<=768px){.playpg .head h1{font-size:var(--type-display-md-size)}.playpg .game{grid-template-columns:64px minmax(0,1fr)}.playpg .game__icon{width:64px}.playpg .game__icon svg{width:28px;height:28px}.playpg .game__actions{grid-column:1/-1}.playpg .decks{grid-template-columns:1fr}.playpg .harness{right:var(--space-4)}}@media (width<=375px){.playpg .wrap{padding-inline:var(--space-4)}.playpg .head h1{font-size:var(--type-h1-size)}.playpg .deck{grid-template-columns:1fr}.playpg .deck__art{width:100%}.playpg .game__actions{flex-direction:column}.playpg .game__actions .btn{width:100%}}
