@layer components{.button_wrap{--_button-bg:var(--color-text-primary);--_button-color:var(--color-white);--_button-border:var(--color-text-primary);--_button-shadow:var(--button-shadow-primary);justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--size-button-md);padding:var(--space-2) var(--space-5);border:var(--border-width) solid var(--_button-border);border-radius:var(--radius-pill);background:var(--_button-bg);color:var(--_button-color);font-family:var(--primary-family);font-size:var(--button-font-size);font-weight:var(--primary-bold);line-height:var(--line-height-large);text-align:center;cursor:pointer;box-shadow:var(--_button-shadow);transition:transform var(--hover-duration) var(--hover-ease), box-shadow var(--hover-duration) var(--hover-ease);text-decoration:none;display:inline-flex}.button_wrap.secondary{--_button-bg:var(--color-white);--_button-color:var(--color-text-primary);--_button-border:var(--color-border);--_button-shadow:var(--button-shadow-secondary);border-width:calc(var(--border-width) * 2)}.button_wrap.accent-yellow{--_button-bg:var(--color-brand-yellow);--_button-color:var(--color-text-primary);--_button-border:var(--color-brand-yellow);--_button-shadow:var(--button-shadow-accent)}.button_wrap.status-green{--_button-bg:var(--color-green-surface);--_button-color:var(--color-green-text);--_button-border:var(--color-green-surface);--_button-shadow:var(--button-shadow-green)}.button_wrap.status-yellow{--_button-bg:var(--color-brand-yellow);--_button-color:var(--color-text-primary);--_button-border:var(--color-brand-yellow);--_button-shadow:var(--button-shadow-yellow)}.button_wrap.status-peach{--_button-bg:var(--color-peach-surface);--_button-color:var(--color-peach-text);--_button-border:var(--color-peach-surface);--_button-shadow:var(--button-shadow-peach)}.button_wrap.secondary[aria-pressed=true]{--_button-bg:var(--color-yellow-tile);--_button-border:var(--color-text-primary)}.button_wrap.ghost{--_button-bg:transparent;--_button-color:var(--color-text-primary);--_button-border:transparent;--_button-shadow:none;padding-inline:var(--space-3);text-decoration:underline;text-decoration-thickness:var(--border-width);text-underline-offset:.25em}.button_wrap.danger{--_button-bg:var(--color-error);--_button-color:var(--color-white);--_button-border:var(--color-error);--_button-shadow:var(--button-shadow-danger)}.button_wrap.sm{min-height:var(--size-button-sm);padding:var(--space-1) var(--space-4);font-size:var(--text-small)}.button_wrap.lg{min-height:var(--size-button-lg);padding:var(--space-3) var(--space-6);font-size:var(--text-main)}@media (hover:hover){.button_wrap:hover:not(:disabled,[aria-disabled=true]){transform:translateY(calc(var(--border-width) * -2))}.button_wrap.ghost:hover:not(:disabled,[aria-disabled=true]){text-decoration-thickness:calc(var(--border-width) * 2);transform:none}}.button_wrap:disabled,.button_wrap[aria-disabled=true]{cursor:not-allowed;opacity:.5}.button_wrap[aria-busy=true]{cursor:progress}.button_wrap[aria-busy=true]:before{content:"";border:calc(var(--border-width) * 2) solid currentcolor;border-radius:var(--radius-pill);border-inline-end-color:#0000;width:1em;height:1em;animation:.8s linear infinite button-spin}@keyframes button-spin{to{transform:rotate(360deg)}}.button_wrap:active:not(:disabled,[aria-disabled=true]){transform:translateY(var(--space-1));box-shadow:var(--button-shadow-pressed)}.button_wrap:focus-visible{outline:var(--outline-focus);outline-offset:var(--outline-offset-focus)}.button_icon:empty,.button_label:empty{display:none}.tour-layer{z-index:1000;position:fixed;inset:0}.tour-spot{outline:3px solid var(--color-brand-yellow);pointer-events:none;border-radius:1rem;transition:top .25s,left .25s,width .25s,height .25s;position:fixed;box-shadow:0 0 0 9999px #11182799}.tour-bubble{width:min(22rem,100vw - 2rem);padding:var(--space-5) var(--space-6) var(--space-5);border:calc(var(--border-width) * 2) solid var(--color-text-primary);border-radius:var(--radius-card);background:var(--color-white);box-shadow:0 .5rem 0 var(--color-text-primary);position:fixed}.tour-bubble.is-sheet{width:auto;inset:auto 1rem 1rem}.tour-bubble h2{margin:var(--space-2) 0 var(--space-3);letter-spacing:0;font-size:1.25rem;line-height:1.25}.tour-bubble p{line-height:var(--line-height-large);margin:0}.tour-bubble .tour-count{color:var(--color-text-muted);line-height:1.3;font-size:var(--text-small);font-weight:var(--primary-bold)}.tour-bubble_actions{justify-content:space-between;align-items:center;gap:var(--space-3) var(--space-4);margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--color-border);flex-wrap:wrap;display:flex}.tour-bubble_actions>span{gap:var(--space-3);margin-left:auto;display:flex}.tour-link{color:var(--color-text-secondary);font:inherit;cursor:pointer;background:0 0;border:0;padding:.5rem 0;text-decoration:underline}.tour-backdrop{z-index:1000;background:#11182799;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.tour-welcome{gap:var(--space-3);width:min(30rem,100%);padding:var(--space-6) var(--space-5);border-radius:var(--radius-card);background:var(--color-white);text-align:center;flex-direction:column;display:flex}.tour-welcome h2{letter-spacing:0;margin:0;font-size:1.6rem;line-height:1.2}.tour-welcome p{color:var(--color-text-secondary);margin:0}.tour-welcome_options{gap:var(--space-3);margin-top:var(--space-2);grid-template-columns:1fr 1fr;display:grid}.tour-choice{padding:var(--space-4) var(--space-3);border:calc(var(--border-width) * 2) solid var(--color-text-primary);background:var(--color-brand-yellow);font:inherit;text-align:center;cursor:pointer;box-shadow:0 .25rem 0 var(--color-text-primary);border-radius:1rem;flex-direction:column;gap:.25rem;display:flex}.tour-choice span{font-size:var(--text-small)}.tour-choice:focus-visible,.tour-level:focus-visible{outline:var(--outline-focus);outline-offset:2px}.tour-welcome_label{font-size:var(--text-small);margin-top:var(--space-2)!important}.tour-welcome_levels{justify-content:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.tour-level{border:2px solid var(--color-border);min-width:3rem;min-height:2.75rem;font:inherit;font-weight:var(--primary-bold);cursor:pointer;background:#fff;border-radius:999px}.tour-offer{z-index:900;width:min(21rem,100vw - 2rem);padding:var(--space-4);border:calc(var(--border-width) * 2) solid var(--color-text-primary);border-radius:var(--radius-card);background:var(--color-white);box-shadow:0 .4rem 0 var(--color-text-primary);position:fixed;bottom:1rem;right:1rem}.tour-offer p{margin:0 0 var(--space-3)}.tour-help{z-index:800;border:calc(var(--border-width) * 2) solid var(--color-text-primary);background:var(--color-white);width:2.75rem;height:2.75rem;color:var(--color-text-primary);font:800 1.125rem var(--font-mono);box-shadow:0 .25rem 0 var(--color-text-primary);cursor:pointer;border-radius:50%;place-items:center;display:grid;position:fixed;bottom:1rem;right:1rem}.tour-help:hover{background:var(--color-brand-yellow)}.tour-help:focus-visible{outline:var(--outline-focus);outline-offset:3px}.tour-offer_actions{align-items:center;gap:var(--space-3);display:flex}.section-hint{align-items:flex-start;gap:var(--space-3);width:min(100% - 2 * var(--site-margin), 60rem);margin:var(--space-4) auto 0;padding:var(--space-3) var(--space-4);background:#eef6ff;border-radius:1rem;display:flex}.section-hint_icon{color:#fff;width:1.5rem;height:1.5rem;font:800 .8125rem var(--font-mono);background:#1368ce;border-radius:50%;flex:none;place-items:center;margin-top:.1rem;display:grid}.section-hint p{line-height:var(--line-height-large);flex:1;margin:0}.section-hint_close{cursor:pointer;background:0 0;border:0;min-width:2.75rem;min-height:2.75rem;margin:-.5rem -.75rem -.5rem 0;font-size:1.25rem}@media (width<30rem){.tour-welcome_options{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.tour-spot{transition:none}}.puzzle-tutorial,.puzzle-tutorial h2{text-align:left}.puzzle-tutorial_step{font-size:var(--text-small)}.puzzle-tutorial_body{gap:var(--space-2);color:var(--color-text-secondary);display:grid}.puzzle-tutorial_body ul{gap:var(--space-2);margin:0;padding-inline-start:1.2rem;display:grid}.puzzle-tutorial_body p{margin:0}.puzzle-tutorial_actions{gap:var(--space-2);justify-content:flex-end;display:flex}.other-games{margin-top:var(--space-3)}.site-header_lock{opacity:.7;margin-inline-start:.35em;font-size:.75em;font-weight:400}.site-header_wrap{z-index:var(--z-header);width:min(calc(100% - 2 * var(--site-margin)), 68rem);justify-content:space-between;align-items:center;gap:var(--space-3);min-height:4rem;margin:var(--space-3) auto 0;padding:var(--space-2) var(--space-2) var(--space-2) var(--space-3);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-pill);-webkit-backdrop-filter:blur(.75rem);backdrop-filter:blur(.75rem);transition:min-height var(--hover-duration) var(--hover-ease), box-shadow var(--hover-duration) var(--hover-ease), transform .25s ease;background:#fffffff0;display:flex;position:sticky;inset-block-start:var(--space-3);box-shadow:0 .25rem #1113180f,0 .75rem 2rem -1rem #11131840}.site-header_wrap.is-hidden{transform:translateY(calc(-100% - var(--space-4)))}@media (prefers-reduced-motion:reduce){.site-header_wrap{transition:none}}.site-header_wrap.is-scrolled{min-height:3.5rem;box-shadow:0 .25rem #11131814,0 1rem 2.5rem -.75rem #11131859}.site-header_brand{align-items:center;gap:var(--space-2);color:var(--color-text-primary);font-size:var(--h6);text-decoration:none;display:flex}.site-header_brand span{width:var(--size-brand-mark);height:var(--size-brand-mark);border-radius:var(--radius-pill);background:var(--color-brand-yellow);font-weight:var(--primary-bold);place-items:center;display:grid}.site-header_links,.site-header_actions{align-items:center;gap:var(--space-3);display:flex}.site-header_links{margin-inline-start:var(--space-4);margin-inline-end:auto}.site-header_links a,.site-header_menu nav a:not(.button_wrap){min-height:var(--size-button-sm);white-space:nowrap;color:var(--color-text-secondary);font-size:var(--text-small);font-weight:var(--primary-medium);align-items:center;text-decoration:none;display:inline-flex;position:relative}.site-header_links a:hover,.site-header_menu nav a:not(.button_wrap):hover{color:var(--color-text-primary)}.site-header_links a[aria-current=page],.site-header_menu nav a[aria-current=page]{color:var(--color-text-primary);font-weight:var(--primary-bold)}.site-header_links a[aria-current=page]:after{content:"";border-radius:var(--radius-pill);background:var(--color-brand-yellow);height:.1875rem;position:absolute;inset-block-end:var(--space-1);inset-inline:0}.site-header_menu nav a[aria-current=page]{box-shadow:inset .25rem 0 0 var(--color-brand-yellow);padding-inline-start:var(--space-3)}.site-header_actions .button_wrap{white-space:nowrap}.site-header_logoutForm{margin:0;display:inline-flex}.site-header_account{padding-top:var(--space-3);border-top:var(--border-width) solid var(--color-border);font-size:var(--text-small);margin:0;display:grid}.site-header_account span{color:var(--color-text-muted)}.site-header_menu{display:none}.header-profile_wrap{align-items:center;gap:var(--space-2);display:flex;position:relative}.header-profile_xp{align-items:center;gap:var(--space-1);min-width:5rem;padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);background:var(--color-yellow-tile);color:var(--color-text-primary);font-size:var(--text-small);white-space:nowrap;display:inline-flex}.header-profile_streak{align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);border-radius:var(--radius-pill);background:var(--color-surface-soft);font-size:var(--text-small);white-space:nowrap;display:inline-flex}.header-profile_toggle{width:var(--size-menu-button);height:var(--size-menu-button);border:calc(var(--border-width) * 2) solid var(--color-border-field);border-radius:var(--radius-pill);background:var(--color-white);color:var(--color-text-primary);font-family:var(--primary-family);font-weight:var(--primary-bold);cursor:pointer;place-items:center;display:grid}.header-profile_panel{width:var(--size-menu-panel);gap:var(--space-1);padding:var(--space-3) var(--space-4);border:calc(var(--border-width) * 2) solid var(--color-border);border-radius:var(--radius-tile);background:var(--color-white);box-shadow:var(--card-shadow);font-size:var(--text-small);display:grid;position:absolute;inset-block-start:calc(100% + var(--space-2));inset-inline-end:0}.header-profile_panel p{margin:0;display:grid}.header-profile_account span{color:var(--color-text-muted)}.header-profile_account,.header-profile_stat{margin-block-end:var(--space-2)}.header-profile_link{min-height:2.25rem;color:var(--color-text-primary);font-weight:var(--primary-medium);align-items:center;display:inline-flex}@media (width<64rem){.site-header_links,.site-header_actions .button_wrap,.header-profile_wrap .header-profile_toggle{display:none}.site-header_actions{margin-inline-start:auto}.site-header_menu{display:block;position:relative}.site-header_menu summary{width:var(--size-menu-button);height:var(--size-menu-button);justify-content:center;align-items:center;gap:var(--space-1);border:calc(var(--border-width) * 2) solid var(--color-border-field);border-radius:var(--radius-pill);cursor:pointer;flex-direction:column;list-style:none;display:flex}.site-header_menu summary::-webkit-details-marker{display:none}.site-header_menu summary span{width:var(--size-menu-mark);height:var(--border-width);background:var(--color-text-primary)}.site-header_menu nav{width:min(var(--size-menu-panel), calc(100vw - 2 * var(--site-margin)));overscroll-behavior:contain;gap:var(--space-1);max-height:calc(100dvh - 7rem);padding:var(--space-3);border:calc(var(--border-width) * 2) solid var(--color-border);border-radius:var(--radius-card);background:var(--color-white);box-shadow:var(--card-shadow);flex-direction:column;display:flex;position:absolute;inset-block-start:calc(100% + var(--space-2));inset-inline-end:0;overflow-y:auto}.site-header_menu nav .button_wrap{margin-top:var(--space-2)}}.sync-toast_wrap{z-index:var(--z-toast);max-width:min(24rem, calc(100vw - 2 * var(--space-4)));align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:calc(var(--border-width) * 2) solid var(--color-border);border-radius:var(--radius-tile);background:var(--color-white);color:var(--color-text-primary);font-size:var(--text-small);font-weight:var(--primary-bold);box-shadow:var(--card-shadow);display:flex;position:fixed;inset-block-end:var(--space-4);inset-inline-end:var(--space-4)}.sync-toast_wrap.is-info{border-color:var(--color-brand-yellow);background:var(--color-yellow-tile)}.sync-toast_wrap.is-error{border-color:var(--color-peach-solid);background:var(--color-peach-surface);color:var(--color-peach-text)}.sync-toast_close{padding:0 var(--space-1);color:inherit;font-size:var(--text-large);cursor:pointer;line-height:1}.site-footer_wrap{margin-top:var(--space-6);padding:var(--space-6) var(--site-margin) var(--space-4);border-radius:calc(var(--radius-card) * 2) calc(var(--radius-card) * 2) 0 0;color:#ffffffb8;font-size:var(--text-small);background:#15171e}.site-footer_inner{gap:var(--space-5);grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr);width:min(100%,68rem);margin-inline:auto;display:grid}.site-footer_brand{align-items:flex-start;gap:var(--space-3);flex-direction:column;display:flex}.site-footer_brand p{max-width:26rem;margin:0;line-height:1.55}.site-footer_logo{align-items:center;gap:var(--space-2);color:#fff;font-size:1.25rem;font-weight:800;text-decoration:none;display:inline-flex}.site-footer_logo span{color:#15171e;background:#ffd84d;border-radius:50%;place-items:center;width:2.5rem;height:2.5rem;display:grid}.site-footer_try{color:#ffd84d;font-weight:800;text-decoration:none}.site-footer_try:hover{text-decoration:underline}.site-footer_col{align-items:flex-start;gap:var(--space-2);flex-direction:column;display:flex}.site-footer_col b{margin-bottom:var(--space-1);color:#fff;letter-spacing:.06em;text-transform:uppercase;font-size:.8125rem}.site-footer_col a{color:#ffffffb8;overflow-wrap:anywhere;text-decoration:none}.site-footer_col a:hover{color:#fff;text-decoration:underline}.site-footer_wrap a:focus-visible{outline-offset:2px;outline:2px solid #ffd84d}.site-footer_bottom{justify-content:space-between;align-items:center;gap:var(--space-2) var(--space-4);width:min(100%,68rem);margin:var(--space-5) auto 0;padding-top:var(--space-3);color:#ffffff8c;border-top:1px solid #ffffff24;flex-wrap:wrap;display:flex}.site-footer_legal{align-items:center;gap:var(--space-1) var(--space-4);flex-wrap:wrap;display:flex}.site-footer_legal a{color:#ffffff8c;text-decoration:none}.site-footer_legal a:hover{color:#fff;text-decoration:underline}.site-footer_license{border-radius:var(--radius-pill);letter-spacing:.02em;cursor:help;border:1px solid #ffffff2e;padding:2px 10px;font-size:.75rem}@media (width<=48rem){.site-footer_inner{grid-template-columns:1fr 1fr}.site-footer_brand{grid-column:1/-1}}}
