:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:#060a18;--bg-elevated:#0d1626;--accent:#38bdf8;--accent-soft:#38bdf81f;--accent-strong:#38bdf852;--stage-1:#fef9c3;--stage-2:#fcd34d;--stage-3:#f59e0b;--stage-4:#d97706;--text:#e5e7eb;--text-soft:#9ca3af;--border-subtle:#94a3b81a;--danger:#fb7185;--fresh:#fbbf24;--done:#22c55e;--match-1:56 189 248;--match-2:167 139 250;--match-3:251 191 36;--match-4:244 114 182;--radius-lg:18px;--radius-pill:999px;--shadow-soft:0 18px 45px #0f172abf;--shadow-chip:0 10px 25px #0f172ab3;--transition-fast:.16s ease-out;--transition-med:.22s ease;--font-sans:system-ui, -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}*,:before,:after{box-sizing:border-box}html{overscroll-behavior:none}button,[role=button],label,a,select,summary{-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}button,[role=button]{cursor:pointer}body{overscroll-behavior:none;min-height:100dvh;font-family:var(--font-sans);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;overflow-x:hidden}@media (display-mode:standalone),(display-mode:fullscreen){html,body{height:100%;overflow:hidden}}
@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}
.app{isolation:isolate;height:100dvh;min-height:100dvh;padding-top:env(safe-area-inset-top,0px);flex-direction:column;gap:16px;margin:0 auto;display:flex;position:relative;overflow:hidden}.app-background{pointer-events:none;z-index:-10;background:#dcd1b9;position:fixed;inset:0}.bg-strip{display:block;position:absolute;overflow:visible}.bg-strip--top{top:0;left:0;right:0}.bg-strip--bottom{bottom:0;left:0;right:0}.bg-strip--left{top:28px;bottom:28px;left:0}.bg-strip--right{top:28px;bottom:28px;right:0}.app-header-bar{z-index:250;flex-direction:column;flex-shrink:0;width:100%;display:flex}.auth-row{justify-content:flex-end;align-items:center;padding:0 16px 6px;display:flex}@media (min-width:768px){.app{padding-top:32px}.app-header-bar{max-width:800px;margin-left:auto;margin-right:auto}.auth-row{padding:0 16px 8px}}.app>main{overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;width:100%;min-width:0}@media (min-width:767px){.app>main{padding-bottom:calc(env(safe-area-inset-bottom,12px) + 10rem)}}.app-content-column{width:100%;max-width:800px;margin-left:auto;margin-right:auto;padding-inline:16px}.app-header{box-shadow:var(--shadow-soft);background:radial-gradient(circle at 0 0,#0f172a 0,#020617 55%);border:1px solid #94a3b840;border-radius:26px;padding:14px 14px 4px}
.top-menu{--tm-surface:#f4efe2;--tm-surface-hover:#fff8e8;--tm-ink:#2a2218;--tm-ink-soft:#6b5e48;--tm-accent:#1e6fa8}.mode-btn{border-radius:var(--radius-pill);color:var(--tm-ink,var(--text-soft));cursor:pointer;transition:background-color var(--transition-med), color var(--transition-med), border-color var(--transition-med);background:0 0;border:none;flex:1;padding:8px 10px;font-size:1.25rem;font-weight:500;position:relative}.top-menu-stats{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:inline-flex}.top-menu-stats:empty{display:none}.top-menu{padding-inline:16px;width:100%;max-width:100%;padding-top:.5rem;padding-bottom:.5rem;padding-top:max(.5rem, env(safe-area-inset-top));background:0 0;border-bottom:none;flex-wrap:nowrap;align-items:center;gap:8px;margin:0;display:flex;position:sticky;top:0;left:0;right:0}.top-menu-left{flex-shrink:0}.top-menu-center{flex:1;justify-content:center;min-width:0;overflow:hidden}.top-menu-right{flex-shrink:0}.menu-toggle-label{display:none}.menu-toggle-icon{justify-content:center;align-items:center;display:inline-flex}.mode-btn.menu-toggle-btn{padding:10px 14px}.menu-toggle-icon svg{width:22px;height:22px}.stat-chip{min-height:34px;color:var(--tm-ink);white-space:nowrap;border-radius:999px;align-items:center;gap:8px;padding:5px 12px 5px 8px;display:inline-flex}.stat-chip-icon{width:20px;height:20px;color:var(--tm-ink);background:0 0;border-radius:999px;justify-content:center;align-items:center;display:inline-flex;position:relative}.stat-chip-icon--score,.stat-chip-icon--repeat{color:var(--tm-ink)}.stat-chip-pulse{background:var(--tm-accent);border-radius:999px;width:9px;height:9px;animation:1.8s ease-in-out infinite countdown-pulse;box-shadow:0 0 0 4px #1e6fa82e}.stat-chip-copy{align-items:baseline;gap:5px;min-width:0;display:inline-flex}.stat-chip-value{font-variant-numeric:tabular-nums;color:var(--tm-ink);font-size:.9rem;font-weight:900;line-height:1}.stat-chip-label{color:var(--tm-ink-soft);letter-spacing:.06em;text-transform:uppercase;font-size:.62rem;font-weight:800;line-height:1}.stat-chip-delta{color:var(--tm-ink);font-size:.78rem;font-weight:900;position:absolute;top:-10px;right:-4px}@media (min-width:768px){.top-menu{background:0 0;border-bottom:none;max-width:800px;margin-top:0;margin-left:auto;margin-right:auto;padding-bottom:.5rem;position:sticky;inset:0 auto auto}.menu-toggle-label{display:inline}.mode-btn.menu-toggle-btn{padding:7px 14px}.menu-toggle-icon svg{width:16px;height:16px}}@media (max-width:767px){.app[data-view-mode=card] .deck-monkey-in-bar--hide-on-mobile{display:none!important}}.menu-dropdown-popup{background:var(--tm-surface);border:2px solid var(--tm-ink);width:240px;box-shadow:none;transform-origin:100% 0;border-radius:14px;animation:.2s cubic-bezier(.16,1,.3,1) forwards menu-open;top:calc(100% + 8px);bottom:auto;overflow:hidden}@keyframes menu-open{0%{opacity:0;transform:scale(.92)translateY(-8px)}to{opacity:1;transform:scale(1)translateY(0)}}.menu-dropdown-account{border-bottom:2px solid var(--tm-ink);justify-content:center;align-items:center;padding:10px 12px;display:flex}.menu-item{width:100%;min-height:56px;color:var(--tm-ink);letter-spacing:.01em;text-align:left;cursor:pointer;border:none;border-bottom:1px solid var(--tm-ink);background:0 0;align-items:center;gap:12px;padding:13px 14px;font-size:.95rem;font-weight:700;transition:background .14s,color .14s;display:flex;position:relative}.menu-item:last-child{border-bottom:none}.menu-item:hover,.menu-item:active{background:var(--tm-accent);color:var(--tm-surface)}.menu-item-icon{width:28px;height:28px;color:inherit;background:0 0;border:2px solid;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:.85rem;line-height:1;transition:background .14s,color .14s;display:flex}.menu-item:hover .menu-item-icon{background:var(--tm-surface);color:var(--tm-ink)}.menu-item-label{flex:1}.menu-item-trailing{letter-spacing:.06em;text-transform:uppercase;opacity:.65;font-size:.68rem;font-weight:800}.menu-item-badge{color:inherit;letter-spacing:.02em;background:0 0;border:1.5px solid;border-radius:999px;padding:1px 8px;font-size:.75rem;font-weight:800}.menu-item-active-dot{background:var(--tm-accent);border-radius:50%;flex-shrink:0;width:8px;height:8px;animation:2.4s ease-in-out infinite dot-pulse}@keyframes dot-pulse{0%,to{opacity:1}50%{opacity:.5}}.mode-btn.menu-toggle-btn{border:2px solid var(--tm-ink);border-radius:var(--radius-pill);background:var(--tm-surface);color:var(--tm-ink);cursor:pointer;transition:background-color var(--transition-med), color var(--transition-med), border-color var(--transition-med);flex:none;align-items:center;gap:6px;padding:7px 14px;font-size:.875rem;font-weight:800;display:flex}.mode-btn.menu-toggle-btn:hover,.mode-btn.menu-toggle-btn.is-active{background:var(--tm-accent);border-color:var(--tm-accent);color:var(--tm-surface)}.mode-btn.memory-hooks-btn{z-index:50;border-radius:var(--radius-pill);min-width:32px;color:var(--text-soft);cursor:pointer;transition:background-color var(--transition-med), color var(--transition-med), transform var(--transition-fast), box-shadow var(--transition-fast);background:#1e6fa8e0;border:1px solid #94a3b84d;flex:none;justify-content:center;align-items:center;padding:6px 10px;font-size:1rem;display:flex;position:absolute;top:12px;right:95px}.mode-btn.memory-hooks-btn:hover{background:#1e6fa8;transform:translateY(-.5px)}.mode-btn.settings-btn{z-index:50;border-radius:var(--radius-pill);color:var(--text-soft);cursor:pointer;transition:background-color var(--transition-med), color var(--transition-med), transform var(--transition-fast), box-shadow var(--transition-fast);background:#0f172ae6;border:1px solid #94a3b84d;flex:none;padding:6px 12px;font-size:.85rem;position:absolute;top:12px;right:14px}.mode-btn.settings-btn:hover{background:#0f172a;transform:translateY(-.5px)}.mode-btn.switch-btn{z-index:20;border-radius:var(--radius-pill);min-width:50px;color:var(--text-soft);cursor:pointer;transition:background-color var(--transition-med), color var(--transition-med), transform var(--transition-fast), box-shadow var(--transition-fast);background:#0f172ae6;border:1px solid #94a3b84d;flex:none;justify-content:center;align-items:center;padding:8px 12px;font-size:1.5rem;display:flex;position:absolute;top:12px;left:14px}.mode-btn.switch-btn:hover{background:#0f172a;transform:translateY(-.5px)}.mode-btn.show-all-btn{z-index:20;border-radius:var(--radius-pill);min-width:50px;color:var(--text-soft);cursor:pointer;transition:background-color var(--transition-med), color var(--transition-med), transform var(--transition-fast), box-shadow var(--transition-fast);background:#0f172ae6;border:1px solid #94a3b84d;flex:none;justify-content:center;align-items:center;padding:8px 12px;font-size:1.5rem;display:flex;position:absolute;top:12px;left:72px}.mode-btn.show-all-btn:hover{background:#0f172a;transform:translateY(-.5px)}.mode-btn.progress-btn,.mode-btn.category-btn{z-index:20;border-radius:var(--radius-pill);min-width:32px;color:var(--text-soft);cursor:pointer;transition:background-color var(--transition-med), color var(--transition-med), transform var(--transition-fast), box-shadow var(--transition-fast);background:#0f172ae6;border:1px solid #94a3b84d;flex:none;justify-content:center;align-items:center;padding:6px 10px;font-size:1rem;display:flex;position:absolute;top:12px;left:130px}.top-menu .mode-btn.memory-hooks-btn,.top-menu .mode-btn.settings-btn,.top-menu .mode-btn.switch-btn,.top-menu .mode-btn.show-all-btn,.top-menu .mode-btn.progress-btn,.top-menu .mode-btn.category-btn{position:static;top:auto;left:auto;right:auto}@media (min-width:1024px){.top-menu .mode-btn.progress-btn,.top-menu .mode-btn.memory-hooks-btn{display:none!important}}.mode-btn.progress-btn:hover,.mode-btn.category-btn:hover{background:#0f172a;transform:translateY(-.5px)}.mode-btn.is-active{background:radial-gradient(circle at top, var(--accent) 0, #0ea5e9 55%);color:#0b1120;box-shadow:var(--shadow-chip);transform:translateY(-1px)}.mode-btn:active{transform:translateY(0)}.mode-btn.category-btn.is-active,.mode-btn.progress-btn.is-active{box-shadow:var(--shadow-chip);background:radial-gradient(circle at top, var(--accent) 0, #0ea5e9 55%);color:#0b1120}.mode-btn.category-btn[data-count]:not([data-count=""]):after{content:attr(data-count);border-radius:var(--radius-pill);background:var(--accent-soft);min-width:18px;height:18px;color:var(--text);border:1px solid #94a3b866;justify-content:center;align-items:center;margin-left:6px;padding:0 6px;font-size:.65rem;display:inline-flex}.list-select-overlay{z-index:300;background:#1e6fa88c;justify-content:center;align-items:center;padding:24px;animation:.15s ease-out list-select-fade;display:flex;position:fixed;inset:0}@keyframes list-select-fade{0%{opacity:0}to{opacity:1}}.list-select-modal{--tm-surface:#f4efe2;--tm-surface-hover:#fff8e8;--tm-ink:#2a2218;--tm-ink-soft:#6b5e48;--tm-accent:#1e6fa8;background:var(--tm-surface);border:2px solid var(--tm-ink);width:min(420px,100%);max-height:min(540px,80vh);color:var(--tm-ink);border-radius:16px;flex-direction:column;animation:.18s cubic-bezier(.16,1,.3,1) list-select-pop;display:flex;overflow:hidden}@keyframes list-select-pop{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.list-select-header{border-bottom:2px solid var(--tm-ink);justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;display:flex}.list-select-title{letter-spacing:.01em;margin:0;font-size:1rem;font-weight:900}.list-select-close{appearance:none;border:2px solid var(--tm-ink);background:var(--tm-surface);color:var(--tm-ink);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;width:32px;height:32px;font-size:1.2rem;font-weight:900;line-height:1;transition:background .14s,color .14s;display:inline-flex}.list-select-close:hover{background:var(--tm-accent);border-color:var(--tm-accent);color:var(--tm-surface)}.list-select-body{flex-direction:column;display:flex;overflow-y:auto}.list-select-option{appearance:none;border:none;border-bottom:1px solid var(--tm-ink);background:var(--tm-surface);color:var(--tm-ink);text-align:left;cursor:pointer;justify-content:space-between;align-items:center;gap:12px;min-height:56px;padding:16px 18px;font-size:1rem;font-weight:700;transition:background .14s,color .14s;display:flex}.list-select-option:last-child{border-bottom:none}.list-select-option:hover,.list-select-option.is-active{background:var(--tm-accent);color:var(--tm-surface)}.list-select-option-name{text-transform:none;text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.list-select-option-check{flex-shrink:0;font-size:1rem;font-weight:900}.list-select-suggested{border-top:2px solid var(--tm-ink);flex-direction:column;display:flex}.list-select-suggested-title{text-transform:uppercase;letter-spacing:.08em;opacity:.7;margin:0;padding:14px 18px 6px;font-size:.72rem;font-weight:800}.list-select-option--suggested{min-height:48px;font-weight:600}.list-select-option--suggested:disabled{opacity:.55;cursor:default}.list-select-option-badge{text-transform:uppercase;letter-spacing:.04em;vertical-align:middle;border:1px solid;border-radius:999px;margin-left:8px;padding:1px 7px;font-size:.62rem;font-weight:800}.list-select-suggested-note{opacity:.75;margin:0;padding:10px 18px 14px;font-size:.78rem;line-height:1.4}@media (max-width:767px){.menu-dropdown-popup{max-height:calc(100dvh - 5rem - env(safe-area-inset-bottom,0px));overflow-y:auto}.word-lists-editor-item{display:none}}.menu-dropdown-account .auth-button{background:var(--tm-surface,#f4efe2);border-color:var(--tm-ink,#2a2218);color:var(--tm-ink,#2a2218)}.menu-dropdown-account .auth-button.is-connected{border-color:var(--tm-ink,#2a2218)}.menu-dropdown-account .auth-dot{background:var(--tm-accent,#1e6fa8)}
.panel-backdrop{display:none}.settings-panel{background:#0f172af5;border:1px solid #94a3b859;border-radius:18px;align-self:end;margin-top:4px;padding:8px 10px 10px;display:none}.settings-panel.is-open{z-index:550;background:0 0;border:none;max-width:none;margin:0;padding:0;display:block;position:fixed}.settings-panel.is-open .panel-backdrop{-webkit-backdrop-filter:blur(12px);background:#060a1880;display:block;position:absolute;inset:0}.settings-panel.is-open .panel-content{-webkit-overflow-scrolling:touch;z-index:1;background:#0f172af5;border:1px solid #94a3b859;border-radius:18px;max-height:calc(100dvh - 5rem);padding:8px 10px 10px;position:absolute;top:4rem;left:14px;right:14px;overflow-y:auto}@media (min-width:768px){.settings-panel.is-open{background:#0f172af5;border:1px solid #94a3b859;width:460px;max-width:660px;margin-left:auto;margin-right:auto;padding:8px 10px 10px;inset:60px 14px auto}.settings-panel.is-open .panel-backdrop{display:none}.settings-panel.is-open .panel-content{background:0 0;border:none;border-radius:0;max-height:80vh;padding:0;position:static;left:auto;right:auto;overflow-y:auto}}.progress-panel,.upcoming-panel{z-index:150;max-height:80vh;box-shadow:var(--shadow-soft);background:#0f172af5;border:1px solid #94a3b859;border-radius:18px;align-self:end;margin-top:4px;padding:0;display:none;overflow-y:auto}.progress-panel.is-open,.upcoming-panel.is-open{z-index:550;background:0 0;border:none;max-width:none;margin:0;padding:0;display:block;position:fixed;inset:0}.progress-panel.is-open .panel-backdrop,.upcoming-panel.is-open .panel-backdrop{-webkit-backdrop-filter:blur(12px);background:#060a1880;display:block;position:absolute;inset:0}.progress-panel.is-open .panel-content,.upcoming-panel.is-open .panel-content{-webkit-overflow-scrolling:touch;z-index:1;max-height:calc(100dvh - 5rem);box-shadow:var(--shadow-soft);background:#0f172af5;border:1px solid #94a3b859;border-radius:18px;padding:0;position:absolute;top:4rem;left:14px;right:14px;overflow-y:auto}@media (min-width:768px){.progress-panel.is-open,.upcoming-panel.is-open{background:#0f172af5;border:1px solid #94a3b859;max-width:720px;margin-left:auto;margin-right:auto;inset:60px 14px auto}.progress-panel.is-open .panel-backdrop,.upcoming-panel.is-open .panel-backdrop{display:none}.progress-panel.is-open .panel-content,.upcoming-panel.is-open .panel-content{background:0 0;border:none;border-radius:0;max-height:80vh;position:static;top:auto;left:auto;right:auto;overflow-y:auto}}.memory-hooks-panel{--tm-accent:#1e6fa8;display:none}.memory-hooks-panel.is-open{z-index:550;background:0 0;display:block;position:fixed;inset:0;overflow:hidden}.memory-hooks-panel.is-open .panel-backdrop{background:#1f1a128f;position:absolute;inset:0}.memory-hooks-panel.is-open .panel-content{-webkit-overflow-scrolling:touch;color:#1f1a12;width:calc(100% - 2*clamp(12px,7vw,76px));max-width:860px;max-height:calc(100dvh - 2*clamp(12px,5dvh,54px));box-shadow:none;background:#f4ecda;border:2px solid #1f1a12;border-radius:26px;margin:clamp(12px,5dvh,54px) auto;position:relative;overflow-y:auto}@media (max-width:640px){.memory-hooks-panel.is-open .panel-content{border-radius:20px;width:calc(100% - 20px);max-height:calc(100dvh - 20px);margin:10px}}.category-panel{z-index:150;max-height:70vh;box-shadow:var(--shadow-soft);background:#0f172af5;border:1px solid #94a3b859;border-radius:18px;align-self:end;margin-top:4px;padding:0;display:none;overflow-y:auto}.category-panel.is-open{z-index:550;background:0 0;border:none;max-width:none;margin:0;padding:0;display:block;position:fixed;inset:0}.category-panel.is-open .panel-backdrop{-webkit-backdrop-filter:blur(12px);background:#060a1880;display:block;position:absolute;inset:0}.category-panel.is-open .panel-content{-webkit-overflow-scrolling:touch;z-index:1;max-height:calc(100dvh - 5rem);box-shadow:var(--shadow-soft);background:#0f172af5;border:1px solid #94a3b859;border-radius:18px;padding:0;position:absolute;top:4rem;left:14px;right:14px;overflow-y:auto}@media (min-width:768px){.category-panel.is-open{background:#0f172af5;border:1px solid #94a3b859;max-width:720px;margin-left:auto;margin-right:auto;position:fixed;inset:60px 14px auto}.category-panel.is-open .panel-backdrop{display:none}.category-panel.is-open .panel-content{background:0 0;border:none;border-radius:0;max-height:70vh;position:static;top:auto;left:auto;right:auto;overflow-y:auto}}.category-clear-btn{color:var(--text-soft);border-radius:var(--radius-pill);cursor:pointer;transition:background-color var(--transition-med), color var(--transition-med), transform var(--transition-fast);background:#0f172ab3;border:1px solid #94a3b866;padding:6px 12px;font-weight:600}.category-clear-btn:hover{color:var(--text);background:#0f172ae6;transform:translateY(-.5px)}.category-chip{border-radius:var(--radius-pill);color:var(--text);cursor:pointer;transition:background-color var(--transition-med), border-color var(--transition-med), transform var(--transition-fast);background:#0f172aa6;border:1px solid #94a3b859;align-items:center;gap:8px;padding:8px 12px;display:inline-flex}.category-chip:hover{border-color:var(--accent);background:#38bdf814;transform:translateY(-.5px)}.category-chip input:checked~.category-chip-label,.category-chip input:checked~.category-chip-count,.category-chip.is-selected .category-chip-label,.category-chip.is-selected .category-chip-count{color:var(--accent);border-color:var(--accent)}.category-order-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.category-order-item{transition:border-color var(--transition-med), background-color var(--transition-med), transform var(--transition-fast);background:#0f172a8c;border:1px solid #94a3b847;border-radius:14px;grid-template-columns:28px 1fr auto;align-items:center;gap:10px;padding:10px 12px;display:grid;box-shadow:0 10px 30px #0000001f}.category-order-item.is-selected{background:#38bdf814;border-color:#38bdf899}.category-order-item.is-over{border-color:#38bdf8e6;transform:translateY(-.5px)}.category-order-item.is-dragging{opacity:.65}.category-drag-handle{width:28px;height:28px;color:var(--text-soft);cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none;background:#0f172a73;border:1px solid #94a3b847;border-radius:10px;justify-content:center;align-items:center;display:inline-flex}.category-drag-handle:active{cursor:grabbing}.category-drag-handle:hover{color:var(--text);background:#38bdf814;border-color:#38bdf88c}.category-order-label{cursor:pointer;align-items:center;gap:10px;min-width:0;display:flex}.category-order-label input[type=checkbox]{accent-color:var(--accent);width:16px;height:16px}.category-order-name{letter-spacing:.01em;white-space:nowrap;text-overflow:ellipsis;font-weight:700;overflow:hidden}.category-order-count{color:var(--text-soft);border-radius:var(--radius-pill);background:#38bdf814;border:1px solid #94a3b840;margin-left:auto;padding:2px 8px;font-size:.8rem}.category-order-actions{gap:6px;display:inline-flex}.category-order-btn{width:28px;height:28px;color:var(--text-soft);cursor:pointer;transition:background-color var(--transition-med), border-color var(--transition-med), color var(--transition-med), transform var(--transition-fast);background:#0f172a73;border:1px solid #94a3b847;border-radius:10px}.category-order-btn:hover:enabled{color:var(--text);background:#38bdf814;border-color:#38bdf88c;transform:translateY(-.5px)}.category-order-btn:disabled{opacity:.4;cursor:not-allowed}@media (min-width:640px){.settings-panel.is-open,.progress-panel.is-open,.category-panel.is-open,.upcoming-panel.is-open{max-width:500px}}@media (max-width:767px){.settings-panel.is-open,.progress-panel.is-open,.category-panel.is-open,.upcoming-panel.is-open{align-self:stretch;max-width:none;height:100dvh;max-height:none;inset:0;overflow:hidden}.settings-panel.is-open .panel-content,.progress-panel.is-open .panel-content,.category-panel.is-open .panel-content,.upcoming-panel.is-open .panel-content{left:1px;right:1px}}.custom-scrollbar{scrollbar-width:thin;scrollbar-color:#94a3b84d transparent}.custom-scrollbar::-webkit-scrollbar{width:6px}.custom-scrollbar::-webkit-scrollbar-track{background:0 0}.custom-scrollbar::-webkit-scrollbar-thumb{background:#94a3b84d;border-radius:3px}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:#94a3b880}.minigame-range-control{height:48px;position:relative;overflow:visible}.minigame-range-track,.minigame-range-track-fill{border-radius:999px;height:6px;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.minigame-range-track{background:#fff3}.minigame-range-track-fill{background:var(--accent)}.minigame-range-handle{z-index:3;border:2px solid var(--bg);background:var(--accent);color:#fff;pointer-events:none;border-radius:999px;justify-content:center;align-items:center;width:30px;height:30px;font-size:.72rem;font-weight:800;line-height:1;display:inline-flex;position:absolute;top:50%;transform:translate(-50%,-50%);box-shadow:0 8px 18px #00000038}.minigame-range-input{z-index:4;appearance:none;pointer-events:none;background:0 0;outline:none;width:100%;height:32px;margin:0;position:absolute;inset:8px 0 0}.minigame-range-input.is-upper{z-index:5}.minigame-range-input.is-front{z-index:6}.minigame-range-input::-webkit-slider-runnable-track{background:0 0;height:32px}.minigame-range-input::-webkit-slider-thumb{appearance:none;cursor:grab;pointer-events:auto;background:0 0;border:0;border-radius:999px;width:34px;height:34px}.minigame-range-input:active::-webkit-slider-thumb{cursor:grabbing}.minigame-range-input::-moz-range-track{background:0 0;height:32px}.minigame-range-input::-moz-range-thumb{cursor:grab;pointer-events:auto;background:0 0;border:0;border-radius:999px;width:34px;height:34px}.minigame-range-input:active::-moz-range-thumb{cursor:grabbing}.minigame-range-control:focus-within .minigame-range-handle{box-shadow:0 0 0 3px #38bdf847,0 8px 18px #00000038}.settings-panel.is-open .panel-backdrop,.progress-panel.is-open .panel-backdrop,.category-panel.is-open .panel-backdrop,.upcoming-panel.is-open .panel-backdrop{-webkit-backdrop-filter:none;background:#1e6fa88c}.settings-panel,.progress-panel,.category-panel,.upcoming-panel{--panel-surface:#f4efe2;--panel-ink:#2a2218;--panel-ink-soft:#6b5e48;--bg:#f4efe2;--bg-elevated:#fff8e8;--text:#2a2218;--text-soft:#6b5e48;--border-subtle:#2a2218;--accent:#1e6fa8;--accent-soft:#1e6fa81f;--accent-strong:#1e6fa8;background:var(--panel-surface);border:2px solid var(--panel-ink);color:var(--panel-ink);box-shadow:none;border-radius:16px}.settings-panel.is-open .panel-content,.progress-panel.is-open .panel-content,.category-panel.is-open .panel-content,.upcoming-panel.is-open .panel-content{background:var(--panel-surface,#f4efe2);border:2px solid var(--panel-ink,#2a2218);color:var(--panel-ink,#2a2218);box-shadow:none;border-radius:16px}@media (min-width:768px){.settings-panel.is-open,.progress-panel.is-open,.category-panel.is-open,.upcoming-panel.is-open{background:0 0;border:none}.settings-panel.is-open .panel-content,.progress-panel.is-open .panel-content,.category-panel.is-open .panel-content,.upcoming-panel.is-open .panel-content{background:var(--panel-surface,#f4efe2);border:2px solid var(--panel-ink,#2a2218);border-radius:16px}}.settings-panel .panel-content,.progress-panel .panel-content,.category-panel .panel-content,.upcoming-panel .panel-content{color:var(--panel-ink,#2a2218)}.category-panel .category-clear-btn{border:2px solid var(--panel-ink,#2a2218);background:var(--panel-surface,#f4efe2);color:var(--panel-ink,#2a2218);border-radius:10px;font-weight:700}.category-panel .category-clear-btn:hover:not(:disabled){background:var(--accent,#1e6fa8);border-color:var(--accent,#1e6fa8);color:var(--panel-surface,#f4efe2);transform:none}.category-panel .category-clear-btn:disabled{opacity:.4}.category-panel .category-order-item{border:2px solid var(--panel-ink,#2a2218);background:var(--panel-surface,#f4efe2);color:var(--panel-ink,#2a2218);box-shadow:none;border-radius:12px}.category-panel .category-order-item.is-selected{border-color:var(--panel-ink,#2a2218);background:#fff8e8}.category-panel .category-order-item.is-over{border-color:var(--panel-ink,#2a2218);background:#fff8e8;transform:none}.category-panel .category-drag-handle{border:2px solid var(--panel-ink,#2a2218);background:var(--panel-surface,#f4efe2);color:var(--panel-ink,#2a2218);border-radius:8px}.category-panel .category-drag-handle:hover{background:var(--accent,#1e6fa8);color:var(--panel-surface,#f4efe2);border-color:var(--accent,#1e6fa8)}.category-panel .category-order-name{color:var(--panel-ink,#2a2218)}.category-panel .category-order-count{color:var(--panel-ink,#2a2218);border:2px solid var(--panel-ink,#2a2218);background:0 0;font-weight:700}.category-panel .category-order-btn{border:2px solid var(--panel-ink,#2a2218);background:var(--panel-surface,#f4efe2);color:var(--panel-ink,#2a2218);border-radius:8px}.category-panel .category-order-btn:hover:enabled{background:var(--accent,#1e6fa8);color:var(--panel-surface,#f4efe2);border-color:var(--accent,#1e6fa8);transform:none}.category-panel .category-order-label input[type=checkbox]{accent-color:var(--accent,#1e6fa8)}.category-panel .category-chip{border:2px solid var(--panel-ink,#2a2218);background:var(--panel-surface,#f4efe2);color:var(--panel-ink,#2a2218)}.category-panel .category-chip:hover{background:var(--accent,#1e6fa8);color:var(--panel-surface,#f4efe2);border-color:var(--accent,#1e6fa8);transform:none}.settings-panel input[type=text],.settings-panel input[type=search],.settings-panel select,.settings-panel textarea{background:var(--panel-surface,#f4efe2);border:2px solid var(--panel-ink,#2a2218);color:var(--panel-ink,#2a2218);border-radius:10px}.settings-panel input::placeholder,.settings-panel textarea::placeholder{color:var(--panel-ink-soft,#6b5e48);opacity:.75}.settings-panel .bg-background,.progress-panel .bg-background,.memory-hooks-panel .bg-background,.category-panel .bg-background{background-color:#f4efe2}.settings-panel .bg-background-elevated,.progress-panel .bg-background-elevated,.memory-hooks-panel .bg-background-elevated,.category-panel .bg-background-elevated,.settings-panel [class*=bg-background-elevated\/],.progress-panel [class*=bg-background-elevated\/],.memory-hooks-panel [class*=bg-background-elevated\/],.category-panel [class*=bg-background-elevated\/]{background-color:#fff8e8}.settings-panel .text-text,.progress-panel .text-text,.memory-hooks-panel .text-text,.category-panel .text-text{color:#2a2218}.settings-panel .text-text-soft,.progress-panel .text-text-soft,.memory-hooks-panel .text-text-soft,.category-panel .text-text-soft,.settings-panel [class*=text-text-soft\/],.progress-panel [class*=text-text-soft\/],.memory-hooks-panel [class*=text-text-soft\/],.category-panel [class*=text-text-soft\/]{color:#6b5e48}.settings-panel .text-accent,.progress-panel .text-accent,.memory-hooks-panel .text-accent,.category-panel .text-accent{color:#1e6fa8}.settings-panel .text-fresh,.progress-panel .text-fresh,.memory-hooks-panel .text-fresh,.category-panel .text-fresh{color:#b45309}.settings-panel .text-done,.progress-panel .text-done,.memory-hooks-panel .text-done,.category-panel .text-done{color:#15803d}.settings-panel .text-danger,.progress-panel .text-danger,.memory-hooks-panel .text-danger,.category-panel .text-danger{color:#b91c1c}.settings-panel .border-border-subtle,.progress-panel .border-border-subtle,.memory-hooks-panel .border-border-subtle,.category-panel .border-border-subtle,.settings-panel [class*=border-border-subtle\/],.progress-panel [class*=border-border-subtle\/],.memory-hooks-panel [class*=border-border-subtle\/],.category-panel [class*=border-border-subtle\/]{border-color:#2a2218}.settings-panel .border-accent-strong,.progress-panel .border-accent-strong,.memory-hooks-panel .border-accent-strong,.category-panel .border-accent-strong{border-color:#1e6fa8}.settings-panel .bg-border-subtle,.progress-panel .bg-border-subtle,.memory-hooks-panel .bg-border-subtle,.category-panel .bg-border-subtle{background-color:#1e6fa833}.settings-panel .bg-accent,.progress-panel .bg-accent,.memory-hooks-panel .bg-accent,.category-panel .bg-accent{background-color:#1e6fa8}.settings-panel .bg-done,.progress-panel .bg-done,.memory-hooks-panel .bg-done,.category-panel .bg-done{background-color:#15803d}.settings-panel .bg-fresh,.progress-panel .bg-fresh,.memory-hooks-panel .bg-fresh,.category-panel .bg-fresh{background-color:#b45309}.settings-panel [class*=bg-background-elevated\/50]{background-color:#fff8e899;border-color:#2a2218}.settings-panel .bg-white\/20{background-color:#1e6fa82e}.settings-panel .minigame-range-track{background:#1e6fa833}.settings-panel .custom-scrollbar,.progress-panel .custom-scrollbar,.memory-hooks-panel .custom-scrollbar,.category-panel .custom-scrollbar{scrollbar-color:#1e6fa866 transparent}.settings-panel .custom-scrollbar::-webkit-scrollbar-thumb{background:#1e6fa866}.progress-panel .custom-scrollbar::-webkit-scrollbar-thumb{background:#1e6fa866}.memory-hooks-panel .custom-scrollbar::-webkit-scrollbar-thumb{background:#1e6fa866}.category-panel .custom-scrollbar::-webkit-scrollbar-thumb{background:#1e6fa866}.memory-hooks-panel .memory-hooks-learn-more{color:#1f1a12;background:#f4ecda}.onboarding-screen{--ob-surface:#f4efe2;--ob-surface-hover:#fff8e8;--ob-ink:#2a2218;--ob-ink-soft:#6b5e48;--ob-accent:#1e6fa8;--ob-danger:#b91c1c;color:var(--ob-ink);background:#dcd1b9}.onboarding-overlay{color:var(--ob-ink,#2a2218);background:#1e6fa88c}.onboarding-card{background:var(--ob-surface,#f4efe2);border:2px solid var(--ob-ink,#2a2218);color:var(--ob-ink,#2a2218);box-shadow:none;border-radius:16px}.onboarding-spinner{border:3px solid var(--ob-ink,#2a2218);border-top-color:var(--ob-accent,#1e6fa8)}.onboarding-text-soft{color:var(--ob-ink-soft,#6b5e48)}.onboarding-error{color:var(--ob-danger,#b91c1c);font-weight:700}.onboarding-notice{background:var(--ob-surface,#f4efe2);border:2px solid var(--ob-ink,#2a2218);color:var(--ob-ink,#2a2218);border-radius:10px}.onboarding-divider{border-top:2px solid var(--ob-ink,#2a2218)}.onboarding-combobox{background:var(--ob-surface,#f4efe2);border:2px solid var(--ob-ink,#2a2218);color:var(--ob-ink,#2a2218);border-radius:12px;height:75px;transition:background .14s}.onboarding-combobox:focus-within{background:var(--ob-surface-hover,#fff8e8)}.onboarding-combobox-input{color:var(--ob-ink,#2a2218)}.onboarding-combobox-input::placeholder{color:var(--ob-ink-soft,#6b5e48);opacity:.7}.onboarding-combobox-list{background:var(--ob-surface,#f4efe2);border:2px solid var(--ob-ink,#2a2218);color:var(--ob-ink,#2a2218);box-shadow:none;border-radius:12px}.onboarding-combobox-option{color:var(--ob-ink,#2a2218);background:0 0;border-radius:8px;transition:background .14s,color .14s}.onboarding-combobox-option:hover,.onboarding-combobox-option[aria-selected=true]{background:var(--ob-accent,#1e6fa8);color:var(--ob-surface,#f4efe2)}.onboarding-combobox-option:hover .onboarding-text-soft,.onboarding-combobox-option[aria-selected=true] .onboarding-text-soft{color:var(--ob-surface,#f4efe2);opacity:.8}.onboarding-option{background:var(--ob-surface,#f4efe2);border:2px solid var(--ob-ink,#2a2218);color:var(--ob-ink,#2a2218);cursor:pointer;border-radius:12px;transition:background .14s,color .14s}.onboarding-option:hover:not(:disabled){background:var(--ob-accent,#1e6fa8);color:var(--ob-surface,#f4efe2)}.onboarding-option:hover:not(:disabled) .onboarding-text-soft{color:var(--ob-surface,#f4efe2);opacity:.8}.onboarding-option-highlight,.onboarding-option-highlight:hover:not(:disabled){background:var(--ob-accent,#1e6fa8);border-color:var(--ob-accent,#1e6fa8);color:var(--ob-surface,#f4efe2)}.onboarding-option-recommended{background:color-mix(in srgb, var(--ob-accent,#1e6fa8) 12%, var(--ob-surface,#f4efe2));border-color:var(--ob-accent,#1e6fa8);box-shadow:inset 4px 0 0 0 var(--ob-accent,#1e6fa8);color:var(--ob-ink,#2a2218)}.onboarding-option-recommended:hover:not(:disabled){background:var(--ob-accent,#1e6fa8);border-color:var(--ob-accent,#1e6fa8);box-shadow:none;color:var(--ob-surface,#f4efe2)}.onboarding-option-secondary{background:var(--ob-surface,#f4efe2);border:2px solid var(--ob-ink,#2a2218);color:var(--ob-ink,#2a2218);cursor:pointer;border-radius:10px;transition:background .14s,color .14s}.onboarding-option-secondary:hover:not(:disabled){background:var(--ob-accent,#1e6fa8);color:var(--ob-surface,#f4efe2)}
.bottom-nav{padding:10px 16px calc(env(safe-area-inset-bottom,12px) + 10px);z-index:110;background:linear-gradient(#0000,#060a18fa 40%);justify-content:center;gap:8px;display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-nav-btn{border-radius:var(--radius-pill);max-width:350px;color:var(--text-soft);cursor:pointer;transition:background-color var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast), transform var(--transition-fast);background:#0d1626;border:1px solid #94a3b81f;flex:1;padding:10px 14px;font-size:.9rem}.bottom-nav-btn.is-active{background:var(--accent-soft);color:var(--accent);border-color:var(--accent);box-shadow:none;transform:none}.bottom-nav-btn[data-tab=ready][data-count]:not([data-count=""]):after{content:attr(data-count);color:inherit;opacity:.85;margin-left:6px;font-size:.7rem}
.phrase-card{text-align:center;box-shadow:none;background:0 0;border:none;border-radius:14px;flex-direction:column;gap:6px;margin-top:0;padding:16px 18px 15px;display:flex;position:relative}.word-categories{z-index:10;flex-wrap:wrap;gap:4px;display:flex;position:absolute;top:6px;left:8px}.word-category-badge{border-radius:var(--radius-pill);border:1px solid var(--border-subtle);color:var(--text-soft);text-transform:lowercase;white-space:nowrap;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:all var(--transition-fast);background:#0d1626d9;padding:2px 6px;font-size:.65rem;font-weight:500}.word-category-badge.word-category-editable:hover{background:var(--accent-soft);border-color:var(--accent);color:var(--accent);transform:scale(1.05)}.word-category-badge.word-category-basic{color:#38bdf8e6;border-color:#38bdf866}.word-category-badge.word-category-phrase{color:#8b5cf6e6;border-color:#8b5cf666}.word-category-badge.word-category-nails{color:#ec4899e6;border-color:#ec489966}.word-category-badge.word-category-word{color:#22c55ee6;border-color:#22c55e66}.word-category-badge.word-category-to-fix,.word-category-badge.word-category-to\ fix{color:#fb7185e6;border-color:#fb718566}.phrase-card:nth-child(odd){background:0 0}.card-time-badge{z-index:5;letter-spacing:.04em;font-variant-numeric:tabular-nums;pointer-events:none;border-radius:8px;padding:2px 8px;font-size:.65rem;font-weight:700;line-height:1.6;position:absolute;top:10px;right:12px}.phrase-card[data-stage-group=fresh] .card-time-badge{color:var(--stage-1);background:#00000073;border:1px solid #fef9c38c}.phrase-card[data-stage-group=learning] .card-time-badge{color:var(--stage-2);background:#00000073;border:1px solid #fcd34d8c}.phrase-card[data-stage-group=seasoned] .card-time-badge{color:var(--stage-3);background:#00000073;border:1px solid #f59e0b8c}.phrase-card[data-stage-group=mastered] .card-time-badge{color:var(--stage-4);background:#00000073;border:1px solid #d977068c}.audio-btn{color:#fff;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;width:48px;min-width:48px;height:48px;min-height:48px;transition:background-color var(--transition-fast), transform var(--transition-fast), color var(--transition-fast), opacity var(--transition-fast);background:#1e6fa8d1;border:none;border-radius:999px;justify-content:center;align-items:center;margin-left:0;padding:0;font-size:1rem;display:inline-flex;position:relative;box-shadow:0 2px 8px #0000002e}.audio-btn--floating{z-index:2;position:absolute;top:-66px;right:2px}.audio-btn:hover{color:#fff;background:#1e6fa8;transform:translateY(-.5px)}.audio-btn:active,.audio-btn-pressed{background:var(--accent-soft);color:var(--accent);transform:scale(.95)}.audio-btn-playing{background:var(--accent-soft);color:var(--accent);animation:.3s ease-out audio-pulse}@keyframes audio-pulse{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}.memory-hook-display{text-align:center;color:#fff;border-radius:var(--radius-pill);cursor:pointer;transition:background-color var(--transition-fast), color var(--transition-fast);touch-action:manipulation;-webkit-tap-highlight-color:transparent;justify-content:center;align-items:center;min-height:1.5em;font-size:.9rem;display:flex}@media (hover:hover){.memory-hook-display:hover{background:#0f172a99}}.memory-hook-container{min-height:calc(14px + 1.2em);position:relative}.memory-hook-container .memory-hook-display{min-height:inherit}.memory-hook-container.editing .memory-hook-display{visibility:hidden}.memory-hook-input{border-radius:var(--radius-pill);border:1px solid var(--accent);width:100%;color:var(--text);font-size:16px;font-family:var(--font-sans);text-align:center;box-sizing:border-box;opacity:0;pointer-events:none;background:#0d1626;outline:none;padding:7px 12px;position:absolute;inset:0}@media (min-width:640px){.memory-hook-input{font-size:.85rem}}.memory-hook-input:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.memory-hook-container.editing .memory-hook-input{opacity:1;pointer-events:auto}.progress-btn{color:var(--text-soft);cursor:pointer;transition:background-color var(--transition-fast), border-color var(--transition-fast), transform var(--transition-fast);background:#0f172ae6;border:1px solid #94a3b866;border-radius:999px;align-items:center;gap:4px;padding:6px 11px;font-size:1rem;display:inline-flex}.card-actions-row{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:8px;width:100%;display:grid}.card-actions-row--two{grid-template-columns:repeat(2,minmax(0,1fr));max-width:430px;margin-inline:auto}.srs-btn{--srs-ink:#2a2218;border:2px solid var(--srs-ink);letter-spacing:0;text-transform:none;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;min-width:0;min-height:72px;transition:background-color var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast);box-shadow:none;border-radius:14px;justify-content:center;align-items:center;padding:12px 10px;font-weight:700;display:inline-flex}.srs-btn-copy{flex-direction:column;justify-content:center;align-items:center;gap:6px;min-width:0;line-height:1;display:flex}.srs-btn-label{letter-spacing:.01em;overflow-wrap:anywhere;font-size:1.05rem;font-weight:900;line-height:1}.srs-btn-hint{opacity:.78;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;font-size:.6rem;font-weight:700;line-height:1}.srs-btn--forgot,.srs-btn--okay,.srs-btn--easy{color:var(--srs-ink);background:#f4efe2}@media (hover:hover) and (pointer:fine){.srs-btn--forgot:hover,.srs-btn--okay:hover,.srs-btn--easy:hover{color:#fff;border-color:var(--srs-ink);background:#1e6fa8}}.srs-btn:active{color:#f4efe2;background:#1e6fa8;border-color:#1e6fa8}@media (max-width:430px){.card-actions-row{gap:6px}.srs-btn{min-height:68px;padding-inline:6px}.srs-btn-label{font-size:clamp(.95rem,2.4vw,1.1rem)}.srs-btn-hint{font-size:clamp(.54rem,2.6vw,.6rem)}}.progress-btn span.count{opacity:.8;font-size:1rem}.progress-btn.known{border-color:#2dd4bfa6}.progress-btn.unknown{border-color:#f87171cc}.progress-btn:hover{background:#0f172a;transform:translateY(-.5px)}.progress-btn:active{transform:translateY(0)}@keyframes countdown-pulse{0%{opacity:.6;transform:scale(.9)}50%{opacity:1;transform:scale(1.1)}to{opacity:.6;transform:scale(.9)}}.phrase-card{will-change:transform, opacity, margin, padding, max-height;max-height:1000px;transition:transform .4s cubic-bezier(.4,0,.2,1),opacity .4s cubic-bezier(.4,0,.2,1),margin .4s cubic-bezier(.4,0,.2,1),padding .4s cubic-bezier(.4,0,.2,1),max-height .4s cubic-bezier(.4,0,.2,1),border-width .4s cubic-bezier(.4,0,.2,1);overflow:hidden}.card-moved{animation:.5s cubic-bezier(.18,.89,.32,1.28) both card-move}[class*=animate-deck] .phrase-card{transition:none}@keyframes card-move{0%{opacity:0;transform:translateY(10px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.animate-deck-exit-scale{animation:.35s both deck-exit-scale}@keyframes deck-exit-scale{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.9)}}.animate-deck-exit-dissolve{animation:.45s both deck-exit-dissolve}@keyframes deck-exit-dissolve{0%{filter:blur()brightness();opacity:1;transform:scale(1)}50%{filter:blur(2px)brightness(1.4);opacity:.6;transform:scale(1.015)}to{filter:blur(8px)brightness(1.9);opacity:0;transform:scale(1.04)}}.animate-deck-enter-slide{animation:.38s cubic-bezier(.18,.89,.32,1.28) both deck-enter-slide}@keyframes deck-enter-slide{0%{opacity:0;transform:translateY(16px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.animate-deck-enter-rise{animation:.4s ease-out both deck-enter-rise}@keyframes deck-enter-rise{0%{opacity:0;transform:translateY(32px)}to{opacity:1;transform:translateY(0)}}.animate-deck-enter-pop{animation:.32s cubic-bezier(.34,1.56,.64,1) both deck-enter-pop}@keyframes deck-enter-pop{0%{opacity:0;transform:scale(.9)}60%{opacity:1;transform:scale(1.03)}to{opacity:1;transform:scale(1)}}.animate-deck-enter-drop{animation:.38s cubic-bezier(.18,.89,.32,1.28) both deck-enter-drop}@keyframes deck-enter-drop{0%{opacity:0;transform:translateY(-24px)}to{opacity:1;transform:translateY(0)}}.animate-deck-exit-beam{transform-origin:50%;animation:.4s cubic-bezier(.4,0,.8,1) both deck-exit-beam}@keyframes deck-exit-beam{0%{filter:brightness()blur();opacity:1;transform:scaleY(1)scaleX(1)}45%{filter:brightness(2.5)blur();opacity:1;transform:scaleY(.025)scaleX(1.04)}65%{filter:brightness(4)blur(1px);opacity:.9;transform:scaleY(.025)scaleX(1.01)}to{filter:brightness(3)blur(6px);opacity:0;transform:scaleY(0)scaleX(.6)}}.animate-deck-enter-unfurl{transform-origin:top;animation:.42s cubic-bezier(.16,1,.3,1) both deck-enter-unfurl}@keyframes deck-enter-unfurl{0%{filter:brightness(2)blur(2px);opacity:0;transform:scaleY(0)scaleX(.96)}55%{filter:brightness(1.1)blur();opacity:1;transform:scaleY(1.04)scaleX(1)}to{filter:brightness()blur();opacity:1;transform:scaleY(1)scaleX(1)}}.cover-target:after{content:"";position:absolute;inset:-4px}.cover-target.is-covered .lang-text,.cover-target.is-covered .memory-hook-text{color:#0000;text-shadow:none;transition:color .18s,transform .18s;transform:translateY(3px)}.cover-target.is-covered .lang-text:before,.cover-target.is-covered .memory-hook-text:before{content:none;background:0 0}.cover-target.is-covered:before{content:"";z-index:2;pointer-events:none;transform-origin:50%;background-image:radial-gradient(#3c321e3b 1.2px,#0000 1px),linear-gradient(145deg,#abc491eb 0%,#dcad8de6 100%);background-repeat:repeat,no-repeat;background-size:12px 12px,auto;border:1px solid #5345304d;border-radius:12px;transition:opacity .22s cubic-bezier(.16,1,.3,1),transform .22s cubic-bezier(.16,1,.3,1);animation:5s ease-in-out infinite reveal-cover-breathe;position:absolute;inset:-3px -10px;box-shadow:inset 0 1px #ffffff8c,inset 0 -1px 2px #5345302e,0 1px #ffffff80,0 4px 12px #5345301f}@keyframes reveal-cover-breathe{0%,to{box-shadow:inset 0 1px #ffffff8c,inset 0 -1px 2px #5345302e,0 1px #ffffff80,0 4px 12px #5345301f}50%{box-shadow:inset 0 1px #ffffffa6,inset 0 -1px 2px #53453038,0 1px #ffffff80,0 4px 14px #53453024,0 0 18px #abc4911f}}.phrase-card:nth-child(2) .cover-target.is-covered:before{animation-delay:-1.3s}.phrase-card:nth-child(3) .cover-target.is-covered:before{animation-delay:-2.6s}.phrase-card:nth-child(4) .cover-target.is-covered:before{animation-delay:-.8s}.phrase-card:nth-child(5) .cover-target.is-covered:before{animation-delay:-2.1s}.phrase-card:nth-child(6) .cover-target.is-covered:before{animation-delay:-3.4s}.cover-target.is-pressed.is-covered:before{opacity:0;transform:scaleY(.7)scaleX(.98)}.cover-target.is-pressed.is-covered .reveal-hint{opacity:0;transform:translateY(-2px)scale(.98)}.cover-target.is-pressed .lang-text,.cover-target.is-pressed .memory-hook-text{color:var(--text);transition:color .14s,transform .22s cubic-bezier(.16,1,.3,1);transform:translateY(0)}.cover-target.is-pressed{background:radial-gradient(#ae616114 0%,#0000 72%);border-radius:10px}@media (max-width:767px){.phrase-card .card-actions{margin-top:auto}.phrase-card--editing-hook .card-actions{visibility:hidden}}@media (min-width:640px){.phrase-card{padding-inline:16px}}.word-card--fullscreen.phrase-card,.word-card--fullscreen.phrase-card:nth-child(odd){box-shadow:none;background:0 0;border:none;border-radius:0;flex-direction:column;flex:1;min-height:0;display:flex}.word-card--fullscreen .word-card-content{flex-direction:column;flex:1;justify-content:center;min-height:0;display:flex}.word-card--fullscreen .lang-text,.word-card--fullscreen .cover-target.is-pressed .lang-text{color:#1c1410}.word-card--fullscreen .memory-hook-display{color:#1c1410b3}.word-card--fullscreen .card-actions{padding-bottom:max(env(safe-area-inset-bottom,0px), 24px);margin-top:auto;padding-top:16px}@media (max-width:767px){.word-card--fullscreen.phrase-card .card-actions{padding-bottom:max(env(safe-area-inset-bottom,0px), 16px)}}.deck-monkey-on-card{bottom:calc(12.5rem + env(safe-area-inset-bottom,0px));left:-3rem}@media (min-width:767px){.deck-monkey-on-card{display:none}}
.top-menu-center .progress-summary{-webkit-backdrop-filter:none;backdrop-filter:none;justify-content:center;width:auto;margin-top:0;padding:0;font-size:.6875rem;position:static}.progress-summary{justify-content:center;align-items:center;gap:12px;font-size:.6875rem;display:flex}
.auth-button{border:1px solid var(--border-subtle);background:var(--bg-elevated);color:var(--text);cursor:pointer;white-space:nowrap;border-radius:.375rem;align-items:center;gap:.375rem;padding:.25rem .625rem;font-size:.75rem;transition:all .15s;display:inline-flex}.auth-button:hover{border-color:var(--accent);opacity:.85}.auth-button--large{border-radius:.5rem;padding:.625rem 1.25rem;font-size:1rem;font-weight:600}.auth-button.is-connected{border-color:var(--accent)}.auth-dot{background:var(--accent);border-radius:50%;width:.375rem;height:.375rem}.auth-label{text-overflow:ellipsis;max-width:10rem;overflow:hidden}.game-card{--game-surface:#f4efe2;--game-surface-hover:#fff8e8;--game-ink:#2a2218;--game-ink-soft:#6b5e48;--game-accent:#1e6fa8;--game-correct:#15803d;--game-wrong:#b91c1c;background:var(--game-surface);border:2px solid var(--game-ink);color:var(--game-ink);flex-direction:column;gap:16px;padding:20px 18px 18px;display:flex;position:relative;overflow:hidden}.game-card:before{content:"";height:6px;position:absolute;top:0;left:0;right:0}.game-card--choice:before{background:var(--game-accent)}.game-card--typing:before{background:var(--fresh)}.game-card--matching:before{background:var(--game-correct)}.game-badge{letter-spacing:.08em;text-transform:uppercase;color:var(--game-ink);border:1.5px solid var(--game-ink);border-radius:var(--radius-pill);background:0 0;align-items:center;gap:5px;width:fit-content;padding:3px 12px;font-size:.72rem;font-weight:700;display:inline-flex}.game-prompt{text-align:center;letter-spacing:-.01em;color:var(--game-ink);padding:4px 0;font-size:1.5rem;font-weight:700;line-height:1.2}.game-audio-prompt{justify-content:center;padding:2px 0 6px;display:flex}.game-audio-btn{border-radius:var(--radius-pill);border:2px solid var(--game-ink);background:var(--game-surface);color:var(--game-ink);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast);padding:10px 18px;font-size:.9rem;font-weight:700}.game-audio-btn:hover{background:var(--game-accent);color:#fff}.game-options-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.game-option{border:2px solid var(--game-ink);background:var(--game-surface);color:var(--game-ink);cursor:pointer;transition:background var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast);text-align:center;border-radius:12px;padding:12px 10px;font-size:.95rem;font-weight:600;line-height:1.3}@media (hover:hover){.game-option:not(:disabled):hover{background:var(--game-surface-hover);border-color:var(--game-accent)}}.game-option:focus:not(:focus-visible){outline:none}.game-option--correct{background:var(--game-correct);border-color:var(--game-ink);color:#fff}.game-option--wrong{background:var(--game-wrong);border-color:var(--game-ink);color:#fff;animation:.35s game-shake}.game-option--reveal{background:var(--game-surface-hover);border-color:var(--game-correct);color:var(--game-correct)}.game-typing-area{flex-direction:column;align-items:center;gap:10px;display:flex}.game-typing-actions{align-items:center;gap:10px;display:flex}.game-typing-input-wrap{width:100%;position:relative}.game-typing-mask{font-family:var(--font-mono);color:var(--game-ink,var(--text));pointer-events:none;z-index:1;justify-content:center;align-items:center;gap:6px;padding:12px 16px;font-size:1rem;display:flex;position:absolute;inset:0}.game-typing-slot{border-bottom:1px solid #0000;justify-content:center;min-width:.9ch;display:inline-flex;position:relative}.game-typing-slot--space{color:color-mix(in srgb, var(--game-ink,var(--text)) 35%, transparent)}.game-typing-slot.is-active:after{content:"";background:var(--fresh);width:2px;height:1.2em;animation:1s step-end infinite typing-caret;position:absolute;top:-.05em;left:50%;transform:translate(-50%)}.game-typing-input-wrap:not(.is-focused) .game-typing-slot.is-active:after{opacity:0;animation:none}@keyframes typing-caret{0%,50%{opacity:1}51%,to{opacity:0}}.game-input{border:2px solid var(--game-ink);background:var(--game-surface);width:100%;color:var(--game-ink);transition:border-color var(--transition-fast), background var(--transition-fast);text-align:center;border-radius:12px;outline:none;padding:12px 16px;font-size:1rem;font-weight:500}.game-input--masked{color:#0000;caret-color:#0000;text-align:left}.game-input:focus{border-color:var(--game-accent);background:var(--game-surface-hover)}.game-input--exact{border-color:var(--game-correct);background:color-mix(in srgb, var(--game-correct) 10%, var(--game-surface))}.game-input--close{border-color:var(--fresh);background:color-mix(in srgb, var(--fresh) 14%, var(--game-surface))}.game-input--wrong{border-color:var(--game-wrong);background:color-mix(in srgb, var(--game-wrong) 10%, var(--game-surface));animation:.35s game-shake}.game-check-btn{border-radius:var(--radius-pill);border:2px solid var(--game-ink);background:var(--game-accent);color:#fff;cursor:pointer;transition:background var(--transition-fast);padding:10px 28px;font-size:.9rem;font-weight:700}.game-check-btn:hover{background:color-mix(in srgb, var(--game-accent) 80%, #000)}.game-hint-btn{border-radius:var(--radius-pill);border:2px solid var(--game-ink);background:var(--game-surface);color:var(--game-ink);cursor:pointer;transition:background var(--transition-fast);padding:10px 22px;font-size:.85rem;font-weight:700}.game-hint-btn:not(:disabled):hover{background:var(--game-surface-hover)}.game-hint-btn:disabled{opacity:.5;cursor:default}.game-match-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.game-match-col{flex-direction:column;gap:8px;min-width:0;display:flex}.game-match-btn{border:2px solid var(--game-ink);background:var(--game-surface);color:var(--game-ink);cursor:pointer;text-align:center;transition:background var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast);overflow-wrap:anywhere;word-break:break-word;-webkit-hyphens:auto;hyphens:auto;border-radius:12px;min-width:0;padding:11px 8px;font-size:.95rem;font-weight:600;line-height:1.3}@media (hover:hover){.game-match-btn:not(:disabled):not(.game-match-btn--selected):not(.game-match-btn--wrong):hover{background:var(--game-surface-hover);border-color:var(--game-accent);color:var(--game-ink)}.game-match-btn--selected:not(:disabled):hover{background:var(--game-accent);border-color:var(--game-ink);color:#fff;filter:brightness(1.08)}}.game-match-btn--selected{background:var(--game-accent);border-color:var(--game-ink);color:#fff}.game-match-btn--matched{cursor:default}.game-match-btn--matched.game-match-btn--c1{background:rgb(var(--match-1) / .18);border-color:var(--game-ink);color:var(--game-ink)}.game-match-btn--matched.game-match-btn--c2{background:rgb(var(--match-2) / .18);border-color:var(--game-ink);color:var(--game-ink)}.game-match-btn--matched.game-match-btn--c3{background:rgb(var(--match-3) / .22);border-color:var(--game-ink);color:var(--game-ink)}.game-match-btn--matched.game-match-btn--c4{background:rgb(var(--match-4) / .18);border-color:var(--game-ink);color:var(--game-ink)}.game-match-btn--wrong{background:var(--game-wrong);border-color:var(--game-ink);color:#fff;animation:.35s game-shake}.game-feedback{background:var(--game-surface);border:2px solid var(--game-ink);color:var(--game-ink);border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;font-size:.9rem;font-weight:700;display:flex}.game-feedback--exact{color:var(--game-correct)}.game-feedback--close{color:var(--fresh)}.game-feedback--wrong{color:var(--game-wrong)}.game-dismiss{border-radius:var(--radius-pill);border:1.5px solid var(--game-ink);color:var(--game-ink);cursor:pointer;transition:background var(--transition-fast);white-space:nowrap;background:0 0;margin-left:auto;padding:6px 16px;font-size:.8rem;font-weight:600}.game-dismiss:hover{background:var(--game-surface-hover)}@keyframes game-shake{0%,to{transform:translate(0)}20%{transform:translate(-5px)}40%{transform:translate(5px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}.word-card--fullscreen{width:100%;max-width:800px;padding:2rem 1.25rem;padding-bottom:calc(env(safe-area-inset-bottom,0px) + 2rem);flex-direction:column;justify-content:center;height:100%;margin:0 auto;display:flex}@media (max-width:767px){.word-card--fullscreen.phrase-card{justify-content:flex-end;min-height:100%;margin:0;padding:0}.word-card--fullscreen .word-card-content{flex-direction:column;flex:1;justify-content:center;min-height:0;display:flex}.word-card--fullscreen .word-card-content.word-card-content--editing-hook{justify-content:flex-start}.word-card--fullscreen .card-actions{gap:14px;margin:0;padding:.5rem}}@media (min-width:768px){.word-card--fullscreen{padding:2rem 2rem 1.5rem}}.word-card--fullscreen .lang-text{overflow-wrap:break-word;word-break:break-word;max-width:100%;font-size:clamp(1.5rem,4.5vw,2.6rem);line-height:1.25;display:block}.word-card--fullscreen .card-actions{justify-content:center;align-items:center;gap:14px;display:flex}@media (min-width:480px){.word-card--fullscreen .card-actions{gap:22px}}@media (min-width:768px){.word-card--fullscreen .card-actions{gap:30px;margin-top:2rem}}.word-card--fullscreen .card-time-badge{top:10px;right:12px}.word-card--fullscreen .progress-btn{min-width:64px;min-height:52px;padding:8px 10px;font-size:1.2rem}@media (min-width:640px){.word-card--fullscreen .progress-btn{min-width:64px;min-height:52px;padding:8px 20px;font-size:1.4rem}}.word-card--fullscreen .audio-btn{min-height:52px;padding:10px 14px;font-size:1.5rem}.word-card--fullscreen .memory-hook-text{font-size:1rem}

