.toast[data-v-5f406fc8]{align-items:center;gap:var(--spacing-3);padding:var(--spacing-3) var(--spacing-5);background:var(--white);border-radius:var(--radius-md);box-shadow:var(--shadow-toast);pointer-events:auto;min-width:280px;max-width:400px;animation:toast-slide-in-5f406fc8 var(--transition);border-left:4px solid var(--gray-400);display:flex}.toast.toast-success[data-v-5f406fc8]{border-left-color:var(--success-text)}.toast.toast-error[data-v-5f406fc8]{border-left-color:var(--danger)}.toast.toast-warning[data-v-5f406fc8]{border-left-color:var(--warning)}.toast.toast-info[data-v-5f406fc8]{border-left-color:var(--primary)}.toast-icon[data-v-5f406fc8]{flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;display:flex}.toast-icon[data-v-5f406fc8] svg{width:20px;height:20px}.toast-success .toast-icon[data-v-5f406fc8]{color:var(--success-text)}.toast-error .toast-icon[data-v-5f406fc8]{color:var(--danger)}.toast-warning .toast-icon[data-v-5f406fc8]{color:var(--warning)}.toast-info .toast-icon[data-v-5f406fc8]{color:var(--primary)}.toast-content[data-v-5f406fc8]{flex:1}.toast-title[data-v-5f406fc8]{font-size:var(--text-sm);font-weight:var(--font-weight-semibold);color:var(--gray-800);margin-bottom:var(--spacing-0-5)}.toast-message[data-v-5f406fc8]{font-size:var(--text-13);color:var(--gray-600);line-height:1.4}.toast-close[data-v-5f406fc8]{width:24px;height:24px;color:var(--gray-400);cursor:pointer;border-radius:var(--radius);transition:all var(--transition-fast);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.toast-close[data-v-5f406fc8]:hover{background:var(--gray-100);color:var(--gray-600)}@keyframes toast-slide-in-5f406fc8{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.toast-container[data-v-6e259ffe]{z-index:9999;gap:var(--spacing-3);pointer-events:none;flex-direction:column;display:flex;position:fixed;top:20px;right:20px}.toast-enter-active[data-v-6e259ffe],.toast-leave-active[data-v-6e259ffe]{transition:var(--transition)}.toast-enter-from[data-v-6e259ffe],.toast-leave-to[data-v-6e259ffe]{opacity:0;transform:translate(100%)}.base-input-wrapper[data-v-93d97d91]{flex-direction:column;width:100%;display:inline-flex;position:relative}.base-input[data-v-93d97d91]{width:100%;color:var(--text-primary);font-size:var(--text-sm);transition:all var(--transition-fast);box-sizing:border-box;outline:none}.base-input--sm[data-v-93d97d91]{padding:var(--spacing-2) var(--spacing-3);font-size:var(--text-xs)}.base-input--md[data-v-93d97d91]{padding:var(--spacing-3) var(--spacing-4);height:48px}.base-input--lg[data-v-93d97d91]{padding:var(--spacing-3) var(--spacing-5);font-size:var(--text-base);height:56px}.base-input[data-v-93d97d91]::placeholder{color:var(--text-muted)}.base-input[data-v-93d97d91]:disabled{opacity:.5;cursor:not-allowed}.base-input--error[data-v-93d97d91]{border-color:var(--danger);background:var(--danger-50)}.base-input--error[data-v-93d97d91]:focus{box-shadow:0 0 0 4px var(--danger-alpha-10)}.base-input--clearable[data-v-93d97d91]{padding-right:var(--spacing-12)}.base-input--default[data-v-93d97d91]{background:var(--surface);border-radius:var(--radius-lg);border:1px solid #0000}.base-input--default[data-v-93d97d91]:hover:not(:disabled):not(:focus){background:var(--surface-dim)}.base-input--default[data-v-93d97d91]:focus{background:var(--white);border-color:var(--primary-300);box-shadow:0 0 0 3px var(--primary-100)}.base-input--default[data-v-93d97d91]:disabled{background:var(--surface)}.base-input--outlined[data-v-93d97d91]{background:var(--surface-bright);border:var(--input-border-width) solid var(--border-color);border-radius:var(--input-radius)}.base-input--outlined[data-v-93d97d91]:hover:not(:disabled):not(:focus){border-color:var(--primary-200)}.base-input--outlined[data-v-93d97d91]:focus{background:var(--surface-bright);border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-100), var(--shadow-glow)}.base-input--outlined[data-v-93d97d91]:disabled{background:var(--surface-dim)}.base-input--compact[data-v-93d97d91]{padding:var(--spacing-2) var(--spacing-3);background:var(--surface-bright);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--text-xs)}.base-input--compact[data-v-93d97d91]:focus{border-color:var(--primary);background:var(--surface-bright)}.base-input--compact[data-v-93d97d91]:disabled{background:var(--surface-dim)}.base-input__clear[data-v-93d97d91]{right:var(--spacing-2);width:20px;height:20px;color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.base-input__clear[data-v-93d97d91]:hover{color:var(--text-primary);background:var(--bg-tertiary)}.base-input__error-message[data-v-93d97d91]{font-size:var(--text-xs);color:var(--danger);margin-top:var(--spacing-1)}.base-select-wrapper[data-v-9148cbcb]{display:inline-flex;position:relative}.base-select[data-v-9148cbcb]{width:100%;color:var(--text-primary);font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-fast);appearance:none;padding-right:var(--spacing-12);padding-left:var(--spacing-3);box-sizing:border-box;outline:none}.base-select--sm[data-v-9148cbcb]{font-size:var(--text-xs);height:36px;padding-left:12px}.base-select--md[data-v-9148cbcb]{height:48px;padding-left:16px}.base-select--lg[data-v-9148cbcb]{font-size:var(--text-base);height:56px;padding-left:20px}.base-select[data-v-9148cbcb]:disabled{opacity:.5;cursor:not-allowed}.base-select--error[data-v-9148cbcb]{border-color:var(--danger);background:var(--danger-50)}.base-select--error[data-v-9148cbcb]:focus{box-shadow:var(--shadow-inset), 0 0 0 3px var(--danger-alpha-15)}.base-select[data-v-9148cbcb]:not(.base-select--has-value){color:var(--text-muted)}.base-select--clearable[data-v-9148cbcb]{padding-right:var(--spacing-16)}.base-select--default[data-v-9148cbcb]{background:var(--surface);border-radius:var(--radius-lg);border:1px solid #0000}.base-select--default--sm[data-v-9148cbcb]{padding-top:var(--spacing-2);padding-bottom:var(--spacing-2)}.base-select--default--md[data-v-9148cbcb],.base-select--default--lg[data-v-9148cbcb]{padding-top:var(--spacing-3);padding-bottom:var(--spacing-3)}.base-select--default[data-v-9148cbcb]:hover:not(:disabled){background:var(--surface-dim);box-shadow:var(--shadow-sm)}.base-select--default[data-v-9148cbcb]:focus{background:var(--white);border-color:var(--primary-300);box-shadow:0 0 0 3px var(--primary-100)}.base-select--default[data-v-9148cbcb]:disabled{background:var(--surface)}.base-select--outlined[data-v-9148cbcb]{background:var(--surface-bright);border:var(--input-border-width) solid var(--border-color);border-radius:var(--input-radius)}.base-select--outlined--sm[data-v-9148cbcb]{padding-top:var(--spacing-2);padding-bottom:var(--spacing-2)}.base-select--outlined--md[data-v-9148cbcb],.base-select--outlined--lg[data-v-9148cbcb]{padding-top:var(--spacing-3);padding-bottom:var(--spacing-3)}.base-select--outlined[data-v-9148cbcb]:hover:not(:disabled){border-color:var(--primary-300);background:var(--surface-bright)}.base-select--outlined[data-v-9148cbcb]:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-100)}.base-select--outlined[data-v-9148cbcb]:disabled{background:var(--surface-dim)}.base-select--compact[data-v-9148cbcb]{padding-top:var(--spacing-2);padding-bottom:var(--spacing-2);background:var(--white);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--text-xs)}.base-select--compact[data-v-9148cbcb]:focus{border-color:var(--primary);background:var(--white)}.base-select--compact[data-v-9148cbcb]:disabled{background:var(--surface-dim)}.base-select__arrow[data-v-9148cbcb]{right:var(--spacing-3);color:var(--text-muted);pointer-events:none;transition:transform var(--transition-fast);align-items:center;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.base-select-wrapper:has(select:focus) .base-select__arrow[data-v-9148cbcb]{transform:translateY(-50%)rotate(180deg)}.base-select__clear[data-v-9148cbcb]{width:18px;height:18px;color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast);z-index:1;background:0 0;border:none;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;right:28px;transform:translateY(-50%)}.base-select__clear[data-v-9148cbcb]:hover{color:var(--text-primary);background:var(--bg-tertiary)}.dropdown-select[data-v-e4e9c1a9]{display:inline-flex;position:relative}.dropdown-select__trigger[data-v-e4e9c1a9]{align-items:center;gap:var(--spacing-1);min-width:140px;height:35px;padding:0 var(--spacing-2) 0 var(--spacing-3);background:var(--white);border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);user-select:none;font-size:var(--text-xs);box-sizing:border-box;width:100%;display:inline-flex}.dropdown-select__trigger[data-v-e4e9c1a9]:hover:not(.dropdown-select__trigger--disabled){border-color:var(--border-hover)}.dropdown-select__trigger[data-v-e4e9c1a9]:focus,.dropdown-select__trigger.dropdown-select__trigger--active[data-v-e4e9c1a9]{border-color:var(--primary);box-shadow:0 0 0 3px var(--blue-alpha-15);outline:none}.dropdown-select__trigger--disabled[data-v-e4e9c1a9]{opacity:.5;cursor:not-allowed;background:var(--bg-tertiary)}.dropdown-select__label[data-v-e4e9c1a9]{font-size:var(--text-xs);font-weight:var(--font-weight-medium);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.dropdown-select__trigger:not(.dropdown-select__trigger--has-value) .dropdown-select__label[data-v-e4e9c1a9]{color:var(--text-muted)}.dropdown-select__badge[data-v-e4e9c1a9]{padding:0 var(--spacing-1);background:var(--gray-100);color:var(--gray-600);font-size:var(--text-3xs);white-space:nowrap;border-radius:4px}.dropdown-select__arrow[data-v-e4e9c1a9]{color:var(--text-muted);transition:transform var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;margin-left:auto;display:flex}.dropdown-select__trigger--active .dropdown-select__arrow[data-v-e4e9c1a9]{transform:rotate(180deg)}.base-checkbox[data-v-8cae19f5]{align-items:center;gap:var(--spacing-3);cursor:pointer;font-size:var(--text-sm);color:var(--text-secondary);display:inline-flex}.base-checkbox--disabled[data-v-8cae19f5]{opacity:.5;cursor:not-allowed}.base-checkbox__input-wrapper[data-v-8cae19f5]{justify-content:center;align-items:center;display:flex;position:relative}.base-checkbox__input[data-v-8cae19f5]{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute}.base-checkbox__input[data-v-8cae19f5]:disabled{cursor:not-allowed}.base-checkbox__box[data-v-8cae19f5]{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-sm);transition:all var(--transition-fast);justify-content:center;align-items:center;display:flex}.base-checkbox--sm .base-checkbox__box[data-v-8cae19f5]{width:16px;height:16px}.base-checkbox--md .base-checkbox__box[data-v-8cae19f5]{width:18px;height:18px}.base-checkbox--lg .base-checkbox__box[data-v-8cae19f5]{width:20px;height:20px}.base-checkbox__icon[data-v-8cae19f5]{color:var(--white);stroke-linecap:round;stroke-linejoin:round}.base-checkbox--sm .base-checkbox__icon[data-v-8cae19f5]{width:10px;height:10px}.base-checkbox--md .base-checkbox__icon[data-v-8cae19f5]{width:12px;height:12px}.base-checkbox--lg .base-checkbox__icon[data-v-8cae19f5]{width:14px;height:14px}.base-checkbox:hover:not(.base-checkbox--disabled) .base-checkbox__box[data-v-8cae19f5]{border-color:var(--primary)}.base-checkbox--checked .base-checkbox__box[data-v-8cae19f5],.base-checkbox--indeterminate .base-checkbox__box[data-v-8cae19f5]{background:var(--primary);border-color:var(--primary)}.base-checkbox__label[data-v-8cae19f5]{user-select:none}.base-radio[data-v-b0cca048]{align-items:center;gap:var(--spacing-3);cursor:pointer;font-size:var(--text-sm);color:var(--text-secondary);display:inline-flex}.base-radio--disabled[data-v-b0cca048]{opacity:.5;cursor:not-allowed}.base-radio__input-wrapper[data-v-b0cca048]{justify-content:center;align-items:center;display:flex;position:relative}.base-radio__input[data-v-b0cca048]{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute}.base-radio__input[data-v-b0cca048]:disabled{cursor:not-allowed}.base-radio__circle[data-v-b0cca048]{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-full);transition:all var(--transition-fast);justify-content:center;align-items:center;display:flex}.base-radio--sm .base-radio__circle[data-v-b0cca048]{width:16px;height:16px}.base-radio--md .base-radio__circle[data-v-b0cca048]{width:18px;height:18px}.base-radio--lg .base-radio__circle[data-v-b0cca048]{width:20px;height:20px}.base-radio__dot[data-v-b0cca048]{border-radius:var(--radius-full);background:var(--white);transition:all var(--transition-fast)}.base-radio--sm .base-radio__dot[data-v-b0cca048]{width:6px;height:6px}.base-radio--md .base-radio__dot[data-v-b0cca048]{width:8px;height:8px}.base-radio--lg .base-radio__dot[data-v-b0cca048]{width:10px;height:10px}.base-radio:not(.base-radio--checked) .base-radio__dot[data-v-b0cca048]{opacity:0;transform:scale(0)}.base-radio--checked .base-radio__dot[data-v-b0cca048]{opacity:1;transform:scale(1)}.base-radio:hover:not(.base-radio--disabled) .base-radio__circle[data-v-b0cca048]{border-color:var(--primary)}.base-radio--checked .base-radio__circle[data-v-b0cca048]{background:var(--primary);border-color:var(--primary)}.base-radio__label[data-v-b0cca048]{user-select:none}.base-pagination[data-v-ef93aac7]{align-items:center;column-gap:var(--spacing-4);row-gap:var(--spacing-3);padding:var(--spacing-4);background:var(--gray-50);border-top:1px solid var(--border-color);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);display:grid}.base-pagination__left[data-v-ef93aac7]{align-items:center;gap:var(--spacing-4);min-width:0;display:flex}.base-pagination__right[data-v-ef93aac7]{justify-content:flex-end;min-width:0;display:flex}.base-pagination__total[data-v-ef93aac7]{white-space:nowrap;font-size:var(--text-13);color:var(--gray-500)}.base-pagination__total span[data-v-ef93aac7]{font-weight:var(--font-weight-medium);color:var(--text-primary)}.base-pagination__sizes[data-v-ef93aac7]{white-space:nowrap;align-items:center;display:flex}.base-pagination__select[data-v-ef93aac7]{padding:var(--spacing-1-5) var(--spacing-7) var(--spacing-1-5) var(--spacing-2-5);background:var(--white);border:1px solid var(--gray-300);border-radius:var(--radius);font-size:var(--text-13);color:var(--gray-700);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%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%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;outline:none}.base-pagination__select[data-v-ef93aac7]:hover{border-color:var(--primary)}.base-pagination__select[data-v-ef93aac7]:focus{border-color:var(--primary);box-shadow:0 0 0 2px var(--blue-alpha-15)}.base-pagination__pages[data-v-ef93aac7]{align-items:center;gap:var(--spacing-1);justify-self:center;display:flex}.base-pagination__btn[data-v-ef93aac7]{min-width:32px;height:32px;padding:0 var(--spacing-2);border:1px solid var(--gray-300);background:var(--white);border-radius:var(--radius);font-size:var(--text-13);color:var(--gray-700);cursor:pointer;transition:all var(--transition-fast);justify-content:center;align-items:center;display:flex}.base-pagination__btn[data-v-ef93aac7]:hover:not(:disabled){border-color:var(--primary);color:var(--primary);background:var(--primary-50)}.base-pagination__btn[data-v-ef93aac7]:disabled{opacity:.5;cursor:not-allowed}.base-pagination__btn--active[data-v-ef93aac7]{background:var(--primary);border-color:var(--primary);color:var(--white)}.base-pagination__btn--active[data-v-ef93aac7]:hover:not(:disabled){background:var(--primary-dark);border-color:var(--primary-dark);color:var(--white)}.base-pagination__btn--nav[data-v-ef93aac7]{padding:0}.base-pagination__ellipsis[data-v-ef93aac7]{min-width:32px;height:32px;color:var(--gray-500);justify-content:center;align-items:center;display:flex}.base-pagination__info[data-v-ef93aac7]{white-space:nowrap;font-size:var(--text-13);color:var(--gray-500)}@media (width<=900px){.base-pagination[data-v-ef93aac7]{grid-template-columns:1fr}.base-pagination__left[data-v-ef93aac7],.base-pagination__pages[data-v-ef93aac7],.base-pagination__right[data-v-ef93aac7]{justify-content:center}}.confirm-dialog-overlay[data-v-d775b30b]{background:var(--overlay-bg);backdrop-filter:blur(4px);z-index:10000;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.confirm-dialog[data-v-d775b30b]{background:var(--white);border-radius:var(--radius-lg);width:90%;max-width:420px;box-shadow:var(--shadow-xl);overflow:hidden}.confirm-dialog-header[data-v-d775b30b]{padding:var(--spacing-6) var(--spacing-6) var(--spacing-4);text-align:center}.confirm-dialog-icon[data-v-d775b30b]{width:var(--spacing-12);height:var(--spacing-12);margin:0 auto var(--spacing-3);border-radius:var(--radius-full);justify-content:center;align-items:center;display:flex}.confirm-dialog-icon.confirm-dialog-icon-warning[data-v-d775b30b]{background:var(--warning-light);color:var(--status-warning-fg)}.confirm-dialog-icon.confirm-dialog-icon-danger[data-v-d775b30b]{background:var(--danger-light);color:var(--danger)}.confirm-dialog-icon.confirm-dialog-icon-info[data-v-d775b30b]{background:var(--primary-50);color:var(--primary)}.confirm-dialog-title[data-v-d775b30b]{font-size:var(--text-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin:0}.confirm-dialog-body[data-v-d775b30b]{padding:0 var(--spacing-6) var(--spacing-6);text-align:center}.confirm-dialog-message[data-v-d775b30b]{font-size:var(--text-sm);color:var(--text-secondary);white-space:pre-line;margin:0;line-height:1.6}.confirm-dialog-footer[data-v-d775b30b]{padding:var(--spacing-4) var(--spacing-6);border-top:1px solid var(--border-color);gap:var(--spacing-4);justify-content:center;display:flex}.confirm-dialog-footer .btn[data-v-d775b30b]{min-width:100px}.confirm-dialog-enter-active[data-v-d775b30b],.confirm-dialog-leave-active[data-v-d775b30b]{transition:all var(--transition-fast)}.confirm-dialog-enter-from[data-v-d775b30b],.confirm-dialog-leave-to[data-v-d775b30b]{opacity:0}.confirm-dialog-enter-from .confirm-dialog[data-v-d775b30b],.confirm-dialog-leave-to .confirm-dialog[data-v-d775b30b]{transform:scale(.95)}.confirm-dialog-enter-to[data-v-d775b30b],.confirm-dialog-leave-from[data-v-d775b30b]{opacity:1}.confirm-dialog-enter-to .confirm-dialog[data-v-d775b30b],.confirm-dialog-leave-from .confirm-dialog[data-v-d775b30b]{transform:scale(1)}.search-input[data-v-26b14df4]{align-items:center;display:inline-flex;position:relative}.search-input__icon[data-v-26b14df4]{color:var(--text-muted);pointer-events:none;flex-shrink:0;position:absolute;left:12px}.search-input__field[data-v-26b14df4]{width:100%;color:var(--text-primary);font-size:var(--text-sm);transition:all var(--transition-fast);outline:none;padding-left:38px}.search-input__field--sm[data-v-26b14df4]{padding-top:var(--spacing-1-5);padding-bottom:var(--spacing-1-5);padding-right:var(--spacing-2-5);font-size:var(--text-13)}.search-input__field--md[data-v-26b14df4]{padding-top:var(--spacing-2-5);padding-bottom:var(--spacing-2-5);padding-right:var(--spacing-3)}.search-input__field--lg[data-v-26b14df4]{padding-top:var(--spacing-3);padding-bottom:var(--spacing-3);padding-right:var(--spacing-3-5);font-size:var(--text-base)}.search-input__field[data-v-26b14df4]:hover:not(:disabled):not(:focus){border-color:var(--border-hover)}.search-input__field[data-v-26b14df4]:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--blue-alpha-15)}.search-input__field[data-v-26b14df4]::placeholder{color:var(--text-muted)}.search-input__field[data-v-26b14df4]:disabled{opacity:.5;cursor:not-allowed}.search-input__clear[data-v-26b14df4]{right:var(--spacing-2-5);width:18px;height:18px;color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex;position:absolute}.search-input__clear[data-v-26b14df4]:hover{color:var(--text-primary);background:var(--gray-200)}.search-input--default .search-input__field[data-v-26b14df4]{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius)}.search-input--unified[data-v-26b14df4]{min-width:240px}.search-input--unified .search-input__icon[data-v-26b14df4]{color:var(--gray-400);left:12px}.search-input--unified .search-input__field[data-v-26b14df4]{background:var(--surface-bright);border:var(--input-border-width) solid var(--border-color);border-radius:var(--input-radius);color:var(--text-primary);box-shadow:none}.search-input--unified .search-input__field--sm[data-v-26b14df4]{height:36px;padding-top:0;padding-bottom:0}.search-input--unified .search-input__field--md[data-v-26b14df4]{height:40px;padding-top:0;padding-bottom:0}.search-input--unified .search-input__field[data-v-26b14df4]:hover:not(:disabled):not(:focus){border-color:var(--gray-300);background:var(--surface-bright)}.search-input--unified .search-input__field[data-v-26b14df4]:focus{border-color:var(--primary-300);box-shadow:0 0 0 2px var(--primary-100);background:var(--surface-bright)}.search-input--unified .search-input__clear[data-v-26b14df4]{color:var(--gray-400)}.search-input--elevated .search-input__field[data-v-26b14df4]{background:var(--surface-bright);border:1px solid var(--border-color);border-radius:var(--radius-xl);color:var(--text-primary);box-shadow:var(--shadow-md)}.search-input--elevated .search-input__field--sm[data-v-26b14df4]{height:38px;padding-top:0;padding-bottom:0}.search-input--elevated .search-input__field--md[data-v-26b14df4]{height:44px;padding-top:0;padding-bottom:0}.search-input--elevated .search-input__field--lg[data-v-26b14df4]{height:50px;padding-top:0;padding-bottom:0}.search-input--elevated .search-input__field[data-v-26b14df4]:hover:not(:disabled):not(:focus){border-color:var(--primary-200)}.search-input--elevated .search-input__field[data-v-26b14df4]:focus{border-color:var(--primary);box-shadow:var(--shadow-md), 0 0 0 3px var(--primary-alpha-15)}.search-input--elevated .search-input__field[data-v-26b14df4]:disabled{opacity:.5;cursor:not-allowed}:root{--primary:#7c3aed;--primary-dark:#6d28d9;--primary-light:#a78bfa;--primary-50:#f5f3ff;--primary-100:#ede9fe;--primary-200:#ddd6fe;--primary-300:#c4b5fd;--secondary:#4f46e5;--secondary-light:#818cf8;--secondary-50:#eef2ff;--secondary-100:#e0e7ff;--accent:#8b5cf6;--accent-light:#c4b5fd;--danger:#ef4444;--danger-50:#fef2f2;--warning:#f59e0b;--warning-50:#fffbeb;--gray-50:#f8fafc;--gray-100:#f1f5f9;--gray-200:#e2e8f0;--gray-300:#cbd5e1;--gray-400:#94a3b8;--gray-500:#64748b;--gray-600:#475569;--gray-700:#334155;--gray-800:#1e293b;--gray-900:#0f172a;--white:#fff;--black:var(--gray-900);--surface:#fafafa;--surface-subtle:#f5f5f5;--surface-bright:#fff;--surface-dim:#eee;--bg-primary:#f7f7f8;--bg-secondary:var(--surface-bright);--bg-tertiary:var(--bg-primary);--bg-card:#ffffffeb;--bg-hover:var(--primary-50);--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#94a3b8;--border-color:#0000000f;--border-hover:#7c3aed40;--success-light:#d1fae5;--success-50:#ecfdf5;--success-text:#059669;--success-dark:#047857;--warning-light:#fef3c7;--warning-text:#d97706;--danger-light:#fee2e2;--danger-text:#dc2626;--info-light:#ede9fe;--info-text:#7c3aed;--status-processing-bg:var(--primary-100);--status-processing-fg:var(--primary-dark);--status-completed-bg:var(--success-light);--status-completed-fg:var(--success-text);--status-warning-bg:var(--warning-light);--status-warning-fg:var(--warning-text);--status-success-fg:var(--success-text);--glass-bg:#ffffffeb;--glass-border:#0000000f;--glass-blur:blur(16px);--glass-highlight:#fff9;--period-morning:#d97706;--period-evening:#7c3aed;--balance-gradient-end:var(--secondary);--subject-chinese-bg:linear-gradient(135deg, #e8f5e9 0%, #c8e6c9 100%);--subject-chinese-border:#a5d6a7;--subject-math-bg:linear-gradient(135deg, #e3f2fd 0%, #bbdefb 100%);--subject-math-border:#90caf9;--subject-english-bg:linear-gradient(135deg, #fff3e0 0%, #ffe0b2 100%);--subject-english-border:#ffcc80;--subject-physics-bg:linear-gradient(135deg, #f3e5f5 0%, #e1bee7 100%);--subject-physics-border:#ce93d8;--subject-chemistry-bg:linear-gradient(135deg, #e0f7fa 0%, #b2ebf2 100%);--subject-chemistry-border:#80deea;--subject-biology-bg:linear-gradient(135deg, #f1f8e9 0%, #dcedc8 100%);--subject-biology-border:#c5e1a5;--subject-history-bg:linear-gradient(135deg, #fff8e1 0%, #ffecb3 100%);--subject-history-border:#ffe082;--subject-geography-bg:linear-gradient(135deg, #e8eaf6 0%, #c5cae9 100%);--subject-geography-border:#9fa8da;--subject-politics-bg:linear-gradient(135deg, #fce4ec 0%, #f8bbd9 100%);--subject-politics-border:#f48fb1;--subject-pe-bg:linear-gradient(135deg, #fff9c4 0%, #fff59d 100%);--subject-pe-border:#ffee58;--subject-music-bg:linear-gradient(135deg, #f3e5f5 0%, #e1bee7 100%);--subject-music-border:#ce93d8;--subject-art-bg:linear-gradient(135deg, #ffebee 0%, #ffcdd2 100%);--subject-art-border:#ef9a9a;--subject-it-bg:linear-gradient(135deg, #e0f2f1 0%, #b2dfdb 100%);--subject-it-border:#80cbc4;--subject-other-bg:linear-gradient(135deg, #fafafa 0%, #eee 100%);--subject-other-border:#e0e0e0;--gradient-primary:linear-gradient(135deg, var(--primary), var(--secondary));--gradient-glass:linear-gradient(135deg, #fffc, #fff6);--gradient-surface:linear-gradient(180deg, #fff, #f7f7f8);--gradient-info:linear-gradient(135deg, var(--info-50), var(--info-100));--gradient-success:linear-gradient(135deg, var(--success-50), var(--success-light));--gradient-warning:linear-gradient(135deg, var(--warning-50), var(--warning-light));--gradient-danger:linear-gradient(135deg, var(--danger-light), var(--danger-200));--danger-200:#fecaca;--danger-dark:#991b1b;--warning-dark:#78350f;--info:#0ea5e9;--info-50:#f0f9ff;--info-100:#e0f2fe;--info-dark:#164e63;--shadow-xs:0 1px 2px #00000008;--shadow-sm:0 2px 4px #0000000a;--shadow:0 4px 12px #0000000d;--shadow-md:0 8px 16px #0000000f;--shadow-lg:0 16px 32px #0000000f;--shadow-xl:0 24px 48px #00000014;--shadow-premium:0 12px 24px -6px #0000000f, 0 4px 8px -4px #00000008;--shadow-inset:inset 0 2px 4px #00000008;--shadow-toast:0 12px 32px #00000014, 0 0 0 1px #fffc;--shadow-drawer:-4px 0 24px #0000000a;--shadow-glass:0 8px 32px 0 #0000000a, inset 0 1px 0 #fff9;--shadow-glow:0 4px 12px #7c3aed1f;--shadow-glow-primary:0 4px 12px #7c3aed26;--overlay-bg:#00000080;--focus-ring-primary:#7c3aed26;--focus-ring-danger:#ef444426;--focus-ring-warning:#fbbf2426;--focus-ring-info:#0ea5e926;--primary-alpha-5:#7c3aed0d;--primary-alpha-8:#7c3aed14;--primary-alpha-10:#7c3aed1a;--primary-alpha-15:#7c3aed26;--primary-alpha-20:#7c3aed33;--primary-alpha-30:#7c3aed4d;--accent-alpha-5:#22c55e0d;--accent-alpha-10:#22c55e1a;--accent-alpha-15:#22c55e26;--accent-alpha-30:#22c55e4d;--success-alpha-5:#0596690d;--success-alpha-10:#0596691a;--success-alpha-15:#05966926;--blue-alpha-10:#8b5cf61a;--blue-alpha-15:#8b5cf626;--blue-alpha-30:#8b5cf64d;--purple-alpha-15:#8b5cf626;--warning-alpha-10:#fbbf241a;--warning-alpha-15:#fbbf2426;--warning-alpha-30:#fbbf244d;--danger-alpha-5:#ef44440d;--danger-alpha-10:#ef44441a;--danger-alpha-15:#ef444426;--danger-alpha-20:#ef444433;--info-alpha-5:#0ea5e90d;--info-alpha-10:#0ea5e91a;--info-alpha-15:#0ea5e926;--white-alpha-50:#ffffff80;--white-alpha-98:#fffffffa;--slate-alpha-98:#f8fafcfa;--slate-alpha-22:#00000014;--slate-alpha-8:#0000000d;--black-alpha-40:#0006;--app-shell-chrome-bg:#f5f6f7;--app-shell-sheet-bg:#fff;--app-shell-sheet-border:#0000000f;--app-shell-sheet-shadow:0 4px 24px #0000000f;--app-shell-gutter:clamp(8px, 1.25vw, 16px);--app-shell-sheet-radius:clamp(10px, 1.2vw, 16px);--shadow-dropdown:var(--shadow-md);--shadow-card:var(--shadow);--z-dropdown:1000;--z-sticky:1020;--z-fixed:1030;--z-modal-backdrop:1040;--z-modal:1050;--z-popover:1060;--z-tooltip:1070;--overlay-dark-bg:#0f172a80;--font-primary:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "PingFang TC", "Microsoft YaHei UI", "Microsoft YaHei", "Noto Sans CJK SC", "Noto Sans SC", sans-serif;--font-display:var(--font-primary);--font-mono:"JetBrains Mono", "Fira Code", "Consolas", "Monaco", "Source Code Pro", monospace;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--text-3xs:.625rem;--text-2xs:.6875rem;--text-xs:.75rem;--text-13:.8125rem;--text-sm:.875rem;--text-15:.9375rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--text-5xl:3rem;--text-6xl:3.75rem;--letter-spacing-tight:-.02em;--letter-spacing-body:-.011em;--letter-spacing-normal:0;--letter-spacing-wide:.05em;--line-height-tight:1.2;--line-height-normal:1.5;--line-height-relaxed:1.625;--radius-2xs:3px;--radius-xs:4px;--radius-sm:6px;--radius:8px;--radius-md:var(--radius);--radius-lg:12px;--radius-xl:16px;--radius-2xl:20px;--radius-3xl:24px;--radius-4xl:28px;--radius-hero:1.25rem;--radius-full:9999px;--spacing-0:0;--spacing-0-25:1px;--spacing-0-5:2px;--spacing-1:4px;--spacing-1-5:6px;--spacing-2:8px;--spacing-2-5:10px;--spacing-3:12px;--spacing-4:16px;--spacing-4-5:18px;--spacing-5:20px;--spacing-6:24px;--spacing-7:28px;--spacing-8:32px;--spacing-10:40px;--spacing-12:48px;--spacing-16:64px;--spacing-xs:var(--spacing-1);--spacing-sm:var(--spacing-2);--spacing-md:var(--spacing-4);--spacing-lg:var(--spacing-6);--spacing-xl:var(--spacing-8);--padding-xs:var(--spacing-1);--padding-sm:var(--spacing-2);--padding-md:var(--spacing-4);--padding-lg:var(--spacing-6);--padding-xl:var(--spacing-8);--padding-card:var(--spacing-5);--padding-modal:var(--spacing-6);--padding-section:var(--spacing-6);--padding-page:var(--spacing-6);--gap-xs:var(--spacing-1);--gap-sm:var(--spacing-2);--gap-md:var(--spacing-4);--gap-lg:var(--spacing-6);--gap-xl:var(--spacing-8);--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition:.3s cubic-bezier(.4, 0, .2, 1);--transition-normal:var(--transition);--transition-slow:.5s cubic-bezier(.4, 0, .2, 1);--btn-radius:12px;--btn-padding-y:var(--spacing-2-5);--btn-padding-x:var(--spacing-5);--btn-font-weight:600;--btn-font-size:var(--text-sm);--btn-border-width:1px;--btn-letter-spacing:-.01em;--card-radius:var(--radius-xl);--card-padding:var(--padding-card);--card-border-width:1px;--card-hover-lift:-1px;--card-bg:var(--bg-card);--input-radius:10px;--input-padding-y:var(--spacing-3);--input-padding-x:var(--spacing-4);--input-border-width:1px;--table-radius:var(--radius-lg);--table-header-text-transform:uppercase;--table-header-letter-spacing:.05em;--table-cell-padding:14px 16px;--badge-radius:var(--radius-full);--badge-padding:4px 12px;--drawer-header-padding:24px 32px;--drawer-body-padding:24px 32px;--drawer-footer-padding:16px 32px;--page-header-border-style:solid;--page-title-size:var(--text-2xl);--page-title-weight:var(--font-weight-bold);--sidebar-width:236px;--sidebar-collapsed-width:68px;--sidebar-item-radius:10px;--sidebar-item-padding:9px 12px;--building-1-bg:linear-gradient(135deg, #60a5fa 0%, #3b82f6 100%);--building-1-shadow:0 8px 24px #3b82f640;--building-1-light:#eff6ff;--building-1-text:#1d4ed8;--building-2-bg:linear-gradient(135deg, #34d399 0%, #10b981 100%);--building-2-shadow:0 8px 24px #10b98140;--building-2-light:#ecfdf5;--building-2-text:#059669;--building-3-bg:linear-gradient(135deg, #fbbf24 0%, #f59e0b 100%);--building-3-shadow:0 8px 24px #f59e0b40;--building-3-light:#fffbeb;--building-3-text:#d97706;--building-4-bg:linear-gradient(135deg, #f87171 0%, #ef4444 100%);--building-4-shadow:0 8px 24px #ef444440;--building-4-light:#fef2f2;--building-4-text:#dc2626;--building-5-bg:linear-gradient(135deg, #a78bfa 0%, #8b5cf6 100%);--building-5-shadow:0 8px 24px #8b5cf640;--building-5-light:#f5f3ff;--building-5-text:#7c3aed;--building-6-bg:linear-gradient(135deg, #fb923c 0%, #f97316 100%);--building-6-shadow:0 8px 24px #f9731640;--building-6-light:#fff7ed;--building-6-text:#ea580c;--room-type-normal-bg:#eff6ff;--room-type-normal-text:#1d4ed8;--room-type-normal-icon-bg:#dbeafe;--room-type-multimedia-bg:#f5f3ff;--room-type-multimedia-text:#7c3aed;--room-type-multimedia-icon-bg:#ede9fe;--room-type-lab-bg:#ecfdf5;--room-type-lab-text:#059669;--room-type-lab-icon-bg:#d1fae5;--room-type-music-bg:#fff7ed;--room-type-music-text:#ea580c;--room-type-music-icon-bg:#ffedd5;--room-type-art-bg:#fffbeb;--room-type-art-text:#d97706;--room-type-art-icon-bg:#fef3c7;--room-type-computer-bg:#fef2f2;--room-type-computer-text:#dc2626;--room-type-computer-icon-bg:#fee2e2}html[data-theme=ink-wash]{--primary:#4a4458;--primary-dark:#3b3650;--primary-light:#6e6880;--primary-50:#f5f4f2;--primary-100:#ebe8e3;--primary-200:#d8d3ca;--primary-300:#b8b0a4;--secondary:#5c5470;--secondary-light:#8a8298;--secondary-50:#f3f2f0;--secondary-100:#e5e2dd;--accent:#c53d43;--accent-light:#d97074;--danger:#c53d43;--danger-50:#fdf2f2;--danger-light:#f2d8d4;--danger-200:#e8c4c4;--danger-text:#a83238;--danger-dark:#6b2020;--warning:#c4913b;--warning-50:#fbf6ed;--warning-light:#f0e4cc;--warning-text:#a07b30;--warning-dark:#5c3a10;--success-light:#e8dfd0;--success-50:#f5f0e6;--success-200:#b8d4b8;--success-text:#5c7a50;--success-dark:#4a6340;--info:#5b8fa8;--info-50:#f5f0eb;--info-100:#e8e0d8;--info-light:#e5e0d6;--info-text:#4a4458;--info-dark:#2c4a56;--status-processing-bg:var(--primary-100);--status-processing-fg:var(--primary-dark);--status-completed-bg:var(--success-light);--status-completed-fg:var(--success-text);--status-warning-bg:var(--warning-light);--status-warning-fg:var(--warning-text);--status-success-fg:var(--success-text);--gray-50:#f7f5f0;--gray-100:#ede9e0;--gray-200:#ddd7ca;--gray-300:#c4bba8;--gray-400:#a69d8c;--gray-500:#7d756a;--gray-600:#5c564d;--gray-700:#3e3a35;--gray-800:#2a2724;--gray-900:#1a1816;--white:#fefcf8;--black:var(--gray-900);--surface:#f5f2ec;--surface-subtle:#ede9e0;--surface-bright:#fefcf8;--surface-dim:#e5e0d6;--bg-primary:#f0ece4;--bg-secondary:var(--surface-bright);--bg-tertiary:var(--bg-primary);--bg-card:#fefcf8f2;--bg-hover:var(--primary-50);--text-primary:#1a1816;--text-secondary:#5c564d;--text-muted:#a69d8c;--border-color:#3a342a1a;--border-hover:#c53d4340;--glass-bg:#fefcf8eb;--glass-border:#3a342a14;--glass-blur:blur(16px);--glass-highlight:#fefcf899;--shadow-xs:0 1px 2px #2a27240a;--shadow-sm:0 2px 4px #2a27240d;--shadow:0 4px 12px #2a27240f;--shadow-md:0 8px 16px #2a272412;--shadow-lg:0 16px 32px #2a272412;--shadow-xl:0 24px 48px #2a272417;--shadow-premium:0 12px 24px -6px #2a272412, 0 4px 8px -4px #2a27240a;--shadow-inset:inset 0 2px 4px #2a27240a;--shadow-toast:0 12px 32px #2a272417, 0 0 0 1px #fefcf8cc;--shadow-drawer:-4px 0 24px #2a27240d;--shadow-dropdown:var(--shadow-md);--shadow-card:var(--shadow);--shadow-glass:0 8px 32px 0 #2a27240d, inset 0 1px 0 #fefcf899;--shadow-glow:0 4px 12px #4a44581f;--shadow-glow-primary:0 4px 12px #4a445826;--overlay-bg:#1a181680;--overlay-dark-bg:#1a181680;--focus-ring-primary:#4a445826;--focus-ring-danger:#c53d4326;--focus-ring-warning:#c4913b26;--focus-ring-info:#5b8fa826;--primary-alpha-5:#4a44580d;--primary-alpha-8:#4a445814;--primary-alpha-10:#4a44581a;--primary-alpha-15:#4a445826;--primary-alpha-20:#4a445833;--primary-alpha-30:#4a44584d;--accent-alpha-5:#c53d430d;--accent-alpha-10:#c53d431a;--accent-alpha-15:#c53d4326;--accent-alpha-30:#c53d434d;--success-alpha-5:#5c7a500d;--success-alpha-10:#5c7a501a;--success-alpha-15:#5c7a5026;--blue-alpha-10:#5c54701a;--blue-alpha-15:#5c547026;--blue-alpha-30:#5c54704d;--purple-alpha-15:#5c547026;--warning-alpha-10:#c4913b1a;--warning-alpha-15:#c4913b26;--warning-alpha-30:#c4913b4d;--danger-alpha-5:#c53d430d;--danger-alpha-10:#c53d431a;--danger-alpha-15:#c53d4326;--danger-alpha-20:#c53d4333;--info-alpha-5:#5b8fa80d;--info-alpha-10:#5b8fa81a;--info-alpha-15:#5b8fa826;--white-alpha-50:#fefcf880;--white-alpha-98:#fefcf8fa;--slate-alpha-98:#f7f5f0fa;--slate-alpha-22:#2a272414;--slate-alpha-8:#2a27240d;--black-alpha-40:#1a181666;--font-primary:"Noto Serif SC", "STSong", "SimSun", "PingFang SC", "Microsoft YaHei", serif;--font-display:var(--font-primary);--font-mono:"JetBrains Mono", "Fira Code", "Consolas", "Monaco", "Source Code Pro", monospace;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--letter-spacing-tight:0;--letter-spacing-body:.01em;--letter-spacing-normal:.02em;--letter-spacing-wide:.08em;--line-height-tight:1.25;--line-height-normal:1.6;--line-height-relaxed:1.75;--radius-xs:2px;--radius-sm:4px;--radius:6px;--radius-md:var(--radius);--radius-lg:8px;--radius-xl:10px;--radius-2xl:12px;--radius-hero:.75rem;--radius-full:9999px;--spacing-1:4px;--spacing-2:8px;--spacing-2-5:10px;--spacing-3:12px;--spacing-4:16px;--spacing-5:20px;--spacing-6:24px;--spacing-7:28px;--spacing-8:32px;--spacing-10:40px;--spacing-12:48px;--spacing-16:64px;--padding-card:var(--spacing-6);--padding-modal:var(--spacing-7);--padding-section:var(--spacing-6);--padding-page:var(--spacing-8);--btn-radius:4px;--btn-padding-y:var(--spacing-2-5);--btn-padding-x:var(--spacing-6);--btn-font-weight:600;--btn-font-size:var(--text-sm);--btn-border-width:1px;--btn-letter-spacing:.05em;--card-radius:var(--radius-lg);--card-padding:var(--spacing-6);--card-border-width:1px;--card-hover-lift:-2px;--card-bg:#fefcf8e6;--input-radius:4px;--input-padding-y:var(--spacing-3);--input-padding-x:var(--spacing-4);--input-border-width:1px;--table-radius:var(--radius-lg);--table-header-text-transform:uppercase;--table-header-letter-spacing:.08em;--table-cell-padding:14px 16px;--badge-radius:var(--radius-sm);--badge-padding:4px 10px;--drawer-header-padding:24px 32px;--drawer-body-padding:24px 32px;--drawer-footer-padding:16px 32px;--page-header-border-style:double;--page-title-size:var(--text-2xl);--page-title-weight:var(--font-weight-bold);--sidebar-width:236px;--sidebar-collapsed-width:68px;--sidebar-item-radius:var(--radius-sm);--sidebar-item-padding:9px 12px;--app-shell-gutter:10px;--app-shell-sheet-radius:10px;--gradient-primary:linear-gradient(135deg, var(--primary), var(--secondary));--gradient-glass:linear-gradient(135deg, #fefcf8cc, #fefcf866);--gradient-surface:linear-gradient(180deg, #fefcf8, #f0ece4);--gradient-info:linear-gradient(135deg, var(--info-50), var(--info-100));--gradient-success:linear-gradient(135deg, var(--success-50), var(--success-light));--gradient-warning:linear-gradient(135deg, var(--warning-50), var(--warning-light));--gradient-danger:linear-gradient(135deg, var(--danger-light), var(--danger-200));--period-morning:#c4913b;--period-evening:#4a4458;--balance-gradient-end:var(--secondary);--subject-chinese-bg:linear-gradient(135deg, #f5f0e6 0%, #e8dfc8 100%);--subject-chinese-border:#c4b898;--subject-math-bg:linear-gradient(135deg, #ede9e0 0%, #d8d3ca 100%);--subject-math-border:#b8b0a4;--subject-english-bg:linear-gradient(135deg, #fbf6ed 0%, #f0e4cc 100%);--subject-english-border:#d4c49a;--subject-physics-bg:linear-gradient(135deg, #f3f2f0 0%, #e5e2dd 100%);--subject-physics-border:#a69d8c;--subject-chemistry-bg:linear-gradient(135deg, #f5f0e6 0%, #e0d8c4 100%);--subject-chemistry-border:#b8a88c;--subject-biology-bg:linear-gradient(135deg, #f0ece4 0%, #ddd7ca 100%);--subject-biology-border:#a89e88;--subject-history-bg:linear-gradient(135deg, #fdf2f2 0%, #f2d8d4 100%);--subject-history-border:#c4a098;--subject-geography-bg:linear-gradient(135deg, #f5f4f2 0%, #e8e5e0 100%);--subject-geography-border:#b0a898;--subject-politics-bg:linear-gradient(135deg, #f5f0e6 0%, #e8dfc8 100%);--subject-politics-border:#c4b090;--subject-pe-bg:linear-gradient(135deg, #fbf6ed 0%, #f0e4cc 100%);--subject-pe-border:#d4c49a;--subject-music-bg:linear-gradient(135deg, #f3f2f0 0%, #e5e0d6 100%);--subject-music-border:#a69d8c;--subject-art-bg:linear-gradient(135deg, #fdf2f2 0%, #f0d8d4 100%);--subject-art-border:#c4a098;--subject-it-bg:linear-gradient(135deg, #ede9e0 0%, #d8d3ca 100%);--subject-it-border:#b8b0a4;--subject-other-bg:linear-gradient(135deg, #f5f2ec 0%, #ede9e0 100%);--subject-other-border:#c4bba8;--app-shell-chrome-bg:#e8e3da;--app-shell-sheet-bg:#fefcf8;--app-shell-sheet-border:#3a342a14;--app-shell-sheet-shadow:0 4px 24px #2a27240f;--building-1-bg:linear-gradient(135deg, #7d756a 0%, #5c564d 100%);--building-1-shadow:0 8px 24px #5c564d33;--building-1-light:#f0ece4;--building-1-text:#3e3a35;--building-2-bg:linear-gradient(135deg, #a69d8c 0%, #7d756a 100%);--building-2-shadow:0 8px 24px #7d756a33;--building-2-light:#f5f2ec;--building-2-text:#5c564d;--building-3-bg:linear-gradient(135deg, #c4913b 0%, #a07b30 100%);--building-3-shadow:0 8px 24px #c4913b33;--building-3-light:#fbf6ed;--building-3-text:#a07b30;--building-4-bg:linear-gradient(135deg, #c53d43 0%, #a83238 100%);--building-4-shadow:0 8px 24px #c53d4333;--building-4-light:#fdf2f2;--building-4-text:#a83238;--building-5-bg:linear-gradient(135deg, #6e6880 0%, #4a4458 100%);--building-5-shadow:0 8px 24px #4a445833;--building-5-light:#f5f4f2;--building-5-text:#3b3650;--building-6-bg:linear-gradient(135deg, #b8a88c 0%, #8c7e64 100%);--building-6-shadow:0 8px 24px #8c7e6433;--building-6-light:#f5f0e6;--building-6-text:#6e6450;--room-type-normal-bg:#f0ece4;--room-type-normal-text:#3e3a35;--room-type-normal-icon-bg:#e5e0d6;--room-type-multimedia-bg:#f5f4f2;--room-type-multimedia-text:#3b3650;--room-type-multimedia-icon-bg:#ebe8e3;--room-type-lab-bg:#f5f0e6;--room-type-lab-text:#5c7a50;--room-type-lab-icon-bg:#e8dfd0;--room-type-music-bg:#fbf6ed;--room-type-music-text:#a07b30;--room-type-music-icon-bg:#f0e4cc;--room-type-art-bg:#fdf2f2;--room-type-art-text:#a83238;--room-type-art-icon-bg:#f2d8d4;--room-type-computer-bg:#f5f2ec;--room-type-computer-text:#5c564d;--room-type-computer-icon-bg:#ede9e0}html[data-theme=champagne]{--primary:#80001e;--primary-dark:#5c0015;--primary-light:#a30026;--primary-50:#fef2f4;--primary-100:#fce4e9;--primary-200:#f5b8c5;--primary-300:#e8899c;--secondary:#d4a574;--secondary-light:#e2c4a0;--secondary-50:#fdf8f3;--secondary-100:#f9ede0;--accent:#fed6b8;--accent-light:#fee8d6;--danger:#b91c1c;--danger-50:#fef2f2;--danger-light:#fee2e2;--danger-200:#fecaca;--danger-text:#dc2626;--danger-dark:#7f1d1d;--warning:#d97706;--warning-50:#fffbeb;--warning-light:#fef3c7;--warning-text:#b45309;--warning-dark:#78350f;--success-light:#d1fae5;--success-50:#ecfdf5;--success-200:#a7f3d0;--success-text:#047857;--success-dark:#065f46;--info:#0284c7;--info-50:#f0f9ff;--info-100:#e0f2fe;--info-light:#bae6fd;--info-text:#80001e;--info-dark:#0c4a6e;--status-processing-bg:var(--primary-100);--status-processing-fg:var(--primary-dark);--status-completed-bg:var(--success-light);--status-completed-fg:var(--success-text);--status-warning-bg:var(--warning-light);--status-warning-fg:var(--warning-text);--status-success-fg:var(--success-text);--gray-50:#faf8f6;--gray-100:#f3efe9;--gray-200:#e8e0d6;--gray-300:#d1c5b8;--gray-400:#b5a494;--gray-500:#8c7b6b;--gray-600:#6b5d4f;--gray-700:#4a3f34;--gray-800:#2e2620;--gray-900:#1a1510;--white:#fff;--black:var(--gray-900);--surface:#faf7f4;--surface-subtle:#f5f0ea;--surface-bright:#fff;--surface-dim:#ede6dd;--bg-primary:#f8f5f1;--bg-secondary:var(--surface-bright);--bg-tertiary:var(--bg-primary);--bg-card:#fffffff0;--bg-hover:var(--primary-50);--text-primary:#1a1510;--text-secondary:#6b5d4f;--text-muted:#b5a494;--border-color:#80001e0f;--border-hover:#80001e33;--glass-bg:#ffffffeb;--glass-border:#80001e0a;--glass-blur:blur(16px);--glass-highlight:#fff9;--shadow-xs:0 1px 2px #1a151008;--shadow-sm:0 2px 4px #1a15100a;--shadow:0 4px 12px #1a15100d;--shadow-md:0 8px 16px #1a15100f;--shadow-lg:0 16px 32px #1a15100f;--shadow-xl:0 24px 48px #1a151014;--shadow-premium:0 12px 24px -6px #1a15100f, 0 4px 8px -4px #1a151008;--shadow-inset:inset 0 2px 4px #1a151008;--shadow-toast:0 12px 32px #1a151014, 0 0 0 1px #fffc;--shadow-drawer:-4px 0 24px #1a15100a;--shadow-dropdown:var(--shadow-md);--shadow-card:var(--shadow);--shadow-glass:0 8px 32px 0 #1a15100a, inset 0 1px 0 #fff9;--shadow-glow:0 4px 12px #80001e1f;--shadow-glow-primary:0 4px 12px #80001e26;--overlay-bg:#1a151080;--overlay-dark-bg:#1a151080;--focus-ring-primary:#80001e26;--focus-ring-danger:#b91c1c26;--focus-ring-warning:#d9770626;--focus-ring-info:#0284c726;--primary-alpha-5:#80001e0d;--primary-alpha-8:#80001e14;--primary-alpha-10:#80001e1a;--primary-alpha-15:#80001e26;--primary-alpha-20:#80001e33;--primary-alpha-30:#80001e4d;--accent-alpha-5:#fed6b80d;--accent-alpha-10:#fed6b81a;--accent-alpha-15:#fed6b826;--accent-alpha-30:#fed6b84d;--success-alpha-5:#0596690d;--success-alpha-10:#0596691a;--success-alpha-15:#05966926;--blue-alpha-10:#d4a5741a;--blue-alpha-15:#d4a57426;--blue-alpha-30:#d4a5744d;--purple-alpha-15:#d4a57426;--warning-alpha-10:#d977061a;--warning-alpha-15:#d9770626;--warning-alpha-30:#d977064d;--danger-alpha-5:#b91c1c0d;--danger-alpha-10:#b91c1c1a;--danger-alpha-15:#b91c1c26;--danger-alpha-20:#b91c1c33;--info-alpha-5:#0284c70d;--info-alpha-10:#0284c71a;--info-alpha-15:#0284c726;--white-alpha-50:#ffffff80;--white-alpha-98:#fffffffa;--slate-alpha-98:#faf8f6fa;--slate-alpha-22:#1a151014;--slate-alpha-8:#1a15100d;--black-alpha-40:#1a151066;--letter-spacing-tight:-.01em;--letter-spacing-body:-.005em;--letter-spacing-normal:0;--letter-spacing-wide:.04em;--line-height-tight:1.15;--line-height-normal:1.45;--line-height-relaxed:1.55;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--radius-xs:6px;--radius-sm:8px;--radius:12px;--radius-md:var(--radius);--radius-lg:16px;--radius-xl:20px;--radius-2xl:24px;--radius-hero:1.5rem;--padding-card:var(--spacing-5);--padding-modal:var(--spacing-6);--padding-section:var(--spacing-5);--padding-page:var(--spacing-5);--btn-radius:999px;--btn-padding-y:var(--spacing-2);--btn-padding-x:var(--spacing-5);--btn-font-weight:600;--btn-font-size:var(--text-sm);--btn-border-width:0px;--btn-letter-spacing:0;--card-radius:var(--radius-xl);--card-padding:var(--spacing-5);--card-border-width:0px;--card-hover-lift:-3px;--card-bg:#ffffffd9;--input-radius:999px;--input-padding-y:var(--spacing-2-5);--input-padding-x:var(--spacing-4);--input-border-width:1px;--table-radius:var(--radius-lg);--table-header-text-transform:none;--table-header-letter-spacing:.02em;--table-cell-padding:12px 16px;--badge-radius:var(--radius-full);--badge-padding:3px 10px;--drawer-header-padding:20px 28px;--drawer-body-padding:20px 28px;--drawer-footer-padding:14px 28px;--page-header-border-style:solid;--page-title-size:var(--text-xl);--page-title-weight:var(--font-weight-semibold);--sidebar-item-radius:var(--radius);--sidebar-item-padding:8px 12px;--app-shell-gutter:12px;--app-shell-sheet-radius:20px;--gradient-primary:linear-gradient(135deg, var(--primary), var(--secondary));--gradient-glass:linear-gradient(135deg, #fffc, #fff6);--gradient-surface:linear-gradient(180deg, #fff, #f8f5f1);--gradient-info:linear-gradient(135deg, var(--info-50), var(--info-100));--gradient-success:linear-gradient(135deg, var(--success-50), var(--success-light));--gradient-warning:linear-gradient(135deg, var(--warning-50), var(--warning-light));--gradient-danger:linear-gradient(135deg, var(--danger-light), var(--danger-200));--period-morning:#d97706;--period-evening:#80001e;--balance-gradient-end:var(--secondary);--subject-chinese-bg:linear-gradient(135deg, #fef2f4 0%, #fce4e9 100%);--subject-chinese-border:#e8899c;--subject-math-bg:linear-gradient(135deg, #fdf8f3 0%, #f9ede0 100%);--subject-math-border:#d4a574;--subject-english-bg:linear-gradient(135deg, #fffbf7 0%, #fef3ea 100%);--subject-english-border:#e2c4a0;--subject-physics-bg:linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 100%);--subject-physics-border:#7dd3fc;--subject-chemistry-bg:linear-gradient(135deg, #f5f0ea 0%, #ede6dd 100%);--subject-chemistry-border:#c9b99a;--subject-biology-bg:linear-gradient(135deg, #ecfdf5 0%, #d1fae5 100%);--subject-biology-border:#6ee7b7;--subject-history-bg:linear-gradient(135deg, #fffbeb 0%, #fef3c7 100%);--subject-history-border:#fcd34d;--subject-geography-bg:linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 100%);--subject-geography-border:#93c5fd;--subject-politics-bg:linear-gradient(135deg, #fef2f4 0%, #f5b8c5 100%);--subject-politics-border:#e8899c;--subject-pe-bg:linear-gradient(135deg, #fefce8 0%, #fef9c3 100%);--subject-pe-border:#fde047;--subject-music-bg:linear-gradient(135deg, #faf5ff 0%, #f3e8ff 100%);--subject-music-border:#c084fc;--subject-art-bg:linear-gradient(135deg, #fff7ed 0%, #ffedd5 100%);--subject-art-border:#fdba74;--subject-it-bg:linear-gradient(135deg, #f0fdfa 0%, #ccfbf1 100%);--subject-it-border:#5eead4;--subject-other-bg:linear-gradient(135deg, #faf8f6 0%, #f3efe9 100%);--subject-other-border:#d1c5b8;--app-shell-chrome-bg:#f3efe9;--app-shell-sheet-bg:#fff;--app-shell-sheet-border:#80001e0a;--app-shell-sheet-shadow:0 4px 24px #1a15100f;--building-1-bg:linear-gradient(135deg, #c4364d 0%, #80001e 100%);--building-1-shadow:0 8px 24px #80001e40;--building-1-light:#fef2f4;--building-1-text:#80001e;--building-2-bg:linear-gradient(135deg, #e8c4a0 0%, #d4a574 100%);--building-2-shadow:0 8px 24px #d4a57440;--building-2-light:#fdf8f3;--building-2-text:#8b6914;--building-3-bg:linear-gradient(135deg, #fee8d6 0%, #fed6b8 100%);--building-3-shadow:0 8px 24px #fed6b84d;--building-3-light:#fffbf7;--building-3-text:#b8860b;--building-4-bg:linear-gradient(135deg, #d4a574 0%, #b8860b 100%);--building-4-shadow:0 8px 24px #b8860b40;--building-4-light:#fdf8f3;--building-4-text:#92400e;--building-5-bg:linear-gradient(135deg, #c9a0dc 0%, #a370b0 100%);--building-5-shadow:0 8px 24px #a370b040;--building-5-light:#faf5ff;--building-5-text:#7e22ce;--building-6-bg:linear-gradient(135deg, #e8a090 0%, #c46450 100%);--building-6-shadow:0 8px 24px #c4645040;--building-6-light:#fff5f2;--building-6-text:#9a3412;--room-type-normal-bg:#fef2f4;--room-type-normal-text:#80001e;--room-type-normal-icon-bg:#fce4e9;--room-type-multimedia-bg:#faf5ff;--room-type-multimedia-text:#7e22ce;--room-type-multimedia-icon-bg:#f3e8ff;--room-type-lab-bg:#ecfdf5;--room-type-lab-text:#047857;--room-type-lab-icon-bg:#d1fae5;--room-type-music-bg:#fffbf7;--room-type-music-text:#b8860b;--room-type-music-icon-bg:#fef3ea;--room-type-art-bg:#fff7ed;--room-type-art-text:#9a3412;--room-type-art-icon-bg:#ffedd5;--room-type-computer-bg:#f0f9ff;--room-type-computer-text:#0369a1;--room-type-computer-icon-bg:#e0f2fe}html[data-theme=ocean]{--primary:#2563eb;--primary-dark:#1d4ed8;--primary-light:#60a5fa;--primary-50:#eff6ff;--primary-100:#dbeafe;--primary-200:#bfdbfe;--primary-300:#93c5fd;--secondary:#0d9488;--secondary-light:#5eead4;--secondary-50:#f0fdfa;--secondary-100:#ccfbf1;--accent:#06b6d4;--accent-light:#67e8f9;--danger:#ef4444;--danger-50:#fef2f2;--danger-light:#fee2e2;--danger-200:#fecaca;--danger-text:#dc2626;--danger-dark:#991b1b;--warning:#f59e0b;--warning-50:#fffbeb;--warning-light:#fef3c7;--warning-text:#d97706;--warning-dark:#78350f;--success-light:#d1fae5;--success-50:#ecfdf5;--success-200:#bbf7d0;--success-text:#059669;--success-dark:#047857;--info:#0ea5e9;--info-50:#f0f9ff;--info-100:#e0f2fe;--info-light:#e0f2fe;--info-text:#0284c7;--info-dark:#0c4a6e;--gray-50:#f8fafc;--gray-100:#f1f5f9;--gray-200:#e2e8f0;--gray-300:#cbd5e1;--gray-400:#94a3b8;--gray-500:#64748b;--gray-600:#475569;--gray-700:#334155;--gray-800:#1e293b;--gray-900:#0f172a;--white:#fff;--black:var(--gray-900);--surface:#f8fafc;--surface-subtle:#f1f5f9;--surface-bright:#fff;--surface-dim:#e2e8f0;--bg-primary:#f1f5f9;--bg-secondary:var(--surface-bright);--bg-tertiary:var(--bg-primary);--bg-card:#fffffff0;--bg-hover:var(--primary-50);--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#94a3b8;--border-color:#0000000f;--border-hover:#2563eb40;--glass-bg:#ffffffeb;--glass-border:#0000000f;--glass-blur:blur(16px);--glass-highlight:#fff9;--shadow-xs:0 1px 2px #2563eb08;--shadow-sm:0 2px 4px #2563eb0a;--shadow:0 4px 12px #2563eb0d;--shadow-md:0 8px 16px #2563eb0f;--shadow-lg:0 16px 32px #2563eb0f;--shadow-xl:0 24px 48px #2563eb14;--shadow-premium:0 12px 24px -6px #2563eb0f, 0 4px 8px -4px #00000008;--shadow-inset:inset 0 2px 4px #2563eb08;--shadow-toast:0 12px 32px #2563eb14, 0 0 0 1px #fffc;--shadow-drawer:-4px 0 24px #2563eb0a;--shadow-glass:0 8px 32px 0 #2563eb0a, inset 0 1px 0 #fff9;--shadow-glow:0 4px 12px #2563eb1f;--shadow-glow-primary:0 4px 12px #2563eb26;--overlay-bg:#0f172a80;--focus-ring-primary:#2563eb26;--focus-ring-danger:#ef444426;--focus-ring-warning:#fbbf2426;--focus-ring-info:#0ea5e926;--primary-alpha-5:#2563eb0d;--primary-alpha-8:#2563eb14;--primary-alpha-10:#2563eb1a;--primary-alpha-15:#2563eb26;--primary-alpha-20:#2563eb33;--primary-alpha-30:#2563eb4d;--accent-alpha-5:#06b6d40d;--accent-alpha-10:#06b6d41a;--accent-alpha-15:#06b6d426;--accent-alpha-30:#06b6d44d;--blue-alpha-10:#2563eb1a;--blue-alpha-15:#2563eb26;--blue-alpha-30:#2563eb4d;--info-alpha-5:#0ea5e90d;--info-alpha-10:#0ea5e91a;--info-alpha-15:#0ea5e926;--white-alpha-50:#ffffff80;--white-alpha-98:#fffffffa;--slate-alpha-98:#f8fafcfa;--radius-xs:4px;--radius-sm:6px;--radius:8px;--radius-md:8px;--radius-lg:10px;--radius-xl:14px;--radius-2xl:18px;--radius-full:9999px;--btn-radius:8px;--input-radius:8px;--card-radius:var(--radius-xl);--badge-radius:var(--radius-full);--table-radius:var(--radius-lg);--btn-padding-y:var(--spacing-2-5);--btn-padding-x:var(--spacing-5);--btn-font-weight:600;--btn-font-size:var(--text-sm);--card-hover-lift:-2px;--page-header-border-style:solid;--app-shell-chrome-bg:#f1f5f9;--app-shell-sheet-bg:#fff;--app-shell-sheet-border:#0000000f;--app-shell-sheet-shadow:0 4px 24px #2563eb0f;--gradient-primary:linear-gradient(135deg, var(--primary), var(--secondary));--gradient-surface:linear-gradient(180deg, #fff, #f1f5f9);--period-morning:#d97706;--period-evening:#2563eb}html[data-theme=sunset]{--primary:#ea580c;--primary-dark:#c2410c;--primary-light:#fb923c;--primary-50:#fff7ed;--primary-100:#ffedd5;--primary-200:#fed7aa;--primary-300:#fdba74;--secondary:#d97706;--secondary-light:#fcd34d;--secondary-50:#fffbeb;--secondary-100:#fef3c7;--accent:#f43f5e;--accent-light:#fda4af;--danger:#dc2626;--danger-50:#fef2f2;--danger-light:#fee2e2;--danger-200:#fecaca;--danger-text:#b91c1c;--danger-dark:#7f1d1d;--warning:#d97706;--warning-50:#fffbeb;--warning-light:#fef3c7;--warning-text:#b45309;--warning-dark:#78350f;--success-light:#d1fae5;--success-50:#ecfdf5;--success-200:#bbf7d0;--success-text:#059669;--success-dark:#047857;--info:#0891b2;--info-50:#ecfeff;--info-100:#cffafe;--info-light:#cffafe;--info-text:#0e7490;--info-dark:#155e75;--gray-50:#fafaf9;--gray-100:#f5f0eb;--gray-200:#e7ddd3;--gray-300:#d6c9bc;--gray-400:#a89b8c;--gray-500:#78716c;--gray-600:#57534e;--gray-700:#44403c;--gray-800:#292524;--gray-900:#1c1917;--white:#fffdfb;--black:var(--gray-900);--surface:#fffdfb;--surface-subtle:#faf7f4;--surface-bright:#fffdfb;--surface-dim:#f0ebe5;--bg-primary:#faf7f4;--bg-secondary:var(--surface-bright);--bg-tertiary:var(--bg-primary);--bg-card:#fffdfbf0;--bg-hover:var(--primary-50);--text-primary:#1c1917;--text-secondary:#57534e;--text-muted:#a89b8c;--border-color:#78716c14;--border-hover:#ea580c40;--glass-bg:#fffdfbeb;--glass-border:#78716c0f;--glass-highlight:#fffdfb99;--shadow-xs:0 1px 2px #ea580c08;--shadow-sm:0 2px 4px #ea580c0a;--shadow:0 4px 12px #ea580c0d;--shadow-md:0 8px 16px #ea580c0f;--shadow-lg:0 16px 32px #ea580c0f;--shadow-xl:0 24px 48px #ea580c14;--shadow-premium:0 12px 24px -6px #ea580c0f, 0 4px 8px -4px #00000008;--shadow-inset:inset 0 2px 4px #ea580c08;--shadow-toast:0 12px 32px #ea580c14, 0 0 0 1px #fffdfbcc;--shadow-drawer:-4px 0 24px #ea580c0a;--shadow-glass:0 8px 32px 0 #ea580c0a, inset 0 1px 0 #fffdfb99;--shadow-glow:0 4px 12px #ea580c1f;--shadow-glow-primary:0 4px 12px #ea580c26;--focus-ring-primary:#ea580c26;--focus-ring-danger:#dc262626;--focus-ring-warning:#d9770626;--focus-ring-info:#0891b226;--primary-alpha-5:#ea580c0d;--primary-alpha-8:#ea580c14;--primary-alpha-10:#ea580c1a;--primary-alpha-15:#ea580c26;--primary-alpha-20:#ea580c33;--primary-alpha-30:#ea580c4d;--accent-alpha-5:#f43f5e0d;--accent-alpha-10:#f43f5e1a;--accent-alpha-15:#f43f5e26;--accent-alpha-30:#f43f5e4d;--blue-alpha-10:#ea580c1a;--blue-alpha-15:#ea580c26;--blue-alpha-30:#ea580c4d;--info-alpha-5:#0891b20d;--info-alpha-10:#0891b21a;--info-alpha-15:#0891b226;--white-alpha-50:#fffdfb80;--white-alpha-98:#fffdfbfa;--slate-alpha-98:#faf7f4fa;--radius-xs:5px;--radius-sm:8px;--radius:10px;--radius-md:10px;--radius-lg:14px;--radius-xl:18px;--radius-2xl:24px;--radius-full:9999px;--btn-radius:12px;--input-radius:10px;--card-radius:var(--radius-xl);--badge-radius:var(--radius-full);--table-radius:var(--radius-lg);--btn-padding-y:var(--spacing-2-5);--btn-padding-x:var(--spacing-5);--btn-font-weight:600;--btn-font-size:var(--text-sm);--card-hover-lift:-3px;--page-header-border-style:solid;--app-shell-chrome-bg:#faf7f4;--app-shell-sheet-bg:#fffdfb;--app-shell-sheet-border:#78716c0f;--app-shell-sheet-shadow:0 4px 24px #ea580c0f;--gradient-primary:linear-gradient(135deg, var(--primary), var(--secondary));--gradient-surface:linear-gradient(180deg, #fffdfb, #faf7f4);--period-morning:#ea580c;--period-evening:#7c2d12}html[data-theme=forest]{--primary:#059669;--primary-dark:#047857;--primary-light:#34d399;--primary-50:#ecfdf5;--primary-100:#d1fae5;--primary-200:#a7f3d0;--primary-300:#6ee7b7;--secondary:#0d9488;--secondary-light:#5eead4;--secondary-50:#f0fdfa;--secondary-100:#ccfbf1;--accent:#d97706;--accent-light:#fcd34d;--danger:#dc2626;--danger-50:#fef2f2;--danger-light:#fee2e2;--danger-200:#fecaca;--danger-text:#b91c1c;--danger-dark:#7f1d1d;--warning:#d97706;--warning-50:#fffbeb;--warning-light:#fef3c7;--warning-text:#b45309;--warning-dark:#78350f;--success-light:#a7f3d0;--success-50:#ecfdf5;--success-200:#6ee7b7;--success-text:#047857;--success-dark:#065f46;--info:#0891b2;--info-50:#ecfeff;--info-100:#cffafe;--info-light:#cffafe;--info-text:#0e7490;--info-dark:#155e75;--gray-50:#f7faf8;--gray-100:#edf2ef;--gray-200:#dee6e0;--gray-300:#c5d0c8;--gray-400:#94a398;--gray-500:#6b7a6f;--gray-600:#4a5a4e;--gray-700:#354038;--gray-800:#1f2a22;--gray-900:#111a14;--white:#fcfffd;--black:var(--gray-900);--surface:#fcfffd;--surface-subtle:#f4f8f5;--surface-bright:#fcfffd;--surface-dim:#e8eee9;--bg-primary:#f4f8f5;--bg-secondary:var(--surface-bright);--bg-tertiary:var(--bg-primary);--bg-card:#fcfffdf0;--bg-hover:var(--primary-50);--text-primary:#111a14;--text-secondary:#4a5a4e;--text-muted:#94a398;--border-color:#3540380f;--border-hover:#05966940;--glass-bg:#fcfffdeb;--glass-border:#3540380f;--glass-highlight:#fcfffd99;--shadow-xs:0 1px 2px #05966908;--shadow-sm:0 2px 4px #0596690a;--shadow:0 4px 12px #0596690d;--shadow-md:0 8px 16px #0596690f;--shadow-lg:0 16px 32px #0596690f;--shadow-xl:0 24px 48px #05966914;--shadow-premium:0 12px 24px -6px #0596690f, 0 4px 8px -4px #00000008;--shadow-inset:inset 0 2px 4px #05966908;--shadow-toast:0 12px 32px #05966914, 0 0 0 1px #fcfffdcc;--shadow-drawer:-4px 0 24px #0596690a;--shadow-glass:0 8px 32px 0 #0596690a, inset 0 1px 0 #fcfffd99;--shadow-glow:0 4px 12px #0596691f;--shadow-glow-primary:0 4px 12px #05966926;--focus-ring-primary:#05966926;--focus-ring-danger:#dc262626;--focus-ring-warning:#d9770626;--focus-ring-info:#0891b226;--primary-alpha-5:#0596690d;--primary-alpha-8:#05966914;--primary-alpha-10:#0596691a;--primary-alpha-15:#05966926;--primary-alpha-20:#05966933;--primary-alpha-30:#0596694d;--accent-alpha-5:#d977060d;--accent-alpha-10:#d977061a;--accent-alpha-15:#d9770626;--accent-alpha-30:#d977064d;--blue-alpha-10:#0596691a;--blue-alpha-15:#05966926;--blue-alpha-30:#0596694d;--info-alpha-5:#0891b20d;--info-alpha-10:#0891b21a;--info-alpha-15:#0891b226;--white-alpha-50:#fcfffd80;--white-alpha-98:#fcfffdfa;--slate-alpha-98:#f4f8f5fa;--radius-xs:4px;--radius-sm:7px;--radius:9px;--radius-md:9px;--radius-lg:13px;--radius-xl:17px;--radius-2xl:22px;--radius-full:9999px;--btn-radius:10px;--input-radius:9px;--card-radius:var(--radius-xl);--badge-radius:var(--radius-full);--table-radius:var(--radius-lg);--btn-padding-y:var(--spacing-2-5);--btn-padding-x:var(--spacing-5);--btn-font-weight:600;--btn-font-size:var(--text-sm);--card-hover-lift:-2px;--page-header-border-style:solid;--app-shell-chrome-bg:#f4f8f5;--app-shell-sheet-bg:#fcfffd;--app-shell-sheet-border:#3540380f;--app-shell-sheet-shadow:0 4px 24px #0596690f;--gradient-primary:linear-gradient(135deg, var(--primary), var(--secondary));--gradient-surface:linear-gradient(180deg, #fcfffd, #f4f8f5);--period-morning:#d97706;--period-evening:#059669}.text-center{text-align:center}.text-success{color:var(--success-text,#059669)}.text-danger{color:var(--danger-text,#dc2626)}.text-muted{color:var(--gray-400,#94a3b8)}.flex-1{flex:1}.hidden{display:none}.mt-3{margin-top:var(--spacing-3,12px)}.mt-4{margin-top:var(--spacing-4,16px)}.mb-3{margin-bottom:var(--spacing-3,12px)}.mb-4{margin-bottom:var(--spacing-4,16px)}.mt-12{margin-top:var(--spacing-3)}.mb-12{margin-bottom:var(--spacing-3)}.mb-20{margin-bottom:var(--spacing-5)}.gap-sm{gap:var(--spacing-2,8px)}.gap-md{gap:var(--spacing-3,12px)}.gap-lg{gap:var(--spacing-4,16px)}.layer-label{color:var(--gray-500);margin-bottom:12px;font-size:.85rem}.back-btn{background:var(--white-alpha-50);border:1px solid var(--white-alpha-50);color:var(--white);border-radius:var(--radius);cursor:pointer;z-index:10;align-items:center;gap:8px;padding:10px 20px;display:flex;position:absolute;top:24px;left:24px}.back-btn:hover{background:var(--glass-bg)}.bg-dark-gradient{background:linear-gradient(180deg, var(--black) 0%, var(--gray-900) 100%)}.desc-text{color:var(--gray-500);font-size:.85rem}.desc-text-light{color:var(--gray-400)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-primary);font-size:var(--text-base);line-height:var(--line-height-normal);color:var(--text-primary);background:var(--bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;letter-spacing:var(--letter-spacing-body);overflow-x:hidden}a{color:var(--secondary);transition:all var(--transition-fast);font-weight:var(--font-weight-medium);text-decoration:none}a:hover{color:var(--primary);opacity:.8}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);color:var(--text-primary);letter-spacing:var(--letter-spacing-tight)}h1{font-size:var(--text-4xl);margin-bottom:var(--spacing-6)}h2{font-size:var(--text-3xl);margin-bottom:var(--spacing-4)}h3{font-size:var(--text-2xl);margin-bottom:var(--spacing-3)}h4{font-size:var(--text-xl)}h5{font-size:var(--text-lg)}h6{font-size:var(--text-base)}p{color:var(--text-secondary);margin-bottom:var(--spacing-4);line-height:var(--line-height-relaxed)}input,select,textarea,button{font-family:inherit;font-size:inherit;outline:none}button{cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none}html.theme-transition,html.theme-transition *,html.theme-transition :before,html.theme-transition :after{transition:color .35s cubic-bezier(.4,0,.2,1),background-color .35s cubic-bezier(.4,0,.2,1),border-color .35s cubic-bezier(.4,0,.2,1),box-shadow .35s cubic-bezier(.4,0,.2,1),fill .35s cubic-bezier(.4,0,.2,1),stroke .35s cubic-bezier(.4,0,.2,1)!important}.glass,.glass-interactive{background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);box-shadow:var(--shadow-glass);transition:all var(--transition-normal)}.glass-interactive{cursor:pointer}.glass-interactive:hover{background:var(--glass-highlight);border-color:var(--primary-alpha-15);box-shadow:var(--shadow-md);transform:translateY(-1px)}.glass-interactive:active{transform:translateY(0)scale(.99)}.surface-layer{background-color:var(--surface);padding:var(--spacing-6);border-radius:var(--radius-lg)}.no-border{border:none!important}.section-spacer{margin-block:var(--spacing-16)}:focus-visible{outline:2px solid var(--primary-200);outline-offset:2px}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--gray-300);border-radius:var(--radius-xl);transition:background var(--transition-fast);background-clip:padding-box;border:2px solid #0000}::-webkit-scrollbar-thumb:hover{background:var(--gray-400);background-clip:padding-box}::selection{background:var(--primary-100);color:var(--primary-dark)}.animate-fadeIn{animation:.4s cubic-bezier(.16,1,.3,1) both fadeIn}.animate-slideUp{animation:.5s cubic-bezier(.16,1,.3,1) both slideUp}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.animate-fadeIn,.animate-slideUp{opacity:1;animation:none;transform:none}}.action-btns{gap:var(--spacing-2);justify-content:center;align-items:center;display:flex}.card{background:var(--card-bg);border:var(--card-border-width) solid var(--border-color);border-radius:var(--card-radius);padding:var(--card-padding);transition:border-color var(--transition-fast), box-shadow var(--transition-fast), transform var(--transition-fast);box-shadow:var(--shadow-sm)}.card:hover{border-color:var(--primary-200);box-shadow:var(--shadow-md);transform:translateY(var(--card-hover-lift))}.card-header{margin-bottom:var(--spacing-4);justify-content:space-between;align-items:flex-start;gap:var(--spacing-3);display:flex}.card-title{font-size:1rem;font-weight:var(--font-weight-semibold);color:var(--text-primary);margin:0}.card-subtitle{color:var(--text-muted);margin-top:var(--spacing-1);font-size:.875rem}.card-body{color:var(--text-secondary);font-size:.875rem}.card-footer{justify-content:flex-end;gap:var(--spacing-2);margin-top:var(--spacing-4);padding-top:var(--spacing-4);border-top:1px solid var(--border-color);display:flex}.card-clickable{cursor:pointer}.card-clickable:hover{transform:translateY(calc(var(--card-hover-lift) - 2px));box-shadow:var(--shadow-xl)}.card-clickable:active{transform:translateY(0)}.schedule-task-card{background:var(--card-bg);border:var(--card-border-width) solid var(--border-color);border-radius:var(--card-radius);padding:var(--card-padding)}.schedule-task-card:hover{border-color:var(--primary-200);box-shadow:var(--shadow-lg), var(--shadow-glow-primary)}.task-header{margin-bottom:var(--spacing-4);justify-content:space-between;align-items:flex-start;gap:var(--spacing-3);display:flex}.task-info{align-items:center;gap:var(--spacing-3);min-width:0;display:flex}.task-icon{background:var(--primary-50);border-radius:var(--radius);flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.task-icon svg{width:20px;height:20px;color:var(--primary)}.task-name{font-size:1rem;font-weight:var(--font-weight-semibold);color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.task-actions{gap:var(--spacing-1);flex-shrink:0;display:flex}.task-meta{gap:var(--spacing-4) var(--gap-lg);margin-bottom:var(--spacing-4);flex-wrap:wrap;display:flex}.meta-item{color:var(--text-muted);align-items:center;gap:6px;font-size:.8125rem;display:flex}.meta-item svg{width:16px;height:16px;color:var(--text-muted);flex-shrink:0}.task-progress{gap:var(--spacing-2);flex-direction:column;display:flex}.progress-bar{background:var(--gray-200);border-radius:3px;height:6px;overflow:hidden}.progress-fill{background:var(--accent);height:100%;transition:width var(--transition-slow);border-radius:3px}.progress-fill.processing{background:linear-gradient(90deg, var(--primary), var(--primary-light));animation:2s ease-in-out infinite progress-pulse}.progress-fill.draft{background:var(--gray-400)}.progress-fill.warning{background:var(--warning)}.progress-fill.error{background:var(--danger)}@keyframes progress-pulse{0%,to{opacity:1}50%{opacity:.7}}.progress-text{color:var(--text-muted);justify-content:space-between;font-size:.75rem;display:flex}.confirm-card{background:var(--card-bg);border:var(--card-border-width) solid var(--border-color);border-radius:var(--card-radius);overflow:hidden}.confirm-card-header{padding:14px var(--spacing-4);background:var(--gray-50);border-bottom:1px solid var(--border-color);align-items:center;gap:10px;display:flex}.confirm-card-header svg{width:18px;height:18px;color:var(--text-muted)}.confirm-card-header h4{font-size:.875rem;font-weight:var(--font-weight-semibold);color:var(--text-primary);margin:0}.confirm-card-body{padding:var(--spacing-4)}.confirm-row{padding:var(--spacing-2) 0;border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;display:flex}.confirm-row:last-child{border-bottom:none}.confirm-label{color:var(--text-muted);font-size:.8125rem}.confirm-value{font-size:.8125rem;font-weight:var(--font-weight-medium);color:var(--text-primary)}.confirm-summary{gap:var(--gap-md);margin-bottom:var(--spacing-6);grid-template-columns:repeat(2,1fr);display:grid}.confirm-actions{justify-content:flex-end;gap:var(--spacing-3);padding:var(--spacing-4);background:var(--gray-50);border-radius:var(--radius);display:flex}.stat-card{gap:var(--spacing-3);flex-direction:column;display:flex}.stat-card-icon{background:var(--primary-50);border-radius:var(--radius-md);justify-content:center;align-items:center;width:48px;height:48px;display:flex}.stat-card-icon svg{width:24px;height:24px;color:var(--primary)}.stat-card-value{font-size:1.75rem;font-weight:var(--font-weight-bold);color:var(--text-primary);font-family:var(--font-mono)}.stat-card-label{color:var(--text-muted);font-size:.875rem}.stat-card-trend{align-items:center;gap:var(--spacing-1);font-size:.75rem;display:flex}.stat-card-trend.up{color:var(--status-success-fg)}.stat-card-trend.down{color:var(--danger)}.drawer-body{padding:var(--drawer-body-padding);flex:1;overflow-y:auto}.drawer-footer{padding:var(--drawer-footer-padding);border-top:1px solid var(--border-color);justify-content:flex-end;gap:var(--spacing-3);flex-shrink:0;display:flex}.form-group{margin-bottom:var(--spacing-5)}.form-label{font-size:var(--text-sm);font-weight:var(--font-weight-semibold);margin-bottom:var(--spacing-2);color:var(--text-primary);display:block}.form-label.required:after{content:" *";color:var(--danger)}.form-hint{font-size:var(--text-xs);color:var(--text-muted);margin-top:var(--spacing-2)}.form-hint--success{color:var(--success-text);background:var(--success-50);padding:var(--spacing-1) var(--spacing-3);border-radius:var(--radius-md);align-items:center;gap:var(--spacing-1);display:inline-flex}.form-hint--warning{color:var(--warning-text);background:var(--warning-50);padding:var(--spacing-1) var(--spacing-3);border-radius:var(--radius-md);align-items:center;gap:var(--spacing-1);display:inline-flex}.form-error{font-size:var(--text-xs);color:var(--danger);margin-top:var(--spacing-2);align-items:center;gap:var(--spacing-1);display:flex}.form-error svg{width:14px;height:14px}.form-section{margin-bottom:var(--spacing-8);padding:var(--spacing-6);background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius-xl);box-shadow:var(--shadow-xs)}.form-section-title{font-size:var(--text-base);font-weight:var(--font-weight-extrabold);color:var(--text-primary);margin:0 0 var(--spacing-2) 0;letter-spacing:-.01em;padding-left:var(--spacing-3);border-left:3px solid var(--primary)}.form-section-desc{font-size:var(--text-sm);color:var(--text-secondary);margin:var(--spacing-1) 0 var(--spacing-5) 0;line-height:1.6}.form-row{gap:var(--gap-md);grid-template-columns:repeat(2,1fr);display:grid}@media (width<=640px){.form-row{grid-template-columns:1fr}.form-section{padding:var(--spacing-4)}}.form-summary{gap:var(--gap-lg);padding:var(--spacing-5);background:linear-gradient(180deg, var(--gray-50) 0%, var(--white) 100%);border-radius:var(--radius-lg);border:1px solid var(--gray-200);margin-top:var(--spacing-4);flex-wrap:wrap;display:flex}.summary-item{gap:var(--spacing-1);flex-direction:column;display:flex}.summary-label{font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;font-weight:var(--font-weight-bold);letter-spacing:.04em}.summary-value{font-size:var(--text-lg);font-weight:var(--font-weight-extrabold);color:var(--text-primary);font-family:var(--font-mono)}.form-textarea{width:100%;padding:var(--input-padding-y) var(--input-padding-x);background:var(--surface-bright);border:var(--input-border-width) solid var(--border-color);border-radius:var(--input-radius);color:var(--text-primary);font-size:var(--text-sm);line-height:var(--line-height-normal);transition:all var(--transition-fast) cubic-bezier(.16, 1, .3, 1);resize:vertical;outline:none;min-height:100px}.form-textarea:hover{border-color:var(--primary-200)}.form-textarea:focus{background:var(--surface-bright);border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-100), var(--shadow-glow)}.form-textarea::placeholder{color:var(--text-muted)}.form-textarea:disabled{opacity:.6;cursor:not-allowed;background:var(--surface-dim)}.form-textarea.error{border-color:var(--danger-text)}.form-textarea.error:focus{box-shadow:0 0 0 4px var(--danger-50)}.number-input-group{align-items:center;display:flex}.number-input-group .number-btn{background:var(--surface);border:1px solid var(--border-color);width:36px;height:36px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);justify-content:center;align-items:center;display:flex}.number-input-group .number-btn:first-child{border-radius:var(--radius-md) 0 0 var(--radius-md)}.number-input-group .number-btn:last-child{border-radius:0 var(--radius-md) var(--radius-md) 0}.number-input-group .number-btn:hover{background:var(--surface-dim);color:var(--primary)}.number-input-group .number-btn:focus-visible{z-index:1;outline:2px solid var(--primary)}.number-input-group .number-input{background:var(--surface);border:1px solid var(--border-color);text-align:center;width:50px;height:36px;font-size:var(--text-sm);font-weight:var(--font-weight-semibold);color:var(--text-primary);font-family:var(--font-mono);border-left:none;border-right:none}.number-input-group .number-input:focus{outline:none}.checkbox-label{align-items:center;gap:var(--spacing-3);color:var(--text-secondary);cursor:pointer;font-size:.875rem;display:flex}.checkbox-label input[type=checkbox]{width:18px;height:18px;accent-color:var(--primary);cursor:pointer}.checkbox-group{gap:var(--spacing-3);flex-wrap:wrap;display:flex}.checkbox-item{align-items:center;gap:var(--spacing-2);padding:10px var(--spacing-4);background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius);cursor:pointer;transition:all var(--transition-fast);color:var(--text-secondary);font-size:.875rem;display:inline-flex}.checkbox-item:hover{border-color:var(--primary);background:var(--bg-hover)}.checkbox-item:has(input:checked){border-color:var(--primary);background:var(--blue-alpha-10);color:var(--primary)}.checkbox-item input{width:16px;height:16px;accent-color:var(--primary)}.radio-group{gap:var(--spacing-3);flex-wrap:wrap;display:flex}.radio-item{align-items:center;gap:var(--spacing-2);padding:10px var(--spacing-4);background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius);cursor:pointer;transition:all var(--transition-fast);color:var(--text-secondary);font-size:.875rem;display:inline-flex}.radio-item:hover{border-color:var(--primary)}.radio-item:has(input:checked){border-color:var(--primary);background:var(--blue-alpha-10);color:var(--primary)}.radio-item input{width:16px;height:16px;accent-color:var(--primary)}.step-indicator{padding:var(--spacing-3) var(--spacing-6);background:linear-gradient(180deg, var(--gray-50) 0%, var(--white) 100%);border-bottom:1px solid var(--gray-200);flex-shrink:0;justify-content:center;align-items:center;display:flex;position:relative;overflow-x:auto}.step-indicator:after{content:"";background:linear-gradient(90deg, transparent, var(--primary-200), transparent);opacity:.5;height:2px;position:absolute;bottom:-1px;left:0;right:0}.step-indicator::-webkit-scrollbar{width:6px;height:6px}.step-indicator::-webkit-scrollbar-track{background:0 0}.step-indicator::-webkit-scrollbar-thumb{background:var(--primary-100);border-radius:var(--radius-xl);background-clip:padding-box;border:2px solid #0000;transition:background .3s}.step-indicator::-webkit-scrollbar-thumb:hover{background:var(--primary-300);background-clip:padding-box}.step{align-items:center;gap:var(--spacing-3);z-index:1;display:flex;position:relative}.step .step-number{border-radius:var(--radius-full);background:var(--white);border:2px solid var(--gray-300);width:28px;height:28px;color:var(--text-muted);font-size:var(--text-xs);font-weight:var(--font-weight-bold);box-shadow:var(--shadow-xs);justify-content:center;align-items:center;transition:all .3s cubic-bezier(.16,1,.3,1);display:flex}.step .step-label{font-size:var(--text-xs);font-weight:var(--font-weight-semibold);color:var(--text-muted);white-space:nowrap;letter-spacing:.02em;transition:all .3s}.step.completed:not(.active) .step-number{background:var(--secondary-50);border-color:var(--secondary);color:var(--secondary);box-shadow:0 0 0 3px var(--primary-alpha-8)}.step.completed:not(.active) .step-label{color:var(--text-primary);font-weight:var(--font-weight-bold)}.step.active .step-number{background:linear-gradient(135deg, var(--primary) 0%, var(--primary-dark) 100%);color:var(--white);box-shadow:var(--shadow-glow-primary), 0 0 0 4px var(--primary-100);border-color:#0000;transform:scale(1.08)}.step.active .step-label{color:var(--primary-dark);font-weight:var(--font-weight-extrabold)}.step.clickable{cursor:pointer}.step.clickable:focus-visible{outline:2px solid var(--primary);outline-offset:4px;border-radius:var(--radius-lg)}.step-line{background:var(--gray-200);min-width:40px;max-width:80px;height:2px;margin:0 var(--spacing-2);border-radius:var(--radius-full);flex:1;transition:all .4s}.step-line.completed{background:linear-gradient(90deg, var(--secondary) 0%, var(--secondary-light) 100%);box-shadow:var(--shadow-glow)}.step-content{display:none}.step-content.active{animation:.4s cubic-bezier(.16,1,.3,1) stepSlideUp;display:block}@keyframes stepSlideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.data-table-container{background:var(--card-bg);backdrop-filter:blur(12px);border:var(--card-border-width) solid var(--border-color);border-radius:var(--table-radius);flex:1;min-height:0;overflow:hidden auto}.data-table{border-collapse:collapse;width:100%}.data-table th,.data-table td{vertical-align:middle}.data-table thead th{z-index:1;text-align:left;padding:var(--table-cell-padding);background:var(--bg-tertiary);font-size:.75rem;font-weight:var(--font-weight-semibold);color:var(--text-muted);border-bottom:1px solid var(--border-color);position:sticky;top:0}.data-table td{padding:var(--table-cell-padding);border-bottom:1px solid var(--border-color);color:var(--text-secondary);font-size:.875rem}.data-table tbody tr{transition:background-color var(--transition-fast)}.data-table tbody tr:hover td{background:var(--bg-hover)}.data-table tbody tr:last-child td{border-bottom:none}.course-table-container{background:var(--bg-card);backdrop-filter:blur(12px);border:1px solid var(--border-color);border-radius:var(--radius);overflow:hidden}.course-table{border-collapse:collapse;width:100%}.course-table th,.course-table td{text-align:left;border-bottom:1px solid var(--border-color);padding:12px 16px;font-size:.8125rem}.course-table th{background:var(--bg-tertiary);font-weight:var(--font-weight-medium);color:var(--text-muted)}.course-table tbody tr:hover td{background:var(--bg-hover)}.course-table tr:last-child td{border-bottom:none}.course-name{font-weight:var(--font-weight-medium);color:var(--text-primary)}.class-count{color:var(--text-muted);font-size:.75rem}.class-tags{flex-wrap:wrap;gap:4px;display:flex}.class-tag{background:var(--blue-alpha-15);border:1px solid var(--blue-alpha-30);border-radius:var(--radius-sm);color:var(--primary);align-items:center;padding:2px 8px;font-size:.6875rem;display:inline-flex}.course-tag{background:var(--bg-tertiary);border-radius:var(--radius-sm);color:var(--text-muted);padding:2px 8px;font-size:.75rem}.periods-preview{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius);overflow:hidden}.periods-table{border-collapse:collapse;width:100%}.periods-table th,.periods-table td{text-align:left;border-bottom:1px solid var(--border-color);padding:12px 16px;font-size:.8125rem}.periods-table th{background:var(--bg-tertiary);font-weight:var(--font-weight-medium);color:var(--text-muted)}.periods-table tbody tr:hover td{background:var(--bg-hover)}.periods-table tr:last-child td{border-bottom:none}.time-input{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);transition:all var(--transition-fast);outline:none;padding:8px 12px;font-size:.8125rem}.time-input:focus{border-color:var(--primary)}.period-type{border-radius:var(--radius-sm);font-size:.75rem;font-weight:var(--font-weight-medium);align-items:center;padding:4px 10px;display:inline-flex}.period-type.morning{background:var(--warning-alpha-15);color:var(--period-morning)}.period-type.afternoon{background:var(--blue-alpha-15);color:var(--primary)}.period-type.evening{background:var(--purple-alpha-15);color:var(--period-evening)}.break-row td{padding:8px 16px}.break-label{text-align:center;background:var(--bg-tertiary);border-radius:var(--radius-sm);color:var(--text-muted);padding:6px 12px;font-size:.75rem;display:block}.table-empty{text-align:center;color:var(--text-muted);padding:48px 24px}.table-empty svg{opacity:.5;width:48px;height:48px;margin-bottom:16px}.table-empty-title{font-size:1rem;font-weight:var(--font-weight-medium);color:var(--text-secondary);margin-bottom:4px}.table-empty-desc{font-size:.875rem}.table-loading{text-align:center;padding:48px 24px}.table-loading-spinner{border:3px solid var(--border-color);border-top-color:var(--primary);border-radius:50%;width:32px;height:32px;margin:0 auto 16px;animation:.8s linear infinite spin}.table-loading-text{color:var(--text-muted);font-size:.875rem}@keyframes spin{to{transform:rotate(360deg)}}.dropdown-trigger{align-items:center;gap:var(--spacing-2);padding:10px var(--spacing-3);background:var(--white);border:1px solid var(--border-color);border-radius:var(--radius);cursor:pointer;transition:all var(--transition-fast);user-select:none;display:inline-flex}.dropdown-trigger:hover:not(.dropdown-trigger--disabled){border-color:var(--border-hover)}.dropdown-trigger:focus,.dropdown-trigger.dropdown-trigger--active{border-color:var(--primary);box-shadow:0 0 0 3px var(--blue-alpha-15);outline:none}.dropdown-trigger--disabled{opacity:.5;cursor:not-allowed;background:var(--bg-tertiary)}.dropdown-trigger__label{font-size:.875rem;font-weight:var(--font-weight-medium);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.dropdown-trigger:not(.dropdown-trigger--has-value) .dropdown-trigger__label{color:var(--text-muted)}.dropdown-trigger__badge{background:var(--gray-100);color:var(--gray-600);white-space:nowrap;border-radius:4px;padding:2px 8px;font-size:.75rem}.dropdown-trigger__arrow{color:var(--text-muted);transition:transform var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;margin-left:auto;display:flex}.dropdown-trigger--active .dropdown-trigger__arrow{transform:rotate(180deg)}.dropdown-trigger--sm{gap:var(--spacing-1);padding:6px 10px}.dropdown-trigger--sm .dropdown-trigger__label{font-size:.8125rem}.dropdown-trigger--sm .dropdown-trigger__arrow{font-size:.5rem}.dropdown-trigger--lg{padding:12px 16px}.dropdown-trigger--lg .dropdown-trigger__label{font-size:1rem}.dropdown-trigger--block{width:100%;display:flex}.dropdown-panel{background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:var(--z-dropdown);opacity:0;visibility:hidden;transition:all var(--transition-fast);position:absolute;top:calc(100% + 4px);overflow:hidden;transform:translateY(-8px)}.dropdown-panel--show{opacity:1;visibility:visible;transform:translateY(0)}.dropdown-panel--left{left:0}.dropdown-panel--right{right:0}.dropdown-panel__search{padding:var(--spacing-3);border-bottom:1px solid var(--gray-200)}.dropdown-panel__list{max-height:300px;overflow-y:auto}.dropdown-panel__option{padding:var(--spacing-3) var(--spacing-4);cursor:pointer;transition:background var(--transition-fast);justify-content:space-between;align-items:center;display:flex}.dropdown-panel__option:hover{background:var(--primary-50)}.dropdown-panel__option--selected{background:var(--primary-100)}.dropdown-panel__option-label{font-size:.875rem;font-weight:var(--font-weight-medium);color:var(--text-primary)}.dropdown-panel__option-badge{background:var(--gray-100);color:var(--gray-600);border-radius:4px;padding:2px 8px;font-size:.75rem}.dropdown-panel__option:hover .dropdown-panel__option-badge{background:var(--primary-100);color:var(--primary-dark)}.dropdown-panel__empty{text-align:center;color:var(--text-muted);padding:20px;font-size:.875rem}
