.plan-page,.questions-page,.wrong-questions-page{background:var(--color-white,#fff);border-radius:var(--radius-12,12px);box-sizing:border-box;display:flex;flex-direction:column;height:calc(100vh - var(--app-header-height, 96px));overflow:hidden;padding:8px 16px 12px}.plan-layout,.questions-layout{display:grid;flex:1;gap:15px;grid-template-columns:2fr 8fr;height:100%;min-height:0;position:relative}.plan-content{overflow:hidden}.questions-filters{flex-shrink:0}.favoritebooks-page .filter-toolbar-controls,.wrong-questions-page .filter-toolbar-controls{flex-direction:row}.questions-list{flex:1;min-height:0;overflow-y:auto;padding-right:4px}.list-header{align-items:center;background:linear-gradient(135deg,var(--color-primary-500) 0,var(--color-primary-600) 100%);border-radius:var(--radius-12,12px);box-shadow:0 4px 12px rgba(102,126,234,.3);color:var(--color-white,#fff);display:grid;font-size:var(--text-14,14px);font-weight:600;gap:var(--space-16,16px);margin-bottom:8px;padding:var(--space-16,16px) var(--space-20,20px);position:sticky;top:0;z-index:10}.list-header,.question-item{grid-template-columns:50px minmax(0,1fr) 200px 160px}.question-item--disabled{opacity:.6}.question-checkbox{align-items:center;display:flex;justify-content:center}.question-checkbox input{cursor:pointer;height:16px;width:16px}.question-content{min-width:0;padding:8px var(--space-12,12px)}.question-header{align-items:center!important;display:flex!important;flex-wrap:wrap!important;gap:15px!important;justify-content:flex-start!important;margin-bottom:var(--space-12,12px);row-gap:var(--space-12,12px)!important}.question-tags{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-12,12px);row-gap:8px}.question-tags .tag-source{background:linear-gradient(135deg,var(--color-blue-50,#eff6ff) 0,var(--color-blue-100,#dbeafe) 100%);border-color:var(--color-blue-200,#bfdbfe);color:var(--color-blue-700,#1d4ed8)}.question-stats{background:linear-gradient(135deg,var(--color-gray-1300,#f8fafc) 0,var(--color-gray-1000,#f1f5f9) 100%);border:1px solid var(--color-gray-1100,#e2e8f0);border-radius:var(--radius-12,12px);min-width:0;padding:10px var(--space-12,12px)}.question-stats,.stat-item{align-items:flex-start;display:flex;flex-direction:column;gap:6px}.stat-value{color:var(--color-gray-700,#1e293b);font-size:var(--text-20,20px);font-weight:700;line-height:1.2}.card-icon-btn.secondary{background:var(--color-slate-100,#f1f5f9);border-color:var(--color-gray-200,#e5e7eb);color:var(--color-gray-600,#334155)}.card-icon-btn.secondary:hover{background:var(--color-slate-200,#e2e8f0)}@media (max-width:768px){.plan-layout,.questions-layout{display:flex;flex-direction:column;grid-template-columns:1fr!important}.plan-content{margin-top:12px}.list-header,.question-item{grid-template-columns:40px minmax(0,1fr) auto}.question-stats{display:none}}.wrong-questions-page{height:100%;padding:0}.wrong-questions-page .plan-layout{display:grid;gap:16px;grid-template-columns:280px 1fr;height:100%;min-height:calc(100vh - var(--app-header-height, 96px) - 24px)}.wrong-questions-page .plan-content{display:flex;flex-direction:column;gap:16px;overflow:hidden}.wrong-questions-page .questions-filters{flex-shrink:0}.wrong-questions-page .filter-toolbar-controls{flex-direction:row}.wrong-questions-page .questions-list{flex:1;min-height:0;overflow-y:auto}.wrong-book-sidebar{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow-y:auto;padding:16px}.wrong-book-sidebar__header{color:#1e293b;font-size:16px;font-weight:600;margin-bottom:12px}.wrong-book-sidebar__tree{display:flex;flex-direction:column;gap:4px}.wrong-book-sidebar__grade{border-radius:8px;overflow:hidden}.wrong-book-sidebar__grade-header{align-items:center;cursor:pointer;display:flex;padding:8px 12px;transition:background-color .2s ease}.wrong-book-sidebar__grade-header:hover{background-color:#f1f5f9}.wrong-book-sidebar__grade-header--expanded{background-color:#f8fafc}.wrong-book-sidebar__toggle{margin-right:6px;transition:transform .2s ease}.wrong-book-sidebar__toggle--expanded{transform:rotate(90deg)}.wrong-book-sidebar__subjects{display:flex;flex-direction:column;gap:2px;padding-left:24px}.wrong-book-sidebar__subject{align-items:center;border-radius:6px;cursor:pointer;display:flex;font-size:14px;padding:6px 12px;transition:all .2s ease}.wrong-book-sidebar__subject:hover{background-color:#f1f5f9}.wrong-book-sidebar__subject--selected{background-color:#eff6ff;color:#2563eb}.wrong-book-sidebar__subject-icon{font-size:16px;margin-right:8px}.wrong-book-filter-bar{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:12px;display:flex;flex-wrap:wrap;gap:12px;padding:12px 16px}.wrong-book-filter-bar__search{flex:1;max-width:400px;min-width:200px}.wrong-book-filter-bar__select{min-width:120px}.wrong-book-filter-bar__actions{align-items:center;display:flex;gap:8px;margin-left:auto}.wrong-question-list{display:flex;flex:1;flex-direction:column;gap:12px;overflow-y:auto;padding-right:4px}.wrong-question-list__header{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;color:#64748b;display:flex;font-weight:500;padding:12px 16px}.wrong-question-list__content{display:flex;flex-direction:column;gap:12px}.wrong-question-item{align-items:flex-start;background:#fff;border:1px solid #e2e8f0;border-radius:12px;display:flex;gap:12px;padding:16px;transition:all .2s ease}.wrong-question-item:hover{border-color:#cbd5e1;box-shadow:0 2px 8px rgba(0,0,0,.05)}.wrong-question-item--disabled{background:#f8fafc;opacity:.6}.wrong-question-item--selected{background-color:#eff6ff;border-color:#3b82f6}.wrong-question-item__checkbox{align-items:center;display:flex;justify-content:center;padding-top:4px}.wrong-question-item__content{display:flex;flex:1;flex-direction:column;gap:12px;min-width:0}.wrong-question-item__header{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.wrong-question-item__source{border-radius:4px;font-size:12px;font-weight:500;padding:2px 8px}.wrong-question-item__source--mine{background-color:#dbeafe;color:#1d4ed8}.wrong-question-item__source--admin{background-color:#fef3c7;color:#92400e}.wrong-question-item__subject,.wrong-question-item__type{background:#f1f5f9;border-radius:4px;color:#64748b;font-size:13px;padding:2px 8px}.wrong-question-item__difficulty{color:#f59e0b;font-size:13px;letter-spacing:1px}.wrong-question-item__grade{background:#f1f5f9;border-radius:4px;color:#64748b;font-size:13px;padding:2px 8px}.wrong-question-item__pinned{background:#fb923c;border-radius:4px;color:#fff;font-size:12px;font-weight:500;padding:2px 8px}.wrong-question-item__text{color:#334155;font-size:14px;line-height:1.6}.wrong-question-item__text--clamped{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.wrong-question-item__meta{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}.wrong-question-item__date{color:#94a3b8;font-size:12px}.wrong-question-item__tags{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.wrong-question-item__tag{background:#f1f5f9;border-radius:4px;color:#64748b;font-size:12px;padding:2px 8px}.wrong-question-item__tag--source{background:#fef3c7;color:#92400e}.wrong-question-item__stats{border-left:1px solid #e2e8f0;border-right:1px solid #e2e8f0;display:flex;flex-direction:column;gap:8px;min-width:80px;padding:0 12px}.wrong-question-item__stat{align-items:center;display:flex;flex-direction:column;gap:2px}.wrong-question-item__stat-label{color:#94a3b8;font-size:11px}.wrong-question-item__stat-value{color:#334155;font-size:14px;font-weight:600}.wrong-question-item__actions{display:flex;flex-direction:column;gap:8px}.wrong-question-item__action-btn{align-items:center;background:transparent;border:none;border-radius:8px;color:#64748b;cursor:pointer;display:flex;height:32px;justify-content:center;transition:all .2s ease;width:32px}.wrong-question-item__action-btn:hover{background:#f1f5f9;color:#334155}.wrong-question-item__action-btn--view:hover{background:#eff6ff;color:#2563eb}.wrong-question-item__action-btn--pin:hover{background:#fef3c7;color:#d97706}.wrong-question-item__action-btn--delete:hover{background:#fef2f2;color:#dc2626}.wrong-question-item__action-btn:disabled{cursor:not-allowed;opacity:.4}.wrong-question-edit-tags{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:12px}.wrong-question-edit-tags__actions{display:flex;gap:8px;margin-top:12px}.wrong-book-btn{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s ease}.wrong-book-btn--primary{background:#2563eb;color:#fff}.wrong-book-btn--primary:hover{background:#1d4ed8}.wrong-book-btn--secondary{background:#f1f5f9;color:#64748b}.wrong-book-btn--secondary:hover{background:#e2e8f0}.wrong-book-btn--sm{font-size:13px;padding:6px 12px}.wrong-book-pagination{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:12px;display:flex;justify-content:space-between;padding:12px 16px}.wrong-book-pagination__info{color:#64748b;font-size:14px}.wrong-book-pagination__controls{align-items:center;display:flex;gap:8px}.wrong-book-empty{align-items:center;color:#64748b;display:flex;flex-direction:column;justify-content:center;padding:64px 24px;text-align:center}.wrong-book-empty__icon{font-size:48px;margin-bottom:16px;opacity:.5}.wrong-book-empty__title{color:#334155;font-size:18px;font-weight:600;margin-bottom:8px}.wrong-book-empty__desc{color:#94a3b8;font-size:14px}.wrong-book-loading{align-items:center;color:#64748b;display:flex;flex-direction:column;gap:16px;justify-content:center;padding:64px 24px}.wrong-book-loading__spinner{animation:wrongBookSpin 1s linear infinite;border:3px solid #e2e8f0;border-radius:50%;border-top-color:#2563eb;height:40px;width:40px}@keyframes wrongBookSpin{to{transform:rotate(1turn)}}@media (max-width:1024px){.wrong-questions-page .plan-layout{grid-template-columns:240px 1fr}}@media (max-width:768px){.wrong-questions-page .plan-layout{grid-template-columns:1fr}.wrong-book-sidebar{display:none}.wrong-book-filter-bar{align-items:stretch;flex-direction:column}.wrong-book-filter-bar__search{max-width:none}.wrong-question-item{flex-direction:column}.wrong-question-item__stats{border-left:none;border-right:none;border-top:1px solid #e2e8f0;flex-direction:row;padding:12px 0 0;width:100%}.wrong-question-item__actions{flex-direction:row;justify-content:flex-end;width:100%}}.confirm-popover{background:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-10);box-shadow:var(--shadow-popover);padding:10px var(--space-12);z-index:var(--z-popover)}.confirm-popover.down:before{border-bottom:var(--space-8) solid var(--color-gray-200);border-left:var(--space-8) solid transparent;border-right:var(--space-8) solid transparent;content:"";left:var(--space-16);position:absolute;top:-8px}.confirm-popover.down:after{border-bottom:7px solid var(--color-white);border-left:7px solid transparent;border-right:7px solid transparent;content:"";left:var(--space-16);position:absolute;top:-7px}.confirm-popover.up:before{border-left:var(--space-8) solid transparent;border-right:var(--space-8) solid transparent;border-top:var(--space-8) solid var(--color-gray-200);bottom:-8px;content:"";left:var(--space-16);position:absolute}.confirm-popover.up:after{border-left:7px solid transparent;border-right:7px solid transparent;border-top:7px solid var(--color-white);bottom:-7px;content:"";left:var(--space-16);position:absolute}.confirm-title{color:var(--color-slate-900);font-size:var(--text-14);font-weight:600}.confirm-sub{color:var(--color-slate-500);font-size:var(--text-12);margin-top:4px}.confirm-actions{display:flex;gap:var(--space-8);justify-content:flex-end;margin-top:10px}.import-page__header{align-items:stretch;display:flex;flex-direction:column;gap:var(--space-8);margin-bottom:var(--space-16)}.import-header-row{align-items:baseline;display:flex;justify-content:space-between;margin-bottom:10px;width:100%}.import-title{color:var(--color-slate-800);font-size:var(--text-24);font-weight:600}.import-file-name{font-size:var(--text-24)}.import-file-name,.import-page__subtitle{color:var(--color-gray-1600);font-weight:500}.import-page__subtitle{font-size:15px;line-height:1.6}.import-summary-bar{align-items:center;background:linear-gradient(135deg,var(--color-white) 0,var(--color-gray-50) 100%);border:1px solid var(--color-gray-200);border-radius:var(--radius-12);box-shadow:var(--shadow-sm);display:flex;gap:var(--space-16);justify-content:space-between;margin-bottom:12px;padding:var(--space-12) var(--space-16);width:100%}.import-summary-bar__left{align-items:center;display:flex;gap:var(--space-12)}.import-summary-bar__left .import-back-btn{align-items:center;color:var(--color-gray-1500);display:inline-flex;font-weight:500;gap:6px;padding-left:0;padding-right:0}.import-back-btn,.import-back-btn:focus,.import-back-btn:hover,.import-back-btn:link,.import-back-btn:visited{text-decoration:none}.import-back-btn-arrow{font-size:15px;line-height:1}.import-summary-divider{background:var(--color-gray-200);height:22px;width:1px}.import-summary-bar__left .btn,.import-summary-bar__left .btn:focus,.import-summary-bar__left .btn:hover{box-shadow:none;height:var(--space-36);padding:0 var(--space-14);transform:none}.import-summary-bar__right{border-left:none;display:flex;flex:1;justify-content:flex-end;padding-left:0}.import-summary-bar__right .questions-stats{gap:var(--space-12);justify-content:flex-end;margin:0}.import-page__actions{background:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-12);box-shadow:var(--shadow-sm);margin-bottom:var(--space-20);padding:var(--space-20)}.import-form{display:grid;gap:var(--space-16);grid-template-columns:1fr 1fr}.import-form .form-row{display:flex;flex-direction:column;gap:var(--space-8)}.form-label{color:var(--color-gray-3400);font-size:var(--text-13)}.form-input,.form-select,.form-textarea{border-radius:var(--radius-10);padding:10px var(--space-12)}.form-actions{grid-column:1/-1;justify-content:flex-start}.import-page__list .list-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.job-list{background:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-12);overflow:hidden}.job-list__row{align-items:center;border-bottom:1px solid var(--color-gray-100);display:grid;gap:var(--space-12);grid-template-columns:.6fr 2fr .8fr 1fr 2fr .7fr 1.4fr 1.6fr;padding:var(--space-12) var(--space-16)}.job-list__row--head{background:linear-gradient(135deg,var(--color-blue-500) 0,var(--color-indigo-500) 100%);color:var(--color-white);font-weight:600}.job-list__row:last-child{border-bottom:none}.job-list__cell{color:var(--color-gray-1600);font-size:var(--text-14)}.job-list__file .file-name{color:var(--color-slate-900);font-weight:600}.job-list__file .file-meta{color:var(--color-slate-500);font-size:var(--text-12)}.progress-bar-container{width:100%}.progress-bar-track{background:var(--color-gray-200);border-radius:var(--radius-full);height:var(--space-8)}.progress-bar-fill{background:linear-gradient(90deg,var(--color-blue-500),var(--color-green-500));height:var(--space-8)}.import-review-page{background:var(--color-white);border-radius:var(--radius-8);max-width:none;width:100%}.import-review-page .question-item,.import-review-page .questions-list .list-header{grid-template-columns:1fr minmax(120px,160px)}.import-review-page .question-item{border-color:var(--color-gray-200);box-shadow:var(--shadow-sm);gap:var(--space-24)}.import-review-page .question-item:hover{box-shadow:var(--shadow-filter-hover)}.import-review-page .question-actions{align-items:center;border-top:none;display:flex;gap:var(--space-8);justify-content:flex-start}.import-review-page .question-content{border-radius:var(--radius-12)}.draft-list,.draft-list__cell,.draft-preview,.form-input,.form-select,.form-textarea,.import-page,.import-review-page,.job-list,.job-list__cell{font-family:SimSun,宋体,serif;font-size:10.5pt;line-height:1.4}.draft-list{background:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-12);overflow:hidden}.draft-list__row{align-items:start;border-bottom:1px solid var(--color-gray-100);display:grid;gap:var(--space-12);grid-template-columns:3fr 1fr 1fr 1fr 1fr 1.6fr;padding:var(--space-12) var(--space-16)}.draft-list__row--head{background:linear-gradient(135deg,var(--color-amber-500) 0,var(--color-orange-500) 100%);color:var(--color-white);font-weight:600}.draft-list__row:last-child{border-bottom:none}.draft-list__cell textarea.form-textarea{min-height:var(--height-textarea-min);width:100%}.draft-list__cell .form-select{width:100%}.draft-preview{background:var(--color-gray-50);border:1px dashed var(--color-gray-200);border-radius:var(--radius-10);color:var(--color-slate-900);margin-top:var(--space-8);padding:10px var(--space-12)}.status-badge.approved{background:var(--color-green-500);color:var(--color-white)}.status-badge.rejected{background:var(--color-red-500);color:var(--color-white)}.status-badge.draft{background:var(--color-slate-500);color:var(--color-white)}.review-table{background:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-12)}.review-table__row{border-bottom:1px solid var(--color-gray-100);gap:var(--space-12);padding:var(--space-12) var(--space-16)}.review-table__row:hover{background:var(--color-gray-1300)}.review-table__row--head{background:linear-gradient(135deg,var(--color-blue-100) 0,var(--color-blue-500) 100%);color:var(--color-white)}.review-table__cell{color:var(--color-gray-1600);font-size:var(--text-14)}.question-fixed,.review-table__cell:last-child{gap:var(--space-8)}.question-fixed{display:flex;flex-direction:column}.question-meta{flex-wrap:wrap;gap:var(--space-8)}.tag{background:var(--color-gray-100);border-radius:var(--radius-12);color:var(--color-gray-1600);font-size:var(--text-12);padding:var(--space-4) var(--space-8)}.tag--subject{background:var(--color-purple-100);color:var(--color-purple-800)}.tag--grade{background:var(--color-blue-200);color:var(--color-blue-900)}.tag--type{background:var(--color-gray-2600);color:var(--color-amber-800)}.tag--status{background:var(--color-gray-1200);color:var(--color-gray-3200)}.tag--status-pending{background:var(--color-gray-1400);color:var(--color-slate-500)}.tag--status-draft{background:var(--color-blue-100);color:var(--color-blue-800)}.tag--status-active{background:var(--color-success-100);color:var(--color-success-800)}.tag--status-archived{background:var(--color-danger-100);color:var(--color-danger-900)}.question-content{background:#fcfdff;border:1px dashed var(--color-gray-200);border-radius:var(--radius-12);color:var(--color-slate-900);padding:var(--space-12) var(--space-14)}.import-review-page .question-content{background:transparent;border:none!important;padding:0}.question-options{display:flex;flex-direction:column;gap:6px}.option-item{align-items:center;display:flex;gap:var(--space-8)}.answer-line,.explain-line{align-items:start;display:flex;gap:var(--space-8)}.answer-label,.explain-label{color:var(--color-gray-3400);width:var(--space-48)}.answer-text,.explain-text{color:var(--color-slate-900)}.import-review-page .question-grade,.import-review-page .question-header,.import-review-page .question-subject,.import-review-page .question-tags .tag,.import-review-page .question-text,.import-review-page .question-type,.import-review-page .status-badge{font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,Noto Sans,Liberation Sans,sans-serif}@media (max-width:960px){.import-header-row{align-items:flex-start;flex-direction:column;gap:var(--space-8)}.import-file-name{font-size:18px;font-weight:500}.import-summary-bar{align-items:flex-start;flex-direction:column;gap:var(--space-12)}.import-summary-bar__right .questions-stats{gap:10px;justify-content:flex-start;width:100%}.import-summary-bar__right{border-left:none;border-top:1px solid var(--color-gray-200);padding-left:0;padding-top:var(--space-12)}}@media (max-width:1024px){.job-list__row{grid-template-columns:.6fr 1.8fr .8fr 1fr 1.8fr .7fr 1.2fr 1.4fr}.draft-list__row{grid-template-columns:3fr 1fr 1fr 1fr 1fr 1.6fr}}@media (max-width:768px){.import-form{grid-template-columns:1fr}.job-list__row{grid-template-columns:.6fr 1.4fr .8fr 1fr 1.6fr .8fr 1.2fr 1.2fr}.draft-list__row,.review-table__row{grid-template-columns:1fr}}@media (max-width:960px){.import-review-page .question-item,.import-review-page .questions-list .list-header{grid-template-columns:1fr}.import-review-page .question-actions{grid-column:1;justify-content:flex-end;margin-top:var(--space-12)}}.modal-backdrop{background:rgba(0,0,0,.45);inset:0;padding:var(--space-20);z-index:var(--z-modal)}.modal-content{background:var(--color-white);border-radius:var(--radius-12);box-shadow:var(--shadow-modal)}.modal-content.modal-content--wide{max-width:var(--width-modal-wide);width:95vw}.modal-header{border-bottom:1px solid #f0f0f0;padding:var(--space-16) var(--space-20)}.modal--preview .modal-close-btn{display:none}.import-review-modal .modal-header{border-bottom:none}.review-modal .preview-section .question-meta{border-top:none;padding-top:0}.modal-body{padding:var(--space-16) var(--space-20)}.modal-footer{background:var(--color-white);border-top:1px solid #f0f0f0;gap:var(--space-12);padding:var(--space-12) var(--space-20);z-index:var(--z-modal-footer)}.section-row{display:grid;gap:var(--space-12);grid-template-columns:1fr 1fr}.section-col{display:flex;flex-direction:column;gap:var(--space-8)}.label-text{color:var(--color-gray-3400);font-size:var(--text-13);font-weight:500}.status-radio-group{align-items:center;display:flex;gap:var(--space-16)}.status-radio-group label{align-items:center;color:var(--color-gray-3400);display:inline-flex;gap:6px}.review-modal{display:flex;flex-direction:column;gap:var(--space-16)}.review-section{background:var(--color-gray-50);border:1px solid var(--color-gray-200);border-radius:var(--radius-12);padding:var(--space-12) var(--space-14)}.review-section--meta{background:var(--color-white)}.meta-row{display:grid;gap:var(--space-16);grid-template-columns:1fr 1fr 1fr}.meta-row--four-col{grid-template-columns:minmax(160px,.8fr) minmax(320px,1.6fr) minmax(160px,.8fr) minmax(220px,1fr)}.meta-col{display:flex;flex-direction:column;gap:6px}.review-modal .meta-row{align-items:center}.review-modal .meta-col .label-text{margin-bottom:6px}.meta-col--center{align-items:center;text-align:center}.option-edit-row{align-items:flex-start;display:flex;gap:var(--space-8)}.option-edit-row .btn-danger{min-width:var(--space-56);padding:6px var(--space-12);white-space:nowrap;writing-mode:horizontal-tb}.option-label{color:var(--color-gray-1600);font-weight:600;width:var(--width-option-label)}.answer-checkbox-group,.answer-radio-group{align-items:center;display:flex;flex-direction:row;flex-wrap:wrap;gap:10px}.answer-checkbox,.answer-radio{align-items:center;color:var(--color-gray-1600);display:inline-flex;flex-direction:row;gap:6px;white-space:nowrap}.answer-checkbox input,.answer-radio input{margin:0}.status-row{align-items:center;display:flex;justify-content:space-between;padding-top:var(--space-8)}.status-row .label-text{margin:0}.status-row--controls,.status-row--labels{padding-top:0}.review-modal .meta-col .status-row{align-items:center;column-gap:var(--space-12);display:grid;grid-template-columns:1fr auto}.review-modal .status-row--labels{padding-top:2px}.review-modal .status-row--controls{padding-top:4px}.review-modal .status-radio-group{gap:var(--space-12)}.review-modal .status-row--controls .status-radio-group,.review-modal .status-row--labels .label-text:first-child{justify-self:center}.review-actions{display:flex;gap:10px;justify-content:flex-end}.difficulty-stars{display:inline-flex;gap:6px}.review-modal .meta-col--center .difficulty-stars{justify-content:center}.review-modal .meta-col--center{align-items:center;text-align:center}.difficulty-star{background:transparent;border:none;color:var(--color-slate-300);cursor:pointer;font-size:var(--text-20);line-height:1;padding:2px}.difficulty-star--active,.difficulty-star:hover{color:var(--color-amber-500)}.modal-title{color:var(--color-slate-900);font-size:var(--text-18)}.modal-close-btn{align-items:center;background:transparent;border-radius:var(--radius-4);color:var(--color-slate-500);display:inline-flex;font-size:var(--text-24);height:var(--height-modal-close);justify-content:center;padding:var(--space-4);width:var(--height-modal-close)}.modal-close-btn:hover{background:var(--color-gray-100);color:var(--color-gray-1600)}.review-modal .question-text{background:var(--color-white);border:1px solid #f0f0f0}.review-modal .options-list{background:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-8);padding:var(--space-12)}.review-modal .option-row{align-items:flex-start;background:#fafafa;border:1px solid var(--color-gray-200);border-radius:var(--radius-10);display:flex;gap:var(--space-12);margin-bottom:10px;padding:10px var(--space-12)}.review-modal .option-row__label{align-items:center;background:rgba(59,130,246,.08);border:1px solid rgba(59,130,246,.25);border-radius:var(--radius-full);color:var(--color-blue-500);display:inline-flex;flex:0 0 var(--width-option-label-circle);font-size:var(--text-13);font-weight:700;height:var(--width-option-label-circle);justify-content:center;margin-top:2px;width:var(--width-option-label-circle)}.review-modal .option-row__content{color:var(--color-gray-700);flex:1;line-height:1.6}.review-modal .option-row__tail{align-items:center;display:inline-flex;font-weight:700;gap:var(--space-8);margin-left:auto}.review-modal .icon-check{color:var(--color-orange-600);font-size:var(--text-16)}.review-modal .status-badge{background:transparent;color:var(--color-slate-900)!important}.review-modal .form-input--compact{flex:0 0 var(--width-form-compact);width:var(--width-form-compact)}.review-modal .question-explanation{background:var(--color-gray-3100);border:1px solid var(--color-gray-200);border-left:var(--space-4) solid var(--color-amber-500);border-radius:var(--radius-12);box-shadow:var(--shadow-explanation);padding:var(--space-12) var(--space-14)}.review-modal .question-explanation h4{color:var(--color-amber-800);margin-bottom:var(--space-8);margin-top:0}.review-modal .question-explanation .explanation-content{line-height:1.8;padding-left:var(--space-12)}@media (max-width:960px){.meta-row,.meta-row--four-col{grid-template-columns:1fr 1fr}}@media (max-width:640px){.meta-row{grid-template-columns:1fr}.option-edit-row{flex-direction:column}}.add-question-dialog__content{display:grid;row-gap:14px}.add-question-dialog__form-group{align-items:center!important;column-gap:8px!important;display:grid!important;grid-template-columns:50px 1fr!important}.add-question-dialog__list-container{border:1px solid var(--color-border-light,#e5e7eb);border-radius:8px;max-height:50vh;overflow:auto;padding:10px}.add-question-dialog__question-item{align-items:start!important;background:var(--color-white,#fff)!important;border:1px solid var(--color-gray-200,#e5e7eb)!important;border-radius:var(--radius-16,16px)!important;box-shadow:var(--shadow-sm,0 4px 12px rgba(0,0,0,.08))!important;display:grid!important;gap:12px!important;grid-template-columns:1fr 56px!important;margin-bottom:var(--space-12,12px)!important;overflow:hidden!important;padding:var(--space-16,16px)!important;position:relative!important}.add-question-dialog__question-item:last-child{margin-bottom:0}.add-question-dialog__question-item:before{background:var(--color-gray-1200,#e5e7eb);content:"";height:100%;left:0;position:absolute;top:0;width:4px}.add-question-dialog__question-item .question-content{min-width:0;padding:0}.add-question-dialog__question-text{margin:8px 0 0;max-height:160px;overflow:auto;padding:0}.add-question-dialog__question-actions{align-items:center;display:flex;flex-direction:row;gap:8px;justify-content:flex-start}.add-question-dialog__checkbox{cursor:pointer;height:18px;margin:0;width:18px}.body-editor{margin-top:4px}.body-editor,.body-editor__content{display:flex;flex:1;flex-direction:column;min-height:0}.body-editor__content--fixed{flex:none;height:364px;max-height:364px;min-height:364px}.body-editor__content--fixed .markdown-editor{height:100%}.body-editor__content--fixed .markdown-editor-content{flex:1;min-height:0;overflow:hidden}.body-editor__content--fixed .tiptap-editor-content{flex:1;min-height:0;overflow-y:auto}.body-editor__editor{display:flex;flex:1;flex-direction:column;min-height:0}.body-editor__error{color:var(--color-error,#f44336);flex-shrink:0;margin-top:6px}.notebooks-page .plan-content{overflow-y:auto}.books-toast{animation:toastSlideInRight .28s ease-out;background-color:#fff;border-radius:8px;box-shadow:0 2px 10px rgba(0,0,0,.15);padding:12px 16px;pointer-events:none;position:fixed;right:12px;top:calc(var(--app-header-height, 96px) + 2px);z-index:3000}.books-toast--success{border-left:6px solid #3b82f6;color:#2563eb}.books-toast--error{border-left:6px solid #ef4444;color:#ef4444}.books-filter-select{background:transparent;border:none;padding:0}.books-filter-select--difficulty,.books-filter-select--type{width:148px}.books-filter-select--sort{width:160px}.books-filter-select--sort-wide{width:190px}.books-filter-search{flex:1;max-width:420px}.books-filter-search--wide{flex:1;max-width:520px}.books-dialog{display:flex;flex-direction:column;max-height:80vh;width:min(1000px,92vw)}.books-dialog--tall{height:85vh;max-height:85vh}.books-dialog__header{flex-shrink:0}.books-dialog__title{font-size:18px;max-width:calc(100% - 48px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.books-dialog__body{flex:1 1 auto;overflow-y:auto}.books-dialog__body--flex{display:flex;flex-direction:column;gap:12px;overflow:hidden;padding-bottom:0}.books-dialog__footer{flex-shrink:0}.books-form-grid{align-items:center;column-gap:12px;display:grid;grid-template-columns:64px 1fr 64px 1fr;min-height:44px}.books-form-grid--simple{align-items:center;column-gap:8px;display:grid;grid-template-columns:50px 1fr}.books-form-row{display:grid;flex-shrink:0;row-gap:12px}.books-page{background:#fff;border-radius:12px;padding:24px}.books-page-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.books-page-header--flex{flex-shrink:0}.books-form-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex:1 1 auto;overflow-y:auto;padding:16px}.books-form-card--full{display:flex;flex-direction:column;max-height:calc(100vh - var(--app-header-height, 96px) - 24px);overflow:hidden}.books-question-text{display:block}.books-question-text--clamped{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.books-list-header-checkbox,.books-question-meta{align-items:center;display:flex;justify-content:center}.books-list-header-stats{flex:0 0 200px;text-align:center}.books-difficulty-stars{display:inline-flex;gap:6px}.books-difficulty-star{font-size:18px}.books-difficulty-star--filled{color:#f59e0b}.books-difficulty-star--empty{color:#cbd5e1}.books-status-badge--pinned{background:#fb923c}.question-text--empty{color:var(--color-gray-400,#999)}.stat-value--small{font-size:12px}.books-sidebar-icon{align-items:center;display:flex;margin-right:6px}.books-sidebar-icon--subject{display:inline-flex;margin-right:6px;vertical-align:middle}.books-sidebar-toggle{margin-right:3px}.books-empty-block{padding:48px 24px;text-align:center}.books-checkbox{cursor:pointer;height:16px;width:16px}.books-question-list{display:flex;flex-direction:column;gap:12px}.books-question-list__item{align-items:flex-start;background:#fff;border:1px solid #e2e8f0;border-radius:8px;display:flex;gap:12px;padding:12px 16px;transition:all .2s ease}.books-question-list__item:hover{border-color:#cbd5e1;box-shadow:0 2px 4px rgba(0,0,0,.05)}.books-question-list__item--selected{background-color:#eff6ff;border-color:#3b82f6}.books-question-list__actions{display:flex;gap:8px;margin-top:8px}.notebook-edit-page{background:#fff;border-radius:12px;display:flex;flex-direction:column;max-height:calc(100vh - var(--app-header-height, 96px) - 24px);overflow:hidden;padding:24px}.notebook-edit-form{display:grid;gap:12px;grid-template-columns:1fr 1fr}.notebook-edit-field{margin-top:12px}.notebook-detail-page{background:#fff;border-radius:12px;padding:24px}.notebook-detail-empty{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:24px}.notebook-detail-content{padding:16px}.notebook-card__meta{color:#64748b;font-size:12px;margin-top:8px}.notebook-card__difficulty{margin-left:6px}.notebook-edit-dialog{display:flex;flex-direction:column;height:85vh;max-height:85vh;width:min(1000px,92vw)}.notebook-edit-dialog__header{flex-shrink:0}.notebook-edit-dialog__title{font-size:18px;max-width:calc(100% - 48px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notebook-edit-dialog__body{display:flex;flex:1;flex-direction:column;gap:12px;overflow:hidden;padding-bottom:0}.notebook-edit-dialog__footer{align-items:center;display:flex;justify-content:space-between}.notebook-edit-dialog__actions{display:flex;gap:12px}.favorites-item__date{font-size:12px}.favorites-item__remove-btn{color:var(--color-success,#10b981)}.favorites-item__missing-content{color:var(--color-text-muted,#999)}.folder-tree__grade-icon{margin-right:3px}.folder-tree__subject-icon{display:inline-flex;margin-right:6px;vertical-align:middle}.folder-tree__folder-node{align-items:center;display:flex}.folder-tree__folder-icon{margin-left:calc(1.6em + 18px)}.folder-tree__rename-input{flex:1 1 auto;margin-left:8px;min-width:0}.folder-tree__folder-actions{align-items:center;display:inline-flex;flex-shrink:0;gap:6px;margin-left:auto}.folder-tree__folder-actions--simple{gap:6px;margin-left:auto;opacity:0;transition:opacity .2s ease}.folder-tree__folder-node:hover .folder-tree__folder-actions--simple{opacity:1}.folder-tree__delete-btn{color:var(--color-gray-400,#9ca3af);transition:color .2s ease}.folder-tree__delete-btn:hover{color:var(--color-error,#f44336)}.folder-tree__add-row{align-items:center;display:flex;gap:6px}.folder-tree__add-input{flex:1;min-width:0}.notebook-detail-dialog{display:flex;flex-direction:column;max-height:min(800px,90vh);overflow:hidden;width:min(1000px,92vw)}.dialog-content.notebook-detail-dialog{overflow-y:hidden}.notebook-detail-dialog__header{flex-shrink:0}.notebook-detail-dialog__title{font-size:18px;max-width:calc(100% - 48px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notebook-detail-dialog__body{flex:1 1 auto;overflow-y:auto}.notebook-detail-dialog__footer{flex-shrink:0}.notebook-file-upload{padding:8px 0}.notebook-file-upload__dropzone{background:#fff;border:2px dashed var(--color-border-light,#e2e8f0);border-radius:8px;cursor:pointer;opacity:1;padding:24px;text-align:center;transition:all .2s}.notebook-file-upload__dropzone--disabled{cursor:not-allowed;opacity:.6}.notebook-file-upload__dropzone--dragging{background:var(--color-primary-light,#eff6ff);border-color:var(--color-primary,#3b82f6)}.notebook-file-upload__dropzone--has-file{background:var(--color-info-light,#f0f9ff);border-color:var(--color-primary,#3b82f6)}.notebook-file-upload__input{display:none}.notebook-file-upload__file-icon{font-size:32px;margin-bottom:8px}.notebook-file-upload__file-name{color:var(--color-primary,#3b82f6);font-weight:500}.notebook-file-upload__file-size{color:var(--color-text-secondary,#64748b);font-size:12px;margin-top:4px}.notebook-file-upload__remove-btn{background:transparent;border:1px solid var(--color-error,#ef4444);border-radius:4px;color:var(--color-error,#ef4444);cursor:pointer;font-size:12px;margin-top:8px;padding:4px 12px}.notebook-file-upload__upload-icon{font-size:32px;margin-bottom:8px}.notebook-file-upload__dropzone-text{color:var(--color-text-secondary,#64748b)}.notebook-file-upload__supported-types{color:var(--color-text-muted,#94a3b8);font-size:12px;margin-top:4px}.notebook-file-upload__error{color:var(--color-error,#ef4444);font-size:12px;margin-top:8px}.notebook-file-upload__prompt{margin-top:16px}.notebook-file-upload__prompt-textarea{border:1px solid var(--color-border,#d1d5db);border-radius:8px;min-height:64px;outline:none;padding:8px 10px;resize:vertical;width:100%}.notebook-file-upload__actions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px}.form-fields{display:grid;flex-shrink:0;row-gap:12px}.form-fields__group{align-items:center;column-gap:12px;display:grid;min-height:44px}.form-fields__group--full{grid-template-columns:64px 160px 64px 1fr}.form-fields__group--half{grid-template-columns:64px 1fr}.form-fields__label{align-items:center;display:flex;justify-self:start}.form-fields__container{align-items:center;display:flex;min-height:44px;position:relative}.form-fields__error{color:var(--color-error,#f44336);left:0;position:absolute;top:calc(100% + 4px)}.form-fields__required{color:var(--color-error,#f44336);margin-right:6px}.form-fields__option-row{align-items:center;display:flex;gap:6px}.form-fields__star-rating{align-items:center;display:inline-flex;gap:6px}.form-fields__star-btn{color:var(--color-star-active,#f59e0b)!important;font-size:18px;line-height:1;padding:0}.form-fields__star-btn--inactive{color:var(--color-star-inactive,#cbd5e1)!important}.form-fields__difficulty-container{align-items:center;display:flex;height:44px}.form-fields__difficulty-half{align-items:center;display:flex;grid-column:2/3;min-height:44px}.form-fields__container--summary{grid-column:2/3}.form-fields__folder-wrapper{display:contents}.form-fields__label--disabled{cursor:not-allowed;opacity:.6}.form-fields__container--disabled{opacity:.6;pointer-events:none}.notebook-form{display:flex;flex:1;flex-direction:column;gap:16px;min-height:0}.plan-layout.notebook-layout-grid{grid-template-columns:var(--notebook-left-width,280px) 1fr}.plan-layout.notebook-layout-grid .plan-resizer.notebook-resizer{background-color:transparent;cursor:col-resize;left:var(--notebook-left-width,280px)}.notebook-tree{position:relative}.notebook-tree-content{height:100%;overflow-y:auto;padding:24px 16px 80px}.notebook-card{margin-bottom:0}.notebook-card-header{align-items:center;display:flex;gap:8px}.notebook-difficulty-stars{margin-left:6px}.notebook-star{color:#cbd5e1}.notebook-star.filled{color:#f59e0b}.notebook-excerpt{max-height:200px}.notebook-date{color:#64748b;font-size:12px;margin-top:8px}.notebook-actions{align-items:center;display:flex;justify-content:space-between}.notebook-back-btn{align-items:center;background-color:#fff;border:1px solid #e2e8f0;border-radius:50%;bottom:24px;box-shadow:0 4px 6px -1px rgba(0,0,0,.1);color:#475569;cursor:pointer;display:flex;height:44px;justify-content:center;left:24px;position:absolute;transition:all .2s;width:44px}.notebook-back-btn:hover{color:#1e293b}.notebook-resizer{background:transparent;bottom:0;cursor:col-resize;position:absolute;top:0;width:8px;z-index:10}.notebook-content{position:relative}.notebook-body-actions{justify-content:space-between}.notebook-excerpt-clamped{max-height:200px;overflow:hidden}.notebook-edit-dialog .dialog-footer{flex-shrink:0}.notebook-tag-manager__tags-container{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px;min-height:32px}.notebook-tag-manager__tag{align-items:center;border-radius:16px;display:inline-flex;font-size:14px;font-weight:500;gap:4px;padding:4px 12px}.notebook-tag-manager__tag-remove{background:none;border:none;color:inherit;cursor:pointer;font-size:16px;line-height:1;padding:0 2px}.notebook-tag-manager__input-wrapper{position:relative}.notebook-tag-manager__input{border:1px solid var(--color-border,#d1d5db);border-radius:6px;font-size:14px;padding:8px 12px;width:100%}.notebook-tag-manager__input--error{border-color:var(--color-error,#ef4444)}.notebook-tag-manager__suggestions{background-color:#fff;border:1px solid var(--color-border-light,#e2e8f0);border-radius:6px;box-shadow:0 4px 6px -1px rgba(0,0,0,.1);left:0;margin-top:4px;max-height:200px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:10}.notebook-tag-manager__suggestion-item{cursor:pointer;font-size:14px;padding:8px 12px}.notebook-tag-manager__suggestion-item--highlighted{background-color:var(--color-bg-hover,#f1f5f9)}.notebook-tag-manager__error{color:var(--color-error,#ef4444);font-size:12px;margin-top:8px}.notebook-tag-manager__hint{color:var(--color-text-secondary,#64748b);font-size:12px;margin-top:8px}.section-header{align-items:center;border-bottom:1px solid var(--color-gray-200);display:flex;justify-content:space-between;margin-bottom:var(--space-20);padding-bottom:var(--space-16)}.section-header h2{color:#000;font-size:var(--text-20);font-weight:600;margin:0}.refresh-btn{background:var(--color-gray-50);border:1px solid var(--color-gray-200);border-radius:var(--radius-8);color:var(--color-slate-500);cursor:pointer;font-size:var(--text-14);padding:var(--space-8) var(--space-16);transition:var(--transition-base)}.refresh-btn:hover{background:var(--color-gray-200);color:var(--color-slate-800)}.activities-list-modern{display:flex;flex-direction:column;gap:var(--space-16)}.activity-item-modern{align-items:flex-start;background:var(--color-gray-50);border:1px solid var(--color-gray-200);border-radius:var(--radius-12);display:flex;gap:var(--space-16);padding:var(--space-16);transition:var(--transition-base)}.activity-item-modern:hover{background:#f1f5f9;border-color:var(--color-slate-300)}.activity-icon-modern{align-items:center;border-radius:var(--radius-10);display:flex;flex-shrink:0;font-size:var(--text-18);height:var(--height-activity-icon);justify-content:center;width:var(--height-activity-icon)}.activity-content-modern{flex:1}.activity-description{color:var(--color-slate-800);font-size:15px;font-weight:500;line-height:1.4;margin-bottom:var(--space-8)}.activity-meta{align-items:center;display:flex;font-size:var(--text-13);gap:var(--space-12)}.activity-user{color:var(--color-slate-500);font-weight:500}.activity-time{color:var(--color-slate-400)}.activity-priority{border-radius:var(--radius-12);color:var(--color-white);font-size:var(--text-11);font-weight:600;letter-spacing:.5px;padding:2px var(--space-8);text-transform:uppercase}.content-card--compact{margin-bottom:12px}.exam-rows-grid{display:grid;gap:16px;grid-template-columns:1fr 1fr}.exam-row{border-bottom:1px solid #f0f0f0;padding:10px 0}.exam-row-content{align-items:center;display:flex;justify-content:space-between}.exam-row-subject{font-weight:600}.exam-row-stats{align-items:center;display:grid;gap:12px;grid-template-columns:repeat(3,auto)}.exam-row-stat{font-size:var(--text-14)}.exam-row-stat--target{color:var(--color-slate-500)}.exam-row-stat--actual{color:var(--color-sky-500)}.exam-totals{align-items:center;display:grid;gap:16px;grid-template-columns:repeat(3,auto);margin-top:12px}.wrong-distribution-card{margin-bottom:12px}.wrong-distribution-item{margin-bottom:16px}.wrong-distribution-value{color:var(--color-slate-500);font-size:var(--text-14)}.wrong-distribution-bar{background-color:var(--color-gray-100);width:100%}.wrong-distribution-fill{background:linear-gradient(90deg,var(--color-red-500),var(--color-rose-500));transition:width .6s ease}@media (max-width:768px){.exam-rows-grid{grid-template-columns:1fr}.exam-row-content{align-items:flex-start;flex-direction:column;gap:8px}.exam-totals{gap:8px;grid-template-columns:1fr}}.admin-overview-modern{background:var(--color-white);min-height:100vh;padding:10px}.metrics-grid-modern{grid-template-columns:repeat(auto-fit,minmax(var(--width-metric-card-min),1fr))}.metrics-grid-modern,.stats-panels{gap:var(--space-24);margin-bottom:var(--space-32)}.stats-panels{display:grid;grid-template-columns:repeat(auto-fit,minmax(var(--width-stats-panel-min),1fr))}.recent-activities-modern{margin-bottom:var(--space-32)}.quick-actions-modern,.recent-activities-modern{backdrop-filter:blur(10px);background:hsla(0,0%,100%,.95);border:1px solid hsla(0,0%,100%,.2);border-radius:var(--radius-12);box-shadow:0 var(--space-8) var(--space-32) rgba(0,0,0,.1);padding:var(--space-24)}.quick-actions-modern h2{border-bottom:1px solid var(--color-gray-200);color:var(--color-slate-800);font-size:var(--text-20);font-weight:600;margin:0 0 var(--space-20) 0;padding-bottom:var(--space-16)}.actions-grid-modern{display:grid;gap:var(--space-24);grid-template-columns:repeat(4,1fr)}.student-dashboard-modern{min-height:calc(100vh - 80px)}.student-dashboard-modern,.student-dashboard-modern .content-card{background:var(--color-white);border-radius:var(--radius-12);padding:var(--space-24)}.student-dashboard-modern .content-card{border:1px solid var(--color-gray-1200);box-shadow:0 var(--space-8) var(--space-24) rgba(15,23,42,.08);margin-bottom:var(--space-24)}.student-dashboard-modern .content-card--recent-exams{margin-bottom:var(--space-12);margin-top:var(--space-24)}.student-dashboard-modern .content-card:last-of-type{margin-bottom:0}.admin-overview-modern .content-card{background:var(--color-white);border:1px solid var(--color-gray-1200);border-radius:var(--radius-12);box-shadow:0 var(--space-8) var(--space-24) rgba(15,23,42,.08);margin-bottom:var(--space-24);padding:var(--space-20) var(--space-24)}.admin-overview-modern .content-card:last-of-type{margin-bottom:0}.admin-overview-modern .content-card .card-header,.student-dashboard-modern .content-card .card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--space-16)}.admin-overview-modern .content-card .card-title,.student-dashboard-modern .content-card .card-title{color:#000;font-size:var(--text-18);font-weight:600}.admin-overview-modern .content-card .btn.btn-secondary,.student-dashboard-modern .content-card .btn.btn-secondary{justify-content:center;min-width:96px}.stats-grid-modern{display:grid;gap:var(--space-16);grid-template-columns:repeat(auto-fill,minmax(var(--width-stat-card-min),1fr));margin-top:var(--space-20);max-width:none;width:100%}.dashboard-two-column-grid{display:grid;gap:24px;grid-template-columns:1fr 1fr;margin-top:24px}@media (max-width:992px){.dashboard-two-column-grid{grid-template-columns:1fr}}.metric-card-modern{backdrop-filter:blur(10px);background:hsla(0,0%,100%,.95);border:1px solid hsla(0,0%,100%,.2);border-radius:var(--radius-12);box-shadow:0 var(--space-8) var(--space-32) rgba(0,0,0,.1);overflow:hidden;padding:var(--space-24);position:relative;transition:var(--transition-slow)}.metric-card-modern:hover{box-shadow:0 var(--space-12) var(--space-40) rgba(0,0,0,.15);transform:translateY(-4px)}.metric-card-modern:before{background:var(--card-color,#667eea);content:"";height:4px;left:0;position:absolute;right:0;top:0}.metric-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--space-16)}.metric-icon-modern{align-items:center;background:rgba(102,126,234,.1);border-radius:var(--radius-12);color:var(--card-color,#667eea);display:flex;font-size:var(--text-24);height:var(--height-metric-icon);justify-content:center;width:var(--height-metric-icon)}.metric-title{color:var(--color-slate-500);font-size:var(--text-14);font-weight:600;letter-spacing:.5px;margin:0;text-transform:uppercase}.metric-value-modern{color:var(--color-slate-800);font-size:var(--width-metric-value);font-weight:700;line-height:1;margin:var(--space-8) 0}.metric-subtitle{color:var(--color-slate-500);font-size:var(--text-14);margin-bottom:var(--space-12)}.metric-trend{align-items:center;display:flex;font-size:var(--text-14);font-weight:600;gap:4px}.metric-trend.positive{color:var(--color-green-500)}.metric-trend.negative{color:var(--color-red-500)}.metric-trend.neutral{color:var(--color-slate-500)}.stats-panel{backdrop-filter:blur(10px);background:hsla(0,0%,100%,.95);border:1px solid hsla(0,0%,100%,.2);border-radius:var(--radius-12);box-shadow:0 var(--space-8) var(--space-32) rgba(0,0,0,.1);padding:var(--space-24)}.panel-header{align-items:center;border-bottom:1px solid var(--color-gray-200);display:flex;justify-content:space-between;margin-bottom:var(--space-20);padding-bottom:var(--space-16)}.panel-header h3{color:var(--color-slate-800);font-size:var(--text-18);font-weight:600;margin:0}.panel-icon{font-size:var(--text-20);opacity:.7}.panel-content{display:flex;flex-direction:column;gap:var(--space-16)}.stat-row{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;padding:var(--space-12) 0}.stat-row:last-child{border-bottom:none}.stat-label{color:var(--color-slate-500);font-size:var(--text-14);font-weight:500}.stat-value{color:var(--color-slate-800);font-size:var(--text-16);font-weight:600}.stat-value.positive{color:var(--color-green-500)}.stat-value.negative{color:var(--color-red-500)}@media (max-width:1200px){.actions-grid-modern{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.student-dashboard-modern{padding:var(--space-16)}.student-dashboard-modern .content-card{padding:var(--space-20)}.stats-grid-modern{gap:var(--space-12);grid-template-columns:repeat(auto-fill,minmax(160px,1fr));max-width:none;width:100%}.stat-card-modern{padding:var(--space-14)}.stat-number-modern{font-size:var(--text-20)}.stat-icon-modern{font-size:var(--text-28)}.actions-grid-modern{grid-template-columns:1fr}}@media (max-width:480px){.stat-card-modern{padding:var(--space-12)}.stat-number-modern{font-size:var(--text-18)}.stat-icon-modern{font-size:var(--text-24)}.student-dashboard-modern .content-card{padding:var(--space-16)}}.stat-card-modern{backdrop-filter:blur(10px);background:hsla(0,0%,100%,.95);border:1px solid hsla(0,0%,100%,.2);border-radius:var(--radius-12);box-shadow:0 var(--space-8) var(--space-24) rgba(0,0,0,.08);overflow:hidden;padding:var(--space-16);position:relative;transition:var(--transition-slow) cubic-bezier(.4,0,.2,1)}.stat-card-modern:before{background:linear-gradient(90deg,#667eea,#764ba2);content:"";height:4px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity var(--transition-slow)}.stat-card-modern:hover:before{opacity:1}.stat-card-modern:hover{box-shadow:0 var(--space-20) var(--space-40) rgba(0,0,0,.15);transform:translateY(-8px)}.stat-card-modern.primary:before{background:linear-gradient(90deg,var(--color-blue-500),#1d4ed8)}.stat-card-modern.success:before{background:linear-gradient(90deg,var(--color-green-500),#059669)}.stat-card-modern.warning:before{background:linear-gradient(90deg,var(--color-amber-500),#d97706)}.stat-card-modern.info:before{background:linear-gradient(90deg,var(--color-cyan-500),var(--color-cyan-600))}.stat-card-modern.purple:before{background:linear-gradient(90deg,var(--color-purple-500),var(--color-indigo-500))}.stat-card-modern.gradient:before{background:linear-gradient(90deg,#ec4899,#be185d)}.stat-icon-modern{align-items:center;border-radius:var(--radius-12);box-shadow:0 var(--space-8) var(--space-20) rgba(15,23,42,.12);display:inline-flex;height:var(--height-metric-icon);justify-content:center;margin-bottom:var(--space-12);width:var(--height-metric-icon)}.stat-content-modern{display:flex;flex-direction:column;gap:var(--space-8)}.student-dashboard-modern .stats-grid-modern .stat-card-modern{backdrop-filter:none;border:1px solid var(--color-gray-1200);box-shadow:none}.student-dashboard-modern .stats-grid-modern .stat-card-modern:hover{box-shadow:none;transform:none}.stat-label-modern{color:var(--color-slate-500);font-size:var(--text-14);font-weight:500;letter-spacing:.5px;text-transform:uppercase}.stat-number-modern{color:var(--color-slate-800);font-family:SF Pro Display,-apple-system,BlinkMacSystemFont,sans-serif;font-size:var(--width-stat-number);font-weight:700;line-height:1}.stat-trend-modern{background:rgba(16,185,129,.1);border-radius:var(--radius-12);color:var(--color-green-500);display:inline-block;font-size:var(--text-12);font-weight:600;padding:4px var(--space-8);width:fit-content}.student-dashboard-modern .record-card .btn-light{background:linear-gradient(135deg,var(--color-gray-1200) 0,var(--color-gray-300) 100%);border:1px solid var(--color-gray-1200);box-shadow:0 2px var(--space-8) rgba(209,213,219,.5);color:var(--color-gray-700)}.student-dashboard-modern .record-card .btn-light:hover{background:linear-gradient(135deg,var(--color-gray-300) 0,var(--color-slate-300) 100%);color:var(--color-slate-800)}.admin-overview-modern .welcome-card-gradient,.welcome-card-gradient{background:linear-gradient(135deg,#0f172a,#1e293b 40%,#4f46e5)!important;border:none;border-radius:16px;box-shadow:0 10px 30px rgba(15,23,42,.45);color:#e5e7eb;margin-bottom:24px;padding:24px}.welcome-card-grid{align-items:center;display:grid;gap:24px;grid-template-columns:3fr 7fr}.welcome-card-subtitle{font-size:16px;opacity:.9}.welcome-card-title{font-size:26px;font-weight:700;margin-bottom:8px;margin-top:8px}.welcome-card-description{font-size:13px;line-height:1.6;opacity:.8}.welcome-card-stats{display:flex;flex-wrap:wrap;gap:16px;margin-top:16px}.welcome-card-stat-label{font-size:12px;margin-bottom:4px;opacity:.7}.welcome-card-stat-value{font-size:20px;font-weight:600}.welcome-card-stat-value--income{color:#facc15}.welcome-card-stat-value--pending{color:#34d399}.actions-grid-modern--admin{display:grid;gap:16px;grid-template-columns:repeat(4,minmax(0,1fr))}.publisher-dashboard .welcome-card-gradient{background:linear-gradient(135deg,#0f172a,#1e293b 40%,#4f46e5)}@media (max-width:1200px){.welcome-card-grid{gap:20px;grid-template-columns:1fr}.actions-grid-modern--admin{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.actions-grid-modern--admin{grid-template-columns:1fr}.welcome-card-title{font-size:22px}}.feature-doc-loading{color:#64748b;font-size:14px}.feature-doc-error{color:#b91c1c;font-size:14px}.metrics-grid-modern{display:grid;gap:24px;grid-template-columns:repeat(6,minmax(0,1fr))}.admin-overview-modern .page-container>div:last-child{display:grid;gap:24px;grid-template-columns:minmax(0,1.3fr) minmax(0,1.7fr);margin-top:24px}.wrong-distribution-item{margin-bottom:12px}.wrong-distribution-header{display:flex;justify-content:space-between;margin-bottom:6px}.wrong-distribution-label{font-weight:500}.wrong-distribution-value{color:#6b7280;font-size:14px}.wrong-distribution-bar{background:#f1f5f9;border-radius:4px;height:8px;overflow:hidden}.wrong-distribution-fill{background:linear-gradient(90deg,#3b82f6,#6366f1);border-radius:4px;height:100%;transition:width .3s ease}.cycle-sessions-list{display:flex;flex-direction:column;gap:12px}.cycle-session-item{background:#f8fafc;gap:12px;padding:12px}.cycle-session-icon,.cycle-session-item{align-items:center;border-radius:8px;display:flex}.cycle-session-icon{height:40px;justify-content:center;width:40px}.cycle-session-icon--practice{background:#dbeafe;color:#2563eb}.cycle-session-icon--learning{background:#dcfce7;color:#16a34a}.cycle-session-content{flex:1}.cycle-session-title{font-weight:500}.cycle-session-meta{color:#6b7280;font-size:12px}.exam-row-stat--diff-positive{color:#16a34a}.exam-row-stat--diff-negative{color:#dc2626}.exam-totals{border-top:2px solid #e5e7eb;display:flex;justify-content:space-around;margin-top:16px;padding-top:16px}.exam-totals .exam-row-stat{text-align:center}.exam-totals-label{color:#6b7280;font-size:12px}.exam-totals-value{font-size:20px;font-weight:600}.exam-totals-value--positive{color:#16a34a}.exam-totals-value--negative{color:#dc2626}.record-card__header--flex{align-items:center;display:flex}.record-card__title--flex{flex:1}.stats-panels--grid{display:grid;gap:24px;grid-template-columns:repeat(3,minmax(0,1fr))}.recent-orders-card-item{border-bottom:1px solid #f1f5f9;display:flex;gap:12px;justify-content:space-between;padding:10px 0}.recent-orders-card-content{min-width:0}.recent-orders-card-title{font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recent-orders-card-meta{color:#6b7280;display:flex;flex-wrap:wrap;font-size:12px;gap:8px;margin-top:4px}.recent-orders-card-price{text-align:right;white-space:nowrap}.recent-orders-card-price-value{color:#0f172a;font-weight:600}.recent-orders-card-income{color:#16a34a}.recent-orders-card-income,.recent-orders-card-settlement{font-size:12px;margin-top:2px}.recent-orders-card-settlement--settled{color:#16a34a}.recent-orders-card-settlement--pending{color:#f59e0b}.recent-orders-card-empty{color:#6b7280;padding:32px;text-align:center}.hot-sets-card-item{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;gap:12px;justify-content:space-between;padding:10px 0}.hot-sets-card-content{min-width:0}.hot-sets-card-title{font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hot-sets-card-meta{color:#6b7280;font-size:12px;margin-top:4px}.hot-sets-card-link{white-space:nowrap}.hot-sets-card-empty{color:#6b7280;padding:32px;text-align:center}.activity-icon-modern--dynamic{background-color:var(--activity-bg);color:var(--activity-color)}.activity-priority--dynamic{background-color:var(--activity-status-color)}.metric-card-header{align-items:flex-start;display:flex;justify-content:space-between}.metric-icon-modern--dynamic{background-color:var(--metric-icon-bg);color:var(--metric-icon-color)}.metric-value-modern--dynamic{color:var(--metric-value-color)}.metric-progress{margin-top:12px}.exam-goals-card-empty{color:#6b7280;padding:24px;text-align:center}.exam-goals-grid{display:grid;gap:16px;grid-template-columns:1fr 1fr}.exam-goals-row{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;gap:8px;padding:8px 0}.exam-goals-row-subject{font-weight:500;width:60px}.exam-goals-row-actual,.exam-goals-row-target{color:#6b7280;width:60px}.exam-goals-row-diff--positive{color:#16a34a}.exam-goals-row-diff--negative{color:#dc2626}.exam-goals-totals{border-top:2px solid #e5e7eb;display:flex;justify-content:space-around;margin-top:16px;padding-top:16px}.exam-goals-totals-item{text-align:center}.exam-goals-totals-label{color:#6b7280;font-size:12px}.exam-goals-totals-value{font-size:20px;font-weight:600}.exam-goals-totals-value--positive{color:#16a34a}.exam-goals-totals-value--negative{color:#dc2626}.progress-bar-container{align-items:center;display:flex;gap:12px}.progress-bar-track{background:#e5e7eb;border-radius:4px;flex:1;height:8px;overflow:hidden}.progress-bar-fill{border-radius:4px;height:100%;transition:width .3s ease}.progress-bar-fill--dynamic{background-color:var(--progress-color);box-shadow:0 0 10px var(--progress-shadow);width:var(--progress-width)}.progress-bar-label{color:#6b7280;font-size:12px;min-width:40px;text-align:right}.stat-card-modern .stat-icon-modern--primary{background-color:#eef2ff;color:#6366f1}.stat-card-modern .stat-icon-modern--success{background-color:#ecfdf3;color:#16a34a}.stat-card-modern .stat-icon-modern--warning{background-color:#fef3c7;color:#d97706}.stat-card-modern .stat-icon-modern--info{background-color:#e0f2fe;color:#0284c7}.stat-card-modern .stat-icon-modern--purple{background-color:#f5f3ff;color:#7c3aed}.stat-card-modern .stat-icon-modern--gradient{background:linear-gradient(135deg,#e0f2fe,#f5f3ff);color:#4f46e5}.stat-card-modern .stat-icon-modern--red-gradient{background:linear-gradient(135deg,#fee2e2,#fef9c3);color:#b91c1c}.stat-card-modern .stat-icon-modern--sky{background-color:#f1f5f9;color:#0ea5e9}.stat-card-modern .stat-icon-modern--success-light{background-color:#ecfdf5;color:#059669}.admin-orders-page .filters{align-items:center;display:flex;gap:var(--space-12,12px);justify-content:space-between;margin-bottom:var(--space-12,12px)}.admin-orders-page .order-detail-expand{background-color:var(--color-gray-50,#f9fafb);border-top:1px solid var(--color-gray-200,#e2e8f0);padding:var(--space-16,16px)}.admin-orders-page .order-stats-card{display:grid;gap:var(--space-16,16px);grid-template-columns:repeat(4,1fr);margin-bottom:var(--space-24,24px)}@media (max-width:1024px){.admin-orders-page .order-stats-card{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.admin-orders-page .order-stats-card{grid-template-columns:1fr}}.billing-page .billing-summary{background:linear-gradient(135deg,var(--color-primary-50,#eff6ff) 0,var(--color-primary-100,#dbeafe) 100%);border-radius:var(--radius-12,12px);margin-bottom:var(--space-24,24px);padding:var(--space-24,24px)}.billing-page .billing-amount{color:var(--color-primary-600,#2563eb);font-size:var(--text-32,32px);font-weight:700}.billing-page .billing-period{color:var(--color-gray-600,#4b5563);font-size:var(--text-14,14px);margin-top:var(--space-4,4px)}.billing-page .billing-item{align-items:center;border-bottom:1px solid var(--color-gray-200,#e2e8f0);display:flex;justify-content:space-between;padding:var(--space-12,12px) 0}.billing-page .billing-item:last-child{border-bottom:none}.data-reports-page .stat-card-modern.primary .stat-icon-modern{background-color:var(--color-success-100);color:var(--color-success-500)}.data-reports-page .stat-card-modern.success .stat-icon-modern{background-color:var(--color-primary-100);color:var(--color-primary-500)}.data-reports-page .stat-card-modern.info .stat-icon-modern{background-color:var(--color-purple-100);color:var(--color-purple-500)}.data-reports-page .stat-card-modern.purple .stat-icon-modern,.data-reports-page .stat-card-modern:not(.primary):not(.success):not(.info):not(.purple) .stat-icon-modern{background-color:var(--color-success-100);color:var(--color-success-600)}.data-reports-page .filter-section{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-12);margin-bottom:var(--space-12)}.data-reports-page .filter-label{color:var(--color-gray-500);font-size:var(--text-14)}.data-reports-page .date-range{align-items:center;display:flex;gap:var(--space-8)}.data-reports-page .date-sep{color:var(--color-gray-500)}.data-reports-page .table-container{margin-top:var(--space-16)}.data-reports-page .empty-cell{padding:var(--space-16);text-align:center}.publisher-orders-page .publisher-stats{display:grid;gap:var(--space-16,16px);grid-template-columns:repeat(3,1fr);margin-bottom:var(--space-24,24px)}.publisher-orders-page .stat-card{background:var(--color-white,#fff);border:1px solid var(--color-gray-200,#e2e8f0);border-radius:var(--radius-12,12px);padding:var(--space-20,20px);text-align:center}.publisher-orders-page .stat-value{color:var(--color-gray-900,#111827);font-size:var(--text-24,24px);font-weight:700}.publisher-orders-page .stat-label{color:var(--color-gray-500,#64748b);font-size:var(--text-14,14px);margin-top:var(--space-4,4px)}@media (max-width:768px){.publisher-orders-page .publisher-stats{grid-template-columns:1fr}}.publisher-tree .icon-wrapper{align-items:center;display:inline-flex;margin-right:6px}.publisher-tree .count-badge{color:var(--color-gray-500);font-size:var(--text-12);margin-left:auto}.admin-settlements-summary .admin-settlements-summary-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:var(--space-12)}.admin-settlements-summary .header-title{color:var(--color-gray-900);font-weight:600}.admin-settlements-summary .header-info{align-items:center;color:var(--color-gray-500);display:flex;font-size:var(--text-12);gap:var(--space-12)}.admin-settlements-summary .time-info{align-items:center;display:flex;flex-wrap:nowrap;gap:var(--space-12)}.admin-settlements-summary .date-picker-wrapper{align-items:center;display:flex;gap:var(--space-4);white-space:nowrap}.admin-settlements-summary .date-input{max-width:220px}.settlement-table .table-wrapper{margin-top:var(--space-16)}.settlement-table .table-cell-muted{color:var(--color-gray-500);font-size:var(--text-12)}.settlement-table .status-badge{border-radius:4px;font-size:var(--text-12);padding:2px 6px}.settlement-table .status-badge.settled{background:var(--color-success-100);color:var(--color-success-700)}.settlement-table .status-badge.pending{background:var(--color-warning-100);color:var(--color-warning-700)}.settlement-table .empty-cell{padding:var(--space-16);text-align:center}.admin-settlements-page .content-section{margin-top:var(--space-16)}.admin-settlements-page .filter-bar{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--space-12)}.admin-settlements-page .filter-left{align-items:center;display:flex;gap:var(--space-12)}.admin-settlements-page .table-section{margin-top:var(--space-16)}.level1-score-chart{height:100%;min-height:300px}.chart-legend{gap:var(--spacing-6);padding-top:var(--spacing-4)}.chart-legend__series,.chart-legend__tiers{display:flex;flex-wrap:wrap;gap:var(--spacing-4)}.chart-legend__item{font-size:var(--font-size-sm);gap:var(--spacing-2)}.chart-legend__dot{background:#fff;height:12px;width:12px}.chart-legend__line{width:16px}.chart-legend__label{color:var(--color-gray-600)}.chart-tooltip{background:#fff;border:none;border-radius:var(--radius-md);box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06);padding:var(--spacing-3)}.chart-tooltip__item{font-size:var(--font-size-sm)}.chart-color-target{stroke:#9ca3af}.chart-color-actual{stroke:#3b82f6}.chart-color-tier-1{stroke:#ef4444}.chart-color-tier-2{stroke:#f472b6}.chart-color-tier-3{stroke:#f97316}.ai-chat-overlay{backdrop-filter:blur(4px);background:rgba(0,0,0,.5);bottom:0;left:0;position:fixed;right:0;top:0;z-index:9999}.ai-chat-drawer{animation:slideIn .3s ease-out;background:#fff;box-shadow:-4px 0 24px rgba(0,0,0,.12);height:100%;z-index:10000}.ai-chat-drawer__header{background:var(--color-gray-50);border-bottom:1px solid var(--color-gray-100)}.ai-chat-drawer__title{color:var(--color-gray-700)}.ai-chat-drawer__close{color:var(--color-gray-400);line-height:1}.ai-chat-drawer__close:hover{color:var(--color-gray-600)}@media (max-width:768px){.ai-chat-drawer{width:100%}}.goal-setting-content{padding:var(--spacing-4)}.form-section{gap:var(--spacing-6)}.subject-group-form{background:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);padding:var(--spacing-4)}.block-actions{gap:var(--spacing-2);right:var(--spacing-3);top:var(--spacing-3)}.icon-btn{border-radius:var(--radius-md);color:var(--color-gray-500);display:flex;height:32px;transition:all .2s;width:32px}.icon-btn:hover{background:var(--color-gray-100);color:var(--color-gray-700)}.modal-content--plan .goal-setting-content .form-row{display:block;margin-bottom:var(--spacing-4);width:100%}.modal-content--plan .goal-setting-content .form-row:last-child{margin-bottom:0}.modal-content--plan .goal-setting-content .form-row .form-label{color:var(--color-black);display:flex;flex-direction:column;font-size:var(--text-14);font-weight:500;gap:var(--space-6);width:100%}.modal-content--plan .goal-setting-content .form-row .form-label__text{color:var(--color-black);display:block;font-size:var(--text-14);font-weight:500}.modal-content--plan .goal-setting-content .form-input,.modal-content--plan .goal-setting-content .form-textarea{background:var(--color-white);border:1px solid var(--color-gray-300);border-radius:var(--radius-6);box-sizing:border-box;color:var(--color-gray-700);display:block;font-size:var(--text-14);line-height:1.5;padding:var(--space-10) var(--space-12);transition:var(--transition-base);width:100%}.modal-content--plan .goal-setting-content .form-input:focus,.modal-content--plan .goal-setting-content .form-textarea:focus{border-color:var(--color-blue-500);box-shadow:var(--shadow-filter-focus);outline:none}.modal-content--plan .goal-setting-content .form-input::placeholder,.modal-content--plan .goal-setting-content .form-textarea::placeholder{color:var(--color-text-muted)}.modal-content--plan .goal-setting-content .form-textarea{min-height:80px;resize:vertical}.modal-content--plan .goal-setting-content .subject-tags{display:flex;flex-wrap:wrap;gap:var(--space-10)}.modal-content--plan .goal-setting-content .subject-tags--selectable{cursor:default}.modal-content--plan .goal-setting-content .error-message{background:var(--color-error-50);border:1px solid var(--color-error-200);border-radius:var(--radius-6);color:var(--color-error-500);font-size:var(--text-13);margin-bottom:var(--space-8);padding:var(--space-8) var(--space-12)}.modal-content--plan .goal-setting-content .semester-goal-form--error,.modal-content--plan .goal-setting-content .subject-group-form--error{background:var(--color-error-50);border-color:var(--color-error-300)}.ai-chat-drawer{background:var(--color-white);box-shadow:-4px 0 16px rgba(0,0,0,.1);display:flex;flex-direction:column;height:100vh;position:fixed;right:0;top:0;width:60%;z-index:var(--z-drawer)}.ai-chat-drawer__overlay{background:rgba(0,0,0,.3);bottom:0;left:0;position:fixed;right:0;top:0;z-index:calc(var(--z-drawer) - 1)}.ai-chat-drawer__header{align-items:center;border-bottom:1px solid var(--color-gray-200);display:flex;justify-content:space-between;padding:var(--spacing-4) var(--spacing-6)}.ai-chat-drawer__title{color:var(--color-gray-900);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);margin:0;padding-left:24px}.ai-chat-drawer__close{align-items:center;background:transparent;border:none;border-radius:var(--radius-6);color:var(--color-gray-500);cursor:pointer;display:flex;font-size:24px;height:36px;justify-content:center;padding:var(--spacing-2);transition:all .2s;width:36px}.ai-chat-drawer__close:hover{background:var(--color-gray-200);color:var(--color-gray-700)}.ai-chat-drawer__content{display:flex;flex:1;flex-direction:column;overflow:hidden}.ai-chat-drawer__input-area,.goal-setting-modal__footer{border-top:1px solid var(--color-gray-200);padding:var(--spacing-4)}.goal-setting-modal__footer{align-items:center;display:flex;gap:var(--spacing-3);justify-content:flex-end}.goal-setting-modal__footer-spacer{margin-right:auto}.score-table__icon{align-items:center;display:inline-flex;margin-right:var(--spacing-2)}.semester-goals-grid{display:grid;gap:var(--spacing-4);grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.semester-goal-card{background:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);padding:var(--spacing-4)}.semester-goal-card__label{align-items:center;color:var(--color-gray-700);display:flex;font-weight:var(--font-weight-medium);gap:var(--spacing-2);margin-bottom:var(--spacing-3)}.semester-goal-card__input{flex:1}.chart-container{height:300px;width:100%}.chart-content{padding:var(--spacing-4)}.chart-legend{flex-wrap:wrap;gap:var(--spacing-4);justify-content:center;margin-top:var(--spacing-4)}.chart-legend-item{align-items:center;display:flex;font-size:var(--font-size-sm);gap:var(--spacing-2)}.chart-legend-color{border-radius:2px;height:12px;width:12px}@media (max-width:768px){.ai-chat-drawer{width:100%}.semester-goals-grid{grid-template-columns:1fr}}.plan-page{height:100%}.plan-layout{display:flex;overflow:hidden}.plan-layout__left{display:flex;flex-direction:column;overflow:hidden}.plan-layout__right{display:flex;flex:1;flex-direction:column;overflow:hidden}.plan-layout__divider{background:var(--color-gray-200);cursor:col-resize;transition:background-color .2s;width:4px}.plan-layout__divider:hover{background:var(--color-primary-500)}.plan-layout__divider--dragging{background:var(--color-primary-600)}.plan-tree{padding:var(--spacing-4)}.plan-tree__node{border-radius:var(--radius-md);padding:var(--spacing-2) var(--spacing-3);transition:background-color .2s}.plan-tree__node:hover{background:var(--color-gray-100)}.plan-tree__node--selected{background:var(--color-blue-100)}.plan-tree__node-icon{display:flex;height:20px;justify-content:center;margin-right:var(--spacing-2);width:20px}.plan-tree__node-toggle{align-items:center;cursor:pointer;display:flex;height:16px;justify-content:center;margin-right:var(--spacing-1);width:16px}.plan-tree__node-children{margin-left:var(--spacing-6)}.plan-tree__node--level-0{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.plan-tree__node--level-1{font-size:var(--font-size-base);font-weight:var(--font-weight-medium)}.plan-tree__node--level-2{color:var(--color-gray-600);font-size:var(--font-size-sm)}.plan-tree__node--level-3{color:var(--color-gray-500);font-size:var(--font-size-sm)}.plan-tree__node--custom{font-style:italic}.plan-tree__node--custom .plan-tree__node-icon{color:var(--color-primary-500)}.plan-tree__node-actions{display:flex;gap:var(--spacing-1);margin-left:auto;opacity:0;transition:opacity .2s}.plan-tree__node:hover .plan-tree__node-actions{opacity:1}.plan-tree__node-action{border-radius:var(--radius-sm);color:var(--color-gray-500);cursor:pointer;padding:var(--spacing-1)}.plan-tree__node-action:hover{background:var(--color-gray-200);color:var(--color-gray-700)}.plan-panel{display:flex;flex-direction:column;height:100%;padding:var(--spacing-4)}.plan-panel__header{align-items:center;border-bottom:1px solid var(--color-gray-200);display:flex;justify-content:space-between;margin-bottom:var(--spacing-4);padding-bottom:var(--spacing-4)}.plan-panel__title{color:var(--color-gray-900);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold)}.plan-panel__content{flex:1;overflow-y:auto}.plan-document{padding:var(--spacing-4)}.plan-document__section{margin-bottom:var(--spacing-6)}.plan-document__section-title{border-bottom:2px solid var(--color-primary-500);color:var(--color-gray-800);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);margin-bottom:var(--spacing-3);padding-bottom:var(--spacing-2)}.plan-document__subsection{margin-bottom:var(--spacing-4)}.plan-document__subsection-title{color:var(--color-gray-700);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);margin-bottom:var(--spacing-2)}.plan-score-table{border-collapse:collapse;margin-top:var(--spacing-4);width:100%}.plan-score-table td,.plan-score-table th{border-bottom:1px solid var(--color-gray-200);padding:var(--spacing-3);text-align:left}.plan-score-table th{color:var(--color-gray-700);font-weight:var(--font-weight-semibold)}.plan-score-table th,.plan-score-table tr:hover{background:var(--color-gray-50)}.plan-subject-tag{align-items:center;border-radius:var(--radius-md);display:inline-flex;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);padding:var(--spacing-1) var(--spacing-2)}.plan-subject-tag--chinese{background:var(--color-red-100);color:var(--color-red-700)}.plan-subject-tag--math{background:var(--color-blue-100);color:var(--color-blue-700)}.plan-subject-tag--english{background:var(--color-purple-100);color:var(--color-purple-700)}.plan-subject-tag--physics{background:var(--color-cyan-100);color:var(--color-cyan-700)}.plan-subject-tag--chemistry{background:var(--color-green-100);color:var(--color-green-700)}.plan-subject-tag--biology{background:var(--color-emerald-100);color:var(--color-emerald-700)}.plan-subject-tag--history{background:var(--color-amber-100);color:var(--color-amber-700)}.plan-subject-tag--geography{background:var(--color-orange-100);color:var(--color-orange-700)}.plan-subject-tag--politics{background:var(--color-pink-100);color:var(--color-pink-700)}.plan-learning-record{border:1px solid var(--color-gray-200);border-radius:var(--radius-md);margin-bottom:var(--spacing-3);padding:var(--spacing-3)}.plan-learning-record__header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--spacing-2)}.plan-learning-record__title{color:var(--color-gray-800);font-weight:var(--font-weight-medium)}.plan-learning-record__date{color:var(--color-gray-500);font-size:var(--font-size-sm)}.plan-learning-record__content{color:var(--color-gray-600);font-size:var(--font-size-sm)}.plan-form{gap:var(--spacing-4)}.plan-form,.plan-form__group{display:flex;flex-direction:column}.plan-form__group{gap:var(--spacing-2)}.plan-form__label{color:var(--color-gray-700);font-weight:var(--font-weight-medium)}.plan-form__input{border:1px solid var(--color-gray-300);border-radius:var(--radius-md);font-size:var(--font-size-base);padding:var(--spacing-2) var(--spacing-3)}.plan-form__input:focus{border-color:var(--color-primary-500);box-shadow:0 0 0 3px rgba(102,126,234,.1);outline:none}.plan-toast{animation:plan-toast-slide-in .3s ease-out;border-radius:var(--radius-md);color:#fff;font-weight:var(--font-weight-medium);padding:var(--spacing-3) var(--spacing-4);position:fixed;right:var(--spacing-4);top:var(--spacing-4);z-index:var(--z-toast)}.plan-toast--success{background:var(--color-success-500)}.plan-toast--error{background:var(--color-error-500)}@keyframes plan-toast-slide-in{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}.plan-ai-drawer{background:#fff;box-shadow:-4px 0 16px rgba(0,0,0,.1);display:flex;flex-direction:column;height:100%;position:fixed;right:0;top:0;width:400px;z-index:var(--z-drawer)}.plan-ai-drawer__header{align-items:center;border-bottom:1px solid var(--color-gray-200);display:flex;justify-content:space-between;padding:var(--spacing-4)}.plan-ai-drawer__title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.plan-ai-drawer__content{flex:1;overflow-y:auto;padding:var(--spacing-4)}.plan-tree__actions-right{display:inline-flex;gap:6px;margin-left:auto}.plan-content,.plan-content--visible{overflow:visible;padding:0}.plan-tree__grade-icon{margin-right:3px}.plan-tree__subject-icon{align-items:center;display:inline-flex;margin-right:6px}.publisher-dashboard-grid{display:grid;gap:24px;grid-template-columns:minmax(0,1.3fr) minmax(0,1.7fr);margin-top:24px}.agreement-checkbox{align-items:center;display:flex;margin-bottom:16px}.agreement-checkbox-input{cursor:pointer;height:18px;margin-right:8px;width:18px}.agreement-checkbox-label{cursor:pointer;user-select:none}.ai-model-type-checkboxes{display:flex;gap:16px}.ai-model-type-checkbox{align-items:center;display:flex;gap:4px;white-space:nowrap}.content-card--mt-16{margin-top:16px}.chart-legend__label,.chart-legend__tiers span{font-size:12px}.semester-goal-grid{grid-template-columns:auto 1fr 1fr}@media (max-width:640px){.semester-goal-grid{grid-template-columns:1fr}}.semester-goal-grid label{gap:8px}.semester-goal-grid label>input,.semester-goal-grid label>select{flex:1}@media (max-width:768px){.plan-layout{flex-direction:column}.plan-layout__left{max-height:40%;width:100%!important}.plan-layout__divider{display:none}.plan-ai-drawer{width:100%}}.practice-records-page .btn{align-items:center;border:none;border-radius:var(--radius-6);cursor:pointer;display:inline-flex;font-size:var(--text-14);font-weight:500;gap:6px;justify-content:center;padding:var(--space-8) var(--space-16);text-decoration:none;transition:var(--transition-base)}.practice-records-page .btn:hover{box-shadow:0 4px var(--space-12) rgba(0,0,0,.15);transform:translateY(-1px)}.practice-records-page .btn:active{transform:translateY(0)}.practice-records-page .btn-sm{font-size:var(--text-13);padding:6px var(--space-12)}.practice-records-page .btn-primary{background:linear-gradient(135deg,var(--color-blue-500) 0,var(--color-blue-600) 100%);box-shadow:0 2px var(--space-8) rgba(59,130,246,.25);color:#fff}.practice-records-page .filters-toggle{background:var(--color-white);border:1px solid var(--color-gray-1200);color:var(--color-gray-700)}.practice-records-page .btn-primary:hover{background:linear-gradient(135deg,var(--color-blue-600) 0,#1d4ed8 100%)}.practice-records-page .btn-secondary{background:linear-gradient(135deg,var(--color-gray-600) 0,#4b5563 100%);box-shadow:0 2px var(--space-8) hsla(220,9%,46%,.25);color:#fff}.practice-records-page .btn-secondary:hover{background:linear-gradient(135deg,#4b5563,#374151)}.practice-records-page .btn-danger{background:linear-gradient(135deg,var(--color-red-500) 0,var(--color-red-600) 100%);box-shadow:0 2px var(--space-8) rgba(239,68,68,.25);color:#fff}.practice-records-page .btn-danger:hover{background:linear-gradient(135deg,var(--color-red-600) 0,var(--color-danger-900) 100%)}.practice-records-page .btn-light{background:linear-gradient(135deg,var(--color-gray-1200) 0,var(--color-gray-300) 100%);border:1px solid var(--color-gray-1200);box-shadow:0 2px var(--space-8) rgba(209,213,219,.5);color:var(--color-gray-700)}.practice-records-page .btn-light:hover{background:linear-gradient(135deg,var(--color-gray-300) 0,var(--color-gray-400) 100%);color:var(--color-slate-800)}.practice-records-page .btn-info{background:linear-gradient(135deg,var(--color-cyan-500) 0,var(--color-cyan-600) 100%);box-shadow:0 2px var(--space-8) rgba(6,182,212,.25);color:#fff}.practice-records-page .btn-info:hover{background:linear-gradient(135deg,var(--color-cyan-600) 0,var(--color-cyan-800) 100%)}.practice-records-page .load-more-container{margin-top:var(--space-20);text-align:right}.practice-records-page .load-more-button{background:none;border:none;color:var(--color-blue-500);cursor:pointer;font-size:var(--text-14);opacity:1;padding:var(--space-8) var(--space-16);transition:opacity var(--transition-base)}.practice-records-page .load-more-button:hover{text-decoration:underline}.practice-records-page .load-more-button:disabled{cursor:not-allowed;opacity:.6}.practice-records-page .record-card{background:var(--color-white);border:1px solid var(--color-gray-1200);border-radius:14px;box-shadow:0 4px var(--space-16) rgba(2,6,23,.06);overflow:hidden;position:relative;transition:box-shadow var(--transition-base),transform var(--transition-base)}.practice-records-page .record-card:before{background:var(--color-gray-1200);bottom:0;content:"";left:0;position:absolute;top:0;width:4px}.practice-records-page .record-card--learning,.practice-records-page .record-card--practice{background:var(--color-white)}.practice-records-page .record-card:hover{box-shadow:0 var(--space-8) var(--space-20) rgba(2,6,23,.1);transform:translateY(-1px)}.practice-records-page .record-card:focus-within:before,.practice-records-page .record-card:focus:before,.practice-records-page .record-card:hover:before{background:var(--color-blue-500)}.practice-records-page .record-card__header{justify-content:space-between;padding:var(--space-12) var(--space-16) var(--space-8) var(--space-16)}.practice-records-page .record-card__title{align-items:center;display:inline-flex;gap:var(--space-8);white-space:nowrap}.practice-records-page .record-card__select input[type=checkbox]{cursor:pointer;height:var(--height-checkbox);width:var(--height-checkbox)}.practice-records-page .record-card__tags{display:flex;flex-wrap:wrap;gap:6px}.practice-records-page .record-card__footer,.practice-records-page .record-card__tags{padding:var(--space-8) var(--space-16) var(--space-12) var(--space-16)}.practice-records-page .card-actions{display:flex;gap:var(--space-8);justify-content:flex-end}.practice-records-page .record-card__header{align-items:center;display:flex}.practice-records-page .record-card__select{margin-right:var(--space-8)}.practice-records-page .record-card__title{flex:1}.practice-records-page .filters-section{background:var(--color-white);border:1px solid var(--color-gray-1200);border-radius:var(--radius-12);box-shadow:0 2px var(--space-8) rgba(2,6,23,.04);margin-bottom:var(--space-12);padding:var(--space-12) var(--space-16)}.practice-records-page .filters-section.collapsed{display:none}.practice-records-page .filters-row{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-16)}.practice-records-page .filter-group{display:flex;flex-direction:column;gap:4px}.practice-records-page .filter-input{background:var(--color-white);border:2px solid var(--color-gray-200);border-radius:var(--radius-12);box-shadow:0 2px 4px rgba(15,23,42,.04);color:var(--color-gray-1500);font-size:var(--text-14);min-width:260px;padding:var(--space-12) var(--space-16);transition:var(--transition-slow)}.practice-records-page .filter-input:focus{border-color:var(--color-primary-500);box-shadow:0 0 0 3px rgba(102,126,234,.1),0 4px var(--space-12) rgba(15,23,42,.08);outline:none}.practice-records-page .filters-chips{align-items:center;display:flex;gap:var(--space-8);padding:var(--space-8) var(--space-16) 0 var(--space-16)}.practice-records-page .chip{background:hsla(0,0%,100%,.6);border-radius:var(--radius-full);color:var(--color-gray-1600);display:inline-flex;font-size:var(--text-12);padding:4px var(--space-12)}.practice-records-page .chip-clear{background:transparent;border:1px dashed hsla(0,0%,100%,.6);color:var(--color-gray-1600)}.practice-records-filters{background:linear-gradient(135deg,var(--color-gray-50) 0,var(--color-gray-200) 100%);border:1px solid hsla(0,0%,100%,.2);border-radius:var(--radius-12);box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06);display:flex;gap:var(--space-16);margin-bottom:var(--space-24);padding:var(--space-20)}.practice-records-filters-row{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-16);width:100%}.practice-search-input{backdrop-filter:blur(10px);background:hsla(0,0%,100%,.9);border:2px solid var(--color-gray-200);border-radius:var(--radius-12);box-shadow:0 2px 4px rgba(0,0,0,.05);flex:1;font-size:var(--text-14);padding:var(--space-12) var(--space-16);transition:var(--transition-slow)}.practice-search-input:focus{border-color:var(--color-blue-500);box-shadow:0 0 0 3px rgba(59,130,246,.1),0 4px 6px rgba(0,0,0,.1);outline:none;transform:translateY(-1px)}.practice-search-input::placeholder{color:var(--color-slate-400);font-style:italic}.practice-filter-select{backdrop-filter:blur(10px);background:hsla(0,0%,100%,.9);border:2px solid var(--color-gray-200);border-radius:var(--radius-12);box-shadow:0 2px 4px rgba(0,0,0,.05);cursor:pointer;font-size:var(--text-14);min-width:140px;padding:var(--space-12) var(--space-16);transition:var(--transition-slow)}.practice-filter-select:focus{border-color:var(--color-blue-500);box-shadow:0 0 0 3px rgba(59,130,246,.1),0 4px 6px rgba(0,0,0,.1);outline:none;transform:translateY(-1px)}.practice-filter-select:hover{border-color:var(--color-slate-400);transform:translateY(-1px)}.practice-records-page .page-header{align-items:center;background:linear-gradient(90deg,var(--color-indigo-500) 0,var(--color-blue-500) 60%,var(--color-sky-500) 100%);border-bottom:none;border-radius:var(--radius-12);color:var(--color-white);display:flex;justify-content:space-between;margin-bottom:var(--space-16);padding:var(--space-16) var(--space-20)}.practice-records-page .page-header h1{color:var(--color-white);font-size:var(--text-28);font-weight:600;margin:0}.practice-records-page .header-actions{display:flex;gap:var(--space-12)}.practice-records-page{background:var(--color-white);border-radius:var(--radius-12);box-sizing:border-box;margin:0 auto;max-width:100%;padding:var(--space-24) var(--space-24) var(--space-24) var(--space-20);width:100%}.practice-records-page .learning-layout{align-items:start;display:grid;gap:var(--space-12);grid-template-columns:max-content 1fr}.practice-records-page .learning-stats{min-width:var(--width-learning-stats);padding:0 var(--space-8) 0 0;width:var(--width-learning-stats)}.practice-records-page .learning-stats .stats-grid{display:grid;gap:var(--space-12);grid-template-columns:1fr}.practice-records-page .learning-content{background:transparent}.practice-records-page .content-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--space-8);padding:0 var(--space-20)}.practice-records-page .content-title{color:var(--color-slate-800);font-size:22px;font-weight:600;margin:0}.practice-records-page .records-section{background:transparent;border-radius:var(--radius-12)}.practice-records-page .content-card{background:transparent;border:none;box-shadow:none}.practice-records-page .card-header{justify-content:space-between}.practice-records-page .card-header,.practice-records-page .cards-toolbar{align-items:center;display:flex;padding:var(--space-8) var(--space-16) 0 var(--space-16)}.practice-records-page .cards-toolbar{gap:10px;justify-content:flex-end}.practice-records-page .select-all{align-items:center;color:var(--color-gray-3400);display:inline-flex;font-size:var(--text-14);gap:var(--space-8)}.practice-records-page .select-all input[type=checkbox]{cursor:pointer;height:var(--height-checkbox);width:var(--height-checkbox)}.practice-records-page .records-grid{display:grid;gap:var(--space-16);grid-template-columns:repeat(auto-fill,minmax(var(--width-record-card-min),1fr));padding:0}.practice-records-page .pagination-wrapper{background:transparent;opacity:.75;padding:var(--space-8) var(--space-16)}.practice-records-page .pagination-wrapper.load-more{display:flex;justify-content:flex-end;padding:var(--space-8) 0}.practice-records-page .pagination-wrapper.load-more .more-btn{border-radius:var(--radius-full);box-shadow:none;min-width:var(--width-more-btn)}.practice-records-page .pagination-wrapper.load-more .more-btn .spinner{animation:pr-spin .6s linear infinite;border:2px solid hsla(0,0%,100%,.6);border-radius:var(--radius-full);border-top:2px solid var(--color-white);display:inline-block;height:var(--width-spinner);margin-left:var(--space-8);width:var(--width-spinner)}@keyframes pr-spin{to{transform:rotate(1turn)}}.practice-records-page .load-more-sentinel{height:1px}.practice-records-page .pagination-wrapper .pagination-btn{background:transparent;border:none;color:var(--color-slate-900);padding:6px var(--space-8)}.practice-records-page .pagination-wrapper .pagination-btn.active{background:hsla(0,0%,100%,.5);border-radius:var(--radius-8)}.practice-records-page .pagination-wrapper .items-per-page-section{display:none}.practice-records-page .actions-column{align-items:center;display:flex;flex-wrap:nowrap;gap:var(--space-8);justify-content:flex-start;width:var(--width-actions-column)}.practice-records-page .actions-column .btn{flex-shrink:0;margin-right:0;white-space:nowrap}.study-notice-message{background:transparent;color:#f44336;font-size:14px;left:50%;padding:8px 12px;position:fixed;top:0;transition:transform .3s ease;z-index:9999}@media (max-width:768px){.practice-records-page{padding:var(--space-16)}.practice-records-page .learning-layout{grid-template-columns:1fr}.practice-records-page .learning-stats{min-width:auto;padding:0 0 var(--space-8) 0;width:100%}.practice-records-page .filters-row{align-items:stretch;flex-direction:column}.practice-records-page .filter-input,.practice-records-page .filter-select{min-width:auto;width:100%}.practice-records-page .records-grid{grid-template-columns:1fr 1fr}.practice-records-page .card-actions .btn{font-size:var(--text-12);padding:6px var(--space-12)}.practice-records-filters{padding:var(--space-16)}.practice-records-filters,.practice-records-filters-row{flex-direction:column;gap:var(--space-12)}.practice-filter-select,.practice-search-input{min-width:auto;width:100%}}@media (max-width:480px){.practice-records-page .page-header h1{font-size:var(--text-24)}.practice-records-page .records-grid{grid-template-columns:1fr}}.practice-records-page .stats-band{align-items:center;display:flex;gap:var(--space-16);justify-content:space-between;margin:var(--space-12) 0 var(--space-16) 0;padding:0 var(--space-20)}.practice-records-page .stats-band .stats-grid{display:grid;flex:initial;gap:var(--space-12);grid-template-columns:1fr}.practice-records-page .stats-band .stats-actions{align-items:center;display:inline-flex;gap:var(--space-12)}.practice-records-page .stat-card{background:var(--color-white);border:1px solid var(--color-gray-1200);border-radius:14px;box-shadow:0 4px var(--space-16) rgba(2,6,23,.06);display:flex;flex-direction:column;gap:4px;padding:var(--space-16)}.practice-records-page .stat-icon{font-size:var(--text-18);line-height:1}.practice-records-page .stat-value{color:var(--color-slate-800);font-size:22px;font-weight:700}.practice-records-page .stat-label{color:var(--color-slate-500);font-size:var(--text-12)}.practice-records-page .record-type{font-weight:600}.practice-records-page .record-type,.practice-records-page .tag{border-radius:var(--radius-full);font-size:var(--text-12);padding:4px var(--space-12)}.practice-records-page .tag{align-items:center;background:var(--color-gray-50);color:var(--color-gray-3400);display:inline-flex;font-weight:500;gap:6px}.practice-records-page .tag--date{background:var(--color-gray-100)}.practice-records-page .tag--grade{background:rgba(238,242,255,.8);color:var(--color-sky-700)}.practice-records-page .tag--subject{background:rgba(236,254,255,.8);color:var(--color-sky-600)}.practice-records-page .tag--phase{background:hsla(48,97%,77%,.9);border:1px solid #fcd34d;color:var(--color-amber-800)}.practice-records-page .tag--strategy{background:rgba(255,247,237,.85);color:#c2410c}.practice-records-page .tag--strategy.strategy-wrong_first{background:rgba(255,237,213,.9);border:1px solid #fdba74;color:var(--color-rose-800)}.practice-records-page .tag--strategy.strategy-new_first{background:rgba(240,253,244,.9);border:1px solid #86efac;color:var(--color-emerald-700)}.practice-records-page .tag--strategy.strategy-random{background:rgba(239,246,255,.9);border:1px solid #93c5fd;color:var(--color-indigo-900)}.practice-records-page .tag--count{background:rgba(240,253,244,.85);color:var(--color-emerald-700)}.practice-records-page .tag--study{background:rgba(224,231,255,.85);color:var(--color-indigo-800)}.practice-records-page .accuracy{border-radius:var(--radius-full);font-size:var(--text-12);font-weight:500;padding:4px var(--space-12)}.practice-records-page .accuracy.high{background-color:var(--color-success-100);color:var(--color-emerald-700)}.practice-records-page .accuracy.medium{background-color:var(--color-gray-3100);color:var(--color-rose-700)}.practice-records-page .accuracy.low{background-color:hsla(0,93%,94%,.9);border:1px solid #fecaca;color:var(--color-rose-700)}.practice-records-page .status{border-radius:4px;font-size:var(--text-13);font-weight:500;padding:4px var(--space-8)}.practice-records-page .status.status-completed{background-color:var(--color-success-100);color:var(--color-emerald-700)}.practice-records-page .status.status-abandoned{background-color:var(--color-rose-500);color:var(--color-rose-600)}.practice-records-page .status.status-new{background-color:var(--color-blue-200);color:var(--color-blue-900)}.practice-records-page .status.status-active{background-color:var(--color-gray-3100);color:var(--color-rose-700)}.practice-records-page .status.status-studied{background-color:var(--color-blue-100);color:var(--color-indigo-800)}.practice-records-page .record-type{border-radius:4px;font-size:var(--text-13);font-weight:500;padding:4px var(--space-8)}.practice-records-page .record-type.practice{background-color:var(--color-purple-100);color:var(--color-purple-700)}.practice-records-page .record-type.learning{background-color:var(--color-emerald-500);color:var(--color-emerald-600)}.practice-records-page .strategy{background-color:var(--color-gray-100);border-radius:4px;color:var(--color-gray-3400);font-size:var(--text-13);font-weight:500;padding:4px var(--space-8)}.qb-form-row{display:block;margin-bottom:2px}.qb-form-row--inline{align-items:flex-start;display:flex;gap:var(--space-16,16px);margin-bottom:2px}.qb-form-row--inline .qb-form-group{flex:1}.qb-form-label{color:var(--color-gray-700,#374151);display:block;font-size:var(--text-14,14px);font-weight:500;margin-bottom:var(--space-8,8px)}.qb-form-label--required:before{color:var(--color-error-500,#ef4444);content:"* "}.qb-form-input{background-color:var(--color-white,#fff);border:1px solid var(--color-gray-300,#d1d5db);border-radius:var(--radius-8,8px);color:var(--color-gray-900,#111827);font-size:var(--text-14,14px);line-height:1.5;padding:10px 12px;transition:all .2s;width:100%}.search-input.qb-form-input{border:1px solid var(--color-gray-300,#d1d5db)}.qb-form-input:hover{border-color:var(--color-gray-400,#9ca3af)}.qb-form-input:focus{border-color:var(--color-primary-500,#3b82f6);box-shadow:0 0 0 3px rgba(59,130,246,.1);outline:none}.qb-form-input::placeholder{color:var(--color-gray-400,#9ca3af)}.qb-form-input:disabled{background-color:var(--color-gray-50,#f9fafb);cursor:not-allowed;opacity:.6}.qb-search-input{border-radius:var(--radius-12,12px);transition:all .2s}.qb-search-input:focus{border-color:var(--color-primary-500,#3b82f6);box-shadow:0 0 0 3px rgba(59,130,246,.1)}.qb-form-textarea{font-family:inherit;min-height:100px;resize:vertical}.qb-form-select{appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%236b7280'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m19 9-7 7-7-7'/%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;background-size:20px;padding-right:36px}.qb-form-error{color:var(--color-error-500,#ef4444);font-size:var(--text-12,12px);margin-top:var(--space-4,4px)}.qb-form-error--hidden{display:none}.qb-form-hint{color:var(--color-gray-500,#6b7280);font-size:var(--text-12,12px);margin-top:var(--space-4,4px)}.qb-form-group{display:flex;flex-direction:column}.qb-form-group--horizontal{align-items:center;flex-direction:row;gap:var(--space-16,16px)}.qb-form-group--horizontal .qb-form-label{margin-bottom:0;white-space:nowrap}.qb-form-row-grid{display:grid;gap:2px}.qb-form-row-grid--2{grid-template-columns:repeat(2,1fr)}.qb-form-row-grid--3{grid-template-columns:repeat(3,1fr)}@media (max-width:768px){.qb-form-row-grid--2,.qb-form-row-grid--3{grid-template-columns:1fr}}.qb-icon-label{align-items:center;display:flex;gap:6px}.qb-icon-label__icon{flex-shrink:0}.qb-form-actions{border-top:1px solid var(--color-gray-200,#e5e7eb);display:flex;gap:var(--space-12,12px);margin-top:var(--space-24,24px);padding-top:var(--space-24,24px)}.qb-form-actions--right{justify-content:flex-end}.qb-form-actions--center{justify-content:center}.qb-form-input--error,.qb-form-input--error:focus{border-color:var(--color-error-500,#ef4444)}.qb-form-input--error:focus{box-shadow:0 0 0 3px rgba(239,68,68,.1)}.qb-form-input--success{border-color:var(--color-success-500,#16a34a)}.qb-checkbox-group,.qb-radio-group{display:flex;flex-direction:column;gap:var(--space-12,12px)}.qb-checkbox-group--inline,.qb-radio-group--inline{flex-direction:row;flex-wrap:wrap}.qb-upload-area{background-color:var(--color-gray-50,#f9fafb);border:2px dashed var(--color-gray-300,#d1d5db);border-radius:var(--radius-12,12px);cursor:pointer;padding:var(--space-24,24px);position:relative;text-align:center;transition:all .2s}.qb-upload-area:hover{background-color:rgba(59,130,246,.05);border-color:var(--color-primary-500,#3b82f6)}.qb-upload-area--drag-over{background-color:rgba(59,130,246,.1);border-color:var(--color-primary-500,#3b82f6)}.qb-upload-area__icon{color:var(--color-gray-400,#9ca3af);margin-bottom:var(--space-16,16px)}.qb-upload-area__text{color:var(--color-gray-600,#4b5563);font-size:var(--text-14,14px);margin-bottom:var(--space-8,8px)}.qb-upload-area__hint{color:var(--color-gray-400,#9ca3af);font-size:var(--text-12,12px)}.qb-upload-area__preview{border-radius:var(--radius-8,8px);margin-top:var(--space-16,16px);max-height:200px;max-width:100%}.qb-bg-error{background-color:var(--color-error-500,#ef4444)}.qb-bg-warning{background-color:var(--color-warning-500,#f59e0b)}.qb-bg-success{background-color:var(--color-success-500,#16a34a)}.qb-bg-primary{background-color:var(--color-primary-500,#3b82f6)}.qb-p-1{padding:var(--space-4,4px)}.qb-text-xl{font-size:var(--text-20,20px)}.qb-items-end{align-items:flex-end}@import "./question-bank.css";@import "./forms.css";@import "./student-question-bank.css";:root{--qb-cart-bg:#f1f5f9;--qb-cart-border:#e2e8f0;--qb-free-bg:#ecfdf5;--qb-free-border:#16a34a;--qb-price-color:var(--color-error-500,#ef4444);--qb-sidebar-width:320px;--qb-sidebar-min-width:280px;--qb-sidebar-max-width:480px;--qb-resizer-width:8px;--qb-card-min-width:288px;--qb-card-height:234px;--qb-card-gap:16px;--qb-card-border-radius:var(--radius-lg,8px);--qb-filter-height:56px;--qb-filter-bg:var(--color-gray-50,#f9fafb);--qb-filter-border:var(--color-gray-200,#e5e7eb)}.question-sets-page{display:flex;flex-direction:column;height:100%;overflow:hidden}.questions-layout{height:100%;position:relative}.plan-tree{background:var(--color-gray-50,#f9fafb);border-right:1px solid var(--color-gray-200,#e5e7eb)}.plan-content,.plan-tree{overflow:auto}.card-icon-btn-warning{background:#f59e0b;border-color:#f59e0b;color:#fff}.card-icon-btn-warning:hover{background:#d97706;border-color:#d97706}.card-icon-btn-success{background:#10b981;border-color:#10b981;color:#fff}.card-icon-btn-success:hover{background:#059669;border-color:#059669}.card-icon-btn-primary{background:var(--primary-color,#3b82f6);border-color:var(--primary-color,#3b82f6);color:#fff}.card-icon-btn-primary:hover{background:#2563eb;border-color:#2563eb}.card-icon-btn-disabled{color:#94a3b8;cursor:default}.card-icon-btn-disabled,.card-icon-btn-disabled:hover{background:#f1f5f9;border-color:#e2e8f0}.plan-resizer{background-color:transparent;width:var(--qb-resizer-width);z-index:10}.plan-resizer--active{cursor:col-resize}.question-set-filters{align-items:center;background:var(--qb-filter-bg);border-bottom:1px solid var(--qb-filter-border);display:grid;gap:var(--space-16,16px);min-height:var(--qb-filter-height);padding:var(--space-16,16px)}.question-set-card{border-radius:var(--qb-card-border-radius);transition:all .2s}.question-set-card:hover{box-shadow:var(--shadow-lg,0 10px 15px -3px rgba(0,0,0,.1));transform:translateY(-2px)}.question-set-card__cover{align-items:center;background:var(--color-gray-100,#f3f4f6);display:flex;height:160px;justify-content:center;overflow:hidden;position:relative;width:100%}.question-set-card__cover-img{height:100%;object-fit:cover;width:100%}.question-set-card .thumbnail{cursor:default}.question-set-card .thumbnail--clickable{cursor:zoom-in}.question-set-card__body{padding:0}.question-set-card__title{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--color-gray-900,#111827);display:-webkit-box;font-size:var(--text-16,16px);font-weight:600;line-height:1.4;margin-bottom:var(--space-8,8px);overflow:hidden}.question-set-card__meta{display:flex;gap:var(--space-8,8px);margin-bottom:var(--space-12,12px)}.question-set-card__badge{background:var(--color-gray-100,#f3f4f6);border-radius:var(--radius-full,9999px);color:var(--color-gray-600,#6b7280);font-size:var(--text-12,12px);padding:2px 8px}.question-set-card__price{color:var(--qb-price-color);font-size:var(--text-18,18px);font-weight:600}.question-set-card__actions{display:flex;gap:var(--space-8,8px);margin-top:var(--space-16,16px)}.question-set-card__cart-btn{border-radius:var(--radius-4,4px);cursor:pointer;flex:1;font-size:var(--text-14,14px);font-weight:500;padding:var(--space-8,8px) var(--space-16,16px);transition:all .2s;&--in-cart{background-color:var(--qb-cart-bg);border-color:var(--qb-cart-border);color:var(--color-gray-400,#9ca3af);cursor:default}&--add{background-color:var(--qb-free-bg);border-color:var(--qb-free-border);color:var(--qb-free-border);&:hover{background-color:var(--qb-free-border);color:var(--color-white,#fff)}}}.question-set-modal{.form-row{margin-bottom:var(--space-24,24px)}.form-label{color:var(--color-gray-700,#374151);display:block;font-size:var(--text-14,14px);font-weight:500;margin-bottom:var(--space-8,8px)}.form-error{color:var(--color-error-500,#ef4444);font-size:var(--text-12,12px);margin-top:var(--space-4,4px)}.form-input{border:1px solid var(--color-gray-300,#d1d5db);border-radius:var(--radius-4,4px);font-size:var(--text-14,14px);padding:var(--space-12,12px);transition:all .2s;width:100%;&:focus{border-color:var(--color-primary-500,#3b82f6);box-shadow:0 0 0 3px var(--color-primary-100,rgba(59,130,246,.1));outline:none}}.form-textarea{min-height:120px;resize:vertical}.cover-upload{border:2px dashed var(--color-gray-300,#d1d5db);border-radius:var(--radius-lg,8px);cursor:pointer;padding:var(--space-32,32px);position:relative;text-align:center;transition:all .2s;&:hover{background:var(--color-primary-50,rgba(59,130,246,.05));border-color:var(--color-primary-500,#3b82f6)}}.cover-preview{background:var(--color-gray-100,#f3f4f6);border-radius:var(--radius-lg,8px);height:200px;overflow:hidden;position:relative;width:100%}}.question-sets-notice{animation:slide-in .3s ease-out;position:fixed;right:var(--space-16,16px);top:var(--space-16,16px);z-index:9999}@keyframes slide-in{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}@media (max-width:768px){.question-set-filters{grid-template-columns:1fr!important}.question-set-card{min-width:100%}.plan-tree{display:none}}.qb-text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.qb-text-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.qb-flex-center{align-items:center;display:flex;justify-content:center}.qb-hidden{display:none!important}.qb-mt-4{margin-top:var(--space-16,16px)}.qb-mb-4{margin-bottom:var(--space-16,16px)}.qb-text-error{color:var(--color-error-500,#ef4444)}.qb-text-success{color:var(--color-success-500,#16a34a)}.qb-text-warning{color:var(--color-warning-500,#f59e0b)}.qb-text-primary{color:var(--color-primary-500,#3b82f6)}.qb-text-price{color:var(--qb-price-color)}.qb-bg-error-500{background-color:var(--color-error-500,#ef4444)}.qb-text-gray-300{color:var(--color-gray-300,#d1d5db)}.qb-text-gray-400{color:var(--color-gray-400,#9ca3af)}.qb-text-gray-500{color:var(--color-gray-500,#6b7280)}.qb-text-gray-600{color:var(--color-gray-600,#4b5563)}.qb-text-gray-700{color:var(--color-gray-700,#374151)}.qb-text-gray-900{color:var(--color-gray-900,#111827)}.qb-bg-gray-50{background-color:var(--color-gray-50,#f9fafb)}.qb-bg-gray-100{background-color:var(--color-gray-100,#f3f4f6)}.qb-bg-white{background-color:var(--color-white,#fff)}.qb-bg-cart{background-color:var(--qb-cart-bg)}.qb-bg-free{background-color:var(--qb-free-bg)}.qb-border-gray-200{border-color:var(--color-gray-200,#e5e7eb)}.qb-border-gray-300{border-color:var(--color-gray-300,#d1d5db)}.qb-border-cart{border-color:var(--qb-cart-border)}.qb-border-free{border-color:var(--qb-free-border)}.qb-mt-1{margin-top:var(--space-4,4px)}.qb-mt-2{margin-top:var(--space-8,8px)}.qb-mt-3{margin-top:var(--space-12,12px)}.qb-mb-1{margin-bottom:var(--space-4,4px)}.qb-mb-2{margin-bottom:var(--space-8,8px)}.qb-mb-3{margin-bottom:var(--space-12,12px)}.qb-ml-2{margin-left:var(--space-8,8px)}.qb-mr-2{margin-right:var(--space-8,8px)}.qb-p-2{padding:var(--space-8,8px)}.qb-p-3{padding:var(--space-12,12px)}.qb-p-4{padding:var(--space-16,16px)}.qb-text-xs{font-size:var(--text-12,12px)}.qb-text-sm{font-size:var(--text-14,14px)}.qb-text-base{font-size:var(--text-16,16px)}.qb-text-lg{font-size:var(--text-18,18px)}.qb-font-normal{font-weight:400}.qb-font-medium{font-weight:500}.qb-font-semibold{font-weight:600}.qb-font-bold{font-weight:700}.qb-flex{display:flex}.qb-flex-col{flex-direction:column}.qb-flex-row{flex-direction:row}.qb-inline-flex{display:inline-flex}.qb-items-center{align-items:center}.qb-items-start{align-items:flex-start}.qb-align-middle{vertical-align:middle}.qb-justify-center{justify-content:center}.qb-justify-between{justify-content:space-between}.qb-ml-auto{margin-left:auto}.qb-gap-1{gap:var(--space-4,4px)}.qb-gap-1\.5{gap:calc(var(--space-4, 4px)*1.5)}.qb-gap-2{gap:var(--space-8,8px)}.qb-gap-3{gap:var(--space-12,12px)}.qb-gap-4{gap:var(--space-16,16px)}.qb-gap-6{gap:var(--space-24,24px)}.qb-w-10{width:calc(var(--space-4, 4px)*10)}.qb-h-10{height:calc(var(--space-4, 4px)*10)}.qb-h-4{height:calc(var(--space-4, 4px)*4)}.qb-h-4\.5{height:calc(var(--space-4, 4px)*4.5)}.qb-min-w-4{min-width:calc(var(--space-4, 4px)*4)}.qb-min-w-4\.5{min-width:calc(var(--space-4, 4px)*4.5)}.qb-min-w-55{min-width:220px}.qb-rounded{border-radius:var(--radius-4,4px)}.qb-rounded-lg{border-radius:var(--radius-8,8px)}.qb-rounded-xl{border-radius:var(--radius-12,12px)}.qb-rounded-full{border-radius:var(--radius-full,9999px)}.qb-shadow{box-shadow:var(--shadow-sm,0 1px 2px 0 rgba(0,0,0,.05))}.qb-shadow-md{box-shadow:var(--shadow-md,0 4px 6px -1px rgba(0,0,0,.1))}.qb-shadow-lg{box-shadow:var(--shadow-lg,0 10px 15px -3px rgba(0,0,0,.1))}.qb-transition{transition:all .2s}.qb-transition-colors{transition:color .2s,background-color .2s,border-color .2s}.qb-cursor-pointer{cursor:pointer}.qb-cursor-default{cursor:default}.qb-w-full{width:100%}.qb-w-auto{width:auto}.qb-h-full{height:100%}.qb-h-auto{height:auto}.qb-overflow-hidden{overflow:hidden}.qb-overflow-auto{overflow:auto}.qb-relative{position:relative}.qb-absolute{position:absolute}.qb-fixed{position:fixed}.-qb-top-1{top:calc(var(--space-4, 4px)*-1)}.-qb-right-1{right:calc(var(--space-4, 4px)*-1)}.qb-z-10{z-index:10}.qb-z-20{z-index:20}.qb-z-30{z-index:30}.qb-z-40{z-index:40}.qb-z-50{z-index:50}.plan-layout.question-bank-layout{grid-template-columns:var(--question-bank-left-width,280px) 1fr}.question-bank-layout .plan-resizer.question-bank-resizer{left:var(--question-bank-left-width,280px)}.toolbar-actions{gap:12px}.toolbar-actions,.toolbar-btn{align-items:center;display:flex}.toolbar-btn{gap:4px}.question-set-icon{margin-right:6px}.modal-overlay-high{z-index:2700}.modal-image{display:block;max-height:80vh;max-width:90vw}.form-row{display:flex}.form-col{flex:1}.form-label{color:#374151;display:block;font-weight:500;margin-bottom:6px}.form-input,.form-select,.form-textarea{border:1px solid #d1d5db;border-radius:6px;font-size:14px;padding:8px 12px}.form-textarea{min-height:80px;resize:vertical}.form-hint{color:#94a3b8;font-size:12px;margin-top:8px}.question-card-title{color:#0f172a;font-size:16px;font-weight:600}.question-card-meta{color:#94a3b8;font-size:12px;margin-top:8px}.status-badge-custom{align-items:center;border-radius:12px;display:inline-flex;font-size:12px;font-weight:500;padding:4px 12px}.action-btn-danger{background-color:#ef4444;border-color:#ef4444;color:#fff;margin-right:10px}.empty-state{color:#6b7280;padding:60px 20px}.loading-state{align-items:center;color:#6b7280;display:flex;justify-content:center;padding:40px}.questions-help-mask{background-color:rgba(15,23,42,.35);bottom:0;left:0;opacity:0;pointer-events:none;position:fixed;right:0;top:var(--app-header-height,64px);transition:opacity .25s ease;z-index:2600}.questions-help-mask--open{opacity:1;pointer-events:auto}.questions-help-drawer{background-color:#fff;border-left:1px solid #e2e8f0;box-shadow:-12px 0 32px rgba(15,23,42,.25);display:flex;flex-direction:column;height:calc(100vh - var(--app-header-height, 64px));max-width:50vw;position:fixed;right:0;top:var(--app-header-height,64px);transform:translateX(100%);transition:transform .25s ease;width:50vw;z-index:2601}.questions-help-drawer--open{transform:translateX(0)}.questions-help-drawer-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:16px 20px}.questions-help-drawer-title{color:#0f172a;font-size:16px;font-weight:600}.questions-help-drawer-footer{background-color:#fff;border-top:1px solid #e5e7eb;display:flex;flex-shrink:0;gap:8px;justify-content:flex-end;padding:10px 20px}.questions-help-content{color:#475569;flex:1;font-size:13px;line-height:1.6;overflow-y:auto;padding:16px 20px 20px}.questions-help-hint{color:#94a3b8;font-size:12px;margin-top:8px}.store-header-container{display:flex;flex-direction:column;gap:16px;width:100%}.store-tabs-wrapper{display:flex;justify-content:center;width:100%}.cart-modal-custom{display:flex;flex-direction:column;max-height:80vh;max-width:520px;width:100%}.cart-modal-body{display:flex;flex-direction:column;gap:8px;overflow-y:auto;padding-bottom:8px;padding-top:8px}.cart-empty-state{color:#6b7280;font-size:14px;padding:16px;text-align:center}.cart-item{align-items:center;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;display:flex;gap:12px;justify-content:space-between;padding:12px}.cart-item-info{display:flex;flex:1;flex-direction:column;gap:4px;min-width:0}.cart-item-title{color:#111827;font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cart-item-meta{color:#6b7280;display:flex;font-size:12px;gap:8px}.cart-item-price{color:#ef4444;font-size:14px;font-weight:600;min-width:80px;text-align:right}.question-set-sidebar{display:flex;flex-direction:column;height:100%}.question-set-sidebar-content{flex:1;overflow-y:auto;padding:10px}.sidebar-card{margin:0}.sidebar-tabs{margin-bottom:0;width:100%}.sidebar-footer{padding:10px}.sidebar-footer-actions{align-items:center;display:flex;justify-content:space-between}.question-set-checkbox{margin-right:6px}.question-set-count{margin-left:8px}.question-set-urgent{color:#ef4444;font-weight:600}.question-set-image{cursor:zoom-in}.tooltip{display:inline-block;position:relative}.tooltip:hover:after{animation:var(--animation-tooltip) forwards;background:var(--color-gray-3200);border-radius:var(--radius-6);bottom:100%;color:var(--color-white);content:attr(data-tooltip);font-size:var(--text-12);left:50%;opacity:0;padding:var(--space-8) var(--space-12);position:absolute;transform:translateX(-50%);white-space:nowrap;z-index:var(--z-tooltip)}.fill-answer-item-modern,.option-item-modern{animation:var(--animation-fade)}.tag-modern{animation:var(--animation-bounce)}.saving-indicator{animation:var(--animation-pulse)}.form-card-modern{backdrop-filter:blur(10px);background:hsla(0,0%,100%,.8);border:1px solid hsla(0,0%,100%,.3);border-radius:var(--radius-12);box-shadow:var(--shadow-card-modern);overflow:hidden;transition:var(--transition-scale)}.form-card-modern:hover{box-shadow:var(--shadow-card-hover-modern);transform:translateY(-1px)}.card-header-modern{align-items:center;border-bottom:1px solid rgba(0,0,0,.05);display:flex;gap:var(--space-16);padding:var(--space-24) var(--space-32)}.card-header-modern,.card-icon{background:linear-gradient(135deg,var(--color-gray-50) 0,var(--color-gray-100) 100%)}.card-icon{border:2px solid rgba(102,126,234,.2);border-radius:var(--radius-12);box-shadow:var(--shadow-icon);color:var(--color-gray-3500);filter:brightness(1.1) saturate(1.5) contrast(1.2);font-size:var(--text-22);font-weight:400;height:var(--width-card-icon);text-shadow:none;transition:var(--transition-scale);width:var(--width-card-icon)}.card-icon:hover{background:linear-gradient(135deg,var(--color-white) 0,var(--color-gray-3600) 100%);border-color:rgba(102,126,234,.4);box-shadow:var(--shadow-icon-hover);transform:scale(1.05)}.card-title h3{color:var(--color-gray-3200);font-size:var(--text-20);font-weight:700;margin:0}.card-title p{color:var(--color-gray-500);font-size:var(--text-14);margin:var(--space-4) 0 0 0}.card-content-modern{padding:var(--space-32)}@media (prefers-color-scheme:dark){.student-question-create-modern{background:linear-gradient(135deg,var(--color-gray-3200) 0,var(--color-gray-1600) 100%)}.form-card-modern{background:rgba(30,41,59,.95);border:1px solid hsla(0,0%,100%,.1)}.card-header-modern{background:linear-gradient(135deg,var(--color-gray-1600) 0,var(--color-gray-3400) 100%)}.card-title h3{color:var(--color-gray-50)}.content-preview-modern,.content-textarea-modern,.explanation-preview-modern,.explanation-textarea-modern,.input-modern,.select-modern{background:var(--color-gray-1600);border-color:var(--color-gray-3400);color:var(--color-gray-50)}}.content-editor-modern{display:flex;flex-direction:column;gap:var(--space-16)}.editor-toolbar{background:var(--color-gray-50);border:1px solid var(--color-gray-200);border-radius:var(--radius-8);justify-content:space-between;padding:var(--space-12) var(--space-16)}.editor-toolbar,.toolbar-group{align-items:center;display:flex}.toolbar-group{gap:var(--space-8)}.toolbar-label{color:var(--color-gray-500);font-size:var(--text-14);font-weight:500}.format-tag{background:var(--color-primary-500);border-radius:var(--radius-4);color:var(--color-white);font-size:var(--text-12);font-weight:500;padding:var(--space-4) var(--space-8)}.editor-container{display:grid;gap:var(--space-16);grid-template-columns:1fr 1fr;min-height:var(--height-editor)}.editor-pane,.preview-pane{display:flex;flex-direction:column;gap:var(--space-8)}.editor-label{color:var(--color-gray-700);font-size:var(--text-14);font-weight:600}.content-textarea-modern,.explanation-textarea-modern{border:2px solid var(--color-gray-1200);border-radius:var(--radius-12);box-sizing:border-box;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:var(--text-14);min-height:var(--height-textarea);padding:var(--space-16);resize:vertical;transition:var(--transition-hover);width:100%}.content-textarea-modern:focus,.explanation-textarea-modern:focus{border-color:var(--color-primary-500);box-shadow:var(--shadow-filter-focus);outline:none}.content-preview-modern,.explanation-preview-modern{background:var(--color-white);border:2px solid var(--color-gray-1200);border-radius:var(--radius-12);min-height:var(--height-textarea);overflow-y:auto;padding:var(--space-16)}.preview-placeholder{align-items:center;color:var(--color-gray-1900);display:flex;flex-direction:column;gap:var(--space-16);height:100%;justify-content:center;text-align:center}.preview-placeholder svg{opacity:.5}.form-field-modern{display:flex;flex-direction:column;gap:var(--space-8)}.field-label-modern{align-items:center;color:var(--color-gray-700);display:flex;font-size:var(--text-14);font-weight:600;gap:var(--space-4)}.required-mark{color:var(--color-red-500);font-weight:700}.input-wrapper-modern{position:relative}.input-modern{background:var(--color-white);border:2px solid var(--color-gray-1200);border-radius:var(--radius-12);box-sizing:border-box;font-size:var(--text-16);padding:var(--space-14) var(--space-16);transition:var(--transition-hover);width:100%}.input-modern:focus{border-color:var(--color-primary-500);box-shadow:var(--shadow-filter-focus);outline:none;transform:translateY(-1px)}.input-modern:hover{border-color:var(--color-gray-300)}.select-wrapper-modern{position:relative}.select-modern{appearance:none;background:var(--color-white);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3E%3C/svg%3E");background-position:right var(--space-12) center;background-repeat:no-repeat;background-size:1.5em 1.5em;border:2px solid var(--color-gray-1200);border-radius:var(--radius-12);cursor:pointer;font-size:var(--text-16);padding:var(--space-14) var(--space-16);padding-right:var(--space-48);transition:var(--transition-hover);width:100%}.select-modern:focus{border-color:var(--color-primary-500);box-shadow:var(--shadow-filter-focus);outline:none}.select-modern:hover{border-color:var(--color-gray-300)}.input-error{border-color:var(--color-red-500)!important;box-shadow:var(--shadow-error)!important}.error-message{align-items:center;color:var(--color-red-500);display:flex;gap:var(--space-4)}.input-success{border-color:var(--color-success-500)!important;box-shadow:var(--shadow-success)!important}.success-message{align-items:center;color:var(--color-success-500);display:flex;font-size:var(--text-12);gap:var(--space-4);margin-top:var(--space-4)}.create-header-modern{align-items:center;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:hsla(0,0%,100%,.95);border-bottom:1px solid rgba(0,0,0,.1);border-radius:var(--radius-12) var(--radius-12) 0 0;box-shadow:var(--shadow-header);display:flex;flex-shrink:0;justify-content:space-between;margin-bottom:0;padding:var(--space-16) var(--space-32);position:relative;z-index:var(--z-header)}.header-left{gap:var(--space-24)}.back-btn-modern,.header-left{align-items:center;display:flex}.back-btn-modern{background:var(--color-gray-50);border:1px solid var(--color-gray-200);border-radius:var(--radius-8);color:var(--color-gray-500);cursor:pointer;font-weight:500;gap:var(--space-8);padding:var(--space-12) var(--space-16);text-decoration:none;transition:var(--transition-hover)}.back-btn-modern:hover{background:var(--color-gray-200);box-shadow:var(--shadow-btn-hover);color:var(--color-gray-600);transform:translateY(-1px)}.header-title h1{color:#000;font-size:var(--text-24);font-weight:700;margin:0}.header-subtitle{color:var(--color-gray-500);font-size:var(--text-14);margin:var(--space-4) 0 0 0}.header-actions{gap:var(--space-16)}.saving-indicator{align-items:center;background:var(--color-warning-100);border:1px solid var(--color-warning-400);border-radius:var(--radius-6);color:var(--color-warning-800);display:flex;font-size:var(--text-14);gap:var(--space-8);padding:var(--space-8) var(--space-16)}.spinner{animation:var(--animation-spin);border:2px solid var(--color-warning-400);border-radius:var(--radius-full);border-top:2px solid transparent;height:var(--space-16);width:var(--space-16)}.student-question-create-modern{background:var(--color-white);display:flex;flex-direction:column;min-height:auto;padding:0}.create-content-modern{backdrop-filter:blur(10px);background:hsla(0,0%,100%,.95);border:1px solid hsla(0,0%,100%,.2);border-radius:var(--radius-12);box-shadow:var(--shadow-card-modern);box-sizing:border-box;flex:1;margin:0;max-width:none;overflow:visible;padding:0;position:relative;width:100%}.form-container-modern{display:flex;flex-direction:column;gap:var(--space-32);padding:var(--space-32) calc(var(--space-80)*2)}.form-grid-modern{display:grid;gap:var(--space-24);grid-template-columns:repeat(auto-fit,minmax(var(--width-form-min),1fr))}.basic-info-layout{display:flex;flex-direction:column;gap:var(--space-24)}.info-row{align-items:flex-start;display:flex;gap:var(--space-32)}.info-row .form-field-modern{flex:1}.options-container-modern{display:flex;flex-direction:column;gap:var(--space-16)}.option-item-modern{background:var(--color-white);border:2px solid var(--color-gray-1200);border-radius:var(--radius-12);display:flex;flex-direction:column;gap:var(--space-8);padding:var(--space-16);transition:var(--transition-hover)}.option-item-modern:hover{border-color:var(--color-primary-500);box-shadow:var(--shadow-option-hover)}.option-header{align-items:center;display:flex;justify-content:space-between}.option-title{color:var(--color-gray-700);font-weight:600;margin-left:var(--space-8)}.student-question-create-modern .option-badge{box-sizing:border-box;display:inline-flex;line-height:1;max-width:100%;padding:var(--space-4) var(--space-12)}.student-question-create-modern .option-badge,.student-question-create-modern .option-label{align-items:center;background:var(--color-blue-100);border:1px solid var(--color-gray-1200);border-radius:var(--radius-8);color:var(--color-indigo-700);font-size:var(--text-14);font-weight:700;justify-content:center}.student-question-create-modern .option-label{display:flex;height:var(--width-option-badge);width:var(--width-option-badge)}.remove-fill-btn,.remove-option-btn{align-items:center;background:var(--color-danger-100);border:1px solid var(--color-red-600);border-radius:var(--radius-8);color:var(--color-red-600);cursor:pointer;display:flex;height:var(--width-remove-btn);justify-content:center;transition:var(--transition-hover);width:var(--width-remove-btn)}.remove-fill-btn:hover,.remove-option-btn:hover{background:var(--color-red-600);transform:scale(1.05)}.option-content{align-items:center;display:flex;gap:var(--space-16)}.option-input-modern{border:2px solid var(--color-gray-1200);border-radius:var(--radius-8);flex:1;font-size:var(--text-14);padding:var(--space-12) var(--space-16);transition:var(--transition-hover)}.option-input-modern:focus{border-color:var(--color-primary-500);box-shadow:var(--shadow-filter-focus);outline:none}.correct-answer-toggle{align-items:center;background:var(--color-gray-50);border:1px solid var(--color-gray-1200);border-radius:var(--radius-6);cursor:pointer;display:flex;gap:var(--space-6);padding:var(--space-6) var(--space-12);transition:var(--transition-hover)}.correct-answer-toggle:hover{background:var(--color-blue-100)}.toggle-text{color:var(--color-gray-700);font-size:var(--text-14);font-weight:500}.add-fill-btn-modern,.add-option-btn-modern{align-items:center;background:var(--color-white);border:2px dashed var(--color-gray-300);border-radius:var(--radius-12);color:var(--color-gray-600);cursor:pointer;display:flex;font-weight:500;gap:var(--space-8);justify-content:center;padding:var(--space-16);transition:var(--transition-hover)}.add-fill-btn-modern:hover,.add-option-btn-modern:hover{background:var(--color-gray-50);border-color:var(--color-primary-500);color:var(--color-primary-500);transform:translateY(-1px)}.fill-answers-container-modern{display:flex;flex-direction:column;gap:var(--space-16)}.fill-answer-item-modern{background:var(--color-white);border:2px solid var(--color-gray-1200);border-radius:var(--radius-12);display:flex;flex-direction:column;gap:var(--space-12);padding:var(--space-24);transition:var(--transition-hover)}.fill-answer-item-modern:hover{border-color:var(--color-primary-500);box-shadow:var(--shadow-option-hover)}.fill-answer-header{align-items:center;display:flex;justify-content:space-between}.fill-number{background:linear-gradient(135deg,var(--color-primary-500) 0,var(--color-primary-600) 100%);border-radius:var(--radius-8);color:var(--color-white);font-size:var(--text-14);font-weight:600;padding:var(--space-8) var(--space-16)}.fill-answer-input-modern{border:2px solid var(--color-gray-1200);border-radius:var(--radius-8);box-sizing:border-box;font-size:var(--text-14);padding:var(--space-12) var(--space-16);transition:var(--transition-hover);width:100%}.fill-answer-input-modern:focus{border-color:var(--color-primary-500);box-shadow:var(--shadow-filter-focus);outline:none}@media (max-width:768px){.create-header-modern{padding:var(--space-16)}.create-header-modern,.header-left{align-items:flex-start;flex-direction:column;gap:var(--space-16)}.create-content-modern{padding:var(--space-16)}.info-row{gap:var(--space-24)}.difficulty-selector-modern,.grade-selector-modern,.info-row,.subject-selector-modern,.subject-selector-rows,.type-selector-modern{flex-direction:column}.editor-container{grid-template-columns:1fr}.actions-container,.bottom-actions-modern{flex-direction:column;gap:var(--space-16)}.primary-actions{flex-direction:column;width:100%}.btn-cancel-modern,.btn-save-continue-modern,.btn-save-modern{justify-content:center;width:100%}}.subject-selector-rows{display:flex;flex-direction:column;gap:var(--space-8)}.subject-selector-modern{display:flex;flex-wrap:wrap;gap:var(--space-8);margin-top:var(--space-8)}.subject-btn{backdrop-filter:blur(10px);background:hsla(0,0%,100%,.8);border:2px solid rgba(139,92,246,.2);border-radius:var(--radius-8);color:var(--color-gray-600);display:flex;font-weight:500;gap:var(--space-6);transition:var(--transition-scale)}.subject-btn:hover{background:hsla(0,0%,100%,.9);border-color:rgba(139,92,246,.4);box-shadow:var(--shadow-btn-hover);transform:translateY(-1px)}.subject-btn.active{background:linear-gradient(135deg,var(--color-purple-500),var(--color-purple-600));border-color:var(--color-purple-500);box-shadow:var(--shadow-btn-active);color:var(--color-white)}.subject-icon{filter:brightness(1.3) saturate(1.6) contrast(1.2);font-size:var(--text-18);text-shadow:0 1px var(--space-2) rgba(0,0,0,.2)}.subject-text{font-weight:600}.type-selector-modern{display:flex;flex-wrap:wrap;gap:var(--space-8);margin-top:var(--space-8)}.type-btn{align-items:center;backdrop-filter:blur(10px);background:hsla(0,0%,100%,.8);border:2px solid rgba(139,92,246,.2);border-radius:var(--radius-8);box-sizing:border-box;color:var(--color-gray-600);cursor:pointer;display:flex;font-size:var(--text-14);font-weight:500;gap:var(--space-6);height:var(--space-40);padding:var(--space-8) var(--space-12);transition:var(--transition-scale)}.type-btn:hover{background:hsla(0,0%,100%,.9);border-color:rgba(139,92,246,.4);box-shadow:var(--shadow-btn-hover);transform:translateY(-1px)}.type-btn.active{background:linear-gradient(135deg,var(--color-purple-500),var(--color-purple-600));border-color:var(--color-purple-500);box-shadow:var(--shadow-btn-active);color:var(--color-white)}.type-icon{align-items:center;display:inline-flex;filter:brightness(1.3) saturate(1.6) contrast(1.2);font-size:var(--text-18);height:var(--space-20);justify-content:center;text-shadow:0 1px var(--space-2) rgba(0,0,0,.2);width:var(--space-20)}.type-icon,.type-text{line-height:var(--space-20)}.type-text{font-weight:600}.grade-selector-modern{display:flex;flex-wrap:wrap;gap:var(--space-8);margin-top:var(--space-8)}.grade-btn{align-items:center;backdrop-filter:blur(10px);background:hsla(0,0%,100%,.8);border:2px solid rgba(59,130,246,.2);border-radius:var(--radius-8);color:var(--color-gray-600);cursor:pointer;display:flex;font-size:var(--text-14);font-weight:500;gap:var(--space-6);padding:var(--space-8) var(--space-12);transition:var(--transition-scale)}.grade-btn:hover{background:hsla(0,0%,100%,.9);border-color:rgba(59,130,246,.4);box-shadow:var(--shadow-btn-hover);transform:translateY(-1px)}.grade-btn.active{background:linear-gradient(135deg,var(--color-blue-500),var(--color-blue-600));border-color:var(--color-blue-500);box-shadow:var(--shadow-btn-active);color:var(--color-white)}.grade-icon{filter:brightness(1.3) saturate(1.6) contrast(1.2);font-size:var(--text-18);text-shadow:0 1px var(--space-2) rgba(0,0,0,.2)}.grade-text{font-weight:600}.difficulty-selector-modern{display:flex;flex-wrap:wrap;gap:var(--space-8)}.difficulty-btn{align-items:center;background:var(--color-white);border:2px solid var(--color-gray-1200);border-radius:var(--radius-12);cursor:pointer;display:flex;flex-direction:column;gap:var(--space-4);min-width:var(--width-difficulty);padding:var(--space-12);transition:var(--transition-hover)}.difficulty-btn:hover{border-color:var(--color-primary-500);transform:translateY(-1px)}.difficulty-btn.active{background:linear-gradient(135deg,var(--color-primary-500) 0,var(--color-primary-600) 100%);border-color:var(--color-primary-500);color:var(--color-white)}.stars{display:flex;gap:var(--space-1)}.star-filled{color:var(--color-warning-400)}.star-empty{color:var(--color-gray-300)}.difficulty-text{font-size:var(--text-12);font-weight:500}.basic-info-card__header{align-items:center;display:flex;justify-content:space-between}.basic-info-card__header-left{align-items:center;display:flex;gap:12px}.basic-info-card__select-label{align-items:center;display:flex;gap:6px}.basic-info-card__select-icon{align-items:center;display:inline-flex}.basic-info-card__status-hint{color:var(--color-gray-500,#64748b);font-size:12px;margin-top:6px}.choice-editor__label{margin-bottom:8px}.choice-editor__delete-btn{margin-left:8px}.choice-editor__add-btn{margin-top:8px}.choice-editor__answer-label{margin-top:12px}.explanation-part__video-field{margin-top:16px}.explanation-part__video-hint{color:var(--color-gray-500,#64748b);font-size:12px;margin-left:8px}.explanation-part__video-container{background:#000;border-radius:8px;margin-bottom:8px;overflow:hidden}.explanation-part__video{display:block;max-height:360px;width:100%}.explanation-part__file-input{display:none}.english-reading-part__questions{margin-top:12px}.english-fill-words-part__answer-label{color:var(--color-gray-500,#64748b);font-size:.9rem;margin-bottom:8px}.english-fill-words-part__answer-input{border:1px solid var(--color-gray-200,#e2e8f0);border-radius:6px;outline:none;padding:8px 12px;width:100%}.english-fill-words-part__questions{margin-top:12px}.english-group-context-card__questions{margin-bottom:12px}.english-group-context-card__question-item{align-items:flex-start;background:var(--color-gray-50,#fafafa);border:1px solid var(--color-gray-200,#e2e8f0);border-radius:10px;display:flex;gap:12px;margin-top:8px;padding:8px 10px}.english-group-context-card__question-item--option{margin-bottom:6px;margin-top:0}.english-group-context-card__question-number{align-items:center;background:rgba(59,130,246,.08);border:1px solid rgba(59,130,246,.25);border-radius:50%;color:var(--primary-color,#3b82f6);display:inline-flex;flex:0 0 28px;font-size:13px;font-weight:700;height:28px;justify-content:center;width:28px}.english-group-context-card__question-content{background:var(--color-white,#fff);border:1px solid var(--color-gray-200,#e2e8f0);border-radius:8px;color:var(--color-gray-700,#374151);flex:1;line-height:1.6;padding:6px 12px}.english-group-context-card__add-btn{margin-top:6px}.english-group-context-card__sub-question{margin-bottom:12px}.english-group-context-card__sub-question-title{font-weight:600;margin-bottom:6px}.english-group-context-card__sub-question-content{background:var(--color-white,#fff);border:1px solid var(--color-gray-200,#e2e8f0);border-radius:8px;margin-bottom:8px;padding:8px 12px}.english-group-context-card__sub-question-options{margin-top:6px}.english-group-context-card__best-option{background:#fff8db;border:1px solid #fde68a;border-radius:12px;color:#a16207;font-weight:600;padding:2px 8px}.english-group-context-card__fill-answer-label{font-weight:600}.english-group-context-card__fill-answer-value{background:var(--color-white,#fff);border:1px solid var(--color-gray-200,#e2e8f0);border-radius:8px;display:inline-block;margin-left:6px;padding:4px 10px}.english-group-context-card__correct-indicator{align-items:center;display:inline-flex;font-weight:700;gap:8px;margin-left:auto}.english-group-context-card__correct-indicator span{color:#cf1322}.english-best-option-part__option-content--row{align-items:center;flex-direction:row;gap:10px}.english-best-option-part__option-content--block{display:block}.english-best-option-part__option-input{flex:1}.english-best-option-part__checkbox{opacity:1;pointer-events:auto;position:static}.english-best-option-part__answer-label{color:var(--color-gray-500,#64748b);font-size:.9rem;margin-bottom:8px}.english-best-option-part__answer-options{display:flex;flex-wrap:wrap;gap:12px}.english-best-option-part__answer-option{align-items:center;background:var(--color-gray-50,#f8fafc);border:1px solid var(--color-gray-200,#e2e8f0);border-radius:4px;cursor:pointer;display:flex;gap:4px;padding:4px 8px}.english-best-option-part__answer-option-label{font-weight:500}.english-best-option-part__questions,.english-cloze-part__options-container{margin-top:12px}.english-cloze-part__option-content{align-items:center;flex-direction:row}.english-cloze-part__option-input{flex:1}.english-cloze-part__correct-toggle{margin-bottom:0;margin-left:12px}.english-cloze-part__questions{margin-top:12px}.help-drawer__admin-content{display:flex;flex:1;flex-direction:column;min-height:0;padding:16px 20px 12px}.import-jobs-table__file-size{color:var(--color-gray-500,#64748b);font-size:12px}.parsing-modal__content{display:flex;flex-direction:column;gap:20px;padding:1px 8px 24px}.parsing-modal__header{align-items:center;display:flex;gap:16px;padding:0 8px}.parsing-modal__spinner{animation:spin 1s linear infinite;border:3px solid var(--color-gray-200,#e2e8f0);border-radius:50%;border-top-color:var(--primary-color,#3b82f6);height:24px;min-width:24px;width:24px}.parsing-modal__status-title{color:var(--color-gray-800,#1e293b);font-size:16px;font-weight:600}.parsing-modal__status-desc{color:var(--color-gray-500,#64748b);font-size:13px;margin-top:4px}.parsing-modal__warning{align-items:center;background:var(--color-orange-50,#fff7ed);border:1px solid var(--color-orange-100,#ffedd5);border-radius:6px;color:var(--color-orange-700,#c2410c);display:flex;font-size:13px;gap:8px;margin:0 8px;padding:10px 16px}.parsing-modal__warning-icon{font-size:16px}.parsing-modal__thought-container{border:1px solid var(--color-gray-200,#e2e8f0);border-radius:8px;box-shadow:0 1px 2px rgba(0,0,0,.05);display:flex;flex-direction:column;overflow:hidden}.parsing-modal__thought-header{align-items:center;background:var(--color-gray-50,#f8fafc);border-bottom:1px solid var(--color-gray-200,#e2e8f0);color:var(--color-gray-600,#475569);display:flex;font-size:12px;font-weight:600;justify-content:space-between;padding:8px 16px}.parsing-modal__receiving-badge{align-items:center;color:var(--color-green-500,#10b981);display:flex;gap:4px}.parsing-modal__receiving-dot{background:var(--color-green-500,#10b981);border-radius:50%;height:6px;width:6px}.parsing-modal__thought-content{background:var(--color-white,#fff);font-size:14px;height:400px;line-height:1.6;overflow-y:auto;padding:20px 24px}.parsing-modal__thought-content .markdown-body p{margin-bottom:.8em}.parsing-modal__thought-content .markdown-body ol,.parsing-modal__thought-content .markdown-body ul{margin-left:0;padding-left:2em}.parsing-modal__empty-state{align-items:center;color:var(--color-gray-400,#94a3b8);display:flex;flex-direction:column;gap:12px;height:100%;justify-content:center}.parsing-modal__empty-icon{font-size:24px;opacity:.5}.question-text-preview{max-height:200px;overflow:auto}.preview-option-item{margin-bottom:12px}.preview-option-label{font-weight:600;margin-bottom:6px}.preview-answer-section{margin-top:6px}.preview-answer-label{font-weight:600}.preview-answer-tag{border-radius:4px;display:inline-block;font-size:12px;font-weight:500;margin-left:8px;padding:2px 8px}.preview-answer-tag.correct{background:#dcfce7;color:#166534}.preview-answer-tag.incorrect{background:#fee2e2;color:#991b1b}.modal-meta-row{display:flex;gap:16px;margin-bottom:12px}.modal-meta-item{flex:1}.modal-meta-item.wide{flex:2}.modal-video-section{margin-top:12px}.modal-video-container{background:#000;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden}.modal-video-player{display:block;max-height:360px;width:100%}.question-list-layout{display:grid;grid-template-columns:280px 1fr}.question-list-resizer{background:transparent;bottom:0;cursor:col-resize;position:absolute;top:0;width:8px;z-index:10}.question-list-sidebar{display:flex;flex-direction:column;height:100%}.import-modal-content{max-height:70vh;overflow-y:auto}.import-step{margin-bottom:24px}.import-step-title{color:#0f172a;font-size:16px;font-weight:600;margin-bottom:12px}.import-step-desc{color:#64748b;font-size:14px;margin-bottom:16px}.import-file-input{display:none}.import-file-label{align-items:center;border:2px dashed #d1d5db;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;justify-content:center;padding:32px;transition:all .2s}.import-file-label:hover{background:#f8fafc;border-color:#3b82f6}.import-file-icon{font-size:32px;margin-bottom:12px}.import-file-text{color:#6b7280;font-size:14px}.import-progress{margin-top:16px}.import-progress-bar{background:#e5e7eb;border-radius:4px;height:8px;overflow:hidden}.import-progress-fill{background:#3b82f6;height:100%;transition:width .3s}.import-progress-text{color:#6b7280;font-size:12px;margin-top:8px;text-align:center}.status-badge-draft{background-color:#f3f4f6;color:#6b7280}.status-badge-published{background-color:#dcfce7;color:#166534}.status-badge-archived{background-color:#fef3c7;color:#92400e}.preview-prompt-box{margin-bottom:8px;padding:8px 12px}.preview-answer-box,.preview-prompt-box{background:#fff;border:1px solid #e2e8f0;border-radius:8px}.preview-answer-box{display:inline-block;margin-left:6px;padding:4px 10px}.preview-explanation-box{background:#fff;border:1px solid #e2e8f0;border-radius:8px;margin-top:8px;padding:8px 12px}.review-header__meta{color:var(--color-gray-500,#64748b);font-size:14px;margin-left:8px}.review-form__fieldset{border:none;margin:0;padding:0;width:100%}.review-form__meta-inputs{display:flex;gap:10px}.review-preview{min-height:60vh;padding:16px 20px}.review-preview__meta{background:var(--color-gray-50,#fafafa);border:1px solid var(--color-gray-100,#f0f0f0);border-radius:6px;margin-bottom:16px;padding:12px}.review-preview__meta-row{display:flex;gap:16px;margin-bottom:8px}.review-preview__meta-row:last-child{margin-bottom:0}.review-preview__meta-item{align-items:center;display:flex}.review-preview__meta-label{color:var(--color-gray-600,#595959);font-size:13px;font-weight:500;margin-right:6px}.review-preview__meta-value{color:var(--color-gray-800,#262626);font-size:13px}.import-filter-toolbar__select{background:transparent;border:none;padding:0}.review-preview__status-badge{font-size:13px}.review-preview__status-badge--active{background-color:rgba(16,185,129,.13);color:#10b981}.review-preview__status-badge--archived{background-color:rgba(100,116,139,.13);color:#64748b}.review-preview__status-badge--draft{background-color:rgba(59,130,246,.13);color:#3b82f6}.review-preview__content-section{margin-bottom:16px}.review-preview__question-text{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:10px 16px}.review-preview__english-group{margin-bottom:16px}.review-preview__options-list{margin-bottom:12px}.review-preview__options-label{font-weight:600;margin-bottom:6px}.review-preview__option-row{align-items:flex-start;background:#fafafa;border:1px solid #e2e8f0;border-radius:10px;display:flex;gap:12px;margin-bottom:6px;padding:8px 10px}.review-preview__option-row--large{margin-bottom:10px;padding:10px 12px}.review-preview__option-label{align-items:center;background:rgba(59,130,246,.08);border:1px solid rgba(59,130,246,.25);border-radius:50%;color:#3b82f6;display:inline-flex;flex:0 0 28px;font-size:13px;font-weight:700;height:28px;justify-content:center;width:28px}.review-preview__option-label--spaced{margin-top:2px}.review-preview__option-content{background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#374151;flex:1;line-height:1.6;padding:6px 12px}.review-preview__option-content--large{padding:8px 16px}.review-preview__option-tail{align-items:center;display:inline-flex;font-weight:700;gap:8px;margin-left:auto}.review-preview__icon-check{color:#cf1322}.review-preview__question-item{margin-bottom:12px}.review-preview__question-title{font-weight:600;margin-bottom:6px;white-space:pre}.review-preview__answer-tag,.review-preview__best-answer-tag{background:#fff8db;border:1px solid #fde68a;border-radius:12px;color:#a16207;font-weight:600}.review-preview__answer-tag{padding:2px 8px}.review-preview__explanation-content{background:#fff;border:1px solid #e2e8f0;border-radius:8px;margin-top:8px;padding:8px 12px}.review-preview__explanation-placeholder{color:#8c8c8c;font-style:italic}.review-preview__question-options{margin-bottom:12px}.review-preview__answer-section{margin-bottom:16px}.review-preview__answer-badges{display:flex;flex-wrap:wrap;gap:8px}.review-preview__answer-badge{background:#fff8db;border:1px solid #fde68a;border-radius:16px;color:#a16207;font-weight:700;padding:4px 10px}.review-preview__answer-text{background:#fff8db;border:1px solid #fde68a;border-radius:6px;line-height:1.7;padding:12px 16px}.review-preview__explanation-section{background-color:transparent;border:none;border-radius:0;line-height:1.8;padding:0 0 0 12px}.review-editor-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.review-editor-header-left{align-items:center;display:flex;gap:12px}.review-editor-title{font-size:18px;margin:0}.review-editor-filename{color:#64748b}.review-editor-empty{color:#64748b;padding:16px}.review-form-fieldset{border:none;margin:0;padding:0;width:100%}.review-action-bar{align-items:center;background:#fff;border-top:1px solid #e2e8f0;bottom:0;display:flex;justify-content:space-between;left:0;padding:10px 16px;position:fixed;right:0;z-index:50}.review-action-bar-buttons{align-items:center;display:flex;gap:8px}.meta-row--four-col{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.form-input--compact{font-size:14px;padding:6px 10px;width:100%}.review-toggle-switch{border:1px solid #d1d5db;border-radius:10px;cursor:pointer;height:20px;padding:0;position:relative;transition:background-color .2s ease;width:36px}.review-toggle-switch--active{background:#3b82f6}.review-toggle-switch--inactive{background:#e5e7eb}.review-toggle-switch-dot{background:#fff;border-radius:50%;box-shadow:0 1px 3px rgba(0,0,0,.15);height:16px;position:absolute;top:2px;transition:left .2s ease;width:16px}.review-toggle-switch-dot--left{left:2px}.review-toggle-switch-dot--right{left:18px}.status-badge--active{background-color:#4caf50;color:#fff}.status-badge--draft{background-color:#ff9800;color:#fff}.status-badge--archived{background-color:#9e9e9e;color:#fff}.plan-layout{grid-template-columns:var(--question-bank-left-width,280px) 1fr}.question-header{margin-bottom:8px}.question-tags{margin-top:10px}.review-draft-status{border-radius:4px;font-size:12px;padding:4px 8px}.review-draft-status--pending{background-color:#f59e0b20;color:#b45309}.review-draft-status--draft{background-color:#3b82f620;color:#3b82f6}.review-draft-status--active{background-color:#10b98120;color:#10b981}.review-draft-status--archived{background-color:#64748b20;color:#64748b}.btn-delete-draft{margin-left:8px}.questions-layout{gap:0;grid-template-columns:var(--question-bank-left-width,280px) 1fr}.review-preview__question-text{margin-bottom:8px}.review-preview__answer-tag{background:#f0f9ff;border-radius:4px;color:#0369a1;display:inline-block;font-size:14px;padding:4px 8px}.review-preview__best-answer-tag{background:#fef3c7;border-radius:4px;color:#92400e;display:inline-block;font-size:12px;margin-left:8px;padding:2px 8px}.english-reading-editor__header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.english-reading-editor__passage{background:var(--color-white,#fff);border:1px solid var(--color-gray-200,#e2e8f0);border-radius:8px;padding:10px 16px}.english-reading-editor__questions{margin-top:8px}.english-reading-editor__option-content{align-items:center;display:flex;gap:8px}.english-reading-editor__option-input{flex:1;height:32px}.english-reading-editor__correct-toggle{white-space:nowrap}.english-reading-editor__add-btn{margin-top:12px}.english-reading-editor__actions{display:flex;justify-content:flex-start;margin-top:10px}.english-fill-words-editor{background:transparent;display:block;min-height:auto;padding:0}.english-fill-words-editor__passage{background:var(--color-white,#fff);border:1px solid var(--color-gray-200,#e2e8f0);border-radius:8px;padding:10px 16px}.english-fill-words-editor__answer-section{margin-top:12px}.english-fill-words-editor__label{margin-bottom:6px}.english-fill-words-editor__answer-input{border:1px solid var(--color-gray-200,#e2e8f0);border-radius:6px;font-size:14px;padding:8px 12px;width:100%}.english-fill-words-editor__explanation-section{margin-top:12px}.english-fill-words-editor__actions{display:flex;justify-content:flex-start;margin-top:10px}.english-best-option-editor__pool-label{margin-bottom:8px}.english-best-option-editor__pool{background:var(--color-white,#fff);border:1px solid var(--color-gray-200,#e2e8f0);border-radius:8px;padding:10px 12px}.english-best-option-editor__pool-list{display:flex;flex-direction:column;gap:8px}.english-best-option-editor__pool-item{align-items:center;display:flex;gap:8px}.english-best-option-editor__pool-item-input{flex:1;height:32px}.english-best-option-editor__pool-actions{display:flex;justify-content:flex-start;margin-top:8px}.english-best-option-editor__questions{margin-top:12px}.english-best-option-editor__question-label{margin-bottom:6px}.english-best-option-editor__explanation{margin-top:12px}.english-best-option-editor__actions{display:flex;justify-content:flex-start;margin-top:10px}.english-cloze-editor{background:transparent;display:block;min-height:auto;padding:0}.english-cloze-editor__passage{background:var(--color-white,#fff);border:1px solid var(--color-gray-200,#e2e8f0);border-radius:8px;padding:10px 16px}.english-cloze-editor__questions{margin-top:12px}.english-cloze-editor__option-content{align-items:center;display:flex;gap:8px}.english-cloze-editor__option-input{flex:1;height:32px}.english-cloze-editor__correct-toggle{align-items:center;cursor:pointer;display:flex;gap:4px;white-space:nowrap}.english-cloze-editor__toggle-text{color:var(--color-gray-600,#475569);font-size:13px}.english-cloze-editor__add-btn{margin-top:12px}.english-cloze-editor__actions{display:flex;justify-content:flex-start;margin-top:10px}.review-modal__footer{align-items:center;background:var(--color-gray-50,#fafafa);border-top:1px solid var(--color-gray-100,#f0f0f0);display:flex;justify-content:space-between;padding:16px 24px;width:100%}.review-modal__footer-left,.review-modal__footer-right{align-items:center;display:flex;gap:8px}.review-modal__footer-right{flex-wrap:wrap}.review-modal__preview-btn{background-color:var(--color-orange-400,#f59e0b)!important;border-color:var(--color-orange-400,#f59e0b)!important;color:var(--color-gray-700,#334155)!important}.review-modal__footer--start{justify-content:flex-start}.review-modal__body{min-height:60vh;padding:16px 20px}.print-view{display:none}@media print{body>*{display:none!important}body>.print-view-container,body>.print-view-container .print-view{display:block!important}body>.print-view-container .question-section,body>.print-view-container .study-content,body>.print-view-container .study-page,body>.print-view-container .study-question-item{display:none!important}body>.print-view-container{background:#fff;position:static;width:100%}body>.print-view-container .print-view{background:#fff;box-sizing:border-box;color:#000;font-family:SimSun,宋体,serif;font-size:12pt;line-height:1.8;margin:0 auto;padding:15mm;width:210mm}.print-footer,.print-header{display:none}.print-question-item{border-bottom:none;margin-bottom:16pt;padding-bottom:0;page-break-inside:avoid}.print-question-item:last-child{border-bottom:none;margin-bottom:0;page-break-inside:auto}.question-header{align-items:flex-start;display:flex;flex-wrap:nowrap;gap:6pt;margin-bottom:8pt;page-break-after:avoid}.question-number{flex-shrink:0;font-size:12px;font-weight:700;min-width:20pt}.question-content-inline{flex:1;font-size:12px;line-height:2.2}.question-content-inline .markdown-preview,.question-content-inline p,.question-content-inline>div{display:inline;margin:0;padding:0}.question-content-inline p{font-size:12px;line-height:2.2;text-indent:0}.question-content-inline p:first-child{margin-left:0;padding-left:0}.question-content-inline p+p:before{content:" "}.question-options-wrapper{margin-left:0;padding-left:0}.print-options{margin:0 0 0 20pt}.print-options,.print-options.horizontal,.print-options.vertical{display:grid;gap:4pt 12pt;grid-template-columns:1fr 1fr}.print-option{align-items:baseline;display:flex;font-size:12px;gap:6pt;line-height:1.4}.option-label{flex-shrink:0;font-size:12px;font-weight:700;min-width:16pt}.option-content{flex:1;font-size:12px;line-height:1.4}.option-content .markdown-preview{margin:0;padding:0}.option-content p{font-size:12px;line-height:1.4;margin:0}.essay-answer-space{background-image:repeating-linear-gradient(transparent,transparent 1.5mm,#ddd 0,#ddd 2mm);background-size:100% 3.5mm;margin-top:8pt;min-height:60mm}.print-question-item:last-child .essay-answer-space{page-break-inside:auto}.print-footer{color:#999;font-size:9pt;margin-top:20pt;padding-top:10pt;text-align:center}.print-view img{height:auto;max-width:100%;page-break-inside:avoid}.print-view .katex{font-size:1em}.print-view table{border-collapse:collapse;margin:10pt 0;page-break-inside:avoid;width:100%}.print-view td,.print-view th{border:.5pt solid #333;padding:6pt;text-align:left}.print-view th{background:#f0f0f0;font-weight:700}}@media screen{.print-view-container{display:none}.print-view-container.preview{background:#fff;bottom:0;display:block;left:0;overflow-y:auto;padding:20px;position:fixed;right:0;top:0;z-index:99999}.print-view-container.preview .print-view{background:#fff;color:#000;display:block;font-family:SimSun,宋体,serif;font-size:14px;line-height:1.8;margin:0 auto;max-width:210mm;padding:20px}.print-view-container.preview .print-header{border-bottom:2px solid #333;margin-bottom:30px;padding-bottom:15px;text-align:center}.print-view-container.preview .print-title{font-size:24px;margin:0 0 15px}.print-view-container.preview .print-meta{color:#666;display:flex;justify-content:space-between}.print-view-container.preview .print-question-item{border-bottom:1px solid #eee;margin-bottom:30px;padding-bottom:20px}.print-view-container.preview .question-header{align-items:center;display:flex;gap:10px;margin-bottom:10px}.print-view-container.preview .question-number{font-size:16px;font-weight:700}.print-view-container.preview .question-type-badge{background:#f0f0f0;border-radius:4px;color:#666;font-size:12px;padding:2px 8px}.print-view-container.preview .print-options.horizontal{display:flex;flex-wrap:wrap;gap:30px}.print-view-container.preview .print-options.vertical{display:flex;flex-direction:column;gap:8px}.print-view-container.preview .print-option{align-items:flex-start;display:flex;gap:8px}.print-view-container.preview .option-label{font-weight:700;min-width:24px}.print-view-container.preview .print-footer{color:#999;margin-top:30px;padding-top:15px;text-align:center}}@media print{.print-question-group{margin-bottom:16pt;page-break-inside:auto}.print-group-passage{background:#fafafa;border:none;border-radius:4pt;font-size:11pt;line-height:2;margin-bottom:12pt;padding:12pt;page-break-inside:auto;text-align:justify}.print-group-passage .markdown-preview{margin:0;padding:0}.print-group-passage p{font-size:11pt;line-height:2;margin:0 0 8pt;text-indent:2em}.print-group-passage p:last-child{margin-bottom:0}.print-group-question{margin-bottom:10pt;margin-left:0;page-break-inside:avoid}.print-group-question .question-header{margin-bottom:6pt}.print-group-question .question-number{font-size:11pt}.print-group-question .question-content-inline{font-size:11pt;line-height:1.8}.print-group-question .print-options{margin-left:20pt}.print-group-question .print-option{font-size:11pt}}@media screen{.print-view-container.preview .print-question-group{margin-bottom:30px}.print-view-container.preview .print-group-passage{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;font-size:14px;line-height:2;margin-bottom:20px;padding:20px;text-align:justify}.print-view-container.preview .print-group-passage p{margin:0 0 12px;text-indent:2em}.print-view-container.preview .print-group-passage p:last-child{margin-bottom:0}.print-view-container.preview .print-group-question{margin-bottom:16px;padding-left:0}.print-view-container.preview .print-group-question .question-content-inline{font-size:14px}}.answer-section{background:var(--color-gray-50);border-left:4px solid var(--color-blue-500);border-radius:var(--radius-8);margin-top:var(--space-24);padding:var(--space-16)}.answer-section h4{color:var(--color-blue-900);font-size:var(--text-14);font-weight:600;margin:0 0 var(--space-12) 0}.answer-content{color:var(--color-gray-700);line-height:1.6}.answer-content p{margin:0 0 var(--space-8) 0}.answer-content p:last-child{margin-bottom:0}.correctness-indicator{align-items:center;border-radius:var(--radius-4);display:inline-flex;font-size:var(--text-12);font-weight:500;gap:var(--space-6);margin-left:var(--space-8);padding:var(--space-4) var(--space-8)}.correctness-indicator.correct{background:var(--color-success-100);color:var(--color-success-800)}.correctness-indicator.wrong{background:var(--color-danger-100);color:var(--color-danger-800)}.reference-answer{background:var(--color-gray-50);border-left:4px solid var(--color-gray-1200);border-radius:var(--radius-6);margin:var(--space-16) 0;padding:var(--space-12)}.reference-answer strong{color:var(--color-gray-700);font-weight:600}.question-answer-section.wrong-answer .reference-answer{background:var(--color-error-bg);border-left-color:var(--color-red-600)}.question-answer-section.wrong-answer .reference-answer strong{color:var(--color-red-600);font-size:var(--text-16);font-weight:900;text-shadow:0 1px var(--space-2) rgba(220,38,38,.1)}.answer-section{margin:var(--space-12) 0 var(--space-16)}.answer-badges{display:flex;flex-wrap:wrap;gap:var(--space-8)}.answer-badge{border:1px solid var(--color-warning-400);border-radius:var(--radius-full);color:var(--color-gray-2300);font-weight:700;padding:var(--space-4) var(--space-12)}.answer-badge,.answer-text{background:var(--color-gray-3000)}.answer-text{border:1px solid var(--color-warning-400);border-radius:var(--radius-6);color:var(--color-gray-700);line-height:1.7}.answer-text,.question-explanation{padding:var(--space-12) var(--space-16)}.question-explanation{background:var(--color-gray-3100);border:1px solid var(--color-gray-200);border-left:4px solid var(--color-warning-400);border-radius:var(--radius-12);box-shadow:var(--shadow-question);margin-top:var(--space-12)}.question-explanation h4{color:var(--color-gray-2200);font-size:var(--text-16);font-weight:600;margin:0 0 var(--space-8) 0}.explanation-content{line-height:1.8;min-height:var(--space-60);padding-left:var(--space-12)}.qm-icon-btn{align-items:center;background:hsla(0,0%,100%,.9);border:none;border-radius:var(--radius-full);box-shadow:0 var(--space-2) var(--space-6) rgba(0,0,0,.15);color:var(--color-gray-2100);cursor:pointer;display:inline-flex;height:var(--width-qm-icon);justify-content:center;line-height:1;position:absolute;right:var(--space-12);top:50%;transform:translateY(-50%);width:var(--width-qm-icon)}.qm-icon-btn:hover:not(:disabled){background:var(--color-white)}.qm-icon-btn:disabled{cursor:not-allowed;opacity:.6}.study-page{padding:var(--space-32) calc(var(--space-80)*2)}.study-content{flex:1;margin-bottom:var(--space-32);overflow-y:auto}.question-section{display:block}.question-section,.question-type-section{background:var(--color-white);border:1px solid var(--color-gray-1200);border-radius:var(--radius-8);box-shadow:var(--shadow-card-hover);margin-bottom:var(--space-40);overflow:hidden}.study-page .section-title{font-size:var(--text-18)!important;font-weight:600;margin:0;position:relative}.section-header,.study-page .section-title{background:linear-gradient(135deg,var(--color-primary-500) 0,var(--color-primary-600) 100%);color:var(--color-white);padding:var(--space-16) var(--space-24)}.study-page .section-header h2{font-size:var(--text-18)!important;font-weight:600;margin:0}.questions-list{padding:0}.english-question-group{margin-bottom:var(--space-16)}.english-question-group:last-child{margin-bottom:0}.group-passage{background:var(--color-gray-1100);border:none;border-radius:var(--radius-8);font-size:var(--text-14);line-height:1.8;margin:var(--space-16) 0;padding:var(--space-16) var(--space-24);text-align:justify}.group-passage .markdown-preview{background:transparent;margin-bottom:0!important;padding:0}.group-passage .markdown-preview p{margin-bottom:0!important}.study-footer{align-items:center;background:var(--color-white);border-radius:var(--radius-8);bottom:0;box-shadow:0 -2px var(--space-12) rgba(0,0,0,.1);display:flex;justify-content:space-between;margin-top:var(--space-32);padding:var(--space-24);position:sticky}.floating-actions-left{left:var(--space-24)}.floating-actions-left,.floating-actions-right{bottom:var(--space-24);display:flex;gap:var(--space-12);position:fixed;z-index:var(--z-floating)}.floating-actions-right{right:var(--space-24)}.floating-btn{align-items:center;background:var(--color-white);border:none;border-radius:var(--radius-full);box-shadow:var(--shadow-floating);color:var(--color-gray-700);cursor:pointer;display:inline-flex;font-size:var(--text-24);height:var(--width-floating);justify-content:center;transition:transform var(--transition-base),box-shadow var(--transition-base);width:var(--width-floating)}.floating-btn:hover:not(:disabled){box-shadow:var(--shadow-floating-hover);transform:translateY(-2px)}.floating-btn:disabled{cursor:not-allowed;opacity:.6}.floating-btn--primary{background:linear-gradient(135deg,var(--color-blue-500) 0,var(--color-blue-600) 100%);color:var(--color-white)}.floating-btn--secondary{background:var(--color-white);border:1px solid var(--color-gray-200)}.floating-btn--success{background:var(--color-success-800);box-shadow:0 6px var(--space-24) rgba(21,128,61,.35);color:var(--color-white)}.floating-btn--success:hover:not(:disabled){box-shadow:0 var(--space-12) var(--space-24) rgba(21,128,61,.5)}.floating-btn--warning{background:var(--color-warning-400);box-shadow:0 6px var(--space-24) rgba(245,158,11,.35);color:var(--color-white)}.floating-btn--warning:hover:not(:disabled){box-shadow:0 var(--space-12) var(--space-24) rgba(245,158,11,.5)}.floating-btn svg{display:block}@media (max-width:768px){.floating-btn{font-size:var(--text-24);height:var(--width-floating);width:var(--width-floating)}}@media print{.floating-actions-left,.floating-actions-right{display:none!important}}.progress-info{color:var(--color-gray-700);font-size:var(--text-14)}.manual-grading{align-items:center;display:flex;gap:var(--space-8);margin-top:var(--space-12)}.manual-grading-label{color:var(--color-gray-700);font-size:var(--text-13);font-weight:500}.grading-btn{border:1px solid;border-radius:var(--radius-4);cursor:pointer;font-size:var(--text-12);font-weight:500;padding:var(--space-4) var(--space-12);transition:var(--transition-base)}.grading-btn.correct{background:var(--color-white);border-color:var(--color-success-500);color:var(--color-success-500)}.grading-btn.correct.active,.grading-btn.correct:hover{background:var(--color-success-500);color:var(--color-white)}.grading-btn.wrong{background:var(--color-white);border-color:var(--color-red-600);color:var(--color-red-600)}.grading-btn.wrong.active,.grading-btn.wrong:hover{background:var(--color-red-600);color:var(--color-white)}.result-badge{align-items:center;border-radius:var(--radius-4);display:inline-flex;font-size:var(--text-12);font-weight:700;gap:var(--space-4);margin-left:var(--space-8);padding:var(--space-4) var(--space-8);text-shadow:0 1px var(--space-2) rgba(0,0,0,.1)}.result-badge.correct{background:var(--color-success-100);border:1px solid var(--color-success-500);color:var(--color-success-800)}.result-badge.wrong{background:var(--color-danger-100);border:1px solid var(--color-red-600);color:var(--color-danger-800);font-size:var(--text-13);font-weight:900;text-shadow:0 1px var(--space-2) rgba(220,38,38,.2)}.question-result-badges{align-items:center;display:flex;gap:var(--space-8)}.manual-judgment{background:var(--color-gray-1300);border:1px solid var(--color-gray-1200);border-radius:var(--radius-6);margin:var(--space-16) 0;padding:var(--space-12)}.manual-judgment label{color:var(--color-gray-700);display:block;font-weight:600;margin-bottom:var(--space-8)}.judgment-buttons{display:flex;gap:var(--space-8)}.judgment-btn{background:var(--color-white);border:2px solid;border-radius:var(--radius-6);cursor:pointer;font-size:var(--text-13);font-weight:600;padding:var(--space-6) var(--space-12);transition:var(--transition-base)}.judgment-btn.correct{border-color:var(--color-success-500);color:var(--color-success-500)}.judgment-btn.correct.active,.judgment-btn.correct:hover{background:var(--color-success-500);box-shadow:var(--shadow-correct);color:var(--color-white);transform:translateY(-1px)}.judgment-btn.wrong{border-color:var(--color-red-600);color:var(--color-red-600);font-weight:700}.judgment-btn.wrong.active,.judgment-btn.wrong:hover{background:var(--color-red-600);box-shadow:var(--shadow-wrong);color:var(--color-white);font-weight:900;transform:translateY(-1px)}.correct-indicator{color:var(--color-success-500);font-size:var(--text-14);font-weight:700;margin-left:var(--space-8)}.study-header{background:linear-gradient(135deg,var(--color-primary-500) 0,var(--color-primary-600) 100%);border:1px solid var(--color-glass-border);border-radius:var(--radius-12);box-shadow:var(--shadow-lg);color:var(--color-white);margin-bottom:var(--space-24);padding:var(--space-24)}.study-header-content{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-24)}.study-header .btn:disabled{cursor:not-allowed;filter:saturate(70%);opacity:.55}.btn-back{background:var(--color-glass);border:1px solid var(--color-glass-border);border-radius:var(--radius-8);color:var(--color-white);cursor:pointer;flex-shrink:0;font-size:var(--text-14);font-weight:500;padding:var(--space-8) var(--space-16);transition:var(--transition-slow);white-space:nowrap}.btn-back:hover{background:hsla(0,0%,100%,.3);transform:translateY(-1px)}.study-meta{display:flex;flex:1;flex-wrap:wrap;gap:var(--space-16)}.meta-item{align-items:center;background:var(--color-glass);border-radius:var(--radius-6);display:flex;font-size:var(--text-13);gap:var(--space-6);padding:var(--space-6) var(--space-12);transition:var(--transition-slow);white-space:nowrap}.meta-item:hover{background:hsla(0,0%,100%,.15)}.meta-label{font-weight:500;opacity:.9}.meta-value{font-weight:600}.essay-input,.fill-blank-input{margin-top:var(--space-4)}.essay-input textarea,.fill-blank-input textarea{border:2px solid var(--color-gray-1200);border-radius:var(--radius-6);font-size:var(--text-14);line-height:1.5;padding:var(--space-12);resize:vertical;transition:border-color var(--transition-base);width:100%}.essay-input textarea:focus,.fill-blank-input textarea:focus{border-color:var(--color-blue-500);box-shadow:var(--shadow-filter-focus);outline:none}.study-question-options{column-gap:var(--space-12);display:grid;margin-left:var(--space-24);margin-top:0;max-width:none;padding-right:var(--space-24);row-gap:var(--space-4);width:100%}.study-question-options,.study-question-options.auto-layout-1,.study-question-options.auto-layout-2,.study-question-options.auto-layout-4{grid-template-columns:repeat(2,minmax(0,1fr))}.study-option-label{align-items:center;background:transparent;border:none;border-radius:var(--radius-6);box-sizing:border-box;cursor:pointer;display:grid;gap:var(--space-8);grid-template-columns:var(--space-16) 1fr auto;margin-right:var(--space-16);max-width:none;padding:var(--space-6) var(--space-12);position:relative;transition:background-color var(--transition-fast),border-color var(--transition-fast);width:100%}.study-option-label:hover{background-color:var(--color-gray-1300);box-shadow:none}.study-option-label input[type=checkbox]:checked+.study-option-text,.study-option-label input[type=radio]:checked+.study-option-text{color:var(--color-blue-900);font-weight:500}.study-option-label:has(input:checked){background-color:var(--color-gray-2800);box-shadow:none}.study-option-label input[type=checkbox],.study-option-label input[type=radio]{accent-color:var(--color-blue-500);align-self:center;cursor:pointer;flex-shrink:0;height:var(--space-16);margin:0;width:var(--space-16)}.study-option-text{word-wrap:break-word;align-self:center;color:var(--color-gray-700);flex:1;line-height:1.4;margin-left:0;overflow-wrap:break-word;width:100%}.study-option-label .correct-indicator,.study-option-label .wrong-indicator{align-self:center}.study-option-label .markdown-preview{background:transparent;line-height:1.4;padding:0}.study-option-label .markdown-preview p,.study-option-text p{margin:0}@media screen and (max-width:768px){.study-question-options,.study-question-options.auto-layout-2,.study-question-options.auto-layout-4{grid-template-columns:1fr}}@media print{@page{size:A4 portrait;margin:var(--space-8) var(--space-8) var(--space-16) var(--space-8);@bottom-right{color:var(--color-gray-600);content:"第 " counter(page) " 页";font-family:SimSun,宋体,serif;font-size:var(--text-12);margin-bottom:var(--space-4);padding-bottom:var(--space-2)}}body,html{background:var(--color-white)!important;font-family:SimSun,宋体,serif!important;font-size:var(--text-12);line-height:1.4!important;overflow:visible!important}.app-header,.btn,.manual-judgment,.markdown-editor-tabs,.markdown-toolbar,.result-badge,.study-footer,.study-header{display:none!important}.study-page{background:var(--color-white)!important;max-width:none!important;padding:0}.study-content,.study-page{font-family:SimSun,宋体,serif!important;font-size:var(--text-12);margin:0!important;width:100%!important}.study-content{border:none;box-shadow:none!important;column-count:1;column-fill:auto;-moz-column-fill:auto;column-gap:0;column-rule:none;max-width:100%}.question-section,.question-type-section{border:none!important;box-shadow:none!important}.question-section,.question-type-section,.study-question-item{break-inside:auto;font-family:SimSun,宋体,serif!important;font-size:var(--text-12);page-break-inside:auto}.study-question-item{border-bottom:none!important;line-height:1.2!important;margin:var(--space-2) 0!important;padding:var(--space-4) var(--space-2)!important}.study-question-content{margin-bottom:0!important}.study-question-header{gap:0!important}.study-question-number{margin-right:0!important;min-width:var(--space-24)!important}.study-question-options{margin-left:var(--space-24)!important}.study-question-content>p:first-child{margin-top:0!important}.study-question-content p{margin-bottom:0!important;margin-top:0!important}.study-question-content .markdown-preview{padding:0!important}.study-question-text{line-height:1.2!important;margin-bottom:var(--space-2)!important}.section-title{background:var(--color-white)!important;border-bottom:none!important;color:var(--color-gray-1500)!important;column-span:none;font-weight:700!important;padding-bottom:var(--space-2)!important;page-break-inside:avoid}.section-title,.study-question-options{font-family:SimSun,宋体,serif!important;font-size:var(--text-12)}.study-question-options{column-gap:var(--space-2)!important;display:grid;margin-left:var(--space-32)!important;margin-top:0!important;row-gap:var(--space-2)!important}.study-question-options,.study-question-options.auto-layout-1,.study-question-options.auto-layout-2,.study-question-options.auto-layout-4{grid-template-columns:1fr 1fr!important}.study-option-label{hyphens:auto;word-break:break-word}.study-option-label.short-option{max-width:120mm}.study-option-label.medium-option{max-width:80mm}.study-option-label.long-option{max-width:60mm}.study-option-label{background:transparent!important;border:none!important;box-shadow:none!important;display:block!important;font-family:SimSun,宋体,serif!important;font-size:var(--text-12);line-height:1.1!important;margin:0!important;padding:var(--space-1) var(--space-2)!important}.study-option-label input[type=checkbox],.study-option-label input[type=radio]{display:none}.essay-input .essay-answer-preview,.essay-input .markdown-editor,.fill-blank-input .markdown-editor{display:none!important}.fill-blank-input:after{background-image:repeating-linear-gradient(transparent,transparent var(--space-4),var(--color-gray-1200) var(--space-4),var(--color-gray-1200) var(--space-6));background-size:100% var(--space-6);content:"";display:block;min-height:35mm}.essay-input:after{background-image:repeating-linear-gradient(transparent,transparent var(--space-6),var(--color-gray-1200) var(--space-6),var(--color-gray-1200) var(--space-8));background-size:100% var(--space-8);content:"";display:block;min-height:80mm}.fill-blank-input:after{background:none!important;display:none!important;min-height:0!important}.study-content{padding-bottom:0!important}.question-section:last-child{margin-bottom:0!important;padding-bottom:0!important}.question-section:last-child .study-question-item:last-child{border-bottom:none!important;margin-bottom:0!important;padding-bottom:0!important}.question-section:last-child .study-question-item:last-child .study-question-content,.question-section:last-child .study-question-item:last-child .study-question-options{margin-bottom:0!important}.question-section:last-child .study-question-item:last-child .essay-input:after{background:none!important;display:none!important;min-height:0!important}.print-first-page-info,.print-first-page-info .info-item{display:none!important}@page :first{margin-top:0}::-webkit-scrollbar{display:none!important;height:0!important;width:0!important}*{-ms-overflow-style:none!important;scrollbar-width:none!important}}.study-question-item{border-bottom:none;box-sizing:border-box;display:block;max-width:none;padding:var(--space-16);width:100%}.study-question-item:last-child{border-bottom:none}.study-question-header{align-items:baseline;display:flex;gap:.25em;line-height:2;margin-bottom:var(--space-1)}.study-question-header :is(.markdown-preview,.markdown-preview p){background:transparent!important;line-height:2!important;margin:0!important;padding:0!important}.study-question-number{color:var(--color-gray-700);flex-shrink:0;font-size:var(--text-16);font-weight:600;line-height:1.4;margin-top:0;min-width:var(--space-32)}.study-question-type-badge{background:var(--color-blue-100);border-radius:var(--radius-4);color:var(--color-gray-2000);font-size:var(--text-12);font-weight:500;padding:var(--space-4) var(--space-8)}.study-question-content{box-sizing:border-box;display:inline;margin-bottom:0;max-width:none;width:auto}.study-question-content p,.study-question-content>p:first-child{margin-top:0}.study-question-text{color:var(--color-gray-700);line-height:1.6;margin-bottom:var(--space-12)}.study-question-text p{margin:0 0 var(--space-12) 0}.study-question-text img{border-radius:var(--radius-4);height:auto;margin:var(--space-12) 0;max-width:100%}.katex{font-size:1.1em}.katex-display{margin:var(--space-16) 0}.study-question-content .markdown-preview{margin:0;padding:0}.study-question-content .markdown-preview p{margin:0}@media (max-width:768px){.study-page{padding:var(--space-12)}.study-header{flex-direction:column;gap:var(--space-24)}.study-meta{flex-direction:column;gap:var(--space-8)}.study-actions{justify-content:stretch;width:100%}.study-actions .btn{flex:1;justify-content:center}.question-content{margin-left:0}.question-header{flex-wrap:wrap}.study-footer{flex-direction:column;gap:var(--space-16)}.study-footer .btn-large{justify-content:center;width:100%}}.loading{align-items:center;color:var(--color-gray-700);display:flex;font-size:var(--text-16);height:var(--space-200);justify-content:center}.error-page{background:var(--color-white);border-radius:var(--radius-8);box-shadow:var(--shadow-card-hover);padding:var(--space-60) var(--space-24);text-align:center}.error-page h2{color:var(--color-red-600);margin-bottom:var(--space-12)}.error-page p{color:var(--color-gray-700);margin-bottom:var(--space-24)}.study-page.submitted .study-question-item{position:relative}.study-page.submitted .study-question-header{padding-right:var(--space-120)}.study-page.submitted .study-option-label{pointer-events:none}.study-page.submitted .study-option-label.user-selected{background-color:var(--color-gray-2400);border:2px solid var(--color-blue-500)}.study-page.submitted .study-option-label.correct-answer{background-color:var(--color-gray-2500);border:2px solid var(--color-success-500)}.study-page.submitted .study-option-label.wrong-answer{background-color:var(--color-gray-2900);border:2px solid var(--color-red-600)}.study-page.submitted .essay-input textarea,.study-page.submitted .fill-blank-input textarea{background-color:var(--color-gray-1300);border-color:var(--color-gray-300);pointer-events:none}.single-choice .question-type-badge{background:var(--color-gray-2400);color:var(--color-blue-900)}.multiple-choice .question-type-badge{background:var(--color-gray-2500);color:var(--color-success-800)}.fill-blank .question-type-badge{background:var(--color-gray-2600);color:var(--color-warning-800)}.essay .question-type-badge{background:var(--color-gray-2700);color:var(--color-red-900)}.question-summary .ai-review-container{margin-top:var(--space-8);text-align:right}.question-summary .ai-review-button{border-radius:var(--radius-full);font-size:var(--text-12);padding:var(--space-4) var(--space-14)}.summary-section{background:var(--color-warning-100);border:1px solid var(--color-warning-400);border-radius:var(--radius-6);margin-top:var(--space-16);padding:var(--space-12)}.summary-section label{color:var(--color-warning-800);display:block;font-size:var(--text-13);font-weight:500;margin-bottom:var(--space-6)}.summary-section textarea{background:var(--color-white);border:1px solid var(--color-warning-400);border-radius:var(--radius-4);font-size:var(--text-13);line-height:1.4;min-height:var(--space-60);padding:var(--space-8);resize:vertical;width:100%}.summary-section textarea:focus{border-color:var(--color-warning-400);box-shadow:0 0 0 var(--space-2) rgba(245,158,11,.1);outline:none}.btn-success{background:linear-gradient(135deg,var(--color-success-500) 0,var(--color-success-800) 100%);box-shadow:0 var(--space-2) var(--space-4) rgba(16,185,129,.3);color:var(--color-white)}.btn-success:hover:not(:disabled){background:linear-gradient(135deg,var(--color-success-800) 0,var(--color-success-800) 100%);box-shadow:0 var(--space-4) var(--space-8) rgba(16,185,129,.4);transform:translateY(-1px)}.btn-success:disabled{background:var(--color-gray-1100);box-shadow:none;cursor:not-allowed;transform:none}.batch-actions-bar{align-items:center;background-color:var(--color-blue-100);border-radius:var(--radius-4);display:flex;gap:var(--space-12);margin-bottom:var(--space-16);padding:var(--space-8) var(--space-16)}.batch-actions-bar__count{color:var(--color-text-tertiary);font-size:var(--text-14)}.btn{align-items:center;border:1px solid transparent;border-radius:var(--radius-6);display:inline-flex;font-size:var(--text-14);gap:var(--space-8);justify-content:center;padding:var(--space-10) var(--space-20);transition:var(--transition-base)}.btn:disabled{cursor:not-allowed;opacity:.6}.btn-primary{background:var(--color-blue-500);border-color:var(--color-blue-500);color:var(--color-white)}.btn-primary:hover:not(:disabled){background:var(--color-blue-600);border-color:var(--color-blue-600);box-shadow:var(--shadow-btn-hover)}.btn-secondary{background:var(--color-white);border-color:var(--color-gray-300);color:var(--color-gray-700)}.btn-secondary:hover:not(:disabled){background:var(--color-gray-50);border-color:var(--color-gray-400)}.btn-light{background:var(--color-white);border:1px solid var(--color-gray-200);box-shadow:var(--shadow-sm);color:var(--color-gray-700)}.btn-light:hover:not(:disabled){background:var(--color-gray-50);border-color:var(--color-slate-300);box-shadow:var(--shadow-md);color:var(--color-gray-900)}.btn-link{background:transparent;border:none;box-shadow:none;color:var(--color-blue-600);padding:0}.btn-link:hover:not(:disabled){background:transparent;box-shadow:none;color:var(--color-blue-800);text-decoration:underline;transform:none}.btn-danger{background:var(--color-error-500);border-color:var(--color-error-500);color:var(--color-white)}.btn-danger:hover:not(:disabled){background:var(--color-red-600);border-color:var(--color-red-600);box-shadow:var(--shadow-error)}.btn-sm{border-radius:var(--radius-4);font-size:var(--text-13);padding:var(--space-6) var(--space-12)}.btn-lg{border-radius:var(--radius-8);font-size:var(--text-16);padding:var(--space-12) var(--space-24)}@media (max-width:640px){.btn{width:100%}}.data-table-wrapper{overflow-anchor:none;overflow-x:auto;width:100%}.data-table{border-collapse:collapse;contain:layout;font-size:14px;line-height:1.5;width:100%}.data-table--sm{font-size:13px}.data-table--sm td,.data-table--sm th{padding:8px 12px}.data-table--md{font-size:14px}.data-table--md td,.data-table--md th{padding:12px 16px}.data-table--lg{font-size:15px}.data-table--lg td,.data-table--lg th{padding:16px 20px}.data-table thead{background-color:#f9fafb;position:sticky;top:0;z-index:10}.data-table th{border-bottom:1px solid #e5e7eb;color:#374151;contain:layout;text-align:left;white-space:nowrap}.data-table__header-cell{align-items:center;display:flex;gap:6px}.data-table__sortable{cursor:pointer;transition:background-color .2s ease;user-select:none;will-change:background-color}.data-table__sortable:hover{background-color:#f3f4f6}.data-table__sort-icon{align-items:center;color:#9ca3af;display:inline-flex;justify-content:center;transition:color .2s ease;will-change:color}.data-table__sort-icon--active{color:#3b82f6}.data-table tbody{contain-intrinsic-size:0 500px;content-visibility:auto}.data-table tbody tr{contain:layout paint;transition:background-color .2s ease;will-change:background-color}.data-table tbody tr:hover{background-color:#f9fafb}.data-table td{border-bottom:1px solid #e5e7eb;color:#4b5563}.data-table--striped tbody tr:nth-child(2n){background-color:#fafafa}.data-table--striped tbody tr:nth-child(2n):hover{background-color:#f3f4f6}.data-table--bordered{border:1px solid #e5e7eb}.data-table--bordered td,.data-table--bordered th{border-right:1px solid #e5e7eb}.data-table--bordered td:last-child,.data-table--bordered th:last-child{border-right:none}.data-table__checkbox-cell{text-align:center;width:48px}.data-table__checkbox-cell input[type=checkbox]{cursor:pointer;height:16px;width:16px}.data-table__expand-cell{text-align:center;width:40px}.data-table__expand-btn{align-items:center;background:transparent;border:none;color:#6b7280;cursor:pointer;display:inline-flex;height:24px;justify-content:center;padding:0;transition:transform .2s ease,color .2s ease;width:24px;will-change:transform,color}.data-table__expand-btn:hover{color:#374151}.data-table__expand-btn--expanded{transform:rotate(90deg)}.data-table__actions-cell{white-space:nowrap;width:auto}.data-table__actions{align-items:center;display:flex;gap:8px}.data-table__action-btn{align-items:center;background:transparent;border:none;border-radius:4px;color:#3b82f6;cursor:pointer;display:inline-flex;font-size:13px;gap:4px;padding:4px 8px;transition:background-color .2s ease;will-change:background-color}.data-table__action-btn:hover{background-color:#eff6ff}.data-table__action-btn--danger{color:#ef4444}.data-table__action-btn--danger:hover{background-color:#fef2f2}.data-table__action-btn--disabled{color:#9ca3af;cursor:not-allowed}.data-table__action-btn--disabled:hover{background-color:transparent}.data-table__row--selected{background-color:#eff6ff!important}.data-table__row--selected:hover{background-color:#dbeafe!important}.data-table__expanded-row{background-color:#f9fafb}.data-table__expanded-content{padding:16px}.data-table__loading{align-items:center;color:#6b7280;display:flex;flex-direction:column;gap:12px;justify-content:center;padding:48px}.data-table__spinner{animation:data-table-spin .8s linear infinite;border:3px solid #e5e7eb;border-radius:50%;border-top-color:#3b82f6;height:32px;width:32px;will-change:transform}@keyframes data-table-spin{to{transform:rotate(1turn)}}.data-table__empty-row,.data-table__empty-row:hover{background-color:transparent!important}.data-table__empty-cell{border-bottom:none;padding:48px 16px;text-align:center}.data-table--virtual tbody{contain-intrinsic-size:0 1000px;content-visibility:auto}.data-table--virtual tbody tr{contain:strict;content-visibility:auto}@media (max-width:768px){.data-table-wrapper{border-radius:0}.data-table--md td,.data-table--md th{padding:10px 12px}.data-table__actions{flex-wrap:wrap}}.drawer-backdrop{align-items:stretch;background:rgba(15,23,42,.45);contain:layout paint;display:flex;inset:0;justify-content:flex-end;position:fixed;will-change:opacity;z-index:1100}.drawer-backdrop.closing{animation:fadeOut .2s ease-out forwards}.drawer-panel{animation:drawerSlideIn .3s ease-out;background:#fff;border-radius:16px 0 0 16px;box-shadow:-12px 0 30px rgba(15,23,42,.25);contain:layout paint style;display:flex;flex-direction:column;max-width:60vw;transform:translateX(0);width:min(60vw,100%);will-change:transform}.drawer-panel.closing{animation:drawerSlideOut .2s ease-out forwards}.drawer-header{align-items:center;background:#f9fafb;border-bottom:1px solid #e5e7eb;contain:layout;display:flex;flex-shrink:0;justify-content:space-between;padding:16px 20px}.drawer-title{color:#111827;font-size:16px;font-weight:600;margin:0}.drawer-close-btn{background:transparent;border:none;border-radius:6px;color:#6b7280;cursor:pointer;font-size:22px;line-height:1;padding:6px;transition:all .2s ease;will-change:background-color,color}.drawer-close-btn:hover{background:#e5e7eb;color:#111827}.drawer-body{flex:1;min-height:0;overflow-anchor:none;overflow-y:auto;padding:16px 20px 20px}.drawer-panel--large .drawer-body{contain-intrinsic-size:0 400px;content-visibility:auto}.drawer-panel--small{max-width:400px;width:min(400px,100%)}.drawer-panel--large{max-width:80vw;width:min(80vw,100%)}@media (max-width:768px){.drawer-panel{animation:drawerSlideUp .3s ease-out;border-radius:16px 16px 0 0;max-width:100%;width:100%}.drawer-panel.closing{animation:drawerSlideDown .2s ease-out forwards}}@keyframes drawerSlideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes drawerSlideDown{0%{transform:translateY(0)}to{transform:translateY(100%)}}.drawer-stack-item{transform:translateZ(0);will-change:transform}.drawer-section{contain:content;margin-bottom:20px}.drawer-section:last-child{margin-bottom:0}.drawer-section__title{border-bottom:1px solid #e5e7eb;color:#374151;font-size:14px;font-weight:600;margin:0 0 12px;padding-bottom:8px}.source-dropdown-selector{position:relative;width:100%}.source-dropdown-selector .source-input-container{background:#fff;border:1px solid #d9d9d9;border-radius:6px;display:flex;min-height:40px;padding:8px;transition:all .2s ease}.source-dropdown-selector .source-input-container:focus-within{border-color:#94a3b8;box-shadow:0 0 0 2px rgba(148,163,184,.2)}.source-dropdown-selector .source-item{align-items:center;background:#f1f5f9;border-radius:12px;box-shadow:0 1px 2px rgba(0,0,0,.06);color:#334155;display:inline-flex;font-size:12px;font-weight:500;padding:4px 8px}.source-dropdown-selector .source-remove{align-items:center;background:none;border:none;border-radius:50%;color:#334155;cursor:pointer;display:flex;font-size:16px;height:16px;justify-content:center;line-height:1;margin-left:6px;transition:all .2s ease;width:16px}.source-dropdown-selector .source-remove:hover{background:rgba(15,23,42,.06);color:#0f172a}.source-dropdown-selector .source-input{flex:1;font-size:14px;min-width:160px;padding:4px 0}.source-dropdown-selector .dropdown-header{background:#fafafa;border-bottom:1px solid #f0f0f0;color:#666;font-size:12px;font-weight:600;padding:8px 12px}.source-dropdown-selector .dropdown-divider{background:#f0f0f0;height:1px;margin:4px 0}.source-dropdown-selector .source-option{border-bottom:1px solid #f5f5f5;cursor:pointer;padding:12px;transition:all .2s ease}.source-dropdown-selector .source-option:hover{background:#f8f9fa}.source-dropdown-selector .source-option:last-child{border-bottom:none}.source-dropdown-selector .create-new{background:#f0fff4;border-left:3px solid #10b981}.source-dropdown-selector .create-new:hover{background:#ecfdf5}.source-dropdown-selector .source-info{display:flex;flex-direction:column;gap:2px}.source-dropdown-selector .source-name{color:#333;font-size:14px;font-weight:500}.source-dropdown-selector .create-new .source-name{color:#10b981}.source-dropdown-selector .source-meta{color:#999;font-size:12px}.source-dropdown-selector .loading-item,.source-dropdown-selector .no-options{color:#999;font-size:14px;padding:16px 12px;text-align:center}.searchable-multi-select .source-option-content{align-items:center;display:flex;justify-content:space-between;width:100%}.searchable-multi-select .source-info{display:flex;flex:1;flex-direction:column}.searchable-multi-select .source-name{color:#333;font-weight:500;margin-right:6px}.searchable-multi-select .tag{border-radius:4px;font-size:10px;margin-left:4px;padding:1px 4px}.searchable-multi-select .tag-private{background:#fef3c7;color:#d97706}.searchable-multi-select .tag-public{background:#dbeafe;color:#2563eb}.searchable-multi-select .source-meta{color:#999;font-size:12px;margin-top:2px}.searchable-multi-select .source-actions{display:flex;gap:4px}.searchable-multi-select .icon-btn{background:none;border:none;cursor:pointer;opacity:.6;padding:4px}.searchable-multi-select .icon-btn:hover{background:#f3f4f6;border-radius:4px;opacity:1}.searchable-multi-select .icon-btn.danger:hover{background:#fee2e2;color:red}.searchable-multi-select .source-edit-row{align-items:center;display:flex;gap:4px}.searchable-multi-select .source-edit-input{border:1px solid #ccc;border-radius:4px;font-size:12px;padding:2px 4px}.searchable-multi-select .btn-xs{background:#fff;border:1px solid #ccc;border-radius:4px;cursor:pointer;font-size:12px;padding:2px 6px}.searchable-multi-select .btn-primary{background:#3b82f6;border-color:#3b82f6;color:#fff}.empty-state{align-items:center;box-sizing:border-box;display:flex;flex-direction:column;gap:16px;grid-column:1/-1;justify-content:center;min-height:200px;padding:40px 24px;text-align:center;width:100%}.empty-state--compact{gap:12px;min-height:120px;padding:24px 16px}.empty-state--card{background:#fff;border:1px solid var(--color-gray-200);border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,.05)}.empty-state--small{min-height:120px;padding:24px 16px}.empty-state--small .empty-state__title{font-size:14px}.empty-state--small .empty-state__desc{font-size:12px}.empty-state--large{min-height:280px;padding:60px 32px}.empty-state--large .empty-state__title{font-size:20px}.empty-state--large .empty-state__desc{font-size:16px;max-width:400px}.empty-state__icon{align-items:center;display:flex;justify-content:center;margin-bottom:8px}.empty-state__title{color:#334155;font-size:16px;font-weight:600;margin-bottom:4px}.empty-state__desc{color:#64748b;font-size:14px;line-height:1.5;max-width:320px}.empty-state__action{margin-top:8px}.feedback-page{padding-bottom:var(--space-40,40px)}.feedback-page .status-badge{border-radius:var(--radius-full,999px);display:inline-block;font-size:var(--text-12,12px);font-weight:500;padding:var(--space-2,2px) var(--space-8,8px)}.feedback-page .status-pending{background-color:var(--color-warning-100,#fef9c3);color:var(--color-warning-800,#854d0e)}.feedback-page .status-replied{background-color:var(--color-success-100,#dcfce7);color:var(--color-success-800,#166534)}.feedback-page .status-confirmed{background-color:var(--color-danger-100,#fee2e2);color:var(--color-danger-800,#b91c1c);margin-left:var(--space-4,4px)}.feedback-page .status-adopted{background-color:var(--color-blue-200,#bfdbfe);color:var(--color-blue-900,#1e3a8a);margin-left:var(--space-4,4px)}.feedback-page .status-success{background-color:var(--color-success-100,#dcfce7);color:var(--color-success-800,#166534)}.feedback-page .status-warning{background-color:var(--color-warning-100,#fef9c3);color:var(--color-warning-800,#854d0e)}.feedback-page .status-danger{background-color:var(--color-danger-100,#fee2e2);color:var(--color-danger-900,#7f1d1d)}.feedback-page .status-info{background-color:var(--color-info-100,#dbeafe);color:var(--color-info-800,#1e40af)}.feedback-page .type-badge{border-radius:var(--radius-4,4px);font-size:var(--text-12,12px);padding:var(--space-2,2px) var(--space-6,6px)}.feedback-page .type-bug{background-color:var(--color-danger-100,#fee2e2);color:var(--color-danger-800,#b91c1c)}.feedback-page .type-suggestion{background-color:var(--color-success-100,#dcfce7);color:var(--color-success-800,#166534)}.feedback-page .user-info{display:flex;flex-direction:column}.feedback-page .user-name{font-size:var(--text-13,13px);font-weight:500}.feedback-page .user-role{color:var(--color-slate-500,#64748b);font-size:var(--text-11,11px)}.feedback-page .role-student{color:var(--color-blue-500,#3b82f6)}.feedback-page .role-publisher{color:var(--color-purple-400,#c084fc)}.feedback-page .user-realname{margin-right:var(--space-4,4px)}.feedback-page .feedback-content-cell{max-width:var(--width-feedback-max,400px)}.feedback-page .content-text{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.feedback-page .content-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;max-height:60px;overflow:hidden;text-overflow:ellipsis}.feedback-page .feedback-content-card{margin-top:var(--space-16,16px);overflow:hidden;padding:0}.feedback-page .admin-attachments-preview{display:flex;gap:var(--space-4,4px);margin-top:var(--space-4,4px)}.feedback-page .attachment-link{cursor:pointer;font-size:var(--text-14,14px)}.feedback-page .attachment-chip{align-items:center;background-color:var(--color-gray-100,#f3f4f6);border-radius:var(--radius-4,4px);cursor:pointer;display:flex;font-size:var(--text-12,12px);gap:var(--space-4,4px);padding:var(--space-2,2px) var(--space-6,6px)}.feedback-page .feedback-attachments{display:flex;flex-wrap:wrap;gap:var(--space-8,8px);margin-top:var(--space-8,8px)}.feedback-page .feedback-attachment-item{align-items:center;background-color:var(--color-gray-100,#f3f4f6);border-radius:var(--radius-4,4px);display:flex;font-size:var(--text-12,12px);gap:var(--space-6,6px);padding:var(--space-4,4px) var(--space-8,8px)}.feedback-page .feedback-attachment-name{background:transparent;border:none;color:var(--color-gray-800,#1f2937);cursor:pointer;text-decoration:underline}.feedback-page .feedback-attachment-remove{background:transparent;border:none;color:var(--color-red-500,#ef4444);cursor:pointer}.feedback-page .attachments-row{display:flex;flex-wrap:wrap;gap:var(--space-4,4px);margin-top:var(--space-6,6px)}.feedback-page .reply-block{background-color:var(--color-gray-50,#f9fafb);border-left:2px solid var(--color-blue-500,#3b82f6);border-radius:var(--radius-4,4px);font-size:var(--text-13,13px);margin-top:var(--space-8,8px);padding:var(--space-8,8px)}.feedback-page .reply-label{color:var(--color-blue-500,#3b82f6);font-weight:500;margin-bottom:var(--space-2,2px)}.feedback-page .reply-clamp{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;max-height:60px;overflow:hidden;text-overflow:ellipsis}.feedback-page .reply-time{color:var(--color-gray-500,#64748b);font-size:var(--text-12,12px);margin-top:var(--space-4,4px)}.feedback-page .no-reply{color:var(--color-gray-400,#9ca3af);font-size:var(--text-12,12px)}.feedback-page .status-confirmed-badge{color:var(--color-green-600,#16a34a);font-size:var(--text-12,12px);margin-top:var(--space-4,4px)}.feedback-page .status-adopted-badge{color:var(--color-green-500,#22c55e);font-size:var(--text-12,12px);margin-top:var(--space-4,4px)}.feedback-page .reply-form .original-feedback{background-color:var(--color-gray-50,#f9fafb);border-radius:var(--radius-8,8px);margin-bottom:var(--space-16,16px);padding:var(--space-12,12px)}.feedback-page .reply-form .feedback-meta{color:var(--color-text-tertiary,#9ca3af);font-size:var(--text-12,12px);margin-bottom:var(--space-4,4px)}.feedback-page .reply-form .feedback-text{line-height:1.5;white-space:pre-wrap}.feedback-page .feedback-dropzone{background-color:var(--color-gray-50,#f9fafb);border:1px dashed var(--color-gray-400,#9ca3af);border-radius:var(--radius-8,8px);color:var(--color-slate-500,#64748b);cursor:pointer;font-size:var(--text-13,13px);padding:var(--space-12,12px) var(--space-16,16px);transition:var(--transition-base,all .2s ease)}.feedback-page .feedback-dropzone--active{background-color:var(--color-blue-100,#dbeafe);border-color:var(--color-blue-500,#3b82f6);color:var(--color-blue-800,#1e40af)}.feedback-page .feedback-type-group{align-items:center;display:flex;gap:var(--space-24,24px)}.feedback-page .feedback-type-label{color:var(--color-gray-600,#4b5563);font-size:var(--text-14,14px);white-space:nowrap}.feedback-page .required-star{color:var(--color-red-500,#ef4444);margin-left:var(--space-4,4px)}.feedback-page .radio-card{align-items:center;display:flex;gap:var(--space-6,6px);white-space:nowrap}.feedback-page .file-input-hidden{display:none}.feedback-page .filter-select--reset{background:transparent;border:none;box-shadow:none;padding:0}.feedback-page .textarea-resize-v{resize:vertical;width:100%}.feedback-page .empty-block{align-items:center;color:var(--color-gray-1100,#374151);display:flex;flex-direction:column;justify-content:center;padding:var(--space-40,40px) 0}.feedback-page .empty-block__icon{margin-bottom:var(--space-16,16px);opacity:.8}.feedback-page .empty-block__title{color:var(--color-slate-500,#64748b);font-size:var(--text-16,16px);font-weight:500;margin-bottom:var(--space-8,8px)}.feedback-page .empty-block__desc{font-size:var(--text-14,14px)}.toggle-switch{align-items:center;cursor:pointer;display:inline-flex;position:relative;user-select:none}.toggle-switch--small{height:20px;width:36px}.toggle-switch--medium{height:24px;width:44px}.toggle-switch--large{height:32px;width:56px}.toggle-switch__track{background-color:var(--color-gray-1200,#e5e7eb);border-radius:999px;height:100%;transition:background-color .2s ease;width:100%}.toggle-switch__thumb{aspect-ratio:1/1;background-color:var(--color-white,#fff);border-radius:50%;box-shadow:0 1px 2px rgba(0,0,0,.25);height:calc(100% - 4px);left:2px;max-width:calc(100% - 4px);position:absolute;top:2px;transition:left .2s ease;width:50%}.toggle-switch--medium .toggle-switch__thumb,.toggle-switch--small .toggle-switch__thumb{left:2px;top:2px}.toggle-switch--large .toggle-switch__thumb{left:3px;top:3px}.toggle-switch--checked .toggle-switch__track{background-color:var(--primary-color,#3b82f6)}.toggle-switch--checked.toggle-switch--small .toggle-switch__thumb{left:calc(100% - 18px)}.toggle-switch--checked.toggle-switch--medium .toggle-switch__thumb{left:calc(100% - 22px)}.toggle-switch--checked.toggle-switch--large .toggle-switch__thumb{left:calc(100% - 29px)}.toggle-switch--disabled{cursor:not-allowed;opacity:.6}.multi-select{position:relative;width:100%}.multi-select-trigger{align-items:center;background:var(--color-white,#fff);border:1px solid var(--color-gray-300,#d1d5db);border-radius:var(--radius-12,12px);cursor:pointer;display:flex;justify-content:space-between;min-height:40px;padding:10px var(--space-12,12px);transition:var(--transition-base,all .2s ease);width:100%}.multi-select-trigger:hover{border-color:var(--color-gray-400,#9ca3af);box-shadow:0 2px 6px rgba(15,23,42,.06)}.multi-select-trigger.open{border-color:var(--color-primary-500,#3b82f6);box-shadow:0 0 0 3px rgba(59,130,246,.1)}.multi-select-trigger.disabled{background-color:var(--color-gray-50,#f9fafb);color:var(--color-gray-400,#9ca3af);cursor:not-allowed}.multi-select-display{flex:1;text-align:left}.multi-select-display .placeholder{color:var(--color-gray-400,#9ca3af);font-size:var(--text-14,14px)}.multi-select-display .selected{color:var(--color-gray-700,#374151);font-size:var(--text-14,14px);font-weight:500}.multi-select-arrow{color:var(--color-gray-500,#6b7280);margin-left:8px;transition:transform .2s ease}.multi-select-arrow .rotated{transform:rotate(180deg)}.multi-select-dropdown{animation:dropdownSlideIn .2s ease-out;background:var(--color-white,#fff);border:1px solid var(--color-gray-300,#d1d5db);border-radius:var(--radius-12,12px);box-shadow:0 8px 20px rgba(15,23,42,.12);left:0;margin-top:4px;max-height:300px;min-width:100%;overflow:hidden;position:absolute;right:0;top:100%;width:auto;z-index:1000}.multi-select-options{max-height:220px;overflow-y:auto;padding:4px 0}.multi-select-option{align-items:center;cursor:pointer;display:flex;gap:8px;padding:8px var(--space-12,12px);transition:background-color .2s ease}.multi-select-option:hover{background-color:var(--color-gray-100,#f1f5f9)}.multi-select-option.selected{background-color:var(--color-primary-50,#eff6ff);color:var(--color-primary-500,#3b82f6)}.multi-select-option .option-checkbox{align-items:center;display:flex;justify-content:center;margin-right:4px}.multi-select-option .option-label{align-items:center;display:inline-flex;flex:1;white-space:nowrap}.multi-select-footer{background:var(--color-gray-50,#f8fafc);border-top:1px solid var(--color-gray-200,#e5e7eb);padding:6px 8px}.multi-select-footer .selected-tags{display:flex;flex-wrap:wrap;gap:6px}.multi-select-footer .selected-tag{align-items:center;background:var(--color-sky-100,#e0f2fe);border-radius:999px;color:var(--color-sky-700,#0369a1);display:inline-flex;font-size:var(--text-12,12px);padding:2px 8px}.multi-select-footer .selected-tag .tag-remove{background:transparent;border:none;color:inherit;cursor:pointer;line-height:1;margin-left:4px;padding:0}.rounded-select{position:relative;width:100%}.rounded-select-trigger{align-items:center;background:var(--color-white,#fff);border:1px solid var(--color-gray-300,#d1d5db);border-radius:var(--radius-12,12px);color:var(--color-gray-700,#374151);cursor:pointer;display:flex;justify-content:space-between;padding:10px var(--space-12,12px);transition:var(--transition-base,all .2s ease)}.rounded-select-trigger.open{border-color:var(--color-primary-500,#3b82f6);box-shadow:0 0 0 3px rgba(59,130,246,.1)}.rounded-select-value{font-size:var(--text-14,14px);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rounded-select-arrow{align-items:center;color:var(--color-gray-500,#6b7280);display:flex}.rounded-select-arrow .rotated{transform:rotate(180deg);transition:transform .2s ease}.rounded-select-dropdown{background:var(--color-white,#fff);border:1px solid var(--color-gray-200,#e2e8f0);border-radius:var(--radius-12,12px);box-shadow:0 8px 20px rgba(0,0,0,.08);left:0;overflow:hidden;position:absolute;right:0;top:calc(100% + 4px);z-index:2000}.rounded-select-option{color:var(--color-gray-700,#374151);cursor:pointer;font-size:var(--text-14,14px);padding:10px var(--space-12,12px);transition:background .2s ease}.rounded-select-option:hover{background:var(--color-gray-50,#f8fafb)}.rounded-select-option.selected{background:var(--color-primary-50,#eff6ff);color:var(--color-primary-700,#1d4ed8)}.questions-filters.locked{opacity:.6}.rounded-select[aria-disabled=true] .rounded-select-trigger{background:var(--color-gray-50,#f9fafb);border-color:var(--color-gray-200,#e5e7eb);color:var(--color-gray-400,#9ca3af);cursor:not-allowed}.rounded-select[aria-disabled=true] .rounded-select-arrow{color:var(--color-gray-300,#cbd5e1)}.questions-filters .search-input:disabled,.questions-filters .sort-order-btn:disabled{background:var(--color-gray-50,#f9fafb);color:var(--color-gray-400,#9ca3af);cursor:not-allowed}.questions-filters .sort-order-btn:disabled{border-color:var(--color-gray-200,#e5e7eb)}.segmented-tabs{align-items:center;background:var(--color-white,#fff);border:1px solid var(--color-gray-200,#e5e7eb);border-radius:var(--radius-12,12px);box-shadow:0 1px 4px rgba(0,0,0,.06);display:flex;gap:8px;margin-bottom:var(--space-12,12px);padding:4px;width:fit-content}.content-card>.segmented-tabs,.content-page>.segmented-tabs{margin-top:10px}.segmented-tabs--center{justify-content:center;margin:0 auto}.segmented-tabs--inline{background:transparent;border:none;box-shadow:none;padding:0}.segmented-tabs--gray{background:var(--color-gray-100,#f3f4f6);border:none;border-radius:6px;box-shadow:none;padding:3px}.segmented-tabs .segmented-tab{border:none;box-shadow:none}.segmented-tabs--gray .segmented-tab{background:transparent;color:#000;font-weight:500}.segmented-tabs--gray .segmented-tab:hover{background:transparent}.segmented-tabs--gray .segmented-tab--active{background:var(--color-white,#fff);border:1px solid var(--color-gray-200,#e5e7eb);box-shadow:0 8px 16px rgba(0,0,0,.08);color:#000}.segmented-tabs--gray .segmented-tab:first-child .segmented-tab__icon{color:var(--color-blue-500,#3b82f6)}.segmented-tabs--gray .segmented-tab:nth-child(2) .segmented-tab__icon{color:var(--color-green-500,#22c55e)}.segmented-tabs--sm .segmented-tab{border-radius:4px;font-size:var(--text-13,13px);height:32px;padding:0 var(--space-12,12px)}.segmented-tabs--md .segmented-tab{border-radius:6px;font-size:var(--text-14,14px);height:36px;padding:0 var(--space-14,14px)}.segmented-tabs--lg .segmented-tab{border-radius:6px;font-size:var(--text-15,15px);height:40px;padding:0 var(--space-16,16px)}.segmented-tab{align-items:center;background:var(--color-white,#fff);border:none;box-shadow:none;color:#000;cursor:pointer;display:inline-flex;font-weight:600;gap:8px;transition:all .15s ease}.segmented-tab:hover{background:var(--color-gray-100,#f5f7fa)}.content-divider{background:transparent;border-top:1px solid var(--color-gray-300,#cbd5e1);height:0;margin:var(--space-12,12px) 0}.form-group{display:flex;flex-direction:column;gap:var(--space-6)}.form-group label,.form-label{color:var(--color-black);display:block;font-size:var(--text-14);font-weight:500}.form-label.required:after{color:var(--color-error-500);content:" *"}.form-input,.form-select,.form-textarea{background:var(--color-white);border:1px solid var(--color-gray-300);border-radius:var(--radius-6);color:var(--color-gray-700);font-size:var(--text-14);padding:var(--space-10) var(--space-12);transition:var(--transition-base);width:100%}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--color-blue-500);box-shadow:var(--shadow-filter-focus);outline:none}.form-input.disabled,.form-input:disabled,.form-select:disabled,.form-textarea:disabled{background:var(--color-gray-50);border-color:var(--color-gray-200);color:var(--color-text-muted);cursor:not-allowed}.form-input.error,.form-select.error,.form-textarea.error{border-color:var(--color-error-500);box-shadow:var(--shadow-error)}.form-help,.help-text{color:var(--color-text-muted);font-size:var(--text-12);margin-top:var(--space-6)}.error-message{display:block;font-size:var(--text-12);margin-top:var(--space-4)}.checkbox-group,.radio-group{display:flex;flex-direction:column;gap:var(--space-8)}.checkbox-label,.radio-label{align-items:center;border-radius:var(--radius-6);cursor:pointer;display:flex;padding:var(--space-8) var(--space-12);transition:var(--transition-base)}.checkbox-label:hover,.radio-label:hover{background-color:var(--color-gray-50)}.checkbox-label input[type=checkbox],.radio-label input[type=radio]{cursor:pointer;height:var(--space-16);margin-right:var(--space-8);width:var(--space-16)}.password-input-wrapper{position:relative}.password-toggle{background:none;border:none;border-radius:var(--radius-4);color:var(--color-text-muted);cursor:pointer;padding:var(--space-2);position:absolute;right:var(--space-10);top:50%;transform:translateY(-50%);transition:var(--transition-base)}.password-toggle:hover{color:var(--color-gray-700)}.form-actions{justify-content:flex-end;margin-top:var(--space-8)}@media (max-width:640px){.form-actions{flex-direction:column}}.form-row{gap:var(--form-row-gap);grid-template-columns:repeat(auto-fit,minmax(var(--form-row-min-width),1fr));margin-bottom:var(--form-row-gap)}.form-actions-right{border-top:1px solid var(--color-gray-200);display:flex;gap:var(--space-12);justify-content:flex-end;margin-top:var(--space-24);padding-top:var(--space-20)}.password-form,.profile-form{display:flex;flex-direction:column;gap:var(--form-row-gap)}.image-upload{width:100%}.image-upload__header{align-items:center;display:flex;gap:8px;margin-bottom:8px}.image-upload__label{color:var(--color-gray-600);font-size:12px}.image-upload__clear{background:transparent;border:none;color:var(--primary-color);cursor:pointer;font-size:12px;padding:0;text-decoration:none}.image-upload__clear:hover{text-decoration:underline}.image-upload__clear:disabled{cursor:not-allowed;opacity:.5}.image-upload__area{border:2px dashed var(--color-gray-300);border-radius:8px;cursor:pointer;min-height:120px;overflow:hidden;position:relative;transition:all .2s ease;width:100%}.image-upload__area:hover{background-color:var(--color-gray-50);border-color:var(--primary-color)}.image-upload__area--has-image{border-color:var(--color-gray-200);border-style:solid;padding:0}.image-upload__area--has-image:hover{border-color:var(--primary-color)}.image-upload__area--disabled,.image-upload__area--uploading{cursor:not-allowed;opacity:.7}.image-upload__input{display:none}.image-upload__loading{align-items:center;display:flex;flex-direction:column;gap:8px;justify-content:center;padding:24px}.image-upload__spinner{animation:image-upload-spin 1s linear infinite;border:2px solid var(--color-gray-200);border-radius:50%;border-top-color:var(--primary-color);height:24px;width:24px}@keyframes image-upload-spin{to{transform:rotate(1turn)}}.image-upload__loading-text{color:var(--color-gray-500);font-size:14px}.image-upload__preview{background-color:var(--color-gray-100,#f3f4f6);border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.1);height:200px;margin:0 auto;max-width:300px;overflow:hidden;position:relative;width:100%}.image-upload__preview-img{cursor:zoom-in;height:100%;object-fit:contain;transition:transform .3s ease;width:100%}.image-upload__preview:hover .image-upload__preview-img{transform:scale(1.05)}.image-upload__overlay{align-items:center;background-color:rgba(0,0,0,.5);border-radius:12px;bottom:0;display:flex;justify-content:center;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .2s ease}.image-upload__preview:hover .image-upload__overlay{opacity:1}.image-upload__overlay-text{color:#fff;font-size:14px;font-weight:500}.image-upload__placeholder{align-items:center;color:var(--color-gray-400);display:flex;flex-direction:column;gap:8px;justify-content:center;padding:24px}.image-upload__placeholder-text{color:var(--color-gray-600);font-size:14px}.image-upload__hint{font-size:12px;opacity:.8}.dialog-content{background:var(--color-white,#fff);border-radius:var(--radius-12,12px);max-width:550px;overflow-y:auto;width:90%}.learning-setup-dialog .dialog-content{max-height:85vh}.learning-setup-dialog .dialog-header{align-items:center;border-bottom:1px solid var(--color-gray-200,#e2e8f0);display:flex;justify-content:space-between;padding:var(--space-20,20px) var(--space-24,24px)}.learning-setup-dialog .dialog-header h2{color:#000;font-size:var(--text-20,20px);font-weight:600;margin:0}.learning-setup-dialog .dialog-close{background:none;border:none;border-radius:var(--radius-4,4px);color:var(--color-gray-500,#64748b);cursor:pointer;font-size:var(--text-24,24px);padding:4px;transition:var(--transition-base,all .2s ease)}.learning-setup-dialog .dialog-close:hover{background-color:var(--color-gray-100,#f1f5f9);color:var(--color-gray-700,#374151)}.learning-setup-dialog .dialog-body{padding:var(--space-24,24px)}.preview-dialog .dialog-header{padding:var(--space-12,12px) var(--space-16,16px)}.preview-dialog .dialog-body{overflow-x:hidden;padding:8px var(--space-16,16px) var(--space-16,16px)}.preview-dialog .markdown-preview{color:var(--color-gray-800,#1f2937);font-size:var(--text-15,15px);line-height:1.8;margin:0 auto;max-width:860px;overflow-wrap:anywhere;padding-top:8px}.preview-dialog .markdown-preview>:first-child{margin-top:8px}.preview-dialog .markdown-preview h1,.preview-dialog .markdown-preview h2,.preview-dialog .markdown-preview h3{color:var(--color-gray-900,#111827);font-weight:700;margin-bottom:10px;margin-top:var(--space-20,20px)}.preview-dialog .markdown-preview h1{border-bottom:2px solid var(--color-gray-200,#e5e7eb);font-size:var(--text-22,22px);padding-bottom:8px}.preview-dialog .markdown-preview h2{border-bottom:1px solid var(--color-gray-200,#e5e7eb);font-size:var(--text-18,18px);padding-bottom:6px}.preview-dialog .markdown-preview h3{font-size:var(--text-16,16px)}.preview-dialog .markdown-preview p{margin:0 0 var(--space-12,12px) 0}.preview-dialog .markdown-preview blockquote{background:var(--color-gray-50,#f8fafc);border-left:4px solid var(--color-primary-500,#3b82f6);color:var(--color-gray-600,#475569);margin:var(--space-12,12px) 0;padding:10px var(--space-14,14px)}.preview-dialog .markdown-preview ol,.preview-dialog .markdown-preview ul{margin:10px 0 var(--space-12,12px) 0;padding-left:22px}.preview-dialog .markdown-preview li{margin-bottom:6px}.preview-dialog .markdown-preview code{background:var(--color-gray-100,#f1f5f9);border-radius:var(--radius-4,4px);color:var(--color-red-600,#e11d48);font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:var(--text-13,13px);padding:2px 6px;word-break:break-word}.preview-dialog .markdown-preview pre{background:var(--color-gray-900,#0f172a);border-radius:var(--radius-8,8px);color:var(--color-gray-200,#e2e8f0);margin:var(--space-12,12px) 0;overflow-x:hidden;padding:var(--space-14,14px);white-space:pre-wrap;word-break:break-word}.preview-dialog .markdown-preview pre code{background:transparent;color:inherit;padding:0}.preview-dialog .markdown-preview img{display:block;height:auto;margin:8px auto;max-width:100%}.preview-dialog .markdown-preview table{border-collapse:collapse;width:100%}.preview-dialog .markdown-preview td,.preview-dialog .markdown-preview th{border:1px solid var(--color-gray-200,#e5e7eb);padding:8px;text-align:left;word-break:break-word}.preview-dialog .markdown-preview .katex-display{max-width:100%;overflow-x:hidden}.learning-setup-dialog .form-group{margin-bottom:var(--space-20,20px)}.learning-setup-dialog .form-label{margin-bottom:8px}.learning-setup-dialog .form-input,.learning-setup-dialog .form-select{border-radius:var(--radius-12,12px)}.learning-setup-dialog .form-select.multi-select{min-height:120px;padding:8px}.learning-setup-dialog .form-select.multi-select option{border-radius:var(--radius-4,4px);cursor:pointer;margin:2px 0;padding:8px var(--space-12,12px)}.learning-setup-dialog .form-select.multi-select option:checked{background:linear-gradient(135deg,var(--color-primary-500,#3b82f6) 0,var(--color-primary-600,#2563eb) 100%);color:var(--color-white,#fff)}.learning-setup-dialog .form-select.multi-select option:hover{background-color:var(--color-gray-100,#f1f5f9)}.learning-setup-dialog .form-select.multi-select option:checked:hover{background:linear-gradient(135deg,var(--color-primary-600,#2563eb) 0,var(--color-primary-700,#1d4ed8) 100%)}.learning-setup-dialog .help-text{color:var(--color-gray-500,#64748b);font-size:var(--text-12,12px);font-style:italic;margin-top:6px}.learning-setup-dialog .error-message{color:var(--color-red-500,#ef4444);display:block;font-size:var(--text-12,12px);margin-top:4px}.learning-setup-dialog .checkbox-text,.learning-setup-dialog .radio-text{color:var(--color-gray-700,#374151);font-size:var(--text-14,14px)}.learning-setup-dialog .dialog-footer{background:var(--color-white,#fff);border-top:1px solid var(--color-gray-200,#e5e8f0);bottom:0;display:flex;gap:var(--space-12,12px);justify-content:flex-end;padding:var(--space-20,20px);position:sticky;z-index:10}@media (max-width:768px){.dialog-content{margin:var(--space-20,20px);width:95%}.learning-setup-dialog .dialog-body,.learning-setup-dialog .dialog-footer,.learning-setup-dialog .dialog-header{padding:var(--space-16,16px)}.learning-setup-dialog .form-select.multi-select{min-height:100px}}.loading-container{align-items:center}.loading--sm{min-height:120px;padding:24px 16px}.loading--sm .loading-spinner{font-size:13px;gap:8px}.loading--sm .loading-spinner:before{border-width:2px;height:16px;width:16px}.loading--md{min-height:200px;padding:48px 24px}.loading--md .loading-spinner{font-size:14px;gap:10px}.loading--md .loading-spinner:before{border-width:2px;height:20px;width:20px}.loading--lg{min-height:280px;padding:60px 32px}.loading--lg .loading-spinner{font-size:16px;gap:12px}.loading--lg .loading-spinner:before{border-width:2px;height:24px;width:24px}.loading--fullscreen{background:hsla(0,0%,100%,.9);bottom:0;left:0;min-height:100vh;position:fixed;right:0;top:0;z-index:9999}.loading-spinner{color:#3b82f6}.loading-spinner:before{animation:loading-spin 1s linear infinite;border-color:transparent #3b82f6 #3b82f6;border-radius:50%;border-style:solid;content:"";display:inline-block}.loading-spinner__text{white-space:nowrap}@keyframes loading-spin{to{transform:rotate(1turn)}}.loading-inline{align-items:center;color:#6b7280;display:inline-flex;font-size:13px;gap:8px}.loading-inline:before{animation:loading-spin 1s linear infinite;border:2px solid #e5e7eb;border-radius:50%;border-top-color:#3b82f6;content:"";height:14px;width:14px}.loading-container{align-items:flex-start;background:transparent;box-sizing:border-box;contain:layout paint;display:flex;grid-column:1/-1;justify-content:center;margin:0;min-height:200px;padding-top:80px;width:100%}.loading-spinner{align-items:center;color:var(--color-primary-500,#667eea);display:flex;font-size:var(--text-16,16px);font-weight:500;gap:10px;position:relative}.loading-spinner__icon{animation:spin 1s linear infinite;border:2px solid;border-radius:50%;border-right:2px solid transparent;display:inline-block;height:20px;width:20px;will-change:transform}.loading-spinner--pulse{animation:pulse 2s ease-in-out infinite;will-change:opacity}.loading-dots{align-items:center;display:inline-flex;gap:4px}.loading-dots__dot{animation:loadingDotPulse 1.4s ease-in-out infinite both;background-color:var(--color-primary-500,#667eea);border-radius:50%;height:8px;width:8px;will-change:transform,opacity}.loading-dots__dot:first-child{animation-delay:-.32s}.loading-dots__dot:nth-child(2){animation-delay:-.16s}@keyframes loadingDotPulse{0%,80%,to{opacity:.5;transform:scale(0)}40%{opacity:1;transform:scale(1)}}.loading-bar{background-color:var(--color-gray-1200,#e5e7eb);border-radius:2px;contain:paint;height:4px;overflow:hidden;position:relative;width:100%}.loading-bar__progress{background-color:var(--color-primary-500,#667eea);border-radius:2px;height:100%;transform-origin:left;transition:transform .3s ease-out;will-change:transform}.loading-bar--indeterminate .loading-bar__progress{animation:loadingBarIndeterminate 1.5s ease-in-out infinite;width:40%}@keyframes loadingBarIndeterminate{0%{transform:translateX(-100%)}50%{transform:translateX(150%)}to{transform:translateX(300%)}}.loading-skeleton{animation:skeletonShimmer 1.5s ease-in-out infinite;background:linear-gradient(90deg,var(--color-gray-1200,#e5e7eb) 25%,var(--color-gray-1100,#f3f4f6) 50%,var(--color-gray-1200,#e5e7eb) 75%);background-size:200% 100%;border-radius:4px;will-change:background-position}@keyframes skeletonShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.loading-overlay{align-items:center;backdrop-filter:blur(2px);background:hsla(0,0%,100%,.8);contain:layout paint;display:flex;inset:0;justify-content:center;position:fixed;z-index:9999}.loading-overlay__spinner{animation:spin 1s linear infinite;border:3px solid var(--color-gray-1200,#e5e7eb);border-radius:50%;border-top-color:var(--color-primary-500,#667eea);height:48px;width:48px;will-change:transform}.loading-card{background:var(--color-white,#fff);border-radius:var(--radius-12,12px);box-shadow:var(--shadow-card,0 2px 8px rgba(0,0,0,.08));padding:24px}.loading-card__header{align-items:center;display:flex;gap:12px;margin-bottom:16px}.loading-card__avatar{border-radius:50%;height:40px;width:40px}.loading-card__title{border-radius:4px;height:16px;width:60%}.loading-card__content{display:flex;flex-direction:column;gap:8px}.loading-card__line{border-radius:4px;height:12px}.loading-card__line--short{width:40%}.loading-card__line--medium{width:70%}.loading-card__line--long{width:100%}.markdown-editor{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.06);overflow:hidden;transition:all .3s ease}.markdown-editor.compact .markdown-editor-footer,.markdown-editor.compact .markdown-editor-header{display:none}.markdown-editor.compact .markdown-toolbar{border-bottom:1px solid #e2e8f0;gap:4px;padding:4px 8px}.markdown-editor.compact .toolbar-button{font-size:12px;height:28px;min-width:28px;padding:4px 6px}.markdown-editor.compact .markdown-preview,.markdown-editor.compact .markdown-textarea{font-size:13px;padding:12px}.markdown-editor:hover{border-color:#cbd5e1;box-shadow:0 4px 12px rgba(0,0,0,.08)}.markdown-editor-header{align-items:center;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:12px 16px}.markdown-editor-label{color:#334155;font-size:14px;font-weight:600;margin:0}.markdown-editor-label.wrong-answer-label{color:#dc2626;font-weight:700;text-shadow:0 1px 2px rgba(220,38,38,.2)}.markdown-editor-tabs{display:none}.markdown-toolbar{background:#f8fafc;border-bottom:1px solid #e2e8f0;display:flex;flex-wrap:wrap;gap:2px;padding:8px 12px}.toolbar-button{align-items:center;background:#fff;border:1px solid transparent;border-radius:6px;color:#475569;cursor:pointer;display:flex;font-size:14px;font-weight:600;height:32px;justify-content:center;min-width:32px;padding:6px 8px;transition:all .2s ease}.toolbar-button:hover{background:#e2e8f0;border-color:#cbd5e1;color:#334155;transform:translateY(-1px)}.toolbar-button:active{background:#cbd5e1;transform:translateY(0)}.markdown-editor-content{position:relative;transition:all .3s ease}.markdown-editor-content.focused{box-shadow:inset 0 0 0 2px rgba(59,130,246,.1)}.markdown-textarea{background:#fff;border:none;color:#334155;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:14px;line-height:1.6;outline:none;padding:16px;resize:vertical;transition:all .3s ease;width:100%}.markdown-textarea::placeholder{color:#94a3b8;font-style:italic}.markdown-textarea:focus{background:#fefefe}.markdown-preview{background:#fff;color:#334155;font-size:14px;line-height:1.7;overflow-y:auto;padding:16px}.markdown-preview.markdown-preview--slideover{padding-top:0}.markdown-preview h1,.markdown-preview h2,.markdown-preview h3,.markdown-preview h4,.markdown-preview h5,.markdown-preview h6{color:#1e293b;font-weight:600;margin-bottom:12px;margin-top:24px}.markdown-preview.markdown-preview--slideover h1,.markdown-preview.markdown-preview--slideover h2,.markdown-preview.markdown-preview--slideover h3,.markdown-preview.markdown-preview--slideover h4,.markdown-preview.markdown-preview--slideover h5,.markdown-preview.markdown-preview--slideover h6{margin-top:12px}.markdown-preview h1{border-bottom:2px solid #e2e8f0;font-size:24px;padding-bottom:8px}.markdown-preview h2{border-bottom:1px solid #e2e8f0;font-size:20px;padding-bottom:6px}.markdown-preview h3{font-size:18px}.markdown-preview p{margin-bottom:12px}.markdown-preview code{background:#f1f5f9;border-radius:4px;color:#e11d48;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:13px;padding:2px 6px}.markdown-preview pre{background:#1e293b;border-radius:8px;color:#e2e8f0;margin:16px 0;overflow-x:auto;padding:16px}.markdown-preview pre code{background:transparent;color:inherit;padding:0}.markdown-preview blockquote{background:#f8fafc;border-left:4px solid #3b82f6;color:#475569;font-style:italic;margin:16px 0;padding:12px 16px}.markdown-preview ol,.markdown-preview ul{margin:12px 0;padding-left:24px}.markdown-preview li{margin-bottom:4px}.markdown-preview a{border-bottom:1px solid transparent;color:#3b82f6;text-decoration:none;transition:all .2s ease}.markdown-preview a:hover{border-bottom-color:#3b82f6}.markdown-preview strong{color:#1e293b;font-weight:600}.markdown-preview em{color:#475569;font-style:italic}.markdown-preview img{border:1px solid #e2e8f0;border-radius:8px;cursor:zoom-in;display:block;height:auto;margin:.8em auto;max-width:88%}.markdown-preview table{border:1px solid #e2e8f0;border-collapse:collapse;border-radius:8px;display:block;margin:12px 0;overflow-x:auto;width:100%}.markdown-preview thead th{background:#f8fafc;color:#0f172a;font-weight:600}.markdown-preview td,.markdown-preview th{border:1px solid #e5e7eb;padding:8px 10px;text-align:left;vertical-align:top;word-break:break-word}.markdown-preview tbody tr:nth-child(odd){background:#fbfdff}.markdown-editor-footer{background:#f8fafc;border-top:1px solid #e2e8f0;padding:8px 16px}.markdown-tips{font-size:12px;justify-content:space-between}.markdown-tips,.tip-text{align-items:center;display:flex}.tip-text{color:#64748b;gap:4px}.char-count{background:#fff;border:1px solid #e2e8f0;border-radius:12px;color:#94a3b8;font-weight:500;padding:2px 8px}@media (max-width:768px){.markdown-editor-header{align-items:flex-start;flex-direction:column;gap:8px}.markdown-editor-tabs{align-self:stretch;justify-content:center}.markdown-toolbar{padding:6px 8px}.toolbar-button{font-size:12px;height:28px;min-width:28px}.markdown-preview,.markdown-textarea{font-size:13px;padding:12px}.markdown-tips{align-items:flex-start;flex-direction:column;gap:4px}}@media (prefers-color-scheme:dark){.markdown-editor{background:#1e293b;border-color:#334155}.markdown-editor-header{background:linear-gradient(135deg,#1e293b,#334155);border-bottom-color:#475569}.markdown-editor-label{color:#e2e8f0}.markdown-toolbar{background:#1e293b;border-bottom-color:#475569}.toolbar-button{background:#334155;border-color:#475569;color:#cbd5e1}.toolbar-button:hover{background:#475569;color:#e2e8f0}.markdown-textarea{background:#1e293b;color:#e2e8f0}.markdown-textarea::placeholder{color:#64748b}.markdown-preview{background:#1e293b;color:#cbd5e1}.markdown-editor-footer{background:#1e293b;border-top-color:#475569}.tip-text{color:#94a3b8}.char-count{background:#334155;border-color:#475569;color:#cbd5e1}}.markdown-editor-content{animation:fadeInUp .3s ease}.markdown-preview::-webkit-scrollbar,.markdown-textarea::-webkit-scrollbar{width:8px}.markdown-preview::-webkit-scrollbar-track,.markdown-textarea::-webkit-scrollbar-track{background:#f1f5f9;border-radius:4px}.markdown-preview::-webkit-scrollbar-thumb,.markdown-textarea::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.markdown-preview::-webkit-scrollbar-thumb:hover,.markdown-textarea::-webkit-scrollbar-thumb:hover{background:#94a3b8}.tiptap-editor-content .ProseMirror{color:#334155;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:14px;line-height:1.6;min-height:inherit;outline:none;padding:16px;white-space:pre-wrap}.tiptap-editor-content .ProseMirror p{margin-bottom:.8em}.tiptap-editor-content .ProseMirror h1,.tiptap-editor-content .ProseMirror h2,.tiptap-editor-content .ProseMirror h3{color:#1e293b;font-weight:600;margin-bottom:.5em;margin-top:1em}.tiptap-editor-content .ProseMirror ol,.tiptap-editor-content .ProseMirror ul{margin-bottom:.8em;padding-left:1.5em}.tiptap-editor-content .ProseMirror blockquote{background:#f8fafc;border-left:4px solid #3b82f6;color:#475569;font-style:italic;margin:.8em 0;padding:.5em 1em}.tiptap-editor-content .ProseMirror code{background:#f1f5f9;border-radius:4px;color:#e11d48;font-family:monospace;font-size:.9em;padding:2px 6px}.tiptap-editor-content .ProseMirror pre{background:#1e293b;border-radius:8px;color:#e2e8f0;margin:.8em 0;overflow-x:auto;padding:12px}.tiptap-editor-content .ProseMirror pre code{background:transparent;color:inherit;font-size:inherit;padding:0}.tiptap-editor-content .ProseMirror img{border:1px solid #e2e8f0;border-radius:8px;display:block;height:auto;margin:.8em auto;max-width:88%}.tiptap-editor-content .ProseMirror a{color:#3b82f6;cursor:pointer;text-decoration:underline}.tiptap-editor-content .ProseMirror table{border:1px solid #e2e8f0;border-collapse:collapse;border-radius:8px;display:block;margin:12px 0;overflow-x:auto;width:100%}.tiptap-editor-content .ProseMirror thead th{background:#f8fafc;color:#0f172a;font-weight:600}.tiptap-editor-content .ProseMirror td,.tiptap-editor-content .ProseMirror th{border:1px solid #e5e7eb;padding:8px 10px;text-align:left;vertical-align:top;word-break:break-word}.tiptap-editor-content .ProseMirror tbody tr:nth-child(odd){background:#fbfdff}.markdown-editor,.markdown-editor .markdown-preview{width:100%}.message{border-radius:6px;font-size:14px;font-weight:500;padding:12px 16px}.message.success{background:#dcfce7;border:1px solid #bbf7d0;color:#166534}.message.error{background:#fef2f2;border:1px solid #fecaca;color:#dc2626}.modal-backdrop{align-items:center;animation:fadeIn .2s ease-out;backdrop-filter:blur(4px);background:var(--color-overlay-light,rgba(0,0,0,.5));bottom:0;box-sizing:border-box;contain:layout paint;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;will-change:opacity;z-index:var(--z-modal,1000)}.modal-backdrop.closing{animation:fadeOut .2s ease-out forwards}.modal-content{animation:slideIn .3s ease-out;border-radius:var(--radius-12,12px);box-shadow:var(--shadow-modal,0 8px 30px rgba(0,0,0,.15));contain:layout paint style;height:auto;max-height:calc(100vh - 40px);max-width:min(500px,calc(100vw - 40px));overflow:hidden;position:relative;width:100%;will-change:transform,opacity}.modal-content.closing{animation:slideOut .2s ease-out forwards}.modal-content.learning-setup-dialog{max-width:min(500px,calc(100vw - 40px))}.modal-header{background:var(--color-gray-1300,#f9fafb);border-bottom:1px solid var(--color-gray-1200,#e5e7eb);contain:layout;flex-shrink:0;padding:var(--space-16,16px) var(--space-24,20px)}.modal-title{color:#000;font-size:var(--text-16,18px);font-weight:600;margin:0}.modal-close-btn{background:none;border:none;border-radius:var(--radius-6,6px);color:var(--color-gray-500,#6b7280);cursor:pointer;flex-shrink:0;padding:var(--space-4,4px);transition:var(--transition-base,all .2s ease);will-change:background-color,color}.modal-close-btn:hover{background:var(--color-gray-1200,#e5e7eb);color:var(--color-gray-700,#374151)}.modal-body{flex:1;min-height:0;overflow-anchor:none;overflow-y:auto;padding:var(--space-24,24px)}.modal-footer{border-top:1px solid var(--color-gray-1200,#e5e7eb);contain:layout;flex-shrink:0;padding:16px 24px}.add-question-modal .form-group{gap:0!important;margin:0!important}.dialog-overlay{align-items:center;animation:fadeIn .2s ease-out;backdrop-filter:blur(2px);background-color:rgba(0,0,0,.5);bottom:0;contain:layout paint;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;will-change:opacity;z-index:1000}.dialog-overlay.closing{animation:fadeOut .2s ease-out forwards}.dialog-content{animation:slideIn .3s ease-out;background:#fff;border-radius:12px;box-shadow:0 10px 40px rgba(0,0,0,.15);contain:layout paint style;display:flex;flex-direction:column;height:auto;max-height:90vh;position:relative;width:min(1000px,92vw);will-change:transform,opacity}.dialog-content.closing{animation:slideOut .2s ease-out forwards}.dialog-header{align-items:center;border-bottom:1px solid #e2e8f0;contain:layout;display:flex;flex-shrink:0;justify-content:space-between;padding:16px 24px}.dialog-header__title{color:#1a202c;font-size:18px;font-weight:600;margin:0;max-width:calc(100% - 48px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dialog-header__close{align-items:center;background:none;border:none;border-radius:4px;color:#64748b;cursor:pointer;display:flex;font-size:24px;height:32px;justify-content:center;padding:4px;transition:background-color .2s;width:32px;will-change:background-color}.dialog-header__close:hover{background-color:#f1f5f9}.dialog-body{display:flex;flex:1;flex-direction:column;gap:16px;overflow-anchor:none;overflow-x:hidden;overflow-y:auto;padding:24px}.dialog-footer{align-items:center;background:#f8fafc;border-bottom-left-radius:12px;border-bottom-right-radius:12px;border-top:1px solid #e2e8f0;contain:layout;display:flex;flex-shrink:0;gap:12px;padding:16px 24px}.dialog-footer--right{justify-content:flex-end}.dialog-footer--left{justify-content:flex-start}.dialog-footer--space-between{justify-content:space-between}.form-row{align-items:center;display:grid;gap:16px;grid-template-columns:100px 1fr}.form-row,.form-row--full-width{width:100%}.form-row__label{align-self:flex-start;color:#4b5563;font-weight:500;padding-top:8px;text-align:right}.form-row__label--block{color:#4b5563;display:block;font-weight:500;margin-bottom:8px}.form-row__required{color:#ef4444;margin-left:4px}.form-row__control{min-width:0;position:relative}.form-row__error{color:#ef4444;font-size:12px;left:0;line-height:1.4;margin-top:2px;pointer-events:none;position:absolute;top:100%}.dialog-content--large .dialog-body,.modal-content--large .modal-body{contain-intrinsic-size:0 300px;content-visibility:auto}.modal-stack-item{transform:translateZ(0);will-change:transform}.pagination-wrapper{align-items:center;background:#fff;border-top:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:16px 24px}.pagination-wrapper.load-more{border-top:none;justify-content:center}.pagination-left{flex-shrink:0}.pagination-total{color:#374151;font-size:14px}.pagination-right{align-items:center;display:flex;gap:16px}.pagination-size-selector{flex-shrink:0}.pagination-size-selector .rounded-select{min-width:90px}.pagination-nav{align-items:center;display:flex;gap:8px}.pagination-arrow{align-items:center;color:#374151;cursor:pointer;display:flex;height:24px;justify-content:center;transition:color .2s ease;width:24px}.pagination-arrow:hover:not(.disabled){color:#3b82f6}.pagination-arrow.disabled{color:#d1d5db;cursor:not-allowed}.pagination-pages{align-items:center;display:flex;gap:4px}.pagination-page{align-items:center;color:#374151;cursor:pointer;display:flex;font-size:14px;height:24px;justify-content:center;min-width:24px;padding:0 4px;transition:color .2s ease;user-select:none}.pagination-page:hover:not(.active):not(.ellipsis){color:#3b82f6}.pagination-page.active{color:#3b82f6;font-weight:500}.pagination-page.ellipsis{color:#9ca3af;cursor:default}.pagination-btn.more-btn{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;font-size:14px;padding:8px 24px;transition:all .2s ease}.pagination-btn.more-btn:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.pagination-btn.more-btn:disabled{border-color:#e5e7eb;color:#9ca3af;cursor:not-allowed}@media print{.pagination-wrapper{display:none!important}}@media (max-width:640px){.pagination-wrapper{flex-direction:column;gap:12px;padding:12px 16px}.pagination-right{flex-wrap:wrap;justify-content:center}}.meta-item-flex-1{flex:1}.meta-item-flex-2{flex:2}.meta-tag-source{background:#eef2ff;border:1px solid #c7d2fe;border-radius:12px;color:#3730a3}.meta-tag-knowledge,.meta-tag-source{display:inline-block;font-size:12px;padding:2px 8px}.meta-tag-knowledge{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:12px;color:#334155;margin-right:6px}.video-section{margin-top:12px}.video-container{background:#000;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden}.video-player{display:block;max-height:360px;width:100%}.summary-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.summary-header-title{margin:0}.summary-edit-area{margin-bottom:8px}.summary-actions{align-items:center;display:flex;justify-content:space-between}.summary-btn-small{font-size:12px;padding:4px 12px}.summary-btn-group{display:flex;gap:8px}.summary-display-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.summary-display-title{margin:0}.summary-edit-btn-small{font-size:12px;padding:2px 8px}.summary-edit-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.summary-edit-title{margin:0}.summary-editor-wrapper{margin-bottom:8px}.summary-edit-actions{align-items:center;display:flex;justify-content:space-between}.ai-gradient-btn-small{font-size:12px;padding:4px 12px}.summary-edit-buttons{display:flex;gap:8px}.search-input-wrapper{align-items:center;background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;display:flex;position:relative;transition:all .2s ease}.search-input-wrapper:hover{border-color:#d1d5db}.search-input-wrapper:focus-within{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1)}.search-input-wrapper.search-input--plain{background:transparent;border:none;border-radius:0}.search-input-wrapper.search-input--plain:focus-within,.search-input-wrapper.search-input--plain:hover{border:none;box-shadow:none}.search-input-wrapper.search-input--plain .search-input{width:100%}.search-input--sm{height:32px}.search-input--sm .search-input{font-size:13px;padding:0 8px}.search-input--md{height:40px}.search-input--md .search-input{font-size:14px;padding:0 12px}.search-input--lg{height:48px}.search-input--lg .search-input{font-size:15px;padding:0 14px}.search-input{background:transparent;border:none;color:#1f2937;flex:1;min-width:0;outline:none;width:100%}.search-input::placeholder{color:#9ca3af}.search-input:disabled{cursor:not-allowed;opacity:.6}.search-input-wrapper:has(.search-input:disabled){background-color:#f9fafb;cursor:not-allowed}.searchable-multi-select{position:relative;width:100%}.searchable-dropdown-portal{animation:dropdownSlideIn .2s ease-out;background-color:#fff;border:2px solid #e2e8f0;border-radius:12px;box-shadow:0 8px 20px rgba(15,23,42,.12);max-height:280px;overflow-x:hidden;overflow-y:auto;z-index:9999}.searchable-multi-select .input-container{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:12px;cursor:text;display:flex;min-height:44px;padding:8px 12px;transition:all .2s ease}.searchable-multi-select .input-container:hover{border-color:#cbd5e1}.searchable-multi-select .input-container:focus-within{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1)}.searchable-multi-select .input-container.disabled{background:#f3f4f6;cursor:not-allowed}.searchable-multi-select .selected-items{display:flex;flex-wrap:wrap;gap:6px;width:100%}.searchable-multi-select .selected-item{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;box-shadow:0 2px 8px rgba(102,126,234,.3);color:#fff;display:inline-flex;font-size:13px;font-weight:500;padding:6px 12px}.searchable-multi-select .remove-btn{align-items:center;background:hsla(0,0%,100%,.2);border:none;border-radius:50%;color:hsla(0,0%,100%,.8);cursor:pointer;display:inline-flex;font-size:12px;height:18px;justify-content:center;line-height:1;margin-left:6px;transition:all .2s ease;width:18px}.searchable-multi-select .remove-btn:hover{background:hsla(0,0%,100%,.3);color:#fff;transform:scale(1.1)}.searchable-multi-select .search-input{background:transparent;border:none;flex:1;font-size:14px;min-width:80px;outline:none;padding:4px 0}.searchable-dropdown-portal .dropdown-header{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-bottom:1px solid #e2e8f0;color:#64748b;font-size:12px;font-weight:600;letter-spacing:.5px;padding:10px 14px;text-transform:uppercase}.searchable-dropdown-portal .dropdown-divider{background:#f0f0f0;height:1px;margin:4px 0}.searchable-dropdown-portal .dropdown-option{border-bottom:1px solid #f1f5f9;cursor:pointer;padding:12px 16px;transition:all .2s ease}.searchable-dropdown-portal .dropdown-option:last-child{border-bottom:none}.searchable-dropdown-portal .dropdown-option:hover{background:linear-gradient(135deg,#f8fafc,#f1f5f9);padding-left:20px}.searchable-dropdown-portal .dropdown-option.selected{background:linear-gradient(135deg,#eff6ff,#dbeafe);color:#1d4ed8}.searchable-dropdown-portal .create-new{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);color:#0284c7;font-weight:600}.searchable-dropdown-portal .create-new:hover{background:linear-gradient(135deg,#e0f2fe,#bae6fd);color:#0369a1}.searchable-dropdown-portal .create-text{align-items:center;display:flex;font-weight:600;gap:6px}.searchable-dropdown-portal .create-text:before{content:"+";font-size:16px;font-weight:700}.searchable-dropdown-portal .loading-item,.searchable-dropdown-portal .no-options{background:linear-gradient(135deg,#f8fafc,#f1f5f9);color:#64748b;font-size:14px;padding:16px;text-align:center}.searchable-dropdown-portal .option-default{display:flex;flex-direction:column}.tag-option-content{align-items:center;display:flex;flex-direction:row;gap:12px;justify-content:space-between;width:100%}.tag-option-content .tag-name{color:#374151;flex:1;font-size:14px;font-weight:500}.tag-option-content .tag-usage{background:linear-gradient(135deg,#f3f4f6,#e5e7eb);border-radius:12px;color:#64748b;display:inline-block;flex-shrink:0;font-size:11px;font-weight:500;padding:3px 8px;white-space:nowrap}.dropdown-option:hover .tag-option-content .tag-usage{background:linear-gradient(135deg,#e0e7ff,#c7d2fe);color:#4338ca}.slide-over-overlay{bottom:0;contain:layout paint;left:0;position:fixed;right:0;top:0;transition:visibility .3s linear;visibility:hidden;z-index:1000}.slide-over-overlay.open{visibility:visible}.slide-over-backdrop{background-color:rgba(0,0,0,.4);bottom:0;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease-in-out;will-change:opacity}.slide-over-overlay.open .slide-over-backdrop{opacity:1}.slide-over-panel{background-color:#fff;bottom:0;box-shadow:0 0 15px rgba(0,0,0,.1);contain:layout paint style;display:flex;flex-direction:column;max-width:100%;position:absolute;top:0;transition:transform .3s ease-in-out;will-change:transform}.slide-over-panel.right{right:0;transform:translateX(100%)}.slide-over-panel.left{left:0;transform:translateX(-100%)}.slide-over-panel.open{transform:translateX(0)}.slide-over-header{align-items:center;border-bottom:1px solid #e5e7eb;contain:layout;display:flex;flex-shrink:0;justify-content:space-between;padding:16px 24px}.slide-over-title{color:#111827;font-size:18px;font-weight:600}.slide-over-close{align-items:center;background:transparent;border:none;border-radius:4px;color:#6b7280;cursor:pointer;display:flex;justify-content:center;padding:4px;transition:background-color .2s;will-change:background-color}.slide-over-close:hover{background-color:#f3f4f6;color:#111827}.slide-over-body{flex:1;overflow-anchor:none;overflow-y:auto;padding:24px}.slide-over-panel--large .slide-over-body{contain-intrinsic-size:0 400px;content-visibility:auto}.slide-over-panel.home-feature-slideover .slide-over-body{padding-top:8px}.slide-over-footer{background-color:#f9fafb;border-top:1px solid #e5e7eb;contain:layout;flex-shrink:0;padding:16px 24px}.slide-over-panel--small{width:min(400px,100%)}.slide-over-panel--medium{width:min(600px,100%)}.slide-over-panel--large{width:min(800px,100%)}@media (max-width:768px){.slide-over-panel{width:100%!important}}.status-badge{align-items:center;display:inline-flex;transition:all .2s ease;white-space:nowrap}.status-badge--sm{font-size:12px;padding:2px 8px}.status-badge--md{font-size:13px;padding:4px 12px}.status-badge--lg{font-size:14px;padding:6px 16px}.status-badge--default{background-color:#f3f4f6;color:#374151}.status-badge--success{background-color:#dcfce7;color:#166534}.status-badge--warning{background-color:#fef3c7;color:#92400e}.status-badge--error{background-color:#fee2e2;color:#991b1b}.status-badge--info{background-color:#e0f2fe;color:#0369a1}.status-badge--pending{background-color:#f3e8ff;color:#6b21a8}.status-badge--outline.status-badge--default{background-color:transparent;border:1px solid #374151}.status-badge--outline.status-badge--success{background-color:transparent;border:1px solid #166534}.status-badge--outline.status-badge--warning{background-color:transparent;border:1px solid #92400e}.status-badge--outline.status-badge--error{background-color:transparent;border:1px solid #991b1b}.status-badge--outline.status-badge--info{background-color:transparent;border:1px solid #0369a1}.status-badge--outline.status-badge--pending{background-color:transparent;border:1px solid #6b21a8}.status-badge__dot{border-radius:50%;flex-shrink:0}.status-badge--sm .status-badge__dot{height:6px;width:6px}.status-badge--md .status-badge__dot{height:8px;width:8px}.status-badge--lg .status-badge__dot{height:10px;width:10px}.status-badge--interactive:hover{cursor:pointer;opacity:.8}.subject-selector{display:flex;flex-wrap:wrap;gap:var(--space-8)}.subject-btn{align-items:center;background:var(--color-gray-50);border:1px solid var(--color-gray-200);border-radius:var(--radius-full);color:inherit;cursor:pointer;display:inline-flex;font-size:var(--text-14);padding:var(--space-8) var(--space-12);transition:var(--transition-base)}.subject-btn:hover{background:var(--color-purple-100);border-color:var(--color-purple-400)}.subject-btn:focus{box-shadow:var(--shadow-focus);outline:none}.subject-btn.is-active{background:var(--color-purple-100);border-color:var(--color-purple-400);color:var(--color-purple-700)}.subject-btn__icon{align-items:center;display:inline-flex;margin-right:var(--space-6)}.subject-btn--colored{border-radius:var(--radius-full);font-size:var(--text-16);padding:var(--space-10) var(--space-14)}.subject-btn--colored .subject-btn__icon{margin-right:var(--space-4)}@media (max-width:640px){.subject-selector{gap:var(--space-6)}.subject-btn{font-size:var(--text-13);padding:var(--space-6) var(--space-10)}.subject-btn--colored{font-size:var(--text-14);padding:var(--space-8) var(--space-12)}}.data-table{background:#fff;border:1px solid #e2e8f0;border-collapse:separate;border-radius:8px;border-spacing:0;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06);margin-left:10px;margin-right:10px;margin-top:4px;width:calc(100% - 20px)}.data-table--simple{border:none;border-collapse:collapse;border-radius:0;box-shadow:none}.data-table td,.data-table th{border-bottom:1px solid #f1f5f9;color:#000;padding:10px 16px;text-align:left;transition:all .2s ease}.data-table th{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-bottom:2px solid #e2e8f0;color:#000;font-size:14px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.data-table th:first-child{border-top-left-radius:8px}.data-table th:last-child{border-top-right-radius:8px}.data-table tbody tr{background:#fff;transition:all .3s ease}.data-table tbody tr:hover{background:linear-gradient(135deg,#f8fafc,#f1f5f9)}.data-table__row--last td:first-child{border-bottom-left-radius:8px}.data-table__row--last td:last-child{border-bottom-right-radius:8px}.data-table__row--last td{border-bottom:none}.data-table .btn{border:none;border-radius:4px;cursor:pointer;font-size:12px;font-weight:500;margin:0 2px;padding:4px 12px;transition:all .2s ease}.data-table .btn--link{border-radius:0;margin:0 2px;padding:0 4px}.data-table .btn:hover{box-shadow:0 2px 8px rgba(0,0,0,.15);transform:translateY(-1px)}.data-table .btn--link:hover{box-shadow:none;transform:none}.data-table td span[style*=color]{border-radius:20px;font-size:12px;font-weight:600;letter-spacing:.5px;padding:2px 8px;text-transform:uppercase}.data-table input[type=checkbox]{border:2px solid #d1d5db;border-radius:4px;cursor:pointer;height:18px;transition:all .2s ease;width:18px}.data-table input[type=checkbox]:checked{background-color:#3b82f6;border-color:#3b82f6}.data-table input[type=checkbox]:hover{border-color:#3b82f6;transform:scale(1.1)}.review-table{background:#fff;border:1px solid #e2e8f0;border-radius:16px;overflow:hidden}.review-table__row{align-items:start;border-bottom:1px solid #f1f5f9;display:grid;gap:12px;grid-template-columns:3fr 1fr;padding:12px 16px}.review-table__row:hover{background:#f9fafb}.review-table__row--head{background:linear-gradient(135deg,#60a5fa,#3b82f6);color:#fff;font-weight:600}.review-table__row:last-child{border-bottom:none}.review-table__cell{color:#334155;font-size:14px}.review-table__cell--fixed{overflow:hidden}.review-table__cell:last-child{align-items:center;display:flex;gap:8px;justify-content:flex-end}.score-table{background:#fff;border:1px solid #d1d5db}.score-table th{background:#f3f4f6;border-bottom:1px solid #d1d5db;color:#374151}.score-table td{border-bottom:1px solid #e5e7eb;color:#374151}.score-table td.positive{color:#059669}.score-table td.negative{color:#dc2626}.score-table td.zero{color:#111827}.table-section{margin:var(--space-24,24px) 0}.set-meta{color:var(--color-gray-500,#64748b);font-size:var(--text-12,12px)}.set-item{margin-bottom:var(--space-4,4px)}.order-status-badge{background:var(--color-success-100,#dcfce7);border-radius:4px;color:var(--color-success-700,#15803d);font-size:var(--text-12,12px);padding:2px 6px}.order-status-badge--pending{background:var(--color-warning-100,#fef9c3);color:var(--color-warning-700,#a16207)}.order-status-badge--paid{background:var(--color-success-100,#dcfce7);color:var(--color-success-700,#15803d)}.order-status-badge--refunded{background:var(--color-danger-100,#fee2e2);color:var(--color-danger-700,#b91c1c)}.filter-row{gap:var(--space-8,8px);justify-content:flex-end;width:100%}.filter-row,.filter-section{align-items:center;display:flex}.filter-section{justify-content:space-between;margin-bottom:var(--space-12,12px)}.filter-left{align-items:center;display:flex;gap:var(--space-12,12px)}.date-separator,.filter-label{color:var(--color-gray-500,#64748b)}.filter-label{font-size:var(--text-14,14px)}.filter-select{background:transparent;border:none;padding:0}.filter-settlement-select{min-width:160px}.action-buttons{display:flex;gap:var(--space-8,8px)}.empty-section{align-items:center;display:flex;justify-content:center;margin-bottom:var(--space-24,24px)}.tag-selector{position:relative;width:100%}.tag-selector .tag-input-container{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:12px;cursor:text;display:flex;flex-wrap:wrap;min-height:44px;padding:8px 12px;transition:all .2s ease}.tag-selector .tag-input-container:hover{border-color:#cbd5e1}.tag-selector .tag-input-container:focus-within{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1)}.tag-selector .selected-tags{display:flex;flex-wrap:wrap;gap:4px;margin-right:8px}.tag-selector .tag-item{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:20px;box-shadow:0 2px 8px rgba(102,126,234,.3);color:#fff;font-size:13px;font-weight:500;padding:6px 12px}.tag-selector .tag-item,.tag-selector .tag-remove{align-items:center;display:inline-flex;transition:all .2s ease}.tag-selector .tag-remove{background:hsla(0,0%,100%,.2);border:none;border-radius:50%;color:hsla(0,0%,100%,.8);cursor:pointer;font-size:12px;height:18px;justify-content:center;line-height:1;margin-left:6px;padding:2px 4px;width:18px}.tag-selector .tag-remove:hover{background:hsla(0,0%,100%,.3);color:#fff;transform:scale(1.1)}.tag-selector .tag-input{border:none;flex:1;font-size:14px;min-width:120px;outline:none;padding:4px 0}.tag-selector .tag-dropdown{animation:tagDropdownSlideIn .2s ease-out;background:#fff;border:2px solid #e2e8f0;border-radius:12px;box-shadow:0 8px 20px rgba(15,23,42,.12);left:0;max-height:280px;overflow-y:auto;position:absolute;right:0;top:calc(100% + 4px);z-index:1000}@keyframes tagDropdownSlideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.tag-selector .dropdown-header{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-bottom:1px solid #e2e8f0;color:#64748b;font-size:12px;font-weight:600;letter-spacing:.5px;padding:10px 14px;text-transform:uppercase}.tag-selector .tag-suggestion{align-items:center;border-bottom:1px solid #f1f5f9;cursor:pointer;display:flex;font-size:14px;justify-content:space-between;padding:12px 16px;transition:all .2s ease}.tag-selector .tag-suggestion:last-child{border-bottom:none}.tag-selector .tag-suggestion:hover{background:linear-gradient(135deg,#f8fafc,#f1f5f9);padding-left:20px}.tag-selector .tag-suggestion.selected{background:linear-gradient(135deg,#eff6ff,#dbeafe);color:#1d4ed8}.tag-selector .tag-name{color:#374151;font-weight:500}.tag-selector .tag-usage{background:linear-gradient(135deg,#f3f4f6,#e5e7eb);border-radius:12px;color:#64748b;font-size:11px;font-weight:500;padding:3px 8px;white-space:nowrap}.tag-selector .tag-suggestion:hover .tag-usage{background:linear-gradient(135deg,#e0e7ff,#c7d2fe);color:#4338ca}.tag-selector .create-new{align-items:center;color:#3b82f6;display:flex;font-weight:600;gap:6px}.tag-selector .create-new:before{content:"+";font-size:16px;font-weight:700}.tag-selector .no-suggestions{background:linear-gradient(135deg,#f8fafc,#f1f5f9);color:#64748b;font-size:14px;padding:16px;text-align:center}.welcome-card{border:none;border-radius:16px;box-shadow:0 10px 30px rgba(15,23,42,.45);color:#e5e7eb;margin-bottom:24px;padding:24px}.welcome-card--horizontal{align-items:center;display:grid;gap:24px;grid-template-columns:3fr 7fr}.welcome-card__header{max-width:600px}.welcome-card--horizontal .welcome-card__header{max-width:none}.welcome-card__subtitle{font-size:16px;opacity:.9}.welcome-card__title{font-size:26px;font-weight:700;line-height:1.3;margin-bottom:8px;margin-top:8px}.welcome-card__description{font-size:13px;line-height:1.6;opacity:.8}.welcome-card__stats{display:flex;flex-wrap:wrap;gap:16px;margin-top:16px}.welcome-card__stat{display:flex;flex-direction:column;gap:4px}.welcome-card__stat-label{font-size:12px;margin-bottom:4px;opacity:.7}.welcome-card__stat-value{font-size:20px;font-weight:600}.welcome-card__stat-value--income{color:#facc15}.welcome-card__stat-value--pending{color:#34d399}.welcome-card__actions{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-top:24px}.welcome-card--horizontal .welcome-card__actions{display:flex;flex-direction:row;flex-wrap:nowrap;gap:16px;margin-top:0;min-width:0}.welcome-card--horizontal .welcome-card__action{flex:1;max-width:none;min-width:0}.welcome-card__action{align-items:center;background:hsla(0,0%,100%,.95);border-radius:12px;color:inherit;display:flex;gap:12px;padding:16px;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease}.welcome-card__action:hover{box-shadow:0 8px 24px rgba(0,0,0,.15);transform:translateY(-2px)}.welcome-card__action-icon{align-items:center;border-radius:10px;display:flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.welcome-card__action-content{flex:1;min-width:0;overflow:hidden}.welcome-card__action-content h3{color:#1f2937;font-size:14px;font-weight:600;margin:0}.welcome-card__action-content p{color:#6b7280;font-size:12px;line-height:1.4;margin:4px 0 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.welcome-card__action-arrow{color:#9ca3af;flex-shrink:0;font-size:18px;font-weight:300}@media (max-width:1200px){.welcome-card--horizontal{gap:20px;grid-template-columns:1fr}.welcome-card--horizontal .welcome-card__actions{flex-wrap:wrap;margin-top:20px}.welcome-card--horizontal .welcome-card__action{flex:1 1 calc(50% - 8px);min-width:200px}}@media (max-width:768px){.welcome-card{padding:20px}.welcome-card__title{font-size:22px}.welcome-card__stats{gap:12px}.welcome-card--horizontal .welcome-card__actions,.welcome-card__actions{flex-direction:column}.welcome-card--horizontal .welcome-card__action{flex:1 1 100%;min-width:auto}}.welcome-card--compact{padding:20px}.welcome-card--compact .welcome-card__title{font-size:22px}.welcome-card--compact .welcome-card__actions{margin-top:16px}.welcome-card--compact .welcome-card__action{padding:12px}.admin-container{background-color:#f8fafc;display:flex;height:100vh;overflow:hidden}.admin-sidebar{background-color:#fff;border-right:1px solid #e2e8f0;display:flex;flex-direction:column;width:250px;z-index:10}.admin-content{flex:1;overflow-y:auto;padding:24px}.content-page,.page-container{box-sizing:border-box;padding:24px;width:100%}.admin-settings-page .page-container,.content-page .content-page,.content-page .page-container,.page-container .page-container{padding:0}.app-layout{background-color:#f1f5f9;display:flex;flex-direction:column;height:100vh}.app-body{background:#fff;border-radius:16px;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06);display:flex;flex:1;height:calc(100vh - 270px);margin:10px;overflow:hidden;overflow-x:hidden;position:relative}.app-body.app-body--full{border-radius:0;box-shadow:none;height:100vh;margin:0}.sidebar{border-right:1px solid #f1f5f9;flex-direction:column;flex-shrink:0;width:240px}.main-content,.sidebar{background:#fff;display:flex;overflow-y:auto}.main-content{flex:1;flex-direction:column;overflow-x:hidden;padding:0;position:relative}.nav-menu{list-style:none;margin:0;padding:16px}.nav-menu li{margin-bottom:4px}.nav-menu li a{align-items:center;border-radius:8px;color:#64748b;display:flex;font-size:14px;font-weight:500;gap:12px;padding:10px 16px;text-decoration:none;transition:all .2s ease}.nav-menu li a:hover{background-color:#f8fafc;color:#1e293b}.nav-menu li.active a{background-color:#eef2ff;color:#4f46e5;font-weight:600}.nav-menu .menu-icon{align-items:center;display:flex;font-size:18px;justify-content:center;width:24px}.app-header{align-items:center;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:hsla(0,0%,100%,.95);box-shadow:0 2px 20px rgba(0,0,0,.1);display:flex;flex-shrink:0;height:70px;padding:0;position:sticky;top:0;z-index:100}.app-header,.home-header{border-bottom:1px solid hsla(0,0%,100%,.2)}.home-header{backdrop-filter:blur(10px);background:hsla(0,0%,100%,.1)}.header-container{align-items:center;display:flex;height:100%;justify-content:space-between;padding:0 1.5rem;width:100%}.header-actions{gap:16px}.header-actions,.logo{align-items:center;display:flex}.logo{flex-shrink:0}.logo-link{align-items:center;display:flex;gap:.75rem;text-decoration:none;transition:all .3s ease}.logo-link:hover{transform:translateY(-1px)}.logo-icon{align-items:center;border-radius:8px;display:flex;justify-content:center;transition:all .3s ease}.logo-icon:hover{transform:scale(1.05)}.logo-text{font-size:1.5rem;font-weight:700;letter-spacing:-.02em}.home-header .logo-text,.logo-text{-webkit-text-fill-color:transparent;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text}.app-header .logo-text--beta,.home-header .logo-text--beta{-webkit-text-fill-color:transparent;background:linear-gradient(135deg,#f59e0b,#d97706);-webkit-background-clip:text;background-clip:text}.header-center{flex:1;justify-content:center}.header-center,.main-nav{align-items:center;display:flex}.main-nav{gap:1.5rem}.nav-link{align-items:center;background:transparent;border:none;border-radius:8px;color:#4a5568;cursor:pointer;display:flex;font-weight:500;gap:.5rem;overflow:hidden;padding:.75rem 1rem;position:relative;text-decoration:none;transition:all .3s ease}.nav-link.nav-link--active{background:#eef2ff;border:none;box-shadow:none;color:#3b82f6;font-weight:700}.nav-link.nav-link--active:before{left:-100%;opacity:0}.nav-link.nav-link--active:focus{box-shadow:none;outline:none}.nav-item-with-submenu{position:relative}.submenu-dropdown{background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 8px 24px rgba(0,0,0,.12);left:0;min-width:160px;padding:8px;position:absolute;top:calc(100% + 6px);z-index:1000}.submenu-item{border-radius:8px;color:#334155;display:block;padding:8px 10px;text-decoration:none}.submenu-item:hover{background:#f1f5f9;color:#111827}.submenu-item.active{background:#eef2ff;color:#3b82f6;font-weight:700}.nav-link:before{background:linear-gradient(135deg,#667eea,#764ba2);content:"";height:100%;left:-100%;opacity:.1;position:absolute;top:0;transition:left .3s ease;width:100%;z-index:-1}.nav-link:hover:before{left:0}.nav-link:hover{box-shadow:0 4px 12px rgba(102,126,234,.2);color:#667eea;transform:translateY(-1px)}.nav-link svg{height:16px;transition:all .3s ease;width:16px}.nav-link:hover svg{transform:scale(1.1)}.nav-link:focus{box-shadow:0 0 0 2px rgba(102,126,234,.25);outline:none}.nav-item-with-submenu>.nav-link{background:transparent;border:none}.nav-item-with-submenu>.nav-link:focus{outline:none}.header-right{flex-shrink:0}.header-right,.user-menu{align-items:center;display:flex;gap:1rem}.user-menu{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:hsla(0,0%,100%,.8);border:1px solid hsla(0,0%,100%,.3);border-radius:12px;padding:.5rem 1rem;transition:all .3s ease}.user-menu:hover{background:hsla(0,0%,100%,.9);box-shadow:0 4px 12px rgba(0,0,0,.1);transform:translateY(-1px)}.avatar-circle{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;color:#fff;display:flex;font-size:.9rem;font-weight:600;height:100%;justify-content:center;letter-spacing:.5px;min-height:36px;min-width:36px;transition:all .3s ease;width:100%}.avatar-circle:hover{transform:scale(1.05)}.user-details{display:flex;flex-direction:column;gap:.125rem}.username{color:#2d3748;font-size:.9rem;font-weight:600}.user-role{color:#718096;font-size:.75rem;letter-spacing:.5px;text-transform:uppercase}.logout-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:.85rem;font-weight:500;gap:.5rem;padding:.5rem 1rem;transition:all .3s ease}.logout-btn:hover{background:linear-gradient(135deg,#5a67d8,#6b46c1);box-shadow:0 4px 12px rgba(102,126,234,.3);transform:translateY(-1px)}.logout-btn svg{height:16px;transition:all .3s ease;width:16px}.logout-btn:hover svg{transform:scale(1.1)}.auth-actions{gap:1rem}.auth-actions,.login-btn{align-items:center;display:flex}.login-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;text-decoration:none;transition:all .3s ease}.login-btn:hover{background:linear-gradient(135deg,#5a67d8,#6b46c1);box-shadow:0 4px 12px rgba(102,126,234,.3);color:#fff;transform:translateY(-1px)}.login-btn svg{height:16px;transition:all .3s ease;width:16px}.login-btn:hover svg{transform:scale(1.1)}.user-menu-dropdown{animation:menuFadeIn .2s ease-out;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:12px;box-shadow:0 8px 32px rgba(0,0,0,.12);margin-top:8px;min-width:180px;overflow:hidden;position:absolute;right:0;top:100%;z-index:1000}@keyframes menuFadeIn{0%{opacity:0;transform:translateY(-8px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.user-menu-items{padding:8px 0}.user-menu-item{align-items:center;background:none;border:none;color:#374151;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:12px;padding:12px 16px;text-decoration:none;transition:all .15s ease;width:100%}.user-menu-item:hover{background:#f9fafb;color:#111827}.user-menu-item svg{color:#6b7280;flex-shrink:0}.user-menu-item:hover svg{color:#374151}.user-menu-divider{background:#e5e7eb;height:1px;margin:8px 0}.logout-item{color:#dc2626!important}.logout-item:hover{background:#fef2f2!important;color:#b91c1c!important}.logout-item svg{color:#dc2626!important}.logout-item:hover svg{color:#b91c1c!important}.user-section{position:relative}.user-info{align-items:center;background:transparent;border:none;border-radius:50%;box-shadow:none;cursor:pointer;display:flex;height:44px;justify-content:center;transition:all .3s ease;width:44px}.user-info:hover{transform:scale(1.06)}.user-avatar{align-items:center;display:flex;justify-content:center}.user-avatar svg{color:#4f46e5;filter:drop-shadow(0 1px 2px rgba(0,0,0,.1));transition:all .3s ease}.user-info:hover .user-avatar svg{color:#3730a3;transform:scale(1.05)}.vip-badge{background-color:#fef3c7;border:1px solid #fed7aa;border-radius:999px;box-shadow:none;color:#b45309;font-size:12px;font-weight:600;letter-spacing:.5px;padding:2px 10px;position:absolute;right:calc(100% + 8px);top:50%;transform:translateY(-50%);white-space:nowrap}@media (max-width:768px){.header-container{padding:0 1rem}.header-center{flex:0;margin:0 1rem}.main-nav{display:none}.header-right{gap:.5rem}.user-menu{background:transparent;border:none;padding:.25rem}.user-details,.user-role{display:none}}body.login-page{overflow:hidden}body.onboarding-page{height:100vh;overflow:hidden}.app{display:flex;flex-direction:column;min-height:100vh}.app .main-content{flex:1;max-height:calc(var(--viewport-height-100) - var(--height-header));overflow-y:auto}.app .main-content.no-global-scroll{height:calc(var(--viewport-height-100) - var(--height-header));max-height:none;overflow-y:hidden}.main-content.no-global-scroll{overflow-y:hidden}.app .main-content.onboarding-full{height:100vh;overflow:hidden}.plan-no-browser-scroll{overflow-y:hidden}.container{margin:0 auto;max-width:var(--container-max-width);padding:0 var(--container-padding)}.mobile-achievement-detail{background:var(--mobile-bg-primary,#f5f7fa);min-height:100%;padding:var(--mobile-space-md,16px)}.mobile-achievement-detail__header{align-items:center;display:flex;gap:var(--mobile-space-sm,12px);margin-bottom:var(--mobile-space-lg,24px);padding-top:var(--mobile-space-sm,12px)}.mobile-achievement-detail__back{align-items:center;background:var(--mobile-bg-secondary,#fff);border:none;border-radius:50%;color:var(--mobile-text-primary,#262626);cursor:pointer;display:flex;height:36px;justify-content:center;transition:background-color .2s;width:36px}.mobile-achievement-detail__back:active{background:var(--mobile-bg-tertiary,#f0f0f0)}.mobile-achievement-detail__title{color:var(--mobile-text-primary,#262626);font-size:var(--mobile-font-lg,18px);font-weight:600}.mobile-achievement-detail__card{background:var(--mobile-bg-secondary,#fff);border-radius:var(--mobile-radius-lg,16px);box-shadow:0 2px 8px rgba(0,0,0,.04);margin-bottom:var(--mobile-space-lg,24px);padding:var(--mobile-space-xl,32px);text-align:center}.mobile-achievement-detail__card--unlocked{background:linear-gradient(135deg,#fffbe6,#fff7e6);border:2px solid #ffd666}.mobile-achievement-detail__card--locked{background:var(--mobile-bg-secondary,#fff);border:2px solid var(--mobile-border-color,#e8e8e8)}.mobile-achievement-detail__icon{align-items:center;background:var(--mobile-bg-tertiary,#f5f5f5);border-radius:50%;display:flex;height:80px;justify-content:center;margin:0 auto var(--mobile-space-md,16px);width:80px}.mobile-achievement-detail__card--unlocked .mobile-achievement-detail__icon{background:#fff7e6}.mobile-achievement-detail__emoji{font-size:48px;line-height:1}.mobile-achievement-detail__name{color:var(--mobile-text-primary,#262626);font-size:var(--mobile-font-xl,20px);font-weight:600;margin-bottom:var(--mobile-space-sm,12px)}.mobile-achievement-detail__status{align-items:center;display:flex;font-size:var(--mobile-font-sm,14px);gap:4px;justify-content:center}.mobile-achievement-detail__status--unlocked{color:#52c41a;font-weight:500}.mobile-achievement-detail__status--locked{color:var(--mobile-text-tertiary,#8c8c8c)}.mobile-achievement-detail__section{background:var(--mobile-bg-secondary,#fff);border-radius:var(--mobile-radius-md,12px);box-shadow:0 2px 8px rgba(0,0,0,.04);margin-bottom:var(--mobile-space-md,16px);padding:var(--mobile-space-md,16px)}.mobile-achievement-detail__section-title{color:var(--mobile-text-secondary,#595959);font-size:var(--mobile-font-sm,14px);font-weight:500;margin-bottom:var(--mobile-space-xs,8px)}.mobile-achievement-detail__section-content{color:var(--mobile-text-primary,#262626);font-size:var(--mobile-font-md,16px);line-height:1.6}.mobile-achievement-detail__tip{align-items:center;background:#e6f7ff;border-radius:var(--mobile-radius-md,12px);display:flex;gap:var(--mobile-space-sm,12px);margin-top:var(--mobile-space-lg,24px);padding:var(--mobile-space-md,16px)}.mobile-achievement-detail__tip-icon{flex-shrink:0;font-size:24px}.mobile-achievement-detail__tip-text{color:#096dd9;font-size:var(--mobile-font-sm,14px);line-height:1.5}.mobile-achievement-detail__empty{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:var(--mobile-space-3xl,48px) var(--mobile-space-md,16px);text-align:center}.mobile-achievement-detail__empty-icon{font-size:64px;margin-bottom:var(--mobile-space-md,16px);opacity:.5}.mobile-achievement-detail__empty-text{color:var(--mobile-text-secondary,#595959);font-size:var(--mobile-font-md,16px)}.mobile-ai__welcome{align-items:center;background:linear-gradient(180deg,#e6f7ff,#fff);border-radius:var(--mobile-radius-xl);display:flex;flex-direction:column;margin-bottom:var(--mobile-space-lg);padding:var(--mobile-space-lg);text-align:center}.mobile-ai__welcome-avatar{align-items:center;background:#1890ff;border-radius:50%;color:#fff;display:flex;font-size:28px;height:64px;justify-content:center;margin-bottom:var(--mobile-space-md);width:64px}.mobile-ai__welcome-title{color:var(--mobile-text-primary);font-size:var(--mobile-font-xl);font-weight:var(--mobile-font-semibold);margin-bottom:var(--mobile-space-xs)}.mobile-ai__welcome-desc{color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm);line-height:var(--mobile-line-height-relaxed)}.mobile-ai__quick{margin-bottom:var(--mobile-space-lg)}.mobile-ai__quick-title{color:var(--mobile-text-primary);font-size:var(--mobile-font-lg);font-weight:var(--mobile-font-semibold);margin-bottom:var(--mobile-space-md)}.mobile-ai__quick-grid{display:grid;gap:var(--mobile-space-md);grid-template-columns:1fr 1fr}.mobile-ai__quick-card{-webkit-tap-highlight-color:transparent;background:var(--mobile-bg-primary);border-radius:var(--mobile-radius-lg);box-shadow:var(--mobile-shadow-sm);cursor:pointer;padding:var(--mobile-space-md);transition:transform var(--mobile-transition-fast)}.mobile-ai__quick-card:active{transform:scale(.97)}.mobile-ai__quick-icon{align-items:center;border-radius:var(--mobile-radius-md);display:flex;font-size:18px;height:36px;justify-content:center;margin-bottom:var(--mobile-space-sm);width:36px}.mobile-ai__quick-icon--parse{background:#e6f7ff;color:#1890ff}.mobile-ai__quick-icon--explain{background:#f6ffed;color:#52c41a}.mobile-ai__quick-icon--plan{background:#fff7e6;color:#faad14}.mobile-ai__quick-icon--analyze{background:#f9f0ff;color:#722ed1}.mobile-ai__quick-label{color:var(--mobile-text-primary);font-size:var(--mobile-font-md);font-weight:var(--mobile-font-medium)}.mobile-ai__quick-desc{color:var(--mobile-text-tertiary);font-size:var(--mobile-font-xs);margin-top:2px}.mobile-ai__history{margin-bottom:var(--mobile-space-lg)}.mobile-ai__history-title{color:var(--mobile-text-primary);font-size:var(--mobile-font-lg);font-weight:var(--mobile-font-semibold);margin-bottom:var(--mobile-space-md)}.mobile-ai__history-list{background:var(--mobile-bg-primary);border-radius:var(--mobile-radius-lg);box-shadow:var(--mobile-shadow-sm);overflow:hidden}.mobile-ai__history-item{align-items:center;border-bottom:1px solid var(--mobile-border-light);cursor:pointer;display:flex;padding:var(--mobile-space-md);transition:background-color var(--mobile-transition-fast)}.mobile-ai__history-item:last-child{border-bottom:none}.mobile-ai__history-item:active{background-color:var(--mobile-bg-tertiary)}.mobile-ai__history-content{flex:1;min-width:0}.mobile-ai__history-item-title{color:var(--mobile-text-primary);font-size:var(--mobile-font-md);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-ai__history-item-meta{color:var(--mobile-text-tertiary);display:flex;font-size:var(--mobile-font-xs);gap:var(--mobile-space-sm);margin-top:2px}.mobile-ai__history-arrow{color:var(--mobile-text-tertiary);margin-left:var(--mobile-space-sm)}.mobile-ai__chat{background:var(--mobile-bg-secondary);bottom:0;display:flex;flex-direction:column;left:0;position:fixed;right:0;top:0;z-index:200}.mobile-ai__chat-header{align-items:center;background:var(--mobile-bg-primary);border-bottom:1px solid var(--mobile-border-light);display:flex;padding:var(--mobile-space-md);padding-top:calc(var(--mobile-space-md) + var(--mobile-safe-area-top))}.mobile-ai__chat-back{align-items:center;background:none;border:none;color:var(--mobile-text-primary);cursor:pointer;display:flex;height:32px;justify-content:center;margin-right:var(--mobile-space-sm);width:32px}.mobile-ai__chat-title{color:var(--mobile-text-primary);flex:1;font-size:var(--mobile-font-lg);font-weight:var(--mobile-font-semibold);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-ai__chat-messages{-webkit-overflow-scrolling:touch;display:flex;flex:1;flex-direction:column;gap:var(--mobile-space-md);overflow-y:auto;padding:var(--mobile-space-md)}.mobile-ai__bubble{border-radius:var(--mobile-radius-lg);font-size:var(--mobile-font-md);line-height:var(--mobile-line-height-relaxed);max-width:80%;padding:var(--mobile-space-md);word-break:break-word}.mobile-ai__bubble--ai{align-self:flex-start;background:#f5f5f5;border-bottom-left-radius:var(--mobile-radius-sm);color:var(--mobile-text-primary)}.mobile-ai__bubble--user{align-self:flex-end;background:#1890ff;border-bottom-right-radius:var(--mobile-radius-sm);color:#fff}.mobile-ai__bubble--typing{position:relative}.mobile-ai__typing-cursor{animation:mobile-cursor-blink 1s infinite;color:#1890ff;display:inline-block;font-weight:var(--mobile-font-bold);margin-left:2px}@keyframes mobile-cursor-blink{0%,50%{opacity:1}51%,to{opacity:0}}.mobile-ai__input{align-items:flex-end;background:var(--mobile-bg-primary);border-top:1px solid var(--mobile-border-light);display:flex;gap:var(--mobile-space-sm);padding:var(--mobile-space-md);padding-bottom:calc(var(--mobile-space-md) + var(--mobile-safe-area-bottom))}.mobile-ai__input-camera{align-items:center;background:none;border:none;color:var(--mobile-text-secondary);cursor:pointer;display:flex;flex-shrink:0;height:36px;justify-content:center;width:36px}.mobile-ai__input-field{-webkit-appearance:none;background:var(--mobile-bg-primary);border:1px solid var(--mobile-border-medium);border-radius:20px;color:var(--mobile-text-primary);flex:1;font-size:var(--mobile-font-md);line-height:var(--mobile-line-height-normal);max-height:100px;min-height:36px;outline:none;padding:var(--mobile-space-sm) var(--mobile-space-md);resize:none}.mobile-ai__input-field:focus{border-color:#1890ff}.mobile-ai-search__overlay{background:rgba(0,0,0,.5);bottom:0;left:0;position:fixed;right:0;top:0;z-index:300}.mobile-ai-search{background:var(--mobile-bg-secondary);bottom:0;display:flex;flex-direction:column;left:0;position:absolute;right:0;top:0}.mobile-ai-search__header{align-items:center;background:var(--mobile-bg-primary);border-bottom:1px solid var(--mobile-border-light);display:flex;gap:var(--mobile-space-sm);padding:var(--mobile-space-md);padding-top:calc(var(--mobile-space-md) + var(--mobile-safe-area-top))}.mobile-ai-search__input-wrapper{align-items:center;background:#f5f5f5;border-radius:var(--mobile-radius-full);display:flex;flex:1;gap:var(--mobile-space-sm);padding:var(--mobile-space-sm) var(--mobile-space-md)}.mobile-ai-search__icon{color:var(--mobile-text-tertiary);flex-shrink:0}.mobile-ai-search__input{background:none;border:none;color:var(--mobile-text-primary);flex:1;font-size:var(--mobile-font-md);outline:none}.mobile-ai-search__input::placeholder{color:var(--mobile-text-tertiary)}.mobile-ai-search__clear{align-items:center;background:var(--mobile-text-tertiary);border:none;border-radius:50%;color:#fff;display:flex;flex-shrink:0;height:20px;justify-content:center;width:20px}.mobile-ai-search__cancel,.mobile-ai-search__clear{-webkit-tap-highlight-color:transparent;cursor:pointer}.mobile-ai-search__cancel{background:none;border:none;color:var(--mobile-text-secondary);font-size:var(--mobile-font-md);padding:var(--mobile-space-sm) var(--mobile-space-md)}.mobile-ai-search__content{-webkit-overflow-scrolling:touch;flex:1;overflow-y:auto}.mobile-ai-search__history{padding:var(--mobile-space-md)}.mobile-ai-search__history-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--mobile-space-md)}.mobile-ai-search__history-title{color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm)}.mobile-ai-search__history-clear{-webkit-tap-highlight-color:transparent;background:none;border:none;color:#1890ff;cursor:pointer;font-size:var(--mobile-font-sm)}.mobile-ai-search__history-list{display:flex;flex-direction:column}.mobile-ai-search__history-item{-webkit-tap-highlight-color:transparent;align-items:center;border-bottom:1px solid var(--mobile-border-light);color:var(--mobile-text-secondary);cursor:pointer;display:flex;gap:var(--mobile-space-sm);padding:var(--mobile-space-md) 0}.mobile-ai-search__history-item:last-child{border-bottom:none}.mobile-ai-search__history-item:active{background:var(--mobile-bg-tertiary)}.mobile-ai-search__history-text{color:var(--mobile-text-primary);flex:1;font-size:var(--mobile-font-md)}.mobile-ai-search__history-remove{-webkit-tap-highlight-color:transparent;background:none;border:none;cursor:pointer;height:24px;width:24px}.mobile-ai-search__empty,.mobile-ai-search__history-remove{align-items:center;color:var(--mobile-text-tertiary);display:flex;justify-content:center}.mobile-ai-search__empty{flex-direction:column;padding:var(--mobile-space-xxl);text-align:center}.mobile-ai-search__empty svg{margin-bottom:var(--mobile-space-md);opacity:.5}.mobile-ai-search__empty-hint{font-size:var(--mobile-font-sm);margin-top:var(--mobile-space-xs)}.mobile-ai-search__results{padding:var(--mobile-space-md)}.mobile-ai-search__results-count{color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm);margin-bottom:var(--mobile-space-md)}.mobile-ai-search__results-list{display:flex;flex-direction:column;gap:var(--mobile-space-sm)}.mobile-ai-search__result-item{-webkit-tap-highlight-color:transparent;align-items:center;background:var(--mobile-bg-primary);border-radius:var(--mobile-radius-lg);cursor:pointer;display:flex;gap:var(--mobile-space-md);padding:var(--mobile-space-md);transition:background-color var(--mobile-transition-fast)}.mobile-ai-search__result-item:active{background:var(--mobile-bg-tertiary)}.mobile-ai-search__result-icon{align-items:center;background:#e6f7ff;border-radius:50%;color:#1890ff;display:flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.mobile-ai-search__result-content{flex:1;min-width:0}.mobile-ai-search__result-title{color:var(--mobile-text-primary);font-size:var(--mobile-font-md);margin-bottom:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-ai-search__result-meta{color:var(--mobile-text-tertiary);display:flex;font-size:var(--mobile-font-xs);gap:var(--mobile-space-sm)}.mobile-ai-search__result-subject{color:#1890ff}.mobile-ai__input-send{align-items:center;border:none;border-radius:50%;cursor:pointer;display:flex;flex-shrink:0;height:36px;justify-content:center;transition:background-color var(--mobile-transition-fast);width:36px}.mobile-ai__input-send--active{background:#1890ff;color:#fff}.mobile-ai__input-send--inactive{background:#bfbfbf;color:#fff;cursor:not-allowed}.mobile-ai__empty{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:var(--mobile-space-xxl);text-align:center}.mobile-ai__empty-icon{font-size:48px;margin-bottom:var(--mobile-space-md)}.mobile-ai__empty-title{color:var(--mobile-text-primary);font-size:var(--mobile-font-lg);font-weight:var(--mobile-font-medium);margin-bottom:var(--mobile-space-xs)}.mobile-ai__empty-desc{color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm)}.ai-recognition-result{padding:var(--mobile-space-md);padding-bottom:calc(var(--mobile-space-xl) + var(--mobile-safe-area-bottom))}.ai-recognition-result__image-card{margin-bottom:var(--mobile-space-md)}.ai-recognition-result__image-scroll{-webkit-overflow-scrolling:touch;display:flex;gap:var(--mobile-space-sm);overflow-x:auto;padding:var(--mobile-space-sm);scroll-snap-type:x mandatory}.ai-recognition-result__image-scroll .ai-recognition-result__image-wrapper{background:var(--mobile-bg-tertiary);border-radius:var(--mobile-radius-md);flex:0 0 auto;overflow:hidden;scroll-snap-align:start;width:85%}.ai-recognition-result__image{display:block;height:auto;max-height:200px;object-fit:contain;width:100%}.ai-recognition-result__image-hint{color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm);margin-bottom:0;margin-top:var(--mobile-space-sm);text-align:center}.ai-recognition-result__form-card{margin-bottom:var(--mobile-space-md)}.ai-recognition-result__field{margin-bottom:var(--mobile-space-lg)}.ai-recognition-result__field:last-child{margin-bottom:0}.ai-recognition-result__label{color:var(--mobile-text-primary);display:block;font-size:var(--mobile-font-sm);font-weight:var(--mobile-font-medium);margin-bottom:var(--mobile-space-xs)}.ai-recognition-result__required{color:var(--mobile-error);margin-left:2px}.ai-recognition-result__type-display{align-items:center;background:#e6f7ff;border-radius:var(--mobile-radius-full);color:#1890ff;display:inline-flex;font-size:var(--mobile-font-sm);font-weight:var(--mobile-font-medium);padding:var(--mobile-space-xs) var(--mobile-space-md)}.ai-recognition-result__options{display:flex;flex-direction:column;gap:var(--mobile-space-sm)}.ai-recognition-result__option{align-items:center;display:flex;gap:var(--mobile-space-sm)}.ai-recognition-result__option-key{align-items:center;background:var(--mobile-bg-tertiary);border-radius:var(--mobile-radius-md);color:var(--mobile-text-primary);display:flex;flex-shrink:0;font-size:var(--mobile-font-sm);font-weight:var(--mobile-font-semibold);height:32px;justify-content:center;width:32px}.ai-recognition-result__option-input{-webkit-appearance:none;background:var(--mobile-bg-primary);border:1px solid var(--mobile-border-medium);border-radius:var(--mobile-radius-md);color:var(--mobile-text-primary);flex:1;font-size:var(--mobile-font-md);height:44px;padding:var(--mobile-space-sm) var(--mobile-space-md);transition:border-color var(--mobile-transition-fast)}.ai-recognition-result__option-input:focus{border-color:var(--mobile-primary);box-shadow:0 0 0 3px rgba(79,70,229,.1);outline:none}.ai-recognition-result__option-input::placeholder{color:var(--mobile-text-tertiary)}.ai-recognition-result__option-input:disabled{background:var(--mobile-bg-tertiary);color:var(--mobile-text-secondary);cursor:not-allowed}.ai-recognition-result__option-correct{-webkit-tap-highlight-color:transparent;align-items:center;background:var(--mobile-bg-primary);border:2px solid var(--mobile-border-medium);border-radius:50%;color:var(--mobile-text-tertiary);cursor:pointer;display:flex;flex-shrink:0;font-size:var(--mobile-font-md);font-weight:var(--mobile-font-bold);height:36px;justify-content:center;transition:all var(--mobile-transition-fast);width:36px}.ai-recognition-result__option-correct:active{transform:scale(.95)}.ai-recognition-result__option-correct.active{background:#52c41a;border-color:#52c41a;color:#fff}.ai-recognition-result__option-correct:disabled{cursor:not-allowed;opacity:.5}.ai-recognition-result__option-remove{-webkit-tap-highlight-color:transparent;align-items:center;background:transparent;border:none;border-radius:50%;color:var(--mobile-text-tertiary);cursor:pointer;display:flex;flex-shrink:0;font-size:var(--mobile-font-xl);height:36px;justify-content:center;transition:all var(--mobile-transition-fast);width:36px}.ai-recognition-result__option-remove:active{background:#fff1f0;color:#f5222d}.ai-recognition-result__option-remove:disabled{cursor:not-allowed;opacity:.5}.ai-recognition-result__add-option{-webkit-tap-highlight-color:transparent;align-items:center;background:var(--mobile-bg-primary);border:1px dashed var(--mobile-border-medium);border-radius:var(--mobile-radius-md);color:var(--mobile-text-secondary);cursor:pointer;display:flex;font-size:var(--mobile-font-md);height:44px;justify-content:center;margin-top:var(--mobile-space-sm);padding:var(--mobile-space-sm) var(--mobile-space-md);transition:all var(--mobile-transition-fast);width:100%}.ai-recognition-result__add-option:active{background:rgba(79,70,229,.05);border-color:var(--mobile-primary);color:var(--mobile-primary)}.ai-recognition-result__add-option:disabled{cursor:not-allowed;opacity:.5}.ai-recognition-result__error{color:var(--mobile-error);display:block;font-size:var(--mobile-font-sm);margin-top:var(--mobile-space-xs)}.ai-recognition-result__actions{display:flex;flex-direction:column;gap:var(--mobile-space-md)}.ai-recognition-result__retake-btn{background:var(--mobile-bg-tertiary);color:var(--mobile-text-primary)}.ai-recognition-result__save-btn{background:#1890ff}.ai-recognition-result__preview-toggle{background:var(--mobile-bg-tertiary);border-radius:var(--mobile-radius-md);display:flex;gap:var(--mobile-space-xs);margin-bottom:var(--mobile-space-sm);padding:4px}.ai-recognition-result__toggle-btn{-webkit-tap-highlight-color:transparent;background:transparent;border:none;border-radius:var(--mobile-radius-sm);color:var(--mobile-text-secondary);cursor:pointer;flex:1;font-size:var(--mobile-font-sm);padding:var(--mobile-space-xs) var(--mobile-space-sm);transition:all var(--mobile-transition-fast)}.ai-recognition-result__toggle-btn.active{background:var(--mobile-bg-primary);box-shadow:var(--mobile-shadow-sm);color:var(--mobile-text-primary)}.ai-recognition-result__toggle-btn:disabled{cursor:not-allowed;opacity:.5}.ai-recognition-result__preview{-webkit-overflow-scrolling:touch;background:var(--mobile-bg-tertiary);border:1px solid var(--mobile-border-light);border-radius:var(--mobile-radius-md);max-height:300px;min-height:100px;overflow-y:auto;padding:var(--mobile-space-md)}.ai-recognition-result__preview .markdown-body{font-size:var(--mobile-font-md);line-height:var(--mobile-line-height-relaxed)}.ai-recognition-result__preview .markdown-body p{margin-bottom:var(--mobile-space-sm)}.ai-recognition-result__preview .markdown-body p:last-child{margin-bottom:0}.ai-recognition-result__option-content{display:flex;flex:1;flex-direction:column;gap:var(--mobile-space-xs)}.ai-recognition-result__option-preview{background:var(--mobile-bg-tertiary);border:1px solid var(--mobile-border-light);border-radius:var(--mobile-radius-sm);padding:var(--mobile-space-xs) var(--mobile-space-sm)}.ai-recognition-result__option-preview .markdown-body{font-size:var(--mobile-font-sm);line-height:var(--mobile-line-height-normal)}.ai-recognition-result__option-preview .markdown-body p{margin:0}.ai-recognition-result__explanation-preview{background:var(--mobile-bg-tertiary);border:1px solid var(--mobile-border-light);border-radius:var(--mobile-radius-md);margin-top:var(--mobile-space-sm);padding:var(--mobile-space-sm)}.ai-recognition-result__preview-label{color:var(--mobile-text-secondary);font-size:var(--mobile-font-xs);margin-bottom:var(--mobile-space-xs)}.ai-recognition-result__preview-content{-webkit-overflow-scrolling:touch;max-height:200px;overflow-y:auto}.ai-recognition-result__preview-content .markdown-body{font-size:var(--mobile-font-sm);line-height:var(--mobile-line-height-relaxed)}.ai-recognition-result__preview-content .markdown-body p{margin-bottom:var(--mobile-space-xs)}.ai-recognition-result__preview-content .markdown-body p:last-child{margin-bottom:0}.ai-recognition-result__option-preview .katex,.ai-recognition-result__option-preview-box .katex,.ai-recognition-result__preview .katex,.ai-recognition-result__preview-box .katex,.ai-recognition-result__preview-content .katex{-webkit-overflow-scrolling:touch;display:inline-block;font-size:1em;max-width:100%;overflow-x:auto}.ai-recognition-result__option-preview-box .katex-display,.ai-recognition-result__preview .katex-display,.ai-recognition-result__preview-box .katex-display,.ai-recognition-result__preview-content .katex-display{-webkit-overflow-scrolling:touch;margin:var(--mobile-space-sm) 0;max-width:100%;overflow-x:auto;overflow-y:hidden}.ai-recognition-result__option-preview-box .katex-html,.ai-recognition-result__preview-box .katex-html{max-width:100%;overflow-x:auto;white-space:nowrap}.ai-recognition-result__preview-box pre{-webkit-overflow-scrolling:touch;word-wrap:break-word;background:var(--mobile-bg-tertiary);border-radius:var(--mobile-radius-sm);max-width:100%;overflow-x:auto;padding:var(--mobile-space-sm);white-space:pre-wrap}.ai-recognition-result__mode-toggle{background:var(--mobile-bg-tertiary);border-radius:var(--mobile-radius-md);display:flex;gap:var(--mobile-space-xs);margin-bottom:var(--mobile-space-lg);padding:4px}.ai-recognition-result__mode-btn{-webkit-tap-highlight-color:transparent;background:transparent;border:none;border-radius:var(--mobile-radius-sm);color:var(--mobile-text-secondary);cursor:pointer;flex:1;font-size:var(--mobile-font-md);font-weight:var(--mobile-font-medium);padding:var(--mobile-space-sm) var(--mobile-space-md);transition:all var(--mobile-transition-fast)}.ai-recognition-result__mode-btn.active{background:var(--mobile-bg-primary);box-shadow:var(--mobile-shadow-sm);color:var(--mobile-primary)}.ai-recognition-result__mode-btn:disabled{cursor:not-allowed;opacity:.5}.ai-recognition-result__preview-box{-webkit-overflow-scrolling:touch;background:#fff;border:1px solid var(--mobile-border-light);border-radius:var(--mobile-radius-md);color:#000;max-height:300px;min-height:100px;overflow-x:auto;overflow-y:auto;padding:var(--mobile-space-md)}.ai-recognition-result__preview-box .markdown-body{background:transparent;color:#000;font-size:var(--mobile-font-md);line-height:var(--mobile-line-height-relaxed)}.ai-recognition-result__preview-box .markdown-body p{word-wrap:break-word;color:#000;margin-bottom:var(--mobile-space-sm);max-width:100%;overflow-wrap:break-word}.ai-recognition-result__preview-box .markdown-body p:last-child{margin-bottom:0}.ai-recognition-result__option-preview-box{-webkit-overflow-scrolling:touch;align-items:center;background:#f9fafb;border:1px solid var(--mobile-border-light);border-radius:var(--mobile-radius-md);color:#000;display:flex;flex:1;min-height:44px;overflow-x:auto;padding:var(--mobile-space-sm) var(--mobile-space-md)}.ai-recognition-result__option-preview-box .markdown-body{background:transparent;color:#000;font-size:var(--mobile-font-md);line-height:var(--mobile-line-height-normal)}.ai-recognition-result__option-preview-box .markdown-body p{word-wrap:break-word;color:#000;margin:0;max-width:100%;overflow-wrap:break-word}.ai-recognition-result__correct-mark{align-items:center;background:#52c41a;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:var(--mobile-font-md);font-weight:var(--mobile-font-bold);height:36px;justify-content:center;width:36px}.ai-recognition-result__correct-answer-display{align-items:center;background:#f6ffed;border:1px solid #b7eb8f;border-radius:var(--mobile-radius-md);color:#52c41a;display:inline-flex;font-size:var(--mobile-font-md);font-weight:var(--mobile-font-medium);padding:var(--mobile-space-sm) var(--mobile-space-md)}.ai-recognition-result__empty-text{color:var(--mobile-text-tertiary);font-size:var(--mobile-font-md);font-style:italic}.ai-recognition-result__explanation-preview,.ai-recognition-result__option-preview,.ai-recognition-result__preview-toggle{display:none}@keyframes mobileFadeIn{0%{opacity:0}to{opacity:1}}@keyframes mobileFadeOut{0%{opacity:1}to{opacity:0}}@keyframes mobileSlideInRight{0%{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}@keyframes mobileSlideInLeft{0%{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}@keyframes mobileSlideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes mobileSlideInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes mobileScaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes mobileRipple{0%{opacity:.5;transform:scale(0)}to{opacity:0;transform:scale(4)}}@keyframes mobilePulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes mobileShake{0%,to{transform:translateX(0)}10%,30%,50%,70%,90%{transform:translateX(-4px)}20%,40%,60%,80%{transform:translateX(4px)}}@keyframes mobileBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes mobileSpin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.mobile-animate-fade-in{animation:mobileFadeIn .3s ease-out}.mobile-animate-slide-up{animation:mobileSlideInUp .3s ease-out}.mobile-animate-slide-right{animation:mobileSlideInRight .3s ease-out}.mobile-animate-scale-in{animation:mobileScaleIn .2s ease-out}.mobile-animate-pulse{animation:mobilePulse 2s infinite}.mobile-animate-shake{animation:mobileShake .5s}.mobile-animate-bounce{animation:mobileBounce 1s infinite}.mobile-animate-spin{animation:mobileSpin 1s linear infinite}.mobile-auth-page{-webkit-overflow-scrolling:touch;background:#f5f5f5;display:flex;flex-direction:column;min-height:100vh;min-height:100dvh;padding:24px}.mobile-auth-page--register{padding-top:0}.mobile-auth-logo{align-items:center;display:flex;flex-direction:column;padding-bottom:40px;padding-top:48px}.mobile-auth-logo__image{border-radius:var(--mobile-radius-lg);height:64px;margin-bottom:var(--mobile-space-md);width:64px}.mobile-auth-logo__title{color:#262626;font-size:24px;font-weight:var(--mobile-font-bold);margin-bottom:var(--mobile-space-xs)}.mobile-auth-logo__subtitle{color:#8c8c8c;font-size:14px;font-weight:var(--mobile-font-normal)}.mobile-auth-logo__beta-notice{background:rgba(239,68,68,.08);border-radius:var(--mobile-radius-sm);color:#ef4444;font-size:var(--mobile-font-xs);line-height:var(--mobile-line-height-normal);margin-bottom:var(--mobile-space-lg);margin-top:var(--mobile-space-sm);padding:var(--mobile-space-sm) var(--mobile-space-md)}.mobile-auth-form{display:flex;flex:1;flex-direction:column}.mobile-auth-tabs{align-items:center;background:var(--mobile-bg-primary);border:1px solid var(--mobile-border-light);border-radius:var(--mobile-radius-md);display:flex;margin-bottom:var(--mobile-space-lg);padding:4px}.mobile-auth-tab{-webkit-tap-highlight-color:transparent;align-items:center;-webkit-appearance:none;background:transparent;border:none;border-radius:var(--mobile-radius-sm);color:var(--mobile-text-secondary);cursor:pointer;display:flex;flex:1;font-size:var(--mobile-font-md);font-weight:var(--mobile-font-medium);height:40px;justify-content:center;transition:all var(--mobile-transition-fast)}.mobile-auth-tab--active{background:#1890ff;box-shadow:0 2px 4px rgba(24,144,255,.2);color:var(--mobile-text-inverse)}.mobile-auth-tab:active:not(.mobile-auth-tab--active){opacity:.6}.mobile-auth-input{align-items:center;background:var(--mobile-bg-primary);border:1px solid var(--mobile-border-medium);border-radius:var(--mobile-radius-md);display:flex;height:56px;margin-bottom:var(--mobile-space-md);padding:0 var(--mobile-space-md);transition:border-color var(--mobile-transition-fast),box-shadow var(--mobile-transition-fast)}.mobile-auth-input:focus-within{border-color:#1890ff;box-shadow:0 0 0 3px rgba(24,144,255,.1)}.mobile-auth-input--error{border-color:var(--mobile-error)}.mobile-auth-input--error:focus-within{box-shadow:0 0 0 3px rgba(239,68,68,.1)}.mobile-auth-input__icon{align-items:center;color:var(--mobile-text-tertiary);display:flex;flex-shrink:0;height:24px;justify-content:center;margin-right:var(--mobile-space-sm);width:24px}.mobile-auth-input__field{-webkit-appearance:none;background:transparent;border:none;color:var(--mobile-text-primary);flex:1;font-size:var(--mobile-font-md);height:100%;outline:none}.mobile-auth-input__field::placeholder{color:var(--mobile-text-tertiary)}.mobile-auth-input__action{-webkit-tap-highlight-color:transparent;align-items:center;color:var(--mobile-text-tertiary);cursor:pointer;display:flex;flex-shrink:0;height:32px;justify-content:center;width:32px}.mobile-auth-input__action:active{opacity:.6}.mobile-auth-input__code-btn{-webkit-tap-highlight-color:transparent;background:none;border:none;color:#1890ff;cursor:pointer;flex-shrink:0;font-size:var(--mobile-font-sm);padding:var(--mobile-space-xs) var(--mobile-space-sm);white-space:nowrap}.mobile-auth-input__code-btn:disabled{color:var(--mobile-text-tertiary);cursor:not-allowed}.mobile-auth-error{color:var(--mobile-error);font-size:var(--mobile-font-sm);margin-bottom:var(--mobile-space-md);padding:0 var(--mobile-space-xs)}.mobile-auth-submit{-webkit-tap-highlight-color:transparent;align-items:center;background:#1890ff;border:none;border-radius:var(--mobile-radius-md);color:var(--mobile-text-inverse);cursor:pointer;display:flex;font-size:var(--mobile-font-lg);font-weight:var(--mobile-font-medium);height:48px;justify-content:center;margin-top:var(--mobile-space-sm);transition:opacity var(--mobile-transition-fast),transform var(--mobile-transition-fast);width:100%}.mobile-auth-submit:active{opacity:.8;transform:scale(.98)}.mobile-auth-submit:disabled{cursor:not-allowed;opacity:.5}.mobile-auth-submit__loading{animation:mobile-auth-spin .8s linear infinite;border:2px solid hsla(0,0%,100%,.3);border-radius:50%;border-top-color:#fff;height:20px;margin-right:var(--mobile-space-sm);width:20px}@keyframes mobile-auth-spin{to{transform:rotate(1turn)}}.mobile-auth-links{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--mobile-space-xl);margin-top:var(--mobile-space-md)}.mobile-auth-links__item{-webkit-tap-highlight-color:transparent;color:#1890ff;cursor:pointer;font-size:var(--mobile-font-sm)}.mobile-auth-links__item:active{opacity:.6}.mobile-auth-links__text{color:var(--mobile-text-tertiary);font-size:var(--mobile-font-sm)}.mobile-auth-links__link{-webkit-tap-highlight-color:transparent;color:#1890ff;cursor:pointer}.mobile-auth-links__link:active{opacity:.6}.mobile-auth-agreement{align-items:flex-start;display:flex;margin-bottom:var(--mobile-space-md);padding:0 var(--mobile-space-xs)}.mobile-auth-agreement__checkbox{-webkit-tap-highlight-color:transparent;align-items:center;border:1.5px solid var(--mobile-border-medium);border-radius:var(--mobile-radius-sm);cursor:pointer;display:flex;flex-shrink:0;height:20px;justify-content:center;margin-right:var(--mobile-space-sm);margin-top:1px;transition:background-color var(--mobile-transition-fast),border-color var(--mobile-transition-fast);width:20px}.mobile-auth-agreement__checkbox--checked{background:#1890ff;border-color:#1890ff}.mobile-auth-agreement__check{color:#fff;height:14px;width:14px}.mobile-auth-agreement__text{color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm);line-height:var(--mobile-line-height-normal)}.mobile-auth-agreement__link{color:#1890ff;text-decoration:none}.mobile-auth-divider{align-items:center;display:flex;margin:var(--mobile-space-lg) 0}.mobile-auth-divider__line{background:var(--mobile-border-light);flex:1;height:1px}.mobile-auth-divider__text{color:var(--mobile-text-tertiary);font-size:var(--mobile-font-sm);padding:0 var(--mobile-space-md)}.mobile-auth-social{align-items:center;display:flex;justify-content:center}.mobile-auth-social,.mobile-auth-social--updated{gap:var(--mobile-space-xl)}.mobile-auth-social__item{-webkit-tap-highlight-color:transparent;align-items:center;border:none;border-radius:50%;cursor:pointer;display:flex;height:56px;justify-content:center;outline:none;padding:0;transition:transform var(--mobile-transition-fast);width:56px}.mobile-auth-social__item:active{transform:scale(.95)}.mobile-auth-social__item--wechat{background:#07c160}.mobile-auth-social__item--qq{background:#12b7f5}.mobile-auth-social__item--alipay{background:#1677ff}.mobile-auth-social__icon{color:#fff;height:28px;width:28px}.mobile-auth-qrcode{-webkit-tap-highlight-color:transparent;align-items:center;cursor:pointer;display:flex;flex-direction:column;margin-top:var(--mobile-space-lg)}.mobile-auth-qrcode__icon{color:var(--mobile-text-tertiary);height:40px;margin-bottom:var(--mobile-space-xs);width:40px}.mobile-auth-qrcode__text{color:var(--mobile-text-tertiary);font-size:var(--mobile-font-xs)}.mobile-auth-remember{align-items:center;display:flex;margin-bottom:var(--mobile-space-md);padding:0 var(--mobile-space-xs)}.mobile-auth-remember__checkbox{-webkit-tap-highlight-color:transparent;align-items:center;border:1.5px solid var(--mobile-border-medium);border-radius:var(--mobile-radius-sm);cursor:pointer;display:flex;flex-shrink:0;height:18px;justify-content:center;margin-right:var(--mobile-space-sm);transition:background-color var(--mobile-transition-fast),border-color var(--mobile-transition-fast);width:18px}.mobile-auth-remember__checkbox--checked{background:#1890ff;border-color:#1890ff}.mobile-auth-remember__check{color:#fff;height:12px;width:12px}.mobile-auth-remember__text{color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm)}.mobile-auth-grade{margin-bottom:var(--mobile-space-md);padding:0 var(--mobile-space-xs)}.mobile-auth-grade__label{color:var(--mobile-text-secondary);display:block;font-size:var(--mobile-font-sm);margin-bottom:var(--mobile-space-sm)}.mobile-auth-grade__tags{display:flex;flex-wrap:wrap;gap:var(--mobile-space-sm)}.mobile-auth-grade__tag{-webkit-tap-highlight-color:transparent;background:#f5f5f5;border:none;border-radius:16px;color:#595959;cursor:pointer;font-size:var(--mobile-font-sm);font-weight:var(--mobile-font-medium);padding:12px;transition:all var(--mobile-transition-fast)}.mobile-auth-grade__tag:active{transform:scale(.96)}.mobile-auth-grade__tag--active{background:#1890ff;color:#fff}.mobile-auth-grade__error{color:var(--mobile-error);display:block;font-size:var(--mobile-font-sm);margin-top:var(--mobile-space-xs)}.mobile-scan-login{-webkit-overflow-scrolling:touch;background:var(--mobile-bg-primary);display:flex;flex-direction:column;min-height:100vh;min-height:100dvh;padding:0 0 env(safe-area-inset-bottom)}.mobile-scan-login__content{flex:1;overflow-y:auto;padding:var(--mobile-space-lg);padding-top:calc(44px + var(--mobile-space-lg))}.mobile-scan-login__camera-section{margin-bottom:var(--mobile-space-xl)}.mobile-scan-login__camera{align-items:center;background:#262626;border-radius:var(--mobile-radius-lg);display:flex;flex-direction:column;height:280px;justify-content:center;margin-bottom:var(--mobile-space-md);overflow:hidden;position:relative;width:100%}.mobile-scan-login__camera-icon{color:hsla(0,0%,100%,.6);height:64px;margin-bottom:var(--mobile-space-md);width:64px}.mobile-scan-login__camera-hint{color:hsla(0,0%,100%,.8);font-size:var(--mobile-font-md);text-align:center}.mobile-scan-login__camera-btn{-webkit-tap-highlight-color:transparent;align-items:center;background:#1890ff;border:none;border-radius:var(--mobile-radius-md);color:var(--mobile-text-inverse);cursor:pointer;display:flex;font-size:var(--mobile-font-lg);font-weight:var(--mobile-font-medium);height:48px;justify-content:center;transition:opacity var(--mobile-transition-fast),transform var(--mobile-transition-fast);width:100%}.mobile-scan-login__camera-btn:active{opacity:.8;transform:scale(.98)}.mobile-scan-login__camera-btn:disabled{cursor:not-allowed;opacity:.5}.mobile-scan-login__manual{background:var(--mobile-bg-secondary);border-radius:var(--mobile-radius-lg);margin-bottom:var(--mobile-space-lg);padding:var(--mobile-space-lg)}.mobile-scan-login__manual-title{color:var(--mobile-text-primary);font-size:var(--mobile-font-lg);font-weight:var(--mobile-font-bold);margin:0 0 var(--mobile-space-xs) 0}.mobile-scan-login__manual-hint{color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm);line-height:1.5;margin:0 0 var(--mobile-space-md) 0}.mobile-scan-login__input-wrapper{margin-bottom:var(--mobile-space-md)}.mobile-scan-login__input{-webkit-appearance:none;background:var(--mobile-bg-primary);border:1px solid var(--mobile-border-medium);border-radius:var(--mobile-radius-md);color:var(--mobile-text-primary);font-size:var(--mobile-font-md);height:48px;outline:none;padding:0 var(--mobile-space-md);transition:border-color var(--mobile-transition-fast),box-shadow var(--mobile-transition-fast);width:100%}.mobile-scan-login__input:focus{border-color:#1890ff;box-shadow:0 0 0 3px rgba(24,144,255,.1)}.mobile-scan-login__input::placeholder{color:var(--mobile-text-tertiary)}.mobile-scan-login__input:disabled{background:#f5f5f5;cursor:not-allowed}.mobile-scan-login__input-wrapper--error .mobile-scan-login__input{border-color:var(--mobile-error)}.mobile-scan-login__input-error{color:var(--mobile-error);display:block;font-size:var(--mobile-font-sm);margin-top:var(--mobile-space-xs)}.mobile-scan-login__submit{-webkit-tap-highlight-color:transparent;align-items:center;background:#1890ff;border:none;border-radius:var(--mobile-radius-md);color:var(--mobile-text-inverse);cursor:pointer;display:flex;font-size:var(--mobile-font-lg);font-weight:var(--mobile-font-medium);height:48px;justify-content:center;transition:opacity var(--mobile-transition-fast),transform var(--mobile-transition-fast);width:100%}.mobile-scan-login__submit:active{opacity:.8;transform:scale(.98)}.mobile-scan-login__submit:disabled{cursor:not-allowed;opacity:.5}.mobile-scan-login__status{align-items:center;border-radius:var(--mobile-radius-md);display:flex;margin-bottom:var(--mobile-space-lg);padding:var(--mobile-space-md)}.mobile-scan-login__status-icon{flex-shrink:0;margin-right:var(--mobile-space-sm)}.mobile-scan-login__status-text{font-size:var(--mobile-font-md);line-height:1.5}.mobile-scan-login__status-loading{animation:mobile-scan-spin .8s linear infinite;border:2px solid rgba(24,144,255,.2);border-radius:50%;border-top-color:#1890ff;height:20px;margin-right:var(--mobile-space-sm);width:20px}@keyframes mobile-scan-spin{to{transform:rotate(1turn)}}.mobile-scan-login__status--success{background:rgba(82,196,26,.1);border:1px solid rgba(82,196,26,.3);color:#52c41a}.mobile-scan-login__status--error{background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.3);color:var(--mobile-error)}.mobile-scan-login__status--scanning{background:rgba(24,144,255,.1);border:1px solid rgba(24,144,255,.3);color:#1890ff}.mobile-scan-login__tips{background:#fafafa;border-radius:var(--mobile-radius-md);padding:var(--mobile-space-md)}.mobile-scan-login__tips-title{color:var(--mobile-text-primary);font-size:var(--mobile-font-md);font-weight:var(--mobile-font-medium);margin:0 0 var(--mobile-space-sm) 0}.mobile-scan-login__tips-list{color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm);line-height:1.8;margin:0;padding-left:var(--mobile-space-md)}.mobile-scan-login__tips-list li{margin-bottom:var(--mobile-space-xs)}.mobile-auth-pc-recommend{border-top:1px solid var(--mobile-border-light);margin-top:var(--mobile-space-xl);padding-top:var(--mobile-space-lg);text-align:center}.mobile-auth-pc-recommend__subtitle{color:var(--mobile-text-tertiary);display:block;font-size:var(--mobile-font-xs);margin-bottom:var(--mobile-space-xs)}.mobile-auth-pc-recommend__links{align-items:center;display:flex;flex-direction:column;gap:var(--mobile-space-xs)}.mobile-auth-pc-recommend__link{color:#1890ff;font-size:var(--mobile-font-xs);text-decoration:underline}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;font-size:16px}body{background-color:var(--mobile-bg-secondary);color:var(--mobile-text-primary);font-family:var(--mobile-font-family);font-size:var(--mobile-font-md);line-height:var(--mobile-line-height-normal)}body,html{overflow:hidden}#react-target,#root,body,html{height:100%;width:100%}.mobile-no-select{-webkit-user-select:none;user-select:none}.mobile-selectable{-webkit-user-select:text;user-select:text}.mobile-no-tap-highlight{-webkit-tap-highlight-color:transparent}.mobile-scrollable{-webkit-overflow-scrolling:touch;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}.mobile-scrollable::-webkit-scrollbar{display:none}.mobile-scrollable{-ms-overflow-style:none;scrollbar-width:none}.mobile-button{transition:opacity var(--mobile-transition-fast),transform var(--mobile-transition-fast)}.mobile-button:active{opacity:.8;transform:scale(.98)}.mobile-card:active{box-shadow:var(--mobile-shadow-md);transform:translateY(-1px)}.mobile-flex{display:flex}.mobile-flex-col{display:flex;flex-direction:column}.mobile-flex-1{flex:1}.mobile-flex-center{align-items:center;display:flex;justify-content:center}.mobile-flex-between{align-items:center;display:flex;justify-content:space-between}.mobile-flex-wrap{flex-wrap:wrap}.mobile-safe-top{padding-top:var(--mobile-safe-area-top)}.mobile-safe-bottom{padding-bottom:var(--mobile-safe-area-bottom)}.mobile-safe-left{padding-left:var(--mobile-safe-area-left)}.mobile-safe-right{padding-right:var(--mobile-safe-area-right)}@supports (-webkit-touch-callout:none){.mobile-ios-status-bar{padding-top:max(var(--mobile-safe-area-top),20px)}.mobile-ios-bottom-bar{padding-bottom:max(var(--mobile-safe-area-bottom),20px)}}@media (hover:none) and (pointer:coarse){.mobile-touch-device{cursor:pointer}}.mobile-hidden{display:none!important}.mobile-invisible{visibility:hidden}.mobile-fullscreen{bottom:0;height:100%;left:0;position:fixed;right:0;top:0;width:100%}.mobile-text-ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-text-ellipsis-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.mobile-fixed-top{top:0}.mobile-fixed-bottom,.mobile-fixed-top{left:0;position:fixed;right:0;z-index:100}.mobile-fixed-bottom{bottom:0}@keyframes mobile-fade-in{0%{opacity:0}to{opacity:1}}.mobile-fade-in{animation:mobile-fade-in var(--mobile-transition-normal)}.mobile-slide-up{animation:mobile-slide-up var(--mobile-transition-normal)}@keyframes mobile-page-in{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}.mobile-page-in{animation:mobile-page-in var(--mobile-transition-normal)}.camera-question-page{background:var(--mobile-bg);display:flex;flex-direction:column;min-height:calc(100vh - var(--mobile-header-height) - var(--mobile-safe-area-top))}.camera-question-page__camera-interface{align-items:center;display:flex;flex:1;flex-direction:column;gap:var(--mobile-space-2xl);justify-content:center;padding:var(--mobile-space-xl) var(--mobile-space-lg)}.camera-question-page__camera-placeholder{align-items:center;display:flex;flex-direction:column;gap:var(--mobile-space-lg);text-align:center}.camera-question-page__camera-icon{align-items:center;background:linear-gradient(135deg,var(--mobile-primary-light,#e6f7ff) 0,var(--mobile-primary-lighter,#f0f5ff) 100%);border-radius:50%;color:var(--mobile-primary);display:flex;height:80px;justify-content:center;margin-bottom:var(--mobile-space-sm);width:80px}.camera-question-page__camera-hint{color:var(--mobile-text-primary);font-size:var(--mobile-font-lg);font-weight:var(--mobile-font-medium);line-height:var(--mobile-line-height-normal);margin:0}.camera-question-page__camera-subhint{color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm);line-height:var(--mobile-line-height-normal);margin:0}.camera-question-page__camera-actions{display:flex;flex-direction:column;gap:var(--mobile-space-md);max-width:320px;width:100%}.camera-question-page__action-btn{-webkit-tap-highlight-color:transparent;align-items:center;border:none;border-radius:var(--mobile-radius-md);cursor:pointer;display:flex;font-size:var(--mobile-font-md);font-weight:var(--mobile-font-medium);gap:var(--mobile-space-sm);height:52px;justify-content:center;padding:var(--mobile-space-md) var(--mobile-space-lg);transition:all .2s ease;width:100%}.camera-question-page__action-btn:disabled{cursor:not-allowed;opacity:.6}.camera-question-page__action-btn--primary{background:var(--mobile-primary);box-shadow:0 4px 12px rgba(59,130,246,.3);color:#fff}.camera-question-page__action-btn--primary:active{box-shadow:0 2px 8px rgba(59,130,246,.4);transform:scale(.98)}.camera-question-page__action-btn--secondary{background:var(--mobile-surface);border:1.5px solid var(--mobile-border);color:var(--mobile-text-primary)}.camera-question-page__action-btn--secondary:active{background:var(--mobile-border-light);transform:scale(.98)}.camera-question-page__preview{display:flex;flex:1;flex-direction:column;gap:var(--mobile-space-md);padding:var(--mobile-space-md)}.camera-question-page__preview-image-wrapper{align-items:center;background:var(--mobile-surface);border-radius:var(--mobile-radius-lg);box-shadow:var(--mobile-shadow-sm);display:flex;flex:1;justify-content:center;min-height:200px;overflow:hidden}.camera-question-page__preview-image{max-height:100%;max-width:100%;object-fit:contain}.camera-question-page__preview-hint{color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm);margin:0;padding:var(--mobile-space-sm) 0;text-align:center}.camera-question-page__preview-actions{display:flex;gap:var(--mobile-space-md);padding:var(--mobile-space-sm) 0}.camera-question-page__preview-actions .camera-question-page__action-btn{flex:1}.camera-question-page__preview-actions--multi{display:grid;gap:var(--mobile-space-md);grid-template-columns:1fr 1fr}.camera-question-page__preview-actions--multi .camera-question-page__action-btn{flex:unset}.camera-question-page__thumbnail-grid{display:grid;gap:var(--mobile-space-md);grid-template-columns:repeat(3,1fr);padding:var(--mobile-space-md) 0}.camera-question-page__thumbnail{aspect-ratio:1;background:var(--mobile-surface);border-radius:var(--mobile-radius-md);box-shadow:var(--mobile-shadow-sm);overflow:hidden;position:relative}.camera-question-page__thumbnail-image{display:block;height:100%;object-fit:cover;width:100%}.camera-question-page__thumbnail-remove{-webkit-tap-highlight-color:transparent;align-items:center;background:rgba(0,0,0,.5);border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:18px;height:24px;justify-content:center;line-height:1;position:absolute;right:4px;top:4px;transition:background-color .2s ease;width:24px}.camera-question-page__thumbnail-remove:active{background:rgba(245,34,45,.8)}.camera-question-page__recognizing{align-items:center;display:flex;flex:1;flex-direction:column;gap:var(--mobile-space-lg);justify-content:center;padding:var(--mobile-space-xl)}.camera-question-page__recognizing-hint{color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm);margin:0;text-align:center}.camera-question-page__thinking{background:var(--mobile-surface);border:1px solid var(--mobile-border);border-radius:var(--mobile-radius-lg);margin-top:var(--mobile-space-lg);max-width:400px;overflow:hidden;width:100%}.camera-question-page__thinking-header{align-items:center;background:linear-gradient(135deg,var(--mobile-primary-light,#e6f7ff) 0,var(--mobile-primary-lighter,#f0f5ff) 100%);border-bottom:1px solid var(--mobile-border);display:flex;gap:var(--mobile-space-sm);padding:var(--mobile-space-md) var(--mobile-space-lg)}.camera-question-page__thinking-dot{animation:thinking-pulse 1.5s ease-in-out infinite;background:var(--mobile-primary);border-radius:50%;height:8px;width:8px}@keyframes thinking-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}.camera-question-page__thinking-title{color:var(--mobile-primary);font-size:var(--mobile-font-sm);font-weight:var(--mobile-font-medium)}.camera-question-page__thinking-content{-webkit-overflow-scrolling:touch;background:#fff;color:#000;font-size:var(--mobile-font-sm);line-height:var(--mobile-line-height-normal);max-height:200px;overflow-x:auto;overflow-y:auto;padding:var(--mobile-space-md) var(--mobile-space-lg)}.camera-question-page__thinking-content .markdown-preview{background:transparent;color:#000;font-size:var(--mobile-font-sm)}.camera-question-page__thinking-content .markdown-preview p{word-wrap:break-word;color:#000;margin:0 0 var(--mobile-space-sm) 0;max-width:100%;overflow-wrap:break-word}.camera-question-page__thinking-content .katex{-webkit-overflow-scrolling:touch;display:inline-block;font-size:1em;max-width:100%;overflow-x:auto}.camera-question-page__thinking-content .katex-display{-webkit-overflow-scrolling:touch;margin:var(--mobile-space-sm) 0;max-width:100%;overflow-x:auto;overflow-y:hidden}.camera-question-page__thinking-content .katex-html{max-width:100%;overflow-x:auto;white-space:nowrap}.camera-question-page__thinking-content pre{-webkit-overflow-scrolling:touch;word-wrap:break-word;background:var(--mobile-bg-tertiary);border-radius:var(--mobile-radius-sm);max-width:100%;overflow-x:auto;padding:var(--mobile-space-sm);white-space:pre-wrap}.camera-question-page__thinking-content .markdown-preview p:last-child{margin-bottom:0}.camera-question-page__error,.camera-question-page__saving{align-items:center;display:flex;flex:1;flex-direction:column;gap:var(--mobile-space-lg);justify-content:center;padding:var(--mobile-space-xl)}.camera-question-page__error{text-align:center}.camera-question-page__error p{color:var(--mobile-text-secondary);font-size:var(--mobile-font-md);margin:0}@media (max-height:600px){.camera-question-page__camera-interface{gap:var(--mobile-space-xl);padding:var(--mobile-space-lg)}.camera-question-page__camera-icon{height:64px;width:64px}.camera-question-page__action-btn{height:48px}}@supports (padding-bottom:env(safe-area-inset-bottom)){.camera-question-page__camera-actions{padding-bottom:env(safe-area-inset-bottom)}.camera-question-page__preview-actions{padding-bottom:calc(var(--mobile-space-sm) + env(safe-area-inset-bottom))}}.mobile-camera__capture-area{align-items:center;background:linear-gradient(135deg,var(--mobile-surface) 0,var(--mobile-bg) 100%);border-bottom:1px solid var(--mobile-border-light);display:flex;flex-direction:column;justify-content:center;padding:var(--mobile-space-2xl) var(--mobile-space-md)}.mobile-camera__capture-btn{align-items:center;background:var(--mobile-surface);border:4px solid var(--mobile-primary);border-radius:50%;box-shadow:0 4px 12px rgba(59,130,246,.2);color:var(--mobile-primary);cursor:pointer;display:flex;height:80px;justify-content:center;transition:all .2s ease;width:80px}.mobile-camera__capture-btn:active{box-shadow:0 2px 8px rgba(59,130,246,.3);transform:scale(.95)}.mobile-camera__capture-btn:disabled{cursor:not-allowed;opacity:.6}.mobile-camera__capture-text{color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm);margin-top:var(--mobile-space-md)}.mobile-camera__spinner{animation:mobile-spin .8s linear infinite;border:2px solid var(--mobile-border);border-radius:50%;border-top-color:var(--mobile-primary);height:24px;width:24px}.mobile-camera__actions{border-bottom:1px solid var(--mobile-border-light);padding:var(--mobile-space-md)}.mobile-camera__action-btn{align-items:center;background:var(--mobile-surface);border:1px solid var(--mobile-border);border-radius:var(--mobile-radius-md);color:var(--mobile-text-primary);cursor:pointer;display:flex;font-size:var(--mobile-font-base);gap:var(--mobile-space-sm);justify-content:center;padding:var(--mobile-space-md);transition:all .2s ease;width:100%}.mobile-camera__action-btn:active{background:var(--mobile-border-light)}.mobile-camera__action-btn:disabled{cursor:not-allowed;opacity:.6}.mobile-camera__error{background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.2);border-radius:var(--mobile-radius-md);font-size:var(--mobile-font-sm);gap:var(--mobile-space-sm);margin:var(--mobile-space-md);padding:var(--mobile-space-md)}.mobile-camera__error,.mobile-camera__error button{align-items:center;color:var(--mobile-error);display:flex}.mobile-camera__error button{background:none;border:none;cursor:pointer;font-size:18px;height:24px;justify-content:center;margin-left:auto;padding:0;width:24px}.mobile-camera__drafts{padding:var(--mobile-space-md)}.mobile-camera__drafts-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--mobile-space-md)}.mobile-camera__drafts-title{color:var(--mobile-text-primary);font-size:var(--mobile-font-md);font-weight:var(--mobile-font-medium);margin:0}.mobile-camera__drafts-actions{display:flex;gap:var(--mobile-space-sm)}.mobile-camera__drafts-action-btn{background:var(--mobile-surface);border:1px solid var(--mobile-border);border-radius:var(--mobile-radius-sm);color:var(--mobile-text-primary);cursor:pointer;font-size:var(--mobile-font-xs);padding:var(--mobile-space-xs) var(--mobile-space-sm);transition:all .2s ease}.mobile-camera__drafts-action-btn:active{background:var(--mobile-border-light)}.mobile-camera__drafts-action-btn--danger{border-color:var(--mobile-error);color:var(--mobile-error)}.mobile-camera__drafts-action-btn--danger:active{background:rgba(239,68,68,.1)}.mobile-camera__drafts-loading{gap:var(--mobile-space-md)}.mobile-camera__drafts-empty,.mobile-camera__drafts-loading{align-items:center;color:var(--mobile-text-tertiary);display:flex;flex-direction:column;justify-content:center;padding:var(--mobile-space-2xl)}.mobile-camera__drafts-empty p{color:var(--mobile-text-secondary);font-size:var(--mobile-font-base);margin:var(--mobile-space-md) 0 var(--mobile-space-xs)}.mobile-camera__drafts-empty span{font-size:var(--mobile-font-sm)}.mobile-camera__drafts-grid{display:grid;gap:var(--mobile-space-sm);grid-template-columns:repeat(3,1fr)}.mobile-camera__draft-item{aspect-ratio:1;border:2px solid transparent;border-radius:var(--mobile-radius-md);cursor:pointer;overflow:hidden;position:relative;transition:all .2s ease}.mobile-camera__draft-item:active{transform:scale(.98)}.mobile-camera__draft-item--selectable{border-color:var(--mobile-border)}.mobile-camera__draft-item--selected{border-color:var(--mobile-primary)}.mobile-camera__draft-checkbox{left:var(--mobile-space-xs);position:absolute;top:var(--mobile-space-xs);z-index:2}.mobile-camera__draft-image{height:100%;object-fit:cover;width:100%}.mobile-camera__draft-overlay{background:linear-gradient(transparent,rgba(0,0,0,.7));bottom:0;display:flex;flex-direction:column;gap:2px;left:0;padding:var(--mobile-space-xs);position:absolute;right:0}.mobile-camera__draft-date{color:#fff;font-size:10px}.mobile-camera__draft-status{font-size:10px}.mobile-camera__draft-status--pending{color:#fbbf24}.mobile-camera__draft-status--uploading{color:#60a5fa}.mobile-camera__draft-status--uploaded{color:#34d399}.mobile-camera__draft-status--failed{color:#f87171}.mobile-camera__draft-upload-btn{align-items:center;background:hsla(0,0%,100%,.9);border:none;border-radius:50%;color:var(--mobile-primary);cursor:pointer;display:flex;height:28px;justify-content:center;position:absolute;right:var(--mobile-space-xs);top:var(--mobile-space-xs);transition:all .2s ease;width:28px;z-index:2}.mobile-camera__draft-upload-btn:active{background:var(--mobile-primary);color:#fff}.mobile-image-preview{background:var(--mobile-bg);bottom:0;display:flex;flex-direction:column;left:0;position:fixed;right:0;top:0;z-index:1000}.mobile-image-preview__header{align-items:center;background:var(--mobile-surface);border-bottom:1px solid var(--mobile-border-light);display:flex;justify-content:space-between;padding:var(--mobile-space-md)}.mobile-image-preview__header-btn{align-items:center;background:var(--mobile-border-light);border:none;border-radius:50%;color:var(--mobile-text-primary);cursor:pointer;display:flex;height:40px;justify-content:center;transition:all .2s ease;width:40px}.mobile-image-preview__header-btn:active{background:var(--mobile-border)}.mobile-image-preview__header-btn--primary{background:var(--mobile-primary);color:#fff}.mobile-image-preview__header-btn--primary:active{background:var(--mobile-primary-dark)}.mobile-image-preview__header-btn:disabled{cursor:not-allowed;opacity:.6}.mobile-image-preview__title{color:var(--mobile-text-primary);font-size:var(--mobile-font-md);font-weight:var(--mobile-font-medium)}.mobile-image-preview__container{align-items:center;background:#000;display:flex;flex:1;justify-content:center;overflow:hidden;position:relative}.mobile-image-preview__image{-webkit-user-drag:none;max-height:100%;max-width:100%;object-fit:contain;user-select:none}.mobile-image-preview__zoom-controls{align-items:center;background:rgba(0,0,0,.6);border-radius:var(--mobile-radius-lg);bottom:100px;display:flex;gap:var(--mobile-space-md);left:50%;padding:var(--mobile-space-sm) var(--mobile-space-md);position:absolute;transform:translateX(-50%)}.mobile-image-preview__zoom-btn{align-items:center;background:hsla(0,0%,100%,.2);border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:20px;height:36px;justify-content:center;transition:all .2s ease;width:36px}.mobile-image-preview__zoom-btn:active{background:hsla(0,0%,100%,.3)}.mobile-image-preview__zoom-btn:disabled{cursor:not-allowed;opacity:.4}.mobile-image-preview__zoom-level{color:#fff;font-size:var(--mobile-font-sm);min-width:50px;text-align:center}.mobile-image-preview__footer{background:var(--mobile-surface);border-top:1px solid var(--mobile-border-light);display:flex;gap:var(--mobile-space-md);padding:var(--mobile-space-md)}.mobile-image-preview__action-btn{align-items:center;border:none;border-radius:var(--mobile-radius-md);cursor:pointer;display:flex;flex:1;font-size:var(--mobile-font-base);gap:var(--mobile-space-sm);justify-content:center;padding:var(--mobile-space-md);transition:all .2s ease}.mobile-image-preview__action-btn--secondary{background:var(--mobile-border-light);color:var(--mobile-text-primary)}.mobile-image-preview__action-btn--secondary:active{background:var(--mobile-border)}.mobile-image-preview__action-btn--primary{background:var(--mobile-primary);color:#fff}.mobile-image-preview__action-btn--primary:active{background:var(--mobile-primary-dark)}.mobile-image-preview__action-btn:disabled{cursor:not-allowed;opacity:.6}.mobile-image-preview__hint{background:rgba(0,0,0,.5);border-radius:var(--mobile-radius-sm);bottom:180px;color:hsla(0,0%,100%,.8);font-size:var(--mobile-font-xs);left:50%;padding:var(--mobile-space-xs) var(--mobile-space-md);pointer-events:none;position:absolute;transform:translateX(-50%)}.mobile-safe-area-top{padding-top:env(safe-area-inset-top)}.mobile-safe-area-bottom{padding-bottom:env(safe-area-inset-bottom)}.mobile-safe-area-left{padding-left:env(safe-area-inset-left)}.mobile-safe-area-right{padding-right:env(safe-area-inset-right)}@supports (padding:max(0px)){.mobile-notch-aware{padding-left:max(env(safe-area-inset-left),0px);padding-right:max(env(safe-area-inset-right),0px)}}@media screen and (max-width:374px){.mobile-compact .mobile-home__stats-grid{grid-template-columns:repeat(2,1fr)}.mobile-compact .mobile-practice__grid{grid-template-columns:1fr}.mobile-compact .mobile-profile__stats-grid{grid-template-columns:repeat(2,1fr)}}@media screen and (orientation:landscape) and (max-height:500px){.mobile-landscape .mobile-tab-bar{height:48px}.mobile-landscape .mobile-header{height:44px}}.mobile-scroll-container{-webkit-overflow-scrolling:touch;overflow-y:auto}.mobile-layout{height:100vh!important;height:100dvh!important;overflow:hidden!important}.mobile-layout__body{display:flex!important;flex:1 1 0%!important;flex-direction:column!important;min-height:0!important;overflow:hidden!important}.mobile-content{-webkit-overflow-scrolling:touch!important;flex:1 1 0%!important;min-height:0!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior:contain!important}.mobile-content__inner{min-height:calc(100dvh - var(--mobile-header-height) - var(--mobile-tab-bar-height) - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 16px);padding-bottom:40px}@media screen and (max-width:768px){.mobile-filter input,.mobile-input,.mobile-search input{font-size:16px}}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){.mobile-border-hairline{border-width:.5px}}.mobile-card{background:var(--mobile-bg-primary);border-radius:var(--mobile-radius-lg);box-shadow:var(--mobile-shadow-sm);margin-bottom:var(--mobile-space-md);padding:var(--mobile-space-md);transition:transform var(--mobile-transition-fast),box-shadow var(--mobile-transition-fast)}.mobile-card:last-child{margin-bottom:0}.mobile-card--clickable:active{box-shadow:var(--mobile-shadow-md);transform:translateY(-1px)}.mobile-card--no-padding{padding:0}.mobile-card__header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--mobile-space-sm)}.mobile-card__title{color:var(--mobile-text-primary);font-size:var(--mobile-font-lg);font-weight:var(--mobile-font-semibold)}.mobile-card__subtitle{color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm);margin-top:var(--mobile-space-xs)}.mobile-card__content{color:var(--mobile-text-secondary);line-height:var(--mobile-line-height-relaxed)}.mobile-card__footer{align-items:center;border-top:1px solid var(--mobile-border-light);display:flex;justify-content:flex-end;margin-top:var(--mobile-space-md);padding-top:var(--mobile-space-md)}.mobile-button{-webkit-tap-highlight-color:transparent;align-items:center;border:none;border-radius:var(--mobile-radius-md);cursor:pointer;display:inline-flex;font-size:var(--mobile-font-md);font-weight:var(--mobile-font-medium);justify-content:center;line-height:1.5;overflow:hidden;padding:var(--mobile-space-sm) var(--mobile-space-md);position:relative;transition:transform .1s ease,box-shadow .1s ease,opacity var(--mobile-transition-fast),background-color var(--mobile-transition-fast)}.mobile-button:active{transform:scale(.97)}.mobile-button__ripple{background:hsla(0,0%,100%,.3);border-radius:50%;height:0;left:50%;opacity:0;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .4s ease,height .4s ease,opacity .4s ease;width:0}.mobile-button:active .mobile-button__ripple{height:200px;opacity:1;transition:0s;width:200px}.mobile-button--primary{background:var(--mobile-primary);color:var(--mobile-text-inverse)}.mobile-button--secondary{background:var(--mobile-bg-tertiary);color:var(--mobile-text-primary)}.mobile-button--ghost{background:transparent;border:1px solid var(--mobile-primary);color:var(--mobile-primary)}.mobile-button--danger{background:var(--mobile-error);color:var(--mobile-text-inverse)}.mobile-button--small{font-size:var(--mobile-font-sm);padding:var(--mobile-space-xs) var(--mobile-space-sm)}.mobile-button--large{font-size:var(--mobile-font-lg);padding:var(--mobile-space-md) var(--mobile-space-lg);width:100%}.mobile-button--full-width{width:100%}.mobile-button:disabled{cursor:not-allowed;opacity:.5}.mobile-button__icon{margin-right:var(--mobile-space-xs)}.mobile-button__icon--right{margin-left:var(--mobile-space-xs);margin-right:0}.mobile-list{background:var(--mobile-bg-primary);border-radius:var(--mobile-radius-lg);overflow:hidden}.mobile-list-item{align-items:center;border-bottom:1px solid var(--mobile-border-light);cursor:pointer;display:flex;padding:var(--mobile-space-md);transition:background-color var(--mobile-transition-fast)}.mobile-list-item:last-child{border-bottom:none}.mobile-list-item:active{background-color:var(--mobile-bg-tertiary)}.mobile-list-item__icon{align-items:center;color:var(--mobile-text-secondary);display:flex;height:24px;justify-content:center;margin-right:var(--mobile-space-md);width:24px}.mobile-list-item__content{flex:1;min-width:0}.mobile-list-item__title{color:var(--mobile-text-primary);font-size:var(--mobile-font-md)}.mobile-list-item__subtitle,.mobile-list-item__title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-list-item__subtitle{color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm);margin-top:var(--mobile-space-xs)}.mobile-list-item__extra{color:var(--mobile-text-tertiary);font-size:var(--mobile-font-sm);margin-left:var(--mobile-space-md)}.mobile-list-item__arrow{color:var(--mobile-text-tertiary);margin-left:var(--mobile-space-sm)}.mobile-form-label--required:after{margin-left:var(--mobile-space-xs)}.mobile-input{border-radius:var(--mobile-radius-md);transition:border-color var(--mobile-transition-fast),box-shadow var(--mobile-transition-fast)}.mobile-textarea{min-height:100px;resize:vertical}.mobile-header{align-items:center;background:var(--mobile-bg-primary);border-bottom:1px solid var(--mobile-border-light);display:flex;height:var(--mobile-header-height);justify-content:space-between;left:0;padding:0 var(--mobile-space-md);padding-top:var(--mobile-safe-area-top);position:fixed;right:0;top:0;z-index:1000}.mobile-header__left,.mobile-header__right{align-items:center;display:flex;min-width:60px}.mobile-header__right{justify-content:flex-end}.mobile-header__title{color:var(--mobile-text-primary);flex:1;font-size:var(--mobile-font-lg);font-weight:var(--mobile-font-semibold);overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap}.mobile-header__back{align-items:center;background:transparent;border:none;color:var(--mobile-primary);cursor:pointer;display:flex;font-size:var(--mobile-font-md);margin-left:calc(var(--mobile-space-xs)*-1);outline:none;padding:var(--mobile-space-xs);position:relative;z-index:1001}.mobile-header__actions{align-items:center;display:flex;gap:12px}.mobile-header__icon-btn{-webkit-tap-highlight-color:transparent;align-items:center;background:none;border:none;color:var(--mobile-text-secondary);cursor:pointer;display:flex;justify-content:center;padding:4px}.mobile-tab-bar{align-items:flex-start;background:var(--mobile-bg-primary);bottom:0;display:flex;height:calc(var(--mobile-tab-bar-height) + var(--mobile-safe-area-bottom));justify-content:space-around;left:0;padding-bottom:var(--mobile-safe-area-bottom);padding-top:var(--mobile-space-xs);position:fixed;right:0;z-index:100}.mobile-tab-item{align-items:center;background:transparent;border:none;color:var(--mobile-text-tertiary);cursor:pointer;display:flex;flex:1;flex-direction:column;gap:2px;height:var(--mobile-tab-bar-height);justify-content:center;padding:var(--mobile-space-xs) 0;transition:color var(--mobile-transition-fast)}.mobile-tab-item--active{color:var(--mobile-primary)}.mobile-tab-item__icon{align-items:center;display:flex;height:24px;justify-content:center;width:24px}.mobile-tab-item__label{font-size:10px;font-weight:var(--mobile-font-medium)}.mobile-tab-item__badge{align-items:center;background:var(--mobile-error);border-radius:var(--mobile-radius-full);color:var(--mobile-text-inverse);display:flex;font-size:10px;font-weight:var(--mobile-font-bold);height:16px;justify-content:center;min-width:16px;padding:0 4px;position:absolute;right:calc(50% - 16px);top:4px}.mobile-content{-webkit-overflow-scrolling:touch;background:var(--mobile-bg-secondary);flex:1;min-height:0;overflow-x:hidden;overflow-y:auto}.mobile-content--with-header{padding-top:calc(var(--mobile-header-height) + var(--mobile-safe-area-top))}.mobile-content--with-tab-bar{padding-bottom:calc(var(--mobile-tab-bar-height) + var(--mobile-safe-area-bottom))}.mobile-content__inner{padding:var(--mobile-space-md)}.mobile-layout{display:flex;flex-direction:column;height:100vh;height:100dvh;overflow:hidden;width:100%}.mobile-layout__body{display:flex;flex:1;flex-direction:column;overflow:hidden;position:relative}.mobile-empty-state{padding:var(--mobile-space-xl);text-align:center}.mobile-empty-state__icon{color:var(--mobile-text-tertiary);height:80px;margin-bottom:var(--mobile-space-md);width:80px}.mobile-empty-state__title{color:var(--mobile-text-primary);font-weight:var(--mobile-font-semibold);margin-bottom:var(--mobile-space-sm)}.mobile-empty-state__description{color:var(--mobile-text-secondary);font-size:var(--mobile-font-md);margin-bottom:var(--mobile-space-lg)}.mobile-loading{padding:var(--mobile-space-xl)}.mobile-loading__spinner{animation:mobile-spin .8s linear infinite;border:3px solid var(--mobile-border-light);border-radius:50%;border-top-color:var(--mobile-primary);height:32px;width:32px}@keyframes mobile-spin{to{transform:rotate(1turn)}}.mobile-loading__text{color:var(--mobile-text-secondary)}.mobile-desktop-guide{align-items:flex-end;animation:mobile-desktop-guide-fade-in .2s ease;background:rgba(0,0,0,.6);bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}@keyframes mobile-desktop-guide-fade-in{0%{opacity:0}to{opacity:1}}.mobile-desktop-guide__content{animation:mobile-desktop-guide-slide-up .3s ease;background:var(--mobile-bg-primary);border-radius:24px 24px 0 0;max-width:480px;padding:24px;width:100%}@keyframes mobile-desktop-guide-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.mobile-desktop-guide__header{margin-bottom:24px;text-align:center}.mobile-desktop-guide__icon{align-items:center;background:var(--mobile-primary-light,rgba(59,130,246,.1));border-radius:20px;color:var(--mobile-primary);display:flex;height:80px;justify-content:center;margin:0 auto 16px;width:80px}.mobile-desktop-guide__title{color:var(--mobile-text-primary);font-size:20px;font-weight:600;margin:0 0 8px}.mobile-desktop-guide__desc{color:var(--mobile-text-secondary);font-size:14px;line-height:1.5;margin:0}.mobile-desktop-guide__options{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.mobile-desktop-guide__option{align-items:center;background:var(--mobile-bg-secondary);border:1px solid var(--mobile-border);border-radius:12px;cursor:pointer;display:flex;gap:16px;padding:16px;text-align:left;transition:all .2s ease;width:100%}.mobile-desktop-guide__option:active{background:var(--mobile-bg-tertiary);transform:scale(.98)}.mobile-desktop-guide__option-icon{align-items:center;background:var(--mobile-bg-primary);border-radius:10px;color:var(--mobile-primary);display:flex;flex-shrink:0;height:44px;justify-content:center;width:44px}.mobile-desktop-guide__option-info{display:flex;flex:1;flex-direction:column;gap:4px}.mobile-desktop-guide__option-title{color:var(--mobile-text-primary);font-size:15px;font-weight:500}.mobile-desktop-guide__option-desc{color:var(--mobile-text-tertiary);font-size:13px}.mobile-desktop-guide__option-arrow{color:var(--mobile-text-tertiary);flex-shrink:0}.mobile-desktop-guide__copied{color:var(--mobile-success);flex-shrink:0;font-size:13px;font-weight:500}.mobile-desktop-guide__close{background:var(--mobile-bg-secondary);border:1px solid var(--mobile-border);border-radius:12px;color:var(--mobile-text-primary);cursor:pointer;font-size:16px;font-weight:500;padding:16px;transition:all .2s ease;width:100%}.mobile-desktop-guide__close:active{background:var(--mobile-bg-tertiary)}.mobile-send-to-desktop-toast{animation:mobile-toast-fade-in .2s ease;background:rgba(0,0,0,.8);border-radius:12px;color:#fff;font-size:14px;left:50%;padding:16px 24px;position:fixed;top:50%;transform:translate(-50%,-50%);z-index:1001}@keyframes mobile-toast-fade-in{0%{opacity:0;transform:translate(-50%,-40%)}to{opacity:1;transform:translate(-50%,-50%)}}.mobile-send-to-desktop-btn{align-items:center;background:var(--mobile-primary-light,rgba(59,130,246,.1));border:none;border-radius:8px;color:var(--mobile-primary);cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:6px;padding:8px 12px;transition:all .2s ease}.mobile-send-to-desktop-btn:active{opacity:.8}.mobile-send-to-desktop-btn svg{height:16px;width:16px}.mobile-edit-profile__avatar-section{-webkit-tap-highlight-color:transparent;align-items:center;cursor:pointer;display:flex;flex-direction:column;padding:var(--mobile-space-xl) 0 var(--mobile-space-lg)}.mobile-edit-profile__avatar{align-items:center;background:var(--mobile-bg-tertiary);border-radius:50%;color:var(--mobile-text-secondary);display:flex;height:80px;justify-content:center;overflow:hidden;position:relative;width:80px}.mobile-edit-profile__avatar img{height:100%;object-fit:cover;width:100%}.mobile-edit-profile__avatar-overlay{align-items:center;background:var(--mobile-primary);border:2px solid var(--mobile-bg-primary);border-radius:50%;bottom:0;color:var(--mobile-text-inverse);display:flex;height:28px;justify-content:center;position:absolute;right:0;width:28px}.mobile-edit-profile__avatar-label{color:var(--mobile-primary);font-size:var(--mobile-font-sm);margin-top:var(--mobile-space-sm)}.mobile-edit-profile__select{appearance:none;-webkit-appearance:none}.mobile-edit-profile__subjects{display:flex;flex-wrap:wrap;gap:var(--mobile-space-sm)}.mobile-edit-profile__subject-btn{-webkit-tap-highlight-color:transparent;background:var(--mobile-bg-primary);border:1px solid var(--mobile-border-medium);border-radius:var(--mobile-radius-full);color:var(--mobile-text-secondary);cursor:pointer;font-size:var(--mobile-font-sm);padding:var(--mobile-space-xs) var(--mobile-space-md);transition:all var(--mobile-transition-fast)}.mobile-edit-profile__subject-btn--active{background:rgba(79,70,229,.1);border-color:var(--mobile-primary);color:var(--mobile-primary);font-weight:var(--mobile-font-medium)}.mobile-edit-profile__readonly-hint{color:var(--mobile-text-tertiary);display:block;font-size:var(--mobile-font-xs);margin-top:var(--mobile-space-xs)}.mobile-error-boundary{background:#fff;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.1);flex-direction:column;margin:16px;min-height:200px;padding:32px 24px}.mobile-error-boundary,.mobile-error-boundary__icon{align-items:center;display:flex;justify-content:center}.mobile-error-boundary__icon{background:#fee2e2;border-radius:50%;color:#ef4444;font-size:32px;font-weight:700;height:64px;margin-bottom:16px;width:64px}.mobile-error-boundary__title{color:#111827;font-size:18px;font-weight:600;margin:0 0 8px}.mobile-error-boundary__message{color:#6b7280;font-size:14px;margin:0 0 24px;text-align:center;word-break:break-word}.mobile-error-boundary__retry-btn{background:#3b82f6;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:500;padding:12px 32px;transition:background .2s}.mobile-error-boundary__retry-btn:hover{background:#2563eb}.mobile-error-boundary__retry-btn:active{background:#1d4ed8}.mobile-form-page{background:var(--mobile-bg-secondary);min-height:100%}.mobile-form-page__content{padding:var(--mobile-space-md);padding-bottom:calc(var(--mobile-space-xl) + var(--mobile-safe-area-bottom))}.mobile-form-section{margin-bottom:var(--mobile-space-lg)}.mobile-form-section__title{color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm);font-weight:var(--mobile-font-semibold);margin-bottom:var(--mobile-space-sm);padding-left:var(--mobile-space-xs)}.mobile-form-group{margin-bottom:var(--mobile-space-md)}.mobile-form-group:last-child{margin-bottom:0}.mobile-form-label{color:var(--mobile-text-primary);display:block;font-size:var(--mobile-font-sm);font-weight:var(--mobile-font-medium);margin-bottom:var(--mobile-space-xs)}.mobile-form-label--required:after{color:var(--mobile-error);content:"*";margin-left:2px}.mobile-input{-webkit-appearance:none;background:var(--mobile-bg-primary);border:1px solid var(--mobile-border-medium);border-radius:var(--mobile-radius-lg);color:var(--mobile-text-primary);font-size:var(--mobile-font-md);height:48px;padding:var(--mobile-space-sm) var(--mobile-space-md);transition:all var(--mobile-transition-fast);width:100%}.mobile-input:focus{border-color:var(--mobile-primary);box-shadow:0 0 0 3px rgba(79,70,229,.1);outline:none}.mobile-input::placeholder{color:var(--mobile-text-tertiary)}.mobile-input:disabled{background:var(--mobile-bg-tertiary);color:var(--mobile-text-secondary);cursor:not-allowed}.mobile-input--error{border-color:var(--mobile-error)}.mobile-input--error:focus{box-shadow:0 0 0 3px rgba(239,68,68,.1)}.mobile-input__field,.mobile-input__wrapper{align-items:center;display:flex;position:relative}.mobile-input__field{background:var(--mobile-bg-primary);border:1px solid var(--mobile-border-medium);border-radius:var(--mobile-radius-lg);height:48px;transition:all var(--mobile-transition-fast);width:100%}.mobile-input__field:focus-within{border-color:var(--mobile-primary);box-shadow:0 0 0 3px rgba(79,70,229,.1)}.mobile-input__field--error{border-color:var(--mobile-error)}.mobile-input__field--error:focus-within{box-shadow:0 0 0 3px rgba(239,68,68,.1)}.mobile-input__control{-webkit-appearance:none;background:transparent;border:none;color:var(--mobile-text-primary);flex:1;font-size:var(--mobile-font-md);height:100%;outline:none;padding:0 var(--mobile-space-md)}.mobile-input__control::placeholder{color:var(--mobile-text-tertiary)}.mobile-input__control:disabled{color:var(--mobile-text-secondary);cursor:not-allowed}.mobile-input__icon{align-items:center;color:var(--mobile-text-tertiary);display:flex;flex-shrink:0;height:100%;justify-content:center;width:48px}.mobile-input__icon--left{padding-left:var(--mobile-space-sm)}.mobile-input__icon--right{padding-right:var(--mobile-space-sm)}.mobile-input__toggle{-webkit-tap-highlight-color:transparent;align-items:center;background:transparent;border:none;color:var(--mobile-text-tertiary);cursor:pointer;display:flex;flex-shrink:0;height:100%;justify-content:center;transition:color var(--mobile-transition-fast);width:48px}.mobile-input__toggle:active{color:var(--mobile-primary)}.mobile-form-error{color:var(--mobile-error);font-size:var(--mobile-font-sm)}.mobile-form-error,.mobile-form-hint{margin-top:var(--mobile-space-xs);padding-left:var(--mobile-space-xs)}.mobile-form-hint{color:var(--mobile-text-tertiary);font-size:var(--mobile-font-xs)}.mobile-select-tags{display:flex;flex-wrap:wrap;gap:var(--mobile-space-sm)}.mobile-select-tag{-webkit-tap-highlight-color:transparent;align-items:center;background:var(--mobile-bg-primary);border:1px solid var(--mobile-border-medium);border-radius:var(--mobile-radius-full);color:var(--mobile-text-secondary);cursor:pointer;display:inline-flex;font-size:var(--mobile-font-sm);font-weight:var(--mobile-font-medium);justify-content:center;min-height:36px;padding:var(--mobile-space-sm) var(--mobile-space-md);transition:all var(--mobile-transition-fast)}.mobile-select-tag:active{transform:scale(.95)}.mobile-select-tag--active{background:rgba(79,70,229,.1);border-color:var(--mobile-primary);color:var(--mobile-primary)}.mobile-subjects-grid{display:grid;gap:var(--mobile-space-sm);grid-template-columns:repeat(4,1fr)}@media (max-width:375px){.mobile-subjects-grid{grid-template-columns:repeat(3,1fr)}}.mobile-subject-btn{-webkit-tap-highlight-color:transparent;align-items:center;background:var(--mobile-bg-primary);border:1px solid var(--mobile-border-medium);border-radius:var(--mobile-radius-full);color:var(--mobile-text-secondary);cursor:pointer;display:flex;font-size:var(--mobile-font-sm);font-weight:var(--mobile-font-medium);justify-content:center;min-height:36px;padding:var(--mobile-space-sm);transition:all var(--mobile-transition-fast)}.mobile-subject-btn:active{transform:scale(.95)}.mobile-subject-btn--active{background:rgba(79,70,229,.1);border-color:var(--mobile-primary);color:var(--mobile-primary)}.mobile-select{-webkit-appearance:none;appearance:none;background:var(--mobile-bg-primary);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='%2394a3b8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:20px;border:1px solid var(--mobile-border-medium);border-radius:var(--mobile-radius-lg);color:var(--mobile-text-primary);cursor:pointer;font-size:var(--mobile-font-md);height:48px;padding:var(--mobile-space-sm) var(--mobile-space-md);padding-right:40px;transition:all var(--mobile-transition-fast);width:100%}.mobile-select:focus{border-color:var(--mobile-primary);box-shadow:0 0 0 3px rgba(79,70,229,.1);outline:none}.mobile-select:disabled{background-color:var(--mobile-bg-tertiary);color:var(--mobile-text-secondary);cursor:not-allowed}.mobile-avatar-upload{-webkit-tap-highlight-color:transparent;align-items:center;cursor:pointer;display:flex;flex-direction:column;padding:var(--mobile-space-lg) 0}.mobile-avatar-upload__container{align-items:center;background:var(--mobile-bg-tertiary);border-radius:50%;display:flex;height:88px;justify-content:center;overflow:hidden;position:relative;transition:transform var(--mobile-transition-fast);width:88px}.mobile-avatar-upload:active .mobile-avatar-upload__container{transform:scale(.95)}.mobile-avatar-upload__image{height:100%;object-fit:cover;width:100%}.mobile-avatar-upload__placeholder{color:var(--mobile-text-tertiary)}.mobile-avatar-upload__overlay{align-items:center;background:var(--mobile-primary);border:2px solid var(--mobile-bg-primary);border-radius:50%;bottom:0;box-shadow:var(--mobile-shadow-sm);color:var(--mobile-text-inverse);display:flex;height:28px;justify-content:center;position:absolute;right:0;width:28px}.mobile-avatar-upload__label{color:var(--mobile-primary);font-size:var(--mobile-font-sm);font-weight:var(--mobile-font-medium);margin-top:var(--mobile-space-sm)}.mobile-form-agreement{align-items:flex-start;display:flex;gap:var(--mobile-space-sm);padding:var(--mobile-space-sm) 0}.mobile-form-agreement__text{color:var(--mobile-text-secondary);flex:1;font-size:var(--mobile-font-sm);line-height:var(--mobile-line-height-normal)}.mobile-form-agreement__link{color:var(--mobile-primary);font-weight:var(--mobile-font-medium);text-decoration:none}.mobile-form-agreement__link:active{opacity:.7}.mobile-form-footer{margin-top:var(--mobile-space-lg);padding-top:var(--mobile-space-md);text-align:center}.mobile-form-footer__text{color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm)}.mobile-form-footer__link{color:var(--mobile-primary);font-weight:var(--mobile-font-medium);margin-left:var(--mobile-space-xs);text-decoration:none}.mobile-form-footer__link:active{opacity:.7}.mobile-card .mobile-form-group{margin-bottom:var(--mobile-space-lg)}.mobile-card .mobile-form-group:last-child{margin-bottom:0}.mobile-goals__overview{background:linear-gradient(135deg,var(--mobile-surface) 0,var(--mobile-bg) 100%);border-bottom:1px solid var(--mobile-border-light);padding:var(--mobile-space-md)}.mobile-goals__overview-card{background:var(--mobile-surface);border-radius:var(--mobile-radius-lg);box-shadow:0 2px 8px rgba(0,0,0,.05);padding:var(--mobile-space-lg)}.mobile-goals__overview-header{align-items:center;color:var(--mobile-text-primary);display:flex;font-size:var(--mobile-font-md);font-weight:var(--mobile-font-medium);gap:var(--mobile-space-sm);margin-bottom:var(--mobile-space-md)}.mobile-goals__overview-header svg{color:var(--mobile-primary)}.mobile-goals__progress-ring{height:150px;margin:0 auto var(--mobile-space-lg);position:relative;width:150px}.mobile-goals__progress-svg{height:100%;transform:rotate(-90deg);width:100%}.mobile-goals__progress-bg{fill:none;stroke:var(--mobile-border-light);stroke-width:8}.mobile-goals__progress-fill{fill:none;stroke:var(--mobile-primary);stroke-width:8;stroke-linecap:round;transition:stroke-dashoffset .5s ease}.mobile-goals__progress-text{left:50%;position:absolute;text-align:center;top:50%;transform:translate(-50%,-50%)}.mobile-goals__progress-percent{color:var(--mobile-primary);display:block;font-size:36px;font-weight:var(--mobile-font-bold);line-height:1}.mobile-goals__progress-label{color:var(--mobile-text-secondary);display:block;font-size:var(--mobile-font-sm);margin-top:4px}.mobile-goals__overview-stats{border-top:1px solid var(--mobile-border-light);display:flex;gap:var(--mobile-space-xl);justify-content:center;padding-top:var(--mobile-space-md)}.mobile-goals__stat{align-items:center;display:flex;flex-direction:column;gap:var(--mobile-space-xs)}.mobile-goals__stat-value{color:var(--mobile-text-primary);font-size:var(--mobile-font-xl);font-weight:var(--mobile-font-bold)}.mobile-goals__stat-label{color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm)}.mobile-goals__list{padding:var(--mobile-space-md)}.mobile-goals__section-title{align-items:center;color:var(--mobile-text-primary);display:flex;font-size:var(--mobile-font-md);font-weight:var(--mobile-font-medium);gap:var(--mobile-space-sm);margin:0 0 var(--mobile-space-md)}.mobile-goals__section-title svg{color:var(--mobile-primary)}.mobile-goals__empty{align-items:center;color:var(--mobile-text-tertiary);display:flex;flex-direction:column;justify-content:center;padding:var(--mobile-space-3xl)}.mobile-goals__empty h4{color:var(--mobile-text-secondary);font-size:var(--mobile-font-lg);margin:var(--mobile-space-md) 0 var(--mobile-space-xs)}.mobile-goals__empty p{color:var(--mobile-text-tertiary);font-size:var(--mobile-font-sm)}.mobile-goals__item{margin-bottom:var(--mobile-space-md);overflow:hidden}.mobile-goals__item-header{align-items:center;cursor:pointer;display:flex;gap:var(--mobile-space-md);padding:var(--mobile-space-md);transition:background-color .2s ease}.mobile-goals__item-header:active{background-color:var(--mobile-border-light)}.mobile-goals__item-level{align-items:center;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:var(--mobile-font-md);font-weight:var(--mobile-font-bold);height:36px;justify-content:center;width:36px}.mobile-goals__item-info{flex:1;min-width:0}.mobile-goals__item-name{color:var(--mobile-text-primary);font-size:var(--mobile-font-md);font-weight:var(--mobile-font-medium);margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-goals__item-type{color:var(--mobile-text-secondary);font-size:var(--mobile-font-xs)}.mobile-goals__item-arrow{color:var(--mobile-text-tertiary);flex-shrink:0;transition:transform .3s ease}.mobile-goals__item-arrow--expanded{transform:rotate(90deg)}.mobile-goals__score-progress{border-bottom:1px solid var(--mobile-border-light);padding:0 var(--mobile-space-md) var(--mobile-space-md)}.mobile-goals__score-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--mobile-space-sm)}.mobile-goals__score-label{color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm)}.mobile-goals__score-value{color:var(--mobile-text-primary);font-size:var(--mobile-font-sm);font-weight:var(--mobile-font-medium)}.mobile-goals__progress-bar{background:var(--mobile-border-light);border-radius:var(--mobile-radius-sm);height:8px;margin-bottom:var(--mobile-space-xs);overflow:hidden}.mobile-goals__progress-bar-fill{border-radius:var(--mobile-radius-sm);height:100%;transition:width .5s ease}.mobile-goals__progress-percentage{color:var(--mobile-text-secondary);font-size:var(--mobile-font-xs)}.mobile-goals__item-details{background:var(--mobile-bg);border-top:1px solid var(--mobile-border-light);padding:var(--mobile-space-md)}.mobile-goals__detail-section{margin-bottom:var(--mobile-space-lg)}.mobile-goals__detail-section:last-child{margin-bottom:0}.mobile-goals__detail-title{align-items:center;color:var(--mobile-text-primary);display:flex;font-size:var(--mobile-font-sm);font-weight:var(--mobile-font-medium);gap:var(--mobile-space-xs);margin:0 0 var(--mobile-space-sm)}.mobile-goals__detail-title svg{color:var(--mobile-primary)}.mobile-goals__subjects{display:flex;flex-wrap:wrap;gap:var(--mobile-space-xs)}.mobile-goals__subject-tag{background:rgba(59,130,246,.1);border-radius:var(--mobile-radius-sm);color:var(--mobile-primary);font-size:var(--mobile-font-sm);padding:4px 12px}.mobile-goals__semester-goals{display:flex;flex-direction:column;gap:var(--mobile-space-sm)}.mobile-goals__semester-goal{align-items:center;background:var(--mobile-surface);border-radius:var(--mobile-radius-md);display:flex;justify-content:space-between;padding:var(--mobile-space-sm)}.mobile-goals__semester-subject{color:var(--mobile-text-primary);font-size:var(--mobile-font-sm);font-weight:var(--mobile-font-medium)}.mobile-goals__semester-scores{display:flex;font-size:var(--mobile-font-sm);gap:var(--mobile-space-md)}.mobile-goals__semester-actual,.mobile-goals__semester-target{color:var(--mobile-text-secondary)}.mobile-goals__semester-actual--achieved{color:#10b981;font-weight:var(--mobile-font-medium)}.mobile-goals__learning-targets{list-style:none;margin:0;padding:0}.mobile-goals__learning-target{color:var(--mobile-text-primary);font-size:var(--mobile-font-sm);line-height:var(--mobile-line-height-relaxed);margin-bottom:var(--mobile-space-sm);padding-left:var(--mobile-space-md);position:relative}.mobile-goals__learning-target:before{background:var(--mobile-primary);border-radius:50%;content:"";height:6px;left:0;position:absolute;top:8px;width:6px}.mobile-goals__universities{display:flex;flex-direction:column;gap:var(--mobile-space-sm)}.mobile-goals__university-item{background:var(--mobile-surface);border-radius:var(--mobile-radius-md);padding:var(--mobile-space-sm)}.mobile-goals__university-level{background:var(--mobile-primary);border-radius:var(--mobile-radius-sm);color:#fff;display:inline-block;font-size:var(--mobile-font-xs);margin-right:var(--mobile-space-sm);padding:2px 8px}.mobile-goals__university-score{color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm)}.mobile-goals__university-names{display:flex;flex-wrap:wrap;gap:var(--mobile-space-xs);margin-top:var(--mobile-space-xs)}.mobile-goals__university-name{color:var(--mobile-text-primary);font-size:var(--mobile-font-sm)}.mobile-goals__summary{color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm);line-height:var(--mobile-line-height-relaxed);margin:0}.mobile-home{min-height:100%;padding-bottom:var(--mobile-space-lg)}.mobile-home__topbar{align-items:center;display:flex;height:44px;justify-content:space-between;margin-bottom:var(--mobile-space-md)}.mobile-home__topbar-title{color:var(--mobile-text-primary);font-size:var(--mobile-font-xl);font-weight:var(--mobile-font-bold)}.mobile-home__topbar-actions{align-items:center;display:flex;gap:var(--mobile-space-sm)}.mobile-home__topbar-btn{-webkit-tap-highlight-color:transparent;align-items:center;background:transparent;border:none;border-radius:var(--mobile-radius-full);color:var(--mobile-text-secondary);cursor:pointer;display:flex;height:36px;justify-content:center;transition:background-color var(--mobile-transition-fast);width:36px}.mobile-home__topbar-btn:active{background-color:var(--mobile-bg-tertiary)}.mobile-home__stats{-webkit-tap-highlight-color:transparent;background:linear-gradient(135deg,#1890ff,#40a9ff);border-radius:var(--mobile-radius-xl);box-shadow:0 4px 12px rgba(24,144,255,.3);cursor:pointer;margin-bottom:var(--mobile-space-lg);padding:var(--mobile-space-lg);transition:transform var(--mobile-transition-fast)}.mobile-home__stats:active{transform:scale(.98)}.mobile-home__stats-main{align-items:center;display:flex;gap:var(--mobile-space-lg);justify-content:center;margin-bottom:var(--mobile-space-sm)}.mobile-home__stats-item{align-items:center;display:flex;flex-direction:column}.mobile-home__stats-number{color:#fff;font-size:32px;font-weight:var(--mobile-font-bold);line-height:var(--mobile-line-height-tight)}.mobile-home__stats-label{color:hsla(0,0%,100%,.85);font-size:var(--mobile-font-sm);margin-top:var(--mobile-space-xs)}.mobile-home__stats-divider{background:hsla(0,0%,100%,.3);height:40px;width:1px}.mobile-home__stats-streak{color:hsla(0,0%,100%,.9);font-size:var(--mobile-font-sm);margin-top:var(--mobile-space-sm);text-align:center}.mobile-home__action{-webkit-tap-highlight-color:transparent;align-items:center;background:var(--mobile-bg-primary);border-radius:var(--mobile-radius-lg);box-shadow:var(--mobile-shadow-sm);cursor:pointer;display:flex;justify-content:center;margin-bottom:var(--mobile-space-lg);min-height:88px;padding:var(--mobile-space-md) 0;transition:transform var(--mobile-transition-fast)}.mobile-home__action:active{transform:scale(.98)}.mobile-home__action-content{align-items:center;display:flex;flex-direction:column;gap:var(--mobile-space-sm)}.mobile-home__action-btn{-webkit-tap-highlight-color:transparent;background:linear-gradient(135deg,#1890ff,#40a9ff);border:none;border-radius:var(--mobile-radius-xl);color:#fff;cursor:pointer;font-size:var(--mobile-font-lg);font-weight:var(--mobile-font-semibold);height:44px;transition:opacity var(--mobile-transition-fast);width:200px}.mobile-home__action-btn:active{opacity:.85}.mobile-home__action-subtitle{color:var(--mobile-text-tertiary);font-size:var(--mobile-font-xs);margin-bottom:var(--mobile-space-xs)}.mobile-home__action-links{align-items:center;display:flex;flex-direction:column;gap:var(--mobile-space-xs);margin-top:var(--mobile-space-xs)}.mobile-home__action-link{color:#1890ff;font-size:var(--mobile-font-xs);text-decoration:underline}.mobile-home__section-title{color:var(--mobile-text-primary);font-size:var(--mobile-font-lg);font-weight:var(--mobile-font-semibold)}.mobile-home__goals,.mobile-home__goals-title{margin-bottom:var(--mobile-space-md)}.mobile-home__goals-title{color:var(--mobile-text-primary);font-size:var(--mobile-font-lg);font-weight:var(--mobile-font-semibold)}.mobile-home__goals-scroll{-webkit-overflow-scrolling:touch;display:flex;gap:var(--mobile-space-md);overflow-x:auto;padding-bottom:var(--mobile-space-sm);scrollbar-width:none}.mobile-home__goals-scroll::-webkit-scrollbar{display:none}.mobile-home__goal-card{-webkit-tap-highlight-color:transparent;align-items:center;background:var(--mobile-bg-primary);border-radius:var(--mobile-radius-lg);box-shadow:var(--mobile-shadow-sm);cursor:pointer;display:flex;flex-direction:column;flex-shrink:0;gap:var(--mobile-space-xs);height:140px;justify-content:center;padding:var(--mobile-space-md);transition:transform var(--mobile-transition-fast);width:120px}.mobile-home__goal-card:active{transform:scale(.96)}.mobile-home__goal-card--completed{border:1px solid #52c41a}.mobile-home__goal-card-icon{font-size:28px;line-height:1}.mobile-home__goal-card-subject{color:var(--mobile-text-primary);font-size:var(--mobile-font-md);font-weight:var(--mobile-font-medium)}.mobile-home__goal-card-progress{margin-top:var(--mobile-space-xs);width:100%}.mobile-home__goal-card-progress-bar{background:var(--mobile-bg-tertiary);border-radius:var(--mobile-radius-full);height:6px;overflow:hidden;width:100%}.mobile-home__goal-card-progress-fill{background:#1890ff;border-radius:var(--mobile-radius-full);height:100%;transition:width var(--mobile-transition-normal)}.mobile-home__goal-card--completed .mobile-home__goal-card-progress-fill{background:#52c41a}.mobile-home__goal-card-count{color:var(--mobile-text-secondary);font-size:var(--mobile-font-xs);margin-top:var(--mobile-space-xs)}.mobile-home__goal-card-done{color:#52c41a;font-weight:var(--mobile-font-medium)}.mobile-home__recent,.mobile-home__recent-header{margin-bottom:var(--mobile-space-md)}.mobile-home__recent-header{align-items:center;display:flex;justify-content:space-between}.mobile-home__recent-more{-webkit-tap-highlight-color:transparent;background:none;border:none;color:var(--mobile-text-tertiary);cursor:pointer;font-size:var(--mobile-font-sm)}.mobile-home__recent-more:active{color:var(--mobile-text-secondary)}.mobile-home__recent-empty{color:var(--mobile-text-tertiary);font-size:var(--mobile-font-sm);padding:var(--mobile-space-xl);text-align:center}.mobile-home__recent-list{display:flex;flex-direction:column;gap:var(--mobile-space-sm)}.mobile-home__recent-item{-webkit-tap-highlight-color:transparent;align-items:center;background:var(--mobile-bg-primary);border-radius:var(--mobile-radius-lg);box-shadow:var(--mobile-shadow-sm);cursor:pointer;display:flex;height:80px;padding:var(--mobile-space-md);transition:transform var(--mobile-transition-fast)}.mobile-home__recent-item:active{transform:scale(.98)}.mobile-home__recent-item-icon{align-items:center;display:flex;flex-shrink:0;font-size:24px;height:40px;justify-content:center;margin-right:var(--mobile-space-md);width:40px}.mobile-home__recent-item-content{flex:1;min-width:0}.mobile-home__recent-item-title{color:var(--mobile-text-primary);font-size:var(--mobile-font-md);font-weight:var(--mobile-font-medium);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-home__recent-item-stats{color:var(--mobile-text-secondary);font-size:var(--mobile-font-xs);margin-top:var(--mobile-space-xs)}.mobile-home__recent-item-time{color:var(--mobile-text-tertiary);flex-shrink:0;font-size:var(--mobile-font-xs);margin-left:var(--mobile-space-sm);max-width:80px;text-align:right}.mobile-home__recent-card{margin-bottom:var(--mobile-space-sm)}.mobile-home__recent-card:last-child{margin-bottom:0}.mobile-home__recent-card-time{color:var(--mobile-text-tertiary);font-size:var(--mobile-font-xs);margin-left:auto}.mobile-home__achievements{margin-bottom:var(--mobile-space-md)}.mobile-home__achievements-scroll{-webkit-overflow-scrolling:touch;display:flex;gap:var(--mobile-space-md);overflow-x:auto;padding-bottom:var(--mobile-space-sm);padding-top:var(--mobile-space-md);scrollbar-width:none}.mobile-home__achievements-scroll::-webkit-scrollbar{display:none}.mobile-home__badge{-webkit-tap-highlight-color:transparent;align-items:center;border-radius:var(--mobile-radius-lg);cursor:pointer;display:flex;flex-direction:column;flex-shrink:0;gap:var(--mobile-space-xs);height:80px;justify-content:center;transition:transform var(--mobile-transition-fast);width:72px}.mobile-home__badge:active{transform:scale(.95)}.mobile-home__badge--unlocked{background:#fffbe6}.mobile-home__badge--locked{background:#f5f5f5;filter:grayscale(100%);opacity:.6}.mobile-home__badge-icon{font-size:28px;line-height:1}.mobile-home__badge-name{color:var(--mobile-text-secondary);font-size:11px;line-height:1.2;text-align:center}.mobile-home__section{margin-bottom:var(--mobile-space-md)}.mobile-home__chart,.mobile-home__distribution{background:var(--mobile-bg-primary);border-radius:var(--mobile-radius-lg);box-shadow:var(--mobile-shadow-sm);padding:var(--mobile-space-md)}.mobile-home__distribution-empty{align-items:center;color:var(--mobile-text-tertiary);display:flex;font-size:var(--mobile-font-sm);height:220px;justify-content:center}.mobile-home__distribution-legend-text{color:var(--mobile-text-secondary);font-size:var(--mobile-font-xs)}.mobile-home__chart-fallback{align-items:center;background:var(--mobile-bg-primary);border-radius:var(--mobile-radius-lg);box-shadow:var(--mobile-shadow-sm);display:flex;flex-direction:column;gap:var(--mobile-space-sm);justify-content:center;min-height:160px;padding:var(--mobile-space-xl) var(--mobile-space-lg);text-align:center}.mobile-home__chart-fallback__title{color:var(--mobile-text-secondary);font-size:var(--mobile-font-md);font-weight:var(--mobile-font-medium)}.mobile-home__chart-fallback__desc{color:var(--mobile-text-tertiary);font-size:var(--mobile-font-sm)}.mobile-image-picker{align-items:flex-end;animation:mobile-image-picker-fade-in var(--mobile-transition-fast) ease;background:rgba(0,0,0,.5);bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}@keyframes mobile-image-picker-fade-in{0%{opacity:0}to{opacity:1}}.mobile-image-picker__sheet{animation:mobile-image-picker-slide-up var(--mobile-transition-normal) ease;background:var(--mobile-bg-primary);border-radius:var(--mobile-radius-xl) var(--mobile-radius-xl) 0 0;max-height:80vh;overflow-y:auto;padding:var(--mobile-space-lg);padding-bottom:calc(var(--mobile-space-lg) + var(--mobile-safe-area-bottom) + var(--mobile-tab-bar-height));width:100%}@keyframes mobile-image-picker-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.mobile-image-picker__header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--mobile-space-lg)}.mobile-image-picker__title{color:var(--mobile-text-primary);font-size:var(--mobile-font-lg);font-weight:var(--mobile-font-semibold)}.mobile-image-picker__close{-webkit-tap-highlight-color:transparent;align-items:center;background:none;border:none;color:var(--mobile-text-secondary);cursor:pointer;display:flex;height:32px;justify-content:center;width:32px}.mobile-image-picker__close:active{opacity:.6}.mobile-image-picker__options{display:flex;flex-direction:column;gap:var(--mobile-space-md)}.mobile-image-picker__option{-webkit-tap-highlight-color:transparent;align-items:center;background:var(--mobile-bg-secondary);border:1px solid var(--mobile-border-light);border-radius:var(--mobile-radius-lg);color:var(--mobile-text-primary);cursor:pointer;display:flex;font-size:var(--mobile-font-md);font-weight:var(--mobile-font-medium);gap:var(--mobile-space-md);height:80px;padding:0 var(--mobile-space-lg);transition:background-color var(--mobile-transition-fast)}.mobile-image-picker__option:active{background:var(--mobile-bg-tertiary)}.mobile-image-picker__option:disabled{cursor:not-allowed;opacity:.5}.mobile-image-picker__option svg{color:var(--mobile-primary);flex-shrink:0}.mobile-image-picker__preview{align-items:center;display:flex;flex-direction:column;gap:var(--mobile-space-lg)}.mobile-image-picker__preview-image{border-radius:var(--mobile-radius-md);max-height:300px;max-width:100%;object-fit:contain}.mobile-image-picker__actions{display:flex;gap:var(--mobile-space-md);width:100%}.mobile-image-picker__action-btn{-webkit-tap-highlight-color:transparent;border-radius:var(--mobile-radius-lg);cursor:pointer;flex:1;font-size:var(--mobile-font-md);font-weight:var(--mobile-font-medium);height:44px;transition:opacity var(--mobile-transition-fast)}.mobile-image-picker__action-btn:active{opacity:.8}.mobile-image-picker__action-btn:disabled{cursor:not-allowed;opacity:.5}.mobile-image-picker__action-btn--primary{background:var(--mobile-primary);border:none;color:var(--mobile-text-inverse)}.mobile-image-picker__action-btn--ghost{background:none;border:1px solid var(--mobile-border-medium);color:var(--mobile-text-secondary)}.mobile-image-picker__fallback{color:#8c8c8c;font-size:var(--mobile-font-md);padding:var(--mobile-space-xxl) var(--mobile-space-md);text-align:center}.mobile-image-picker__loading{align-items:center;color:var(--mobile-text-secondary);display:flex;font-size:var(--mobile-font-sm);gap:var(--mobile-space-sm);justify-content:center;padding:var(--mobile-space-md)}.mobile-image-picker__loading-spinner{animation:mobile-image-picker-spin .8s linear infinite;border:2px solid var(--mobile-border-light);border-radius:50%;border-top-color:var(--mobile-primary);height:20px;width:20px}@keyframes mobile-image-picker-spin{to{transform:rotate(1turn)}}.mobile-image-picker__error{color:#ef4444;font-size:var(--mobile-font-sm);line-height:var(--mobile-line-height-normal);padding:var(--mobile-space-sm);text-align:center}.mobile-image-picker__error-actions{display:flex;gap:var(--mobile-space-md);justify-content:center;margin-top:var(--mobile-space-md)}.mobile-image-picker__error-btn{border:none;border-radius:var(--mobile-radius-lg);cursor:pointer;font-size:var(--mobile-font-sm);font-weight:var(--mobile-font-semibold);min-height:40px;padding:var(--mobile-space-sm) var(--mobile-space-lg);transition:opacity var(--mobile-transition-fast)}.mobile-image-picker__error-btn:first-child{background:#f3f4f6;color:#6b7280}.mobile-image-picker__error-btn:last-child{background:#4f46e5;color:#fff}.mobile-image-picker__error-btn:active{opacity:.7}.mobile-knowledge__header-actions{align-items:center;display:flex;gap:var(--mobile-space-sm)}.mobile-knowledge__header-btn{-webkit-tap-highlight-color:transparent;background:none;border:none;color:var(--mobile-text-secondary);cursor:pointer;padding:var(--mobile-space-xs)}.mobile-knowledge__search{-webkit-tap-highlight-color:transparent;align-items:center;background:#f5f5f5;border-radius:20px;cursor:pointer;display:flex;height:36px;margin-bottom:var(--mobile-space-md);padding:0 var(--mobile-space-md)}.mobile-knowledge__search-icon{color:var(--mobile-text-tertiary);flex-shrink:0;margin-right:var(--mobile-space-sm)}.mobile-knowledge__search-placeholder{color:var(--mobile-text-tertiary);font-size:var(--mobile-font-sm)}.mobile-knowledge__search-overlay{background:var(--mobile-bg-secondary);bottom:0;display:flex;flex-direction:column;left:0;position:fixed;right:0;top:0;z-index:200}.mobile-knowledge__search-overlay-header{align-items:center;background:var(--mobile-bg-primary);border-bottom:1px solid var(--mobile-border-light);display:flex;gap:var(--mobile-space-sm);padding:var(--mobile-space-sm) var(--mobile-space-md);padding-top:calc(var(--mobile-space-sm) + var(--mobile-safe-area-top))}.mobile-knowledge__search-overlay-input-wrapper{align-items:center;background:#f5f5f5;border-radius:20px;display:flex;flex:1;height:36px;padding:0 var(--mobile-space-md)}.mobile-knowledge__search-overlay-icon{color:var(--mobile-text-tertiary);flex-shrink:0;margin-right:var(--mobile-space-sm)}.mobile-knowledge__search-overlay-input{background:none;border:none;color:var(--mobile-text-primary);flex:1;font-size:var(--mobile-font-md);min-width:0;outline:none}.mobile-knowledge__search-overlay-input::placeholder{color:var(--mobile-text-tertiary)}.mobile-knowledge__search-overlay-clear{-webkit-tap-highlight-color:transparent;align-items:center;background:var(--mobile-text-tertiary);border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:10px;height:20px;justify-content:center;width:20px}.mobile-knowledge__search-overlay-cancel{-webkit-tap-highlight-color:transparent;background:none;border:none;color:var(--mobile-text-link);cursor:pointer;flex-shrink:0;font-size:var(--mobile-font-md);padding:var(--mobile-space-xs)}.mobile-knowledge__search-overlay-body{-webkit-overflow-scrolling:touch;flex:1;overflow-y:auto;padding:var(--mobile-space-md)}.mobile-knowledge__search-history{margin-bottom:var(--mobile-space-lg)}.mobile-knowledge__search-history-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--mobile-space-sm)}.mobile-knowledge__search-history-title{color:var(--mobile-text-primary);font-size:var(--mobile-font-md);font-weight:var(--mobile-font-medium)}.mobile-knowledge__search-history-clear{-webkit-tap-highlight-color:transparent;background:none;border:none;color:var(--mobile-text-tertiary);cursor:pointer;font-size:var(--mobile-font-sm)}.mobile-knowledge__search-history-list{display:flex;flex-wrap:wrap;gap:var(--mobile-space-sm)}.mobile-knowledge__search-history-item{-webkit-tap-highlight-color:transparent;background:var(--mobile-bg-tertiary);border:none;border-radius:var(--mobile-radius-xl);color:var(--mobile-text-secondary);cursor:pointer;font-size:var(--mobile-font-sm);padding:var(--mobile-space-xs) var(--mobile-space-md)}.mobile-knowledge__search-hot{margin-bottom:var(--mobile-space-lg)}.mobile-knowledge__search-hot-title{color:var(--mobile-text-primary);display:block;font-size:var(--mobile-font-md);font-weight:var(--mobile-font-medium);margin-bottom:var(--mobile-space-sm)}.mobile-knowledge__search-hot-tags{display:flex;flex-wrap:wrap;gap:var(--mobile-space-sm)}.mobile-knowledge__search-hot-tag{-webkit-tap-highlight-color:transparent;background:var(--mobile-bg-tertiary);border:none;border-radius:var(--mobile-radius-xl);color:var(--mobile-text-secondary);cursor:pointer;font-size:var(--mobile-font-sm);padding:var(--mobile-space-xs) var(--mobile-space-md)}.mobile-knowledge__search-results{display:flex;flex-direction:column}.mobile-knowledge__search-result-item{-webkit-tap-highlight-color:transparent;align-items:center;background:var(--mobile-bg-primary);border-radius:var(--mobile-radius-lg);box-shadow:var(--mobile-shadow-sm);cursor:pointer;display:flex;margin-bottom:var(--mobile-space-sm);padding:var(--mobile-space-md);transition:background-color var(--mobile-transition-fast)}.mobile-knowledge__search-result-item:active{background-color:var(--mobile-bg-tertiary)}.mobile-knowledge__search-result-icon{align-items:center;background:#e6f7ff;border-radius:var(--mobile-radius-md);display:flex;flex-shrink:0;font-size:18px;height:36px;justify-content:center;margin-right:var(--mobile-space-md);width:36px}.mobile-knowledge__search-result-content{flex:1;min-width:0}.mobile-knowledge__search-result-title{color:var(--mobile-text-primary);font-size:var(--mobile-font-md);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-knowledge__search-result-meta{color:var(--mobile-text-tertiary);font-size:var(--mobile-font-xs);margin-top:2px}.mobile-knowledge__search-result-arrow{color:var(--mobile-text-tertiary);font-size:18px;margin-left:var(--mobile-space-sm)}.mobile-knowledge__entries{display:flex;gap:var(--mobile-space-md);margin-bottom:var(--mobile-space-lg)}.mobile-knowledge__entry-card{-webkit-tap-highlight-color:transparent;align-items:center;border-radius:var(--mobile-radius-xl);cursor:pointer;display:flex;flex:1;flex-direction:column;height:120px;justify-content:center;overflow:hidden;position:relative;transition:transform var(--mobile-transition-fast)}.mobile-knowledge__entry-card:active{transform:scale(.97)}.mobile-knowledge__entry-card--notebook{background:linear-gradient(135deg,#1890ff,#40a9ff);color:#fff}.mobile-knowledge__entry-card--knowledge{background:linear-gradient(135deg,#52c41a,#73d13d);color:#fff}.mobile-knowledge__entry-card--favorites{background:linear-gradient(135deg,#faad14,#ffc53d);color:#fff}.mobile-knowledge__entry-icon{font-size:32px;margin-bottom:var(--mobile-space-sm)}.mobile-knowledge__entry-label{font-size:var(--mobile-font-md);font-weight:var(--mobile-font-medium)}.mobile-knowledge__entry-count{font-size:var(--mobile-font-xs);margin-top:2px;opacity:.8}.mobile-knowledge__section{margin-bottom:var(--mobile-space-lg)}.mobile-knowledge__section-title{color:var(--mobile-text-primary);font-size:var(--mobile-font-lg);font-weight:var(--mobile-font-semibold);margin-bottom:var(--mobile-space-md)}.mobile-knowledge__recent-list{background:var(--mobile-bg-primary);border-radius:var(--mobile-radius-lg);box-shadow:var(--mobile-shadow-sm);overflow:hidden}.mobile-knowledge__recent-item{align-items:center;border-bottom:1px solid var(--mobile-border-light);cursor:pointer;display:flex;padding:var(--mobile-space-md);transition:background-color var(--mobile-transition-fast)}.mobile-knowledge__recent-item:last-child{border-bottom:none}.mobile-knowledge__recent-item:active{background-color:var(--mobile-bg-tertiary)}.mobile-knowledge__recent-icon{align-items:center;border-radius:var(--mobile-radius-md);display:flex;flex-shrink:0;font-size:18px;height:36px;justify-content:center;margin-right:var(--mobile-space-md);width:36px}.mobile-knowledge__recent-icon--note{background:#e6f7ff;color:#1890ff}.mobile-knowledge__recent-icon--knowledge{background:#f6ffed;color:#52c41a}.mobile-knowledge__recent-icon--favorite{background:#fff7e6;color:#faad14}.mobile-knowledge__recent-content{flex:1;min-width:0}.mobile-knowledge__recent-title{color:var(--mobile-text-primary);font-size:var(--mobile-font-md);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-knowledge__recent-meta{color:var(--mobile-text-tertiary);font-size:var(--mobile-font-xs);margin-top:2px}.mobile-knowledge__recent-arrow{color:var(--mobile-text-tertiary);margin-left:var(--mobile-space-sm)}.mobile-knowledge__subject{background:var(--mobile-bg-primary);border-radius:var(--mobile-radius-lg);box-shadow:var(--mobile-shadow-sm);overflow:hidden}.mobile-knowledge__subject-item{align-items:center;border-bottom:1px solid var(--mobile-border-light);cursor:pointer;display:flex;height:80px;padding:var(--mobile-space-md);transition:background-color var(--mobile-transition-fast)}.mobile-knowledge__subject-item:last-child{border-bottom:none}.mobile-knowledge__subject-item:active{background-color:var(--mobile-bg-tertiary)}.mobile-knowledge__subject-icon{align-items:center;background:var(--mobile-bg-tertiary);border-radius:var(--mobile-radius-md);display:flex;flex-shrink:0;font-size:20px;height:40px;justify-content:center;margin-right:var(--mobile-space-md);width:40px}.mobile-knowledge__subject-info{flex:1;min-width:0}.mobile-knowledge__subject-name{color:var(--mobile-text-primary);font-size:var(--mobile-font-md);font-weight:var(--mobile-font-medium)}.mobile-knowledge__subject-stats{color:var(--mobile-text-tertiary);font-size:var(--mobile-font-xs);margin-top:2px}.mobile-knowledge__subject-arrow{color:var(--mobile-text-tertiary);font-size:18px;margin-left:var(--mobile-space-sm)}.mobile-knowledge__tip{align-items:center;background:#e6f7ff;border-radius:var(--mobile-radius-lg);color:#1890ff;display:flex;font-size:var(--mobile-font-sm);gap:var(--mobile-space-sm);margin-bottom:var(--mobile-space-md);padding:var(--mobile-space-md)}.mobile-knowledge__tip-icon{flex-shrink:0;font-size:16px}.mobile-knowledge__empty{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:var(--mobile-space-xxl);text-align:center}.mobile-knowledge__empty-icon{font-size:48px;margin-bottom:var(--mobile-space-md)}.mobile-knowledge__empty-title{color:var(--mobile-text-primary);font-size:var(--mobile-font-lg);font-weight:var(--mobile-font-medium);margin-bottom:var(--mobile-space-xs)}.mobile-knowledge__empty-desc{color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm)}.mobile-knowledge__note-detail-overlay{align-items:flex-end;background:rgba(0,0,0,.5);bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:200}.mobile-knowledge__note-detail{animation:mobile-knowledge-slide-up .3s ease;background:var(--mobile-bg-primary);border-radius:var(--mobile-radius-xl) var(--mobile-radius-xl) 0 0;display:flex;flex-direction:column;max-height:90vh;overflow:hidden;width:100%}@keyframes mobile-knowledge-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.mobile-knowledge__note-detail-header{align-items:center;border-bottom:1px solid var(--mobile-border-light);display:flex;flex-shrink:0;justify-content:space-between;padding:var(--mobile-space-md)}.mobile-knowledge__note-detail-title{color:var(--mobile-text-primary);flex:1;font-size:var(--mobile-font-lg);font-weight:var(--mobile-font-semibold);margin-right:var(--mobile-space-sm);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-knowledge__note-detail-close{-webkit-tap-highlight-color:transparent;align-items:center;background:var(--mobile-bg-tertiary);border:none;border-radius:var(--mobile-radius-full);color:var(--mobile-text-secondary);cursor:pointer;display:flex;flex-shrink:0;height:32px;justify-content:center;width:32px}.mobile-knowledge__note-detail-close:active{background:var(--mobile-border-light)}.mobile-knowledge__note-detail-meta{align-items:center;color:var(--mobile-text-tertiary);display:flex;flex-shrink:0;font-size:var(--mobile-font-xs);gap:var(--mobile-space-md);padding:var(--mobile-space-sm) var(--mobile-space-md)}.mobile-knowledge__note-detail-body{-webkit-overflow-scrolling:touch;flex:1;overflow-y:auto;padding:var(--mobile-space-md)}.mobile-knowledge__note-detail-body .markdown-preview{color:var(--mobile-text-primary);font-size:var(--mobile-font-sm);line-height:var(--mobile-line-height-relaxed)}.mobile-knowledge__note-detail-body .markdown-preview img{border-radius:var(--mobile-radius-md);cursor:zoom-in;max-width:100%}.mobile-knowledge__note-detail-body .markdown-preview .katex-display{-webkit-overflow-scrolling:touch;overflow-x:auto;padding:var(--mobile-space-sm) 0}.mobile-knowledge__note-detail-body .markdown-preview .katex{font-size:1.1em}.mobile-knowledge__image-viewer{align-items:center;background:rgba(0,0,0,.9);bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:300}.mobile-knowledge__image-viewer-content{align-items:center;display:flex;height:100%;justify-content:center;position:relative;width:100%}.mobile-knowledge__image-viewer-close{-webkit-tap-highlight-color:transparent;align-items:center;background:hsla(0,0%,100%,.2);border:none;border-radius:var(--mobile-radius-full);cursor:pointer;display:flex;height:36px;justify-content:center;position:absolute;right:var(--mobile-space-md);top:calc(var(--mobile-safe-area-top) + var(--mobile-space-md));width:36px;z-index:1}.mobile-knowledge__image-viewer-close:active{background:hsla(0,0%,100%,.3)}.mobile-knowledge__image-viewer-img{max-height:100%;max-width:100%;object-fit:contain;padding:var(--mobile-space-xl)}.mobile-lazy-loader{align-items:center;display:flex;flex-direction:column;height:100%;justify-content:center;min-height:200px;padding:var(--mobile-space-lg)}.mobile-lazy-loader__spinner{align-items:center;display:flex;gap:var(--mobile-space-sm)}.mobile-lazy-loader__dot{animation:mobileLazyBounce 1.4s ease-in-out infinite both;background:var(--mobile-primary);border-radius:50%;height:8px;width:8px}.mobile-lazy-loader__dot--1{animation-delay:0s}.mobile-lazy-loader__dot--2{animation-delay:.15s}.mobile-lazy-loader__dot--3{animation-delay:.3s}.mobile-lazy-loader__text{color:var(--mobile-text-tertiary);font-size:var(--mobile-font-sm);line-height:var(--mobile-line-height-normal);margin-top:var(--mobile-space-md)}@keyframes mobileLazyBounce{0%,80%,to{transform:translateY(0)}40%{transform:translateY(-12px)}}.mobile-loading-spinner{align-items:center;display:flex;flex-direction:column;gap:var(--mobile-space-md,16px);justify-content:center;padding:var(--mobile-space-lg,24px)}.mobile-loading-spinner--fullscreen{background:hsla(0,0%,100%,.9);bottom:0;left:0;position:fixed;right:0;top:0;z-index:1000}.mobile-loading-spinner__ring{display:inline-block;position:relative}.mobile-loading-spinner__ring--small{height:24px;width:24px}.mobile-loading-spinner__ring--medium{height:36px;width:36px}.mobile-loading-spinner__ring--large{height:48px;width:48px}.mobile-loading-spinner__circle{animation:mobileSpin .8s linear infinite;border:3px solid var(--mobile-border-light,#e2e8f0);border-radius:50%;border-top-color:var(--mobile-primary,#4f46e5);height:100%;width:100%}.mobile-loading-spinner__text{color:var(--mobile-text-secondary,#64748b);font-size:var(--mobile-font-sm,14px);margin:0}.mobile-note-detail{background:var(--mobile-surface);min-height:100%;padding:var(--mobile-space-md)}.mobile-note-detail__header{border-bottom:1px solid var(--mobile-border-light);margin-bottom:var(--mobile-space-lg);padding-bottom:var(--mobile-space-md)}.mobile-note-detail__title{color:var(--mobile-text-primary);font-size:var(--mobile-font-xl);font-weight:var(--mobile-font-bold);line-height:var(--mobile-line-height-tight);margin:0 0 var(--mobile-space-md)}.mobile-note-detail__meta{display:flex;flex-wrap:wrap;gap:var(--mobile-space-md);margin-bottom:var(--mobile-space-sm)}.mobile-note-detail__meta-item{align-items:center;color:var(--mobile-text-secondary);display:flex;font-size:var(--mobile-font-sm);gap:var(--mobile-space-xs)}.mobile-note-detail__grade{background:var(--mobile-border-light);border-radius:var(--mobile-radius-sm);font-size:var(--mobile-font-xs);padding:2px 6px}.mobile-note-detail__difficulty{align-items:center;display:flex;gap:var(--mobile-space-sm);margin-top:var(--mobile-space-sm)}.mobile-note-detail__difficulty-label{color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm)}.mobile-note-detail__difficulty-stars{display:flex;gap:2px}.mobile-note-detail__star{color:var(--mobile-border);font-size:16px}.mobile-note-detail__star--filled{color:#fbbf24}.mobile-note-detail__content{margin-bottom:var(--mobile-space-xl)}.mobile-note-detail__markdown{color:var(--mobile-text-primary);font-size:var(--mobile-font-base);line-height:var(--mobile-line-height-relaxed)}.mobile-note-detail__markdown h1,.mobile-note-detail__markdown h2,.mobile-note-detail__markdown h3,.mobile-note-detail__markdown h4,.mobile-note-detail__markdown h5,.mobile-note-detail__markdown h6{color:var(--mobile-text-primary);font-weight:var(--mobile-font-bold);margin-bottom:var(--mobile-space-md);margin-top:var(--mobile-space-lg)}.mobile-note-detail__markdown h1{font-size:var(--mobile-font-xl)}.mobile-note-detail__markdown h2{font-size:var(--mobile-font-lg)}.mobile-note-detail__markdown h3{font-size:var(--mobile-font-md)}.mobile-note-detail__markdown p{margin-bottom:var(--mobile-space-md)}.mobile-note-detail__markdown ol,.mobile-note-detail__markdown ul{margin-bottom:var(--mobile-space-md);padding-left:var(--mobile-space-lg)}.mobile-note-detail__markdown li{margin-bottom:var(--mobile-space-xs)}.mobile-note-detail__markdown code{background:var(--mobile-border-light);border-radius:var(--mobile-radius-sm);font-family:monospace;font-size:.9em;padding:2px 6px}.mobile-note-detail__markdown pre{background:var(--mobile-border-light);border-radius:var(--mobile-radius-md);margin-bottom:var(--mobile-space-md);overflow-x:auto;padding:var(--mobile-space-md)}.mobile-note-detail__markdown pre code{background:transparent;padding:0}.mobile-note-detail__markdown blockquote{border-left:4px solid var(--mobile-primary);color:var(--mobile-text-secondary);margin-bottom:var(--mobile-space-md);margin-left:0;padding-left:var(--mobile-space-md)}.mobile-note-detail__markdown img{border-radius:var(--mobile-radius-md);margin-bottom:var(--mobile-space-md);max-width:100%}.mobile-note-detail__markdown table{border-collapse:collapse;margin-bottom:var(--mobile-space-md);width:100%}.mobile-note-detail__markdown td,.mobile-note-detail__markdown th{border:1px solid var(--mobile-border);padding:var(--mobile-space-sm);text-align:left}.mobile-note-detail__markdown th{background:var(--mobile-border-light);font-weight:var(--mobile-font-medium)}.mobile-note-detail__markdown .katex{font-size:1.1em}.mobile-note-detail__markdown .katex-display{margin:var(--mobile-space-md) 0;overflow-x:auto}.mobile-note-detail__footer{border-top:1px solid var(--mobile-border-light);margin-top:var(--mobile-space-xl);padding-top:var(--mobile-space-md)}.mobile-note-detail__update-time{color:var(--mobile-text-tertiary);font-size:var(--mobile-font-xs);margin:0;text-align:center}.mobile-loading{align-items:center;color:var(--mobile-text-tertiary);display:flex;flex-direction:column;justify-content:center;padding:var(--mobile-space-3xl)}.mobile-loading__text{font-size:var(--mobile-font-sm);margin-top:var(--mobile-space-md)}@keyframes mobile-offline-slide-down{0%{transform:translateY(-100%)}to{transform:translateY(0)}}@keyframes mobile-offline-spinner{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.mobile-offline-indicator{align-items:center;animation:mobile-offline-slide-down .3s ease-out;color:var(--mobile-text-inverse);display:flex;font-size:var(--mobile-font-xs);height:24px;justify-content:center;left:0;padding-top:var(--mobile-safe-area-top);position:fixed;right:0;top:0;z-index:100}.mobile-offline-indicator--offline{background-color:#f5222d}.mobile-offline-indicator--syncing{background-color:#1890ff}.mobile-offline-indicator--pending{background-color:#faad14;cursor:pointer}.mobile-offline-indicator--pending:active{opacity:.8}.mobile-offline-indicator__text{line-height:1}.mobile-offline-indicator__spinner{animation:mobile-offline-spinner .6s linear infinite;border:2px solid hsla(0,0%,100%,.3);border-radius:50%;border-top-color:#fff;display:inline-block;height:12px;margin-right:var(--mobile-space-xs);width:12px}.mobile-offline-indicator__action{cursor:pointer;margin-left:var(--mobile-space-xs);text-decoration:underline}.mobile-practice{background:#f5f5f5;padding-bottom:var(--mobile-space-lg)}.mobile-practice__header{align-items:center;background:var(--mobile-bg-primary);display:flex;justify-content:space-between;padding:var(--mobile-space-md)}.mobile-practice__header-title{color:var(--mobile-text-primary);font-size:var(--mobile-font-xl);font-weight:var(--mobile-font-bold)}.mobile-practice__header-actions{align-items:center;display:flex;gap:var(--mobile-space-md)}.mobile-practice__header-icon{color:var(--mobile-text-secondary);cursor:pointer;height:24px;transition:color var(--mobile-transition-fast);width:24px}.mobile-practice__header-icon:active{color:var(--mobile-primary)}.mobile-practice__back-btn{-webkit-tap-highlight-color:transparent;align-items:center;background:transparent;border:none;border-radius:50%;color:var(--mobile-text-primary);cursor:pointer;display:flex;height:36px;justify-content:center;transition:background-color .2s;width:36px}.mobile-practice__back-btn:active{background-color:var(--mobile-bg-tertiary)}.mobile-practice__tip{align-items:center;background:#e6f7ff;border-radius:var(--mobile-radius-md);color:#1890ff;display:flex;font-size:var(--mobile-font-sm);gap:var(--mobile-space-xs);margin:var(--mobile-space-md);padding:var(--mobile-space-sm) var(--mobile-space-md)}.mobile-practice__continue{background:linear-gradient(135deg,#1890ff,#40a9ff);border-radius:var(--mobile-radius-lg);color:#fff;margin:var(--mobile-space-md);overflow:hidden;padding:var(--mobile-space-lg);position:relative}.mobile-practice__continue-title{font-size:var(--mobile-font-lg);font-weight:var(--mobile-font-semibold);margin-bottom:var(--mobile-space-xs)}.mobile-practice__continue-subtitle{font-size:var(--mobile-font-sm);margin-bottom:var(--mobile-space-md);opacity:.85}.mobile-practice__continue-btn{-webkit-tap-highlight-color:transparent;align-items:center;background:hsla(0,0%,100%,.25);border:none;border-radius:var(--mobile-radius-full);color:#fff;cursor:pointer;display:inline-flex;font-size:var(--mobile-font-md);font-weight:var(--mobile-font-medium);justify-content:center;padding:var(--mobile-space-sm) var(--mobile-space-lg);transition:background var(--mobile-transition-fast)}.mobile-practice__continue-btn:active{background:hsla(0,0%,100%,.4)}.mobile-practice__continue-progress{background:hsla(0,0%,100%,.3);border-radius:2px;height:4px;margin-top:var(--mobile-space-md);overflow:hidden}.mobile-practice__continue-progress-bar{background:#fff;border-radius:2px;height:100%;transition:width var(--mobile-transition-normal)}.mobile-practice__quick-entries{display:flex;gap:var(--mobile-space-md);margin-bottom:var(--mobile-space-lg);padding:0 var(--mobile-space-md)}.mobile-practice__entry-card{-webkit-tap-highlight-color:transparent;align-items:center;background:var(--mobile-bg-primary);border-radius:var(--mobile-radius-lg);box-shadow:var(--mobile-shadow-sm);cursor:pointer;display:flex;flex:1;flex-direction:column;height:100px;justify-content:center;transition:transform var(--mobile-transition-fast),box-shadow var(--mobile-transition-fast)}.mobile-practice__entry-card:active{box-shadow:var(--mobile-shadow-md);transform:translateY(-1px)}.mobile-practice__entry-icon{font-size:28px;margin-bottom:var(--mobile-space-sm)}.mobile-practice__entry-label{color:var(--mobile-text-primary);font-size:var(--mobile-font-sm);font-weight:var(--mobile-font-medium)}.mobile-practice__section{margin-bottom:var(--mobile-space-lg);padding:0 var(--mobile-space-md)}.mobile-practice__section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--mobile-space-md)}.mobile-practice__section-title{color:var(--mobile-text-primary);font-size:var(--mobile-font-lg);font-weight:var(--mobile-font-semibold)}.mobile-practice__section-more{color:var(--mobile-text-tertiary);cursor:pointer;font-size:var(--mobile-font-sm)}.mobile-practice__set-list{display:flex;flex-direction:column;gap:var(--mobile-space-sm)}.mobile-practice__set-item{-webkit-tap-highlight-color:transparent;align-items:center;background:var(--mobile-bg-primary);border-radius:var(--mobile-radius-lg);box-shadow:var(--mobile-shadow-sm);cursor:pointer;display:flex;height:100px;padding:var(--mobile-space-md);transition:transform var(--mobile-transition-fast),box-shadow var(--mobile-transition-fast)}.mobile-practice__set-item:active{box-shadow:var(--mobile-shadow-md);transform:translateY(-1px)}.mobile-practice__set-item--desktop-only{background:#fafafa;opacity:.8}.mobile-practice__set-item--selectable{padding-left:var(--mobile-space-sm)}.mobile-practice__set-item--selected{background:#e6f7ff;box-shadow:0 0 0 1px #1890ff,var(--mobile-shadow-sm)}.mobile-practice__set-item-checkbox{align-items:center;display:flex;flex-shrink:0;justify-content:center;margin-right:var(--mobile-space-sm)}.mobile-practice__set-item-checkbox-inner{align-items:center;background:var(--mobile-bg-primary);border:2px solid var(--mobile-border-medium);border-radius:var(--mobile-radius-sm);display:flex;height:22px;justify-content:center;transition:all var(--mobile-transition-fast);width:22px}.mobile-practice__set-item-checkbox-inner--checked{background:var(--mobile-primary);border-color:var(--mobile-primary)}.mobile-practice__set-item-icon{align-items:center;background:#e6f7ff;border-radius:var(--mobile-radius-md);display:flex;flex-shrink:0;height:40px;justify-content:center;margin-right:var(--mobile-space-md);width:40px}.mobile-practice__set-item-icon svg{color:#1890ff;height:24px;width:24px}.mobile-practice__set-item-content{flex:1;min-width:0}.mobile-practice__set-item-title{color:var(--mobile-text-primary);font-size:var(--mobile-font-md);font-weight:var(--mobile-font-medium);margin-bottom:var(--mobile-space-xs);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-practice__set-item-tags{align-items:center;display:flex;gap:var(--mobile-space-xs);margin-bottom:var(--mobile-space-xs)}.mobile-practice__set-item-tag--subject{background:#e6f7ff;color:#1890ff}.mobile-practice__set-item-tag--grade,.mobile-practice__set-item-tag--subject{border-radius:var(--mobile-radius-sm);font-size:var(--mobile-font-xs);font-weight:var(--mobile-font-medium);padding:2px 8px}.mobile-practice__set-item-tag--grade{background:#f6ffed;color:#52c41a}.mobile-practice__set-item-stats{color:var(--mobile-text-secondary);font-size:var(--mobile-font-xs);margin-bottom:var(--mobile-space-xs)}.mobile-practice__set-item-progress{background:#e8e8e8;border-radius:2px;height:4px;overflow:hidden}.mobile-practice__set-item-progress-bar{background:#1890ff;border-radius:2px;height:100%;transition:width var(--mobile-transition-normal)}.mobile-practice__set-item-tag{background:#e6f7ff;border-radius:var(--mobile-radius-sm);color:#1890ff;flex-shrink:0;font-size:var(--mobile-font-xs);margin-left:var(--mobile-space-sm);padding:2px 8px}.mobile-practice__set-item-tag--desktop{background:#fff7e6;color:#fa8c16}.mobile-practice__recommend{-webkit-tap-highlight-color:transparent;background:linear-gradient(135deg,#722ed1,#9254de);border-radius:var(--mobile-radius-lg);color:#fff;cursor:pointer;margin:0 var(--mobile-space-md);padding:var(--mobile-space-lg)}.mobile-practice__recommend:active{opacity:.9}.mobile-practice__recommend-title{font-size:var(--mobile-font-lg);font-weight:var(--mobile-font-semibold);margin-bottom:var(--mobile-space-xs)}.mobile-practice__recommend-desc{font-size:var(--mobile-font-sm);opacity:.85}.mobile-practice__filter{background:var(--mobile-bg-primary);border-radius:var(--mobile-radius-lg);box-shadow:var(--mobile-shadow-sm);margin:var(--mobile-space-md) var(--mobile-space-md) var(--mobile-space-md);overflow:hidden}.mobile-practice__filter-header{padding:var(--mobile-space-sm) var(--mobile-space-md)}.mobile-practice__filter-toggle{-webkit-tap-highlight-color:transparent;align-items:center;background:var(--mobile-bg-primary);border:1px solid var(--mobile-border-light);border-radius:var(--mobile-radius-full);color:var(--mobile-text-secondary);cursor:pointer;display:inline-flex;font-size:var(--mobile-font-sm);gap:var(--mobile-space-xs);padding:var(--mobile-space-xs) var(--mobile-space-md);transition:all var(--mobile-transition-fast)}.mobile-practice__filter-toggle--active{border-color:#1890ff;color:#1890ff}.mobile-practice__filter-toggle:active{opacity:.7}.mobile-practice__filter-badge{align-items:center;background:#1890ff;border-radius:var(--mobile-radius-full);color:#fff;display:inline-flex;font-size:10px;font-weight:var(--mobile-font-bold);height:16px;justify-content:center;min-width:16px;padding:0 4px}.mobile-practice__filter-body{padding:0 var(--mobile-space-md) var(--mobile-space-md)}.mobile-practice__filter-group{margin-bottom:var(--mobile-space-md)}.mobile-practice__filter-group:last-child{margin-bottom:0}.mobile-practice__filter-group-label{color:var(--mobile-text-tertiary);display:block;font-size:var(--mobile-font-sm);margin-bottom:var(--mobile-space-xs)}.mobile-practice__filter-tags{display:flex;flex-wrap:wrap;gap:var(--mobile-space-xs)}.mobile-practice__filter-tag{-webkit-tap-highlight-color:transparent;background:#f5f5f5;border:none;border-radius:var(--mobile-radius-full);color:#595959;cursor:pointer;font-size:var(--mobile-font-xs);padding:6px 12px;transition:all var(--mobile-transition-fast)}.mobile-practice__filter-tag:active{transform:scale(.96)}.mobile-practice__filter-tag--active{background:#1890ff;color:#fff}.mobile-study__question-grid{display:grid;gap:var(--mobile-space-sm);grid-template-columns:repeat(6,1fr);padding:var(--mobile-space-lg)}.mobile-study__question-cell{-webkit-tap-highlight-color:transparent;align-items:center;aspect-ratio:1;background:#f5f5f5;border-radius:var(--mobile-radius-md);color:var(--mobile-text-primary);cursor:pointer;display:flex;font-size:var(--mobile-font-sm);font-weight:var(--mobile-font-medium);justify-content:center;transition:all var(--mobile-transition-fast)}.mobile-study__question-cell:active{transform:scale(.95)}.mobile-study__question-cell--current{background:#1890ff;color:#fff}.mobile-study__question-cell--correct{background:#52c41a;color:#fff}.mobile-study__question-cell--wrong{background:#f5222d;color:#fff}.mobile-study__popup-overlay{align-items:flex-end;background:rgba(0,0,0,.5);bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:100}.mobile-study__popup{-webkit-overflow-scrolling:touch;background:var(--mobile-bg-primary);border-radius:var(--mobile-radius-xl) var(--mobile-radius-xl) 0 0;max-height:70vh;overflow-y:auto;padding-bottom:var(--mobile-safe-area-bottom);width:100%}.mobile-study__popup-header{align-items:center;background:var(--mobile-bg-primary);border-bottom:1px solid var(--mobile-border-light);display:flex;justify-content:space-between;padding:var(--mobile-space-md) var(--mobile-space-lg);position:sticky;top:0;z-index:1}.mobile-study__popup-title{color:var(--mobile-text-primary);font-size:var(--mobile-font-lg);font-weight:var(--mobile-font-semibold)}.mobile-study__popup-close{-webkit-tap-highlight-color:transparent;align-items:center;background:none;border:none;color:var(--mobile-text-tertiary);cursor:pointer;display:flex;height:28px;justify-content:center;width:28px}.mobile-study__question-legend{border-top:1px solid var(--mobile-border-light);display:flex;flex-wrap:wrap;gap:var(--mobile-space-md);justify-content:center;padding:var(--mobile-space-md) var(--mobile-space-lg)}.mobile-study__legend-item{align-items:center;color:var(--mobile-text-secondary);display:flex;font-size:var(--mobile-font-xs);gap:4px}.mobile-study__legend-dot{border-radius:50%;height:10px;width:10px}.mobile-study__legend-dot--correct{background:#52c41a}.mobile-study__legend-dot--wrong{background:#f5222d}.mobile-study__legend-dot--current{background:#1890ff}.mobile-study__legend-dot--unanswered{background:#f5f5f5;border:1px solid #d9d9d9}.mobile-study__popup-footer{border-top:1px solid var(--mobile-border-light);padding:var(--mobile-space-md) var(--mobile-space-lg);padding-bottom:calc(var(--mobile-space-md) + var(--mobile-safe-area-bottom))}.mobile-study__complete-btn{-webkit-tap-highlight-color:transparent;background:#1890ff;border:none;border-radius:var(--mobile-radius-md);color:#fff;cursor:pointer;font-size:var(--mobile-font-md);font-weight:var(--mobile-font-medium);height:48px;transition:opacity .2s;width:100%}.mobile-study__complete-btn:active{opacity:.8}.mobile-study__option--checkbox .mobile-study__option-key{border-radius:var(--mobile-radius-sm)}.mobile-study__true-false{display:flex;gap:var(--mobile-space-md);margin-bottom:var(--mobile-space-md)}.mobile-study__true-false-btn{-webkit-tap-highlight-color:transparent;background:var(--mobile-bg-primary);border:2px solid #e8e8e8;border-radius:var(--mobile-radius-lg);color:var(--mobile-text-primary);cursor:pointer;flex:1;font-size:var(--mobile-font-lg);font-weight:var(--mobile-font-semibold);height:64px;transition:all var(--mobile-transition-fast)}.mobile-study__true-false-btn:active{transform:scale(.98)}.mobile-study__true-false-btn--selected{background:#e6f7ff;border-color:#1890ff;color:#1890ff}.mobile-study__true-false-btn--correct{background:#f6ffed;border-color:#52c41a;color:#52c41a}.mobile-study__true-false-btn--wrong{background:#fff1f0;border-color:#f5222d;color:#f5222d}.mobile-study__submit-btn{-webkit-tap-highlight-color:transparent;background:#1890ff;border:none;border-radius:var(--mobile-radius-md);color:#fff;cursor:pointer;font-size:var(--mobile-font-md);font-weight:var(--mobile-font-medium);height:44px;margin-bottom:var(--mobile-space-md);transition:opacity var(--mobile-transition-fast);width:100%}.mobile-study__submit-btn:active{opacity:.8}.mobile-study__submit-btn:disabled{cursor:not-allowed;opacity:.5}.mobile-study__type-badge{align-items:center;background:#e6f7ff;border-radius:var(--mobile-radius-sm);color:#1890ff;display:inline-flex;font-size:var(--mobile-font-xs);font-weight:var(--mobile-font-medium);padding:2px 8px}.mobile-study{background:#f5f5f5;display:flex;flex-direction:column;min-height:100%}.mobile-study__offline-hint{background-color:#fff7e6;border-bottom:1px solid #ffe58f;color:#d48806;font-size:var(--mobile-font-xs);padding:var(--mobile-space-xs) var(--mobile-space-md);text-align:center}.mobile-study__header{align-items:center;background:var(--mobile-bg-primary);border-bottom:1px solid var(--mobile-border-light);display:flex;justify-content:space-between;padding:var(--mobile-space-sm) var(--mobile-space-md);position:sticky;top:0;z-index:10}.mobile-study__header-left{align-items:center;display:flex;gap:var(--mobile-space-sm);min-width:0}.mobile-study__header-back{-webkit-tap-highlight-color:transparent;align-items:center;color:var(--mobile-text-primary);cursor:pointer;display:flex;flex-shrink:0;height:32px;justify-content:center;width:32px}.mobile-study__header-title{color:var(--mobile-text-primary);font-size:var(--mobile-font-md);font-weight:var(--mobile-font-medium);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-study__header-progress{color:var(--mobile-text-secondary);flex-shrink:0;font-size:var(--mobile-font-sm);margin:0 var(--mobile-space-sm)}.mobile-study__header-actions{align-items:center;display:flex;flex-shrink:0;gap:var(--mobile-space-sm)}.mobile-study__header-action{-webkit-tap-highlight-color:transparent;align-items:center;color:var(--mobile-text-secondary);cursor:pointer;display:flex;height:28px;justify-content:center;width:28px}.mobile-study__header-action--active{color:#faad14}.mobile-study__content{-webkit-overflow-scrolling:touch;flex:1;overflow-y:auto;padding:var(--mobile-space-md);padding-bottom:calc(var(--mobile-space-lg) + var(--mobile-safe-area-bottom))}.mobile-study__meta{align-items:center;display:flex;gap:var(--mobile-space-md);margin-bottom:var(--mobile-space-md)}.mobile-study__meta-item{color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm)}.mobile-study__question{background:var(--mobile-bg-primary);border-radius:var(--mobile-radius-lg);box-shadow:var(--mobile-shadow-sm);margin-bottom:var(--mobile-space-md);padding:var(--mobile-space-lg)}.mobile-study__question-content{color:var(--mobile-text-primary);font-size:var(--mobile-font-md);line-height:var(--mobile-line-height-relaxed)}.mobile-study__options{display:flex;flex-direction:column;gap:0}.mobile-study__option{-webkit-tap-highlight-color:transparent;align-items:center;background:var(--mobile-bg-primary);border:1.5px solid #e8e8e8;border-radius:12px;cursor:pointer;display:flex;margin-bottom:12px;padding:16px;transition:all var(--mobile-transition-fast)}.mobile-study__option:active{transform:scale(.98)}.mobile-study__option--selected{background:#e6f7ff;border-color:#1890ff}.mobile-study__option--correct{background:#f6ffed;border-color:#52c41a}.mobile-study__option--wrong{background:#fff1f0;border-color:#f5222d}.mobile-study__option-key{align-items:center;background:#f5f5f5;border-radius:50%;color:var(--mobile-text-primary);display:flex;flex-shrink:0;font-size:var(--mobile-font-sm);font-weight:var(--mobile-font-semibold);height:28px;justify-content:center;margin-right:var(--mobile-space-md);width:28px}.mobile-study__option--selected .mobile-study__option-key{background:#1890ff;color:#fff}.mobile-study__option--correct .mobile-study__option-key{background:#52c41a;color:#fff}.mobile-study__option--wrong .mobile-study__option-key{background:#f5222d;color:#fff}.mobile-study__option-content{color:var(--mobile-text-primary);flex:1;font-size:var(--mobile-font-md);line-height:var(--mobile-line-height-normal)}.mobile-study__option-icon{flex-shrink:0;height:20px;margin-left:var(--mobile-space-sm);width:20px}.mobile-option-markdown{display:inline}.mobile-option-markdown p{display:inline;margin:0}.mobile-option-markdown .katex{font-size:1em}.mobile-option-markdown .katex-display{display:inline;margin:0}.mobile-study__analysis{background:var(--mobile-bg-primary);border-radius:var(--mobile-radius-lg);box-shadow:var(--mobile-shadow-sm);margin-bottom:var(--mobile-space-md);overflow:hidden}.mobile-study__analysis-header{-webkit-tap-highlight-color:transparent;align-items:center;color:var(--mobile-text-primary);cursor:pointer;display:flex;font-size:var(--mobile-font-md);font-weight:var(--mobile-font-semibold);justify-content:space-between;padding:var(--mobile-space-md) var(--mobile-space-lg);transition:background-color .2s}.mobile-study__analysis-header:active{background-color:var(--mobile-bg-tertiary)}.mobile-study__analysis-toggle{align-items:center;color:var(--mobile-text-tertiary);display:flex}.mobile-study__analysis-answer{align-items:center;color:#52c41a;display:flex;font-size:var(--mobile-font-sm);font-weight:var(--mobile-font-medium);gap:var(--mobile-space-xs);padding:0 var(--mobile-space-lg) var(--mobile-space-sm)}.mobile-study__analysis-explanation{color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm);line-height:var(--mobile-line-height-relaxed);padding:0 var(--mobile-space-lg) var(--mobile-space-md)}.mobile-study__analysis-tags{display:flex;flex-wrap:wrap;gap:var(--mobile-space-xs);padding:0 var(--mobile-space-lg) var(--mobile-space-md)}.mobile-study__analysis-tag{background:#e6f7ff;border-radius:var(--mobile-radius-full);color:#1890ff;font-size:var(--mobile-font-xs);padding:4px 10px}.mobile-study__nav{align-items:center;background:var(--mobile-bg-primary);border-radius:var(--mobile-radius-lg);box-shadow:var(--mobile-shadow-sm);display:flex;justify-content:space-between;margin-top:var(--mobile-space-lg);padding:var(--mobile-space-md) var(--mobile-space-lg);padding-bottom:calc(var(--mobile-space-md) + var(--mobile-safe-area-bottom))}.mobile-study__nav-prev{-webkit-tap-highlight-color:transparent;background:transparent;border:none;color:var(--mobile-text-secondary);cursor:pointer;font-size:var(--mobile-font-md);padding:var(--mobile-space-sm) var(--mobile-space-md);pointer-events:auto}.mobile-study__nav-prev:active{color:var(--mobile-text-primary)}.mobile-study__nav-prev:disabled{color:var(--mobile-text-tertiary);cursor:not-allowed}.mobile-study__nav-indicator{color:var(--mobile-text-tertiary);font-size:var(--mobile-font-sm)}.mobile-study__nav-next{-webkit-tap-highlight-color:transparent;background:#1890ff;border:none;border-radius:var(--mobile-radius-full);color:#fff;cursor:pointer;font-size:var(--mobile-font-md);font-weight:var(--mobile-font-medium);min-width:80px;padding:var(--mobile-space-sm) var(--mobile-space-lg);pointer-events:auto;transition:opacity var(--mobile-transition-fast)}.mobile-study__nav-next:active{opacity:.8}.mobile-study__nav-next--complete{background:#52c41a}.mobile-study__nav-next:disabled{cursor:not-allowed;opacity:.5}.mobile-practice-report{background:#f5f5f5;min-height:100%;padding:var(--mobile-space-md);padding-bottom:calc(var(--mobile-space-lg) + var(--mobile-safe-area-bottom))}.mobile-practice-report__scrollable{-webkit-overflow-scrolling:touch;flex:1;overflow-y:auto}.mobile-practice-report__header{margin-bottom:var(--mobile-space-lg);text-align:center}.mobile-practice-report__title{color:var(--mobile-text-primary);font-size:var(--mobile-font-xxl);font-weight:var(--mobile-font-bold);margin-bottom:var(--mobile-space-xs)}.mobile-practice-report__subtitle{color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm)}.mobile-practice-report__score-card{display:flex;justify-content:center;margin-bottom:var(--mobile-space-lg)}.mobile-practice-report__score-circle{height:160px;position:relative;width:160px}.mobile-practice-report__score-svg{height:100%;transform:rotate(-90deg);width:100%}.mobile-practice-report__score-bg{fill:none;stroke:#e8e8e8;stroke-width:8}.mobile-practice-report__score-progress{fill:none;stroke-width:8;stroke-linecap:round;transition:stroke-dasharray .6s ease}.mobile-practice-report__score-content{left:50%;position:absolute;text-align:center;top:50%;transform:translate(-50%,-50%)}.mobile-practice-report__score-value{color:var(--mobile-text-primary);display:block;font-size:36px;font-weight:var(--mobile-font-bold);line-height:1}.mobile-practice-report__score-label{color:var(--mobile-text-secondary);display:block;font-size:var(--mobile-font-sm);margin-top:var(--mobile-space-xs)}.mobile-practice-report__stats{display:grid;gap:var(--mobile-space-sm);grid-template-columns:repeat(4,1fr);margin-bottom:var(--mobile-space-lg)}.mobile-practice-report__stat-item{background:var(--mobile-bg-primary);border-radius:var(--mobile-radius-lg);box-shadow:var(--mobile-shadow-sm);padding:var(--mobile-space-md);text-align:center}.mobile-practice-report__stat-icon{align-items:center;border-radius:50%;display:flex;height:40px;justify-content:center;margin:0 auto var(--mobile-space-sm);width:40px}.mobile-practice-report__stat-icon--correct{background:#f6ffed;color:#52c41a}.mobile-practice-report__stat-icon--wrong{background:#fff1f0;color:#f5222d}.mobile-practice-report__stat-icon--time{background:#e6f7ff;color:#1890ff}.mobile-practice-report__stat-icon--avg{background:#fff7e6;color:#faad14}.mobile-practice-report__stat-value{color:var(--mobile-text-primary);font-size:var(--mobile-font-lg);font-weight:var(--mobile-font-bold)}.mobile-practice-report__stat-label{color:var(--mobile-text-secondary);font-size:var(--mobile-font-xs);margin-top:2px}.mobile-practice-report__wrong-section{background:var(--mobile-bg-primary);border-radius:var(--mobile-radius-lg);box-shadow:var(--mobile-shadow-sm);margin-bottom:var(--mobile-space-lg);padding:var(--mobile-space-md)}.mobile-practice-report__section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--mobile-space-md)}.mobile-practice-report__section-title{color:var(--mobile-text-primary);font-size:var(--mobile-font-md);font-weight:var(--mobile-font-semibold)}.mobile-practice-report__retry-btn{-webkit-tap-highlight-color:transparent;align-items:center;background:transparent;border:1px solid #1890ff;border-radius:var(--mobile-radius-full);color:#1890ff;cursor:pointer;display:flex;font-size:var(--mobile-font-sm);gap:var(--mobile-space-xs);padding:var(--mobile-space-xs) var(--mobile-space-sm);transition:all var(--mobile-transition-fast)}.mobile-practice-report__retry-btn:active{background:#e6f7ff}.mobile-practice-report__wrong-list{display:flex;flex-direction:column;gap:var(--mobile-space-sm)}.mobile-practice-report__wrong-item{-webkit-tap-highlight-color:transparent;align-items:flex-start;background:#f5f5f5;border-radius:var(--mobile-radius-md);cursor:pointer;display:flex;gap:var(--mobile-space-sm);padding:var(--mobile-space-sm);transition:background-color var(--mobile-transition-fast)}.mobile-practice-report__wrong-item:active{background:#e8e8e8}.mobile-practice-report__wrong-number{align-items:center;background:#f5222d;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:var(--mobile-font-xs);font-weight:var(--mobile-font-bold);height:24px;justify-content:center;width:24px}.mobile-practice-report__wrong-content{flex:1;min-width:0}.mobile-practice-report__wrong-question{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--mobile-text-primary);display:-webkit-box;font-size:var(--mobile-font-sm);line-height:var(--mobile-line-height-normal);margin-bottom:var(--mobile-space-xs);overflow:hidden;text-overflow:ellipsis}.mobile-practice-report__wrong-answer{display:flex;flex-direction:column;font-size:var(--mobile-font-xs);gap:2px}.mobile-practice-report__wrong-user-answer{color:#f5222d}.mobile-practice-report__wrong-correct-answer{color:#52c41a}.mobile-practice-report__wrong-arrow{color:var(--mobile-text-tertiary);flex-shrink:0;margin-top:var(--mobile-space-xs)}.mobile-practice-report__wrong-more{color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm);padding:var(--mobile-space-sm);text-align:center}.mobile-practice-report__actions{display:flex;flex-direction:column;gap:var(--mobile-space-sm)}.mobile-practice-report__action-btn{-webkit-tap-highlight-color:transparent;align-items:center;border:none;border-radius:var(--mobile-radius-lg);cursor:pointer;display:flex;font-size:var(--mobile-font-md);font-weight:var(--mobile-font-medium);gap:var(--mobile-space-xs);justify-content:center;padding:var(--mobile-space-md);transition:opacity var(--mobile-transition-fast);width:100%}.mobile-practice-report__action-btn:active{opacity:.85}.mobile-practice-report__action-btn--primary{background:#1890ff;color:#fff}.mobile-practice-report__action-btn--secondary{background:var(--mobile-bg-primary);border:1px solid var(--mobile-border-medium);color:var(--mobile-text-primary)}.mobile-practice-report__action-btn--ghost{background:transparent;color:var(--mobile-text-secondary)}.mobile-practice__action-bar{align-items:center;background:var(--mobile-primary);border-radius:var(--mobile-radius-lg);color:#fff;display:flex;justify-content:space-between;margin:0 var(--mobile-space-md) var(--mobile-space-md);padding:var(--mobile-space-sm) var(--mobile-space-md)}.mobile-practice__action-bar-count{font-size:var(--mobile-font-sm);font-weight:var(--mobile-font-medium)}.mobile-practice__action-bar-btn{-webkit-tap-highlight-color:transparent;align-items:center;background:transparent;border:1px solid hsla(0,0%,100%,.4);border-radius:var(--mobile-radius-full);color:#fff;cursor:pointer;display:inline-flex;font-size:var(--mobile-font-sm);gap:4px;padding:var(--mobile-space-xs) var(--mobile-space-md)}.mobile-practice__action-bar-btn--delete:active{background:hsla(0,0%,100%,.2)}.mobile-practice__action-bar-btn:disabled{cursor:not-allowed;opacity:.5}.mobile-practice__records-list{display:flex;flex-direction:column;gap:var(--mobile-space-sm);padding:0 var(--mobile-space-md)}.mobile-practice__load-more{padding:var(--mobile-space-md) 0;text-align:center}.mobile-practice__load-more-btn{-webkit-tap-highlight-color:transparent;background:var(--mobile-bg-primary);border:1px solid var(--mobile-border-light);border-radius:var(--mobile-radius-full);color:var(--mobile-text-secondary);cursor:pointer;font-size:var(--mobile-font-sm);padding:var(--mobile-space-sm) var(--mobile-space-xl)}.mobile-practice__load-more-btn:disabled{cursor:not-allowed;opacity:.5}.mobile-learning-card{-webkit-tap-highlight-color:transparent;align-items:flex-start;background:var(--mobile-bg-primary);border-radius:var(--mobile-radius-lg);box-shadow:var(--mobile-shadow-sm);cursor:pointer;display:flex;gap:var(--mobile-space-sm);padding:var(--mobile-space-md);transition:transform var(--mobile-transition-fast),box-shadow var(--mobile-transition-fast)}.mobile-learning-card:active{box-shadow:var(--mobile-shadow-md);transform:translateY(-1px)}.mobile-learning-card--selected{background:#e6f7ff;box-shadow:0 0 0 1px #1890ff}.mobile-learning-card__select{flex-shrink:0;padding-top:2px}.mobile-learning-card__checkbox{align-items:center;background:var(--mobile-bg-primary);border:1.5px solid var(--mobile-border-medium);border-radius:var(--mobile-radius-sm);display:flex;height:20px;justify-content:center;transition:all var(--mobile-transition-fast);width:20px}.mobile-learning-card__checkbox--checked{background:var(--mobile-primary);border-color:var(--mobile-primary);color:#fff}.mobile-learning-card__icon{align-items:center;background:#e6f7ff;border-radius:var(--mobile-radius-md);display:flex;flex-shrink:0;height:36px;justify-content:center;width:36px}.mobile-learning-card__icon svg{color:#1890ff;height:22px;width:22px}.mobile-learning-card__content{flex:1;min-width:0}.mobile-learning-card__header{align-items:center;display:flex;flex-wrap:wrap;gap:var(--mobile-space-xs);margin-bottom:4px}.mobile-learning-card__subject{color:var(--mobile-text-primary);font-size:var(--mobile-font-md);font-weight:var(--mobile-font-semibold)}.mobile-learning-card__grade{background:#f5f5f5;color:var(--mobile-text-secondary)}.mobile-learning-card__grade,.mobile-learning-card__phase{border-radius:var(--mobile-radius-sm);font-size:var(--mobile-font-xs);padding:1px 6px}.mobile-learning-card__phase{background:#f0f5ff;color:#597ef7}.mobile-learning-card__stats{display:flex;flex-wrap:wrap;gap:var(--mobile-space-xs);margin-bottom:4px}.mobile-learning-card__stat{color:var(--mobile-text-secondary);font-size:var(--mobile-font-xs)}.mobile-learning-card__accuracy--high{color:#52c41a}.mobile-learning-card__accuracy--medium{color:#faad14}.mobile-learning-card__accuracy--low{color:#f5222d}.mobile-learning-card__footer{align-items:center;display:flex;gap:var(--mobile-space-xs)}.mobile-learning-card__status{color:var(--mobile-text-tertiary);font-size:var(--mobile-font-xs)}.mobile-learning-card__strategy{background:#fff7e6;border-radius:var(--mobile-radius-sm);color:#fa8c16;font-size:var(--mobile-font-xs);padding:1px 6px}.mobile-learning-card__delete{-webkit-tap-highlight-color:transparent;align-items:center;background:transparent;border:none;border-radius:50%;color:var(--mobile-text-tertiary);cursor:pointer;display:flex;flex-shrink:0;height:28px;justify-content:center;transition:all var(--mobile-transition-fast);width:28px}.mobile-learning-card__delete:active{background:#fff1f0;color:#f5222d}.mobile-filter-toolbar{background:var(--mobile-bg-primary);border-radius:var(--mobile-radius-lg);box-shadow:var(--mobile-shadow-sm);margin:var(--mobile-space-md) var(--mobile-space-md) var(--mobile-space-md);overflow:hidden}.mobile-filter-toolbar__header{align-items:center;display:flex;gap:var(--mobile-space-xs);padding:var(--mobile-space-sm) var(--mobile-space-sm) var(--mobile-space-sm) var(--mobile-space-md)}.mobile-filter-toolbar__tab{-webkit-tap-highlight-color:transparent;align-items:center;background:var(--mobile-bg-primary);border:1px solid var(--mobile-border-light);border-radius:var(--mobile-radius-full);color:var(--mobile-text-secondary);cursor:pointer;display:inline-flex;font-size:var(--mobile-font-sm);gap:4px;padding:var(--mobile-space-xs) var(--mobile-space-md);position:relative;transition:all var(--mobile-transition-fast)}.mobile-filter-toolbar__tab--active{border-color:var(--mobile-primary);color:var(--mobile-primary);font-weight:var(--mobile-font-medium)}.mobile-filter-toolbar__tab--expanded{background:#f5f5f5}.mobile-filter-toolbar__dot{background:var(--mobile-primary);border-radius:50%;height:6px;width:6px}.mobile-filter-toolbar__reset{-webkit-tap-highlight-color:transparent;align-items:center;background:transparent;border:none;color:var(--mobile-text-tertiary);cursor:pointer;display:inline-flex;font-size:var(--mobile-font-xs);gap:2px;margin-left:auto;padding:var(--mobile-space-xs) var(--mobile-space-sm)}.mobile-filter-toolbar__panel{border-top:1px solid var(--mobile-border-light);padding:var(--mobile-space-sm) var(--mobile-space-md) var(--mobile-space-md)}.mobile-filter-toolbar__options{display:flex;flex-wrap:wrap;gap:var(--mobile-space-xs)}.mobile-filter-toolbar__option{-webkit-tap-highlight-color:transparent;background:var(--mobile-bg-primary);border:1px solid var(--mobile-border-light);border-radius:var(--mobile-radius-full);color:var(--mobile-text-secondary);cursor:pointer;font-size:var(--mobile-font-xs);padding:6px 14px;transition:all var(--mobile-transition-fast)}.mobile-filter-toolbar__option:active{transform:scale(.96)}.mobile-filter-toolbar__option--active{background:var(--mobile-primary);border-color:var(--mobile-primary);color:#fff}.mobile-practice__header-actions-group{align-items:center;display:flex;gap:var(--mobile-space-sm)}.mobile-practice__header-action-btn{-webkit-tap-highlight-color:transparent;align-items:center;background:transparent;border:none;border-radius:50%;color:var(--mobile-text-primary);cursor:pointer;display:flex;height:36px;justify-content:center;transition:background-color var(--mobile-transition-fast);width:36px}.mobile-practice__header-action-btn:active{background-color:var(--mobile-bg-tertiary)}.mobile-practice__header-action-btn--primary{background:var(--mobile-primary);color:#fff}.mobile-practice__header-action-btn--primary:active{opacity:.85}.mobile-practice__page-actions{align-items:center;background:var(--mobile-bg-primary);border-bottom:1px solid var(--mobile-border-light);display:flex;justify-content:space-between;padding:var(--mobile-space-md) var(--mobile-space-lg)}.mobile-practice__page-actions-title{color:var(--mobile-text-primary);font-size:var(--mobile-font-lg);font-weight:var(--mobile-font-semibold)}.mobile-practice__page-actions-group{align-items:center;display:flex;gap:var(--mobile-space-sm)}.mobile-practice__page-action-btn{-webkit-tap-highlight-color:transparent;align-items:center;background:var(--mobile-bg-primary);border:1px solid var(--mobile-border-medium);border-radius:var(--mobile-radius-md);color:var(--mobile-text-primary);cursor:pointer;display:flex;font-size:var(--mobile-font-sm);gap:var(--mobile-space-xs);padding:var(--mobile-space-sm) var(--mobile-space-md);transition:all var(--mobile-transition-fast)}.mobile-practice__page-action-btn:active{background-color:var(--mobile-bg-tertiary)}.mobile-practice__page-action-btn--primary{background:var(--mobile-primary);border-color:var(--mobile-primary);color:#fff}.mobile-practice__page-action-btn--primary:active{opacity:.85}.mobile-practice__page-action-btn--danger{background:var(--mobile-error);border-color:var(--mobile-error);color:#fff}.mobile-practice__page-action-btn--danger:active{opacity:.85}.mobile-practice__page-action-btn--danger:disabled{cursor:not-allowed;opacity:.5}.mobile-practice__page-actions-count{color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm);margin-right:var(--mobile-space-xs)}.mobile-modal-overlay{align-items:center;animation:mobile-modal-fade-in .2s ease;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);background:rgba(0,0,0,.6);bottom:0;display:flex;justify-content:center;left:0;padding:var(--mobile-space-xl);position:fixed;right:0;top:0;z-index:1000}@keyframes mobile-modal-fade-in{0%{opacity:0}to{opacity:1}}.mobile-modal{animation:mobile-modal-scale-in .2s ease;background:var(--mobile-bg-primary);border-radius:var(--mobile-radius-xl);box-shadow:0 8px 32px rgba(0,0,0,.12);max-width:300px;overflow:hidden;width:100%}@keyframes mobile-modal-scale-in{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.mobile-modal__header{padding:var(--mobile-space-xl) var(--mobile-space-xl) var(--mobile-space-sm);text-align:center}.mobile-modal__title{color:var(--mobile-text-primary);font-size:var(--mobile-font-xl);font-weight:var(--mobile-font-semibold);margin:0}.mobile-modal__content{padding:var(--mobile-space-md) var(--mobile-space-xl) var(--mobile-space-xl);text-align:center}.mobile-modal__message{color:var(--mobile-text-secondary);font-size:var(--mobile-font-md);line-height:var(--mobile-line-height-relaxed);margin:0;padding:0 var(--mobile-space-md)}.mobile-modal__footer{border-top:1px solid var(--mobile-border-light);display:flex}.mobile-modal__btn{-webkit-tap-highlight-color:transparent;background:transparent;border:none;cursor:pointer;flex:1;font-size:var(--mobile-font-lg);font-weight:var(--mobile-font-medium);height:52px;transition:background var(--mobile-transition-fast)}.mobile-modal__btn:first-child{border-right:1px solid var(--mobile-border-light)}.mobile-modal__btn--cancel{color:var(--mobile-text-primary)}.mobile-modal__btn--cancel:active{background:var(--mobile-bg-tertiary)}.mobile-modal__btn--danger{color:#f5222d;font-weight:var(--mobile-font-semibold)}.mobile-modal__btn--danger:active{background:rgba(245,34,45,.05)}.mobile-modal__btn--primary{color:var(--mobile-primary);font-weight:var(--mobile-font-semibold)}.mobile-modal__btn--primary:active{background:rgba(24,144,255,.05)}.mobile-modal__btn:disabled{cursor:not-allowed;opacity:.5}.mobile-question-set-detail{padding:var(--mobile-space-md)}.mobile-question-set-detail__info{background:var(--mobile-bg-primary);border-radius:var(--mobile-radius-lg);box-shadow:var(--mobile-shadow-sm);margin-bottom:var(--mobile-space-md);padding:var(--mobile-space-md)}.mobile-question-set-detail__meta{align-items:center;display:flex;flex-wrap:wrap;gap:var(--mobile-space-sm);margin-bottom:var(--mobile-space-sm)}.mobile-question-set-detail__subject{background:#e6f7ff;color:#1890ff}.mobile-question-set-detail__grade,.mobile-question-set-detail__subject{border-radius:var(--mobile-radius-md);font-size:var(--mobile-font-sm);font-weight:var(--mobile-font-medium);padding:4px 12px}.mobile-question-set-detail__grade{background:#f6ffed;color:#52c41a}.mobile-question-set-detail__count{color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm);margin-left:auto}.mobile-question-set-detail__description{color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm);line-height:1.5;margin:0}.mobile-question-set-detail__status{border-radius:var(--mobile-radius-md);font-size:var(--mobile-font-sm);font-weight:var(--mobile-font-medium);padding:4px 12px}.mobile-question-set-detail__status--draft{background:#fff7e6;color:#fa8c16}.mobile-question-set-detail__status--active{background:#f6ffed;color:#52c41a}.mobile-question-set-detail__status--archived{background:#f5f5f5;color:#8c8c8c}.mobile-question-set-detail__publish-section{border-top:1px solid var(--mobile-border-light);display:flex;flex-direction:column;gap:var(--mobile-space-sm);margin-top:var(--mobile-space-md);padding-top:var(--mobile-space-md)}.mobile-question-set-detail__publish-hint{color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm);line-height:1.5;margin:0}.mobile-question-set-detail__publish-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:var(--mobile-radius-md);box-shadow:0 4px 15px rgba(102,126,234,.4);color:#fff;cursor:pointer;display:flex;font-size:var(--mobile-font-base);font-weight:var(--mobile-font-semibold);justify-content:center;padding:12px 24px;transition:all .3s ease;width:100%}.mobile-question-set-detail__publish-btn:hover:not(:disabled){box-shadow:0 6px 20px rgba(102,126,234,.5);transform:translateY(-2px)}.mobile-question-set-detail__publish-btn:active:not(:disabled){transform:translateY(0)}.mobile-question-set-detail__publish-btn:disabled{cursor:not-allowed;opacity:.6}.mobile-question-set-detail__publish-section--disabled{background:var(--mobile-bg-warning,#fff7e6);border:1px solid var(--mobile-border-warning,#ffd591);border-radius:var(--mobile-radius-md);padding:var(--mobile-space-md)}.mobile-question-set-detail__publish-hint--warning{color:var(--mobile-text-warning,#fa8c16);font-weight:var(--mobile-font-medium)}.mobile-question-set-detail__publish-disabled-text{color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm);line-height:1.5;margin:0}.mobile-question-set-detail__actions{margin-bottom:var(--mobile-space-lg)}.mobile-question-set-detail__section{background:var(--mobile-bg-primary);border-radius:var(--mobile-radius-lg);box-shadow:var(--mobile-shadow-sm);padding:var(--mobile-space-md)}.mobile-question-set-detail__section-header{align-items:center;border-bottom:1px solid var(--mobile-border-light);display:flex;justify-content:space-between;margin-bottom:var(--mobile-space-md);padding-bottom:var(--mobile-space-sm)}.mobile-question-set-detail__section-title{color:var(--mobile-text-primary);font-size:var(--mobile-font-md);font-weight:var(--mobile-font-semibold);margin:0}.mobile-question-set-detail__add-buttons{align-items:center;display:flex;gap:var(--mobile-space-sm)}.mobile-question-set-detail__add-btn{-webkit-tap-highlight-color:transparent;align-items:center;background:var(--mobile-bg-primary);border:1px solid var(--mobile-border-medium);border-radius:var(--mobile-radius-md);color:var(--mobile-text-primary);cursor:pointer;display:flex;font-size:var(--mobile-font-sm);gap:var(--mobile-space-xs);padding:var(--mobile-space-sm) var(--mobile-space-md);transition:all var(--mobile-transition-fast)}.mobile-question-set-detail__add-btn:active{background-color:var(--mobile-bg-tertiary)}.mobile-question-set-detail__list{display:flex;flex-direction:column;gap:var(--mobile-space-sm)}.mobile-question-list-item{align-items:flex-start;background:var(--mobile-bg-secondary);border:1px solid var(--mobile-border-light);border-radius:var(--mobile-radius-md);display:flex;gap:var(--mobile-space-sm);padding:var(--mobile-space-md);transition:all var(--mobile-transition-fast)}.mobile-question-list-item:active{background:var(--mobile-bg-tertiary)}.mobile-question-list-item__content{flex:1;min-width:0}.mobile-question-list-item__header{align-items:center;display:flex;gap:var(--mobile-space-sm);margin-bottom:var(--mobile-space-xs)}.mobile-question-list-item__number{color:var(--mobile-text-primary);font-size:var(--mobile-font-sm);font-weight:var(--mobile-font-semibold);min-width:24px}.mobile-question-list-item__type{background:var(--mobile-bg-tertiary);border-radius:var(--mobile-radius-sm);font-size:var(--mobile-font-xs);font-weight:var(--mobile-font-medium);padding:2px 8px}.mobile-question-list-item__text{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--mobile-text-secondary);display:-webkit-box;font-size:var(--mobile-font-sm);line-height:1.5;margin:0;overflow:hidden;text-overflow:ellipsis}.mobile-question-list-item__actions{align-items:center;display:flex;flex-shrink:0;gap:var(--mobile-space-xs)}.mobile-question-list-item__action-btn{-webkit-tap-highlight-color:transparent;align-items:center;background:transparent;border:none;border-radius:var(--mobile-radius-sm);color:var(--mobile-text-secondary);cursor:pointer;display:flex;height:32px;justify-content:center;transition:all var(--mobile-transition-fast);width:32px}.mobile-question-list-item__action-btn:active{background:var(--mobile-bg-tertiary)}.mobile-question-list-item__action-btn--edit{color:#1890ff}.mobile-question-list-item__action-btn--edit:active{background:#e6f7ff}.mobile-question-list-item__action-btn--delete{color:#f5222d}.mobile-question-list-item__action-btn--delete:active{background:#fff1f0}.mobile-question-list-item__markdown{flex:1;min-width:0;overflow:hidden}.mobile-question-list-item__markdown-content{color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm);line-height:1.5}.mobile-question-list-item__markdown-content p{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;margin:0;overflow:hidden;text-overflow:ellipsis}.mobile-question-list-item__markdown-content .katex{font-size:.9em}.mobile-question-list-item__markdown-content .katex-display{margin:0;overflow:hidden;text-overflow:ellipsis}.mobile-question-form{padding:var(--mobile-space-md)}.mobile-question-form__field{margin-bottom:var(--mobile-space-lg)}.mobile-question-form__label{color:var(--mobile-text-primary);display:block;font-size:var(--mobile-font-sm);font-weight:var(--mobile-font-medium);margin-bottom:var(--mobile-space-sm)}.mobile-question-form__required{color:#f5222d}.mobile-question-form__type-selector{display:flex;flex-wrap:wrap;gap:var(--mobile-space-sm)}.mobile-question-form__type-option{-webkit-tap-highlight-color:transparent;background:var(--mobile-bg-primary);border:1px solid var(--mobile-border-medium);border-radius:var(--mobile-radius-md);color:var(--mobile-text-primary);cursor:pointer;font-size:var(--mobile-font-sm);padding:var(--mobile-space-sm) var(--mobile-space-md);transition:all var(--mobile-transition-fast)}.mobile-question-form__type-option.active{background:var(--mobile-primary);border-color:var(--mobile-primary);color:#fff}.mobile-question-form__type-option:active{opacity:.8}.mobile-question-form__options{display:flex;flex-direction:column;gap:var(--mobile-space-sm);margin-bottom:var(--mobile-space-sm)}.mobile-question-form__option{align-items:center;background:var(--mobile-bg-secondary);border:1px solid var(--mobile-border-light);border-radius:var(--mobile-radius-md);display:flex;gap:var(--mobile-space-sm);padding:var(--mobile-space-sm)}.mobile-question-form__option-key{color:var(--mobile-text-primary);font-size:var(--mobile-font-md);font-weight:var(--mobile-font-semibold);min-width:24px;text-align:center}.mobile-question-form__option-input{background:var(--mobile-bg-primary);border:1px solid var(--mobile-border-medium);border-radius:var(--mobile-radius-sm);color:var(--mobile-text-primary);flex:1;font-size:var(--mobile-font-sm);padding:var(--mobile-space-sm)}.mobile-question-form__option-input:focus{border-color:var(--mobile-primary);outline:none}.mobile-question-form__option-correct{-webkit-tap-highlight-color:transparent;background:var(--mobile-bg-primary);border:1px solid var(--mobile-border-medium);border-radius:var(--mobile-radius-sm);color:var(--mobile-text-secondary);cursor:pointer;font-size:var(--mobile-font-md);height:32px;transition:all var(--mobile-transition-fast);width:32px}.mobile-question-form__option-correct.active{background:#52c41a;border-color:#52c41a;color:#fff}.mobile-question-form__option-remove{-webkit-tap-highlight-color:transparent;background:transparent;border:none;color:#f5222d;cursor:pointer;font-size:var(--mobile-font-lg);height:32px;width:32px}.mobile-question-form__add-option{-webkit-tap-highlight-color:transparent;background:var(--mobile-bg-primary);border:1px dashed var(--mobile-border-medium);border-radius:var(--mobile-radius-md);color:var(--mobile-text-secondary);cursor:pointer;font-size:var(--mobile-font-sm);padding:var(--mobile-space-sm) var(--mobile-space-md);transition:all var(--mobile-transition-fast);width:100%}.mobile-question-form__add-option:active{background:var(--mobile-bg-tertiary)}.mobile-question-form__error{color:#f5222d;display:block;font-size:var(--mobile-font-xs);margin-top:var(--mobile-space-xs)}.mobile-question-form__actions{display:flex;gap:var(--mobile-space-md);margin-top:var(--mobile-space-xl)}.mobile-question-form__preview{background:var(--mobile-bg-secondary);border:1px solid var(--mobile-border-light);border-radius:var(--mobile-radius-md);margin-top:var(--mobile-space-sm);padding:var(--mobile-space-sm)}.mobile-question-form__preview-label{color:var(--mobile-text-tertiary);font-size:var(--mobile-font-xs);letter-spacing:.5px;margin-bottom:var(--mobile-space-xs);text-transform:uppercase}.mobile-question-form__preview-content{color:var(--mobile-text-primary);font-size:var(--mobile-font-sm);line-height:1.6}.mobile-question-form__preview-content p{margin:0}.mobile-question-form__preview-content .katex{font-size:.95em}.mobile-question-form__preview-content .katex-display{margin:var(--mobile-space-xs) 0;overflow-x:auto;overflow-y:hidden}.mobile-question-form__type-display{color:var(--mobile-text-primary);display:inline-block;font-size:var(--mobile-font-sm);font-weight:var(--mobile-font-medium);padding:var(--mobile-space-sm) var(--mobile-space-md)}.mobile-question-form__content-display,.mobile-question-form__type-display{background:var(--mobile-bg-secondary);border:1px solid var(--mobile-border-light);border-radius:var(--mobile-radius-md)}.mobile-question-form__content-display{min-height:80px;padding:var(--mobile-space-md)}.mobile-question-form__markdown-display{color:var(--mobile-text-primary);font-size:var(--mobile-font-sm);line-height:1.6}.mobile-question-form__markdown-display p{margin:0}.mobile-question-form__markdown-display .katex{font-size:.95em}.mobile-question-form__option.read-only{background:var(--mobile-bg-secondary)}.mobile-question-form__option-content{background:var(--mobile-bg-primary);border:1px solid var(--mobile-border-light);border-radius:var(--mobile-radius-sm);flex:1;min-height:36px;padding:var(--mobile-space-sm)}.mobile-question-form__option-correct.read-only{cursor:default;opacity:1}.mobile-question-form__option-correct.read-only:not(.active){opacity:.5}.mobile-question-form__empty-text{color:var(--mobile-text-tertiary);font-size:var(--mobile-font-sm);font-style:italic}.mobile-question-form__tab-card{margin-bottom:var(--mobile-space-md)}.mobile-question-form__mode-toggle{background:var(--mobile-bg-tertiary);border-radius:var(--mobile-radius-md);display:flex;gap:var(--mobile-space-xs);padding:4px}.mobile-question-form__mode-btn{-webkit-tap-highlight-color:transparent;background:transparent;border:none;border-radius:var(--mobile-radius-sm);color:var(--mobile-text-secondary);cursor:pointer;flex:1;font-size:var(--mobile-font-md);font-weight:var(--mobile-font-medium);padding:var(--mobile-space-sm) var(--mobile-space-md);transition:all var(--mobile-transition-fast)}.mobile-question-form__mode-btn.active{background:var(--mobile-bg-primary);box-shadow:var(--mobile-shadow-sm);color:var(--mobile-primary)}.mobile-question-form__mode-btn:disabled{cursor:not-allowed;opacity:.5}.mobile-question-list-item__action-btn--preview{background:#e6f7ff;color:var(--mobile-primary)}.mobile-question-list-item__action-btn--preview:active{background:#bae7ff}.mobile-question-set-form{padding:var(--mobile-space-md)}.mobile-question-set-form__field{margin-bottom:var(--mobile-space-lg)}.mobile-question-set-form__field:last-child{margin-bottom:0}.mobile-question-set-form__label{color:var(--mobile-text-primary);display:block;font-size:var(--mobile-font-sm);font-weight:var(--mobile-font-medium);margin-bottom:var(--mobile-space-sm)}.mobile-question-set-form__required{color:#f5222d}.mobile-question-set-form__type-selector{display:flex;gap:var(--mobile-space-md)}.mobile-question-set-form__type-option{-webkit-tap-highlight-color:transparent;align-items:center;background:var(--mobile-bg-primary);border:1px solid var(--mobile-border-medium);border-radius:var(--mobile-radius-md);color:var(--mobile-text-primary);cursor:pointer;display:flex;flex:1;font-size:var(--mobile-font-sm);gap:var(--mobile-space-xs);justify-content:center;padding:var(--mobile-space-sm) var(--mobile-space-md);transition:all var(--mobile-transition-fast)}.mobile-question-set-form__type-option.active{background:#e6f7ff;border-color:var(--mobile-primary);color:var(--mobile-primary)}.mobile-question-set-form__type-option:active{background:var(--mobile-bg-tertiary)}.mobile-question-set-form__type-icon{align-items:center;display:flex;justify-content:center}.mobile-question-set-form__type-label{font-weight:var(--mobile-font-medium)}.mobile-question-set-form__select{appearance:none;-webkit-appearance:none;background:var(--mobile-bg-primary);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23999' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:16px;border:1px solid var(--mobile-border-medium);border-radius:var(--mobile-radius-md);color:var(--mobile-text-primary);cursor:pointer;font-size:var(--mobile-font-sm);padding:var(--mobile-space-sm) var(--mobile-space-md);padding-right:36px;transition:border-color var(--mobile-transition-fast);width:100%}.mobile-question-set-form__select:focus{border-color:var(--mobile-primary);outline:none}.mobile-question-set-form__select:disabled{background-color:var(--mobile-bg-secondary);color:var(--mobile-text-tertiary);cursor:not-allowed}.mobile-question-set-form__error{color:#f5222d;display:block;font-size:var(--mobile-font-xs);margin-top:var(--mobile-space-xs)}.mobile-question-set-form__actions{border-top:1px solid var(--mobile-border-light);display:flex;gap:var(--mobile-space-md);margin-top:var(--mobile-space-xl);padding-top:var(--mobile-space-lg)}.mobile-english-group{background:var(--mobile-bg-secondary);display:flex;flex-direction:column;height:calc(100dvh - var(--mobile-header-height) - var(--mobile-safe-area-top));overflow:hidden}.mobile-english-group__passage-section{display:flex;flex:0 0 45%;flex-direction:column;overflow:hidden}.mobile-english-group__passage-header,.mobile-english-group__passage-section{background:var(--mobile-bg-primary);border-bottom:1px solid var(--mobile-border-light)}.mobile-english-group__passage-header{flex-shrink:0;padding:var(--mobile-space-sm) var(--mobile-space-md)}.mobile-english-group__passage-title{color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm);font-weight:var(--mobile-font-semibold)}.mobile-english-group__passage-content{color:var(--mobile-text-primary);font-size:var(--mobile-font-md);line-height:var(--mobile-line-height-relaxed)}.mobile-english-group__passage-content,.mobile-english-group__questions-section{-webkit-overflow-scrolling:touch;flex:1;overflow-y:auto;padding:var(--mobile-space-md)}.mobile-english-group__questions-section{background:var(--mobile-bg-secondary)}.mobile-english-group__questions-list{display:flex;flex-direction:column;gap:var(--mobile-space-md)}.mobile-english-group__sub-question{background:var(--mobile-bg-primary);border-radius:var(--mobile-radius-lg);box-shadow:var(--mobile-shadow-sm);padding:var(--mobile-space-md)}.mobile-english-group__sub-question-header{align-items:center;display:flex;gap:var(--mobile-space-sm);justify-content:space-between;margin-bottom:var(--mobile-space-sm)}.mobile-english-group__sub-question-index{background:#e6f7ff;border-radius:var(--mobile-radius-sm);color:var(--mobile-primary);font-size:var(--mobile-font-sm);font-weight:var(--mobile-font-semibold);padding:2px 10px}.mobile-english-group__sub-question-content{color:var(--mobile-text-primary);font-size:var(--mobile-font-md);line-height:var(--mobile-line-height-relaxed);margin-bottom:var(--mobile-space-md)}.mobile-english-group__options{display:flex;flex-direction:column;gap:0}.mobile-english-group__result-tag{border-radius:var(--mobile-radius-sm);font-size:var(--mobile-font-xs);font-weight:var(--mobile-font-medium);padding:2px 8px}.mobile-english-group__result-tag--correct{background:#f6ffed;color:#52c41a}.mobile-english-group__result-tag--wrong{background:#fff1f0;color:#f5222d}.mobile-english-group__footer{align-items:center;background:var(--mobile-bg-primary);border-top:1px solid var(--mobile-border-light);display:flex;flex-shrink:0;gap:var(--mobile-space-md);justify-content:space-between;padding:var(--mobile-space-md);padding-bottom:calc(var(--mobile-space-md) + var(--mobile-safe-area-bottom))}.mobile-english-group__progress{color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm)}.mobile-english-group__btn{-webkit-tap-highlight-color:transparent;border:none;border-radius:var(--mobile-radius-md);cursor:pointer;font-size:var(--mobile-font-md);font-weight:var(--mobile-font-medium);min-width:100px;padding:var(--mobile-space-sm) var(--mobile-space-lg);transition:opacity var(--mobile-transition-fast)}.mobile-english-group__btn:active{opacity:.8}.mobile-english-group__btn:disabled{cursor:not-allowed;opacity:.5}.mobile-english-group__btn--primary{background:var(--mobile-primary);color:#fff}.mobile-english-group__explanation{border-top:1px solid var(--mobile-border-light);margin-top:var(--mobile-space-md);padding-top:var(--mobile-space-md)}.mobile-english-group__explanation-title{color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm);font-weight:var(--mobile-font-semibold);margin-bottom:var(--mobile-space-xs)}.mobile-english-group__explanation-content{color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm);line-height:var(--mobile-line-height-relaxed)}.mobile-english-group__markdown{color:var(--mobile-text-primary);font-size:var(--mobile-font-md);line-height:var(--mobile-line-height-relaxed)}.mobile-english-group__markdown p{margin:0 0 var(--mobile-space-sm) 0}.mobile-english-group__markdown p:last-child{margin-bottom:0}.mobile-english-group__markdown .katex{font-size:1em}.question-list-item:active{box-shadow:0 2px 8px rgba(102,126,234,.15);transform:scale(.99)}.question-list-item--group{background:#fff;border:1px solid #e8e8e8;border-left:4px solid #667eea;border-radius:var(--mobile-radius-lg);cursor:pointer;margin-bottom:var(--mobile-space-md);padding:var(--mobile-space-md);transition:box-shadow .2s,transform .1s}.question-list-item--group:active{box-shadow:0 2px 8px rgba(102,126,234,.15);transform:scale(.99)}.question-group-card__header{align-items:center;display:flex;flex-wrap:nowrap;gap:8px;justify-content:space-between;margin-bottom:var(--mobile-space-sm);min-width:0}.question-group-card__header-left{align-items:center;display:flex;flex:1;gap:6px;min-width:0;overflow:hidden}.question-group-card__type-badge{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff;display:inline-flex;font-size:var(--mobile-font-sm);font-weight:600;letter-spacing:.5px;padding:4px 12px}.question-group-card__count{color:var(--mobile-text-secondary);font-size:var(--mobile-font-xs);font-weight:500}.question-group-card__preview-hint{background:rgba(102,126,234,.08);border-radius:var(--radius-sm);color:var(--mobile-primary);flex-shrink:0;font-size:var(--mobile-font-xs);font-weight:500;padding:2px 10px;white-space:nowrap}.question-group-card__tags{display:flex;flex-shrink:1;flex-wrap:nowrap;gap:5px;min-width:0;overflow:hidden}.question-group-card__tag-chip{background:rgba(102,126,234,.08);border-radius:10px;color:#667eea;font-size:11px;max-width:80px;overflow:hidden;padding:2px 8px;text-overflow:ellipsis;white-space:nowrap}.question-group-card__passage{background:#fafbfc;border-radius:var(--mobile-radius-md);margin-bottom:var(--mobile-space-sm);padding:var(--mobile-space-sm) var(--mobile-space-md)}.question-group-card__passage-text{-webkit-line-clamp:3;-webkit-box-orient:vertical;color:var(--mobile-text-secondary);display:-webkit-box;font-size:var(--mobile-font-sm);line-height:1.6;margin:0;overflow:hidden}.question-group-card__items{display:flex;flex-direction:column;gap:var(--mobile-space-xs)}.question-group-card__item{align-items:center;background:#f8f9fa;border-radius:var(--mobile-radius-sm);display:flex;gap:var(--mobile-space-sm);padding:var(--space-xs) var(--mobile-space-sm)}.question-group-card__item-no{color:#667eea;flex-shrink:0;font-size:var(--mobile-font-xs);font-weight:700;min-width:20px}.question-group-card__item-content{color:var(--mobile-text-primary);flex:1;font-size:var(--mobile-font-xs);line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.question-group-card__item-preview{background:none;border:1px solid var(--mobile-primary);border-radius:var(--mobile-radius-sm);color:var(--mobile-primary);cursor:pointer;flex-shrink:0;font-size:var(--mobile-font-xs);padding:2px 10px;white-space:nowrap}.question-group-card__item-preview:active{background:#e6f7ff}.question-group-card__actions{align-items:center;border-top:1px solid #f0f0f0;display:flex;justify-content:flex-end;margin-top:var(--space-xs);padding-top:var(--space-xs)}.question-group-card__time{color:var(--mobile-text-tertiary);font-size:var(--mobile-font-xs)}.question-group-card__delete-btn{background:none;border:1px solid #e74c3c;border-radius:var(--radius-sm);color:#e74c3c;cursor:pointer;flex-shrink:0;font-size:var(--mobile-font-xs);margin-left:auto;padding:3px 12px;white-space:nowrap}.question-group-card__delete-btn:active{background:#fde8e8}.mobile-about__logo-card{padding:var(--mobile-space-xl) var(--mobile-space-lg);text-align:center}.mobile-about__logo{align-items:center;background:linear-gradient(135deg,var(--mobile-primary) 0,#6366f1 100%);border-radius:var(--mobile-radius-xl);color:var(--mobile-text-inverse);display:flex;height:80px;justify-content:center;margin:0 auto var(--mobile-space-md);width:80px}.mobile-about__app-name{color:var(--mobile-text-primary);font-size:var(--mobile-font-xl);font-weight:var(--mobile-font-bold);margin:0 0 var(--mobile-space-xs)}.mobile-about__version{color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm);margin:0}.mobile-about__section-title{color:var(--mobile-text-primary);font-size:var(--mobile-font-lg);font-weight:var(--mobile-font-semibold);margin:0 0 var(--mobile-space-md)}.mobile-about__features{display:grid;gap:var(--mobile-space-md);grid-template-columns:1fr 1fr}.mobile-about__feature-item{text-align:center}.mobile-about__feature-title{color:var(--mobile-text-primary);font-size:var(--mobile-font-md);font-weight:var(--mobile-font-medium);margin-bottom:var(--mobile-space-xs)}.mobile-about__feature-desc{color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm)}.mobile-about__link-card{margin-bottom:var(--mobile-space-md)}.mobile-about__link-item{align-items:center;color:var(--mobile-text-primary);display:flex;justify-content:space-between;padding:var(--mobile-space-sm) 0}.mobile-about__link-label{font-size:var(--mobile-font-md)}.mobile-about__footer{padding:var(--mobile-space-lg) 0;text-align:center}.mobile-about__footer p{color:var(--mobile-text-tertiary);font-size:var(--mobile-font-xs);margin:0}.mobile-cache__section-title{color:var(--mobile-text-secondary);font-size:var(--mobile-font-md);font-weight:var(--mobile-font-medium);margin:0 0 var(--mobile-space-md)}.mobile-cache__stats{display:grid;gap:var(--mobile-space-md);grid-template-columns:repeat(3,1fr);margin-bottom:var(--mobile-space-md)}.mobile-cache__stat-item{background:var(--mobile-bg-tertiary);border-radius:var(--mobile-radius-md);padding:var(--mobile-space-md);text-align:center}.mobile-cache__stat-value{color:var(--mobile-primary);font-size:var(--mobile-font-xl);font-weight:var(--mobile-font-bold)}.mobile-cache__stat-label{color:var(--mobile-text-secondary);font-size:var(--mobile-font-xs);margin-top:var(--mobile-space-xs)}.mobile-cache__space{border-top:1px solid var(--mobile-border-light);color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm);padding-top:var(--mobile-space-md)}.mobile-cache__space,.mobile-favorites__filter{align-items:center;display:flex;gap:var(--mobile-space-sm)}.mobile-favorites__filter{background:var(--mobile-surface);border-bottom:1px solid var(--mobile-border-light);margin-bottom:var(--mobile-space-md);padding:var(--mobile-space-md)}.mobile-favorites__filter-icon{color:var(--mobile-text-secondary);flex-shrink:0}.mobile-favorites__filter-select{appearance:none;background:var(--mobile-bg);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;border:1px solid var(--mobile-border);border-radius:var(--mobile-radius-md);color:var(--mobile-text-primary);flex:1;font-size:var(--mobile-font-sm);padding:var(--mobile-space-sm) var(--mobile-space-md);padding-right:36px}.mobile-favorites__filter-select:focus{border-color:var(--mobile-primary);outline:none}.mobile-favorites__toolbar{align-items:center;background:var(--mobile-surface);border-bottom:1px solid var(--mobile-border-light);display:flex;gap:var(--mobile-space-sm);justify-content:space-between;margin-bottom:var(--mobile-space-md);padding:var(--mobile-space-sm) var(--mobile-space-md)}.mobile-favorites__toolbar-btn{align-items:center;background:var(--mobile-bg);border:1px solid var(--mobile-border);border-radius:var(--mobile-radius-sm);color:var(--mobile-text-primary);cursor:pointer;display:flex;font-size:var(--mobile-font-sm);gap:var(--mobile-space-xs);padding:var(--mobile-space-xs) var(--mobile-space-sm);transition:all .2s ease}.mobile-favorites__toolbar-btn:active{background:var(--mobile-border-light)}.mobile-favorites__toolbar-btn--danger{border-color:var(--mobile-error);color:var(--mobile-error)}.mobile-favorites__toolbar-btn--danger:active{background:rgba(239,68,68,.1)}.mobile-favorites__toolbar-count{color:var(--mobile-text-secondary);flex:1;font-size:var(--mobile-font-sm);text-align:center}.mobile-favorites__list{padding:0 var(--mobile-space-md)}.mobile-favorites__card{margin-bottom:var(--mobile-space-md);position:relative;transition:all .2s ease}.mobile-favorites__card--selectable{padding-left:48px}.mobile-favorites__card--selected{background:rgba(59,130,246,.05);border-color:var(--mobile-primary)}.mobile-favorites__card-checkbox{left:var(--mobile-space-md);position:absolute;top:50%;transform:translateY(-50%)}.mobile-checkbox{align-items:center;background:var(--mobile-bg);border:2px solid var(--mobile-border);border-radius:var(--mobile-radius-sm);display:flex;height:20px;justify-content:center;transition:all .2s ease;width:20px}.mobile-checkbox--checked{background:var(--mobile-primary);border-color:var(--mobile-primary);color:#fff}.mobile-favorites__card-icon{color:var(--mobile-primary);position:absolute;right:var(--mobile-space-md);top:var(--mobile-space-md)}.mobile-favorites__card-remove{align-items:center;background:var(--mobile-border-light);border:none;border-radius:var(--mobile-radius-sm);color:var(--mobile-text-tertiary);cursor:pointer;display:flex;height:28px;justify-content:center;position:absolute;right:var(--mobile-space-sm);top:var(--mobile-space-sm);transition:all .2s ease;width:28px;z-index:1}.mobile-favorites__card-remove:active{background:var(--mobile-error);color:#fff}.mobile-favorites__card-preview{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--mobile-text-primary);display:-webkit-box;font-size:var(--mobile-font-sm);line-height:var(--mobile-line-height-relaxed);margin:0 0 var(--mobile-space-sm);overflow:hidden;padding-right:var(--mobile-space-xl)}.mobile-favorites__card-footer{align-items:center;border-top:1px solid var(--mobile-border-light);display:flex;justify-content:space-between;padding-top:var(--mobile-space-sm)}.mobile-favorites__card-type{background:var(--mobile-border-light);border-radius:var(--mobile-radius-sm);color:var(--mobile-text-secondary);font-size:var(--mobile-font-xs);padding:2px 8px}.mobile-favorites__card-date{color:var(--mobile-text-tertiary);font-size:var(--mobile-font-xs)}.mobile-favorites__action-bar{background:var(--mobile-surface);border-top:1px solid var(--mobile-border-light);bottom:calc(var(--mobile-tabbar-height) + var(--mobile-safe-bottom));left:0;padding:var(--mobile-space-md);position:fixed;right:0;z-index:100}.mobile-feedback__label{color:var(--mobile-text-primary);display:block;font-size:var(--mobile-font-sm);font-weight:var(--mobile-font-medium);margin-bottom:var(--mobile-space-sm)}.mobile-feedback__type-selector{display:flex;gap:var(--mobile-space-sm)}.mobile-feedback__type-btn{-webkit-tap-highlight-color:transparent;background:var(--mobile-bg-primary);border:1px solid var(--mobile-border-medium);border-radius:var(--mobile-radius-md);color:var(--mobile-text-secondary);cursor:pointer;flex:1;font-size:var(--mobile-font-sm);padding:var(--mobile-space-sm) var(--mobile-space-md);transition:all var(--mobile-transition-fast)}.mobile-feedback__type-btn--active{background:rgba(79,70,229,.1);border-color:var(--mobile-primary);color:var(--mobile-primary);font-weight:var(--mobile-font-medium)}.mobile-feedback__char-count{color:var(--mobile-text-tertiary);font-size:var(--mobile-font-xs);margin-top:var(--mobile-space-xs);text-align:right}.mobile-help__search{margin-bottom:var(--mobile-space-md);position:relative}.mobile-help__search-icon{color:var(--mobile-text-tertiary);pointer-events:none;position:absolute;right:var(--mobile-space-md);top:50%;transform:translateY(-50%)}.mobile-help__section-title{color:var(--mobile-text-primary);font-size:var(--mobile-font-lg);font-weight:var(--mobile-font-semibold);margin:0 0 var(--mobile-space-md)}.mobile-help__faq-item{-webkit-tap-highlight-color:transparent;border-bottom:1px solid var(--mobile-border-light);cursor:pointer;padding:var(--mobile-space-md) 0;transition:background-color var(--mobile-transition-fast)}.mobile-help__faq-item:last-child{border-bottom:none}.mobile-help__faq-question{align-items:center;color:var(--mobile-text-primary);display:flex;font-size:var(--mobile-font-md);font-weight:var(--mobile-font-medium);justify-content:space-between}.mobile-help__faq-answer{animation:mobile-help-fade-in .2s ease;color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm);line-height:var(--mobile-line-height-relaxed);margin-top:var(--mobile-space-sm)}@keyframes mobile-help-fade-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.mobile-notes__search{background:var(--mobile-surface);border-bottom:1px solid var(--mobile-border-light);margin-bottom:var(--mobile-space-md);padding:var(--mobile-space-md)}.mobile-notes__search-input-wrapper{align-items:center;background:var(--mobile-bg);border:1px solid var(--mobile-border);border-radius:var(--mobile-radius-lg);display:flex;gap:var(--mobile-space-sm);padding:var(--mobile-space-sm) var(--mobile-space-md);transition:border-color .2s ease}.mobile-notes__search-input-wrapper:focus-within{border-color:var(--mobile-primary)}.mobile-notes__search-icon{color:var(--mobile-text-tertiary);flex-shrink:0}.mobile-notes__search-input{background:transparent;border:none;color:var(--mobile-text-primary);flex:1;font-size:var(--mobile-font-sm);outline:none}.mobile-notes__search-input::placeholder{color:var(--mobile-text-tertiary)}.mobile-notes__search-clear{align-items:center;background:var(--mobile-border-light);border:none;border-radius:50%;color:var(--mobile-text-tertiary);cursor:pointer;display:flex;flex-shrink:0;height:20px;justify-content:center;padding:0;width:20px}.mobile-notes__search-result{background:var(--mobile-surface);border-bottom:1px solid var(--mobile-border-light);color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm);padding:var(--mobile-space-sm) var(--mobile-space-md)}.mobile-notes__list{padding:0 var(--mobile-space-md)}.mobile-notes__card{margin-bottom:var(--mobile-space-md)}.mobile-notes__card-header{align-items:center;display:flex;gap:var(--mobile-space-sm);justify-content:space-between;margin-bottom:var(--mobile-space-sm)}.mobile-notes__card-title{color:var(--mobile-text-primary);flex:1;font-size:var(--mobile-font-md);font-weight:var(--mobile-font-medium);margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-notes__card-arrow{color:var(--mobile-text-tertiary);flex-shrink:0}.mobile-notes__card-preview{-webkit-line-clamp:3;-webkit-box-orient:vertical;color:var(--mobile-text-secondary);display:-webkit-box;font-size:var(--mobile-font-sm);line-height:var(--mobile-line-height-relaxed);margin:0 0 var(--mobile-space-sm);overflow:hidden}.mobile-notes__card-footer{align-items:center;border-top:1px solid var(--mobile-border-light);display:flex;justify-content:space-between;padding-top:var(--mobile-space-sm)}.mobile-notes__card-meta{align-items:center;display:flex;gap:var(--mobile-space-sm)}.mobile-notes__card-subject{background:rgba(59,130,246,.1);border-radius:var(--mobile-radius-sm);color:var(--mobile-primary);font-size:var(--mobile-font-xs);padding:2px 8px}.mobile-notes__card-date,.mobile-notes__card-grade{color:var(--mobile-text-tertiary);font-size:var(--mobile-font-xs)}.mobile-notes__highlight{background:rgba(251,191,36,.4);border-radius:2px;color:var(--mobile-text-primary);padding:0 2px}.mobile-empty-state{align-items:center;color:var(--mobile-text-tertiary);display:flex;flex-direction:column;justify-content:center;padding:var(--mobile-space-3xl) var(--mobile-space-lg)}.mobile-empty-state__title{color:var(--mobile-text-secondary);font-size:var(--mobile-font-lg);font-weight:600;margin:var(--mobile-space-md) 0 var(--mobile-space-sm)}.mobile-empty-state__description{color:var(--mobile-text-tertiary);font-size:var(--mobile-font-sm);line-height:var(--mobile-line-height-relaxed);text-align:center}.mobile-notifications__section-title{color:var(--mobile-text-secondary);font-size:var(--mobile-font-md);font-weight:var(--mobile-font-medium);margin:0 0 var(--mobile-space-md)}.mobile-notifications__row{align-items:center;border-bottom:1px solid var(--mobile-border-light);display:flex;justify-content:space-between;padding:var(--mobile-space-md) 0}.mobile-notifications__row:last-child{border-bottom:none}.mobile-notifications__label{color:var(--mobile-text-primary);font-size:var(--mobile-font-md)}.mobile-notifications__row--time{flex-wrap:wrap;gap:var(--mobile-space-sm)}.mobile-notifications__time-input{-webkit-appearance:none;background:var(--mobile-bg-tertiary);border:1px solid var(--mobile-border-light);border-radius:var(--mobile-radius-md);color:var(--mobile-text-primary);font-size:var(--mobile-font-md);padding:var(--mobile-space-xs) var(--mobile-space-sm)}.mobile-toggle{align-items:center;display:flex;gap:var(--mobile-space-sm)}.mobile-toggle__switch{-webkit-tap-highlight-color:transparent;background:var(--mobile-border-medium);border:none;border-radius:var(--mobile-radius-full);cursor:pointer;height:24px;position:relative;transition:background-color var(--mobile-transition-fast);width:44px}.mobile-toggle__switch--active{background:var(--mobile-primary)}.mobile-toggle__switch:after{background:#fff;border-radius:50%;box-shadow:0 1px 2px rgba(0,0,0,.15);content:"";height:20px;left:2px;position:absolute;top:2px;transition:transform var(--mobile-transition-fast);width:20px}.mobile-toggle__switch--active:after{transform:translateX(20px)}.mobile-profile-orders{background:var(--mobile-bg-secondary);min-height:100dvh}.mobile-profile-orders__tabs{background:var(--mobile-bg-primary);border-bottom:1px solid var(--mobile-border);display:flex;padding:0 16px}.mobile-profile-orders__tab{background:none;border:none;border-bottom:2px solid transparent;color:var(--mobile-text-secondary);cursor:pointer;flex:1;font-size:15px;font-weight:500;padding:16px 8px;transition:all .2s ease}.mobile-profile-orders__tab--active{border-bottom-color:var(--mobile-primary);color:var(--mobile-primary)}.mobile-profile-orders__filters{-webkit-overflow-scrolling:touch;background:var(--mobile-bg-primary);border-bottom:1px solid var(--mobile-border);display:flex;gap:8px;overflow-x:auto;padding:12px 16px}.mobile-profile-orders__filter{background:var(--mobile-bg-secondary);border:1px solid var(--mobile-border);border-radius:16px;color:var(--mobile-text-secondary);cursor:pointer;font-size:13px;font-weight:500;padding:6px 12px;transition:all .2s ease;white-space:nowrap}.mobile-profile-orders__filter--active{background:var(--mobile-primary);border-color:var(--mobile-primary);color:#fff}.mobile-profile-orders__content{padding:16px}.mobile-profile-orders__list{display:flex;flex-direction:column;gap:12px}.mobile-profile-orders__card{cursor:pointer;transition:transform .2s ease}.mobile-profile-orders__card:active{transform:scale(.98)}.mobile-profile-orders__card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.mobile-profile-orders__card-type{background:var(--mobile-bg-secondary);border-radius:4px;color:var(--mobile-text-tertiary);font-size:13px;font-weight:500;padding:4px 8px}.mobile-profile-orders__card-status{font-size:13px;font-weight:500}.mobile-profile-orders__card-body{align-items:center;display:flex;gap:12px;justify-content:space-between}.mobile-profile-orders__card-info{display:flex;flex:1;flex-direction:column;gap:4px}.mobile-profile-orders__card-name{color:var(--mobile-text-primary);font-size:15px;font-weight:500}.mobile-profile-orders__card-date{color:var(--mobile-text-tertiary);font-size:13px}.mobile-profile-orders__card-price{color:var(--mobile-text-primary);font-size:18px;font-weight:600}.mobile-profile-orders__card-extra{border-top:1px solid var(--mobile-border);color:var(--mobile-text-secondary);font-size:13px;margin-top:12px;padding-top:12px}.mobile-profile-orders__empty{align-items:center;color:var(--mobile-text-tertiary);display:flex;flex-direction:column;justify-content:center;padding:64px 24px}.mobile-profile-orders__empty svg{margin-bottom:16px;opacity:.5}.mobile-profile-orders__empty p{color:var(--mobile-text-secondary);font-size:16px;font-weight:500;margin:0 0 8px}.mobile-profile-orders__empty span{font-size:14px;text-align:center}.mobile-profile-orders__detail-overlay{align-items:flex-end;animation:mobile-detail-fade-in .2s ease;background:rgba(0,0,0,.6);bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}@keyframes mobile-detail-fade-in{0%{opacity:0}to{opacity:1}}.mobile-profile-orders__detail{animation:mobile-detail-slide-up .3s ease;background:var(--mobile-bg-primary);border-radius:24px 24px 0 0;max-height:80vh;max-width:480px;overflow-y:auto;padding:24px;width:100%}@keyframes mobile-detail-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.mobile-profile-orders__detail-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.mobile-profile-orders__detail-header h3{color:var(--mobile-text-primary);font-size:18px;font-weight:600;margin:0}.mobile-profile-orders__detail-close{align-items:center;background:var(--mobile-bg-secondary);border:none;border-radius:8px;color:var(--mobile-text-tertiary);cursor:pointer;display:flex;height:32px;justify-content:center;width:32px}.mobile-profile-orders__detail-content{display:flex;flex-direction:column;gap:16px;margin-bottom:24px}.mobile-profile-orders__detail-section{align-items:center;border-bottom:1px solid var(--mobile-border);display:flex;justify-content:space-between;padding:12px 0}.mobile-profile-orders__detail-section:last-child{border-bottom:none}.mobile-profile-orders__detail-label{color:var(--mobile-text-secondary);font-size:14px}.mobile-profile-orders__detail-value{color:var(--mobile-text-primary);font-size:14px;font-weight:500}.mobile-profile-orders__detail-price{color:var(--mobile-text-primary);font-size:20px;font-weight:600}.mobile-profile-orders__detail-actions{display:flex;gap:12px}.mobile-profile-orders__detail-btn{border:none;border-radius:12px;cursor:pointer;flex:1;font-size:15px;font-weight:500;padding:14px;transition:opacity .2s ease}.mobile-profile-orders__detail-btn--refund{background:var(--mobile-error);color:#fff}.mobile-profile-orders__detail-btn--cancel{background:var(--mobile-bg-secondary);border:1px solid var(--mobile-border);color:var(--mobile-text-primary)}.mobile-profile-orders__detail-btn:disabled{cursor:not-allowed;opacity:.5}.mobile-profile-orders__detail-btn:not(:disabled):active{opacity:.8}.mobile-profile-orders__refund-overlay{align-items:center;background:rgba(0,0,0,.6);bottom:0;display:flex;justify-content:center;left:0;padding:24px;position:fixed;right:0;top:0;z-index:1001}.mobile-profile-orders__refund-modal{background:var(--mobile-bg-primary);border-radius:16px;max-width:360px;padding:24px;width:100%}.mobile-profile-orders__refund-modal h4{color:var(--mobile-text-primary);font-size:18px;font-weight:600;margin:0 0 8px}.mobile-profile-orders__refund-modal p{color:var(--mobile-text-secondary);font-size:14px;margin:0 0 16px}.mobile-profile-orders__refund-input{background:var(--mobile-bg-secondary);border:1px solid var(--mobile-border);border-radius:10px;color:var(--mobile-text-primary);font-size:14px;margin-bottom:16px;outline:none;padding:12px;resize:vertical;width:100%}.mobile-profile-orders__refund-input:focus{border-color:var(--mobile-primary)}.mobile-profile-orders__refund-actions{display:flex;gap:12px}.mobile-profile-orders__refund-btn{border:none;border-radius:10px;cursor:pointer;flex:1;font-size:15px;font-weight:500;padding:12px;transition:opacity .2s ease}.mobile-profile-orders__refund-btn--cancel{background:var(--mobile-bg-secondary);border:1px solid var(--mobile-border);color:var(--mobile-text-primary)}.mobile-profile-orders__refund-btn--submit{background:var(--mobile-primary);color:#fff}.mobile-profile-orders__refund-btn:disabled{cursor:not-allowed;opacity:.5}.mobile-profile-orders__refund-btn:not(:disabled):active{opacity:.8}.mobile-profile-reminders{background:var(--mobile-bg-secondary);min-height:100dvh}.mobile-profile-reminders__header-action{background:none;border:none;color:var(--mobile-primary);cursor:pointer;font-size:14px;padding:8px 12px}.mobile-profile-reminders__tabs{background:var(--mobile-bg-primary);border-bottom:1px solid var(--mobile-border);display:flex;padding:0 16px}.mobile-profile-reminders__tab{background:none;border:none;border-bottom:2px solid transparent;color:var(--mobile-text-secondary);cursor:pointer;flex:1;font-size:15px;font-weight:500;padding:16px 8px;position:relative;transition:all .2s ease}.mobile-profile-reminders__tab--active{border-bottom-color:var(--mobile-primary);color:var(--mobile-primary)}.mobile-profile-reminders__badge{align-items:center;background:var(--mobile-error);border-radius:9px;color:#fff;display:flex;font-size:11px;font-weight:600;height:18px;justify-content:center;min-width:18px;padding:0 5px;position:absolute;right:50%;top:12px;transform:translateX(24px)}.mobile-profile-reminders__content{padding:16px}.mobile-profile-reminders__card{margin-bottom:16px}.mobile-profile-reminders__item{align-items:center;display:flex;justify-content:space-between;padding:12px 0}.mobile-profile-reminders__item-info{display:flex;flex-direction:column;gap:4px}.mobile-profile-reminders__item-title{color:var(--mobile-text-primary);font-size:15px;font-weight:500}.mobile-profile-reminders__item-desc{color:var(--mobile-text-tertiary);font-size:13px}.mobile-profile-reminders__time-row{align-items:center;border-top:1px solid var(--mobile-border);display:flex;justify-content:space-between;margin-top:8px;padding:12px 0}.mobile-profile-reminders__time-label{color:var(--mobile-text-secondary);font-size:14px}.mobile-profile-reminders__time-input{background:var(--mobile-bg-secondary);border:1px solid var(--mobile-border);border-radius:8px;color:var(--mobile-text-primary);cursor:pointer;font-size:15px;padding:8px 12px}.mobile-profile-reminders__form{display:flex;flex-direction:column;gap:12px;padding:12px 0}.mobile-profile-reminders__form-input{background:var(--mobile-bg-secondary);border:1px solid var(--mobile-border);border-radius:10px;color:var(--mobile-text-primary);font-size:15px;outline:none;padding:12px 16px;transition:border-color .2s ease}.mobile-profile-reminders__form-input:focus{border-color:var(--mobile-primary)}.mobile-profile-reminders__form-input::placeholder{color:var(--mobile-text-tertiary)}.mobile-profile-reminders__form-row{display:flex;gap:12px}.mobile-profile-reminders__form-time{padding:12px 16px}.mobile-profile-reminders__form-select,.mobile-profile-reminders__form-time{background:var(--mobile-bg-secondary);border:1px solid var(--mobile-border);border-radius:10px;color:var(--mobile-text-primary);cursor:pointer;flex:1;font-size:15px;outline:none}.mobile-profile-reminders__form-select{appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='%23999' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:16px;padding:12px 40px 12px 16px}.mobile-profile-reminders__form-button{align-items:center;background:var(--mobile-primary);border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;font-size:15px;font-weight:500;justify-content:center;padding:14px;transition:opacity .2s ease}.mobile-profile-reminders__form-button:disabled{cursor:not-allowed;opacity:.5}.mobile-profile-reminders__form-button:not(:disabled):active{opacity:.8}.mobile-profile-reminders__list{display:flex;flex-direction:column}.mobile-profile-reminders__list-item{align-items:center;border-bottom:1px solid var(--mobile-border);display:flex;gap:12px;padding:12px 0}.mobile-profile-reminders__list-item:last-child{border-bottom:none}.mobile-profile-reminders__list-item-info{display:flex;flex:1;flex-direction:column;gap:4px}.mobile-profile-reminders__list-item-title{color:var(--mobile-text-primary);font-size:15px;font-weight:500}.mobile-profile-reminders__list-item-meta{color:var(--mobile-text-tertiary);font-size:13px}.mobile-profile-reminders__list-item-delete{align-items:center;background:none;border:none;border-radius:8px;color:var(--mobile-text-tertiary);cursor:pointer;display:flex;height:32px;justify-content:center;transition:all .2s ease;width:32px}.mobile-profile-reminders__list-item-delete:active{background:var(--mobile-bg-secondary);color:var(--mobile-error)}.mobile-profile-reminders__history-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px;padding:0 4px}.mobile-profile-reminders__history-count{color:var(--mobile-text-tertiary);font-size:13px}.mobile-profile-reminders__history-clear{background:none;border:none;color:var(--mobile-error);cursor:pointer;font-size:13px;padding:4px 8px}.mobile-profile-reminders__history-list{display:flex;flex-direction:column;gap:12px}.mobile-profile-reminders__history-item{align-items:flex-start;background:var(--mobile-bg-primary);border:1px solid var(--mobile-border);border-radius:12px;display:flex;gap:12px;padding:16px;transition:all .2s ease}.mobile-profile-reminders__history-item--unread{background:var(--mobile-primary-light,rgba(59,130,246,.05));border-color:var(--mobile-primary-light,rgba(59,130,246,.2))}.mobile-profile-reminders__history-icon{align-items:center;background:var(--mobile-bg-secondary);border-radius:10px;color:var(--mobile-primary);display:flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.mobile-profile-reminders__history-content{flex:1;min-width:0}.mobile-profile-reminders__history-title{align-items:center;color:var(--mobile-text-primary);display:flex;font-size:15px;font-weight:500;gap:8px;margin-bottom:4px}.mobile-profile-reminders__history-dot{background:var(--mobile-primary);border-radius:50%;height:8px;width:8px}.mobile-profile-reminders__history-message{color:var(--mobile-text-secondary);font-size:14px;line-height:1.5;margin-bottom:8px}.mobile-profile-reminders__history-time{color:var(--mobile-text-tertiary);font-size:12px}.mobile-profile-reminders__history-delete{align-items:center;background:none;border:none;border-radius:6px;color:var(--mobile-text-tertiary);cursor:pointer;display:flex;flex-shrink:0;height:28px;justify-content:center;width:28px}.mobile-profile-reminders__history-delete:active{background:var(--mobile-bg-secondary);color:var(--mobile-error)}.mobile-profile-reminders__empty{align-items:center;color:var(--mobile-text-tertiary);display:flex;flex-direction:column;justify-content:center;padding:64px 24px}.mobile-profile-reminders__empty svg{margin-bottom:16px;opacity:.5}.mobile-profile-reminders__empty p{color:var(--mobile-text-secondary);font-size:16px;font-weight:500;margin:0 0 8px}.mobile-profile-reminders__empty span{font-size:14px;text-align:center}.mobile-profile-reminders__confirm-overlay{align-items:center;background:rgba(0,0,0,.5);bottom:0;display:flex;justify-content:center;left:0;padding:24px;position:fixed;right:0;top:0;z-index:1000}.mobile-profile-reminders__confirm-dialog{background:var(--mobile-bg-primary);border-radius:16px;max-width:320px;padding:24px;text-align:center;width:100%}.mobile-profile-reminders__confirm-dialog h4{color:var(--mobile-text-primary);font-size:18px;font-weight:600;margin:0 0 8px}.mobile-profile-reminders__confirm-dialog p{color:var(--mobile-text-secondary);font-size:14px;margin:0 0 24px}.mobile-profile-reminders__confirm-actions{display:flex;gap:12px}.mobile-profile-reminders__confirm-btn{border:none;border-radius:10px;cursor:pointer;flex:1;font-size:15px;font-weight:500;padding:12px;transition:opacity .2s ease}.mobile-profile-reminders__confirm-btn--cancel{background:var(--mobile-bg-secondary);color:var(--mobile-text-primary)}.mobile-profile-reminders__confirm-btn--confirm{background:var(--mobile-error);color:#fff}.mobile-profile-reminders__confirm-btn:active{opacity:.8}.mobile-report__filter-bar{background:var(--mobile-bg-primary);border-radius:var(--mobile-radius-lg);display:flex;gap:var(--mobile-space-sm);margin-bottom:var(--mobile-space-md);padding:var(--mobile-space-xs)}.mobile-report__filter-btn{-webkit-tap-highlight-color:transparent;background:transparent;border:none;border-radius:var(--mobile-radius-md);color:var(--mobile-text-secondary);cursor:pointer;flex:1;font-size:var(--mobile-font-sm);font-weight:var(--mobile-font-medium);padding:var(--mobile-space-sm);transition:all var(--mobile-transition-fast)}.mobile-report__filter-btn--active{background:var(--mobile-primary);color:var(--mobile-text-inverse)}.mobile-report__stats-grid{display:grid;gap:var(--mobile-space-sm);grid-template-columns:repeat(3,1fr);margin-bottom:var(--mobile-space-md)}.mobile-report__stat-card{padding:var(--mobile-space-md) var(--mobile-space-sm);text-align:center}.mobile-report__stat-value{color:var(--mobile-primary);font-size:var(--mobile-font-xxl);font-weight:var(--mobile-font-bold)}.mobile-report__stat-label{color:var(--mobile-text-secondary);font-size:var(--mobile-font-xs);margin-top:var(--mobile-space-xs)}.mobile-report__section-title{color:var(--mobile-text-secondary);font-size:var(--mobile-font-md);font-weight:var(--mobile-font-medium);margin:0 0 var(--mobile-space-md)}.mobile-report__subject-bars{display:flex;flex-direction:column;gap:var(--mobile-space-md)}.mobile-report__subject-bar{align-items:center;display:flex;gap:var(--mobile-space-sm)}.mobile-report__subject-name{color:var(--mobile-text-primary);flex-shrink:0;font-size:var(--mobile-font-sm);width:50px}.mobile-report__subject-bar-track{background:var(--mobile-bg-tertiary);border-radius:var(--mobile-radius-full);flex:1;height:12px;overflow:hidden}.mobile-report__subject-bar-fill{background-color:var(--bar-color,var(--mobile-primary));border-radius:var(--mobile-radius-full);height:100%;transition:width .4s ease;width:var(--bar-width,0)}.mobile-report__subject-percent{color:var(--mobile-text-secondary);flex-shrink:0;font-size:var(--mobile-font-sm);text-align:right;width:40px}.mobile-report__weak-points{display:flex;flex-direction:column;gap:var(--mobile-space-md)}.mobile-report__weak-point{align-items:center;display:flex;gap:var(--mobile-space-sm)}.mobile-report__weak-point-name{color:var(--mobile-text-primary);flex-shrink:0;font-size:var(--mobile-font-sm);width:80px}.mobile-report__weak-point-bar-track{background:var(--mobile-bg-tertiary);border-radius:var(--mobile-radius-full);flex:1;height:8px;overflow:hidden}.mobile-report__weak-point-bar-fill{background:var(--mobile-error);border-radius:var(--mobile-radius-full);height:100%;transition:width .4s ease;width:var(--bar-width,0)}.mobile-report__weak-point-error-rate{color:var(--mobile-error);flex-shrink:0;font-size:var(--mobile-font-sm);font-weight:var(--mobile-font-medium);text-align:right;width:40px}.mobile-security__section-title{color:var(--mobile-text-secondary);font-size:var(--mobile-font-md);font-weight:var(--mobile-font-medium);margin:0 0 var(--mobile-space-md)}.mobile-security__info-item{-webkit-tap-highlight-color:transparent;align-items:center;border-bottom:1px solid var(--mobile-border-light);cursor:pointer;display:flex;padding:var(--mobile-space-md) 0;transition:background-color var(--mobile-transition-fast)}.mobile-security__info-item:last-child{border-bottom:none}.mobile-security__info-item:active{opacity:.7}.mobile-security__info-icon{align-items:center;background:var(--mobile-bg-tertiary);border-radius:var(--mobile-radius-md);color:var(--mobile-primary);display:flex;flex-shrink:0;height:36px;justify-content:center;margin-right:var(--mobile-space-md);width:36px}.mobile-security__info-icon--danger{color:var(--mobile-error)}.mobile-security__info-content{display:flex;flex:1;flex-direction:column;min-width:0}.mobile-security__info-label{color:var(--mobile-text-primary);font-size:var(--mobile-font-md)}.mobile-security__info-label--danger{color:var(--mobile-error)}.mobile-security__info-value{color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm);margin-top:var(--mobile-space-xs)}.mobile-security__info-description{color:var(--mobile-text-tertiary);font-size:var(--mobile-font-xs);margin-top:var(--mobile-space-xs)}.mobile-security__arrow{color:var(--mobile-text-tertiary);flex-shrink:0;margin-left:var(--mobile-space-sm)}.mobile-security__danger-card{margin-top:var(--mobile-space-lg)}.mobile-sets__card{margin-bottom:var(--mobile-space-md)}.mobile-sets__card-content{align-items:center;display:flex;gap:var(--mobile-space-md)}.mobile-sets__card-icon{align-items:center;background:rgba(79,70,229,.1);border-radius:var(--mobile-radius-md);color:var(--mobile-primary);display:flex;flex-shrink:0;height:44px;justify-content:center;width:44px}.mobile-sets__card-info{flex:1;min-width:0}.mobile-sets__card-title{color:var(--mobile-text-primary);font-size:var(--mobile-font-md);font-weight:var(--mobile-font-medium);margin:0 0 var(--mobile-space-xs);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-sets__card-meta{align-items:center;color:var(--mobile-text-secondary);display:flex;font-size:var(--mobile-font-sm);justify-content:space-between}.mobile-sets__status{border-radius:var(--mobile-radius-full);font-size:var(--mobile-font-xs);padding:var(--mobile-space-xs) var(--mobile-space-sm)}.mobile-sets__status--active{background:rgba(79,70,229,.1);color:var(--mobile-primary)}.mobile-sets__status--completed{background:rgba(16,185,129,.1);color:#10b981}.mobile-profile__user{align-items:center;background:var(--mobile-bg-primary);border-radius:var(--mobile-radius-xl);box-shadow:var(--mobile-shadow-sm);display:flex;gap:var(--mobile-space-md);margin-bottom:var(--mobile-space-md);padding:var(--mobile-space-lg)}.mobile-profile__avatar{align-items:center;background:linear-gradient(135deg,#1890ff,#40a9ff);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:var(--mobile-font-xxl);font-weight:var(--mobile-font-bold);height:64px;justify-content:center;overflow:hidden;width:64px}.mobile-profile__avatar img{height:100%;object-fit:cover;width:100%}.mobile-profile__avatar--clickable{-webkit-tap-highlight-color:transparent;cursor:pointer;position:relative}.mobile-profile__avatar--clickable:active{opacity:.8}.mobile-profile__avatar--clickable:after{background:var(--mobile-primary);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3'%3E%3Cpath d='M23 19a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h4l2-3h6l2 3h4a2 2 0 0 1 2 2z'/%3E%3Ccircle cx='12' cy='13' r='4'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:12px;border:2px solid var(--mobile-bg-primary);border-radius:50%;bottom:0;content:"";height:20px;position:absolute;right:0;width:20px}.mobile-profile__avatar-loading{animation:mobile-profile-avatar-spin .8s linear infinite;border:2px solid hsla(0,0%,100%,.3);border-radius:50%;border-top-color:#fff;height:24px;width:24px}@keyframes mobile-profile-avatar-spin{to{transform:rotate(1turn)}}.mobile-profile__user-info{flex:1;min-width:0}.mobile-profile__name{color:var(--mobile-text-primary);font-size:var(--mobile-font-lg);font-weight:var(--mobile-font-medium)}.mobile-profile__detail,.mobile-profile__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-profile__detail{color:#8c8c8c;font-size:var(--mobile-font-sm);margin-top:2px}.mobile-profile__edit-btn{-webkit-tap-highlight-color:transparent;background:var(--mobile-bg-tertiary);border:none;border-radius:var(--mobile-radius-full);color:var(--mobile-text-primary);cursor:pointer;font-size:var(--mobile-font-sm);padding:var(--mobile-space-xs) var(--mobile-space-md);transition:opacity var(--mobile-transition-fast);white-space:nowrap}.mobile-profile__edit-btn:active{opacity:.8}.mobile-profile__stats{display:flex;gap:var(--mobile-space-md);margin-bottom:var(--mobile-space-md)}.mobile-profile__stats-item{align-items:center;background:var(--mobile-bg-primary);border-radius:var(--mobile-radius-lg);box-shadow:var(--mobile-shadow-sm);display:flex;flex:1;flex-direction:column;height:100px;justify-content:center}.mobile-profile__stats-value{color:var(--mobile-text-primary);font-size:var(--mobile-font-xxl);font-weight:var(--mobile-font-bold)}.mobile-profile__stats-label{color:var(--mobile-text-secondary);font-size:var(--mobile-font-xs);margin-top:var(--mobile-space-xs)}.mobile-profile__menu{background:var(--mobile-bg-primary);border-radius:var(--mobile-radius-lg);box-shadow:var(--mobile-shadow-sm);margin-bottom:var(--mobile-space-md);overflow:hidden}.mobile-profile__menu-title{color:var(--mobile-text-tertiary);font-size:var(--mobile-font-sm);font-weight:var(--mobile-font-medium);padding:var(--mobile-space-md) var(--mobile-space-md) var(--mobile-space-xs)}.mobile-profile__menu-item{-webkit-tap-highlight-color:transparent;align-items:center;border-bottom:1px solid var(--mobile-border-light);cursor:pointer;display:flex;padding:var(--mobile-space-md);transition:background-color var(--mobile-transition-fast)}.mobile-profile__menu-item:last-child{border-bottom:none}.mobile-profile__menu-item:active{background-color:var(--mobile-bg-tertiary)}.mobile-profile__menu-item-icon{font-size:18px;margin-right:var(--mobile-space-md);text-align:center;width:24px}.mobile-profile__menu-item-label{color:var(--mobile-text-primary);flex:1;font-size:var(--mobile-font-md)}.mobile-profile__menu-item-extra{margin-left:var(--mobile-space-sm)}.mobile-profile__menu-item-arrow{color:var(--mobile-text-tertiary);font-size:16px;margin-left:var(--mobile-space-xs)}.mobile-profile__menu-item-switch{-webkit-tap-highlight-color:transparent;background:var(--mobile-border-medium);border:none;border-radius:var(--mobile-radius-full);cursor:pointer;height:24px;position:relative;transition:background-color var(--mobile-transition-fast);width:44px}.mobile-profile__menu-item-switch--active{background:#1890ff}.mobile-profile__menu-item-switch:after{background:#fff;border-radius:50%;box-shadow:0 1px 2px rgba(0,0,0,.15);content:"";height:20px;left:2px;position:absolute;top:2px;transition:transform var(--mobile-transition-fast);width:20px}.mobile-profile__menu-item-switch--active:after{transform:translateX(20px)}.mobile-profile__logout{-webkit-tap-highlight-color:transparent;background:var(--mobile-bg-primary);border:none;border-radius:var(--mobile-radius-lg);box-shadow:var(--mobile-shadow-sm);color:var(--mobile-error);cursor:pointer;font-size:var(--mobile-font-md);font-weight:var(--mobile-font-medium);margin-bottom:var(--mobile-space-md);padding:var(--mobile-space-md);transition:opacity var(--mobile-transition-fast);width:100%}.mobile-profile__logout:active{opacity:.8}.mobile-profile__footer{color:var(--mobile-text-tertiary);font-size:var(--mobile-font-xs);padding:var(--mobile-space-md) 0 var(--mobile-space-lg);text-align:center}.mobile-pull-to-refresh{-webkit-overflow-scrolling:touch;height:100%;overflow-y:auto;position:relative}.mobile-pull-to-refresh__indicator{align-items:center;color:var(--mobile-text-secondary,#64748b);display:flex;gap:var(--mobile-space-sm,8px);justify-content:center;overflow:hidden;transition:height .2s ease}.mobile-pull-to-refresh__icon{align-items:center;display:flex;transition:transform .2s ease}.mobile-pull-to-refresh__icon--spinning{animation:mobileSpin .8s linear infinite}.mobile-pull-to-refresh__text{font-size:var(--mobile-font-sm,13px);white-space:nowrap}.mobile-pull-to-refresh__content{min-height:100%}.mobile-reminder{-webkit-tap-highlight-color:transparent;align-items:flex-end;background:rgba(0,0,0,.5);bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.mobile-reminder__sheet{animation:mobile-reminder-slide-up .3s ease;background:var(--mobile-bg-primary);border-radius:var(--mobile-radius-xl) var(--mobile-radius-xl) 0 0;display:flex;flex-direction:column;max-height:85dvh;overflow:hidden;width:100%}@keyframes mobile-reminder-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.mobile-reminder__header{align-items:center;border-bottom:1px solid var(--mobile-border-light);display:flex;flex-shrink:0;justify-content:space-between;padding:var(--mobile-space-md) var(--mobile-space-lg)}.mobile-reminder__header h3{color:var(--mobile-text-primary);font-size:var(--mobile-font-lg);font-weight:var(--mobile-font-semibold);margin:0}.mobile-reminder__close{-webkit-tap-highlight-color:transparent;align-items:center;background:var(--mobile-bg-tertiary);border:none;border-radius:50%;color:var(--mobile-text-secondary);cursor:pointer;display:flex;font-size:var(--mobile-font-lg);height:32px;justify-content:center;transition:background-color var(--mobile-transition-fast);width:32px}.mobile-reminder__close:active{background:var(--mobile-border-light)}.mobile-reminder__content{-webkit-overflow-scrolling:touch;flex:1;overflow-y:auto;padding:var(--mobile-space-md) var(--mobile-space-lg);padding-bottom:calc(var(--mobile-space-lg) + var(--mobile-safe-area-bottom))}.mobile-reminder__section{margin-bottom:var(--mobile-space-lg)}.mobile-reminder__section-title{color:var(--mobile-text-tertiary);font-size:var(--mobile-font-sm);font-weight:var(--mobile-font-medium);letter-spacing:.5px;margin-bottom:var(--mobile-space-sm);text-transform:uppercase}.mobile-reminder__row{align-items:center;border-bottom:1px solid var(--mobile-border-light);display:flex;justify-content:space-between;padding:var(--mobile-space-md) 0}.mobile-reminder__row:last-child{border-bottom:none}.mobile-reminder__label{color:var(--mobile-text-primary);flex:1;font-size:var(--mobile-font-md)}.mobile-reminder__toggle{-webkit-tap-highlight-color:transparent;background:#bfbfbf;border:none;border-radius:var(--mobile-radius-full);cursor:pointer;flex-shrink:0;height:28px;position:relative;transition:background-color var(--mobile-transition-fast);width:48px}.mobile-reminder__toggle--active{background:#1890ff}.mobile-reminder__toggle:after{background:#fff;border-radius:50%;box-shadow:0 1px 3px rgba(0,0,0,.15);content:"";height:24px;left:2px;position:absolute;top:2px;transition:transform var(--mobile-transition-fast);width:24px}.mobile-reminder__toggle--active:after{transform:translateX(20px)}.mobile-reminder__time-input{-webkit-tap-highlight-color:transparent;background:var(--mobile-bg-primary);border:1px solid var(--mobile-border-medium);border-radius:var(--mobile-radius-md);color:var(--mobile-text-primary);font-size:var(--mobile-font-md);padding:var(--mobile-space-xs) var(--mobile-space-sm);text-align:center;width:100px}.mobile-reminder__time-input:focus{border-color:#1890ff;box-shadow:0 0 0 2px rgba(24,144,255,.2);outline:none}.mobile-reminder__form{background:var(--mobile-bg-secondary);border-radius:var(--mobile-radius-lg);margin-top:var(--mobile-space-sm);padding:var(--mobile-space-md)}.mobile-reminder__form-row{display:flex;gap:var(--mobile-space-sm);margin-bottom:var(--mobile-space-sm)}.mobile-reminder__form-row:last-child{margin-bottom:0}.mobile-reminder__form-input{-webkit-tap-highlight-color:transparent;background:var(--mobile-bg-primary);border:1px solid var(--mobile-border-medium);border-radius:var(--mobile-radius-md);color:var(--mobile-text-primary);flex:1;font-size:var(--mobile-font-md);padding:var(--mobile-space-sm) var(--mobile-space-md)}.mobile-reminder__form-input:focus{border-color:#1890ff;box-shadow:0 0 0 2px rgba(24,144,255,.2);outline:none}.mobile-reminder__form-select{-webkit-tap-highlight-color:transparent;background:var(--mobile-bg-primary);border:1px solid var(--mobile-border-medium);border-radius:var(--mobile-radius-md);color:var(--mobile-text-primary);font-size:var(--mobile-font-md);min-width:90px;padding:var(--mobile-space-sm) var(--mobile-space-md)}.mobile-reminder__form-select:focus{border-color:#1890ff;box-shadow:0 0 0 2px rgba(24,144,255,.2);outline:none}.mobile-reminder__form-button{-webkit-tap-highlight-color:transparent;background:#1890ff;border:none;border-radius:var(--mobile-radius-md);color:#fff;cursor:pointer;font-size:var(--mobile-font-md);font-weight:var(--mobile-font-medium);padding:var(--mobile-space-sm) var(--mobile-space-md);transition:opacity var(--mobile-transition-fast);width:100%}.mobile-reminder__form-button:active{opacity:.8}.mobile-reminder__list{margin-top:var(--mobile-space-sm)}.mobile-reminder__list-item{align-items:center;background:var(--mobile-bg-secondary);border-radius:var(--mobile-radius-md);display:flex;margin-bottom:var(--mobile-space-sm);padding:var(--mobile-space-md)}.mobile-reminder__list-item:last-child{margin-bottom:0}.mobile-reminder__list-item-info{flex:1;min-width:0}.mobile-reminder__list-item-title{color:var(--mobile-text-primary);font-size:var(--mobile-font-md);font-weight:var(--mobile-font-medium);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-reminder__list-item-meta{color:var(--mobile-text-tertiary);font-size:var(--mobile-font-xs);margin-top:2px}.mobile-reminder__list-item-delete{-webkit-tap-highlight-color:transparent;align-items:center;background:transparent;border:none;border-radius:50%;color:var(--mobile-error);cursor:pointer;display:flex;flex-shrink:0;font-size:var(--mobile-font-lg);height:32px;justify-content:center;margin-left:var(--mobile-space-sm);transition:background-color var(--mobile-transition-fast);width:32px}.mobile-reminder__list-item-delete:active{background:rgba(239,68,68,.1)}.mobile-reminder__empty{color:var(--mobile-text-tertiary);font-size:var(--mobile-font-sm);padding:var(--mobile-space-xl);text-align:center}.mobile-skeleton{background:var(--mobile-skeleton-bg,#e5e7eb);border-radius:4px;overflow:hidden;position:relative}.mobile-skeleton--circle{border-radius:50%}.mobile-skeleton--animated:after{animation:skeleton-shimmer 1.5s infinite;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.4) 50%,transparent);bottom:0;content:"";left:0;position:absolute;right:0;top:0}@keyframes skeleton-shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.mobile-skeleton-card{background:var(--mobile-bg-primary);border:1px solid var(--mobile-border);border-radius:12px;margin-bottom:12px;padding:16px}.mobile-skeleton-card__header{align-items:center;display:flex;gap:12px;margin-bottom:12px}.mobile-skeleton-card__meta{display:flex;flex:1;flex-direction:column;gap:8px}.mobile-skeleton-card__content{display:flex;flex-direction:column;gap:8px;padding-left:52px}.mobile-skeleton-list{padding:16px}.mobile-skeleton-stats{display:flex;gap:12px;padding:16px}.mobile-skeleton-stats__item{align-items:center;background:var(--mobile-bg-primary);border:1px solid var(--mobile-border);border-radius:12px;display:flex;flex:1;flex-direction:column;gap:8px;padding:16px}.mobile-skeleton-chart{padding:16px}.mobile-skeleton-page{background:var(--mobile-bg-secondary);min-height:100dvh}.mobile-skeleton-page__header{align-items:center;background:var(--mobile-bg-primary);border-bottom:1px solid var(--mobile-border);display:flex;gap:16px;padding:24px 16px}.mobile-skeleton-page__header-info{display:flex;flex-direction:column;gap:8px}@media (prefers-color-scheme:dark){.mobile-skeleton{--mobile-skeleton-bg:#374151}.mobile-skeleton--animated:after{background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.1) 50%,transparent)}}.mobile-lazy-image{background:var(--mobile-bg-secondary);height:100%;overflow:hidden;position:relative;width:100%}.mobile-lazy-image__placeholder{align-items:center;background:var(--mobile-bg-secondary);bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0}.mobile-lazy-image__spinner{opacity:.5}.mobile-lazy-image__error{align-items:center;background:var(--mobile-bg-secondary);bottom:0;color:var(--mobile-text-tertiary);display:flex;justify-content:center;left:0;position:absolute;right:0;top:0}.mobile-lazy-image__error-icon{opacity:.5}.mobile-lazy-image__img{height:100%;object-fit:cover;opacity:0;transition:opacity .3s ease;width:100%}.mobile-lazy-image__img--loaded{opacity:1}.mobile-study-record-detail{background:var(--mobile-bg-primary,#f5f7fa);min-height:100%;padding:var(--mobile-space-md,16px);padding-bottom:calc(var(--mobile-space-md, 16px) + env(safe-area-inset-bottom, 0px))}.mobile-study-record-detail__header{align-items:center;display:flex;gap:var(--mobile-space-sm,12px);justify-content:space-between;margin-bottom:var(--mobile-space-lg,24px);padding-top:var(--mobile-space-sm,12px)}.mobile-study-record-detail__back,.mobile-study-record-detail__share{align-items:center;background:var(--mobile-bg-secondary,#fff);border:none;border-radius:50%;color:var(--mobile-text-primary,#262626);cursor:pointer;display:flex;flex-shrink:0;height:36px;justify-content:center;transition:background-color .2s;width:36px}.mobile-study-record-detail__back:active,.mobile-study-record-detail__share:active{background:var(--mobile-bg-tertiary,#f0f0f0)}.mobile-study-record-detail__share{color:var(--mobile-text-secondary,#595959)}.mobile-study-record-detail__title{color:var(--mobile-text-primary,#262626);flex:1;font-size:var(--mobile-font-lg,18px);font-weight:600;text-align:center}.mobile-study-record-detail__info-card{background:var(--mobile-bg-secondary,#fff);border-radius:var(--mobile-radius-lg,16px);box-shadow:0 2px 8px rgba(0,0,0,.08);margin-bottom:var(--mobile-space-md,16px);padding:var(--mobile-space-lg,20px)}.mobile-study-record-detail__info-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--mobile-space-sm,12px)}.mobile-study-record-detail__subject{align-items:center;display:flex;gap:var(--mobile-space-xs,8px)}.mobile-study-record-detail__subject-icon{font-size:24px;line-height:1}.mobile-study-record-detail__subject-name{color:var(--mobile-text-primary,#262626);font-size:var(--mobile-font-md,16px);font-weight:500}.mobile-study-record-detail__status{border-radius:12px;font-size:var(--mobile-font-xs,12px);font-weight:500;padding:4px 10px}.mobile-study-record-detail__status--completed{background:#f6ffed;color:#52c41a}.mobile-study-record-detail__status--in_progress{background:#e6f7ff;color:#1890ff}.mobile-study-record-detail__title-text{color:var(--mobile-text-primary,#262626);font-size:var(--mobile-font-xl,20px);font-weight:600;line-height:1.4;margin-bottom:var(--mobile-space-xs,8px)}.mobile-study-record-detail__time{color:var(--mobile-text-tertiary,#8c8c8c);font-size:var(--mobile-font-sm,14px)}.mobile-study-record-detail__stats-card{background:var(--mobile-bg-secondary,#fff);border-radius:var(--mobile-radius-lg,16px);box-shadow:0 2px 8px rgba(0,0,0,.08);margin-bottom:var(--mobile-space-md,16px);padding:var(--mobile-space-lg,20px)}.mobile-study-record-detail__stats-main{align-items:center;display:flex;gap:var(--mobile-space-lg,20px);margin-bottom:var(--mobile-space-md,16px)}.mobile-study-record-detail__accuracy{align-items:center;display:flex;flex-direction:column;flex-shrink:0;text-align:center}.mobile-study-record-detail__accuracy-value{font-size:36px;font-weight:700;line-height:1.2}.mobile-study-record-detail__accuracy-label{color:var(--mobile-text-secondary,#595959);font-size:var(--mobile-font-sm,14px);margin-top:2px}.mobile-study-record-detail__accuracy-badge{border-radius:10px;font-size:var(--mobile-font-xs,12px);font-weight:500;margin-top:var(--mobile-space-xs,8px);padding:2px 8px}.mobile-study-record-detail__stats-divider{background:var(--mobile-border-color,#e8e8e8);flex-shrink:0;height:80px;width:1px}.mobile-study-record-detail__stats-grid{display:grid;flex:1;gap:var(--mobile-space-md,16px);grid-template-columns:repeat(2,1fr)}.mobile-study-record-detail__stat-item{text-align:center}.mobile-study-record-detail__stat-value{color:var(--mobile-text-primary,#262626);font-size:var(--mobile-font-xl,20px);font-weight:600;line-height:1.3}.mobile-study-record-detail__stat-label{color:var(--mobile-text-tertiary,#8c8c8c);font-size:var(--mobile-font-xs,12px);margin-top:2px}.mobile-study-record-detail__progress{align-items:center;border-top:1px solid var(--mobile-border-color,#f0f0f0);display:flex;gap:var(--mobile-space-sm,12px);padding-top:var(--mobile-space-md,16px)}.mobile-study-record-detail__progress-bar{background:var(--mobile-border-color,#e8e8e8);border-radius:4px;flex:1;height:8px;overflow:hidden}.mobile-study-record-detail__progress-fill{border-radius:4px;height:100%;transition:width .5s ease}.mobile-study-record-detail__progress-text{color:var(--mobile-text-secondary,#595959);flex-shrink:0;font-size:var(--mobile-font-sm,14px)}.mobile-study-record-detail__actions{background:var(--mobile-bg-secondary,#fff);border-radius:var(--mobile-radius-lg,16px);box-shadow:0 2px 8px rgba(0,0,0,.08);padding:var(--mobile-space-lg,20px)}.mobile-study-record-detail__btn{align-items:center;border:none;border-radius:var(--mobile-radius-md,12px);cursor:pointer;display:flex;font-size:var(--mobile-font-md,16px);font-weight:500;height:48px;justify-content:center;transition:all .2s;width:100%}.mobile-study-record-detail__btn:active{transform:scale(.98)}.mobile-study-record-detail__btn--primary{background:var(--mobile-primary,#1890ff);color:#fff}.mobile-study-record-detail__btn--primary:active{background:#40a9ff}.mobile-study-record-detail__actions-row{display:flex;gap:var(--mobile-space-sm,12px);margin-top:var(--mobile-space-sm,12px)}.mobile-study-record-detail__actions-row .mobile-study-record-detail__btn{flex:1}.mobile-study-record-detail__btn--secondary{background:var(--mobile-bg-tertiary,#f5f5f5);border:1px solid var(--mobile-border-color,#e8e8e8);color:var(--mobile-text-primary,#262626)}.mobile-study-record-detail__btn--secondary:active{background:var(--mobile-border-color,#e8e8e8)}.mobile-study-record-detail__btn--danger{background:#fff1f0;border-color:#ffccc7;color:#f5222d}.mobile-study-record-detail__btn--danger:active{background:#ffccc7}.mobile-study-record-detail__progress-hint{color:var(--mobile-text-secondary,#595959);font-size:var(--mobile-font-sm,14px);margin-top:var(--mobile-space-sm,12px);text-align:center}.mobile-study-record-detail__empty{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:var(--mobile-space-3xl,48px) var(--mobile-space-md,16px);text-align:center}.mobile-study-record-detail__empty-icon{font-size:64px;margin-bottom:var(--mobile-space-md,16px);opacity:.5}.mobile-study-record-detail__empty-title{color:var(--mobile-text-primary,#262626);font-size:var(--mobile-font-lg,18px);font-weight:600;margin-bottom:var(--mobile-space-xs,8px)}.mobile-study-record-detail__empty-desc{color:var(--mobile-text-secondary,#595959);font-size:var(--mobile-font-sm,14px);margin-bottom:var(--mobile-space-lg,24px)}.mobile-study-record-detail__empty-btn{background:var(--mobile-primary,#1890ff);border:none;border-radius:var(--mobile-radius-md,12px);color:#fff;cursor:pointer;font-size:var(--mobile-font-md,16px);font-weight:500;padding:10px 24px;transition:background-color .2s}.mobile-study-record-detail__empty-btn:active{background:#40a9ff}.mobile-study-record-detail__loading{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:var(--mobile-space-3xl,48px)}@media (prefers-color-scheme:dark){:root{--mobile-bg-primary:#fff!important;--mobile-bg-secondary:#f8fafc!important;--mobile-bg-tertiary:#f1f5f9!important;--mobile-text-primary:#1e293b!important;--mobile-text-secondary:#64748b!important;--mobile-text-tertiary:#94a3b8!important;--mobile-border-light:#e2e8f0!important;--mobile-border-medium:#cbd5e1!important;--mobile-border-dark:#94a3b8!important;--mobile-shadow-sm:0 1px 2px 0 rgba(0,0,0,.05)!important;--mobile-shadow-md:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06)!important;--mobile-shadow-lg:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05)!important}}.mobile-toast{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:var(--mobile-radius-lg);font-size:var(--mobile-font-sm);font-weight:var(--mobile-font-medium);left:50%;line-height:var(--mobile-line-height-normal);max-width:calc(100vw - 32px);opacity:0;overflow:hidden;padding:12px 20px;pointer-events:none;position:fixed;text-align:center;text-overflow:ellipsis;top:calc(var(--mobile-safe-area-top) + 12px);transform:translateX(-50%) translateY(-120%);transition:transform .3s cubic-bezier(.4,0,.2,1),opacity .3s ease;white-space:nowrap;z-index:10000}.mobile-toast--show{opacity:1;pointer-events:auto;transform:translateX(-50%) translateY(0)}.mobile-toast--success{background:rgba(16,185,129,.95);box-shadow:0 4px 12px rgba(16,185,129,.3);color:#fff}.mobile-toast--error{background:rgba(239,68,68,.95);box-shadow:0 4px 12px rgba(239,68,68,.3);color:#fff}.mobile-toast__message{align-items:center;display:flex;gap:8px;justify-content:center}.mobile-toast--success .mobile-toast__message:before{content:"✓";font-size:12px}.mobile-toast--error .mobile-toast__message:before,.mobile-toast--success .mobile-toast__message:before{align-items:center;background:hsla(0,0%,100%,.25);border-radius:50%;display:inline-flex;flex-shrink:0;font-weight:700;height:18px;justify-content:center;width:18px}.mobile-toast--error .mobile-toast__message:before{content:"✕";font-size:11px}.mobile-page-transition{display:flex;flex:1 1 0%;flex-direction:column;min-height:0;overflow:hidden;transition-duration:var(--transition-duration,.3s);transition-property:opacity,transform;transition-timing-function:cubic-bezier(.4,0,.2,1)}.mobile-page-transition--fade{opacity:0}.mobile-page-transition--fade.mobile-page-transition--visible{opacity:1;transform:none!important}.mobile-page-transition--slide{opacity:0;transform:translateX(0)!important}.mobile-page-transition--slide.mobile-page-transition--visible{opacity:1}.mobile-page-transition--scale{opacity:0;transform:none!important}.mobile-page-transition--scale.mobile-page-transition--visible{opacity:1}.mobile-gpu-accelerated{backface-visibility:hidden;-webkit-backface-visibility:hidden;transform:translateZ(0);will-change:transform}@media (prefers-reduced-motion:reduce){.mobile-animate-bounce,.mobile-animate-fade-in,.mobile-animate-pulse,.mobile-animate-scale-in,.mobile-animate-shake,.mobile-animate-slide-right,.mobile-animate-slide-up,.mobile-animate-spin,.mobile-page-transition{animation:none!important;transition:none!important}}:root{--mobile-primary:#4f46e5;--mobile-primary-light:#6366f1;--mobile-primary-dark:#4338ca;--mobile-primary-gradient:linear-gradient(135deg,#4f46e5,#6366f1);--mobile-secondary:#64748b;--mobile-success:#10b981;--mobile-warning:#f59e0b;--mobile-error:#ef4444;--mobile-info:#3b82f6;--mobile-bg-primary:#fff;--mobile-bg-secondary:#f8fafc;--mobile-bg-tertiary:#f1f5f9;--mobile-bg-dark:#0f172a;--mobile-text-primary:#1e293b;--mobile-text-secondary:#64748b;--mobile-text-tertiary:#94a3b8;--mobile-text-inverse:#fff;--mobile-text-link:#4f46e5;--mobile-border-light:#e2e8f0;--mobile-border-medium:#cbd5e1;--mobile-border-dark:#94a3b8;--mobile-space-xs:4px;--mobile-space-sm:8px;--mobile-space-md:16px;--mobile-space-lg:24px;--mobile-space-xl:32px;--mobile-space-xxl:48px;--mobile-font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--mobile-font-xs:12px;--mobile-font-sm:14px;--mobile-font-md:16px;--mobile-font-lg:18px;--mobile-font-xl:20px;--mobile-font-xxl:24px;--mobile-font-xxxl:32px;--mobile-font-normal:400;--mobile-font-medium:500;--mobile-font-semibold:600;--mobile-font-bold:700;--mobile-line-height-tight:1.25;--mobile-line-height-normal:1.5;--mobile-line-height-relaxed:1.75;--mobile-radius-sm:4px;--mobile-radius-md:8px;--mobile-radius-lg:12px;--mobile-radius-xl:16px;--mobile-radius-full:9999px;--mobile-shadow-sm:0 1px 2px 0 rgba(0,0,0,.05);--mobile-shadow-md:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06);--mobile-shadow-lg:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05);--mobile-safe-area-top:env(safe-area-inset-top,0px);--mobile-safe-area-bottom:env(safe-area-inset-bottom,0px);--mobile-safe-area-left:env(safe-area-inset-left,0px);--mobile-safe-area-right:env(safe-area-inset-right,0px);--mobile-header-height:44px;--mobile-tab-bar-height:56px;--mobile-content-max-width:100%;--mobile-transition-fast:150ms ease;--mobile-transition-normal:250ms ease;--mobile-transition-slow:350ms ease;--safe-area-top:env(safe-area-inset-top,0px);--safe-area-bottom:env(safe-area-inset-bottom,0px);--safe-area-left:env(safe-area-inset-left,0px);--safe-area-right:env(safe-area-inset-right,0px);--mobile-min-touch-target:44px;--mobile-input-min-font:16px}@media (prefers-color-scheme:dark){:root{--mobile-bg-primary:#0f172a;--mobile-bg-secondary:#1e293b;--mobile-bg-tertiary:#334155;--mobile-text-primary:#f8fafc;--mobile-text-secondary:#cbd5e1;--mobile-text-tertiary:#64748b;--mobile-border-light:#334155;--mobile-border-medium:#475569;--mobile-border-dark:#64748b;--mobile-shadow-sm:0 1px 2px 0 rgba(0,0,0,.3);--mobile-shadow-md:0 4px 6px -1px rgba(0,0,0,.4),0 2px 4px -1px rgba(0,0,0,.2);--mobile-shadow-lg:0 10px 15px -3px rgba(0,0,0,.4),0 4px 6px -2px rgba(0,0,0,.2)}}.mobile-virtual-list{-webkit-overflow-scrolling:touch;flex:1;min-height:0;overflow-y:auto}.mobile-virtual-list__content{position:relative}.mobile-virtual-list__viewport{will-change:transform}.mobile-wrongbook__stats{align-items:center;background:var(--mobile-bg-primary);border-radius:var(--mobile-radius-xl);box-shadow:var(--mobile-shadow-sm);display:flex;height:120px;margin-bottom:var(--mobile-space-md);padding:var(--mobile-space-md)}.mobile-wrongbook__stats-item{align-items:center;display:flex;flex:1;flex-direction:column;justify-content:center}.mobile-wrongbook__stats-value{color:#262626;font-size:var(--mobile-font-xxl);font-weight:var(--mobile-font-bold);line-height:var(--mobile-line-height-tight)}.mobile-wrongbook__stats-value--pending{color:#faad14}.mobile-wrongbook__stats-value--resolved{color:#52c41a}.mobile-wrongbook__stats-label{color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm);margin-top:var(--mobile-space-xs)}.mobile-wrongbook__header-actions{align-items:center;display:flex;gap:var(--mobile-space-sm)}.mobile-wrongbook__header-btn{-webkit-tap-highlight-color:transparent;background:none;border:none;color:var(--mobile-text-secondary);cursor:pointer;padding:var(--mobile-space-xs)}.mobile-wrongbook__refresh{align-items:center;color:var(--mobile-text-secondary);display:flex;font-size:var(--mobile-font-sm);gap:var(--mobile-space-xs);height:0;justify-content:center;overflow:hidden;transition:height var(--mobile-transition-normal)}.mobile-wrongbook__refresh--visible{height:44px}.mobile-wrongbook__refresh-arrow{align-items:center;display:inline-flex;font-size:var(--mobile-font-md);justify-content:center;transition:transform var(--mobile-transition-fast)}.mobile-wrongbook__refresh-arrow--up{transform:rotate(180deg)}.mobile-wrongbook__refresh-spinner{animation:mobile-refresh-spin .6s linear infinite;border:2px solid var(--mobile-border-medium);border-radius:50%;border-top:2px solid #1890ff;display:inline-block;height:16px;width:16px}@keyframes mobile-refresh-spin{to{transform:rotate(1turn)}}.mobile-wrongbook__refresh-text{color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm)}.mobile-wrongbook__filter{-webkit-overflow-scrolling:touch;display:flex;gap:var(--mobile-space-sm);margin-bottom:var(--mobile-space-xs);overflow-x:auto;padding-bottom:var(--mobile-space-sm);scrollbar-width:none}.mobile-wrongbook__filter::-webkit-scrollbar{display:none}.mobile-wrongbook__filter-tag{-webkit-tap-highlight-color:transparent;align-items:center;background:#f5f5f5;border:none;border-radius:var(--mobile-radius-xl);color:#595959;cursor:pointer;display:inline-flex;font-size:var(--mobile-font-sm);gap:var(--mobile-space-xs);padding:var(--mobile-space-xs) var(--mobile-space-md);transition:all var(--mobile-transition-fast);white-space:nowrap}.mobile-wrongbook__filter-tag--active{background:#1890ff;color:#fff}.mobile-wrongbook__filter-count{font-size:var(--mobile-font-xs);opacity:.8}.mobile-wrongbook__list{display:flex;flex-direction:column;gap:var(--mobile-space-sm)}.mobile-wrongbook__item{align-items:flex-start;background:var(--mobile-bg-primary);border-radius:var(--mobile-radius-lg);box-shadow:var(--mobile-shadow-sm);cursor:pointer;display:flex;gap:var(--mobile-space-md);padding:var(--mobile-space-md);transition:transform var(--mobile-transition-fast)}.mobile-wrongbook__item:active{transform:translateY(-1px)}.mobile-wrongbook__item-icon{align-items:center;border-radius:var(--mobile-radius-md);display:flex;flex-shrink:0;font-size:18px;height:36px;justify-content:center;width:36px}.mobile-wrongbook__item-icon--wrong{background:#fff1f0;color:#f5222d}.mobile-wrongbook__item-icon--resolved{background:#f6ffed;color:#52c41a}.mobile-wrongbook__item-content{flex:1;min-width:0}.mobile-wrongbook__item-subject{color:var(--mobile-text-primary);font-size:var(--mobile-font-md);font-weight:var(--mobile-font-medium);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-wrongbook__item-point{color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-wrongbook__item-meta{align-items:center;color:var(--mobile-text-tertiary);display:flex;font-size:var(--mobile-font-xs);gap:var(--mobile-space-md);margin-top:var(--mobile-space-xs)}.mobile-wrongbook__item-status{align-items:center;border-radius:var(--mobile-radius-full);display:inline-flex;font-size:var(--mobile-font-xs);font-weight:var(--mobile-font-medium);padding:2px 8px}.mobile-wrongbook__item-status--pending{background:#fff7e6;color:#faad14}.mobile-wrongbook__item-status--resolved{background:#f6ffed;color:#52c41a}.mobile-wrongbook__load-more{align-items:center;display:flex;justify-content:center;padding:var(--mobile-space-md)}.mobile-wrongbook__load-more-text{color:var(--mobile-text-tertiary);font-size:var(--mobile-font-sm)}.mobile-wrongbook__bottom-bar{background:var(--mobile-bg-primary);bottom:0;box-shadow:0 -1px 4px rgba(0,0,0,.06);left:0;padding:var(--mobile-space-md);padding-bottom:calc(var(--mobile-space-md) + var(--mobile-safe-area-bottom));position:fixed;right:0;z-index:50}.mobile-wrongbook__review-btn{-webkit-tap-highlight-color:transparent;background:#1890ff;border:none;border-radius:var(--mobile-radius-lg);color:#fff;cursor:pointer;font-size:var(--mobile-font-lg);font-weight:var(--mobile-font-medium);padding:var(--mobile-space-md);transition:opacity var(--mobile-transition-fast);width:100%}.mobile-wrongbook__review-btn:active{opacity:.85}.mobile-wrongbook__review{background:var(--mobile-bg-secondary);bottom:0;display:flex;flex-direction:column;left:0;position:fixed;right:0;top:0;z-index:200}.mobile-wrongbook__review-header{align-items:center;background:var(--mobile-bg-primary);border-bottom:1px solid var(--mobile-border-light);display:flex;gap:var(--mobile-space-sm);justify-content:space-between;padding:var(--mobile-space-md);padding-top:calc(var(--mobile-space-md) + var(--mobile-safe-area-top))}.mobile-wrongbook__review-title{color:var(--mobile-text-primary);font-size:var(--mobile-font-lg);font-weight:var(--mobile-font-semibold)}.mobile-wrongbook__review-progress{color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm);margin-left:auto}.mobile-wrongbook__review-close{color:var(--mobile-text-secondary)}.mobile-wrongbook__review-back,.mobile-wrongbook__review-close{align-items:center;background:none;border:none;cursor:pointer;display:flex;flex-shrink:0;height:32px;justify-content:center;width:32px}.mobile-wrongbook__review-back{-webkit-tap-highlight-color:transparent;color:var(--mobile-text-primary);font-size:var(--mobile-font-lg)}.mobile-wrongbook__review-body{-webkit-overflow-scrolling:touch;flex:1;overflow-y:auto;padding:var(--mobile-space-md)}.mobile-wrongbook__review-question{background:var(--mobile-bg-primary);border-radius:var(--mobile-radius-lg);margin-bottom:var(--mobile-space-md);padding:var(--mobile-space-lg)}.mobile-wrongbook__review-empty-content{color:var(--mobile-text-tertiary)}.mobile-wrongbook__review-actions{background:var(--mobile-bg-primary);border-top:1px solid var(--mobile-border-light);display:flex;flex-direction:column;gap:var(--mobile-space-sm);padding:var(--mobile-space-md);padding-bottom:calc(var(--mobile-space-md) + var(--mobile-safe-area-bottom))}.mobile-wrongbook__review-answer-btn,.mobile-wrongbook__review-hint-btn{-webkit-tap-highlight-color:transparent;background:var(--mobile-bg-primary);border:1px solid var(--mobile-border-medium);border-radius:var(--mobile-radius-md);color:var(--mobile-text-primary);cursor:pointer;font-size:var(--mobile-font-md);font-weight:var(--mobile-font-medium);padding:var(--mobile-space-sm) var(--mobile-space-md);transition:all var(--mobile-transition-fast);width:100%}.mobile-wrongbook__review-answer-btn:active,.mobile-wrongbook__review-hint-btn:active{background:var(--mobile-bg-tertiary)}.mobile-wrongbook__review-result-btns{display:flex;gap:var(--mobile-space-md)}.mobile-wrongbook__review-correct-btn{-webkit-tap-highlight-color:transparent;background:#52c41a;border:none;border-radius:var(--mobile-radius-md);color:#fff;cursor:pointer;flex:1;font-size:var(--mobile-font-md);font-weight:var(--mobile-font-medium);padding:var(--mobile-space-md);transition:opacity var(--mobile-transition-fast)}.mobile-wrongbook__review-correct-btn:active{opacity:.85}.mobile-wrongbook__review-wrong-btn{-webkit-tap-highlight-color:transparent;background:#f5222d;border:none;border-radius:var(--mobile-radius-md);color:#fff;cursor:pointer;flex:1;font-size:var(--mobile-font-md);font-weight:var(--mobile-font-medium);padding:var(--mobile-space-md);transition:opacity var(--mobile-transition-fast)}.mobile-wrongbook__review-wrong-btn:active{opacity:.85}.mobile-wrongbook__mode-select{-webkit-overflow-scrolling:touch;display:flex;flex:1;flex-direction:column;gap:var(--mobile-space-md);overflow-y:auto;padding:var(--mobile-space-lg)}.mobile-wrongbook__mode-card{-webkit-tap-highlight-color:transparent;align-items:center;background:var(--mobile-bg-primary);border:none;border-radius:var(--mobile-radius-lg);box-shadow:var(--mobile-shadow-sm);cursor:pointer;display:flex;gap:var(--mobile-space-md);height:80px;padding:var(--mobile-space-md);text-align:left;transition:transform var(--mobile-transition-fast)}.mobile-wrongbook__mode-card:active{transform:scale(.98)}.mobile-wrongbook__mode-card-icon{align-items:center;display:flex;flex-shrink:0;font-size:32px;height:48px;justify-content:center;width:48px}.mobile-wrongbook__mode-card-info{display:flex;flex-direction:column;gap:4px;min-width:0}.mobile-wrongbook__mode-card-title{color:var(--mobile-text-primary);font-size:var(--mobile-font-md);font-weight:var(--mobile-font-semibold)}.mobile-wrongbook__mode-card-desc{color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm)}.mobile-wrongbook__empty{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:var(--mobile-space-xxl);text-align:center}.mobile-wrongbook__empty-icon{font-size:48px;margin-bottom:var(--mobile-space-md)}.mobile-wrongbook__empty-title{color:var(--mobile-text-primary);font-size:var(--mobile-font-lg);font-weight:var(--mobile-font-medium);margin-bottom:var(--mobile-space-xs)}.mobile-wrongbook__empty-desc{color:var(--mobile-text-secondary);font-size:var(--mobile-font-sm)}.mobile-wrongbook-detail__overlay{align-items:flex-end;background:rgba(0,0,0,.6);bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:200}.mobile-wrongbook-detail{animation:mobile-slide-up .3s ease-out;background:var(--mobile-bg-primary);border-radius:var(--mobile-radius-xl) var(--mobile-radius-xl) 0 0;display:flex;flex-direction:column;max-height:85vh;width:100%}@keyframes mobile-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.mobile-wrongbook-detail__header{align-items:center;border-bottom:1px solid var(--mobile-border-light);display:flex;justify-content:space-between;padding:var(--mobile-space-md) var(--mobile-space-lg)}.mobile-wrongbook-detail__header-left{align-items:center;display:flex;gap:var(--mobile-space-sm)}.mobile-wrongbook-detail__subject-badge{border-radius:var(--mobile-radius-full);color:#fff;font-size:var(--mobile-font-sm);font-weight:var(--mobile-font-medium);padding:4px 12px}.mobile-wrongbook-detail__status{font-size:var(--mobile-font-sm)}.mobile-wrongbook-detail__status--resolved{align-items:center;color:#52c41a;display:flex;gap:4px}.mobile-wrongbook-detail__status--pending{color:#faad14}.mobile-wrongbook-detail__close{-webkit-tap-highlight-color:transparent;align-items:center;background:none;border:none;color:var(--mobile-text-secondary);cursor:pointer;display:flex;height:32px;justify-content:center;width:32px}.mobile-wrongbook-detail__close:active{color:var(--mobile-text-primary)}.mobile-wrongbook-detail__tabs{border-bottom:1px solid var(--mobile-border-light);display:flex}.mobile-wrongbook-detail__tab{-webkit-tap-highlight-color:transparent;background:none;border:none;color:var(--mobile-text-secondary);cursor:pointer;flex:1;font-size:var(--mobile-font-md);padding:var(--mobile-space-md);position:relative;transition:color var(--mobile-transition-fast)}.mobile-wrongbook-detail__tab--active{color:#1890ff;font-weight:var(--mobile-font-medium)}.mobile-wrongbook-detail__tab--active:after{background:#1890ff;border-radius:1px;bottom:0;content:"";height:2px;left:20%;position:absolute;right:20%}.mobile-wrongbook-detail__content{-webkit-overflow-scrolling:touch;flex:1;max-height:50vh;overflow-y:auto;padding:var(--mobile-space-lg)}.mobile-wrongbook-detail__question-text{color:var(--mobile-text-primary);font-size:var(--mobile-font-md);line-height:var(--mobile-line-height-relaxed)}.mobile-wrongbook-detail__tags{border-top:1px solid var(--mobile-border-light);margin-top:var(--mobile-space-lg);padding-top:var(--mobile-space-md)}.mobile-wrongbook-detail__tags-label{color:var(--mobile-text-secondary);display:block;font-size:var(--mobile-font-sm);margin-bottom:var(--mobile-space-sm)}.mobile-wrongbook-detail__tags-list{display:flex;flex-wrap:wrap;gap:var(--mobile-space-xs)}.mobile-wrongbook-detail__tag{background:#e6f7ff;border-radius:var(--mobile-radius-full);color:#1890ff;font-size:var(--mobile-font-xs);padding:4px 10px}.mobile-wrongbook-detail__analysis-content{color:var(--mobile-text-primary);font-size:var(--mobile-font-md);line-height:var(--mobile-line-height-relaxed)}.mobile-wrongbook-detail__history{display:flex;flex-direction:column;gap:var(--mobile-space-md)}.mobile-wrongbook-detail__history-item{align-items:center;border-bottom:1px solid var(--mobile-border-light);color:var(--mobile-text-secondary);display:flex;font-size:var(--mobile-font-sm);gap:var(--mobile-space-sm);padding:var(--mobile-space-sm) 0}.mobile-wrongbook-detail__history-item:last-child{border-bottom:none}.mobile-wrongbook-detail__history-value{color:var(--mobile-text-primary);font-weight:var(--mobile-font-medium);margin-left:auto}.mobile-wrongbook-detail__empty{align-items:center;color:var(--mobile-text-tertiary);display:flex;flex-direction:column;justify-content:center;padding:var(--mobile-space-xxl)}.mobile-wrongbook-detail__empty svg{margin-bottom:var(--mobile-space-md);opacity:.5}.mobile-wrongbook-detail__actions{background:var(--mobile-bg-primary);border-top:1px solid var(--mobile-border-light);display:flex;gap:var(--mobile-space-sm);padding:var(--mobile-space-md) var(--mobile-space-lg);padding-bottom:calc(var(--mobile-space-md) + var(--mobile-safe-area-bottom))}.mobile-wrongbook-detail__action-btn{-webkit-tap-highlight-color:transparent;align-items:center;border:none;border-radius:var(--mobile-radius-md);cursor:pointer;display:flex;flex:1;font-size:var(--mobile-font-sm);font-weight:var(--mobile-font-medium);gap:var(--mobile-space-xs);justify-content:center;padding:var(--mobile-space-sm) var(--mobile-space-md);transition:opacity var(--mobile-transition-fast)}.mobile-wrongbook-detail__action-btn:active{opacity:.85}.mobile-wrongbook-detail__action-btn--primary{background:#52c41a;color:#fff}.mobile-wrongbook-detail__action-btn--secondary{background:#1890ff;color:#fff}.mobile-wrongbook-detail__action-btn--danger{background:#fff1f0;border:1px solid #ffccc7;color:#f5222d}.ai-model-form__model-type-group{display:flex;gap:var(--space-16)}.ai-model-form__model-type-label{align-items:center;display:flex;gap:var(--space-4);white-space:nowrap}.admin-aimodels__api-url{max-width:200px;overflow:hidden;text-overflow:ellipsis}.admin-aimodels__status{border-radius:var(--radius-4);font-size:var(--text-12);padding:4px 8px}.admin-aimodels__status--enabled{background-color:#d4edda;color:#155724}.admin-aimodels__status--disabled{background-color:#f8d7da;color:#721c24}.admin-aimodels__filter-select{width:140px}.admin-aimodels__filter-select--status{width:120px}.admin-backups__toolbar{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--space-20);padding:4px var(--space-10)}.admin-backups__toolbar-actions{display:flex;gap:var(--space-12)}.admin-backups__icon{margin-right:6px}.admin-backups__filename{font-family:monospace}.admin-backups__status-column{display:flex;flex-direction:column;gap:var(--space-4)}.admin-backups__remote-status{color:var(--color-gray-500);font-size:var(--text-11)}.admin-backups__modal-content{padding:var(--space-16)}.admin-backups__warning-text{color:var(--color-red-600);font-weight:600;margin-bottom:var(--space-12)}.admin-backups__modal-desc{margin-bottom:var(--space-16)}.admin-backups__filename-highlight{font-family:monospace;font-weight:600}.admin-backups__modal-footer{display:flex;gap:var(--space-12);justify-content:flex-end;margin-top:var(--space-24)}.admin-backups__upload-section{padding:var(--space-16)}.admin-backups__upload-file-group{margin-bottom:var(--space-16)}.admin-backups__upload-success{color:var(--color-emerald-600);font-size:var(--text-13);margin-bottom:var(--space-16)}.admin-feedback-page .actions-cell{min-width:120px}.admin-feedback-page .batch-actions-bar{align-items:center;background-color:var(--color-gray-50,#f9fafb);border-radius:var(--radius-8,8px);display:flex;gap:var(--space-12,12px);margin-bottom:var(--space-16,16px);padding:var(--space-12,12px) var(--space-16,16px)}.admin-aimodels-filters,.admin-users-filters{align-items:center;background:linear-gradient(135deg,var(--color-gray-50) 0,var(--color-gray-100) 100%);border:1px solid var(--color-gray-200);border-radius:var(--radius-12);box-shadow:var(--shadow-filter);display:flex;flex-wrap:wrap;gap:var(--space-16);margin-bottom:var(--space-24);padding:var(--space-24)}.admin-search-input{background:var(--color-white);border:2px solid var(--color-gray-200);border-radius:var(--radius-12);box-shadow:var(--shadow-card);flex:1;font-size:var(--text-14);min-width:var(--width-search);padding:var(--space-12) var(--space-16);transition:var(--transition-slow)}.admin-search-input:focus{border-color:var(--color-blue-500);box-shadow:var(--shadow-filter-focus),var(--shadow-card);outline:none;transform:translateY(-1px)}.admin-search-input::placeholder{color:var(--color-gray-1100);font-style:italic}.admin-filter-select{background:var(--color-white);border:2px solid var(--color-gray-200);border-radius:var(--radius-12);box-shadow:var(--shadow-card);color:var(--color-gray-700);cursor:pointer;font-size:var(--text-14);min-width:var(--width-filter-select);padding:var(--space-12) var(--space-16);transition:var(--transition-slow)}.admin-date-input{background:transparent;border:none;font-size:var(--text-14);min-width:var(--width-filter-date);outline:none}.admin-date-input::-webkit-calendar-picker-indicator{cursor:pointer}.admin-date-range-separator{color:var(--color-gray-700);font-size:var(--text-12)}.admin-date-range{position:relative}.admin-date-range-display{align-items:center;background:var(--color-white);border:2px solid var(--color-gray-200);border-radius:var(--radius-12);box-shadow:var(--shadow-card);color:var(--color-gray-700);cursor:pointer;display:inline-flex;font-size:var(--text-14);gap:var(--space-8);padding:var(--space-8) var(--space-16);transition:var(--transition-base)}.admin-date-range-display:hover{border-color:var(--color-gray-1700);box-shadow:var(--shadow-filter-hover);transform:translateY(-1px)}.admin-date-range-label{white-space:nowrap}.admin-date-range-icon{align-items:center;color:var(--color-gray-1800);display:flex;justify-content:center}.admin-date-range-panel{background:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-12);box-shadow:var(--shadow-trial-hint);left:auto;margin-top:0;min-width:var(--width-filter-panel);padding:var(--space-12) var(--space-16);position:fixed;top:auto;z-index:var(--z-filter-panel)}.admin-date-range-actions{display:flex;gap:var(--space-8);justify-content:flex-end}.admin-date-range-calendar-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--space-8)}.admin-date-range-month{color:var(--color-gray-1500);font-size:var(--text-14);font-weight:600}.admin-date-range-nav{background:transparent;border:none;border-radius:var(--radius-6);color:var(--color-gray-700);cursor:pointer;font-size:var(--text-16);padding:var(--space-2) var(--space-4)}.admin-date-range-nav:hover{background:var(--color-gray-1200);color:var(--color-gray-1500)}.admin-date-range-weekdays{color:var(--color-gray-1900);display:grid;font-size:var(--text-12);grid-template-columns:repeat(7,1fr);margin-bottom:var(--space-4);text-align:center}.admin-date-range-weekdays span{padding:var(--space-2) 0}.admin-date-range-days{display:grid;gap:var(--space-2);grid-template-columns:repeat(7,1fr);margin-bottom:var(--space-8)}.admin-date-range-calendars{display:flex;gap:var(--space-16)}.admin-date-range-calendar{flex:1}.admin-date-cell{background:transparent;border:none;border-radius:var(--radius-full);color:var(--color-gray-1500);cursor:pointer;font-size:var(--text-13);padding:var(--space-4) 0}.admin-date-cell--muted{color:var(--color-gray-300)}.admin-date-cell--end,.admin-date-cell--start{background:var(--color-gray-1800);color:var(--color-white)}.admin-date-cell--in-range{background:var(--color-blue-100);color:var(--color-gray-1500)}.admin-filter-select:focus{border-color:var(--color-blue-500);box-shadow:var(--shadow-filter-focus),var(--shadow-card);outline:none;transform:translateY(-1px)}.admin-filter-select:hover{border-color:var(--color-gray-1700);box-shadow:var(--shadow-filter-hover);transform:translateY(-1px)}.admin-filter-select option{background:var(--color-white);color:var(--color-gray-700);padding:var(--space-8)}@media (max-width:768px){.admin-aimodels-filters,.admin-users-filters{align-items:stretch;flex-direction:column;gap:var(--space-12);padding:var(--space-16)}.admin-filter-select,.admin-search-input{min-width:auto}}.log-filter__select{background:transparent;border:none;min-width:140px;padding:0}.log-filter__select--module{min-width:160px}.admin-notifications__filter-select{background:transparent;border:none;padding:0}.admin-notifications__content-preview{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-operation-logs__content{margin-top:var(--space-16)}.admin-operation-logs__loading{padding:var(--space-24);text-align:center}.admin-operation-logs__pagination-wrapper{padding:var(--space-16)}.publisher-form__checkbox-group{align-items:center;display:flex;gap:var(--space-8)}.publisher-form__checkbox-label{margin-bottom:0}.publisher-form__rate-hint{color:var(--color-text-tertiary)}.publisher-table__name-cell{align-items:center;display:flex;gap:var(--space-8)}.publisher-table__logo{border-radius:var(--radius-4);height:24px;object-fit:cover;width:24px}.publisher-table__status{font-weight:700}.publisher-table__status--active{color:#52c41a}.publisher-table__status--inactive{color:#faad14}.reset-password__container{align-items:center;display:flex;position:relative}.reset-password__input{flex:1;padding-right:40px}.reset-password__toggle-btn{background:none;border:none;color:var(--color-gray-500);cursor:pointer;padding:var(--space-4);position:absolute;right:var(--space-12)}.reset-password__error-message{padding:20px 0;text-align:center}.reset-password__user-info{background:var(--color-gray-50);border-radius:var(--radius-8);font-size:var(--text-14);margin-bottom:var(--space-16);padding:var(--space-12)}.reset-password__user-info-title{font-weight:500;margin:0 0 var(--space-8) 0}.reset-password__user-info-row{margin:var(--space-4) 0}.reset-password__message{margin-bottom:var(--space-16)}.backup-settings-drawer__footer{display:flex;gap:var(--space-12);justify-content:flex-end}.backup-settings-drawer__section{margin-bottom:var(--space-32)}.backup-settings-drawer__section-title{border-bottom:1px solid var(--color-gray-200);font-size:var(--text-16);font-weight:600;margin-bottom:var(--space-16);padding-bottom:var(--space-8)}.backup-settings-drawer__form-group{margin-bottom:var(--space-16)}.backup-settings-drawer__form-group--header{align-items:center;display:flex;justify-content:space-between}.backup-settings-drawer__form-group--header .form-label{margin-bottom:0}.backup-settings-drawer__preset-card{background:var(--color-gray-50);border-radius:var(--radius-8);padding:var(--space-16)}.backup-settings-drawer__preset-group{margin-bottom:var(--space-12)}.backup-settings-drawer__preset-label{font-size:var(--text-13)}.backup-settings-drawer__preset-buttons{display:flex;gap:var(--space-8)}.backup-settings-drawer__cron-label{font-size:var(--text-13)}.backup-settings-drawer__cron-input{font-family:monospace}.backup-settings-drawer__cron-hint{color:var(--color-gray-500);font-size:var(--text-12);margin-top:var(--space-4)}.backup-settings-drawer__next-run{color:var(--color-emerald-600);font-size:var(--text-13);margin-top:var(--space-12)}.backup-settings-drawer__keep-count-group{margin-top:var(--space-24)}.backup-settings-drawer__keep-count-input-wrapper{align-items:center;display:flex;gap:var(--space-8)}.backup-settings-drawer__keep-count-input{width:100px}.backup-settings-drawer__keep-count-unit{color:var(--color-gray-500);font-size:var(--text-14)}.backup-settings-drawer__storage-local{margin-bottom:var(--space-16)}.backup-settings-drawer__storage-local-header{align-items:center;display:flex;gap:var(--space-8);margin-bottom:var(--space-8)}.backup-settings-drawer__storage-local-label{font-size:var(--text-14);font-weight:500}.backup-settings-drawer__storage-local-badge{background:var(--color-gray-100);border-radius:var(--radius-4);color:var(--color-gray-500);font-size:var(--text-12);padding:2px var(--space-6)}.backup-settings-drawer__storage-local-desc{color:var(--color-gray-500);font-size:var(--text-13)}.backup-settings-drawer__remote-section{border-top:1px dashed var(--color-gray-200);margin-top:var(--space-16);padding-top:var(--space-16)}.backup-settings-drawer__remote-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--space-12)}.backup-settings-drawer__remote-header .form-label{margin-bottom:0}.backup-settings-drawer__remote-servers{margin-top:var(--space-16)}.backup-settings-drawer__servers-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--space-12)}.backup-settings-drawer__servers-title{font-size:var(--text-14);font-weight:600}.backup-settings-drawer__empty-servers{border:1px dashed var(--color-gray-300);border-radius:var(--radius-6);color:var(--color-gray-400);font-size:var(--text-13);padding:var(--space-8);text-align:center}.backup-settings-drawer__servers-list{display:flex;flex-direction:column;gap:var(--space-16)}.backup-settings-drawer__server-card{background:var(--color-gray-50);border:1px solid var(--color-gray-200);border-radius:var(--radius-8);padding:var(--space-16)}.backup-settings-drawer__server-grid-2fr-1fr{display:grid;gap:var(--space-12);grid-template-columns:2fr 1fr;margin-bottom:var(--space-12)}.backup-settings-drawer__server-grid-1fr-1fr{display:grid;gap:var(--space-12);grid-template-columns:1fr 1fr;margin-bottom:var(--space-12)}.backup-settings-drawer__server-actions{display:flex;justify-content:space-between;margin-top:var(--space-8)}.backup-settings-drawer__server-actions-hint{color:var(--color-gray-500);font-size:var(--text-12)}.required-star{color:var(--color-red-600)}.user-form-modal__form-row{display:block}.user-form-modal__rate-hint,.user-table__lock-reason{color:var(--color-text-tertiary)}.user-table__lock-reason{font-size:var(--text-12);margin-top:2px}.admin-users-layout__selection-bar{background-color:var(--color-gray-100);border-radius:var(--radius-4);margin-bottom:var(--space-20);padding:var(--space-12)}.admin-users-layout__selection-actions{gap:var(--space-8);margin-top:var(--space-8)}.admin-users-layout__empty-state{color:var(--color-text-tertiary);padding:var(--space-40);text-align:center}.admin-users-layout__selection-bar{background-color:#f0f0f0;border-radius:4px;margin-bottom:20px;padding:12px}.admin-users-layout__selection-actions{display:flex;gap:8px;margin-top:8px}.admin-users-layout__empty-text{color:#666;padding:40px;text-align:center}.chat-message-paragraph{line-height:1.6;margin:0 0 8px}.chat-reasoning-details{border:1px solid var(--color-gray-200,#e5e7eb);border-radius:var(--radius-8,8px);margin-bottom:var(--space-12,12px);overflow:hidden}.chat-reasoning-summary{align-items:center;background:var(--color-gray-50,#f9fafb);color:var(--color-gray-500,#6b7280);cursor:pointer;display:flex;font-size:var(--text-13,13px);gap:6px;padding:8px var(--space-12,12px);user-select:none}.chat-reasoning-icon{font-size:var(--text-16,16px)}.chat-reasoning-status{font-size:var(--text-12,12px);opacity:.7}.chat-reasoning-content{background:var(--color-gray-50,#f8fafc);border-top:1px solid var(--color-gray-200,#e5e7eb);color:var(--color-gray-600,#4b5563);font-size:var(--text-13,13px);max-height:300px;overflow-y:auto;padding:var(--space-12,12px)}.chat-inline-code{background:rgba(0,0,0,.05);border-radius:var(--radius-4,4px);padding:2px 4px}.chat-thinking-cursor{animation:blink 1s infinite;background:var(--color-primary-500,#3b82f6);display:inline-block;height:14px;margin-left:2px;vertical-align:middle;width:6px}.ai-chat-drawer-overlay{bottom:0;left:0;position:fixed;right:0;top:0;z-index:10000}.ai-chat-drawer-backdrop{backdrop-filter:blur(4px);background:rgba(0,0,0,.5);bottom:0;left:0;position:absolute;right:0;top:0}.ai-chat-drawer-panel{animation:slideIn .3s ease-out;background:var(--color-white,#fff);box-shadow:-4px 0 24px rgba(0,0,0,.12);display:flex;flex-direction:column;height:100%;position:absolute;right:0;top:0;width:60%}.ai-chat-drawer-header{align-items:center;background:var(--color-gray-50,#f8fafc);border-bottom:1px solid var(--color-gray-100,#f1f5f9);display:flex;justify-content:space-between;padding:var(--space-16,16px)}.ai-chat-drawer-title{color:var(--color-gray-700,#334155);font-size:var(--text-18,18px);font-weight:600;margin:0}.ai-chat-drawer-close{background:transparent;border:none;color:var(--color-gray-400,#94a3b8);cursor:pointer;font-size:var(--text-18,18px);line-height:1;padding:4px}.ai-chat-drawer-content{flex:1;overflow:hidden}.ai-thought-window{animation:ai-slideIn .3s ease-out;background-color:var(--color-white);border:1px solid var(--color-gray-200);border-radius:12px;bottom:405px;box-shadow:0 4px 24px rgba(0,0,0,.12);display:flex;flex-direction:column;max-height:500px;overflow:hidden;position:fixed;right:24px;width:360px;z-index:10000}.ai-thought-window__header{align-items:center;background:var(--color-gray-50);border-bottom:1px solid var(--color-gray-100);display:flex;justify-content:space-between;padding:12px 16px}.ai-thought-window__title{align-items:center;color:var(--color-gray-800);display:flex;font-size:14px;font-weight:600;gap:8px}.ai-thought-window__close{background:transparent;border:none;color:var(--color-slate-400);cursor:pointer;font-size:18px;line-height:1;padding:4px}.ai-thought-window__content{background:var(--color-white);color:var(--color-gray-800);flex:1;font-size:14px;line-height:1.6;overflow-y:auto;padding:16px}.ai-thought-window__thinking{margin-bottom:16px}.ai-thought-window__thinking-header{align-items:center;background:var(--color-gray-100);border-radius:8px;color:var(--color-gray-500);cursor:pointer;display:flex;font-size:12px;font-weight:500;gap:6px;padding:8px 12px;user-select:none}.ai-thought-window__thinking-content{background:var(--color-gray-50);border:1px solid var(--color-gray-200);border-radius:8px;color:var(--color-gray-500);font-family:Menlo,Monaco,Consolas,Courier New,monospace;font-size:13px;margin-top:8px;padding:12px;white-space:pre-wrap}.ai-thought-window__footer{background:var(--color-white);border-top:1px solid var(--color-gray-100);display:flex;justify-content:flex-end;padding:12px 16px}.ai-thought-window__accept-btn{background:var(--color-blue-500);border:none;border-radius:6px;box-shadow:0 2px 4px rgba(59,130,246,.2);color:var(--color-white);cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:background .2s}.ai-thought-window__accept-btn:hover{background:var(--color-blue-600)}.ai-thought-window__empty{color:var(--color-slate-400);font-style:italic}.ai-thought-window__no-content{color:var(--color-slate-400);padding:20px 0;text-align:center}.ai-thought-window__markdown p{margin-bottom:.8em}.ai-thought-window__markdown ol,.ai-thought-window__markdown ul{margin-bottom:.8em;padding-left:1.5em}.ai-thought-window__markdown li{margin-bottom:.3em}.ai-thought-window__markdown h1{font-size:1.3em;font-weight:600;margin-bottom:.6em;margin-top:1em}.ai-thought-window__markdown h2{font-size:1.2em;font-weight:600;margin-bottom:.6em;margin-top:1em}.ai-thought-window__markdown h3{font-size:1.1em;font-weight:600;margin-bottom:.6em;margin-top:1em}.ai-thought-window__code-block{background:var(--color-gray-50);border:1px solid var(--color-gray-200);border-radius:6px;display:block;font-size:.9em;overflow-x:auto;padding:1em}.ai-thought-window__code-inline{background:var(--color-gray-100);border-radius:4px;color:var(--color-gray-600);font-size:.9em;padding:.2em .4em}.ai-help-drawer{color:var(--color-gray-800);padding:20px}.ai-help-drawer__intro{margin-bottom:24px}.ai-help-drawer__intro-text{font-size:15px;line-height:1.6;margin:0 0 16px}.ai-help-drawer__step{margin-bottom:24px}.ai-help-drawer__step-header{align-items:center;display:flex;margin-bottom:8px}.ai-help-drawer__step-number{align-items:center;background:var(--color-blue-500);border-radius:50%;color:var(--color-white);display:flex;flex-shrink:0;font-weight:700;height:28px;justify-content:center;margin-right:16px;width:28px}.ai-help-drawer__step-title{color:var(--color-gray-800);font-size:16px;font-weight:600;margin:0}.ai-help-drawer__step-body{padding-left:44px}.ai-help-drawer__paragraph{color:var(--color-gray-600);font-size:14px;line-height:1.6;margin:0 0 8px}.ai-help-drawer__note{color:var(--color-gray-500);font-size:13px;font-style:italic}.ai-help-drawer__register-link{align-items:center;display:inline-flex;gap:6px;margin-top:8px;text-decoration:none}.ai-help-drawer__settings-btn{margin-bottom:8px;margin-top:8px}.ai-assistant-modal__info-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:20px;padding:16px}.ai-assistant-modal__info-title{color:#334155;font-size:15px;margin:0 0 12px}.ai-assistant-modal__info-list{color:#64748b;font-size:14px;line-height:1.6;margin:0;padding-left:20px}.ai-assistant-modal__warning-box{background:#fee2e2;border:1px solid #ef4444;border-radius:6px;color:#b91c1c;font-size:14px;margin-bottom:16px;padding:12px}.ai-assistant-modal__warning-text{margin-bottom:8px}.ai-assistant-modal__guide-btn{align-items:center;background:#fff;border:1px solid #ef4444;border-radius:4px;color:#ef4444;cursor:pointer;display:inline-flex;font-size:12px;gap:4px;padding:4px 10px}.ai-assistant-modal__guide-btn:hover{background:#fef2f2}.ai-assistant-modal__drop-zone{background:#fff;border:2px dashed #e2e8f0;border-radius:8px;cursor:pointer;padding:24px;text-align:center;transition:all .2s}.ai-assistant-modal__drop-zone--dragging{background:#eff6ff;border-color:#3b82f6}.ai-assistant-modal__drop-zone--has-file{background:#f0f9ff;border-color:#3b82f6}.ai-assistant-modal__drop-zone--disabled{opacity:.6;pointer-events:none}.ai-assistant-modal__file-icon{font-size:32px;margin-bottom:8px}.ai-assistant-modal__file-name{color:#3b82f6;font-weight:500}.ai-assistant-modal__file-size{color:#64748b;font-size:12px;margin-top:4px}.ai-assistant-modal__drop-text{color:#64748b}.ai-assistant-modal__drop-hint{color:#94a3b8;font-size:12px;margin-top:4px}.ai-assistant-modal__prompt-area{margin-top:16px}.ai-assistant-modal__prompt-input{border:1px solid #d1d5db;border-radius:8px;min-height:64px;outline:none;padding:8px 10px;resize:vertical}.ai-assistant-modal__prompt-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1)}.ai-assistant-modal__file-input{display:none}.ai-help-drawer__warning{background:var(--color-yellow-50);border:1px solid var(--color-yellow-200);border-radius:8px;margin-top:12px;padding:12px}.ai-help-drawer__warning-header{align-items:center;color:var(--color-amber-800);display:flex;font-weight:600;gap:6px;margin-bottom:6px}.ai-help-drawer__warning-text{color:var(--color-yellow-700);font-size:14px;line-height:1.5;margin:0}.ai-help-drawer__recommendation{background:var(--color-white);border:1px dashed var(--color-amber-500);border-radius:6px;margin-top:10px;padding:10px}.ai-help-drawer__recommendation-label{color:var(--color-amber-800);font-size:13px;margin-bottom:4px}.ai-help-drawer__model-code{background:var(--color-gray-100);border-radius:4px;color:var(--color-amber-500);display:block;font-size:13px;font-weight:700;padding:4px 8px;word-break:break-all}.ai-help-drawer__config-list{background:var(--color-gray-50);border:1px solid var(--color-gray-200);border-radius:8px;display:flex;flex-direction:column;gap:8px;margin:12px 0;padding:12px}.ai-help-drawer__config-item{align-items:center;color:var(--color-gray-600);display:flex;font-size:14px;gap:8px}.ai-help-drawer__config-label{color:var(--color-gray-500);flex-shrink:0;white-space:nowrap}.ai-help-drawer__config-value{color:var(--color-gray-800);font-weight:500}.ai-help-drawer__config-code{background:var(--color-gray-100);border-radius:4px;color:var(--color-blue-600);font-size:12px;padding:2px 6px;word-break:break-all}.ai-process-window{animation:ai-slideIn .3s ease-out;background-color:var(--color-white);border:1px solid var(--color-gray-200);border-radius:12px;bottom:80px;box-shadow:0 4px 20px rgba(0,0,0,.15);display:flex;flex-direction:column;overflow:hidden;position:fixed;right:24px;width:320px;z-index:9999}.ai-process-window__header{align-items:center;background:var(--color-gray-50);border-bottom:1px solid var(--color-gray-100);display:flex;justify-content:space-between;padding:12px 16px}.ai-process-window__title{align-items:center;color:var(--color-gray-800);display:flex;font-weight:600;gap:8px}.ai-process-window__close{background:transparent;border:none;color:var(--color-slate-400);cursor:pointer;font-size:18px;line-height:1;padding:4px}.ai-process-window__content{max-height:400px;overflow-y:auto;padding:16px}.ai-process-window__error{background:var(--color-danger-100);border:1px solid var(--color-danger-100);border-radius:6px;color:var(--color-error-500);display:flex;font-size:14px;gap:8px;padding:12px}.ai-process-window__steps{display:flex;flex-direction:column;gap:16px}.ai-process-window__step{display:flex;gap:12px}.ai-process-window__step-icon{align-items:center;border-radius:50%;display:flex;flex-shrink:0;font-size:12px;height:24px;justify-content:center;width:24px}.ai-process-window__step-icon--completed{background:var(--color-success-100);color:var(--color-emerald-600)}.ai-process-window__step-icon--processing{background:var(--color-info-100);color:var(--color-sky-600)}.ai-process-window__step-icon--failed{background:var(--color-danger-100);color:var(--color-red-600)}.ai-process-window__step-icon--pending{background:var(--color-gray-100);color:var(--color-slate-400)}.ai-process-window__step-content{flex:1}.ai-process-window__step-label{font-size:14px;font-weight:500;margin-bottom:2px}.ai-process-window__step-label--pending{color:var(--color-slate-400)}.ai-process-window__step-label--active{color:var(--color-gray-800)}.ai-process-window__step-message{color:var(--color-gray-500);font-size:12px}.ai-process-window__progress-track{background:var(--color-gray-100);border-radius:2px;height:2px;margin-top:6px;overflow:hidden}.ai-process-window__progress-bar{background:var(--color-blue-500);height:100%}.ai-gradient-btn{align-items:center;background:linear-gradient(135deg,var(--color-indigo-500) 0,var(--color-purple-500) 100%);border:none;border-radius:20px;box-shadow:0 4px 6px -1px rgba(99,102,241,.3),0 2px 4px -1px rgba(99,102,241,.15);color:var(--color-white);cursor:pointer;display:inline-flex;font-size:13px;font-weight:600;gap:6px;opacity:1;outline:none;padding:6px 16px;transform:translateY(0);transition:all .2s ease}.ai-gradient-btn:hover:not(:disabled){box-shadow:0 10px 15px -3px rgba(99,102,241,.4),0 4px 6px -2px rgba(99,102,241,.2);transform:translateY(-1px)}.ai-gradient-btn:disabled{cursor:not-allowed;opacity:.7}@keyframes ai-slideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.analysis-chat-page{box-sizing:border-box;display:grid;gap:var(--space-16,16px);grid-template-columns:260px minmax(0,1fr);height:calc(100vh - var(--app-header-height, 96px));max-width:100vw;overflow:hidden;padding:var(--space-24,24px)}.analysis-chat-sidebar{background:var(--color-white,#fff);border:1px solid var(--color-gray-1200,#e5e7eb);border-radius:var(--radius-16,16px);display:flex;flex-direction:column;min-height:0;overflow:hidden;padding:var(--space-12,12px)}.analysis-chat-sidebar-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.analysis-chat-app-name{align-items:center;color:var(--color-gray-1500,#111827);display:flex;font-size:var(--text-16,16px);font-weight:600;gap:var(--space-8,8px)}.analysis-chat-help-btn{background:none}.analysis-chat-help-btn,.analysis-chat-new-btn{align-items:center;border:none;color:var(--color-gray-500,#6b7280);cursor:pointer;display:flex;padding:var(--space-4,4px)}.analysis-chat-new-btn{background:transparent;justify-content:center;transition:color .2s}.analysis-chat-new-btn:hover{color:var(--color-gray-1500,#111827)}.analysis-chat-search input{background-color:var(--color-gray-1300,#f9fafb);border:1px solid var(--color-gray-1200,#e1e5e9);border-radius:var(--radius-12,12px);font-size:var(--text-13,13px);margin-bottom:8px;padding:8px 10px;width:100%}.analysis-chat-search input:focus{background-color:var(--color-white,#fff);border-color:var(--color-primary-500,#667eea);box-shadow:0 0 0 3px rgba(102,126,234,.1),0 2px 8px rgba(15,23,42,.08);outline:none}.analysis-chat-groups-header{align-items:center;color:var(--color-gray-500,#6b7280);display:flex;font-size:var(--text-13,13px);justify-content:space-between;margin-bottom:var(--space-4,4px);margin-top:var(--space-4,4px)}.analysis-chat-link{background:transparent;border:none;color:var(--color-blue-500,#3b82f6);cursor:pointer;font-size:var(--text-12,12px);padding:0}.analysis-chat-group-item{align-items:center;border-radius:var(--radius-10,10px);cursor:pointer;display:flex;justify-content:space-between;padding:6px 28px 6px 8px;position:relative;transition:background-color .15s ease,box-shadow .15s ease}.analysis-chat-group-item--hover{background:var(--color-gray-1000,#f1f5f9);box-shadow:inset 0 0 0 1px var(--color-gray-1100,#e2e8f0)}.analysis-chat-group-main{align-items:center;display:flex;gap:6px}.analysis-chat-group-name{color:var(--color-gray-1500,#111827);font-size:var(--text-13,13px)}.analysis-chat-group-action-container{display:none;position:absolute;right:var(--space-4,4px);top:50%;transform:translateY(-50%)}.analysis-chat-group-item--hover .analysis-chat-group-action-container{display:block}.analysis-chat-group-item--menu-open .analysis-chat-group-action-container{display:block!important}.analysis-chat-sidebar-content{flex:1;overflow-y:auto;position:relative}.analysis-chat-sidebar-content--batch-mode{padding-bottom:120px}.analysis-chat-groups-list{margin-bottom:8px;max-height:140px;overflow-y:auto}.analysis-chat-sessions-title{color:var(--color-gray-500,#6b7280);font-size:var(--text-13,13px);margin-bottom:var(--space-4,4px);margin-top:6px}.analysis-chat-sessions-list{padding-right:var(--space-4,4px)}.analysis-chat-session-item{align-items:center;border:1px solid transparent;border-radius:var(--radius-10,10px);cursor:pointer;display:flex;margin-bottom:var(--space-4,4px);min-height:40px;padding:10px var(--space-12,12px);position:relative;transition:background-color .15s ease,box-shadow .15s ease,transform .1s ease}.analysis-chat-session-item:hover{background:var(--color-indigo-50,#f3f4ff);border-color:var(--color-indigo-100,#e0e7ff)}.analysis-chat-session-item--active{background:linear-gradient(135deg,var(--color-indigo-50,#eef2ff) 0,var(--color-sky-100,#e0f2fe) 100%);border-color:var(--color-indigo-500,#6366f1)}.analysis-chat-session-title{color:var(--color-gray-1500,#111827);font-size:var(--text-13,13px);font-weight:500;overflow:hidden;padding-right:var(--space-24,24px);text-overflow:ellipsis;white-space:nowrap;width:100%}.analysis-chat-session-action-container{display:none;position:absolute;right:var(--space-4,4px);top:50%;transform:translateY(-50%)}.analysis-chat-session-item:hover .analysis-chat-session-action-container{display:block}.analysis-chat-session-item--menu-open .analysis-chat-session-action-container{display:block!important}.analysis-chat-session-item--menu-open{z-index:20}.analysis-chat-empty{color:var(--color-gray-300,#9ca3af);font-size:var(--text-12,12px);padding:var(--space-12,12px) var(--space-4,4px)}.analysis-chat-main{background:var(--color-white,#fff);border:1px solid var(--color-gray-1200,#e5e7eb);border-radius:var(--radius-16,16px);display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden;padding:var(--space-16,16px)}.analysis-chat-main-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.analysis-chat-main-title{color:var(--color-gray-1500,#111827);font-size:var(--text-18,18px);font-weight:600}.analysis-chat-main-actions{align-items:center;display:flex;gap:8px}.analysis-chat-model-select{background:var(--color-gray-1300,#f9fafb);border:1px solid var(--color-gray-1200,#e5e7eb);border-radius:999px;font-size:var(--text-13,13px);min-width:180px;padding:6px 10px}.analysis-chat-model-select:focus{background:var(--color-white,#fff);border-color:var(--color-primary-500,#667eea);box-shadow:0 0 0 3px rgba(102,126,234,.1);outline:none}.analysis-chat-welcome{padding:var(--space-24,24px) 8px 8px}.analysis-chat-welcome-text{font-size:var(--text-24,24px);font-weight:700;margin-bottom:var(--space-4,4px)}.analysis-chat-welcome-subtitle{color:var(--color-gray-500,#6b7280);font-size:var(--text-13,13px);margin-bottom:var(--space-16,16px)}.analysis-chat-quick-topics{display:flex;flex-wrap:wrap;gap:8px}.analysis-chat-quick-topic{background:var(--color-gray-1300,#f9fafb);border:1px solid var(--color-gray-1100,#e2e8f0);border-radius:999px;cursor:pointer;font-size:var(--text-12,12px);padding:6px 10px}.analysis-chat-quick-topic:hover{background:var(--color-indigo-50,#eef2ff);border-color:var(--color-indigo-200,#c7d2fe)}.analysis-chat-messages-wrapper{background:var(--color-gray-1300,#f9fafb);border-radius:var(--radius-12,12px);display:flex;flex:1;flex-direction:column;margin-bottom:8px;margin-top:8px;min-height:0;overflow:hidden;padding:var(--space-12,12px)}.analysis-chat-loading{color:var(--color-gray-500,#6b7280);font-size:var(--text-13,13px)}.analysis-chat-messages{display:flex;flex-direction:column;gap:var(--space-20,20px);height:100%;overflow-x:hidden;overflow-y:auto}.analysis-chat-message{align-items:flex-start;display:flex;gap:var(--space-12,12px);padding:8px 0}.analysis-chat-message--user{flex-direction:row-reverse}.analysis-chat-message-avatar{align-items:center;background:var(--color-gray-200,#e5e7eb);border-radius:999px;color:var(--color-gray-700,#374151);display:flex;font-size:var(--text-13,13px);height:28px;justify-content:center;width:28px}.analysis-chat-message--assistant .analysis-chat-message-avatar{background:var(--color-blue-500,#3b82f6);color:var(--color-white,#fff)}.analysis-chat-message-content{word-wrap:break-word;background:var(--color-white,#fff);border-radius:var(--radius-12,12px);box-shadow:0 1px 3px rgba(15,23,42,.1);color:var(--color-gray-1500,#111827);font-size:var(--text-14,14px);line-height:1.6;max-width:70%;overflow-wrap:break-word;padding:8px var(--space-12,12px)}.analysis-chat-message-content ol,.analysis-chat-message-content ul{list-style-position:outside;margin:8px 0;padding-left:var(--space-24,24px)}.analysis-chat-message-content li{margin-bottom:var(--space-4,4px)}.analysis-chat-message-content pre{word-wrap:break-word;background:var(--color-gray-100,#f3f4f6);border-radius:var(--radius-8,8px);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:var(--text-13,13px);margin:8px 0;overflow-x:hidden;padding:var(--space-12,12px);white-space:pre-wrap}.analysis-chat-message-content blockquote{border-left:4px solid var(--color-gray-200,#e5e7eb);color:var(--color-gray-500,#6b7280);margin:8px 0;padding-left:var(--space-12,12px)}.analysis-chat-message-content h1,.analysis-chat-message-content h2,.analysis-chat-message-content h3,.analysis-chat-message-content h4{font-weight:600;line-height:1.4;margin:var(--space-16,16px) 0 8px 0}.analysis-chat-message-content h1{font-size:1.4em}.analysis-chat-message-content h2{font-size:1.25em}.analysis-chat-message-content h3{font-size:1.1em}.analysis-chat-message-content table{border-collapse:collapse;font-size:var(--text-13,13px);margin:8px 0;table-layout:fixed;width:100%}.analysis-chat-message-content td,.analysis-chat-message-content th{border:1px solid var(--color-gray-200,#e5e7eb);padding:6px 10px;text-align:left}.analysis-chat-message-content th{background:var(--color-gray-1300,#f9fafb);font-weight:600}.analysis-chat-message--user .analysis-chat-message-content{background:var(--color-indigo-600,#4f46e5);color:var(--color-white,#fff)}.analysis-chat-message--user .analysis-chat-message-content pre{background:rgba(0,0,0,.2);color:var(--color-white,#fff)}.analysis-chat-message--user .analysis-chat-message-content code{color:var(--color-white,#fff)}.analysis-chat-message--user .analysis-chat-message-content blockquote{border-left-color:hsla(0,0%,100%,.3);color:hsla(0,0%,100%,.9)}.analysis-chat-message--user .analysis-chat-message-content td,.analysis-chat-message--user .analysis-chat-message-content th{border-color:hsla(0,0%,100%,.2)}.analysis-chat-message--user .analysis-chat-message-content th{background:hsla(0,0%,100%,.1)}.analysis-chat-input-panel{background:var(--color-white,#fff);border-top:1px solid var(--color-gray-100,#f1f5f9);display:flex;flex-direction:column;gap:8px;padding:var(--space-16,16px);padding-top:8px}.analysis-chat-input-hint{color:var(--color-gray-500,#6b7280);font-size:var(--text-12,12px)}.analysis-chat-input-quick{display:flex;flex-wrap:wrap;gap:6px}.analysis-chat-input-row{align-items:flex-end;display:grid;gap:8px;grid-template-columns:minmax(0,1fr) auto}.analysis-chat-input{background:var(--color-gray-1300,#f9fafb);border:1px solid var(--color-gray-200,#e5e7eb);border-radius:var(--radius-12,12px);font-size:var(--text-14,14px);padding:10px var(--space-12,12px);resize:none;width:100%}.analysis-chat-input:focus{background:var(--color-white,#fff);border-color:var(--color-primary-500,#667eea);box-shadow:0 0 0 3px rgba(102,126,234,.1);outline:none}.analysis-chat-send-btn{align-self:stretch;border-radius:999px;font-size:var(--text-14,14px)}.analysis-chat-icon-btn{align-items:center;background:var(--color-indigo-50,#f3f4ff);border:none;border-radius:999px;color:var(--color-indigo-600,#4f46e5);cursor:pointer;display:inline-flex;height:32px;justify-content:center;transition:background-color .15s ease,box-shadow .15s ease,transform .1s ease;width:32px}.analysis-chat-icon-btn:hover{background:var(--color-indigo-100,#e0e7ff);box-shadow:0 2px 6px rgba(79,70,229,.25);transform:translateY(-1px)}.analysis-chat-icon-btn:disabled{box-shadow:none;cursor:default;opacity:.6;transform:none}.analysis-chat-group-add-btn{background:transparent;border:none;color:var(--color-black,#000);cursor:pointer;padding:0}.analysis-chat-sidebar{position:relative}.analysis-chat-resizer{background:transparent;cursor:col-resize;height:100%;position:absolute;right:-8px;top:0;width:16px;z-index:100}.analysis-chat-group-menu-fixed,.analysis-chat-session-menu-fixed{background-color:var(--color-white,#fff);border:1px solid var(--color-gray-200,#e2e8f0);border-radius:var(--radius-8,8px);box-shadow:0 4px 12px rgba(0,0,0,.15);display:flex;flex-direction:column;gap:var(--space-2,2px);padding:var(--space-4,4px);z-index:9999}.analysis-chat-group-menu-fixed{width:100px}.analysis-chat-session-menu-fixed{width:140px}.analysis-chat-menu-item{align-items:center;background:transparent;border:none;border-radius:var(--radius-4,4px);color:var(--color-gray-700,#374151);cursor:pointer;display:flex;font-size:var(--text-12,12px);gap:var(--space-8,8px);padding:var(--space-6,6px) var(--space-8,8px);text-align:left;width:100%}.analysis-chat-menu-item--danger{color:var(--color-red-500,#ef4444)}.analysis-chat-session-title{align-items:center;display:flex}.analysis-chat-session-pin{color:var(--color-blue-500,#3b82f6);flex-shrink:0;margin-right:var(--space-4,4px)}.analysis-chat-session-title-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.analysis-chat-session-more{background:transparent;border:none;color:var(--color-gray-400,#9ca3af);cursor:pointer;padding:var(--space-2,2px)}.analysis-chat-checkbox{pointer-events:none}.analysis-chat-input-row{position:relative}.analysis-chat-mention-menu{background:var(--color-white,#fff);border:1px solid var(--color-gray-200,#e5e7eb);border-radius:var(--radius-8,8px);bottom:100%;box-shadow:0 4px 12px rgba(0,0,0,.1);left:var(--space-12,12px);margin-bottom:var(--space-12,12px);min-width:160px;padding:var(--space-6,6px);position:absolute;z-index:50}.analysis-chat-mention-header{border-bottom:1px solid var(--color-gray-50,#f3f4f6);color:var(--color-gray-400,#9ca3af);font-size:var(--text-12,12px);margin-bottom:var(--space-4,4px);padding:var(--space-4,4px) var(--space-8,8px)}.analysis-chat-mention-option{background:transparent;border-radius:var(--radius-4,4px);color:var(--color-gray-700,#374151);cursor:pointer;font-size:var(--text-13,13px);font-weight:500;padding:var(--space-8,8px) var(--space-12,12px)}.analysis-chat-mention-option--active{background:var(--color-gray-50,#f3f4f6)}.move-to-group-content{padding:var(--space-16,16px) 0}.move-to-group-select-wrapper{align-items:center;display:flex;gap:var(--space-12,12px)}.move-to-group-icon{align-items:center;background:var(--color-indigo-50,#eef2ff);border-radius:var(--radius-10,10px);color:var(--color-indigo-600,#4f46e5);display:flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.move-to-group-select{flex:1}.move-to-group-select .rounded-select-trigger{background:var(--color-white,#fff);border:1px solid var(--color-gray-200,#e5e7eb);border-radius:var(--radius-12,12px);font-size:var(--text-14,14px);height:44px;padding:0 var(--space-16,16px)}.move-to-group-select .rounded-select-trigger:hover{border-color:var(--color-indigo-300,#a5b4fc)}.move-to-group-select .rounded-select-trigger.open{border-color:var(--color-indigo-500,#6366f1);box-shadow:0 0 0 3px rgba(99,102,241,.1)}.move-to-group-select .rounded-select-dropdown{border:1px solid var(--color-gray-200,#e5e7eb);border-radius:var(--radius-10,10px);box-shadow:0 10px 25px rgba(0,0,0,.1);margin-top:var(--space-4,4px)}.move-to-group-select .rounded-select-option{color:var(--color-gray-700,#374151);font-size:var(--text-14,14px);padding:var(--space-10,10px) var(--space-16,16px)}.move-to-group-select .rounded-select-option:hover{background:var(--color-gray-50,#f9fafb)}.move-to-group-select .rounded-select-option.selected{background:var(--color-indigo-50,#eef2ff);color:var(--color-indigo-700,#4338ca);font-weight:500}.analysis-chat-batch-bar{background:var(--color-white,#fff);border-top:1px solid var(--color-gray-200,#e5e7eb);display:flex;flex-direction:column;gap:var(--space-12,12px);padding:var(--space-12,12px) var(--space-16,16px)}.analysis-chat-batch-row{align-items:center;display:flex;gap:var(--space-12,12px);justify-content:space-between}.analysis-chat-batch-select-all{align-items:center;color:var(--color-gray-700,#374151);cursor:pointer;display:flex;font-size:var(--text-14,14px);gap:var(--space-8,8px);user-select:none}.analysis-chat-batch-select-all:hover{color:var(--color-indigo-600,#4f46e5)}.analysis-chat-batch-select-all input[type=checkbox]{accent-color:var(--color-indigo-600,#4f46e5);cursor:pointer;height:16px;width:16px}.analysis-chat-batch-cancel{background:transparent;border:none;color:var(--color-gray-500,#6b7280);cursor:pointer;font-size:var(--text-13,13px);padding:var(--space-4,4px) var(--space-8,8px);transition:all .2s ease}.analysis-chat-batch-cancel:hover{color:var(--color-gray-700,#374151)}.analysis-chat-batch-actions{align-items:center;display:flex;gap:var(--space-8,8px);width:100%}.analysis-chat-batch-icon-btn{align-items:center;background:var(--color-gray-100,#f3f4f6);border:none;border-radius:var(--radius-6,6px);color:var(--color-gray-600,#475569);cursor:pointer;display:flex;flex:1;height:36px;justify-content:center;padding:0;transition:all .2s ease}.analysis-chat-batch-icon-btn:hover:not(:disabled){background:var(--color-gray-200,#e5e7eb);color:var(--color-gray-800,#1e293b)}.analysis-chat-batch-icon-btn:disabled{cursor:not-allowed;opacity:.4}.analysis-chat-batch-icon-btn.danger{color:var(--color-gray-600,#475569)}.analysis-chat-batch-icon-btn.danger:hover:not(:disabled){background:var(--color-gray-200,#e5e7eb);color:var(--color-gray-800,#1e293b)}.chat-message-actions{border-top:1px solid var(--color-gray-200,#e5e7eb);display:flex;justify-content:flex-end;margin-top:var(--space-12,12px);padding-top:var(--space-8,8px)}.chat-message-copy-btn{align-items:center;background:transparent;border:1px solid var(--color-gray-200,#e5e7eb);border-radius:var(--radius-6,6px);color:var(--color-gray-500,#6b7280);cursor:pointer;display:flex;font-size:var(--text-13,13px);gap:var(--space-4,4px);padding:var(--space-6,6px) var(--space-12,12px);transition:all .2s ease}.chat-message-copy-btn:hover{background:var(--color-gray-50,#f9fafb);border-color:var(--color-gray-300,#d1d5db);color:var(--color-gray-700,#374151)}.feedback-layout__page-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--space-24)}.feedback-layout__header-actions{display:flex;gap:var(--space-12)}.feedback-form{margin:0 auto;max-width:800px;padding:var(--space-24)}.feedback-form__form-group{margin-bottom:var(--space-24)}.feedback-form__form-label{align-items:center;color:var(--color-text-primary);display:flex;font-weight:500;justify-content:space-between;margin-bottom:var(--space-8)}.feedback-form__radio-group{display:flex;gap:var(--space-24)}.feedback-form__radio-card{align-items:center;border:2px solid var(--border-color);border-radius:var(--radius-12);cursor:pointer;display:flex;flex:1;gap:var(--space-12);padding:var(--space-16);transition:var(--transition-base)}.feedback-form__radio-card:hover{border-color:var(--primary-color)}.feedback-form__radio-card--active{background-color:var(--primary-color-alpha);border-color:var(--primary-color)}.feedback-form__radio-input{display:none}.feedback-form__radio-content{align-items:center;display:flex;gap:var(--space-12)}.feedback-form__radio-icon{font-size:var(--text-24)}.feedback-form__radio-info{display:flex;flex-direction:column}.feedback-form__radio-title{color:var(--color-text-primary);font-weight:600}.feedback-form__radio-desc{color:var(--color-text-secondary);font-size:var(--text-13)}.feedback-form__textarea-wrapper{background-color:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-12);position:relative;transition:var(--transition-input)}.feedback-form__textarea-wrapper:focus-within{border-color:var(--color-blue-500);box-shadow:0 0 0 var(--space-4) rgba(59,130,246,.1)}.feedback-form__textarea-wrapper--drag-over{background-color:var(--color-blue-100);border-color:var(--primary-color)}.feedback-form__input{background:transparent;border:none;font-family:inherit;min-height:150px;padding:var(--space-12);resize:vertical;width:100%}.feedback-form__input:focus{box-shadow:none;outline:none}.feedback-form__input-actions{align-items:center;background-color:var(--color-gray-50);border-bottom-left-radius:var(--radius-8);border-bottom-right-radius:var(--radius-8);border-top:1px solid var(--border-color);display:flex;justify-content:flex-end;padding:var(--space-8) var(--space-12)}.feedback-form__action-btn{align-items:center;background:none;border:none;border-radius:var(--radius-4);color:var(--color-text-secondary);cursor:pointer;display:flex;font-size:var(--text-13);gap:var(--space-6);padding:var(--space-6) var(--space-12);transition:var(--transition-base)}.feedback-form__action-btn:hover{background-color:rgba(0,0,0,.05);color:var(--primary-color)}.feedback-form__upload-area{align-items:center;display:flex;flex-direction:column;gap:var(--space-8);padding:var(--space-24)}.feedback-form__upload-hint{color:var(--color-text-secondary);font-size:var(--text-12)}.feedback-form__drag-overlay{align-items:center;background-color:hsla(0,0%,100%,.9);border-radius:var(--radius-8);bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:10}.feedback-form__drag-content{align-items:center;color:var(--primary-color);display:flex;flex-direction:column;font-weight:500;gap:var(--space-12)}.feedback-form__char-count{color:var(--color-text-secondary);font-size:var(--text-12);text-align:right}.feedback-form__attachments-list{display:flex;flex-wrap:wrap;gap:var(--space-12);margin-top:var(--space-12)}.feedback-form__attachment-item{align-items:center;background-color:var(--color-gray-50);border:1px solid var(--border-color);border-radius:var(--radius-8);cursor:pointer;display:flex;gap:var(--space-12);padding:var(--space-8);transition:var(--transition-base)}.feedback-form__attachment-item:hover{border-color:var(--primary-color);box-shadow:0 1px 2px rgba(15,23,42,.06)}.feedback-form__attachment-preview{align-items:center;background-color:var(--color-white);border-radius:var(--radius-8);display:flex;height:var(--space-40);justify-content:center;overflow:hidden;width:var(--space-40)}.feedback-form__attachment-thumb{height:100%;object-fit:cover;width:100%}.feedback-form__pdf-icon{color:var(--color-red-500);font-size:var(--text-12);font-weight:600}.feedback-form__attachment-info{flex:1;min-width:0}.feedback-form__attachment-name{color:var(--color-text-primary);font-size:var(--text-14);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.feedback-form__attachment-size{color:var(--color-text-secondary);font-size:var(--text-12)}.feedback-form__remove-attachment{background:transparent;border:none;border-radius:var(--radius-4);color:var(--color-text-secondary);cursor:pointer;font-size:var(--text-18);padding:var(--space-4)}.feedback-form__remove-attachment:hover{background-color:rgba(0,0,0,.05)}.feedback-form__uploading-indicator{color:var(--color-text-secondary);font-size:var(--text-13);margin-top:var(--space-8)}.feedback-form__form-actions{display:flex;gap:var(--space-12);justify-content:flex-end;margin-top:var(--space-24)}.feedback-list{margin-top:var(--space-24)}.feedback-list__card-grid{display:grid;gap:var(--space-16);grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.feedback-list__feedback-card{position:relative}.feedback-list__feedback-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--space-12)}.feedback-list__feedback-meta{align-items:center;display:flex;gap:var(--space-8)}.feedback-list__feedback-date{color:var(--color-text-secondary);font-size:var(--text-12)}.feedback-list__feedback-content{color:var(--color-text-primary);font-size:var(--text-14);margin-bottom:var(--space-12);white-space:pre-wrap}.feedback-list__attachments-list{display:flex;flex-wrap:wrap;gap:var(--space-8);margin-top:var(--space-8)}.feedback-list__attachment-thumb{background:var(--color-white);border:1px solid var(--border-color);border-radius:var(--radius-8);cursor:pointer;height:80px;position:relative;transition:var(--transition-base);width:80px}.feedback-list__attachment-thumb:hover{border-color:var(--primary-color);box-shadow:0 4px 10px rgba(15,23,42,.12);transform:translateY(-1px)}.feedback-list__attachment-preview-box{align-items:center;background-color:var(--color-gray-50);border-radius:var(--radius-8);display:flex;height:100%;justify-content:center;overflow:hidden;width:100%}.feedback-list__attachment-image{height:100%;object-fit:cover;width:100%}.feedback-list__pdf-icon-box{background-color:var(--color-rose-500);border-radius:var(--radius-4);color:var(--color-red-500);font-size:var(--text-13);font-weight:600;padding:var(--space-4) var(--space-8)}.feedback-list__attachment-name-tooltip{background-color:rgba(15,23,42,.9);border-radius:var(--radius-4);bottom:-24px;color:var(--color-white);font-size:var(--text-11);left:50%;opacity:0;padding:var(--space-2) var(--space-6);pointer-events:none;position:absolute;transform:translateX(-50%);transition:var(--transition-base);white-space:nowrap}.feedback-list__attachment-thumb:hover .feedback-list__attachment-name-tooltip{opacity:1}.feedback-list__feedback-reply{border-top:1px dashed var(--border-color);font-size:var(--text-14);margin-top:var(--space-12);padding-top:var(--space-12)}.feedback-list__reply-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--space-4)}.feedback-list__reply-label{color:var(--color-text-secondary);font-weight:500}.feedback-list__reply-date{color:var(--color-text-secondary);font-size:var(--text-12)}.feedback-list__reply-content{color:var(--color-text-primary);white-space:pre-wrap}.feedback-list__status-badge{align-items:center;border-radius:var(--radius-full);display:inline-flex;font-size:var(--text-12);font-weight:500;padding:var(--space-2) var(--space-8)}.feedback-list__status-danger{background-color:var(--color-danger-100);color:var(--color-danger-800)}.feedback-list__status-success{background-color:var(--color-success-100);color:var(--color-success-800)}.feedback-list__status-warning{background-color:var(--color-yellow-100);color:var(--color-yellow-800)}.feedback-list__empty-state{color:var(--color-text-secondary);padding:var(--space-40) 0;text-align:center}.feedback-list__empty-icon{font-size:var(--text-32);margin-bottom:var(--space-8)}.feedback-list__loading-state{color:var(--color-text-secondary);padding:var(--space-40) 0;text-align:center}.hero-section{align-items:center;background:linear-gradient(135deg,var(--color-primary-500) 0,var(--color-primary-600) 100%);display:flex;min-height:100vh;position:relative}.hero-background{bottom:0;left:0;opacity:.1;position:absolute;right:0;top:0}.hero-pattern{background-image:radial-gradient(circle at 25% 25%,#fff 2px,transparent 0),radial-gradient(circle at 75% 75%,#fff 2px,transparent 0);background-position:0 0,30px 30px;background-size:60px 60px;height:100%;width:100%}.hero-container{align-items:center;display:grid;gap:80px;grid-template-columns:1fr 1fr;margin:0 auto;max-width:1200px;padding:0 var(--space-24,24px);position:relative;z-index:1}.hero-content{color:var(--color-white,#fff)}.hero-badge{align-items:center;backdrop-filter:blur(10px);background:hsla(0,0%,100%,.2);border-radius:50px;display:inline-flex;font-size:var(--text-12,12px);font-weight:500;padding:8px var(--space-16,16px)}.hero-badge,.hero-title{margin-bottom:var(--space-24,24px)}.hero-title{display:flex;flex-direction:column;font-size:4rem;font-weight:800;line-height:1.1}.hero-title-accent{-webkit-text-fill-color:transparent;background:linear-gradient(45deg,gold,#ffed4e);-webkit-background-clip:text;background-clip:text}.hero-title-accent--clickable{cursor:pointer}.hero-subtitle{font-size:var(--text-20,1.25rem);line-height:1.6;margin-bottom:var(--space-32,32px);max-width:500px;opacity:.9}.hero-stats{display:flex;gap:var(--space-32,32px);margin-bottom:40px}.stat-item{text-align:center}.stat-number{color:gold;display:block;font-size:var(--text-32,2rem);font-weight:700;white-space:nowrap}.hero-stats .stat-label{color:var(--color-white,#fff);font-size:var(--text-14,.875rem);opacity:1}.hero-actions{gap:var(--space-16,16px)}.btn-hero,.hero-actions{align-items:center;display:flex}.btn-hero{border-radius:var(--radius-12,12px);font-size:var(--text-18,1.1rem);font-weight:600;gap:8px;padding:var(--space-16,16px) var(--space-32,32px);transition:var(--transition-base,all .3s ease)}.btn-hero:hover{box-shadow:0 8px 25px rgba(0,0,0,.2);transform:translateY(-2px)}.hero-visual{height:500px;position:relative}.hero-image{backdrop-filter:blur(10px);background:hsla(0,0%,100%,.1);border:1px solid hsla(0,0%,100%,.2);border-radius:var(--radius-20,20px);height:100%;position:relative;width:100%}.floating-card{align-items:center;animation:float 6s ease-in-out infinite;background:var(--color-white,#fff);border-radius:var(--radius-12,12px);box-shadow:0 10px 30px rgba(0,0,0,.2);display:flex;gap:var(--space-12,12px);padding:var(--space-16,16px);position:absolute}.floating-card.card-1{animation-delay:0s;left:8%;top:14%}.floating-card.card-2{animation-delay:4s;right:8%;top:45%}.floating-card.card-3{animation-delay:2s;bottom:12%;left:18%}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.card-icon{align-items:center;background:var(--color-gray-1300,#f8fafc);border-radius:var(--radius-8,8px);display:flex;filter:brightness(1.2) saturate(1.5) contrast(1.2);font-size:22px;height:40px;justify-content:center;opacity:1;text-shadow:0 1px 2px rgba(0,0,0,.1);width:40px}.card-content{flex:1}.card-title{color:var(--color-gray-900,#1a202c);font-weight:600;margin-bottom:var(--space-4,4px)}.card-subtitle{color:var(--color-gray-400,#64748b);font-size:var(--text-14,.875rem)}.progress-bar{background:var(--color-gray-1100,#e2e8f0);border-radius:2px;height:4px;overflow:hidden;width:80px}.progress-fill{background:linear-gradient(90deg,var(--color-primary-500),var(--color-primary-600));border-radius:2px;height:100%;transition:width .3s ease}.features-section{background:var(--color-white,#fff);padding:120px 0}.home-page .features-section .section-title{color:gold;font-size:var(--text-52,3.25rem)}.home-page .features-section .section-subtitle{color:var(--color-white,#fff)}.section-header{margin-bottom:80px;text-align:center}.section-title{color:var(--color-gray-900,#1a202c);font-size:var(--text-48,3rem);font-weight:700;margin-bottom:var(--space-16,16px)}.section-subtitle{color:var(--color-gray-400,#64748b);font-size:var(--text-20,1.25rem);margin:0 auto;max-width:600px}.features-grid{display:grid;gap:var(--space-32,32px);grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.feature-card{background:var(--color-white,#fff);border:1px solid var(--color-gray-1100,#e2e8f0);border-radius:var(--radius-16,16px);overflow:hidden;padding:var(--space-32,32px);position:relative;text-align:center;transition:var(--transition-base,all .3s ease)}.feature-card:before{background:linear-gradient(90deg,var(--color-primary-500),var(--color-primary-600));content:"";height:4px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .3s ease}.feature-card:hover:before{transform:scaleX(1)}.feature-card:hover{border-color:var(--color-primary-500,#667eea);box-shadow:var(--shadow-lg,0 20px 40px rgba(0,0,0,.1));transform:translateY(-8px)}.feature-icon-wrapper{align-items:center;background:linear-gradient(135deg,var(--color-primary-500),var(--color-primary-600));border-radius:var(--radius-20,20px);display:flex;height:80px;justify-content:center;margin:0 auto var(--space-24,24px);position:relative;width:80px}.feature-icon-wrapper:before{background:var(--color-white,#fff);border-radius:var(--radius-18,18px);content:"";inset:2px;position:absolute}.feature-icon{font-size:2rem;position:relative;z-index:1}.feature-title{color:var(--color-gray-900,#1a202c);font-size:var(--text-24,1.5rem);font-weight:600;margin-bottom:var(--space-16,16px)}.feature-description{color:var(--color-gray-400,#64748b);line-height:1.6;margin-bottom:var(--space-24,24px)}.feature-link{align-items:center;color:var(--color-primary-500,#667eea);display:inline-flex;font-weight:500;gap:8px;text-decoration:none;transition:var(--transition-base,all .2s ease)}.feature-link:hover{color:var(--color-primary-600,#764ba2);gap:var(--space-12,12px)}.cta-section{background:linear-gradient(135deg,var(--color-gray-900,#1a202c) 0,var(--color-gray-800,#2d3748) 100%);color:var(--color-white,#fff);padding:120px 0;text-align:center}.cta-content{margin:0 auto;max-width:600px}.cta-title{font-size:var(--text-48,3rem);font-weight:700;line-height:1.2;margin-bottom:var(--space-24,24px)}.cta-subtitle{font-size:var(--text-20,1.25rem);line-height:1.6;margin-bottom:40px;opacity:.9}.cta-actions{align-items:center;flex-direction:column}.cta-actions,.cta-actions-row{display:flex;gap:var(--space-16,16px)}.cta-actions-row{flex-wrap:wrap;justify-content:center}.btn-large{border-radius:var(--radius-12,12px);font-size:var(--text-20,1.2rem);font-weight:600;padding:var(--space-20,20px) 40px}.cta-note{opacity:.7}.cta-beian,.cta-note{font-size:var(--text-14,.875rem)}.cta-beian{color:var(--color-gray-400,#94a3b8);margin-top:var(--space-24,24px);text-align:center}.login-container{align-items:center;background:linear-gradient(135deg,var(--color-primary-500) 0,var(--color-primary-600) 100%);background-attachment:fixed;background-size:cover;display:flex;height:var(--viewport-height-100);justify-content:center;width:var(--viewport-100)}body.login-page .login-container{left:0;overflow:hidden;position:fixed;top:0;z-index:var(--z-login)}.login-form{background:var(--color-white);border-radius:var(--radius-12);box-shadow:var(--shadow-login);max-height:var(--height-95vh);max-width:var(--width-login-max);overflow-y:auto;padding:var(--space-40);position:relative;width:var(--percent-90)}.login-form-wide{max-width:var(--width-login-wide)}.login-form h2{color:var(--color-text-primary);font-size:var(--text-24);font-weight:600;margin-bottom:var(--space-50);text-align:center}.form-group{margin-bottom:var(--space-24)}.form-group label{color:var(--color-text-secondary);display:block;font-weight:500;margin-bottom:var(--space-8)}.form-group input,.form-group select{border:2px solid var(--color-gray-300);border-radius:var(--radius-12);font-size:var(--text-14);padding:var(--space-12);transition:var(--transition-slow);width:100%}.form-group input:focus,.form-group select:focus{border-color:var(--color-primary-500);outline:none}.form-tips{background-color:var(--color-gray-50);border:1px solid var(--color-gray-300);border-radius:var(--radius-6);margin-bottom:var(--space-24);margin-top:var(--space-8);padding:var(--space-12)}.form-tips p{color:var(--color-gray-600);font-size:var(--text-12);line-height:1.4;margin:0}.form-tips p:not(:last-child){margin-bottom:var(--space-4)}.subjects-grid{display:grid;gap:var(--space-8);grid-template-columns:repeat(auto-fit,minmax(var(--width-subject-min),1fr));margin-top:var(--space-8)}.checkbox-label{align-items:center;border-radius:var(--radius-6);cursor:pointer;display:flex;font-weight:400!important;padding:var(--space-8);transition:var(--transition-base)}.checkbox-label:hover{background-color:var(--color-gray-50)}.checkbox-label input[type=checkbox]{margin-right:var(--space-8);width:auto}.error-message{background-color:var(--color-error-bg);border-left:4px solid var(--color-error-500);border-radius:var(--radius-6);color:var(--color-error-500);margin-bottom:var(--space-24);padding:var(--space-12)}.form-actions{display:flex;gap:var(--space-12);margin-top:var(--space-24)}.form-actions button{border:none;border-radius:var(--radius-8);cursor:pointer;flex:1;font-size:var(--text-14);font-weight:500;padding:var(--space-12) var(--space-24);transition:var(--transition-slow)}.form-actions button[type=submit]{background:linear-gradient(135deg,var(--color-primary-500) 0,var(--color-primary-600) 100%);color:var(--color-white)}.form-actions button[type=submit]:hover:not(:disabled){box-shadow:var(--shadow-hover);transform:translateY(-2px)}.form-actions button[type=submit]:disabled{cursor:not-allowed;opacity:.6}.form-actions button[type=button]{background:var(--color-gray-50);border:2px solid var(--color-gray-300);color:var(--color-text-tertiary)}.form-actions button[type=button]:hover{background:var(--color-gray-900);border-color:var(--color-gray-1000)}.form-links{display:flex;font-size:var(--text-13);gap:var(--space-16);justify-content:center;margin-top:var(--space-12)}.form-links .link-button{background:none;border:none;color:var(--color-gray-700);cursor:pointer;padding:0}.form-links .link-button:hover{color:var(--color-blue-600);text-decoration:underline}.login-tabs{background:var(--color-gray-50);border-radius:var(--radius-8);display:flex;gap:var(--space-8);margin-bottom:var(--space-24);padding:var(--space-4)}.login-tab{background:transparent;border:none;border-radius:var(--radius-6);color:var(--color-text-tertiary);cursor:pointer;flex:1;font-size:var(--text-14);font-weight:500;padding:var(--space-10) var(--space-16);transition:var(--transition-base)}.login-tab:hover{color:var(--color-text-primary)}.login-tab--active{background:var(--color-white);box-shadow:var(--shadow-sm);color:var(--color-primary-500)}.login-qrcode{align-items:center;display:flex;flex-direction:column;padding:var(--space-24) 0}.login-qrcode__container{align-items:center;background:var(--color-white);border:2px solid var(--color-gray-300);border-radius:var(--radius-12);display:flex;height:200px;justify-content:center;margin-bottom:var(--space-16);width:200px}.login-qrcode__container canvas{display:block}.login-qrcode__expired{align-items:center;color:var(--color-error-500);display:flex;flex-direction:column;height:100%;justify-content:center;width:100%}.login-qrcode__expired svg{margin-bottom:var(--space-8)}.login-qrcode__hint{color:var(--color-text-secondary);font-size:var(--text-13);margin-top:var(--space-8);text-align:center}.login-qrcode__refresh{background:var(--color-primary-500);border:none;border-radius:var(--radius-6);color:var(--color-white);cursor:pointer;font-size:var(--text-13);margin-top:var(--space-12);padding:var(--space-8) var(--space-16);transition:var(--transition-base)}.login-qrcode__refresh:hover{background:var(--color-primary-600)}.login-qrcode__status{color:var(--color-text-secondary);font-size:var(--text-14);margin-top:var(--space-8)}.login-qrcode__status--success{color:var(--color-success-500)}.login-sms{align-items:center;display:flex;gap:var(--space-12)}.login-sms__code-input{flex:1}.login-sms__send-btn{background:var(--color-primary-500);border:none;border-radius:var(--radius-8);color:var(--color-white);cursor:pointer;font-size:var(--text-14);min-width:110px;padding:var(--space-12) var(--space-16);transition:var(--transition-base);white-space:nowrap}.login-sms__send-btn:hover:not(:disabled){background:var(--color-primary-600)}.login-sms__send-btn:disabled{cursor:not-allowed;opacity:.6}.login-sso{border-top:1px solid var(--color-gray-300);margin-top:var(--space-24);padding-top:var(--space-24)}.login-sso__title{color:var(--color-text-tertiary);font-size:var(--text-13);margin-bottom:var(--space-16);text-align:center}.login-sso__buttons{display:flex;gap:var(--space-16);justify-content:center}.login-sso__btn{align-items:center;background:var(--color-white);border:2px solid var(--color-gray-300);border-radius:var(--radius-8);cursor:pointer;display:flex;height:48px;justify-content:center;transition:var(--transition-base);width:48px}.login-sso__btn:hover{border-color:var(--color-primary-500);transform:translateY(-2px)}.login-sso__btn svg{height:24px;width:24px}.login-sso__btn--wechat{color:#07c160}.login-sso__btn--wechat:hover{border-color:#07c160}.login-sso__btn--alipay{color:#1677ff}.login-sso__btn--alipay:hover{border-color:#1677ff}.plan-page{background:var(--color-white,#fff);border-radius:var(--radius-12,12px);box-sizing:border-box;display:flex;flex-direction:column;height:calc(100vh - var(--app-header-height, 96px));overflow:hidden;padding:8px 16px 12px}.plan-layout{display:grid;flex:1;gap:15px;grid-template-columns:2fr 8fr;height:100%;min-height:0;position:relative}.plan-resizer{background:transparent;bottom:0;cursor:col-resize;position:absolute;top:0;width:8px;z-index:20}@media (max-width:768px){.plan-layout{display:flex;flex-direction:column;grid-template-columns:1fr!important}.plan-resizer{display:none}.plan-tree{height:auto}.plan-content{margin-top:12px}}.plan-tree{padding:12px 12px 8px}.plan-content,.plan-tree{background:var(--color-white,#fff);border:1px solid var(--color-gray-200,#e5e7eb);border-radius:var(--radius-8);height:100%;min-height:0;overflow-y:auto}.plan-content{display:flex;flex-direction:column;padding:12px}.plan-tree__level{margin-bottom:8px}.plan-tree__node{gap:6px}.plan-tree__node-icon{align-items:center;display:inline-flex;margin-right:6px}.plan-tree__node--grade{font-weight:700}.plan-tree__node--semester{align-items:center;display:flex;justify-content:space-between}.plan-tree__node--exam{align-items:center;display:flex;gap:6px;justify-content:flex-start;margin:4px 0}.plan-tree__node--selected{text-decoration:none}.plan-tree__children{margin-left:12px}.plan-tree__children--collapsed{display:none}.plan-tree__actions{display:none;gap:8px}.plan-tree__node--semester:hover .plan-tree__actions{display:inline-flex}.plan-tree__exam-actions{display:none;gap:6px}.plan-tree__node--exam:hover .plan-tree__exam-actions{display:inline-flex}.plan-tree__add-row{align-items:center;display:flex;gap:8px;margin-top:8px}.plan-input{border:1px solid var(--primary-color,#3b82f6);border-radius:6px;flex:1;outline:none;padding:6px 8px}.plan-input:focus{border-color:var(--primary-color,#3b82f6);box-shadow:0 0 0 2px rgba(59,130,246,.15)}.btn-small{font-size:12px;height:auto;line-height:1.4;padding:2px 8px}.plan-tree__actions .btn-small{height:calc(1.4em + 6px)}.icon-btn{align-items:center;display:inline-flex;height:1.6em;justify-content:center;padding:0;width:1.6em}.icon-btn:hover{background:transparent!important;color:var(--color-gray-800,#1e293b)}.icon-btn:disabled{opacity:.4}.plan-tree__add-btn{display:none;margin-left:auto}.plan-tree__node--subject{align-items:center;display:flex}.plan-tree__node:hover .plan-tree__add-btn{display:inline-flex}.plan-tree__folder-actions{display:none}.plan-tree__node--folder .folder-icon,.plan-tree__node--folder .folder-name,.plan-tree__node:hover .plan-tree__folder-actions{display:inline-flex}.plan-tree__node--folder.drag-over{background:var(--color-gray-100,#f1f5f9);border-radius:6px}.plan-tree__node--folder.dragging{opacity:.7}.plan-tree__node--folder{white-space:nowrap}.plan-content__placeholder{color:var(--color-slate-500);padding:16px}.plan-breadcrumb{align-items:center;color:var(--color-gray-700,#334155);display:flex;font-weight:600;gap:6px;margin-top:8px}.plan-breadcrumb__sep{color:var(--color-gray-400,#94a3b8)}.goal-plan-panel{display:flex;flex-direction:column;height:100%;min-height:0}.goal-plan-panel__header{align-items:center;border-bottom:1px solid var(--color-gray-1200,#e5e7eb);display:flex;justify-content:space-between;padding:12px}.goal-plan-panel__header h2{color:var(--color-text-primary,#333);font-size:18px;font-weight:600;margin:0}.goal-plan-panel__setting-btn{background:var(--primary-color,#3b82f6);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px}.goal-plan-panel__setting-btn:hover{background:var(--color-blue-600,#2563eb)}.goal-plan-panel__content{flex:1;min-height:0;overflow-y:auto;padding-bottom:8px}.plan-tree{scrollbar-width:none}.plan-tree:hover{scrollbar-width:thin}.plan-tree::-webkit-scrollbar{height:0;width:0}.plan-tree:hover::-webkit-scrollbar{height:8px;width:8px}.plan-tree::-webkit-scrollbar-thumb{background-color:var(--color-slate-300,#cbd5e1);border-radius:8px}.plan-tree::-webkit-scrollbar-track{background:transparent}.plan-content{overscroll-behavior:contain;scrollbar-width:thin}.plan-content::-webkit-scrollbar{height:8px;width:8px}.plan-content::-webkit-scrollbar-thumb{background-color:var(--color-slate-300,#cbd5e1);border-radius:8px}.plan-content::-webkit-scrollbar-track{background:transparent}.question-set-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(234px,1fr));padding:6px 0}.question-set-card{background:var(--color-white,#fff);border:1px solid var(--color-gray-200,#e5e7eb);border-radius:10px;box-shadow:0 2px 8px rgba(0,0,0,.04);display:flex;flex-direction:column;gap:6px;overflow:hidden;padding:10px;position:relative;transition:box-shadow .2s ease,transform .2s ease}.question-set-card:before{background:var(--color-gray-200,#e5e7eb);bottom:0;content:"";left:0;position:absolute;top:0;width:3px}.question-set-card:hover{box-shadow:0 6px 16px rgba(2,6,23,.1);transform:translateY(-1px)}.question-set-card:focus-within:before,.question-set-card:focus:before,.question-set-card:hover:before{background:var(--primary-color,#3b82f6)}.question-set-card--selected:before{background:var(--primary-color,#3b82f6)}.question-set-card__header{align-items:center;display:flex;gap:10px;justify-content:space-between}.question-set-card__header .header-left{align-items:center;color:var(--color-gray-500,#64748b);display:flex;font-size:12px;gap:6px}.question-set-card__header .header-right{align-items:center;display:flex;gap:8px}.badge{align-items:center;background:var(--color-gray-50,#f8fafc);border:1px solid var(--color-gray-200,#e5e7eb);border-radius:999px;color:var(--color-gray-700,#374151);display:inline-flex;font-size:12px;padding:2px 8px;white-space:nowrap}.badge-grade{background:var(--color-indigo-100,#eef2ff);color:var(--color-indigo-700,#4338ca)}.badge-subject{background:var(--color-sky-100,#e0f2fe);color:var(--color-sky-800,#075985)}.badge-status.draft{background:var(--color-orange-100,#fff7ed);color:var(--color-orange-800,#9a3412)}.badge-status.active{background:var(--color-emerald-100,#ecfdf5);color:var(--color-emerald-700,#166534)}.badge-status.archived{background:var(--color-gray-100,#f3f4f6);color:var(--color-gray-700,#374151)}.question-set-card__titlebar{align-items:center;display:flex;flex-wrap:wrap;font-size:13px;gap:8px}.question-set-card__titlebar .titlebar-left{align-items:center;display:inline-flex;gap:6px}.question-set-card__titlebar .titlebar-main{align-items:baseline;display:inline-flex;gap:6px}.question-set-card__titlebar .set-type-text{color:var(--color-gray-500,#64748b)}.question-set-card__titlebar .title-text{color:var(--color-gray-900,#111827);font-weight:600}.question-set-card__titlebar .price-text{color:var(--color-teal-700,#0f766e);font-weight:600}.question-set-card__titlebar .time-text{color:var(--color-gray-500,#64748b);display:block;font-size:11px;margin-top:4px;width:100%}.question-set-card__body{display:flex;flex:1;flex-direction:column;gap:6px}.question-set-card__main{align-items:flex-start;display:flex;gap:10px}.notebook-excerpt{background:repeating-linear-gradient(to bottom,var(--color-white,#fff) 0,var(--color-white,#fff) 26px,var(--color-gray-50,#f8fafc) 26px,var(--color-gray-50,#f8fafc) 27px);border:1px solid var(--color-gray-200,#e5e7eb);border-radius:8px;color:var(--color-gray-700,#374151);font-size:13px;height:120px;line-height:1.7;overflow:hidden;padding:10px 12px 10px 42px;position:relative}.notebook-excerpt:before{background-image:linear-gradient(to bottom,var(--color-orange-50,#fff7ed) 0,var(--color-orange-100,#ffedd5) 100%),radial-gradient(circle at 12px 14px,var(--color-slate-300,#cbd5e1) 0 4px,transparent 5px);background-repeat:no-repeat,repeat-y;background-size:100% 100%,28px 28px;border-right:1px solid var(--color-gray-200,#e5e7eb);bottom:0;content:"";left:0;position:absolute;top:0;width:28px}.notebook-excerpt.markdown-preview{font-size:12px;line-height:1.6;overflow:hidden;padding:10px 12px 10px 42px}.notebook-excerpt.markdown-preview h1{font-size:16px;margin-bottom:6px;margin-top:8px}.notebook-excerpt.markdown-preview h2{font-size:14px;margin-bottom:4px;margin-top:6px}.notebook-excerpt.markdown-preview h3{font-size:13px;margin-bottom:4px;margin-top:4px}.notebook-excerpt.markdown-preview p{margin:0 0 6px}.notebook-excerpt.markdown-preview ol,.notebook-excerpt.markdown-preview ul{margin:6px 0;padding-left:18px}.notebook-excerpt.markdown-preview blockquote{margin:6px 0;padding:8px 10px}.notebook-excerpt.markdown-preview pre{font-size:11px;margin:8px 0;padding:10px}.notebook-excerpt.markdown-preview code{font-size:11px}.card-icon-btn.view{background:var(--color-amber-500,#f59e0b);border-color:var(--color-amber-500,#f59e0b);color:var(--color-white,#fff)}.card-icon-btn.view:hover{background:var(--color-amber-600,#d97706);border-color:var(--color-amber-600,#d97706)}.question-set-card .thumbnail{align-items:center;background:var(--color-gray-50,#f8fafc);border:1px solid var(--color-gray-200,#e5e7eb);border-radius:8px;display:flex;flex-shrink:0;height:120px;justify-content:center;overflow:hidden;width:90px}.question-set-card .thumbnail img{height:100%;object-fit:contain;object-position:center;width:100%}.question-set-card .thumbnail .thumbnail-placeholder{color:var(--color-gray-400,#94a3b8);font-size:12px}.question-set-card__info{color:var(--color-gray-700,#374151);display:flex;flex:1;flex-direction:column;font-size:12px;gap:4px}.question-set-card__info-row{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.question-set-card__info-title{color:var(--primary-color,#033c97);font-size:14px;font-weight:700}.question-set-card__info-item{color:var(--color-amber-500,#eab308)}.question-set-card__logo{align-items:center;background:var(--color-blue-50,#eff6ff);border-radius:6px;color:var(--color-blue-700,#1d4ed8);display:inline-flex;font-size:12px;height:20px;justify-content:center;width:20px}.question-set-card .body-left{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--color-gray-700,#374151);display:-webkit-box;font-size:12px;line-height:1.6;max-height:60px;min-height:60px;overflow:hidden}.question-set-card .body-left.placeholder-text{color:var(--color-gray-400,#94a3b8)}.question-set-card .body-left p{margin:0 0 4px}.question-set-card .body-left img{cursor:zoom-in;display:block;filter:none;height:100%!important;object-fit:contain;object-position:center center;width:100%!important}.question-set-card .body-actions{align-items:center;display:flex;justify-content:space-between;margin-top:auto;padding-top:6px}.questions-page .question-set-card .body-actions.body-actions--right{justify-content:flex-end}.question-set-card .actions-left,.question-set-card .actions-right{align-items:center;display:flex;gap:5px}.card-icon-btn{align-items:center;appearance:none;background:var(--color-slate-100,#f1f5f9);border:1px solid var(--color-gray-200,#e5e7eb);border-radius:6px;color:var(--color-gray-600,#334155);cursor:pointer;display:inline-flex;justify-content:center;padding:6px}.card-icon-btn:hover{background:var(--color-slate-200,#e2e8f0)}.card-icon-btn.ghost{background:transparent;border:0;color:var(--color-gray-500,#64748b)}.card-icon-btn.primary{background:var(--primary-color,#3b82f6);border-color:var(--primary-color,#3b82f6);color:var(--color-white,#fff)}.card-icon-btn.primary:hover{background:var(--color-blue-600,#2563eb);border-color:var(--color-blue-600,#2563eb)}.card-icon-btn.success{background:var(--color-emerald-500,#10b981);border-color:var(--color-emerald-500,#10b981);color:var(--color-white,#fff)}.card-icon-btn.success:hover{background:var(--color-emerald-600,#059669);border-color:var(--color-emerald-600,#059669)}.card-icon-btn.warning{background:var(--color-amber-500,#f59e0b);border-color:var(--color-amber-500,#f59e0b);color:var(--color-white,#fff)}.card-icon-btn.warning:hover{background:var(--color-amber-600,#d97706);border-color:var(--color-amber-600,#d97706)}.card-icon-btn.danger{background:var(--color-red-500,#ef4444);border-color:var(--color-red-500,#ef4444);color:var(--color-white,#fff)}.card-icon-btn.danger:hover{background:var(--color-red-600,#dc2626);border-color:var(--color-red-600,#dc2626)}.question-set-modal{background:var(--color-white,#fff);border-radius:10px;max-width:860px;width:100%}.confirm-popover{background:var(--color-white,#fff);border:1px solid var(--color-gray-200,#e5e7eb);border-radius:8px;box-shadow:0 8px 16px rgba(2,6,23,.08);padding:10px;z-index:2000}.confirm-popover__row{color:var(--color-gray-600,#334155);display:flex;font-size:13px}.confirm-popover__text{white-space:normal;word-break:break-word}.confirm-popover__icon{color:var(--color-red-600,#dc2626);height:18px;width:18px}.confirm-popover__actions{display:flex;margin-top:8px}.btn.btn-xs{border-radius:6px;font-size:12px;padding:4px 8px}.image-viewer-modal-overlay{background:rgba(0,0,0,.85);bottom:0;left:0;padding:40px;position:fixed;right:0;top:0;z-index:9999}.image-viewer-modal,.image-viewer-modal-overlay{align-items:center;display:flex;justify-content:center}.image-viewer-modal{background:transparent;border-radius:8px;max-height:100%;max-width:100%;position:relative}.image-viewer-modal__close{align-items:center;background:hsla(0,0%,100%,.2);border:none;border-radius:50%;color:var(--color-white,#fff);cursor:pointer;display:flex;height:32px;justify-content:center;position:absolute;right:0;top:-36px;transition:background .2s;width:32px}.image-viewer-modal__close:hover{background:hsla(0,0%,100%,.3)}.image-viewer-modal__image{border-radius:8px;box-shadow:0 8px 32px rgba(0,0,0,.3);max-height:calc(100vh - 80px);max-width:100%;object-fit:contain}.goal-plan-panel__content{overscroll-behavior:contain;scrollbar-width:thin}.goal-plan-panel__content::-webkit-scrollbar{height:8px;width:8px}.goal-plan-panel__content::-webkit-scrollbar-thumb{background-color:var(--color-slate-300,#cbd5e1);border-radius:8px}.goal-plan-panel__content::-webkit-scrollbar-track{background:transparent}.goal-plan-panel__placeholder{align-items:center;color:var(--color-gray-500,#6b7280);display:flex;flex-direction:column;height:100%;justify-content:center;text-align:center}.goal-plan-panel__placeholder-icon{font-size:48px;margin-bottom:16px}.goal-plan-document{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;padding:12px 24px 24px}.goal-plan-document__header{border-bottom:2px solid var(--color-gray-200,#e5e7eb);margin-bottom:24px;padding-bottom:16px}.goal-plan-document__header h1{color:var(--color-text-primary,#333);font-size:24px;font-weight:700;margin:0 0 8px}.goal-plan-document__meta{color:var(--color-gray-500,#6b7280);display:flex;font-size:14px;gap:16px}.goal-plan-document__section{margin-bottom:24px}.goal-plan-document__section h2{color:var(--color-gray-700,#374151);font-size:18px;font-weight:600;margin:0 0 12px}.goal-plan-document__section h3{color:var(--color-gray-600,#4b5563);font-size:16px;font-weight:600;margin:12px 0 8px}.goal-plan-document__content{background:var(--color-gray-50,#f9fafb);border:1px solid var(--color-gray-200,#e5e7eb);border-radius:8px;padding:16px}.subject-tags{margin-top:8px}.subject-tag{background:var(--primary-color,#3b82f6);border-radius:16px;color:var(--color-white,#fff);font-size:14px;padding:4px 12px}.subject-tags--selectable{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.subject-tags--selectable .subject-tag{background:var(--color-gray-100,#f3f4f6);border:1px solid var(--color-gray-300,#d1d5db);color:var(--color-gray-700,#374151);cursor:pointer;transition:all .2s ease}.subject-tags--selectable .subject-tag:hover{background:var(--color-gray-200,#e5e7eb)}.subject-tags--selectable .subject-tag.active{background:var(--primary-color,#3b82f6);border-color:var(--primary-color,#3b82f6);color:var(--color-white,#fff)}.subject-tag .subject-icon{margin-right:4px}.score-targets{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}@media (max-width:1024px){.score-targets{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.score-targets{grid-template-columns:1fr}}.score-target{background:var(--color-white,#fff);border:1px solid var(--color-gray-300,#d1d5db);border-radius:6px;padding:16px}.score-target h3{color:var(--color-gray-800,#1f2937);margin:0 0 8px}.score-target p{color:var(--color-gray-700,#374151);margin:4px 0}.score-target p.positive{color:var(--color-emerald-600,#059669)}.score-target p.negative{color:var(--color-red-600,#dc2626)}.score-target p.zero{color:var(--color-gray-900,#111827)}.university-list{margin:8px 0;padding-left:20px}.university-list li{color:var(--color-gray-500,#6b7280);margin:2px 0}.grade-summary{background:var(--color-white,#fff);border:1px solid var(--color-gray-300,#d1d5db);border-radius:6px;margin-bottom:12px;padding:12px}.grade-summary h3{color:var(--color-gray-800,#1f2937);margin:0 0 8px}.grade-summary p{color:var(--color-gray-500,#6b7280);margin:4px 0}.semester-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.semester-item{background:var(--color-gray-200,#e5e7eb);border-radius:4px;color:var(--color-gray-700,#374151);font-size:12px;padding:4px 8px}.subject-groups{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}@media (max-width:1024px){.subject-groups{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.subject-groups{grid-template-columns:1fr}}.subject-group{background:var(--color-white,#fff);border:1px solid var(--color-gray-300,#d1d5db);border-radius:6px;padding:16px}.subject-group h3{color:var(--color-gray-800,#1f2937);margin:0 0 12px}.key-goals ul{margin:8px 0;padding-left:20px}.key-goals li{color:var(--color-gray-700,#374151);margin:4px 0}.goal-description{color:var(--color-gray-500,#6b7280);font-size:14px}.learning-plan{margin-top:12px}.learning-plan p{color:var(--color-gray-700,#374151);line-height:1.6}.score-table{background:var(--color-white,#fff);border:1px solid var(--color-gray-300,#d1d5db);border-collapse:collapse;border-radius:6px;overflow:hidden;width:100%}.score-table th{background:var(--color-gray-100,#f3f4f6);border-bottom:1px solid var(--color-gray-300,#d1d5db);font-weight:600;text-align:left}.score-table td,.score-table th{color:var(--color-gray-700,#374151);padding:12px}.score-table td{border-bottom:1px solid var(--color-gray-200,#e5e7eb)}.score-table td.positive{color:var(--color-emerald-600,#059669)}.score-table td.negative{color:var(--color-red-600,#dc2626)}.score-table td.zero{color:var(--color-gray-900,#111827)}.score-table tr:last-child td{border-bottom:none}.positive{color:var(--color-emerald-600,#059669);font-weight:600}.negative{color:var(--color-red-600,#dc2626);font-weight:600}.zero{color:var(--color-gray-900,#111827);font-weight:600}.total-score{background:var(--color-gray-100,#f3f4f6);border-radius:6px;margin-top:16px;padding:16px}.total-score p{font-weight:600;margin:4px 0}.exam-summary-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.exam-summary-card{background:var(--color-white,#fff);border:1px solid var(--color-gray-200,#e5e7eb);border-radius:6px;display:flex;flex-direction:column;gap:6px;padding:10px}.exam-summary-header{color:var(--color-gray-800,#1f2937);font-weight:600}.exam-summary-meta{color:var(--color-gray-500,#6b7280);font-size:12px}.exam-summary-stats{display:flex;font-size:13px;gap:8px;justify-content:space-between}.exam-summary-stats .positive{color:var(--color-emerald-600,#059669)}.exam-summary-stats .negative{color:var(--color-red-600,#dc2626)}.exam-summary-stats .zero{color:var(--color-gray-900,#111827)}.learning-summary{background:var(--color-white,#fff);border:1px solid var(--color-gray-300,#d1d5db);border-radius:6px;padding:16px}.learning-summary p{color:var(--color-gray-700,#374151);line-height:1.6;margin:0}.learning-summary ol,.learning-summary ul{margin:0;padding-left:1.25em}.learning-summary li{line-height:1.6;margin:0}.empty-field{color:var(--color-gray-400,#9ca3af);font-style:italic;text-decoration:underline;text-decoration-color:var(--color-gray-300,#d1d5db);text-decoration-style:wavy}.node-info p{color:var(--color-gray-700,#374151);margin:8px 0}.node-info strong{color:var(--color-gray-800,#1f2937)}.function-description ul{margin:8px 0;padding-left:20px}.function-description li{color:var(--color-gray-500,#6b7280);margin:4px 0}.modal-overlay{background:rgba(0,0,0,.5);bottom:0;left:0;right:0;top:0}.modal-content{background:var(--color-white,#fff);border-radius:12px;box-shadow:0 20px 25px -5px rgba(0,0,0,.1);display:flex;flex-direction:column;max-height:90vh;max-width:800px;width:90%}.modal-content.modal-content--plan{max-width:800px;overflow:visible}.modal-content.modal-content--plan .modal-body{flex:1;max-height:none;overflow:visible;overflow-y:auto}.modal-content.modal-content--plan .modal-footer{border-bottom-left-radius:12px;border-bottom-right-radius:12px}.modal-content.modal-content--plan .modal-header{border-top-left-radius:12px;border-top-right-radius:12px}.modal-overlay{overflow-y:auto}.modal-header{align-items:center;border-bottom:1px solid var(--color-gray-200,#e5e7eb);display:flex;justify-content:space-between;padding:20px}.modal-header h2{color:var(--color-text-primary,#333);font-size:20px;font-weight:600;margin:0}.modal-close{background:none;border:none;color:var(--color-gray-500,#6b7280);cursor:pointer;font-size:24px;padding:4px}.modal-close:hover{color:var(--color-gray-700,#374151)}.modal-body{padding:20px}.modal-footer{background:var(--color-white,#fff);border-top:1px solid var(--color-gray-200,#e5e7eb);bottom:0;display:flex;gap:12px;justify-content:flex-end;padding:20px;position:sticky;z-index:10}.goal-setting-content{gap:24px}.form-section{background:var(--color-white,#fff);border:1px solid var(--color-gray-200,#e5e7eb);border-radius:8px;padding:20px}.key-goal-form input{flex:1}.records-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));padding:4px 0}.records-grid--compact{gap:10px}.record-card{background:var(--color-white,#fff);border:1px solid var(--color-gray-200,#e5e7eb);border-radius:10px;box-shadow:0 2px 10px rgba(2,6,23,.06);overflow:hidden;position:relative;transition:box-shadow .2s ease,transform .2s ease}.record-card:before{background:var(--color-gray-200,#e5e7eb);bottom:0;content:"";left:0;position:absolute;top:0;width:3px}.record-card:hover{box-shadow:0 6px 16px rgba(2,6,23,.1);transform:translateY(-1px)}.record-card:focus-within:before,.record-card:focus:before,.record-card:hover:before{background:var(--primary-color,#3b82f6)}.record-card__header{align-items:center;display:flex;justify-content:space-between;padding:10px 12px}.record-card__title{align-items:center;display:inline-flex;gap:8px}.record-card__tags{display:flex;flex-wrap:wrap;gap:6px;padding:8px 12px 12px}.record-card__footer{padding:8px 12px}.card-actions{display:flex;gap:8px;justify-content:flex-end}.tag{align-items:center;background:#f8fafc;border-radius:999px;color:#475569;display:inline-flex;font-size:12px;font-weight:500;gap:6px;padding:4px 10px}.tag--date{background:#f1f5f9}.tag--grade{background:rgba(238,242,255,.8);color:#4f46e5}.tag--subject{background:rgba(236,254,255,.8);color:#0891b2}.tag--strategy{background:rgba(255,247,237,.85);color:#c2410c}.tag--strategy.strategy-wrong_first{background:rgba(255,237,213,.9);border:1px solid #fdba74;color:#9a3412}.tag--strategy.strategy-new_first{background:rgba(240,253,244,.9);border:1px solid #86efac;color:#166534}.tag--strategy.strategy-random{background:rgba(239,246,255,.9);border:1px solid #93c5fd;color:#1e3a8a}.tag--count{background:rgba(240,253,244,.85);color:#166534}.tag--study{background:rgba(224,231,255,.85);color:#3730a3}.accuracy{border-radius:999px;font-size:12px;font-weight:500;padding:4px 10px}.accuracy.high{background:#ecfdf5;border:1px solid #86efac;color:#065f46}.accuracy.medium{background:#f1f5f9;border:1px solid #cbd5e1;color:#1f2937}.accuracy.low{background:#fee2e2;border:1px solid #fca5a5;color:#7f1d1d}.key-goal-form .btn{margin-left:auto}.form-section h3{color:#374151;font-size:16px;font-weight:600;margin:0 0 16px}.form-section h4{color:#4b5563;font-size:14px;font-weight:600;margin:12px 0 8px}.form-row{margin-bottom:16px}.form-row label{color:#374151;display:block;font-weight:500;margin-bottom:6px}.form-row--inline label{align-items:center;display:inline-flex;gap:8px;margin-bottom:0}.form-row input,.form-row select,.form-row textarea{border:1px solid #d1d5db;border-radius:6px;box-sizing:border-box;font-size:14px;padding:8px 12px;width:100%}.form-row .admin-date-range{width:100%}.form-row .admin-date-range-display{box-sizing:border-box;width:100%}.form-row input:focus,.form-row select:focus,.form-row textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1);outline:none}.subject-options{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.subject-checkbox{align-items:center;cursor:pointer;display:flex;font-weight:400;gap:8px}.subject-checkbox input{width:auto}.score-target-form,.semester-goal-form,.subject-group-form{background:#fff;border:1px solid #d1d5db;border-radius:6px;margin-bottom:16px;padding:16px}.subject-checkboxes{display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(100px,1fr))}.key-goal-form{gap:8px;margin-bottom:8px}.subject-group-delete{position:absolute;right:8px;top:8px}.total-score-display{background:#ecfdf5;border:1px solid #10b981;border-radius:6px;margin-top:12px;padding:12px}.summary-textarea{border:1px solid #d1d5db;border-radius:10px;box-sizing:border-box;font-size:14px;min-height:160px;padding:12px;resize:vertical;width:100%}.semester-goal-grid{display:grid!important;gap:12px;grid-template-columns:auto 1fr 1fr!important}@media (max-width:640px){.semester-goal-grid{grid-template-columns:1fr!important}}.semester-goal-grid input,.semester-goal-grid select{border:1px solid #d1d5db;border-radius:6px;font-size:14px;padding:8px 12px;width:100%}.semester-goal-grid input:focus,.semester-goal-grid select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1);outline:none}.semester-goal-grid>label{align-items:center;display:flex;gap:8px}.semester-goal-grid>label>input,.semester-goal-grid>label>select{flex:1}.summary-textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1);outline:none}.required-star{color:#ef4444;margin-left:4px}.flex-align-center{align-items:center;display:flex;gap:8px}.flex-align-center input{flex:1}.subject-icon-wrapper{align-items:center;display:inline-flex;gap:6px}.date-range{gap:8px}.date-range input{border:1px solid #d1d5db;border-radius:6px;font-size:14px;padding:8px 12px;width:100%}.date-range input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1);outline:none}.date-sep{color:#6b7280}.grid-span-2{grid-column:2/span 2}.btn{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s}.btn-primary{background:#3b82f6;color:#fff}.btn-primary:hover{background:#2563eb}.btn-secondary{background:#6b7280;color:#fff}.btn-secondary:hover{background:#4b5563}.btn-danger{background:#ef4444;color:#fff}.btn-danger:hover{background:#dc2626}.btn-light{background:linear-gradient(135deg,#e5e7eb,#d1d5db);border:1px solid #e5e7eb;box-shadow:0 2px 8px rgba(209,213,219,.5);color:#374151}.btn-light:hover{background:linear-gradient(135deg,#d1d5db,#cbd5e1);color:#1f2937}.btn-sm{font-size:12px;padding:4px 8px}.subject-tags{gap:8px}.subject-tag{align-items:center;background:#fff;border:1px solid #d1d5db;border-radius:10px;color:#374151;display:inline-flex;font-weight:500;gap:6px;padding:6px 12px}.subject-icon{font-size:16px}.subject-tag--chinese{background:#f5f3ff;border-color:#c4b5fd}.subject-tag--math{background:#eff6ff;border-color:#93c5fd}.subject-tag--english{background:#f0fdf4;border-color:#86efac}.subject-tag--physics{background:#fdf4ff;border-color:#f0abfc}.subject-tag--chemistry{background:#fffbeb;border-color:#fde68a}.subject-tag--biology{background:#f0fdf4;border-color:#86efac}.subject-tag--history{background:#fff1f2;border-color:#fca5a5}.subject-tag--geography{background:#eff6ff;border-color:#93c5fd}.subject-tag--politics{background:#f5f5f4;border-color:#a8a29e}.tier-select{display:flex;flex-wrap:wrap;gap:8px}.tier-chip{background:#fff;border:1px solid #d1d5db;border-radius:999px;cursor:pointer;padding:6px 12px}.tier-chip.active{background:#ede9fe;border-color:#a78bfa;color:#6b21a8}.score-target-display{display:grid;gap:10px;grid-template-columns:1fr}.tier-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:12px}.plan-tree__node-content{align-items:center;display:inline-flex}.plan-tree__node-icon-wrapper{margin-right:6px}.plan-tree__node-main{align-items:center;display:inline-flex}.plan-tree__grade-icon-wrapper{margin-right:6px}.plan-tree__toggle--nested{margin-right:2px}.plan-tree__level2-icon-wrapper{margin-right:6px}.plan-tree__add-btn--level2{margin-left:8px}.plan-tree__level3-icon-wrapper{margin-right:6px}.panel-header__icon-wrapper{margin-right:8px}.level1-score-chart{height:360px;width:100%}.chart-legend{align-items:center;display:flex;flex-direction:column;font-size:12px;gap:8px}.chart-legend__series,.chart-legend__tiers{display:flex;gap:16px;justify-content:center}.chart-legend__tiers{flex-wrap:wrap}.chart-legend__item{align-items:center;display:flex;gap:4px}.chart-legend__dot{background-color:#fff;border:2px solid;border-radius:50%;display:inline-block;height:10px;width:10px}.chart-legend__line{border-top:2px dashed;display:inline-block;height:0;width:12px}.chart-legend__label{color:#374151}.score-table__trend--positive{color:#059669}.score-table__trend--negative{color:#dc2626}.score-table__trend--zero{color:#111827}.plugin-renderer__error{color:red;padding:20px;text-align:center}.review-form__toggle{border:1px solid #d1d5db;border-radius:10px;height:20px;padding:0;position:relative;width:36px}.review-form__toggle-knob{background:#fff;border-radius:50%;box-shadow:0 1px 3px rgba(0,0,0,.15);height:16px;position:absolute;top:2px;width:16px}.publisher-feedback-page{padding-bottom:var(--space-40,40px)}.publisher-feedback-page .status-badge{border-radius:var(--radius-full,999px);display:inline-block;font-size:var(--text-12,12px);font-weight:500;padding:var(--space-2,2px) var(--space-8,8px)}.publisher-feedback-page .status-success{background-color:var(--color-success-100,#dcfce7);color:var(--color-success-800,#166534)}.publisher-feedback-page .status-warning{background-color:var(--color-warning-100,#fef9c3);color:var(--color-warning-800,#854d0e)}.publisher-feedback-page .status-danger{background-color:var(--color-danger-100,#fee2e2);color:var(--color-danger-800,#b91c1c)}.publisher-feedback-page .feedback-dropzone{background-color:var(--color-gray-50,#f9fafb);border:1px dashed var(--color-gray-400,#9ca3af);border-radius:var(--radius-8,8px);color:var(--color-slate-500,#64748b);cursor:pointer;font-size:var(--text-13,13px);padding:var(--space-12,12px) var(--space-16,16px);transition:var(--transition-base,all .2s ease)}.publisher-feedback-page .feedback-dropzone--active{background-color:var(--color-blue-100,#dbeafe);border-color:var(--color-blue-500,#3b82f6);color:var(--color-blue-800,#1e40af)}.publisher-feedback-page .feedback-list-item{border-bottom:1px solid var(--color-gray-200,#e2e8f0);padding:var(--space-16,16px)}.publisher-feedback-page .feedback-list-item:last-child{border-bottom:none}.questions-filters .filter-row{align-items:center;display:grid;gap:var(--space-16,16px);grid-template-columns:auto 1fr;width:100%}.admin-aimodels-page .filter-toolbar-row,.admin-feedback-page .filter-toolbar-row,.admin-operation-logs-page .filter-toolbar-row,.admin-users-page .filter-toolbar-row,.favoritebooks-page .filter-toolbar-row,.filter-toolbar-row,.notebooks-page .filter-toolbar-row,.question-sets-page .filter-toolbar-row,.wrong-questions-page .filter-toolbar-row{align-items:center;display:flex;justify-content:space-between}.admin-aimodels-page .filter-toolbar-controls,.admin-feedback-page .filter-toolbar-controls,.admin-operation-logs-page .filter-toolbar-controls,.admin-users-page .filter-toolbar-controls,.favoritebooks-page .filter-toolbar-controls,.filter-toolbar-controls,.notebooks-page .filter-toolbar-controls,.question-sets-page .filter-toolbar-controls,.wrong-questions-page .filter-toolbar-controls{flex-wrap:nowrap}.questions-filters .filter-row.filter-toolbar-row{align-items:center;display:flex;gap:var(--space-12,12px);justify-content:space-between}.filter-toolbar-left{align-items:center;display:flex;gap:8px}.filter-toolbar-right{align-items:center;display:inline-flex;gap:8px;margin-left:auto}.filter-toolbar-controls{align-items:center;display:inline-flex;flex-direction:row-reverse;flex-wrap:wrap;gap:8px}.questions-filters.admin-sets-page .filter-toolbar-controls,.questions-filters.publisher-sets-page .filter-toolbar-controls{flex-wrap:nowrap}.questions-filters .search-input{background-color:var(--color-white,#fff);border:1px solid var(--color-gray-200,#e2e8f0);border-radius:var(--radius-12,12px);color:var(--color-gray-900,#111827);font-size:var(--text-14,14px);line-height:20px;min-width:240px;padding:10px var(--space-12,12px);transition:var(--transition-base,all .2s ease)}.questions-filters .search-input:focus{border-color:var(--color-primary-500,#3b82f6);box-shadow:0 0 0 3px rgba(59,130,246,.1);outline:none}.questions-filters .search-input::placeholder{color:var(--color-gray-400,#9ca3af)}.source-dropdown-selector .source-input-container{align-items:center;background-color:var(--color-white,#fff);border:1px solid var(--color-gray-200,#e2e8f0);border-radius:var(--radius-12,12px);display:inline-flex;gap:6px;max-width:320px;min-width:220px;padding:6px 10px}.source-dropdown-selector .source-item{color:var(--color-gray-900,#111827);font-size:var(--text-14,14px);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.source-dropdown-selector .source-input{background:transparent;border:none;flex:1 1 auto;font-size:var(--text-14,14px);line-height:20px;min-width:80px;outline:none}.source-dropdown-selector .source-input::placeholder{color:var(--color-gray-400,#9ca3af)}.notebooks-page .questions-filters,.practice-records-page .questions-filters{background:var(--color-white,#fff);border:1px solid var(--color-gray-200,#e5e7eb);border-radius:var(--radius-12,12px);box-shadow:var(--shadow-sm,0 2px 8px rgba(0,0,0,.06));min-height:auto;padding:var(--space-12,12px)}.notebooks-page .questions-filters:hover,.practice-records-page .questions-filters:hover{box-shadow:var(--shadow-md,0 4px 12px rgba(0,0,0,.08))}.notebooks-page .questions-filters .filter-row,.practice-records-page .questions-filters .filter-row{align-items:center;gap:var(--space-12,12px)}.question-sets-page .questions-filters{background:var(--color-white,#fff);border:1px solid var(--color-gray-200,#e5e7eb);border-radius:var(--radius-12,12px);box-shadow:var(--shadow-sm,0 2px 8px rgba(0,0,0,.06));min-height:auto;padding:var(--space-12,12px);width:100%}.notebooks-page .rounded-select,.student-question-sets-page .rounded-select{max-width:140px;min-width:140px}.questions-filters .btn-cart{box-shadow:none}.question-sets-page .questions-filters:hover{box-shadow:var(--shadow-md,0 4px 12px rgba(0,0,0,.08))}.question-sets-page .questions-filters .filter-row{align-items:center;display:grid;gap:var(--space-12,12px);grid-auto-flow:column;justify-content:start;width:100%}.question-sets-page .questions-filters .search-input{grid-column:auto;max-width:420px;min-width:280px;width:auto}.question-sets-page .rounded-select,.questions-page .questions-filters--question-list .rounded-select{max-width:140px;min-width:140px}.question-sets-page .multi-filter-group{max-width:320px;min-width:200px;width:100%}.questions-page .plan-tree .publisher-search-input{background-color:var(--color-white,#fff);border:1px solid var(--color-gray-1200,#e1e5e9);border-radius:var(--radius-12,12px);box-shadow:0 1px 2px rgba(15,23,42,.04);font-size:var(--text-13,13px);padding:8px 10px;transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease;width:100%}.questions-page .plan-tree .publisher-search-input:focus{background-color:var(--color-white,#fff);border-color:var(--color-primary-500,#667eea);box-shadow:0 0 0 3px rgba(102,126,234,.1),0 4px 12px rgba(15,23,42,.08);outline:none}@media (max-width:960px){.question-sets-page .questions-filters .filter-row{grid-auto-flow:row}.question-sets-page .questions-filters .search-input{max-width:none;width:100%}}.wrong-questions-page .questions-filters{background:var(--color-white,#fff);border:1px solid var(--color-gray-200,#e5e7eb);border-radius:var(--radius-12,12px);box-shadow:var(--shadow-sm,0 2px 8px rgba(0,0,0,.06));min-height:auto;padding:var(--space-12,12px)}.wrong-questions-page .questions-filters:hover{box-shadow:var(--shadow-md,0 4px 12px rgba(0,0,0,.08))}.wrong-questions-page .questions-filters .filter-row:not(.filter-toolbar-row){align-items:center;display:grid;gap:var(--space-12,12px);grid-auto-flow:column;grid-template-columns:none;justify-content:start;width:100%}.wrong-questions-page .questions-filters .search-input{grid-column:auto;max-width:380px;min-width:260px;width:auto}@media (max-width:960px){.wrong-questions-page .questions-filters .filter-row{grid-auto-flow:row}.wrong-questions-page .questions-filters .search-input{max-width:none;width:100%}}.questions-filters.admin-sets-page .filter-row:not(.filter-toolbar-row){align-items:center;display:grid;gap:var(--space-12,12px);grid-auto-flow:column;grid-template-columns:none;justify-content:start;width:100%}.questions-filters.admin-sets-page .rounded-select{min-width:120px;width:auto}.questions-filters.admin-sets-page .search-input{max-width:420px;min-width:280px}.questions-filters .btn{white-space:nowrap}@media (max-width:960px){.questions-filters.admin-sets-page .filter-row{grid-auto-flow:row;grid-template-columns:1fr}.questions-filters.admin-sets-page .search-input{max-width:none;width:100%}.questions-filters.admin-sets-page .rounded-select{width:100%}}.admin-users-page .questions-filters .filter-row{grid-template-columns:auto 1fr}.admin-users-page .questions-filters .search-input{max-width:360px;min-width:260px;width:auto}@media (max-width:960px){.admin-users-page .questions-filters .search-input{max-width:none;width:100%}}.admin-feedback-page .questions-filters .search-input{max-width:360px;min-width:260px;width:auto}@media (max-width:960px){.admin-feedback-page .questions-filters .search-input{max-width:none;width:100%}}@media (max-width:1200px){.questions-filters .filter-row{gap:var(--space-12,12px);grid-template-columns:1fr 1fr 1fr}.questions-filters .search-input{grid-column:1/-1;margin-bottom:8px}}@media (max-width:768px){.questions-filters .filter-row{gap:var(--space-12,12px);grid-template-columns:1fr}.questions-filters .filter-row select,.questions-filters .search-input{font-size:16px;padding:10px var(--space-14,14px)}.questions-filters .filter-row select{background-position:right 10px center;background-size:14px;padding-right:36px}}@media (max-width:480px){.questions-filters{margin-bottom:var(--space-12,12px);padding:var(--space-12,12px)}.questions-filters .filter-row{gap:10px}}.modal-overlay{align-items:center;backdrop-filter:blur(2px);background:rgba(17,24,39,.6);display:flex;inset:0;justify-content:center;padding:var(--space-24,24px);position:fixed;z-index:1000}.modal{border:1px solid var(--color-gray-200,#e5e7eb);border-radius:var(--radius-12,12px);box-shadow:0 24px 48px rgba(2,6,23,.18),0 8px 20px rgba(2,6,23,.12);display:flex;flex-direction:column;max-height:calc(100vh - 48px);max-width:520px;overflow:hidden;width:100%}.modal,.modal-body{background:var(--color-white,#fff)}@media (max-width:960px){.question-item,.questions-list .list-header{grid-template-columns:50px 1fr}.question-actions,.question-stats{grid-column:2;margin-top:var(--space-12,12px)}.question-stats{display:flex;flex-wrap:wrap;gap:var(--space-12,12px)}.stat-item{flex:1;min-width:120px}}@media (max-width:640px){.question-item,.questions-list .list-header{gap:var(--space-12,12px);grid-template-columns:1fr}.question-checkbox{position:absolute;right:var(--space-16,16px);top:var(--space-16,16px)}.question-item{padding:20px 50px 20px 20px;position:relative}.question-actions,.question-content,.question-stats{grid-column:1}.question-actions{border-top:1px solid var(--color-gray-200,#e2e8f0);justify-content:flex-start;margin-top:var(--space-16,16px);padding-top:var(--space-16,16px)}.btn-sm{align-items:center;display:inline-flex;flex:1;flex-direction:row;justify-content:center;max-width:120px;text-orientation:mixed;white-space:nowrap;writing-mode:horizontal-tb}.questions-header{align-items:flex-start;flex-direction:column;gap:var(--space-12,12px)}.questions-filters .filter-group{width:100%}.questions-filters .filter-group select{flex:1 1 45%;min-width:unset}}.admin-settlements-page{margin-top:8px}.admin-settlements-body{align-items:flex-start;display:grid;gap:var(--space-16,16px);grid-template-columns:320px minmax(0,1fr)}.admin-settlements-left{display:flex;flex-direction:column;gap:var(--space-12,12px)}.admin-settlements-summary{background:var(--color-white,#fff);border:1px solid var(--color-gray-1200,#e5e7eb);border-radius:var(--radius-8,8px);gap:var(--space-12,12px);margin-bottom:8px;margin-top:8px;padding:10px var(--space-12,12px)}.admin-settlements-summary,.admin-settlements-summary-main{align-items:center;display:flex;justify-content:space-between}.admin-settlements-summary-main{flex-direction:row;gap:var(--space-16,16px)}.admin-settlements-summary-header{align-items:center;display:flex;gap:var(--space-12,12px);justify-content:flex-start;margin-bottom:0}.admin-settlements-summary-grid{color:var(--color-gray-700,#374151);display:flex;flex-wrap:nowrap;font-size:var(--text-13,13px);gap:8px;justify-content:flex-end;margin-left:auto}.summary-item{background:var(--color-gray-50,#f9fafb);border:1px solid var(--color-gray-200,#e5e7eb);border-radius:var(--radius-6,6px);padding:8px 10px}.summary-item__label{color:#000;margin-bottom:4px}.summary-item__value{color:var(--color-gray-900,#111827);font-weight:600}.admin-settlements-right{display:flex;flex-direction:column;min-height:0}.admin-settlements-right-header{align-items:center;display:flex;gap:var(--space-12,12px);justify-content:space-between;margin-bottom:8px}.admin-settlements-filters{align-items:center;display:flex;gap:8px;justify-content:flex-end}.admin-settlements-filters .search-input{width:200px}.plan-page.settlements-page{height:calc(100vh - var(--app-header-height, 96px) - 100px)}@media (max-width:1024px){.admin-settlements-summary{align-items:flex-start;flex-direction:column}.admin-settlements-summary-grid{flex-wrap:wrap}.settlements-layout.admin-settlements-body{grid-template-columns:1fr}}body,html{height:100%;width:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--color-gray-100,#f5f5f5);color:var(--color-gray-800,#333);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:var(--text-14,14px);line-height:1.6;margin:0;padding:0}.questions-page{background:var(--color-white,#fff);border-radius:var(--radius-12,12px);margin:0;max-width:none;padding:var(--space-24,24px);width:100%}.questions-layout{align-items:start;display:grid;gap:15px;grid-template-columns:280px 1fr}.questions-layout .plan-tree{background:var(--color-white,#fff);border:1px solid var(--color-gray-1200,#e5e7eb);border-radius:var(--radius-12,12px);max-height:calc(100vh - var(--app-header-height, 96px) - 24px);overflow-y:auto;padding:var(--space-12,12px)}.questions-content{display:flex;flex-direction:column;min-height:0}.plan-tree__node{align-items:center;border-radius:8px;color:var(--color-text-primary,#333);cursor:pointer;display:flex;gap:8px;padding:8px 10px}.plan-tree__node:hover{background:var(--color-gray-1000,#f1f5f9)}.plan-tree__node--selected{background:var(--color-blue-100,#eef2ff);color:var(--primary-color,#3b82f6);font-weight:700}.questions-layout .plan-tree__children{border-left:none;margin-left:0;padding-left:calc(1em + 7px)}.plan-tree__toggle{border:none;color:var(--color-gray-400,#64748b);cursor:pointer;margin-left:0;margin-right:2px}.plan-tree__toggle,.plan-tree__toggle:hover{background:transparent}.plan-tree__node--grade{gap:4px}.plan-tree__node--folder.drag-over{background:var(--color-gray-1000,#f1f5f9);border-radius:8px}@media (max-width:1024px){.questions-layout{grid-template-columns:1fr}.questions-tree{max-height:none}}.admin-users-page{background:var(--color-white,#fff);border-radius:var(--radius-12,12px);margin:0;max-width:none;width:100%}.admin-users-page .questions-filters{margin-bottom:var(--space-12,12px);margin-top:4px}.admin-users-page .data-table{margin-bottom:var(--space-16,16px);margin-top:var(--space-12,12px)}.admin-aimodels-page{background:var(--color-white,#fff);border-radius:var(--radius-12,12px);margin:0;max-width:none;width:100%}.admin-settings-page .content-card .admin-aimodels-page{background:transparent;border-radius:0;margin:0;padding:0}.questions-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--space-16,16px)}.questions-header h1{color:#000;font-size:var(--text-22,22px);font-weight:600;margin:0}.questions-filters,.questions-header .header-actions{display:flex;gap:var(--space-12,12px)}.questions-filters{align-items:center;background:transparent;border:none;border-radius:var(--radius-16,16px);box-shadow:none;flex-wrap:wrap;justify-content:space-between;margin-bottom:4px;min-height:0;padding:6px var(--space-12,12px);transition:box-shadow .3s ease}.questions-filters.questions-filters--question-list{gap:var(--space-16,16px);margin-bottom:10px;min-height:72px;padding:var(--space-20,20px)}.questions-filters:hover{box-shadow:none}.questions-filters .search-box{flex:1 1 300px}.questions-filters .search-box input{border:1px solid var(--color-gray-1200,#e1e5e9);border-radius:var(--radius-8,8px);font-size:var(--text-14,14px);padding:10px var(--space-12,12px);width:100%}.questions-filters .filter-group{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.questions-filters .filter-group select{background:var(--color-white,#fff);font-size:var(--text-14,14px);min-width:140px;padding:10px var(--space-12,12px)}.questions-filters .filter-group select,.questions-filters .sort-order-btn{border:1px solid var(--color-gray-1200,#e1e5e9);border-radius:var(--radius-8,8px)}.questions-filters .sort-order-btn{background:var(--color-gray-1300,#f8f9fa);cursor:pointer;padding:10px 14px}.bulk-actions{align-items:center;background:var(--color-amber-100,#fff7e6);border:1px solid var(--color-amber-200,#ffe58f);border-radius:var(--radius-8,8px);display:flex;justify-content:space-between;margin:var(--space-12,12px) 0;padding:var(--space-12,12px) var(--space-16,16px)}.bulk-actions .bulk-buttons{display:flex;gap:8px}.questions-stats{align-items:stretch;display:flex;flex-wrap:wrap;gap:var(--space-16,16px);justify-content:flex-start;margin:var(--space-16,16px) 0}.questions-stats .stat-item{background:linear-gradient(135deg,var(--color-white,#fff) 0,var(--color-gray-1300,#f8fafc) 100%);border:1px solid var(--color-gray-1100,#e2e8f0);border-radius:var(--radius-12,12px);box-shadow:var(--shadow-sm,0 2px 8px rgba(0,0,0,.06));display:flex;flex:0 1 auto;flex-direction:column;justify-content:center;min-width:120px;padding:var(--space-16,16px) var(--space-20,20px);text-align:center;transition:var(--transition-base,all .2s ease)}.questions-stats .stat-item:hover{border-color:var(--color-blue-500,#3b82f6);box-shadow:var(--shadow-md,0 4px 16px rgba(0,0,0,.12));transform:translateY(-2px)}.questions-stats .stat-item .stat-label{color:var(--color-gray-400,#64748b);display:block;font-size:var(--text-13,13px);font-weight:500;margin-bottom:8px;white-space:nowrap}.questions-stats .stat-item .stat-value{color:var(--color-gray-700,#1e293b);font-size:var(--text-20,20px);font-weight:700;line-height:1.2}.questions-list{margin-top:10px}.questions-page .content-card{padding-bottom:var(--space-12,12px);padding-top:10px}.questions-page .questions-filters.questions-filters--question-list{background:transparent;border:none;box-shadow:none;margin-bottom:8px;min-height:48px;padding:8px 0 6px}.questions-page .questions-filters.questions-filters--question-list .filter-row.filter-toolbar-row{padding:0}.questions-page .questions-filters.questions-filters--question-list+.bulk-actions{margin-top:6px}.questions-page .questions-list{margin-top:8px}.questions-list .list-header{align-items:center;background:linear-gradient(135deg,var(--color-primary-500) 0,var(--color-primary-600) 100%);border-radius:var(--radius-12,12px);box-shadow:0 4px 12px rgba(102,126,234,.3);color:var(--color-white,#fff);font-size:var(--text-14,14px);font-weight:600;margin-bottom:8px;padding:var(--space-16,16px) var(--space-20,20px)}.question-item,.questions-list .list-header{display:grid;gap:var(--space-16,16px);grid-template-columns:50px minmax(0,1fr) 120px 160px}.question-item{align-items:start;background:var(--color-white,#fff);border:1px solid var(--color-gray-200,#e5e7eb);border-radius:var(--radius-16,16px);box-shadow:var(--shadow-sm,0 4px 12px rgba(0,0,0,.08));margin-bottom:var(--space-16,16px);overflow:hidden;padding:var(--space-20,20px);position:relative;transition:box-shadow .3s ease,transform .3s ease,border-color .3s ease}.question-item:before{background:var(--color-gray-1200,#e5e7eb);content:"";height:100%;left:0;opacity:1;position:absolute;top:0;transition:background .3s ease;width:4px}.question-item:hover{border-color:var(--color-indigo-200,#c7d2fe);box-shadow:var(--shadow-md,0 8px 25px rgba(0,0,0,.12))}.question-item:hover:before{background:linear-gradient(135deg,var(--color-primary-500) 0,var(--color-primary-600) 100%)}.question-item.selected{background:linear-gradient(135deg,var(--color-blue-50,#f8faff) 0,var(--color-gray-1000,#f1f5f9) 100%);border-color:var(--color-primary-500);box-shadow:0 8px 25px rgba(102,126,234,.25)}.question-item.preview-open:before,.question-item.selected:before{background:linear-gradient(135deg,var(--color-primary-500) 0,var(--color-primary-600) 100%)}.question-item.preview-open{border-color:var(--color-indigo-200,#c7d2fe);box-shadow:var(--shadow-md,0 8px 25px rgba(0,0,0,.12))}.questions-header .btn{align-items:center;display:inline-flex;height:36px;padding:0 14px}.questions-header .btn-danger:hover,.questions-header .btn-primary:hover,.questions-header .btn-secondary:hover{box-shadow:none;transform:none}.questions-list .question-item .question-content{min-width:0;padding:8px var(--space-12,12px)}.questions-list .question-item .question-content .question-header{align-items:center!important;display:flex!important;flex-wrap:wrap!important;gap:15px!important;justify-content:flex-start!important;margin-bottom:var(--space-12,12px);row-gap:var(--space-12,12px)!important}.question-subject{background:linear-gradient(135deg,var(--color-primary-500) 0,var(--color-primary-600) 100%);box-shadow:0 2px 8px rgba(102,126,234,.3)}.question-subject,.question-type{border-radius:var(--radius-20,20px);color:var(--color-white,#fff);font-size:var(--text-12,12px);font-weight:600;padding:6px var(--space-12,12px)}.question-type{background:linear-gradient(135deg,var(--color-cyan-500,#06b6d4) 0,var(--color-cyan-600,#0891b2) 100%);box-shadow:0 2px 8px rgba(6,182,212,.3)}.question-difficulty{background:linear-gradient(135deg,var(--color-amber-500,#f59e0b) 0,var(--color-amber-600,#d97706) 100%);box-shadow:0 2px 8px rgba(245,158,11,.3)}.question-difficulty,.question-grade{border-radius:var(--radius-20,20px);color:var(--color-white,#fff);font-size:var(--text-12,12px);font-weight:600;padding:6px var(--space-12,12px)}.question-grade{background:linear-gradient(135deg,var(--color-emerald-500,#10b981) 0,var(--color-emerald-600,#059669) 100%);box-shadow:0 2px 8px rgba(16,185,129,.3)}.status-badge{border-radius:999px;box-shadow:0 2px 6px rgba(0,0,0,.08);color:var(--color-white,#fff);padding:4px 10px}.status-badge.enabled{background-color:#10b981;color:#fff}.status-badge.disabled{background-color:#6b7280;color:#fff}.question-source{align-items:center;border-radius:var(--radius-20,20px);display:inline-flex;font-size:var(--text-12,12px);font-weight:600;padding:6px var(--space-12,12px);white-space:nowrap}.source-platform{background:linear-gradient(135deg,var(--color-purple-500,#8b5cf6) 0,var(--color-purple-600,#7c3aed) 100%);box-shadow:0 2px 8px rgba(139,92,246,.3);color:var(--color-white,#fff)}.source-mine{background:linear-gradient(135deg,var(--color-blue-500,#3b82f6) 0,var(--color-blue-600,#2563eb) 100%);box-shadow:0 2px 8px rgba(59,130,246,.3);color:var(--color-white,#fff)}.source-publisher{background:linear-gradient(135deg,var(--color-orange-500,#f97316) 0,var(--color-orange-600,#ea580c) 100%);box-shadow:0 2px 8px rgba(249,115,22,.3);color:var(--color-white,#fff)}.source-student{background:linear-gradient(135deg,var(--color-teal-500,#14b8a6) 0,var(--color-teal-600,#0d9488) 100%);box-shadow:0 2px 8px rgba(20,184,166,.3);color:var(--color-white,#fff)}.admin-question{background:linear-gradient(135deg,var(--color-purple-500,#8b5cf6) 0,var(--color-purple-600,#7c3aed) 100%);box-shadow:0 2px 8px rgba(139,92,246,.3)}.admin-question,.my-question{border-radius:var(--radius-20,20px);color:var(--color-white,#fff);font-size:var(--text-12,12px);font-weight:600;padding:6px var(--space-12,12px)}.my-question{background:linear-gradient(135deg,var(--color-blue-500,#3b82f6) 0,var(--color-blue-600,#2563eb) 100%);box-shadow:0 2px 8px rgba(59,130,246,.3)}.student-question{background:linear-gradient(135deg,var(--color-teal-500,#14b8a6) 0,var(--color-teal-600,#0d9488) 100%);border-radius:var(--radius-20,20px);box-shadow:0 2px 8px rgba(20,184,166,.3);color:var(--color-white,#fff);font-size:var(--text-12,12px);font-weight:600;padding:6px var(--space-12,12px)}.question-text{background:var(--color-white,#fff);border:1px solid var(--color-gray-1200,#e5e7eb);border-radius:var(--radius-10,10px);box-shadow:none;color:var(--color-gray-700,#1f2937);font-size:var(--text-15,15px);line-height:1.7;margin:8px 0;padding:8px 10px}.question-text .katex{font-size:1.05em}.question-text .katex-display{margin:10px 0;text-align:center}.question-meta{align-items:center;border-top:1px solid var(--color-gray-1100,#e2e8f0);color:var(--color-gray-400,#64748b);display:flex;flex-wrap:nowrap;font-size:var(--text-13,13px);gap:var(--space-16,16px);justify-content:space-between;margin-top:var(--space-12,12px);padding-top:var(--space-12,12px)}.questions-list .question-item .question-tags{align-items:center!important;display:flex!important;flex-wrap:wrap!important;gap:var(--space-12,12px)!important;padding:8px var(--space-12,12px);row-gap:8px!important}.question-tags .tag{background:linear-gradient(135deg,var(--color-gray-100,#f3f4f6) 0,var(--color-gray-200,#e5e7eb) 100%);border:1px solid var(--color-gray-300,#d1d5db);border-radius:var(--radius-20,20px);color:var(--color-gray-700,#374151);font-size:var(--text-12,12px);font-weight:500;padding:6px var(--space-12,12px);transition:var(--transition-base,all .2s ease)}.question-tags .tag:hover{background:linear-gradient(135deg,var(--color-gray-200,#e5e7eb) 0,var(--color-gray-300,#d1d5db) 100%);box-shadow:0 2px 8px rgba(0,0,0,.1);transform:translateY(-1px)}.question-stats .stat-item{align-items:flex-start;background:linear-gradient(135deg,var(--color-gray-1300,#f8fafc) 0,var(--color-gray-1000,#f1f5f9) 100%);border:1px solid var(--color-gray-1100,#e2e8f0);border-radius:var(--radius-12,12px);display:flex;flex-direction:column;gap:6px;min-width:0;padding:10px var(--space-12,12px)}.question-actions{align-items:center;display:flex;flex-wrap:nowrap;gap:8px;justify-content:flex-end;row-gap:8px}.question-actions .btn-sm{align-items:center;display:inline-flex;flex-direction:row;justify-content:center;text-orientation:mixed;white-space:nowrap;writing-mode:horizontal-tb}.btn-sm{border:none;border-radius:var(--radius-20,20px);box-shadow:0 2px 8px rgba(0,0,0,.1);cursor:pointer;font-size:var(--text-12,12px);font-weight:600;padding:8px var(--space-16,16px);transition:var(--transition-base,all .3s ease)}.btn-sm:hover{box-shadow:0 4px 12px rgba(0,0,0,.15);transform:translateY(-1px)}.btn-success{background:linear-gradient(135deg,var(--color-emerald-500,#10b981) 0,var(--color-emerald-600,#059669) 100%);color:var(--color-white,#fff)}.btn-success:hover{background:linear-gradient(135deg,var(--color-emerald-600,#059669) 0,var(--color-emerald-700,#047857) 100%)}.btn-warning{background:linear-gradient(135deg,var(--color-amber-500,#f59e0b) 0,var(--color-amber-600,#d97706) 100%);color:var(--color-white,#fff)}.btn-warning:hover{background:linear-gradient(135deg,var(--color-amber-600,#d97706) 0,var(--color-amber-700,#b45309) 100%)}.btn-danger{background:linear-gradient(135deg,var(--color-red-500,#ef4444) 0,var(--color-red-600,#dc2626) 100%);color:var(--color-white,#fff)}.btn-danger:hover{background:linear-gradient(135deg,var(--color-red-600,#dc2626) 0,var(--color-red-700,#b91c1c) 100%)}.btn-primary{background:linear-gradient(135deg,var(--color-blue-500,#3b82f6) 0,var(--color-blue-600,#2563eb) 100%);color:var(--color-white,#fff)}.btn-primary:hover{background:linear-gradient(135deg,var(--color-blue-600,#2563eb) 0,var(--color-blue-700,#1d4ed8) 100%)}.status-select{background:var(--color-white,#fff);border:1px solid var(--color-gray-1200,#e1e5e9);border-radius:var(--radius-8,8px);font-size:var(--text-12,12px);padding:8px 10px}.question-preview-modal{max-width:800px;width:90vw}.question-preview-modal .question-meta{background:var(--color-gray-50,#f9fafb);border:1px solid var(--color-gray-200,#e5e7eb);border-radius:8px;margin-bottom:16px;padding:12px 16px}.question-preview-modal .meta-row{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:8px}.question-preview-modal .meta-row:last-child{margin-bottom:0}.question-preview-modal .meta-item{align-items:center;display:flex;gap:4px}.question-preview-modal .meta-label,.question-preview-modal .meta-value{color:#000;font-size:var(--text-13,13px)}.question-preview-modal .meta-value{font-weight:500}.question-preview-modal .meta-placeholder{color:var(--color-gray-400,#9ca3af);font-size:var(--text-13,13px)}.question-preview-modal .close-btn{background:transparent;border:none;color:var(--color-gray-500,#6b7280);cursor:pointer;font-size:24px;line-height:1;padding:4px 8px;transition:color .2s ease}.question-preview-modal .close-btn:hover{color:var(--color-gray-700,#374151)}.question-preview-modal .question-content-section{-webkit-overflow-scrolling:touch;background:var(--color-white,#fff);border:1px solid var(--color-gray-200,#e5e7eb);border-radius:8px;margin-bottom:16px;max-width:100%;overflow-x:auto;padding:16px}.question-preview-modal .answer-section h4,.question-preview-modal .question-content-section h4,.question-preview-modal .question-explanation h4,.question-preview-modal .question-options h4,.question-preview-modal .question-tags h4,.question-preview-modal .video-section h4{color:#000;font-size:var(--text-14,14px);font-weight:600;margin:0 0 12px}.question-preview-modal .question-options{background:var(--color-white,#fff);border:1px solid var(--color-gray-200,#e5e7eb);border-radius:8px;margin-bottom:16px;padding:16px}.question-preview-modal .options-list{display:flex;flex-direction:column;gap:8px}.question-preview-modal .option-row{align-items:flex-start;background:var(--color-gray-50,#f9fafb);border-radius:6px;display:flex;gap:12px;padding:8px 12px}.question-preview-modal .option-row__label{color:#000;font-weight:600;min-width:24px}.question-preview-modal .option-row__content{-webkit-overflow-scrolling:touch;flex:1;max-width:100%;overflow-x:auto}.question-preview-modal .option-row__tail{color:var(--color-green-600,#16a34a)}.question-preview-modal .icon-check{font-size:16px}.question-preview-modal .english-group-preview{background:var(--color-white,#fff);border:1px solid var(--color-gray-200,#e5e7eb);border-radius:8px;margin-bottom:16px;padding:16px}.question-preview-modal .preview-option-item{background:var(--color-gray-50,#f9fafb);border-radius:6px;margin-bottom:16px;padding:12px}.question-preview-modal .preview-option-item:last-child{margin-bottom:0}.question-preview-modal .preview-option-label{color:#000;font-weight:600;margin-bottom:8px}.question-preview-modal .preview-prompt-box{margin-bottom:8px;padding:12px}.question-preview-modal .preview-answer-section,.question-preview-modal .preview-prompt-box{background:var(--color-white,#fff);border:1px solid var(--color-gray-200,#e5e7eb);border-radius:6px}.question-preview-modal .preview-answer-section{margin-top:8px;padding:8px 12px}.question-preview-modal .preview-answer-label{color:#000;font-weight:600}.question-preview-modal .preview-answer-box{background:var(--color-green-100,#dcfce7);border-radius:4px;color:var(--color-green-800,#166534);display:inline-block;font-weight:500;margin-left:8px;padding:4px 12px}.question-preview-modal .preview-explanation-box{background:var(--color-amber-50,#fffbeb);border:1px solid var(--color-amber-200,#fde68a);border-radius:6px;margin-top:8px;padding:12px}.question-preview-modal .answer-section{background:var(--color-white,#fff);border:1px solid var(--color-gray-200,#e5e7eb);border-radius:8px;margin-bottom:16px;padding:16px}.question-preview-modal .answer-badges{display:flex;flex-wrap:wrap;gap:8px}.question-preview-modal .answer-badge{background:var(--color-green-100,#dcfce7);border-radius:6px;color:var(--color-green-800,#166534);display:inline-block;font-size:var(--text-14,14px);font-weight:600;padding:6px 16px}.question-preview-modal .answer-text{background:transparent;border-radius:6px;padding:12px}.question-preview-modal .answer-text .markdown-preview{background:transparent}.question-preview-modal .fill-answers{display:flex;flex-direction:column;gap:8px}.question-preview-modal .fill-answer-item{align-items:flex-start;background:var(--color-gray-50,#f9fafb);border-radius:6px;display:flex;gap:8px;padding:8px 12px}.question-preview-modal .fill-answer-index{color:var(--color-primary,#4f46e5);flex-shrink:0;font-weight:600;min-width:24px}.question-preview-modal .fill-answer-content{flex:1;max-width:100%;overflow-x:auto}.question-preview-modal .fill-answer-content .katex{font-size:1em}.question-preview-modal .fill-answer-content .katex-display{max-width:100%;overflow-x:auto;overflow-y:hidden}.question-preview-modal .fill-answer-content .katex{word-wrap:break-word;white-space:normal}.question-preview-modal .katex{-webkit-overflow-scrolling:touch;font-size:1em;max-width:100%;overflow-x:auto}.question-preview-modal .katex-display{-webkit-overflow-scrolling:touch;margin:var(--space-sm,8px) 0;max-width:100%;overflow-x:auto;overflow-y:hidden}.question-preview-modal .katex-html{max-width:100%;overflow-x:auto;white-space:nowrap}.question-preview-modal .markdown-preview p{word-wrap:break-word;max-width:100%;overflow-wrap:break-word}.question-preview-modal .question-explanation{-webkit-overflow-scrolling:touch;background:var(--color-amber-50,#fffbeb);border:1px solid var(--color-amber-200,#fde68a);border-radius:8px;margin-bottom:16px;max-width:100%;overflow-x:auto;padding:16px}.question-preview-modal .explanation-content{-webkit-overflow-scrolling:touch;background:transparent;line-height:1.8;max-width:100%;overflow-x:auto}.question-preview-modal .explanation-content .markdown-preview{background:transparent}.question-preview-modal .explanation-placeholder{color:var(--color-gray-400,#9ca3af);font-style:italic;padding:12px;text-align:center}.question-preview-modal .video-section{margin-bottom:16px}.question-preview-modal .video-container{background:#000;border:1px solid var(--color-gray-200,#e5e7eb);border-radius:8px;overflow:hidden}.question-preview-modal .video-player{display:block;max-height:360px;width:100%}.question-preview-modal .question-tags{background:var(--color-white,#fff);border:1px solid var(--color-gray-200,#e5e7eb);border-radius:8px;margin-bottom:16px;padding:16px}.question-preview-modal .tags-list{display:flex;flex-wrap:wrap;gap:8px}.question-preview-modal .tag-item{background:var(--color-gray-100,#f3f4f6);border-radius:12px;color:#000;display:inline-block;font-size:var(--text-12,12px);font-weight:500;padding:4px 12px}.question-preview-modal .tag-item.tag-source{background:var(--color-indigo-100,#e0e7ff);color:#000}.question-preview-modal .question-info{background:var(--color-gray-50,#f9fafb);border:1px solid var(--color-gray-200,#e5e7eb);border-radius:8px;margin-top:16px;padding:12px 16px}.question-preview-modal .info-row{display:flex;flex-wrap:wrap;gap:16px}.question-preview-modal .info-item{align-items:center;display:flex;gap:4px}.question-preview-modal .info-label,.question-preview-modal .info-value{color:#000;font-size:var(--text-13,13px)}.admin-setup-header-flex{align-items:center;display:flex;justify-content:space-between}.active-badge{color:var(--color-success-800);font-size:var(--text-12)}.form-group-flex-center{align-items:center;display:flex;gap:var(--space-8)}.form-label-no-margin{margin-bottom:0}.settings-subtitle{font-weight:var(--font-medium)}.form-grid-3cols{display:grid;gap:var(--space-8);grid-template-columns:1fr 1fr 1fr}.form-grid-2col-1{display:grid;gap:var(--space-12);grid-template-columns:2fr 1fr}.form-group .form-checkbox-label{display:inline-flex}.form-checkbox-label-wide,.form-group .form-checkbox-label{align-items:center;font-size:var(--text-13);gap:var(--space-8)}.form-checkbox-label-wide{display:flex}.help-text-error{color:var(--color-danger-800);margin-top:var(--space-8)}.mode-badge{align-items:center;border:none;border-radius:var(--radius-6);cursor:pointer;display:inline-flex;font-size:var(--text-14);font-weight:500;padding:var(--space-6) var(--space-12);transition:var(--transition-base)}.mode-badge--active{background:var(--color-blue-600);color:var(--color-white)}.mode-badge--inactive{background:var(--color-gray-200);color:var(--color-gray-700)}.settings-actions-flex,.settings-actions-group{display:flex;gap:var(--space-8)}.settings-actions{align-items:center;display:flex;gap:var(--space-16)}.settings-card-mt-16{margin-top:var(--space-16)}.settings-footer-actions{border-top:1px solid var(--color-gray-200);display:flex;justify-content:center;margin-top:var(--space-24);padding-top:var(--space-16)}.form-checkbox-label-large{cursor:pointer;font-size:var(--text-16);font-weight:600}.checkbox-grid-row{align-items:center;display:grid;gap:var(--space-4) var(--space-8);grid-template-columns:auto 1fr;grid-template-rows:auto auto}.checkbox-grid-row input[type=checkbox]{cursor:pointer;grid-column:1;grid-row:1;height:16px;width:16px}.checkbox-grid-label{cursor:pointer;font-size:var(--text-13);font-weight:500;grid-column:2;grid-row:1}.checkbox-grid-help{color:#6b7280;font-size:12px;grid-column:2;grid-row:2}.checkbox-grid-header{border-bottom:1px solid var(--color-gray-200);gap:var(--space-8);grid-template-columns:auto 1fr auto;margin-bottom:var(--space-16);padding-bottom:var(--space-12)}.checkbox-grid-header .checkbox-grid-label{font-size:var(--text-16);font-weight:600}.checkbox-grid-header .active-badge{grid-column:3;grid-row:1}.strategy-option{align-items:center;display:inline-flex;gap:var(--space-8)}.strategy-option__icon{align-items:center;border-radius:var(--radius-full);display:inline-flex;height:24px;justify-content:center;width:24px}.strategy-option__icon--wrong_first{background-color:var(--color-indigo-100,#eef2ff);color:var(--color-indigo-700,#4f46e5)}.strategy-option__icon--note_first{background-color:var(--color-yellow-100);color:var(--color-amber-500)}.strategy-option__icon--favorite_first{background-color:var(--color-success-100);color:var(--color-success-800)}.strategy-option__icon--new_first{background-color:#ecfdf3;color:var(--color-success-800)}.strategy-option__icon--random{background-color:var(--color-info-100);color:var(--color-sky-600)}.strategy-option__icon--confirm-wrong{color:var(--color-red-500)}.strategy-option__icon--confirm-note{color:var(--color-amber-500)}.strategy-option__icon--confirm-new{color:var(--color-blue-500)}.strategy-option__icon--confirm-random{color:var(--color-purple-500)}.sso-callback-page{align-items:center;background:var(--color-gray-100,#f5f5f5);display:flex;justify-content:center;min-height:100vh;padding:var(--space-24,24px)}.sso-callback-card{background:var(--color-white,#fff);border-radius:var(--radius-12,12px);box-shadow:0 4px 12px rgba(0,0,0,.08);max-width:400px;padding:var(--space-40,40px) var(--space-32,32px);text-align:center;width:100%}.sso-callback-card--error{border-top:4px solid var(--color-error,#ef4444)}.sso-callback-card--success{border-top:4px solid var(--color-success,#22c55e)}.sso-callback__spinner{animation:spin .8s linear infinite;border:4px solid var(--color-gray-200,#e5e7eb);border-radius:50%;border-top-color:var(--color-primary-500,#3b82f6);height:48px;margin:0 auto var(--space-16,16px);width:48px}.sso-callback__icon{color:var(--color-gray-400,#9ca3af);margin-bottom:var(--space-16,16px)}.sso-callback-card--error .sso-callback__icon{color:var(--color-error,#ef4444)}.sso-callback-card--success .sso-callback__icon{color:var(--color-success,#22c55e)}.sso-callback__text{color:var(--color-text-primary,#111827);font-size:var(--text-16,16px);margin:0 0 var(--space-24,24px)}.sso-callback__text--error{color:var(--color-error,#ef4444)}.sso-callback__text--success{color:var(--color-success,#22c55e)}.sso-callback__retry{background:var(--color-primary-500,#3b82f6);border:none;border-radius:var(--radius-8,8px);color:var(--color-white,#fff);cursor:pointer;display:inline-block;font-size:var(--text-14,14px);font-weight:500;padding:var(--space-12,12px) var(--space-24,24px);transition:var(--transition-base,all .2s)}.sso-callback__retry:hover{background:var(--color-primary-600,#2563eb);transform:translateY(-1px)}.student-feedback-page .feedback-form-section{margin:0 auto;max-width:800px}.student-feedback-page .feedback-history-list{margin-top:var(--space-24,24px)}.student-feedback-page .feedback-card{background-color:var(--color-white,#fff);border:1px solid var(--color-gray-200,#e2e8f0);border-radius:var(--radius-12,12px);margin-bottom:var(--space-16,16px);padding:var(--space-16,16px);transition:box-shadow .2s ease}.student-feedback-page .feedback-card:hover{box-shadow:var(--shadow-md,0 4px 6px -1px rgba(0,0,0,.1))}.onboarding-shell{align-items:center;box-sizing:border-box;display:flex;height:var(--viewport-height-100);justify-content:center;overflow:hidden;padding:var(--space-32) var(--space-16);width:var(--viewport-100)}.onboarding-frame{aspect-ratio:1.618/1;background:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-12);box-shadow:var(--shadow-onboarding);max-height:var(--height-90vh);overflow:hidden;width:min(var(--width-onboarding-max),90vw)}.onboarding-content{display:grid;grid-template-columns:1fr .9fr;height:100%}@media (max-width:900px){.onboarding-content{grid-template-columns:1fr}.onboarding-right{display:none}}.onboarding-left{background:var(--color-white);display:grid;gap:var(--space-12);grid-template-rows:auto 1fr auto;min-height:0;overflow:hidden;padding:var(--space-18);position:relative}.title-row{align-items:baseline;display:flex;justify-content:space-between}.title-main{color:#000;font-size:var(--text-16);font-weight:700}.title-sub{color:var(--color-slate-500);font-size:var(--text-13)}.card{background:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-12);padding:var(--space-16)}.subtitle{color:var(--color-slate-500);font-size:var(--text-14);margin:var(--space-12) 0 var(--space-8)}.help-text{color:var(--color-gray-1100);font-size:var(--text-13);margin-top:var(--space-8)}.actions{display:flex;justify-content:flex-end;margin-top:var(--space-16)}.btn{border:1px solid var(--color-gray-200);border-radius:var(--radius-8);padding:var(--space-8) var(--space-16)}.btn.btn-primary{background:var(--color-primary-500);border-color:var(--color-primary-500);color:var(--color-white)}.btn.btn-secondary{background:var(--color-gray-100);color:var(--color-gray-1600)}.rounded-input{background:var(--color-white);border:2px solid var(--color-gray-200);border-radius:var(--radius-12);font-size:var(--text-14);padding:var(--space-8) var(--space-16);transition:var(--transition-base)}.rounded-input:focus{border-color:var(--color-blue-500);box-shadow:var(--shadow-focus);outline:none}.key-goal-input{margin-top:var(--space-6)}.textarea-rounded{background:var(--color-white);border:2px solid var(--color-gray-200);border-radius:var(--radius-12);font-size:var(--text-14);padding:var(--space-8) var(--space-16);resize:vertical;transition:var(--transition-base)}.textarea-rounded:focus{border-color:var(--color-blue-500);box-shadow:var(--shadow-focus);outline:none}.onboarding-right{position:relative}.illustration{align-items:start;background:radial-gradient(1200px 600px at 0 0,var(--color-primary-500) 0,transparent 40%),radial-gradient(900px 900px at 100% 100%,var(--color-primary-600) 0,transparent 40%),linear-gradient(135deg,var(--color-blue-500),var(--color-purple-400));color:var(--color-white);display:grid;grid-template-rows:auto auto 1fr;height:100%;justify-items:start;padding:var(--space-24)}.welcome-title{filter:drop-shadow(0 2px 8px rgba(0,0,0,.3));font-size:var(--text-28);font-weight:400;line-height:1.2;margin-bottom:var(--space-8)}.welcome-hint{filter:drop-shadow(0 2px 8px rgba(0,0,0,.25));font-size:var(--text-16);font-weight:400;line-height:1.8;margin-bottom:var(--space-16)}.step-hint-card{backdrop-filter:blur(var(--space-6));background:var(--color-glass);border:1px solid var(--color-glass-border);border-radius:var(--radius-12);box-shadow:var(--shadow-step-hint);color:var(--color-white);font-size:var(--text-14);line-height:1.7;max-width:var(--width-preview-max);padding:var(--space-12) var(--space-16);width:100%}.trial-hint-pill{background:rgba(251,191,36,.95);border-radius:24px;box-shadow:var(--shadow-trial-hint);color:var(--color-gray-1500);font-size:var(--text-13);font-weight:500;padding:var(--space-8) var(--space-18)}.preview-thumb,.trial-hint-pill{margin-top:var(--space-12);max-width:var(--width-preview-max)}.preview-thumb{align-items:center;background:hsla(0,0%,100%,.12);border:1px solid hsla(0,0%,100%,.25);border-radius:var(--radius-12);cursor:pointer;display:grid;gap:var(--space-8);grid-template-columns:1fr auto;padding:var(--space-8);width:100%}.preview-thumb img{border-radius:var(--radius-8);cursor:zoom-in;height:var(--width-thumb);object-fit:cover;width:100%}.preview-thumb__caption{color:var(--color-white);font-size:var(--text-12);opacity:.9}.preview-thumb.preview-thumb--empty{align-items:center;display:flex;justify-content:center;min-height:var(--width-thumb)}.preview-thumb.preview-thumb--empty:after{color:var(--color-white);content:"暂无预览图片";font-size:var(--text-12);opacity:.8}.image-modal-overlay{align-items:center;background:var(--color-overlay-light);display:flex;inset:0;justify-content:center;position:fixed;z-index:var(--z-image-modal)}.image-modal-content{background:transparent;border-radius:0;box-shadow:none;padding:0;position:relative}.image-modal-content,.image-modal-content img{max-height:var(--height-86vh);max-width:var(--percent-92)}.image-modal-content img{border-radius:var(--radius-8);cursor:zoom-out;display:block;user-select:none}.image-modal-content.image-modal-content--zoomed{overflow:auto}.image-modal-content.image-modal-content--zoomed img{cursor:zoom-out;transform:scale(1.35)}.image-modal-close{align-items:center;background:#000;border:none;border-radius:999px;color:var(--color-white);cursor:pointer;display:flex;font-size:var(--text-16);height:var(--space-28);justify-content:center;position:absolute;right:var(--space-8);top:var(--space-4);width:var(--space-28)}.onboarding-left-scroll{min-height:0;overflow-y:auto}.onboarding-left-actions{display:flex;gap:var(--space-8);justify-content:flex-end}.onboarding-left .actions{display:none}.quote-block{align-items:center;display:flex;flex-direction:column;justify-content:center;place-self:center;text-align:center}.quote-text{filter:drop-shadow(0 2px 8px rgba(0,0,0,.25));font-weight:700;line-height:1.3;max-width:100%;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap}.quote-author,.quote-text{font-family:STXingkai,Xingkai SC,FZShuTi,KaiTi,"cursive",serif}.quote-author{font-size:var(--text-14);margin-top:var(--space-8);opacity:.9}.form-section,.goal-setting-content{display:flex;flex-direction:column;gap:var(--space-12)}.step4-fullwidth-row{box-sizing:border-box;width:100%}.step4-fullwidth-row.form-row{display:flex;flex-direction:column;gap:var(--space-4);margin-bottom:var(--space-4)}.step4-fullwidth-row label{color:var(--color-slate-500);display:flex;flex-direction:column;font-size:var(--text-14);gap:var(--space-6);width:100%}.step4-fullwidth-row .rounded-input,.step4-fullwidth-row select{box-sizing:border-box;width:100%}.step4-fullwidth-row .admin-date-range{width:100%}.step4-fullwidth-row .admin-date-range-display{display:flex;flex-wrap:nowrap;gap:var(--space-8);width:100%}.step4-fullwidth-row .admin-date-input{flex:1;min-width:80px;text-align:center}.step4-fullwidth-row .admin-date-range-panel{min-width:360px}.step4-fullwidth-row .admin-date-range-calendars{gap:var(--space-12)}.step4-fullwidth-row .admin-date-range-calendar{min-width:140px}.step4-fullwidth-row .admin-date-range-month{white-space:nowrap}.step4-fullwidth-row .admin-date-cell--end,.step4-fullwidth-row .admin-date-cell--start{background:var(--color-blue-100);color:var(--color-gray-1500)}.subject-group-card{padding:var(--space-16)}.subject-group-card .subject-group-form{position:relative}.subject-group-card .form-row{display:flex;flex-direction:column;gap:var(--space-6);margin-bottom:var(--space-8)}.subject-group-card .form-row label{color:var(--color-slate-500);display:flex;flex-direction:column;font-size:var(--text-14);gap:var(--space-6);width:100%}.subject-group-card .form-row .field-label{align-self:flex-start;color:var(--color-slate-500);font-size:var(--text-14);text-align:left}.subject-group-card .rounded-input,.subject-group-card .textarea-rounded{box-sizing:border-box;width:100%}.subject-group-card .subject-tags{width:100%}.subject-tags{display:flex;flex-wrap:wrap;gap:var(--space-8)}.key-goal-form{align-items:center;display:grid;gap:var(--space-8);grid-template-columns:1fr auto auto}.block-actions{background:var(--color-white);display:flex;gap:0;opacity:0;padding:0 4px;pointer-events:none;position:absolute;right:var(--space-8);top:-12px;transition:var(--transition-fast)}.subject-group-form{position:relative}.subject-group-form:focus-within .block-actions,.subject-group-form:hover .block-actions{opacity:1;pointer-events:auto}.key-goal-form .icon-btn{opacity:0;pointer-events:none;transition:var(--transition-fast)}.key-goal-form:focus-within .icon-btn,.key-goal-form:hover .icon-btn{opacity:1;pointer-events:auto}.date-range{align-items:center;display:grid;gap:var(--space-8);grid-template-columns:1fr auto 1fr}.date-sep{color:var(--color-slate-500)}.semester-goal-form{background:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-12);padding:var(--space-12) var(--space-16)}.semester-goal-grid{align-items:center;display:grid;gap:var(--space-16);grid-template-columns:120px 1fr}.subject-display{align-items:center;display:flex;min-height:40px}.subject-tag--goal-row{font-size:var(--text-14);padding:var(--space-6) var(--space-12)}.subject-tag--goal-row .subject-icon{font-size:var(--text-16)}.goal-input{box-sizing:border-box;font-size:var(--text-14);height:40px;padding:var(--space-8) var(--space-12);width:100%}.semester-goal-grid label{align-items:center;display:flex;flex-direction:row;gap:var(--space-8);margin:0}.semester-goal-grid label:first-child{justify-content:flex-start}.date-range input.rounded-input{font-size:var(--text-14);height:40px}.settings-toast{animation:toastSlideInRight .28s ease-out;background-color:var(--color-white);border-left:6px solid var(--color-blue-500);border-radius:8px;box-shadow:0 2px 10px rgba(0,0,0,.15);padding:12px 16px;pointer-events:none;position:fixed;right:12px;top:calc(var(--app-header-height, 96px) + 2px);z-index:3000}.settings-toast--success{color:var(--color-blue-500)}.settings-toast--error{border-left-color:var(--color-red-500);color:var(--color-red-500)}.icon-inline-center{justify-content:center}.icon-inline-center,.subject-icon-inline{align-items:center;display:inline-flex}.grade-icon-inline,.group-icon-inline{align-items:center;display:inline-flex;margin-right:var(--space-6)}.btn-ml-8{margin-left:var(--space-8)}.subtitle-mt-0{margin-top:0}.ai-models-wrapper{margin-top:16px}.settings-page{background:var(--color-white);border-radius:var(--radius-12);padding:var(--space-24) var(--space-40) var(--space-32)}.settings-inner{margin:0 auto;max-width:var(--width-settings-max)}.settings-grid{display:grid;gap:var(--space-16);grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.settings-card{background:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-8);padding:var(--space-16)}.settings-title{font-size:var(--text-16);margin:0 0 var(--space-8)}.settings-subtitle{color:var(--color-slate-500);font-size:var(--text-14);margin:var(--space-12) 0 var(--space-8)}.tag-group{display:flex;flex-wrap:wrap;gap:var(--space-8)}.tag-btn{background:var(--color-gray-50);border:1px solid var(--color-gray-200);border-radius:20px;cursor:pointer;padding:var(--space-8) var(--space-12)}.tag-btn.active{background:var(--color-purple-100);border-color:var(--color-purple-400);color:var(--color-purple-800)}.settings-footer{display:flex;justify-content:flex-end;margin-top:var(--space-16)}.other-section{gap:var(--space-16)}.other-row,.other-section{display:flex;flex-direction:column}.other-row{gap:var(--space-6)}.other-row label{color:var(--color-slate-500);font-size:var(--text-14)}.other-row input,.other-row select{border:1px solid var(--color-gray-200);border-radius:var(--radius-6);padding:var(--space-8) var(--space-12)}.required:after{color:var(--color-red-500);content:" *"}.tiers-list{gap:var(--space-12)}.tier-item{background:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-12);box-shadow:var(--shadow-sm);padding:var(--space-12);transition:var(--transition-base)}.tier-item:hover{box-shadow:var(--shadow-md)}.tier-grid{gap:var(--space-12);grid-template-columns:minmax(var(--width-tier-min),var(--width-tier-max)) 1fr}.tier-col-right{gap:var(--space-8)}.tier-actions{border-radius:var(--radius-6);gap:var(--space-6);right:var(--space-8);transition:var(--transition-fast)}.tier-row{gap:var(--space-8)}.tier-name-input,.tier-score-input{border:1px solid var(--color-gray-200);border-radius:var(--radius-6);padding:var(--space-6) var(--space-8)}.tier-name-input:focus,.tier-score-input:focus,.uni-add-row input:focus{border-color:var(--color-blue-500)}.universities{gap:var(--space-8);margin-top:var(--space-8)}.uni-tag{background:var(--color-gray-100);border:1px solid var(--color-gray-200);border-radius:var(--radius-full);gap:var(--space-4);padding:var(--space-4) 10px}.tag-close{color:var(--color-slate-500);transition:var(--transition-fast)}.uni-add-row input{border:1px solid var(--color-gray-200);border-radius:var(--radius-6);padding:var(--space-6) 32px var(--space-6) var(--space-8)}.uni-add-row .icon-btn{right:var(--space-6);transition:var(--transition-fast)}.tiers-actions{margin-top:var(--space-8)}.difficulty-stars,.star-rating{display:flex;gap:var(--space-4)}.star{background:transparent;border:none;color:var(--color-gray-400);cursor:pointer;font-size:18px;line-height:1}.star.filled{color:var(--color-warning-400)}.star:hover{transform:scale(1.05)}.icon-btn{border-radius:var(--radius-4);color:var(--color-slate-500);padding:var(--space-4)}.icon-btn:hover:not(:disabled){background:var(--color-gray-100)}.tiers-list{display:flex;flex-direction:column;gap:12px}.tier-item{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.06);padding:12px;position:relative;transition:all .2s ease}.tier-item:hover{box-shadow:0 6px 20px rgba(59,130,246,.15);transform:translateY(-1px)}.tier-grid{align-items:start;display:grid;gap:12px;grid-template-columns:minmax(220px,260px) 1fr}@media (max-width:640px){.tier-grid{grid-template-columns:1fr}}.tier-col-right{display:flex;flex-direction:column;gap:8px}.tier-actions{background:transparent;border-radius:6px;display:flex;gap:6px;opacity:0;padding:0;pointer-events:none;position:absolute;right:8px;top:-10px;transition:opacity .15s ease}.tier-item:focus-within .tier-actions,.tier-item:hover .tier-actions{opacity:1;pointer-events:auto}.tier-row{align-items:center;display:flex;gap:8px}.tier-name-input{flex:1}.tier-name-input,.tier-score-input{border:1px solid #e2e8f0;border-radius:6px;padding:6px 8px}.tier-score-input{text-align:center;width:80px}.tier-name-input:focus,.tier-score-input:focus,.uni-add-row input:focus{border-color:#60a5fa;box-shadow:none;outline:none}.universities{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.uni-tag{align-items:center;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:999px;display:inline-flex;gap:4px;padding:4px 10px}.tag-close{background:transparent;border:none;color:#64748b;cursor:pointer;opacity:0;pointer-events:none;transition:opacity .15s ease}.uni-tag:hover .tag-close{opacity:1;pointer-events:auto}.uni-add-row{position:relative;width:100%}.uni-add-row input{border:1px solid #e2e8f0;border-radius:6px;padding:6px 32px 6px 8px;width:100%}.uni-add-row .icon-btn{opacity:0;pointer-events:none;position:absolute;right:6px;top:50%;transform:translateY(-50%);transition:opacity .15s ease}.uni-add-row:focus-within .icon-btn,.uni-add-row:hover .icon-btn{opacity:1;pointer-events:auto}.icon-btn{background:transparent;border:none;border-radius:4px;color:#64748b;cursor:pointer;padding:4px}.icon-btn:hover:not(:disabled){background:#f1f5f9}.icon-btn:disabled{cursor:not-allowed;opacity:.5}.footer-actions{gap:var(--space-12,12px)}.footer-actions,.paper-mode-toggle{align-items:center;display:inline-flex}.paper-mode-toggle{gap:10px}.question-mode-overlay{align-items:center;backdrop-filter:blur(2px);background:rgba(17,24,39,.6);display:flex;inset:0;justify-content:center;position:fixed;z-index:9999}.question-mode-container{background:var(--color-gray-50,#f8fafc);border-radius:var(--radius-10,10px);box-shadow:0 10px 30px rgba(0,0,0,.25);box-sizing:border-box;display:flex;flex-direction:column;max-height:90vh;overflow:hidden;width:min(1040px,96vw)}.question-mode-content{flex:1 1 auto;overflow-x:hidden;overflow-y:auto;padding:0 var(--space-20,20px) var(--space-16,16px) var(--space-20,20px)}.qm-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--space-12,12px);padding-top:0}.qm-title{color:var(--color-gray-900,#111827)}.qm-progress{color:var(--color-gray-500,#6b7280);font-size:var(--text-14,14px)}.question-mode-footer{align-items:center;background:var(--color-gray-50,#f8fafc);bottom:0;display:flex;justify-content:space-between;left:0;margin-top:0;padding:10px 0 0;position:sticky;right:0}.question-mode-footer .left-actions,.question-mode-footer .right-actions{align-items:center;display:inline-flex;gap:10px}.question-mode-footer .left-actions{margin-left:var(--space-20,20px)}.question-mode-footer .right-actions{margin-right:var(--space-20,20px)}.question-mode-footer .right-actions .btn.btn-secondary{background:var(--color-blue-600,#2563eb);border-color:var(--color-blue-700,#1d4ed8);color:var(--color-white,#fff)}.question-mode-footer .right-actions .btn.btn-secondary:hover:not(:disabled){background:var(--color-blue-700,#1d4ed8);border-color:var(--color-blue-800,#1e40af)}.question-mode-footer .right-actions .btn.btn-secondary:disabled{background:var(--color-blue-300,#93c5fd);border-color:var(--color-blue-300,#93c5fd);color:var(--color-white,#fff);opacity:.8}@media (max-width:768px){.question-mode-container{max-height:92vh;width:96vw}}@media print{.question-mode-overlay{display:none!important}}.question-mode-container .study-question-options{grid-template-columns:1fr 1fr!important;margin-bottom:var(--space-12,12px);margin-left:var(--space-20,20px)}.question-mode-container .study-question-options.auto-layout-1,.question-mode-container .study-question-options.auto-layout-2,.question-mode-container .study-question-options.auto-layout-4{grid-template-columns:1fr 1fr!important}.question-mode-container .study-option-label{max-width:100%}.question-mode-container .study-option-text{overflow-wrap:anywhere;word-break:break-word}.wrong-indicator{color:var(--color-red-600,#dc2626);font-size:var(--text-14,14px);font-weight:700;margin-left:8px}.qm-header{background:transparent;border-top-left-radius:var(--radius-10,10px);border-top-right-radius:var(--radius-10,10px);padding:var(--space-12,12px) 0}.qm-title{align-items:center;color:var(--color-gray-900,#0f172a);display:inline-flex;font-weight:600;gap:8px}.qm-title,.qm-title:before{font-size:var(--text-18,18px)}.qm-title:before{content:"🎯"}.qm-progress{align-items:center;background:var(--color-primary-50,#eef2ff);border:1px solid var(--color-primary-100,#dbeafe);border-radius:999px;color:var(--color-primary-800,#1e40af);display:inline-flex;font-size:var(--text-13,13px);font-weight:600;padding:4px 10px}.question-mode-container .study-question-number{align-items:center;background:var(--color-primary-100,#e0e7ff);border-radius:50%;color:var(--color-primary-900,#1e3a8a);display:inline-flex;height:28px;justify-content:center;width:28px}.question-mode-container .study-question-content{color:var(--color-gray-900,#0f172a)}.question-mode-container .study-question-content.markdown-preview{background:var(--color-gray-50,#f8fafc);border-radius:var(--radius-8,8px);padding:var(--space-12,12px)}.question-mode-container .study-question-content .markdown-preview{border-radius:var(--radius-8,8px);padding:var(--space-12,12px)}.question-mode-container .study-option-label{background:transparent;border:none}.question-mode-container .study-option-label:hover{background-color:var(--color-gray-50,#f9fafb)}.question-mode-container .study-option-label:has(input:checked){background-color:var(--color-primary-50,#eef2ff)}.question-mode-container .question-answer-section{background:transparent;border-left:none;border-radius:0;margin-bottom:var(--space-12,12px);margin-top:var(--space-12,12px);padding:var(--space-12,12px)}.question-mode-container .question-answer-section .markdown-preview,.question-mode-container .question-answer-section.correct-answer,.question-mode-container .question-answer-section.wrong-answer{background:transparent}.question-mode-container .question-explanation{background:var(--color-yellow-50,#fffbeb);border:1px solid var(--color-yellow-200,#fde68a);border-radius:var(--radius-6,6px);padding:var(--space-12,12px)}.question-mode-container .study-question-content .markdown-preview{background:var(--color-gray-50,#f8fafc)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}@keyframes slideOutRight{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(100%)}}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideOut{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(100%)}}@keyframes toastSlideInRight{0%{opacity:0;transform:translateX(16px)}to{opacity:1;transform:translateX(0)}}@keyframes dropdownSlideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.animate-spin{animation:spin 1s linear infinite;will-change:transform}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes pulse-soft{0%{opacity:1}50%{opacity:.7}to{opacity:1}}.animate-pulse{animation:pulse 2s infinite;will-change:opacity}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{opacity:1;transform:scale(1.05)}70%{transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes tooltipFadeIn{0%{opacity:0;transform:translateX(-50%) translateY(4px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}@keyframes modalBackdropFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalBackdropFadeOut{0%{opacity:1}to{opacity:0}}@keyframes modalContentScaleIn{0%{opacity:0;transform:scale(.95) translateY(-10px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes modalContentScaleOut{0%{opacity:1;transform:scale(1) translateY(0)}to{opacity:0;transform:scale(.95) translateY(-10px)}}@keyframes drawerSlideIn{0%{transform:translateX(100%)}to{transform:translateX(0)}}@keyframes drawerSlideOut{0%{transform:translateX(0)}to{transform:translateX(100%)}}.animate-fade-in{animation:fadeIn .3s ease-out;will-change:opacity}.animate-fade-out{animation:fadeOut .3s ease-out;will-change:opacity}.animate-slide-in{animation:slideIn .3s ease-out;will-change:transform,opacity}.animate-slide-in-right{animation:slideInRight .3s ease-out;will-change:transform,opacity}.animate-slide-up{animation:slideUp .3s ease-out;will-change:transform,opacity}.animate-bounce-in{animation:bounceIn .5s ease-out;will-change:transform,opacity}.animate-modal-backdrop-in{animation:modalBackdropFadeIn .2s ease-out;will-change:opacity}.animate-modal-backdrop-out{animation:modalBackdropFadeOut .2s ease-out;will-change:opacity}.animate-modal-content-in{animation:modalContentScaleIn .3s ease-out;will-change:transform,opacity}.animate-modal-content-out{animation:modalContentScaleOut .2s ease-out;will-change:transform,opacity}.animate-drawer-in{animation:drawerSlideIn .3s ease-out;will-change:transform}.animate-drawer-out{animation:drawerSlideOut .2s ease-out;will-change:transform}.animate-dropdown-in{animation:dropdownSlideIn .2s ease-out;will-change:transform,opacity}.animate-toast-in{animation:toastSlideInRight .3s ease-out;will-change:transform,opacity}.content-visibility-auto{contain-intrinsic-size:0 500px;content-visibility:auto}.contain-layout{contain:layout}.contain-paint{contain:paint}.contain-content{contain:content}.contain-strict{contain:strict}@media screen{body,html{height:100%;overflow:hidden;overflow-x:hidden}body{overscroll-behavior-y:none}}*{box-sizing:border-box;margin:0;padding:0}body{color:#000}:root{--color-primary-500:#667eea;--color-primary-600:#764ba2;--color-blue-500:#3b82f6;--color-blue-600:#2563eb;--color-blue-100:#eff6ff;--color-blue-200:#dbeafe;--color-blue-800:#1d4ed8;--color-blue-900:#1e40af;--color-indigo-500:#6366f1;--color-indigo-600:#5a67d8;--color-indigo-700:#4f46e5;--color-indigo-800:#3730a3;--color-indigo-900:#1e3a8a;--color-green-500:#22c55e;--color-success-500:var(--color-green-500);--color-success-100:#dcfce7;--color-success-800:#166534;--color-emerald-500:#10b981;--color-emerald-600:#059669;--color-emerald-700:#047857;--color-emerald-800:#065f46;--color-warning-400:#fb923c;--color-warning-100:#fef9c3;--color-warning-800:#854d0e;--color-amber-500:#f59e0b;--color-amber-800:#78350f;--color-orange-500:#f97316;--color-orange-600:#ea580c;--color-info-500:#3b82f6;--color-info-100:#e0f2fe;--color-info-800:#0369a1;--color-cyan-500:#06b6d4;--color-cyan-600:#0891b2;--color-cyan-800:#0e7490;--color-cyan-900:#0891b2;--color-sky-500:#0ea5e9;--color-sky-600:#0284c7;--color-sky-700:#0369a1;--color-sky-800:#075985;--color-red-500:#ef4444;--color-red-600:#dc2626;--color-error-500:var(--color-red-500);--color-error-bg:#fdf2f2;--color-rose-500:#f43f5e;--color-rose-600:#e11d48;--color-rose-700:#be123c;--color-rose-800:#9f1239;--color-rose-900:#831843;--color-danger-100:#fee2e2;--color-danger-800:#b91c1c;--color-danger-900:#991b1b;--color-purple-100:#ede9fe;--color-purple-400:#a78bfa;--color-purple-500:#8b5cf6;--color-purple-600:#7c3aed;--color-purple-700:#6d28d9;--color-purple-800:#5b21b6;--color-yellow-50:#fffbeb;--color-yellow-100:#fef3c7;--color-yellow-200:#fde68a;--color-yellow-500:#eab308;--color-yellow-700:#a16207;--color-yellow-800:#854d0e;--color-gray-50:#f8fafc;--color-gray-100:#f1f5f9;--color-gray-200:#e2e8f0;--color-gray-300:#d1d5db;--color-gray-400:#9ca3af;--color-gray-500:#64748b;--color-gray-600:#475569;--color-gray-700:#374151;--color-gray-800:#1e293b;--color-gray-900:#1a202c;--color-gray-1200:var(--color-gray-200);--color-gray-1300:var(--color-gray-50);--color-gray-1400:var(--color-gray-100);--color-gray-1500:var(--color-gray-900);--color-gray-1600:var(--color-gray-700);--color-gray-1700:var(--color-slate-300);--color-gray-1900:var(--color-gray-400);--color-gray-3200:var(--color-gray-800);--color-gray-3300:var(--color-gray-500);--color-gray-3400:var(--color-gray-600);--color-gray-3500:var(--color-gray-900);--color-gray-3600:var(--color-gray-100);--color-slate-300:#cbd5e1;--color-slate-400:#94a3b8;--color-slate-500:#64748b;--color-slate-800:#1e293b;--color-slate-900:#0f172a;--color-white:#fff;--color-bg-soft:#f8f9fa;--color-black:#000;--color-text-primary:#333;--color-text-secondary:#555;--color-text-tertiary:#666;--color-text-muted:#6b7280;--primary-color:var(--color-blue-500);--color-overlay:rgba(0,0,0,.8);--color-overlay-light:rgba(0,0,0,.6);--color-glass:hsla(0,0%,100%,.18);--color-glass-border:hsla(0,0%,100%,.25);--color-shadow-primary:rgba(102,126,234,.4);--space-2:2px;--space-4:4px;--space-6:6px;--space-8:8px;--space-10:10px;--space-12:12px;--space-14:14px;--space-16:16px;--space-18:18px;--space-20:20px;--space-24:24px;--space-28:28px;--space-32:32px;--space-36:36px;--space-40:40px;--space-50:50px;--space-60:60px;--space-80:80px;--radius-4:4px;--radius-6:6px;--radius-8:8px;--radius-10:10px;--radius-12:12px;--radius-16:16px;--radius-full:999px;--text-11:11px;--text-12:12px;--text-13:13px;--text-14:14px;--text-15:15px;--text-16:16px;--text-18:18px;--text-20:20px;--text-22:22px;--text-24:24px;--text-28:28px;--text-36:36px;--width-login-max:500px;--width-login-wide:720px;--width-subject-min:120px;--width-feedback-max:400px;--width-admin-max:1200px;--width-search:240px;--width-onboarding-max:900px;--width-preview-max:480px;--width-thumb:110px;--width-filter-select:140px;--width-filter-date:120px;--width-filter-panel:520px;--width-floating:44px;--width-qm-icon:36px;--width-card-icon:48px;--width-option-badge:28px;--width-remove-btn:32px;--width-floating-action:56px;--width-difficulty:80px;--width-form-min:300px;--width-modal-wide:1680px;--width-option-label:24px;--width-option-label-circle:28px;--width-form-compact:110px;--width-record-card-min:350px;--width-learning-stats:115px;--width-actions-column:180px;--width-spinner:14px;--width-more-btn:88px;--width-metric-card-min:300px;--width-stats-panel-min:350px;--width-action-card-min:280px;--width-stat-card-min:220px;--width-settings-max:800px;--width-tier-min:220px;--width-tier-max:260px;--height-editor:300px;--height-textarea:200px;--height-textarea-min:120px;--height-modal-close:32px;--height-checkbox:16px;--height-metric-icon:48px;--height-activity-icon:40px;--height-progress-bar:8px;--height-progress-mini:6px;--height-90vh:90vh;--height-86vh:86vh;--height-95vh:95vh;--height-header:70px;--shadow-sm:0 2px 8px rgba(0,0,0,.06);--shadow-md:0 6px 20px rgba(59,130,246,.15);--shadow-lg:0 4px 20px rgba(0,0,0,.5);--shadow-overlay:0 2px 10px rgba(0,0,0,.2);--shadow-login:0 10px 30px rgba(0,0,0,.1);--shadow-hover:0 5px 15px rgba(102,126,234,.4);--shadow-card:0 1px 3px rgba(0,0,0,.1);--shadow-focus:0 0 0 2px rgba(59,130,246,.25);--shadow-onboarding:0 10px 30px rgba(17,24,39,.12);--shadow-step-hint:0 4px 12px rgba(17,24,39,.18);--shadow-trial-hint:0 6px 18px rgba(15,23,42,.35);--shadow-filter:0 2px 8px rgba(0,0,0,.04);--shadow-filter-focus:0 0 0 3px rgba(59,130,246,.1);--shadow-filter-hover:0 2px 6px rgba(0,0,0,.12);--shadow-card-hover:0 2px 4px rgba(0,0,0,.1);--shadow-floating:0 6px 20px rgba(0,0,0,.15);--shadow-floating-hover:0 10px 24px rgba(59,130,246,.25);--shadow-success-hover:0 4px 8px rgba(16,185,129,.4);--shadow-warning-hover:0 4px 8px rgba(245,158,11,.4);--shadow-question:0 2px 8px rgba(0,0,0,.06);--shadow-correct:0 2px 4px rgba(22,163,74,.2);--shadow-wrong:0 2px 4px rgba(220,38,38,.3);--shadow-header:0 2px var(--space-12) rgba(0,0,0,.1);--shadow-card-modern:0 4px var(--space-16) rgba(0,0,0,.08);--shadow-card-hover-modern:0 6px var(--space-24) rgba(0,0,0,.12);--shadow-icon:0 4px var(--space-16) rgba(102,126,234,.15);--shadow-icon-hover:0 6px var(--space-24) rgba(102,126,234,.25);--shadow-btn-hover:0 4px var(--space-12) rgba(139,92,246,.15);--shadow-btn-active:0 4px var(--space-16) rgba(139,92,246,.3);--shadow-option-hover:0 4px var(--space-12) rgba(102,126,234,.1);--shadow-floating-action:0 4px var(--space-24) rgba(102,126,234,.3);--shadow-floating-action-hover:0 6px var(--space-32) rgba(102,126,234,.4);--shadow-bottom:0 -4px var(--space-24) rgba(0,0,0,.1);--shadow-error:0 0 0 var(--space-2) rgba(239,68,68,.1);--shadow-success:0 0 0 var(--space-2) rgba(16,185,129,.1);--shadow-modal:0 8px 30px rgba(0,0,0,.15);--shadow-popover:0 8px 24px rgba(2,6,23,.18);--shadow-explanation:0 2px 8px rgba(0,0,0,.06);--transition-base:all 0.2s ease;--transition-fast:all 0.15s ease;--transition-slow:all 0.3s ease;--transition-input:border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out;--transition-hover:all 0.2s ease;--transition-scale:all 0.3s ease;--animation-spin:1s linear infinite;--animation-pulse:2s infinite;--animation-fade:0.3s ease-out;--animation-bounce:0.3s ease-out;--animation-tooltip:0.2s ease-out;--z-modal:2000;--z-login:1000;--z-image-modal:1000;--z-filter-panel:50;--z-floating:900;--z-header:100;--z-tooltip:1000;--z-floating-action:1000;--z-popover:4000;--z-modal-footer:5;--size-modal-close:40px;--percent-90:90%;--percent-92:92%;--percent-95:95%;--viewport-100:100vw;--viewport-height-100:100vh;--app-header-height:96px;--border-color:#e5e7eb;--container-max-width:1200px;--container-padding:24px;--form-row-gap:20px;--form-row-min-width:250px}.u-flex{display:flex}.u-inline-flex{display:inline-flex}.u-flex-column{flex-direction:column}.u-flex-wrap{flex-wrap:wrap}.u-items-center{align-items:center}.u-items-start{align-items:flex-start}.u-items-end{align-items:flex-end}.u-justify-center{justify-content:center}.u-justify-start{justify-content:flex-start}.u-justify-end{justify-content:flex-end}.u-justify-between{justify-content:space-between}.u-justify-around{justify-content:space-around}.u-flex-center{justify-content:center}.u-flex-between,.u-flex-center{align-items:center;display:flex}.u-flex-between{justify-content:space-between}.u-flex-column-center{align-items:center;display:flex;flex-direction:column}.u-gap-4{gap:var(--space-4,4px)}.u-gap-6{gap:var(--space-6,6px)}.u-gap-8{gap:var(--space-8,8px)}.u-gap-12{gap:var(--space-12,12px)}.u-gap-16{gap:var(--space-16,16px)}.u-gap-24{gap:var(--space-24,24px)}.u-mt-4{margin-top:var(--space-4,4px)}.u-mt-8{margin-top:var(--space-8,8px)}.u-mt-12{margin-top:var(--space-12,12px)}.u-mt-16{margin-top:var(--space-16,16px)}.u-mt-24{margin-top:var(--space-24,24px)}.u-mb-4{margin-bottom:var(--space-4,4px)}.u-mb-8{margin-bottom:var(--space-8,8px)}.u-mb-12{margin-bottom:var(--space-12,12px)}.u-mb-16{margin-bottom:var(--space-16,16px)}.u-mb-24{margin-bottom:var(--space-24,24px)}.u-ml-4{margin-left:var(--space-4,4px)}.u-ml-8{margin-left:var(--space-8,8px)}.u-ml-16{margin-left:var(--space-16,16px)}.u-mr-4{margin-right:var(--space-4,4px)}.u-mr-8{margin-right:var(--space-8,8px)}.u-p-8{padding:var(--space-8,8px)}.u-p-12{padding:var(--space-12,12px)}.u-p-16{padding:var(--space-16,16px)}.u-p-24{padding:var(--space-24,24px)}.u-text-center{text-align:center}.u-text-left{text-align:left}.u-text-right{text-align:right}.u-text-ellipsis{white-space:nowrap}.u-text-clamp-2,.u-text-ellipsis{overflow:hidden;text-overflow:ellipsis}.u-text-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box}.u-text-12{font-size:var(--text-12,12px)}.u-text-13{font-size:var(--text-13,13px)}.u-text-14{font-size:var(--text-14,14px)}.u-text-16{font-size:var(--text-16,16px)}.u-text-18{font-size:var(--text-18,18px)}.u-font-medium{font-weight:500}.u-font-semibold{font-weight:600}.u-font-bold{font-weight:700}.u-text-muted{color:var(--color-slate-500,#64748b)}.u-text-primary{color:var(--color-primary-500,#3b82f6)}.u-text-success{color:var(--color-success-500,#10b981)}.u-text-warning{color:var(--color-warning-500,#f59e0b)}.u-text-danger{color:var(--color-danger-500,#ef4444)}.u-card{background:#fff;border:1px solid var(--color-gray-200,#e2e8f0);border-radius:var(--radius-12,12px);box-shadow:var(--shadow-card,0 2px 8px rgba(0,0,0,.08))}.u-badge{align-items:center;border:1px solid var(--color-gray-200,#e2e8f0);border-radius:999px;display:inline-flex;font-size:12px;padding:2px 8px;white-space:nowrap}.u-input-compact{border:1px solid var(--color-gray-300,#d1d5db);border-radius:var(--radius-4,4px);font-size:var(--text-14,14px);height:32px;padding:0 var(--space-8,8px);text-align:center;width:50px}.u-btn-compact{font-size:var(--text-13,13px);height:32px;min-width:50px}.u-accent-left{position:relative}.u-accent-left:before{background:linear-gradient(135deg,var(--color-primary-500) 0,var(--color-primary-600) 100%);border-radius:12px 0 0 12px;content:"";height:100%;left:0;opacity:0;position:absolute;top:0;transition:opacity .2s ease;width:4px}.u-accent-left:focus-within:before,.u-accent-left:hover:before{opacity:1}.empty-block{box-sizing:border-box;flex-direction:column;gap:16px;grid-column:1/-1;min-height:200px;padding:40px 24px;text-align:center;width:100%}.empty-block,.empty-block__icon{align-items:center;display:flex;justify-content:center}.empty-block__icon{margin-bottom:8px}.empty-block__title{color:#334155;font-size:16px;font-weight:600;margin-bottom:4px}.empty-block__desc{color:#64748b;font-size:14px;line-height:1.5;max-width:320px}.confirm-popover{background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 8px 20px rgba(0,0,0,.12);display:flex;flex-direction:column;gap:8px;padding:8px 10px;position:fixed;z-index:99999}.confirm-popover__row{align-items:center;display:inline-flex;gap:8px}.confirm-popover__icon{align-items:center;background:#fef3c7;border-radius:999px;color:#d97706;display:inline-flex;font-size:14px;font-weight:700;height:20px;justify-content:center;width:20px}.confirm-popover__text{color:#334155;font-size:13px;white-space:nowrap}.confirm-popover__actions{display:inline-flex;gap:8px;justify-content:flex-end}.slide-notice{animation:toastSlideInRight .28s ease-out;background:#fff;border-left:6px solid;border-radius:8px;box-shadow:0 2px 10px rgba(0,0,0,.15);padding:12px 16px;pointer-events:none;position:fixed;right:12px;top:calc(var(--app-header-height, 96px) + 2px);z-index:10002}.image-preview-modal{align-items:center;background-color:var(--color-overlay,rgba(0,0,0,.8));bottom:0;display:flex;justify-content:center;left:0;padding:40px;position:fixed;right:0;top:0;z-index:var(--z-modal,2000)}.image-preview-modal .preview-content{max-height:90%;max-width:90%;position:relative}.image-preview-modal .preview-content img{border-radius:4px;box-shadow:0 4px 20px rgba(0,0,0,.5);max-height:90vh;max-width:100%}.image-preview-modal .close-preview{align-items:center;background-color:#fff;border:none;border-radius:50%;box-shadow:0 2px 10px rgba(0,0,0,.2);cursor:pointer;display:flex;font-size:24px;height:40px;justify-content:center;position:absolute;right:-20px;top:-20px;width:40px}.status-badge{border-radius:var(--radius-full,999px);display:inline-block;font-size:var(--text-12,12px);font-weight:500;padding:2px 8px}.status-success{background-color:var(--color-success-100,#dcfce7);color:var(--color-success-800,#166534)}.status-warning{background-color:var(--color-warning-100,#fef9c3);color:var(--color-warning-800,#854d0e)}.status-danger{background-color:var(--color-danger-100,#fee2e2);color:var(--color-danger-800,#b91c1c)}.status-info{background-color:var(--color-info-100,#dbeafe);color:var(--color-info-800,#1e40af)}.status-pending{background-color:var(--color-warning-100,#fef9c3);color:var(--color-warning-800,#854d0e)}.table-cell-muted{color:var(--color-gray-500,#64748b);font-size:var(--text-12,12px)}.u-full-width{width:100%}.u-full-height{height:100%}.u-cursor-pointer{cursor:pointer}.u-pointer-events-none{pointer-events:none}.u-position-relative{position:relative}.u-position-absolute{position:absolute}.u-position-fixed{position:fixed}.u-overflow-hidden{overflow:hidden}.u-overflow-auto{overflow:auto}.u-white-space-nowrap{white-space:nowrap}.u-hidden{display:none!important}.u-visually-hidden{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}