:root{--color-primary:#ec4899;--color-secondary:#f9a8d4;--color-cta:#22c55e;--color-background:#fff;--color-surface:#f5f5f7;--color-text:#1d1d1f;--color-text-secondary:#86868b;--color-accent:#a855f7;--color-error:#ef4444;--color-white:#fff;--font-display:-apple-system, "SF Pro Display", system-ui, sans-serif;--font-text:-apple-system, "SF Pro Text", system-ui, sans-serif;--radius-sm:12px;--radius-md:16px;--radius-lg:24px;--radius-xl:28px;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--touch-target-min:80px;--gradient-pink:linear-gradient(135deg, #fdf2f8, #fbcfe8);--gradient-green:linear-gradient(135deg, #ecfdf5, #a7f3d0);--gradient-yellow:linear-gradient(135deg, #fef3c7, #fde68a);--gradient-purple:linear-gradient(135deg, #ede9fe, #c4b5fd);--gradient-blue:linear-gradient(135deg, #e0f2fe, #93c5fd);--gradient-orange:linear-gradient(135deg, #fff3e0, #ffcc80);--color-gray-50:#f9fafb;--color-gray-100:#f3f4f6;--color-gray-200:#e5e7eb;--color-gray-300:#d1d5db;--color-gray-400:#9ca3af;--color-gray-500:#6b7280;--canvas-warm-white:#faf7f2;--gradient-coloring:var(--canvas-warm-white);--gradient-cutting:var(--canvas-warm-white);--gradient-counting:var(--canvas-warm-white);--gradient-zhuyin:var(--canvas-warm-white);--gradient-stroke-order:var(--canvas-warm-white);--gradient-english:var(--canvas-warm-white);--gradient-find-diff:var(--canvas-warm-white);--gradient-pattern:var(--canvas-warm-white);--gradient-maze:var(--canvas-warm-white);--motion-tap-scale:.95;--motion-hover-lift:-10px;--motion-hover-scale:1.05;--motion-duration-xs:.2s;--motion-duration-sm:.25s;--motion-duration-md:.3s;--motion-duration-lg:.4s;--motion-duration-xl:.45s;--motion-ease-out:cubic-bezier(.16, 1, .3, 1);--motion-ease-out-soft:ease-out;--motion-ease-spring:cubic-bezier(.34, 1.4, .64, 1);--motion-spring-bounce:.5}@font-face{font-family:Open Huninn;src:url(/assets/fonts/jf-openhuninn-2.1.woff2)format("woff2");font-display:swap}:root{--clay-sky-top:#4fc3f1;--clay-sky-bottom:#c8eefb;--clay-text-brown:#7c4a2d;--clay-capsule-cream:#fbf4e4;--clay-accent-red:#e2574c;--clay-card-pink:#f8d3dc;--clay-card-yellow:#f7e5ae;--clay-card-green:#d6ecc2;--clay-card-blue:#c2e2f4;--clay-card-purple:#dcd2f0;--clay-card-orange:#f5d6b0;--clay-font:"Open Huninn", -apple-system, "PingFang TC", system-ui, sans-serif;--clay-radius-card:36px;--clay-radius-card-large:40px;--clay-radius-capsule:999px;--clay-shadow-outer:0 6px 16px #7a4a2d2e;--clay-shadow-inner-top:inset 0 2px 4px #fff9;--clay-shadow-card:var(--clay-shadow-outer), var(--clay-shadow-inner-top);--clay-shadow-pressed:0 3px 8px #7a4a2d24, var(--clay-shadow-inner-top);--clay-shadow-halo:0 0 0 6px #4fc3f138, var(--clay-shadow-card);--clay-press-scale-min:.94;--clay-press-scale:.95;--clay-press-scale-max:.96;--clay-motion-squish-min:.12s;--clay-motion-squish:.14s;--clay-motion-squish-max:.16s;--clay-motion-reduced-fade:.15s}.clay-text-emboss{color:var(--clay-text-brown);font-family:var(--clay-font);text-shadow:0 2px 0 var(--clay-capsule-cream), 0 4px 0 #7a4a2d1f, 0 7px 12px #7a4a2d38, 0 -1px 0 #ffffffb3, 1px 0 0 #ffffff73, -1px 0 0 #7a4a2d14}.clay-card{border-radius:var(--clay-radius-card);color:var(--clay-text-brown);font-family:var(--clay-font);background:var(--clay-capsule-cream);box-shadow:var(--clay-shadow-card);border:0;flex-direction:column;justify-content:center;gap:14px;padding:24px;display:flex}.clay-card--pink{background:var(--clay-card-pink)}.clay-card--yellow{background:var(--clay-card-yellow)}.clay-card--green{background:var(--clay-card-green)}.clay-card--blue{background:var(--clay-card-blue)}.clay-card--purple{background:var(--clay-card-purple)}.clay-card--orange{background:var(--clay-card-orange)}.clay-btn{border-radius:var(--clay-radius-capsule);min-width:88px;min-height:88px;color:var(--clay-text-brown);font:700 24px/1.15 var(--clay-font);text-align:center;background:var(--clay-capsule-cream);box-shadow:var(--clay-shadow-card);cursor:pointer;touch-action:manipulation;transform-origin:50%;transition:transform var(--clay-motion-squish) ease, box-shadow var(--clay-motion-squish) ease, opacity var(--clay-motion-squish) ease;-webkit-user-select:none;user-select:none;border:0;justify-content:center;align-items:center;padding:16px 24px;display:inline-flex}.clay-btn:active{box-shadow:var(--clay-shadow-pressed);transform:scale(var(--clay-press-scale))}.clay-btn--small{min-width:72px;min-height:72px;padding:12px 18px;font-size:20px}.clay-btn--lg{min-width:100px;min-height:100px;padding:20px 28px;font-size:26px}.clay-capsule{border-radius:var(--clay-radius-capsule);width:fit-content;min-height:44px;color:var(--clay-text-brown);font:700 18px/1.2 var(--clay-font);background:var(--clay-capsule-cream);box-shadow:var(--clay-shadow-card);justify-content:center;align-items:center;padding:8px 18px;display:inline-flex}.clay-star{border-radius:var(--clay-radius-capsule);width:56px;height:56px;color:var(--clay-text-brown);font-family:var(--clay-font);background:var(--clay-capsule-cream);box-shadow:var(--clay-shadow-card);transition:transform var(--clay-motion-squish) ease, box-shadow var(--clay-motion-squish) ease, opacity var(--clay-motion-squish) ease;place-items:center;display:inline-grid}.clay-star:before{content:"";clip-path:polygon(50% 6%,61% 36%,94% 36%,67% 55%,78% 88%,50% 69%,22% 88%,33% 55%,6% 36%,39% 36%);background:currentColor;width:36px;height:36px}.clay-star--filled{background:var(--clay-card-yellow)}.clay-star--empty{opacity:.55}.clay-halo{box-shadow:var(--clay-shadow-halo)}@media (prefers-reduced-motion:reduce){.clay-card,.clay-btn,.clay-capsule,.clay-star{transition:opacity var(--clay-motion-reduced-fade) ease}.clay-btn:active{opacity:.82;transform:none}}@keyframes splashBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes gameBounce{0%{transform:scale(1)}30%{transform:scale(1.15)}50%{transform:scale(.95)}70%{transform:scale(1.05)}to{transform:scale(1)}}@keyframes gameShake{0%,to{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}@keyframes celebrate{0%{opacity:0;transform:scale(.3)rotate(-10deg)}50%{opacity:1;transform:scale(1.2)rotate(5deg)}70%{transform:scale(.95)rotate(-2deg)}to{opacity:1;transform:scale(1)rotate(0)}}@keyframes starBurst{0%{opacity:1;transform:translate(0)scale(0)rotate(0)}to{transform:translate(var(--star-tx), var(--star-ty)) scale(1.2) rotate(360deg);opacity:0}}@keyframes gameFadeIn{0%{opacity:0}to{opacity:1}}@keyframes pulse{0%,to{transform:scale(1);box-shadow:0 0 #ec489966}50%{transform:scale(1.05);box-shadow:0 0 0 12px #ec489900}}@keyframes starFloat{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-40px)scale(.5)}}@keyframes claySpring{0%{transform:scale(1)}40%{transform:scale(1.08)}70%{transform:scale(.97)}to{transform:scale(1)}}.game-motion-tap{transition:transform var(--motion-duration-xs,.2s) var(--motion-ease-out,ease-out);touch-action:manipulation}.game-motion-tap:active{transform:scale(var(--motion-tap-scale,.95))}.game-motion-hover-lift{transition:transform var(--motion-duration-sm,.25s) var(--motion-ease-out,ease-out)}@media (hover:hover) and (pointer:fine){.game-motion-hover-lift:hover{transform:translateY(var(--motion-hover-lift,-10px)) scale(var(--motion-hover-scale,1.05))}}.game-motion-spring{animation:claySpring var(--motion-duration-lg,.4s) var(--motion-ease-spring,ease-out) both}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.game-motion-tap:active,.game-motion-hover-lift:hover{transform:none}.game-motion-spring{animation:none}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;background-color:#fff;font-size:16px}body{font-family:var(--font-text);color:var(--color-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#fff;min-height:100dvh;line-height:1.6}html,body{overscroll-behavior:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}input,textarea,select{-webkit-user-select:auto;user-select:auto}:where(*){touch-action:manipulation}:where(img){-webkit-user-drag:none}:where(button,a,[role=button]) :where(img){pointer-events:none}img,picture,video,svg{max-width:100%;display:block}h1,h2,h3{font-family:var(--font-display);font-weight:700;line-height:1.2}h1{font-size:2rem}h2{font-size:1.5rem}h3{font-size:1.25rem}.btn{justify-content:center;align-items:center;gap:var(--space-sm);border-radius:var(--radius-md);font-family:var(--font-text);cursor:pointer;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;border:none;padding:12px 24px;font-size:15px;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.btn:active{transform:scale(.97)}.btn:focus-visible{outline:3px solid var(--color-accent);outline-offset:2px}.btn-primary{background:var(--color-primary);color:var(--color-white)}@media (hover:hover) and (pointer:fine){.btn-primary:hover{opacity:.9}}.btn-secondary{background:var(--color-surface);color:var(--color-text)}@media (hover:hover) and (pointer:fine){.btn-secondary:hover{background:#ececee}}.btn-cta{background:var(--color-cta);color:var(--color-white)}@media (hover:hover) and (pointer:fine){.btn-cta:hover{opacity:.9}}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:.3s ease-out both fadeIn}.fade-in:nth-child(2){animation-delay:60ms}.fade-in:nth-child(3){animation-delay:.12s}.fade-in:nth-child(4){animation-delay:.18s}.fade-in:nth-child(5){animation-delay:.24s}.fade-in:nth-child(6){animation-delay:.3s}.fade-in:nth-child(7){animation-delay:.36s}.fade-in:nth-child(8){animation-delay:.42s}.fade-in:nth-child(9){animation-delay:.48s}.text-center{text-align:center}.flex-center{justify-content:center;align-items:center;display:flex}.gap-md{gap:var(--space-md)}.page-container{min-height:100dvh;padding:var(--space-lg);max-width:820px;margin:0 auto}.home-container{min-height:100dvh;padding:var(--space-lg);gap:var(--space-md);flex-direction:column;max-width:960px;margin:0 auto;display:flex}.home-top-bar{justify-content:space-between;align-items:center;display:flex}.home-title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--color-primary);font-size:24px;font-weight:900}.home-top-right{align-items:center;gap:var(--space-md);display:flex}.rounds-selector{gap:4px;display:flex}.rounds-btn{background:var(--color-white);font-family:var(--font-text);color:var(--color-gray-500);cursor:pointer;-webkit-tap-highlight-color:transparent;border:none;border-radius:50px;padding:6px 14px;font-size:13px;font-weight:600;transition:all .2s;box-shadow:0 1px 4px #0000000f}.rounds-btn.active{background:var(--color-primary);color:var(--color-white);box-shadow:0 2px 8px #ec48994d}.home-settings{align-items:center;gap:var(--space-md);flex-wrap:wrap;display:flex}.settings-divider{background:var(--color-gray-200);width:1px;height:24px}.module-grid{flex:1;grid-template-rows:1fr 1fr;grid-template-columns:repeat(5,1fr);gap:10px;display:grid}.module-cell{cursor:pointer;-webkit-tap-highlight-color:transparent;font-family:var(--font-text);border:none;border-radius:24px;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-height:100px;transition:transform .2s;display:flex;box-shadow:0 4px 12px #0000000f}@media (hover:hover) and (pointer:fine){.module-cell:hover{transform:scale(.98)}}.module-cell:active{transform:scale(.95)}.module-cell-icon{font-size:40px;line-height:1}.module-cell-label{color:#000000b3;font-size:14px;font-weight:700}@media screen and (max-width:640px){.module-grid{grid-template-rows:auto;grid-template-columns:repeat(3,1fr)}.home-settings{flex-direction:column;align-items:flex-start}.settings-divider{display:none}.home-top-bar{gap:var(--space-sm);flex-wrap:wrap}}.page-header{align-items:center;gap:var(--space-md);margin-bottom:var(--space-xl);display:flex}.page-title{font-family:var(--font-display);color:var(--color-text);letter-spacing:-.02em;font-size:22px;font-weight:700}.back-btn{background:var(--color-surface);border-radius:var(--radius-sm);cursor:pointer;width:40px;height:40px;color:var(--color-text);border:none;flex-shrink:0;justify-content:center;align-items:center;transition:all .2s;display:inline-flex}@media (hover:hover) and (pointer:fine){.back-btn:hover{background:#ececee}}.back-btn:active{transform:scale(.95)}.back-btn:focus-visible{outline:3px solid var(--color-accent);outline-offset:2px}.config-layout{gap:var(--space-xl);align-items:flex-start;display:flex}.config-panel{gap:var(--space-xl);flex-direction:column;flex:auto;display:flex}.config-section{gap:var(--space-md);flex-direction:column;display:flex}.config-label{font-family:var(--font-display);color:var(--color-text);font-size:16px;font-weight:600}.theme-selector{gap:var(--space-sm);flex-wrap:wrap;display:flex}.theme-btn{background:var(--color-surface);cursor:pointer;font-family:var(--font-text);border:none;border-radius:50px;align-items:center;gap:6px;padding:10px 16px;font-weight:500;transition:all .2s;display:flex}@media (hover:hover) and (pointer:fine){.theme-btn:hover{background:#ececee}}.theme-btn.active{background:var(--color-primary);color:var(--color-white)}.theme-btn:focus-visible{outline:3px solid var(--color-accent);outline-offset:2px}.theme-btn-icon{font-size:20px;line-height:1}.theme-btn-name{color:inherit;font-size:14px}.difficulty-selector{gap:var(--space-sm);display:flex}.difficulty-btn{align-items:center;gap:var(--space-sm);background:var(--color-surface);cursor:pointer;font-family:var(--font-text);border:none;border-radius:50px;padding:10px 16px;font-weight:500;transition:all .2s;display:flex}@media (hover:hover) and (pointer:fine){.difficulty-btn:hover{background:#ececee}}.difficulty-btn.active{background:var(--diff-color);color:var(--color-white)}.difficulty-btn:focus-visible{outline:3px solid var(--color-accent);outline-offset:2px}.difficulty-btn-dot{background:var(--diff-color);border-radius:50%;width:10px;height:10px;display:inline-block}.difficulty-btn.active .difficulty-btn-dot{background:var(--color-white)}.difficulty-btn-name{color:inherit;font-size:15px}@media screen and (max-width:640px){.home-title{font-size:24px}.config-layout{flex-direction:column}}.play-mode{width:100%;min-height:100dvh;position:relative}.play-mode>*{pointer-events:auto}.offline-splash{justify-content:center;align-items:center;gap:var(--space-lg);text-align:center;min-height:100dvh;padding:var(--space-xl);flex-direction:column;display:flex}.offline-splash h2{color:var(--color-text);font-family:var(--font-display)}.offline-splash p{color:var(--color-text-secondary)}.offline-splash svg{max-width:200px}.parent-section--system{flex-direction:column;gap:10px;display:flex}.parent-system-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.parent-system-btn.clay-btn{width:100%;min-height:72px;font-family:var(--clay-font,inherit);color:var(--clay-text-brown,var(--color-text));justify-content:center;align-items:center;gap:10px;padding:14px 18px;font-size:1.05rem;font-weight:700;display:inline-flex}.parent-system-btn svg{pointer-events:none;flex-shrink:0}.parent-system-btn-label{pointer-events:none;text-align:center;line-height:1.25}.parent-update-status{color:var(--clay-text-brown,var(--color-text-secondary));font-size:.95rem;font-weight:600;font-family:var(--clay-font,inherit);margin:0;padding:0 4px}.update-banner{background:var(--color-primary);color:#fff;z-index:200;font-family:var(--font-text);align-items:center;gap:12px;padding:12px 20px;animation:.3s ease-out fadeIn;display:flex;position:fixed;top:0;left:0;right:0}.update-banner .btn-secondary{padding:var(--space-xs) var(--space-md);min-height:36px;font-size:14px}.update-banner .dismiss-btn{color:#fff;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;margin-left:auto;padding:4px 8px;font-size:18px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.home-page{isolation:isolate;box-sizing:border-box;width:100%;min-height:100dvh;padding:max(16px, env(safe-area-inset-top)) max(20px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(20px, env(safe-area-inset-left));color:var(--clay-text-brown);font-family:var(--font-display);background:linear-gradient(180deg, var(--clay-sky-top) 0%, var(--clay-sky-bottom) 100%);flex-direction:column;display:flex;position:relative;overflow:hidden}.home-deco{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.home-sky,.home-hills{pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;max-width:none;display:block;position:absolute}.home-sky{object-fit:cover;object-position:center top;width:100%;height:100%;inset:0}.home-hills{object-fit:cover;object-position:center bottom;width:100%;height:auto;max-height:42%;bottom:0;left:0;right:0}.home-header{z-index:2;flex:none;justify-content:space-between;align-items:flex-start;gap:16px;min-height:72px;margin-bottom:8px;display:flex;position:relative}.home-brand{pointer-events:none;align-items:center;gap:8px;min-width:0;display:flex}.home-mascot{object-fit:contain;flex:none;width:clamp(64px,9vw,96px);height:auto}.home-brand-mark{flex:0 auto;align-items:center;gap:8px;min-width:0;display:flex}.home-wordmark{object-fit:contain;object-position:left center;flex:0 auto;width:clamp(140px,22vw,240px);height:auto}.home-app-version{letter-spacing:.02em;color:#5c40338c;pointer-events:none;-webkit-user-select:none;user-select:none;white-space:nowrap;flex:none;margin:0;font-family:system-ui,-apple-system,sans-serif;font-size:13px;font-weight:600;line-height:1}.home-header-actions{flex:none;justify-content:flex-end;align-items:flex-start;gap:12px;display:flex}.home-update-notice{z-index:2;border-radius:var(--radius-xl);background:var(--clay-capsule-cream);width:fit-content;max-width:min(100%,540px);min-height:52px;box-shadow:var(--clay-shadow-card);color:var(--clay-text-brown);justify-content:center;align-items:center;gap:12px;margin:0 auto 12px;padding:8px 10px 8px 16px;display:flex;position:relative}.home-update-notice[hidden]{display:none}.home-update-copy{white-space:nowrap;font-size:.95rem;font-weight:700}.home-update-button{border-radius:var(--radius-lg);background:var(--clay-card-blue);min-width:132px;min-height:44px;box-shadow:var(--clay-shadow-card);color:var(--clay-text-brown);font:inherit;cursor:pointer;border:0;padding:8px 14px;font-weight:800}.home-update-button:active:not(:disabled){transform:scale(var(--clay-press-scale));box-shadow:var(--clay-shadow-pressed)}.home-update-button:focus-visible{outline:3px solid var(--clay-sky-top);outline-offset:3px}.home-update-button:disabled{cursor:wait;opacity:.72}.home-weak-practice{border-radius:var(--radius-xl);background:var(--clay-capsule-cream);width:100px;min-width:100px;height:100px;min-height:100px;box-shadow:var(--clay-shadow-card);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;transition:transform var(--clay-motion-squish) ease, box-shadow var(--clay-motion-squish) ease;border:0;flex:none;place-items:center;padding:0;display:inline-grid;position:relative}.home-weak-practice:active{transform:scale(var(--clay-press-scale));box-shadow:var(--clay-shadow-pressed)}.home-weak-practice:focus-visible{outline:3px solid var(--clay-sky-top);outline-offset:3px}.home-weak-practice-icon{pointer-events:none;width:56px;height:56px;display:block}.home-collection{border-radius:var(--radius-xl);background:var(--clay-capsule-cream);width:100px;min-width:100px;height:100px;min-height:100px;box-shadow:var(--clay-shadow-card);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;transition:transform var(--clay-motion-squish) ease, box-shadow var(--clay-motion-squish) ease;border:0;flex:none;place-items:center;padding:0;display:inline-grid;position:relative}.home-collection:active{transform:scale(var(--clay-press-scale));box-shadow:var(--clay-shadow-pressed)}.home-collection:focus-visible{outline:3px solid var(--clay-sky-top);outline-offset:3px}.home-collection-icon{object-fit:contain;pointer-events:none;width:76px;height:76px;display:block}.home-theme-picker{flex:none;position:relative}.home-theme-trigger{border-radius:var(--radius-xl);background:var(--clay-capsule-cream);width:100px;min-width:100px;height:100px;min-height:100px;box-shadow:var(--clay-shadow-card);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;transition:transform var(--clay-motion-squish) ease, box-shadow var(--clay-motion-squish) ease;border:0;place-items:center;padding:0;display:inline-grid;position:relative}.home-theme-trigger:active,.home-theme-picker:has(.home-theme-popover:not([hidden])) .home-theme-trigger{transform:scale(var(--clay-press-scale));box-shadow:var(--clay-shadow-pressed)}.home-theme-trigger:focus-visible,.home-theme-option:focus-visible{outline:3px solid var(--clay-sky-top);outline-offset:3px}.home-theme-icon{object-fit:contain;pointer-events:none;width:92px;height:92px;display:block}.home-current-theme-hero{background:var(--clay-capsule-cream);width:28px;height:28px;box-shadow:var(--clay-shadow-card);object-fit:contain;pointer-events:none;border-radius:50%;padding:2px;display:block;position:absolute;bottom:7px;right:7px}.home-theme-popover{z-index:12;box-sizing:border-box;border-radius:var(--radius-xl);background:var(--clay-capsule-cream);width:564px;max-width:calc(100vw - 40px);box-shadow:var(--clay-shadow-card);padding:12px;position:absolute;top:calc(100% + 12px);right:0}.home-theme-options{grid-template-columns:repeat(5,100px);gap:10px;display:grid}.home-theme-option.clay-card{border-radius:var(--clay-radius-card);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;width:100px;min-width:100px;height:100px;min-height:100px;transition:transform var(--clay-motion-squish) ease, box-shadow var(--clay-motion-squish) ease;border:0;flex-direction:column;justify-content:center;align-items:center;padding:8px;display:flex}.home-theme-option.clay-card:active{transform:scale(var(--clay-press-scale));box-shadow:var(--clay-shadow-pressed)}.home-theme-option.is-selected{box-shadow:0 0 0 4px var(--clay-text-brown), 0 10px 20px #7a4a2d47;transform:translateY(-2px)}.home-theme-option-hero{object-fit:contain;pointer-events:none;width:72px;height:72px;display:block}.home-gear{--home-gear-progress:0;border-radius:var(--radius-xl);background:var(--clay-capsule-cream);width:100px;min-width:100px;height:100px;min-height:100px;box-shadow:var(--clay-shadow-card);cursor:pointer;touch-action:none;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;transition:transform var(--clay-motion-squish) ease, box-shadow var(--clay-motion-squish) ease;border:0;flex:none;place-items:center;padding:0;display:inline-grid;position:relative}.home-gear:active,.home-gear.is-holding{transform:scale(var(--clay-press-scale));box-shadow:var(--clay-shadow-pressed)}.home-gear:focus-visible{outline:3px solid var(--clay-sky-top);outline-offset:3px}.home-gear-ring{pointer-events:none;width:100px;height:100px;position:absolute;inset:0;transform:rotate(-90deg)}.home-gear-ring-track,.home-gear-ring-progress{fill:none;stroke-width:4px;stroke-linecap:round}.home-gear-ring-track{stroke:var(--clay-card-blue);opacity:.55}.home-gear-ring-progress{stroke:var(--clay-sky-top);stroke-dasharray:100;stroke-dashoffset:100px;opacity:0;transition:opacity var(--clay-motion-squish) ease}.home-gear.is-holding .home-gear-ring-progress,.home-gear.is-complete .home-gear-ring-progress{opacity:1}.home-gear-icon{z-index:1;object-fit:contain;pointer-events:none;width:76px;height:76px;display:block;position:relative}.home-main{z-index:1;flex:auto;min-height:0;display:flex;position:relative}.home-grid{grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:repeat(5,minmax(0,1fr));grid-auto-flow:column;align-content:stretch;gap:clamp(10px,1.2vw,16px);width:100%;min-height:0;display:grid}.home-card.clay-card{border-radius:var(--clay-radius-card);width:100%;min-width:0;height:100%;min-height:200px;box-shadow:var(--clay-shadow-card);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;color:var(--clay-text-brown);font-family:var(--font-display);animation:.55s cubic-bezier(.34,1.4,.64,1) both home-card-bounce;animation-delay:calc(var(--home-stagger,0) * 45ms);transition:transform var(--clay-motion-squish) ease, box-shadow var(--clay-motion-squish) ease;border:0;flex-direction:column;justify-content:flex-start;align-items:center;gap:0;margin:0;padding:12px 10px 14px;display:flex;position:relative;overflow:hidden}.home-page:not([data-entry=ready]) .home-card.clay-card{opacity:0;animation-name:none}.home-card.clay-card:active{transform:scale(var(--clay-press-scale));box-shadow:var(--clay-shadow-pressed)}.home-card.clay-card:focus-visible{outline:3px solid var(--clay-sky-top);outline-offset:3px;box-shadow:var(--clay-shadow-halo)}.home-card-visual{flex:0 0 64%;justify-content:center;align-items:center;width:100%;height:64%;min-height:0;max-height:68%;display:flex;position:relative}.home-card-icon{object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:auto;max-width:92%;height:100%;max-height:100%}.home-card-chars{letter-spacing:.04em;white-space:nowrap;pointer-events:none;text-align:center;justify-content:center;align-items:center;padding:0 6%;font-size:clamp(1.5rem,5.1vmin,2.625rem);font-weight:900;line-height:1;display:flex;position:absolute;inset:0}.home-page .home-card.clay-text-emboss,.home-page .home-card .clay-text-emboss{font-family:var(--font-display)}.home-card-label{border-radius:var(--clay-radius-capsule);background:var(--clay-capsule-cream);width:100%;min-height:0;max-height:24%;box-shadow:var(--clay-shadow-inner-top);color:var(--clay-text-brown);font-family:var(--font-display);text-align:center;white-space:nowrap;text-overflow:ellipsis;pointer-events:none;flex:0 0 20%;justify-content:center;align-items:center;margin-top:auto;padding:6px 10px;font-size:clamp(.95rem,1.5vw,1.2rem);font-weight:700;line-height:1.15;display:flex;overflow:hidden}@keyframes home-card-bounce{0%{opacity:0;transform:translateY(22px)scale(.9)}55%{opacity:1;transform:translateY(-6px)scale(1.03)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes home-card-fade{0%{opacity:0}to{opacity:1}}@media (orientation:landscape) and (min-width:1000px){.home-page{height:100dvh;max-height:100dvh;overflow:hidden}.home-header{min-height:80px;margin-bottom:10px}.home-main{flex:auto;min-height:0}.home-grid{grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:repeat(5,minmax(0,1fr));grid-auto-flow:column;gap:clamp(12px,1.1vw,18px)}.home-card.clay-card{min-height:280px}}@media (orientation:landscape) and (max-width:999px){.home-page{height:100dvh;overflow:hidden}.home-card.clay-card{min-height:184px;padding:10px 8px 12px}.home-card-chars{font-size:clamp(1.5rem,5.1vmin,2.5rem)}}@media (orientation:landscape) and (max-height:500px){.home-header{align-items:center;margin-bottom:6px}.home-header-actions{--home-top-btn:clamp(44px, 7vw, 76px)}.home-collection,.home-theme-trigger,.home-gear{width:var(--home-top-btn);height:var(--home-top-btn);min-width:var(--home-top-btn);min-height:var(--home-top-btn);border-radius:var(--radius-md)}.home-collection-icon,.home-gear-icon{width:calc(var(--home-top-btn) * .76);height:calc(var(--home-top-btn) * .76)}.home-theme-icon{width:calc(var(--home-top-btn) * .92);height:calc(var(--home-top-btn) * .92)}.home-current-theme-hero{width:18px;height:18px;padding:1px;bottom:3px;right:3px}.home-gear-ring{width:var(--home-top-btn);height:var(--home-top-btn)}.home-header-actions{gap:10px}.home-main{flex-direction:column;flex:auto;min-height:0;display:flex}.home-grid{flex:auto;gap:8px 10px;min-height:0}.home-card.clay-card{min-height:100px;padding:6px 6px 8px}.home-card-visual{flex:auto;height:auto;max-height:none}.home-card-label{flex:none;max-height:none;padding:3px 8px;font-size:.95rem}}@media (orientation:portrait),(max-width:820px) and (orientation:portrait){.home-page{height:auto;min-height:100dvh;overflow:hidden auto}.home-header{min-height:64px}.home-mascot{width:clamp(56px,14vw,80px)}.home-wordmark{width:clamp(120px,36vw,200px)}.home-main{flex:none}.home-grid{grid-template-rows:repeat(5,auto);grid-template-columns:repeat(2,minmax(148px,1fr));grid-auto-flow:row;align-content:start;gap:14px}.home-card.clay-card{aspect-ratio:5/7;min-width:148px;height:auto;min-height:200px;animation-delay:calc(var(--home-stagger,0) * 40ms)}.home-card-visual{flex:0 0 62%;height:62%;max-height:66%}.home-card-label{flex:0 0 20%}.home-card-chars{font-size:clamp(1.5rem,5.1vmin,2.625rem)}.home-theme-options{grid-template-columns:repeat(2,100px)}.home-theme-popover{width:234px}.home-theme-option:last-child{grid-column:1/-1;justify-self:center}}@media (orientation:landscape) and (max-width:1000px){.home-theme-popover{width:344px}.home-theme-options{grid-template-columns:repeat(3,100px)}}@media (orientation:portrait) and (min-width:700px) and (max-width:820px){.home-grid{grid-template-columns:repeat(2,minmax(148px,1fr))}.home-card.clay-card{min-width:148px}.home-theme-options{grid-template-columns:repeat(3,100px)}.home-theme-popover{width:344px}.home-theme-option:last-child{grid-column:auto;justify-self:stretch}}@media (max-width:560px){.home-header{flex-wrap:wrap}.home-header-actions{flex-wrap:wrap;justify-content:flex-end;width:100%;max-width:100%}}@media (prefers-reduced-motion:reduce){.home-card.clay-card{animation:home-card-fade var(--clay-motion-reduced-fade) ease both;animation-delay:calc(var(--home-stagger,0) * 20ms);transition:opacity var(--clay-motion-reduced-fade) ease}.home-card.clay-card:active,.home-gear:active,.home-gear.is-holding,.home-collection:active,.home-theme-trigger:active,.home-theme-picker:has(.home-theme-popover:not([hidden])) .home-theme-trigger,.home-theme-option.clay-card:active,.home-weak-practice:active,.home-update-button:active{transform:none}.home-gear,.home-collection,.home-theme-trigger,.home-theme-option.clay-card,.home-weak-practice{transition:opacity var(--clay-motion-reduced-fade) ease}}
