:root{--bg-primary: #f7f7f7;--bg-secondary: #ffffff;--bg-tertiary: #f1f1f1;--border-color: #e5e5e5;--text-primary: #3c3c3c;--text-secondary: #4b4b4b;--text-muted: #afafaf;--radius-md: 16px;--radius-lg: 24px}:root[data-theme=dark]{--bg-primary: #131f24;--bg-secondary: #1c2e36;--bg-tertiary: #203741;--border-color: #3b4c55;--text-primary: #f1f7fb;--text-secondary: #afafaf;--text-muted: #61737c}body{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;min-height:100vh;margin:0;background:var(--bg-primary);color:var(--text-primary);font-family:Lexend,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Noto Sans SC,Noto Sans CJK SC;transition:background var(--transition-normal),color var(--transition-normal);position:static!important;overflow:auto!important}.manage-header{display:flex;align-items:center;justify-content:space-between;padding:0 32px;height:70px;background:var(--bg-secondary);border-bottom:2px solid var(--border-color);position:sticky;top:0;z-index:50;flex-shrink:0}.manage-logo{display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:800;font-size:1.5rem;letter-spacing:-.5px}.manage-logo .logo-icon{font-size:1.6rem;animation:float 4s ease-in-out infinite}.manage-logo .logo-text{color:var(--text-primary)}.manage-logo .logo-text span{color:var(--color-primary)}.manage-nav{display:flex;align-items:center;gap:16px}.manage-theme-toggle{display:inline-flex;align-items:center;justify-content:space-between;padding:6px;border-radius:20px;background:var(--bg-tertiary);border:2px solid var(--border-color);box-shadow:0 3px 0 var(--border-color);cursor:pointer;position:relative;width:76px;height:38px;box-sizing:border-box;overflow:hidden;-webkit-user-select:none;user-select:none;transition:transform var(--transition-fast)}.toggle-sun{position:absolute;left:8px;top:50%;transform:translateY(-50%);z-index:1;font-size:.95rem;pointer-events:none;line-height:1}.toggle-moon{position:absolute;right:8px;top:50%;transform:translateY(-50%);z-index:1;font-size:.95rem;pointer-events:none;line-height:1}.duo-toggle-knob{width:22px;height:22px;border-radius:50%;display:inline-block;transition:transform .2s cubic-bezier(.34,1.56,.64,1);box-shadow:0 2px 4px #00000026;position:absolute;top:6px;left:6px;z-index:2;flex-shrink:0}.duo-toggle-knob.light{transform:translate(0);background:#ff9600}.duo-toggle-knob.dark{transform:translate(38px);background:var(--color-primary)}.user-chip{display:flex;align-items:center;gap:10px;padding:6px 16px 6px 8px;border-radius:99px;background:var(--bg-tertiary);border:2px solid var(--border-color);transition:border-color var(--transition-fast);text-decoration:none}.user-chip:hover{border-color:var(--color-primary)}.user-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;border:2px solid #fff;box-shadow:0 2px 8px #00000026;background-color:var(--bg-secondary)}.user-name{font-size:.9rem;font-weight:700;max-width:140px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-primary)}.logout-link{font-size:.8rem;font-weight:700;color:var(--text-muted);text-decoration:none;padding:4px 8px;border-radius:8px;transition:background var(--transition-fast),color var(--transition-fast)}.logout-link:hover{background:var(--bg-primary);color:var(--color-error, #ef4444)}.auth-guard{flex:1;display:flex;align-items:center;justify-content:center;padding:40px 24px}.auth-guard-card{text-align:center;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:24px;padding:48px 40px;max-width:440px;width:100%;box-shadow:0 12px 24px #0000000d}.auth-guard-icon{font-size:3.5rem;margin-bottom:20px}.auth-guard-card h2{margin:0 0 10px;font-size:1.6rem;font-weight:800;letter-spacing:-.5px}.auth-guard-card p{margin:0 0 32px;color:var(--text-muted);line-height:1.5}.back-link{display:block;margin-top:20px;color:var(--text-muted);text-decoration:none;font-size:.95rem;font-weight:700;transition:color var(--transition-fast)}.back-link:hover{color:var(--color-primary)}.manage-app{display:flex;flex:1;overflow:hidden;height:calc(100vh - 70px)}.manage-sidebar{width:320px;flex-shrink:0;background:var(--bg-secondary);border-right:2px solid var(--border-color);display:flex;flex-direction:column;overflow-y:auto}.sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:24px 20px 16px;border-bottom:2px solid var(--border-color);flex-shrink:0}.sidebar-header h2{margin:0;font-size:.85rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted)}.sidebar-add-actions{display:flex;align-items:center;gap:8px}.category-add-btn{background:var(--bg-tertiary);border:2px solid var(--border-color);box-shadow:0 4px 0 var(--border-color);color:var(--color-primary);font-size:1rem}.new-deck-btn{width:38px;height:38px;border-radius:12px;border:none;background:var(--color-primary);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;font-weight:800;box-shadow:0 4px color-mix(in srgb,var(--color-primary) 75%,black);transition:transform .1s ease,box-shadow .1s ease}.new-deck-btn:hover{filter:brightness(1.05)}.new-deck-btn:active{transform:translateY(3px);box-shadow:0 1px color-mix(in srgb,var(--color-primary) 75%,black)}.deck-list{flex:1;overflow-y:auto;padding:16px 12px}.deck-list-loading,.deck-list-empty{padding:32px 16px;color:var(--text-muted);font-size:.95rem;text-align:center;font-weight:500}.deck-category-group+.deck-category-group{margin-top:18px}.deck-category-header{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:38px;padding:4px 8px 9px}.deck-category-title{min-width:0;display:flex;align-items:center;gap:7px;color:var(--text-secondary);font-size:.78rem;letter-spacing:.055em;text-transform:uppercase}.deck-category-title strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.deck-category-title small{color:var(--text-muted);font-size:.72rem;font-weight:800;letter-spacing:0;text-transform:none}.deck-category-actions{display:flex;gap:4px;opacity:0;transition:opacity var(--transition-fast)}.deck-category-header:hover .deck-category-actions,.deck-category-header:focus-within .deck-category-actions{opacity:1}.deck-category-actions button{width:30px;height:30px;padding:0;border:1px solid var(--border-color);border-radius:9px;background:var(--bg-tertiary);cursor:pointer;font:inherit;font-size:.78rem}.deck-category-actions button:hover{border-color:var(--color-primary);transform:translateY(-1px)}.category-delete-note{color:var(--color-error)!important;font-weight:700;line-height:1.45}.deck-category-uncategorized .deck-category-title{color:var(--text-muted)}.deck-item{display:flex;flex-direction:row;align-items:center;gap:12px;width:100%;padding:14px 18px;border-radius:16px;border:2px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);cursor:pointer;text-align:left;transition:all var(--transition-fast);margin-bottom:10px;box-shadow:0 3px 0 var(--border-color)}.deck-item:hover{background:var(--bg-tertiary);transform:translateY(-2px);box-shadow:0 5px 0 var(--border-color);border-color:color-mix(in srgb,var(--color-primary) 40%,var(--border-color))}.deck-item.active{background:color-mix(in srgb,var(--color-primary) 8%,var(--bg-secondary));border-color:var(--color-primary);box-shadow:0 4px 0 var(--color-primary);color:var(--color-primary)}.deck-item-icon{font-size:1.4rem;flex-shrink:0}.deck-item-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.deck-item-name{font-weight:800;font-size:1.05rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px}.deck-item-meta{font-size:.8rem;font-weight:700;color:var(--text-muted);margin-top:2px;text-transform:uppercase;letter-spacing:.03em}.deck-item.active .deck-item-meta{color:var(--color-primary);opacity:.85}.deck-item-arrow{font-size:.9rem;font-weight:800;color:var(--text-muted);opacity:.6;flex-shrink:0}.deck-item.active .deck-item-arrow{color:var(--color-primary);opacity:1}.color-section{padding:20px 16px;border-top:2px solid var(--border-color);flex-shrink:0;background:var(--bg-secondary)}.color-section-title{margin:0 0 16px;font-size:.82rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted)}.color-presets{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin-bottom:16px}.color-swatch{width:100%;aspect-ratio:1;border-radius:10px;border:2px solid transparent;cursor:pointer;transition:transform .1s ease,box-shadow .1s ease;padding:0;box-shadow:0 3px #00000026}.color-swatch:hover{transform:translateY(-2px);box-shadow:0 5px #00000026}.color-swatch.active{border-color:var(--text-primary);transform:scale(1.05);box-shadow:0 0 0 2px var(--bg-secondary),0 3px #0003}.color-custom-row{display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--bg-tertiary);padding:8px 12px;border-radius:12px;border:2px solid var(--border-color)}.color-custom-label{font-size:.88rem;font-weight:700;color:var(--text-secondary)}.color-custom-input{width:44px;height:32px;border:2px solid var(--border-color);border-radius:8px;padding:2px;background:var(--bg-secondary);cursor:pointer}.manage-main{flex:1;overflow-y:auto;padding:32px 40px;background:var(--bg-primary);min-width:0}.no-deck-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;color:var(--text-muted);max-width:480px;margin:0 auto}.no-deck-icon{font-size:4.5rem;margin-bottom:24px;animation:float 4s ease-in-out infinite}.no-deck-state h3{margin:0 0 12px;font-size:1.4rem;font-weight:800;color:var(--text-secondary);letter-spacing:-.5px}.no-deck-state p{margin:0;font-size:1rem;line-height:1.5}.deck-panel{display:flex;flex-direction:column;gap:24px;animation:fadeIn .3s ease}.deck-meta{display:flex;flex-direction:column;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:24px;padding:24px;box-shadow:0 4px 0 var(--border-color);gap:16px}.deck-meta-top{display:flex;align-items:center;gap:18px;width:100%}.deck-mascot-box{width:76px;height:76px;background:#f7f7f7;border:2px solid var(--border-color);border-radius:18px;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:inset 0 2px 4px #00000005}:root[data-theme=dark] .deck-mascot-box{background:var(--bg-tertiary)}.deck-avatar-owl{width:58px;height:58px}.deck-meta-details{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.deck-name-row{display:flex;align-items:center;gap:8px;width:100%}.deck-name-input{font-size:1.5rem;font-weight:800;background:transparent;border:none;border-bottom:2px dashed var(--border-color);color:var(--text-primary);padding:2px 0;width:100%;transition:border-color .2s ease;font-family:Lexend,sans-serif,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Noto Sans SC,Noto Sans CJK SC;letter-spacing:-.5px}.deck-name-input:focus{outline:none;border-bottom-color:var(--color-primary);border-bottom-style:solid}.deck-edit-pencil{font-size:1.15rem;color:var(--text-muted);cursor:pointer;opacity:.7;transition:opacity .15s ease}.deck-edit-pencil:hover{opacity:1}.deck-desc-input{font-size:.95rem;background:transparent;border:none;color:var(--text-muted);padding:2px 0;width:100%;font-family:Lexend,sans-serif,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Noto Sans SC,Noto Sans CJK SC}.deck-desc-input:focus{outline:none;color:var(--text-primary)}.deck-meta-actions-row{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:2px solid var(--border-color);padding-top:16px;width:100%}.category-select-label{display:flex;align-items:center;gap:8px;min-width:0;color:var(--text-secondary);font-size:.82rem;font-weight:800}.category-select{max-width:190px;min-height:42px;padding:8px 32px 8px 11px;border:2px solid var(--border-color);border-radius:12px;background:var(--bg-tertiary);color:var(--text-primary);font:inherit;font-size:.86rem;font-weight:700}.category-select:focus{outline:none;border-color:var(--color-primary)}.deck-meta-btns{display:flex;align-items:center;gap:12px}.toggle-label{display:flex;align-items:center;gap:10px;cursor:pointer;font-size:.9rem;font-weight:700;color:var(--text-secondary);background:var(--bg-tertiary);padding:8px 14px;border-radius:12px;border:2px solid var(--border-color);transition:all var(--transition-fast)}.toggle-label:hover{border-color:var(--color-primary)}.toggle-input{display:none}.toggle-slider{position:relative;width:44px;height:24px;background:var(--border-color);border-radius:12px;transition:background .2s ease;flex-shrink:0}.toggle-slider:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 2px 4px #00000026;transition:transform .2s cubic-bezier(.34,1.56,.64,1)}.toggle-input:checked+.toggle-slider{background:var(--color-primary)}.toggle-input:checked+.toggle-slider:after{transform:translate(20px)}.save-deck-btn{padding:10px 20px;border-radius:14px;border:none;background:var(--color-primary);color:#fff;font-family:Lexend,sans-serif,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Noto Sans SC,Noto Sans CJK SC;font-weight:800;font-size:.95rem;cursor:pointer;white-space:nowrap;box-shadow:0 4px color-mix(in srgb,var(--color-primary) 70%,black);transition:transform .1s ease,box-shadow .1s ease}.save-deck-btn:hover:not(:disabled){filter:brightness(1.05)}.save-deck-btn:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px color-mix(in srgb,var(--color-primary) 70%,black)}.save-deck-btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.delete-deck-btn{width:44px;height:44px;border-radius:14px;border:2px solid var(--border-color);background:var(--bg-secondary);color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 0 var(--border-color);transition:transform .1s ease,box-shadow .1s ease,border-color .1s ease,color .1s ease}.delete-deck-btn:hover{color:#ff4b4b;border-color:#ff4b4b;box-shadow:0 4px #ff4b4b;background:#fff0f00d}.delete-deck-btn:active{transform:translateY(3px);box-shadow:0 1px 0 var(--border-color)}.deck-stats-bar{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;background:var(--bg-tertiary);border:2px solid var(--border-color);border-radius:16px}.deck-stat{font-size:.95rem;color:var(--text-secondary);font-weight:800}.deck-actions-right{display:flex;align-items:center;gap:12px}.import-btn{display:flex;align-items:center;gap:8px;padding:8px 16px;border-radius:12px;font-family:Lexend,sans-serif,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Noto Sans SC,Noto Sans CJK SC;font-size:.85rem;font-weight:800;cursor:pointer;text-decoration:none;transition:transform .1s ease,box-shadow .1s ease}.import-btn{background:var(--color-primary);color:#fff;border:2px solid var(--color-primary);box-shadow:0 3px color-mix(in srgb,var(--color-primary) 75%,black)}.import-btn:hover{filter:brightness(1.05)}.import-btn:active{transform:translateY(2px);box-shadow:0 1px color-mix(in srgb,var(--color-primary) 75%,black)}.import-btn:focus-visible{outline:3px solid color-mix(in srgb,var(--color-primary) 45%,transparent);outline-offset:2px}.import-json-btn{background:linear-gradient(135deg,#7a3cdd,#3c57dd);border-color:#6022c3;box-shadow:0 3px #4b1b98}.import-json-btn:hover{filter:brightness(1.08)}.import-json-btn:active{transform:translateY(2px);box-shadow:0 1px #4b1b98}.import-dropdown{position:relative;display:inline-block}.import-dropdown .dropdown-arrow{transition:transform .2s ease}.import-dropdown.open .dropdown-arrow{transform:rotate(180deg)}.import-menu{position:absolute;top:calc(100% + 6px);right:0;min-width:200px;background:var(--bg-card);border:2px solid var(--border-color);border-radius:12px;box-shadow:0 4px 12px #00000026;z-index:100;animation:dropdownIn .15s ease}@keyframes dropdownIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.import-menu-item{display:block;width:100%;padding:10px 16px;background:none;border:none;text-align:left;font-family:Lexend,sans-serif,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Noto Sans SC,Noto Sans CJK SC;font-size:.9rem;font-weight:700;color:var(--text-primary);cursor:pointer;transition:background .1s ease}.import-menu-item:first-child{border-radius:10px 10px 0 0}.import-menu-item:last-child{border-radius:0 0 10px 10px}.import-menu-item:hover{background:var(--bg-tertiary)}.import-menu-item:active{background:color-mix(in srgb,var(--color-primary) 15%,transparent)}.ai-prompt-modal-card{max-width:600px;max-height:calc(100vh - 48px);max-height:calc(100dvh - 48px);min-height:0;display:flex;flex-direction:column;overflow:hidden}.ai-prompt-modal-card h3{flex-shrink:0;margin-bottom:16px}.ai-prompt-modal-card .modal-form{flex:1 1 auto;min-height:0;overflow-y:auto;margin-bottom:16px;padding-right:2px;overscroll-behavior:contain}.ai-prompt-modal-card .modal-actions{flex-shrink:0}.json-paste-modal-card{display:flex;max-width:620px;max-height:calc(100vh - 48px);max-height:calc(100dvh - 48px);flex-direction:column;overflow:hidden}.json-paste-modal-card h3,.json-paste-modal-card .modal-actions{flex-shrink:0}.json-paste-modal-card .modal-form{min-height:0;overflow-y:auto;overscroll-behavior:contain}.json-paste-guide,.json-paste-hint{margin:0;color:var(--text-muted);font-size:.84rem;line-height:1.45}.json-paste-hint{margin-top:-5px;font-size:.76rem}.json-paste-hint code{padding:1px 4px;border-radius:4px;background:color-mix(in srgb,var(--border-color) 55%,transparent);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.json-paste-textarea{min-height:250px;resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.82rem;line-height:1.45}.json-paste-modal-card .quiz-editor-feedback{min-height:1.25em;margin:0}.import-feedback{padding:12px 16px;border-radius:16px;font-size:.9rem;font-weight:700;border:2px solid var(--border-color);background:var(--bg-secondary);animation:slideIn .2s ease}.import-feedback.success{background:#e8f5e9;border-color:#4caf50;color:#2e7d32}.import-feedback.error{background:#ffebee;border-color:#ef5350;color:#c62828}.cards-list-container{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.card-row-item{display:flex;align-items:center;gap:16px;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:20px;padding:16px 20px;box-shadow:0 4px 0 var(--border-color);transition:transform .15s ease,box-shadow .15s ease}.card-row-item:hover{transform:translateY(-2px);box-shadow:0 6px 0 var(--border-color)}.card-item-num{font-size:1.1rem;font-weight:800;color:var(--text-muted);width:32px;flex-shrink:0;text-align:center}.card-item-col{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.card-col-label{font-size:.72rem;font-weight:800;color:var(--color-primary);opacity:.85;letter-spacing:.08em}.card-col-text{font-size:1rem;font-weight:700;color:var(--text-primary);white-space:pre-wrap;word-break:break-word;outline:none;border-radius:8px;transition:all .15s ease;border:2px solid transparent}.card-col-text.editing{background:var(--bg-primary);padding:6px 10px;border-color:var(--color-primary)}.phonetic-input-wrap{position:relative;display:flex;align-items:center;min-width:0}.phonetic-input-wrap .card-input{width:100%}.card-input.has-phonetic-fill{padding-right:44px}.phonetic-fill-btn{position:absolute;right:6px;top:50%;width:32px;height:32px;padding:0;transform:translateY(-50%);font-size:.95rem;line-height:1;border:1px solid var(--border-color);border-radius:50%;background:var(--bg-secondary);cursor:pointer}.phonetic-fill-btn:hover:not(:disabled){border-color:var(--color-primary)}.phonetic-fill-btn:disabled{opacity:.5;cursor:wait}.card-col-phonetic{color:var(--color-primary);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78rem;font-weight:750}.card-item-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.card-action-btn{width:34px;height:34px;border-radius:12px;border:2px solid var(--border-color);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;background:var(--bg-secondary);color:var(--text-muted);box-shadow:0 3px 0 var(--border-color);transition:all .1s ease;margin-left:6px}.card-action-btn:hover{background:var(--bg-tertiary)}.card-action-btn.edit-btn:hover{color:var(--color-primary);border-color:var(--color-primary);box-shadow:0 3px 0 var(--color-primary)}.card-action-btn.delete-btn:hover{color:#ff4b4b;border-color:#ff4b4b;box-shadow:0 3px #ff4b4b}.card-action-btn:active{transform:translateY(2px);box-shadow:0 1px 0 var(--border-color)}.cards-empty{padding:48px 32px;text-align:center;color:var(--text-muted);font-size:1rem;font-weight:500;background:var(--bg-secondary)}.add-card-form{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:20px;padding:24px;box-shadow:0 4px 0 var(--border-color)}.add-card-form h4{margin:0 0 16px;font-size:1rem;font-weight:800;color:var(--text-secondary)}.add-card-inputs{display:flex;gap:12px;align-items:center}.input-with-icon{position:relative;flex:1;display:flex;align-items:center}.input-icon{position:absolute;left:16px;font-size:.95rem;font-weight:800;color:var(--text-muted);pointer-events:none}.input-with-icon .card-input{padding-left:44px;width:100%}.card-input{padding:12px 16px;border-radius:14px;border:2px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-primary);font-family:Lexend,sans-serif,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Noto Sans SC,Noto Sans CJK SC;font-size:.95rem;transition:border-color .2s ease,background-color .2s ease}.card-input::placeholder{color:var(--text-muted);opacity:.8}.card-input:focus{outline:none;border-color:var(--color-primary);background:var(--bg-secondary)}.add-card-btn{padding:12px 24px;border-radius:14px;border:none;background:var(--color-primary);color:#fff;font-family:Lexend,sans-serif,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Noto Sans SC,Noto Sans CJK SC;font-size:.95rem;font-weight:800;cursor:pointer;white-space:nowrap;box-shadow:0 4px color-mix(in srgb,var(--color-primary) 70%,black);transition:transform .1s ease,box-shadow .1s ease}.add-card-btn:hover:not(:disabled){filter:brightness(1.05)}.add-card-btn:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px color-mix(in srgb,var(--color-primary) 70%,black)}.add-card-btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.modal-overlay{position:fixed;inset:0;background:#00000073;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;z-index:200;padding:24px;animation:fadeIn .2s ease}.modal-card{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:28px;padding:32px;width:100%;max-width:460px;box-shadow:0 16px 48px #00000040;animation:scaleIn .25s cubic-bezier(.34,1.56,.64,1)}.new-deck-modal-card{max-height:calc(100vh - 48px);overflow-y:auto}.new-deck-modal-card:has(.modal-preview-step:not(.hidden)){max-width:680px}.modal-card h3{margin:0 0 24px;font-size:1.35rem;font-weight:800;letter-spacing:-.5px}.modal-form{display:flex;flex-direction:column;gap:14px;margin-bottom:28px}.modal-form label{font-size:.8rem;font-weight:800;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:-6px}.modal-toggle-label{display:flex;align-items:center;gap:12px;cursor:pointer;font-size:.95rem;color:var(--text-secondary);text-transform:none;letter-spacing:0;font-weight:700;margin-top:6px}.modal-input{padding:12px 16px;border-radius:14px;border:2px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-primary);font-family:Lexend,sans-serif,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Noto Sans SC,Noto Sans CJK SC;font-size:1rem;transition:border-color .2s ease}.modal-input:focus{outline:none;border-color:var(--color-primary)}.modal-input::placeholder{color:var(--text-muted);opacity:.8}.ai-prompt-description{margin:0 0 4px;color:var(--text-muted);font-size:.86rem;line-height:1.4}.quiz-ai-topic{min-height:106px;resize:vertical}.quiz-ai-prompt{min-height:228px;resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78rem;line-height:1.45;white-space:pre-wrap}.quiz-ai-hint{margin:-6px 0 2px;color:var(--text-muted);font-size:.76rem;line-height:1.35}.quiz-ai-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:2px}.quiz-ai-actions .secondary-btn{padding:9px 14px;font-size:.86rem;box-shadow:0 3px 0 var(--border-color)}.quiz-ai-copy-feedback{min-height:1.2em;color:#16803a;font-size:.78rem;line-height:1.35}.quiz-ai-copy-feedback.error{color:#dc2626}.quiz-ai-csv-guide{margin-top:11px;padding-top:11px;border-top:1px solid color-mix(in srgb,var(--border-color) 80%,transparent);color:var(--text-muted);font-size:.78rem;line-height:1.45}.quiz-ai-csv-guide strong{color:var(--text-primary)}.quiz-ai-csv-guide ol{margin:6px 0 7px;padding-left:20px}.quiz-ai-csv-guide p{margin:0}.quiz-ai-csv-guide code{padding:1px 4px;border-radius:4px;background:color-mix(in srgb,var(--border-color) 55%,transparent);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.9em;overflow-wrap:anywhere}.required{color:#ff4b4b}.modal-actions{display:flex;gap:12px;justify-content:flex-end}.modal-preview-actions{flex-wrap:wrap;gap:8px}.modal-preview-actions>button{flex:0 0 auto;min-height:42px;padding:9px 14px;border-radius:12px;font-size:.9rem;line-height:1.15;white-space:nowrap}.new-deck-mode-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.new-deck-mode-tab{padding:10px 12px;border:2px solid var(--border-color);border-radius:12px;color:var(--text-secondary);background:var(--bg-tertiary);font:800 .88rem Lexend,sans-serif;cursor:pointer}.new-deck-mode-tab.active{border-color:var(--color-primary);color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 11%,var(--bg-tertiary))}.new-deck-mode-tab:focus-visible{outline:3px solid color-mix(in srgb,var(--color-primary) 45%,transparent);outline-offset:2px}.modal-ai-fields{display:flex;flex-direction:column;gap:14px}.modal-ai-topic{min-height:92px;resize:vertical}.modal-ai-count-row{display:flex;align-items:center;gap:14px}.modal-ai-count-row label{flex:1;margin:0}.modal-ai-count-row input{width:100px}.modal-ai-hint{margin:-6px 0 0;color:var(--text-muted);font-size:.8rem;line-height:1.4}.modal-ai-feedback{min-height:1.3em;margin:-4px 0 0;color:#dc2626;font-size:.86rem;line-height:1.35}.modal-ai-feedback.success{color:#16803a}.modal-preview-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.modal-preview-heading .modal-step-copy{margin:0 0 3px}.modal-preview-heading h4{margin:0;color:var(--text-primary);font-size:1.04rem}.modal-ai-remaining{flex:0 0 auto;padding:5px 8px;border-radius:999px;color:var(--text-muted);background:var(--bg-tertiary);font-size:.74rem;font-weight:800}.modal-ai-draft-list{display:grid;gap:12px;max-height:min(48vh,540px);overflow-y:auto;padding-right:3px}.ai-draft-card{position:relative;display:grid;gap:9px;padding:15px 48px 15px 15px;border:2px solid var(--border-color);border-radius:15px;background:var(--bg-tertiary)}.ai-draft-card label{margin:0;font-size:.72rem}.ai-draft-card textarea{min-height:58px;resize:vertical}.ai-draft-number{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;color:#fff;background:var(--color-primary);font-size:.75rem;font-weight:800}.ai-draft-delete{position:absolute;top:13px;right:12px;display:grid;place-items:center;width:29px;height:29px;padding:0;border:0;border-radius:9px;color:#dc2626;background:#fee2e2;font-size:1rem;cursor:pointer}.ai-draft-options{display:grid;gap:7px}.ai-draft-option{display:flex;align-items:center;gap:9px}.ai-draft-option input[type=radio]{width:17px;height:17px;margin:0;accent-color:#58cc02;cursor:pointer}.ai-draft-option .modal-input{flex:1;min-width:0;padding:9px 11px;font-size:.9rem}:root[data-theme=dark] .ai-draft-delete{color:#fecaca;background:#4a2024;border:1px solid #7f3038}:root[data-theme=dark] .modal-ai-feedback{color:#fca5a5}:root[data-theme=dark] .modal-ai-feedback.success{color:#86efac}.primary-btn{display:inline-flex;align-items:center;gap:10px;padding:12px 24px;border-radius:16px;border:none;background:var(--color-primary);color:#fff;font-family:Lexend,sans-serif,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Noto Sans SC,Noto Sans CJK SC;font-size:1rem;font-weight:800;cursor:pointer;text-decoration:none;box-shadow:0 4px color-mix(in srgb,var(--color-primary) 70%,black);transition:transform .1s ease,box-shadow .1s ease}.primary-btn:hover:not(:disabled){filter:brightness(1.05)}.primary-btn:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px color-mix(in srgb,var(--color-primary) 70%,black)}.primary-btn:disabled{opacity:.6;cursor:not-allowed;box-shadow:none;transform:none}.secondary-btn{padding:12px 24px;border-radius:16px;border:2px solid var(--border-color);background:var(--bg-secondary);color:var(--text-secondary);font-family:Lexend,sans-serif,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Noto Sans SC,Noto Sans CJK SC;font-size:1rem;font-weight:800;cursor:pointer;box-shadow:0 4px 0 var(--border-color);transition:transform .1s ease,box-shadow .1s ease,background .15s ease}.secondary-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.secondary-btn:active{transform:translateY(3px);box-shadow:0 1px 0 var(--border-color)}.hidden{display:none!important}.sidebar-only{display:block}.mobile-only{display:none}@media(max-width:992px){.manage-sidebar{width:260px}}@media(max-width:768px){.sidebar-only{display:none}.mobile-only{display:block}.manage-app{flex-direction:column;height:auto;min-height:calc(100vh - 70px);overflow:visible!important}.manage-sidebar{width:100%;border-right:none;border-bottom:2px solid var(--border-color);max-height:none;overflow:visible}.manage-main{padding:20px 16px;overflow:visible}.deck-meta-top{flex-direction:column;align-items:center;text-align:center;gap:12px}.deck-meta-details{width:100%;align-items:center}.deck-name-row{justify-content:center}.deck-name-input,.deck-desc-input{text-align:center}.deck-meta-actions-row{flex-direction:column;gap:14px;align-items:stretch}.deck-meta-btns{justify-content:center;width:100%}.save-deck-btn{flex:1;text-align:center}.deck-stats-bar{flex-direction:column;gap:12px;align-items:center;text-align:center}.deck-actions-right{width:100%;justify-content:center}.import-btn{flex:1;justify-content:center}.add-card-inputs{flex-direction:column;align-items:stretch;width:100%;gap:10px}.input-with-icon{width:100%}.add-card-btn{width:100%;justify-content:center}}body:after{content:"";position:fixed;bottom:0;left:0;right:0;height:120px;background-image:radial-gradient(ellipse at 30% 120%,#78c800 50%,transparent 55%),radial-gradient(ellipse at 70% 120%,#58a700 55%,transparent 60%);background-size:100% 120px;z-index:-1;pointer-events:none;opacity:.45}:root[data-theme=dark] body:after{opacity:.15}.deck-type-badge{display:inline-flex;margin-top:7px;font-size:.78rem;font-weight:700;color:var(--text-muted, #64748b)}.quiz-deck .add-card-form{display:none}.quiz-deck .cards-list-wrapper{display:block}.quiz-editor{margin-top:24px;padding:24px;border:1px solid var(--border-color, #dbe4ef);border-radius:16px;background:var(--bg-secondary);color:var(--text-primary)}.quiz-editor.hidden{display:none}.quiz-editor-heading h4{margin:0;font-size:1.08rem;color:var(--text-primary)}.quiz-editor-heading p,.modal-step-copy{margin:5px 0 18px;color:var(--text-muted, #64748b)}.quiz-editor>label{display:block;margin:14px 0 7px;font-weight:700;font-size:.88rem}.quiz-textarea{width:100%;min-height:82px;box-sizing:border-box;resize:vertical;padding:11px 12px;border:1px solid var(--border-color, #cbd5e1);border-radius:10px;font:inherit;color:inherit;background:transparent}.quiz-textarea::placeholder{color:var(--text-muted);opacity:.85}.quiz-textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary) 20%,transparent)}.quiz-explanation-input{min-height:62px}.quiz-image-field{margin-top:14px}.quiz-image-field>label{display:block;margin:0 0 7px;font-weight:700;font-size:.88rem}.quiz-image-inputs{display:flex;align-items:center;gap:9px}.quiz-image-url-input{min-width:0;flex:1}.quiz-upload-image-btn{flex:0 0 auto;padding:10px 13px;font-size:.84rem;white-space:nowrap}.quiz-upload-image-btn:disabled{cursor:progress;opacity:.65;box-shadow:none}.quiz-image-hint{margin:7px 0 0;color:var(--text-muted);font-size:.76rem;line-height:1.35}.quiz-image-preview{position:relative;width:min(100%,360px);margin-top:10px;padding:6px;border:1px solid var(--border-color);border-radius:12px;background:var(--bg-tertiary)}.quiz-image-preview img{display:block;width:100%;max-height:190px;border-radius:8px;object-fit:contain;background:var(--bg-secondary)}.quiz-remove-image-btn{position:absolute;top:10px;right:10px;display:grid;place-items:center;width:29px;height:29px;border:1px solid #dc2626;border-radius:50%;background:#fff;color:#dc2626;font:inherit;font-size:1.25rem;font-weight:800;cursor:pointer}.quiz-remove-image-btn:hover{background:#fee2e2}.quiz-options-heading{display:flex;justify-content:space-between;gap:12px;margin:18px 0 8px;font-size:.88rem}.quiz-options-heading span{color:var(--text-muted, #64748b)}.quiz-options-inputs{display:grid;gap:8px}.quiz-option-input-row{display:flex;align-items:center;gap:10px}.quiz-option-correct{width:18px;height:18px;accent-color:#58cc02;flex:0 0 auto;cursor:pointer}.quiz-option-text{flex:1}.quiz-option-text::placeholder{color:var(--text-muted);opacity:.85}.quiz-remove-option{width:32px;height:32px;border:0;border-radius:8px;color:#dc2626;background:#fee2e2;font-size:1.25rem;cursor:pointer}.quiz-remove-option:focus-visible,.quiz-option-correct:focus-visible{outline:3px solid color-mix(in srgb,var(--color-primary) 50%,transparent);outline-offset:2px}.quiz-editor-actions{display:flex;justify-content:space-between;gap:10px;margin-top:16px}.quiz-editor-feedback{min-height:1.2em;margin:10px 0 0;color:#dc2626;font-size:.88rem}.quiz-question-row{position:relative;padding:17px 54px 15px 18px;border:1px solid var(--border-color, #dbe4ef);border-radius:12px;margin-bottom:10px;background:var(--bg-secondary);color:var(--text-primary)}.quiz-question-title{display:flex;align-items:flex-start;gap:10px;line-height:1.45}.quiz-question-thumbnail{display:block;width:min(100%,210px);max-height:120px;margin:11px 0 4px 35px;border:1px solid var(--border-color);border-radius:9px;object-fit:contain;background:var(--bg-tertiary)}.quiz-question-number{display:grid;place-items:center;flex:0 0 25px;height:25px;border-radius:50%;background:#58cc02;color:#fff;font-weight:800;font-size:.78rem}.quiz-question-options{margin:12px 0 8px 35px;padding-left:18px}.quiz-question-options li{padding:2px 0}.quiz-question-options li.correct{color:#16803a;font-weight:700}.quiz-question-options li.correct:after{content:" ✓"}.quiz-question-explanation{margin:10px 0 0 35px;color:var(--text-muted, #64748b);font-size:.9rem;white-space:pre-wrap}.quiz-question-actions{position:absolute;top:12px;right:12px;display:flex;gap:5px}.deck-type-choices{display:grid;gap:10px}.deck-type-choice{display:grid;grid-template-columns:38px 1fr;grid-template-rows:auto auto;column-gap:10px;text-align:left;padding:14px;border:2px solid var(--border-color, #dbe4ef);border-radius:12px;color:inherit;background:transparent;cursor:pointer}.deck-type-choice:hover,.deck-type-choice:focus-visible{border-color:#58cc02;outline:none}.deck-type-choice>span{grid-row:1 / 3;font-size:1.7rem}.deck-type-choice small{color:var(--text-muted, #64748b);line-height:1.35}:root[data-theme=dark] .quiz-editor-heading p,:root[data-theme=dark] .quiz-options-heading span,:root[data-theme=dark] .quiz-question-explanation{color:var(--text-secondary)}:root[data-theme=dark] .quiz-textarea{background:var(--bg-tertiary);color:var(--text-primary);border-color:color-mix(in srgb,var(--border-color) 90%,var(--text-secondary))}:root[data-theme=dark] .quiz-textarea::placeholder,:root[data-theme=dark] .quiz-option-text::placeholder{color:var(--text-secondary);opacity:.9}:root[data-theme=dark] .quiz-textarea:focus{background:var(--bg-secondary)}:root[data-theme=dark] .quiz-option-text{color:var(--text-primary)}:root[data-theme=dark] .quiz-option-correct{color-scheme:dark}:root[data-theme=dark] .quiz-remove-option{color:#fecaca;background:#4a2024;border:1px solid #7f3038}:root[data-theme=dark] .quiz-remove-image-btn{color:#fecaca;border-color:#7f3038;background:#4a2024}:root[data-theme=dark] .quiz-remove-image-btn:hover{background:#65282f}:root[data-theme=dark] .quiz-editor-feedback{color:#fca5a5}:root[data-theme=dark] .quiz-question-options li.correct{color:#86efac}@media(max-width:560px){.quiz-editor{padding:17px}.quiz-editor-actions{flex-direction:column}.quiz-question-row{padding-left:13px}.quiz-image-inputs{align-items:stretch;flex-direction:column}.quiz-upload-image-btn{width:100%}.quiz-question-thumbnail{margin-left:0}}@media(max-width:560px){.modal-card{padding:22px;border-radius:22px}.new-deck-modal-card:has(.modal-preview-step:not(.hidden)){max-width:100%}.quiz-ai-prompt{min-height:160px}.quiz-ai-actions{align-items:flex-start;flex-direction:column}.ai-prompt-modal-card{padding:18px 18px 16px}.modal-preview-heading{align-items:stretch;flex-direction:column;gap:7px}.modal-ai-remaining{align-self:flex-start}.modal-ai-draft-list{max-height:42vh}.modal-actions{flex-wrap:wrap}.modal-actions .primary-btn{margin-left:auto}.modal-preview-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.modal-preview-actions>button{width:100%;justify-content:center}.modal-preview-actions .primary-btn{margin-left:0}}@media(max-width:480px){.manage-header{padding:0 12px!important}.manage-logo .logo-text{display:none!important}.user-chip{padding:4px 8px!important;gap:6px!important}.user-chip .user-name{display:none!important}.manage-nav{gap:8px!important}}.card-item-thumb{width:48px;height:48px;flex-shrink:0;border:2px solid var(--border-color);border-radius:12px;object-fit:cover;background:var(--bg-tertiary)}.add-card-form .card-image-field{margin-top:16px}.card-image-field .quiz-image-preview{width:min(100%,220px)}.card-image-field .quiz-image-preview img{aspect-ratio:1;max-height:208px;object-fit:cover}.card-image-ai-btn{border-color:color-mix(in srgb,var(--color-primary) 55%,var(--border-color));color:var(--color-primary)}.card-image-feedback.is-ok{color:#16803a}:root[data-theme=dark] .card-image-feedback.is-ok{color:#86efac}.card-row-item.editing{flex-wrap:wrap}.card-row-item.editing:hover{transform:none}.card-row-item.editing .card-image-field{flex-basis:100%;margin:4px 0 0 48px}@media(max-width:560px){.card-row-item.editing .card-image-field{margin-left:0}}
