:root{--dict-color-primary: var(--dict-color-accent-primary);--dict-color-primary-hover: color-mix(in srgb, var(--dict-color-accent-primary) 82%, #000);--dict-color-primary-soft: color-mix(in srgb, var(--dict-color-accent-primary) 12%, transparent);--dict-color-danger: var(--dict-color-error, #DC2626);--dict-color-bg-page: var(--dict-color-bg-primary);--dict-color-bg-surface: var(--dict-color-bg-card);--mastery-new: hsl(200, 10%, 62%);--mastery-learning: hsl(200, 70%, 58%);--mastery-review: hsl(40, 85%, 52%);--mastery-strong: hsl(150, 55%, 46%);--mastery-mastered: hsl(280, 62%, 64%);--mastery-forgotten: hsl(350, 68%, 60%)}[data-theme=dark]{--dict-color-primary-hover: color-mix(in srgb, var(--dict-color-accent-primary) 82%, #fff)}.memory-shell{display:flex;height:100vh;background:var(--dict-color-bg-page);font-family:var(--dict-font-sans);color:var(--dict-color-text-primary)}.memory-sidebar{width:280px;background:var(--dict-color-bg-surface);border-right:1px solid hsl(220,20%,90%);padding:1.5rem;display:flex;flex-direction:column;box-shadow:var(--dict-shadow-sm);z-index:10}.memory-main{flex:1;display:flex;flex-direction:column;overflow:hidden}.memory-tabs{display:flex;gap:1rem;padding:1rem 2rem;background:var(--dict-glass-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--dict-glass-border);z-index:5}.memory-tab{padding:.75rem 1.25rem;border:none;background:transparent;font-weight:600;color:var(--dict-color-text-secondary);cursor:pointer;border-radius:8px;transition:all .2s cubic-bezier(.4,0,.2,1)}.memory-tab:hover{background:var(--dict-color-primary-soft);color:var(--dict-color-primary)}.memory-tab.active{background:var(--dict-color-bg-surface);color:var(--dict-color-primary);box-shadow:var(--dict-shadow-sm);transform:translateY(-1px)}.memory-actions-bar{padding:1rem 2rem;display:flex;justify-content:flex-end;align-items:center}.memory-content{flex:1;padding:1rem 2rem 2rem;overflow-y:auto}.qmd-svg-icon{display:inline-flex;align-items:center;justify-content:center;width:1em;height:1em}.qmd-svg-icon svg{width:100%;height:100%}.qmd-btn-icon{display:inline-flex;align-items:center;gap:.5rem}.item-card__action-btn.qmd-svg-icon{width:24px;height:24px}.item-grid__layout{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.item-card{background:var(--dict-color-bg-surface);border-radius:16px;padding:1.5rem;box-shadow:var(--dict-shadow-md);transition:all .3s cubic-bezier(.2,.8,.2,1);position:relative;display:flex;flex-direction:column;gap:1rem;border:1px solid transparent}.item-card:hover{transform:translateY(-4px) scale(1.01);box-shadow:var(--dict-shadow-lg)}.item-card--due{border-color:var(--dict-color-warning);background:linear-gradient(to bottom right,#fff,#fffcf5)}.item-card__header{display:flex;align-items:center;gap:.5rem}.item-card__type{font-size:.75rem;font-weight:700;padding:.2rem .5rem;border-radius:4px}.item-card__type--word{background:#d1d8fa;color:#1430b8}.item-card__type--hanzi{background:#fad1d8;color:#b81430}.item-card__type--idiom{background:#d1fae6;color:#0f8a4d}.item-card__due-badge{font-size:.7rem;background:var(--dict-color-warning);color:#fff;padding:.2rem .5rem;border-radius:10px;font-weight:600;margin-left:auto;animation:pulse 2s infinite}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.item-card__delete-btn{margin-left:auto;background:transparent;border:none;color:var(--dict-color-text-secondary);cursor:pointer;opacity:0;transition:opacity .2s}.item-card:hover .item-card__delete-btn{opacity:1}.item-card__delete-btn:hover{color:var(--dict-color-danger)}.item-card__body{flex:1}.item-card__headword{font-size:1.75rem;font-weight:800;color:var(--dict-color-text-primary);margin-bottom:.25rem}.item-card__pinyin{font-size:.9rem;color:var(--dict-color-primary);margin-bottom:.25rem;font-weight:500}.item-card__meaning{font-size:.95rem;color:var(--dict-color-text-secondary);line-height:1.4}.item-card__footer{display:flex;justify-content:space-between;align-items:center;margin-top:.5rem;padding-top:1rem;border-top:1px solid hsl(220,20%,94%)}.item-card__actions{display:flex;gap:.5rem}.item-card__action-btn{background:var(--dict-color-bg-page);border:none;width:32px;height:32px;border-radius:50%;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;color:var(--dict-color-text-secondary)}.item-card__action-btn:hover{background:var(--dict-color-primary);color:#fff;transform:scale(1.1)}.mastery-meter{display:flex;flex-direction:column;gap:4px}.mastery-meter__dots{display:flex;gap:3px}.mastery-dot{width:8px;height:8px;border-radius:50%;background:#e0e4eb}.mastery-dot--filled{background:var(--dict-color-primary)}.item-card__mastery-row{display:flex;align-items:center;gap:.5rem}.item-card__mastery-label{font-size:.75rem;font-weight:600}.item-card__mastery-label--new{color:var(--mastery-new)}.item-card__mastery-label--learning{color:var(--mastery-learning)}.item-card__mastery-label--review{color:var(--mastery-review)}.item-card__mastery-label--strong{color:var(--mastery-strong)}.item-card__mastery-label--mastered{color:var(--mastery-mastered)}.item-card__mastery-label--forgotten{color:var(--mastery-forgotten)}.memory-dashboard{display:flex;flex-direction:column;gap:2rem}.dashboard-stats-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1.5rem}.dashboard-stat{background:var(--dict-color-bg-surface);padding:1.5rem;border-radius:16px;text-align:center;box-shadow:var(--dict-shadow-md);transition:transform .3s}.dashboard-stat:hover{transform:translateY(-5px)}.dashboard-stat__value{font-size:2.5rem;font-weight:800;margin-bottom:.5rem}.dashboard-stat--primary .dashboard-stat__value{color:var(--dict-color-primary)}.dashboard-stat--success .dashboard-stat__value{color:var(--dict-color-success)}.dashboard-stat--warning .dashboard-stat__value{color:var(--dict-color-warning)}.dashboard-stat__label{font-size:.85rem;font-weight:600;color:var(--dict-color-text-secondary);text-transform:uppercase;letter-spacing:.5px}.save-context-menu{background:var(--dict-glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--dict-glass-border);border-radius:12px;box-shadow:0 10px 40px #00000026;width:280px;padding:.5rem;animation:slideUpFade .2s cubic-bezier(.16,1,.3,1)}@keyframes slideUpFade{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.save-context-menu__header{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;border-bottom:1px solid rgba(0,0,0,.05);margin-bottom:.5rem}.save-context-menu__title{font-weight:600;font-size:.85rem;color:var(--dict-color-text-secondary)}.save-context-menu__close{background:none;border:none;font-size:1.25rem;cursor:pointer;color:var(--dict-color-text-secondary)}.save-context-menu__list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:2px}.save-context-menu__btn{width:100%;display:flex;align-items:center;gap:.75rem;padding:.75rem;background:transparent;border:none;border-radius:8px;cursor:pointer;text-align:left;transition:all .15s}.save-context-menu__btn:hover:not(:disabled){background:var(--dict-color-primary-soft)}.save-context-menu__btn--saving{opacity:.7;cursor:wait}.save-context-menu__btn--saved{background:#ebfaf2!important;color:var(--dict-color-success)}.save-context-menu__icon{font-size:1.2rem}.save-context-menu__label{flex:1;font-weight:500;font-size:.9rem}.save-context-menu__text{font-size:.8rem;color:var(--dict-color-text-secondary);max-width:80px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.btn{padding:.75rem 1.5rem;border-radius:8px;font-weight:600;font-family:inherit;cursor:pointer;transition:all .2s;border:none}.btn--primary{background:linear-gradient(135deg,var(--dict-color-primary),hsl(250,80%,65%));color:#fff;box-shadow:0 4px 15px #5064ff4d}.btn--primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #5064ff66}.btn--outline{background:transparent;border:2px solid var(--dict-color-primary);color:var(--dict-color-primary)}.btn--outline:hover{background:var(--dict-color-primary-soft)}.quiz-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10000}.quiz-modal{background:var(--dict-color-bg-surface);width:90%;max-width:600px;border-radius:20px;box-shadow:var(--dict-shadow-lg);animation:slideUpFade .3s cubic-bezier(.16,1,.3,1)}.quiz-modal__header{padding:1.5rem 2rem;border-bottom:1px solid var(--dict-color-bg-page);display:flex;justify-content:space-between;align-items:center}.quiz-modal__body{padding:2rem;display:flex;flex-direction:column;gap:1.5rem}.quiz-modal__footer{padding:1.5rem 2rem;background:var(--dict-color-bg-page);border-radius:0 0 20px 20px;display:flex;justify-content:flex-end;gap:1rem}.mode-selector{display:flex;gap:1rem}.mode-card{flex:1;cursor:pointer}.mode-card input{display:none}.mode-card__content{border:2px solid var(--dict-color-bg-page);border-radius:12px;padding:1rem;text-align:center;transition:all .2s}.mode-card input:checked+.mode-card__content{border-color:var(--dict-color-primary);background:var(--dict-color-primary-soft)}.mistake-list{display:flex;flex-direction:column;gap:1rem}.mistake-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:var(--dict-shadow-sm);display:flex;flex-direction:column;gap:.5rem}.mistake-card__header{display:flex;justify-content:space-between;font-size:.85rem;color:var(--dict-color-text-secondary)}.mistake-card__word{font-size:1.5rem;font-weight:700}.mistake-card__prompt{font-weight:500}.mistake-card__diff{display:flex;gap:2rem;margin-top:.5rem}.mistake-card__wrong{color:var(--dict-color-danger)}.mistake-card__correct{color:var(--dict-color-success)}.mistake-card__diagnosis{background:#fef6e7;padding:.75rem;border-radius:8px;margin-top:.5rem;font-size:.9rem}@media(max-width:768px){.memory-shell{flex-direction:column}.memory-sidebar{width:100%;border-right:none;border-bottom:1px solid var(--dict-color-bg-page);padding:1rem;height:auto;overflow-x:auto;flex-direction:row;gap:1rem;align-items:center}.list-sidebar__nav{display:flex;flex-direction:row;overflow-x:auto;padding-bottom:.5rem;gap:.5rem;white-space:nowrap}.list-sidebar__nav-item{padding:.5rem 1rem;margin:0;flex:0 0 auto}.list-sidebar__header{flex-direction:row;align-items:center;margin-bottom:0;min-width:fit-content}.memory-tabs{padding:.5rem 1rem;overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch}.memory-actions-bar{padding:.5rem 1rem;justify-content:stretch}.memory-actions-bar .btn{flex:1}.item-grid__layout{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem}.item-card{padding:1rem}.item-card__headword{font-size:1.5rem}.dashboard-stats-row{grid-template-columns:repeat(2,1fr)}.dashboard-actions{flex-direction:column}.quiz-modal__body{padding:1rem}.mode-selector{flex-direction:column}.quiz-modal__footer{flex-direction:column-reverse}.quiz-modal__footer .btn{width:100%}}.memory-gate-screen{--mg-bg-card: var(--dict-color-bg-card);--mg-border: var(--dict-color-border-primary);--mg-text: var(--dict-color-text-primary);--mg-text-secondary: var(--dict-color-text-secondary);--mg-text-muted: var(--dict-color-text-tertiary);--mg-text-faint: var(--dict-color-text-muted);--mg-primary: var(--dict-color-accent-primary);--mg-on-primary: var(--dict-color-text-inverse, #fff);display:grid;place-items:center;box-sizing:border-box;width:100%;min-height:100%;padding:clamp(40px,9vh,96px) var(--dict-space-5);background:none;font-family:var(--dict-font-sans)}.memory-gate-screen .memory-gate{box-sizing:border-box;display:flex;flex-direction:column;align-items:center;width:100%;max-width:384px;margin:0;padding:40px;text-align:center;border:1px solid var(--mg-border);border-radius:16px;background:var(--mg-bg-card);box-shadow:0 1px 1px #0000000a,0 12px 32px -8px #00000029;-webkit-font-smoothing:antialiased;animation:memoryGateIn .38s cubic-bezier(.22,1,.36,1) both}[data-theme=dark] .memory-gate-screen .memory-gate{box-shadow:0 1px 1px #0000004d,0 16px 40px -10px #0009}@keyframes memoryGateIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.memory-gate-screen .memory-gate__mark{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;margin:0 0 20px;border-radius:13px;color:var(--mg-primary);background:color-mix(in srgb,var(--mg-primary) 11%,var(--mg-bg-card));border:1px solid color-mix(in srgb,var(--mg-primary) 20%,var(--mg-border))}.memory-gate-screen .memory-gate__header{display:flex;flex-direction:column;align-items:center;gap:6px;margin:0 0 26px}.memory-gate-screen .memory-gate__eyebrow{margin:0;font-size:.6875rem;font-weight:var(--dict-fw-semibold);letter-spacing:.11em;text-transform:uppercase;color:var(--mg-primary)}.memory-gate-screen .memory-gate__title{margin:0;font-size:1.375rem;font-weight:var(--dict-fw-bold);letter-spacing:-.02em;line-height:1.3;color:var(--mg-text)}.memory-gate-screen .memory-gate__lead{margin:2px 0 0;max-width:30ch;font-size:.875rem;line-height:1.55;color:var(--mg-text-secondary)}.memory-gate-screen .memory-gate__features{list-style:none;margin:0 0 26px;padding:0;display:flex;flex-direction:column;gap:16px;width:100%;text-align:left}.memory-gate-screen .memory-gate__feature{display:flex;align-items:center;gap:13px}.memory-gate-screen .memory-gate__feature-icon{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;width:36px;height:36px;border-radius:9px;color:var(--mg-primary);background:color-mix(in srgb,var(--mg-primary) 10%,var(--mg-bg-card));border:1px solid color-mix(in srgb,var(--mg-primary) 16%,var(--mg-border))}.memory-gate-screen .memory-gate__feature-icon .qmd-svg-icon{width:17px;height:17px}.memory-gate-screen .memory-gate__feature-copy{display:flex;flex-direction:column;gap:2px;min-width:0}.memory-gate-screen .memory-gate__feature-title{font-size:.8125rem;font-weight:var(--dict-fw-semibold);line-height:1.35;color:var(--mg-text)}.memory-gate-screen .memory-gate__feature-desc{font-size:.75rem;line-height:1.4;color:var(--mg-text-muted)}.memory-gate-screen .memory-gate__footer{display:flex;flex-direction:column;align-items:center;gap:12px;width:100%}.qm-dictionary-mf .memory-gate-screen .memory-gate__cta{display:inline-flex;align-items:center;justify-content:center;width:100%;height:44px;padding:0 24px;border:none;border-radius:11px;font-family:inherit;font-size:.9375rem;font-weight:var(--dict-fw-semibold);letter-spacing:-.01em;color:var(--mg-on-primary);cursor:pointer;background:var(--mg-primary);box-shadow:0 1px 2px color-mix(in srgb,var(--mg-primary) 22%,transparent);transition:filter var(--dict-transition-fast),transform var(--dict-transition-fast),box-shadow var(--dict-transition-fast)}.qm-dictionary-mf .memory-gate-screen .memory-gate__cta:hover{filter:brightness(1.05);box-shadow:0 4px 14px color-mix(in srgb,var(--mg-primary) 28%,transparent)}.qm-dictionary-mf .memory-gate-screen .memory-gate__cta:active{transform:scale(.99)}.qm-dictionary-mf .memory-gate-screen .memory-gate__cta:focus-visible{outline:2px solid color-mix(in srgb,var(--mg-primary) 45%,transparent);outline-offset:2px}.memory-gate-screen .memory-gate__note{margin:0;text-align:center;font-size:.75rem;color:var(--mg-text-faint)}@media(max-width:480px){.memory-gate-screen{padding:24px 16px 40px;align-items:start}.memory-gate-screen .memory-gate{padding:32px 22px}}.memory-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:var(--dict-space-3);padding:var(--dict-space-12) var(--dict-space-6);margin:var(--dict-space-6) auto;max-width:480px}.memory-empty-state--inline{padding:var(--dict-space-10) var(--dict-space-4)}.memory-empty-state__icon{width:32px;height:32px;color:var(--dict-color-text-muted)}.memory-empty-state h3{font-size:var(--dict-fs-md);font-weight:var(--dict-fw-semibold);color:var(--dict-color-text-primary);margin:0}.memory-empty-state p{font-size:var(--dict-fs-sm);color:var(--dict-color-text-secondary);line-height:var(--dict-lh-normal);margin:0;max-width:36ch}.memory-error{color:var(--dict-color-danger);background:#dd3c571a;padding:1.5rem;border-radius:12px;text-align:center;margin:2rem auto;max-width:600px;font-weight:500}.memory-loading{text-align:center;padding:3rem;color:var(--dict-color-text-secondary);font-weight:500;animation:pulse 1.5s infinite ease-in-out}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;font-size:.95rem;font-weight:600;border-radius:12px;border:none;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);font-family:inherit}.btn--primary{background:var(--dict-color-primary);color:#fff;box-shadow:0 4px 12px #425ff04d}.btn--primary:hover{background:var(--dict-color-primary-hover);transform:translateY(-2px);box-shadow:0 6px 16px #425ff066}.btn--primary:active{transform:translateY(0)}
