.notification-popover{background:var(--color-paper,#fff);border:1px solid var(--color-line,#e2e8f0);z-index:1000;transform-origin:100% 0;border-radius:14px;flex-direction:column;width:360px;max-width:calc(100vw - 32px);animation:.18s cubic-bezier(.16,1,.3,1) forwards popover-slide-down;display:flex;position:absolute;top:calc(100% + 8px);right:0;overflow:hidden;box-shadow:0 12px 32px -4px #00000029,0 4px 12px -2px #00000014}@keyframes popover-slide-down{0%{opacity:0;transform:translateY(-8px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.notification-popover__header{border-bottom:1px solid var(--color-line,#e2e8f0);background:var(--color-paper-warm,#f8fafc);justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.notification-popover__title-wrap{align-items:center;gap:8px;display:flex}.notification-popover__title-wrap h3{color:var(--color-evergreen-ink,#0f172a);margin:0;font-size:15px;font-weight:700}.notification-popover__badge{color:#fff;background:var(--color-forest,#10b981);border-radius:9999px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:10.5px;font-weight:800;display:inline-flex}.notification-popover__clear-all{color:var(--color-sage-muted,#64748b);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:4px 8px;font-size:12px;font-weight:600;transition:color .15s,background-color .15s}.notification-popover__clear-all:hover{color:var(--color-forest,#10b981);background:var(--color-sage-50,#f1f5f9)}.notification-popover__list{flex-direction:column;gap:6px;max-height:380px;padding:8px;display:flex;overflow-y:auto}.notification-popover__list::-webkit-scrollbar{width:5px}.notification-popover__list::-webkit-scrollbar-thumb{background:var(--color-line-strong,#cbd5e1);border-radius:9999px}.notification-popover__empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:32px 16px;display:flex}.notification-popover__empty-icon{background:var(--color-sage-50,#f1f5f9);width:48px;height:48px;color:var(--color-sage-muted,#94a3b8);border-radius:50%;place-items:center;margin-bottom:10px;display:grid}.notification-popover__empty p{color:var(--color-sage-muted,#64748b);margin:0;font-size:13px;font-weight:600}.notification-popover-item{background:var(--color-paper-warm,#f8fafc);border:1px solid var(--color-line,#e2e8f0);border-radius:10px;align-items:flex-start;gap:10px;padding:10px;transition:background-color .15s,border-color .15s,opacity .15s,transform .15s;display:flex;position:relative}.notification-popover-item.is-dismissing{opacity:0;transform:translate(20px)}.notification-popover-item:hover{background:var(--color-paper,#fff);border-color:var(--color-line-strong,#cbd5e1)}.notification-popover-item.is-unread{background:#f0fdf4;border-color:#bbf7d0}.notification-popover-item__icon-wrap{background:var(--color-sage-50,#e2e8f0);width:36px;height:36px;color:var(--color-forest,#059669);border-radius:8px;flex-shrink:0;place-items:center;margin-top:2px;display:grid}.notification-popover-item__icon-wrap svg{width:17px;height:17px}.notification-popover-item__content{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.notification-popover-item__top{justify-content:space-between;align-items:center;gap:4px;display:flex}.notification-popover-item__title{text-transform:uppercase;letter-spacing:.03em;color:var(--color-forest,#059669);font-size:11px;font-weight:800}.notification-popover-item__dot{background:#2563eb;border-radius:50%;flex-shrink:0;width:7px;height:7px}.notification-popover-item__video-title{color:var(--color-evergreen-ink,#0f172a);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:13px;font-weight:700;line-height:1.3;overflow:hidden}.notification-popover-item__meta{color:var(--color-sage-muted,#64748b);font-size:11px;font-weight:600}.notification-popover-item__stats{color:var(--color-forest,#059669);margin-top:1px;font-size:11px;font-weight:700}.notification-popover-item__time{color:var(--color-sage-muted,#94a3b8);margin-top:2px;font-size:10.5px}.notification-popover-item__dismiss{width:22px;height:22px;color:var(--color-sage-muted,#94a3b8);cursor:pointer;opacity:.5;background:0 0;border:0;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;transition:opacity .15s,color .15s,background-color .15s;display:inline-flex}.notification-popover-item:hover .notification-popover-item__dismiss{opacity:1}.notification-popover-item__dismiss:hover{color:#dc2626;background:#fee2e2}.notification-popover-item__dismiss svg{width:13px;height:13px}:root[data-theme=dark] .notification-popover{background:var(--color-paper,#121814);border-color:var(--color-line,#2b352f);box-shadow:0 12px 32px -4px #00000073}:root[data-theme=dark] .notification-popover__header,:root[data-theme=dark] .notification-popover-item{background:var(--color-paper-warm,#171e19);border-color:var(--color-line,#2b352f)}:root[data-theme=dark] .notification-popover-item:hover{background:var(--color-sage-50,#1d2721);border-color:var(--color-line-strong,#415047)}:root[data-theme=dark] .notification-popover-item.is-unread{background:#10b9811f;border-color:#10b9814d}:root[data-theme=dark] .notification-popover-item__icon-wrap{color:#34d399;background:#10b98126}.timetable-modal-backdrop{z-index:2000;padding:var(--space-4);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:modalFadeIn var(--transition-base);background:#0c110e8c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.timetable-modal{box-sizing:border-box;background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-lg);width:100%;max-width:640px;max-height:90vh;box-shadow:var(--shadow-panel);animation:modalSlideUp var(--transition-base);position:relative;overflow-y:auto}.timetable-modal__header{padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--color-line);background:var(--color-paper-warm);border-top-left-radius:var(--radius-lg);border-top-right-radius:var(--radius-lg);justify-content:space-between;align-items:center;display:flex}.timetable-modal__header-info{align-items:center;gap:var(--space-3);display:flex}.timetable-modal__icon-badge{background:var(--color-forest-soft);width:40px;height:40px;color:var(--color-forest);border-radius:var(--radius-md);justify-content:center;align-items:center;display:flex}.timetable-modal__header h2{font-size:var(--text-heading-md);color:var(--color-evergreen-ink);margin:0 0 var(--space-1);font-weight:700}.timetable-modal__header p{font-size:var(--text-body-sm);color:var(--color-sage-muted);margin:0}.timetable-modal__close-btn{border-radius:var(--radius-sm);width:32px;height:32px;color:var(--color-sage-muted);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:flex}.timetable-modal__close-btn:hover{background:var(--color-sage-50);color:var(--color-evergreen-ink);border-color:var(--color-line)}.timetable-modal__form{padding:var(--space-6);gap:var(--space-5);flex-direction:column;display:flex}.timetable-modal__notice{align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-forest-soft);border:1px solid var(--color-info-border);border-radius:var(--radius-md);font-size:var(--text-body-sm);color:var(--color-forest-700);display:flex}.timetable-modal__notice .notice-icon{flex-shrink:0;width:18px;height:18px;margin-top:1px}.timetable-modal__notice--unassigned{color:#92400e;background:#f59e0b14;border-color:#f59e0b59}.timetable-modal__notice--unassigned .notice-icon{color:#d97706}.timetable-modal__error{align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);color:#991b1b;font-size:var(--text-body-sm);background:#fef2f2;border:2px solid #ef4444;font-weight:600;animation:.35s cubic-bezier(.36,.07,.19,.97) both modalErrorAlertShake;display:flex;box-shadow:0 4px 12px #ef444426}.timetable-modal__error-icon{color:#dc2626;flex-shrink:0;width:20px;height:20px;margin-top:1px}@keyframes modalErrorAlertShake{10%,90%{transform:translate(-1px)}20%,80%{transform:translate(2px)}30%,50%,70%{transform:translate(-3px)}40%,60%{transform:translate(3px)}}.timetable-modal__grid{gap:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.timetable-modal__grid--single{grid-template-columns:1fr}.timetable-modal__grid-3,.timetable-modal__grid--3col{gap:var(--space-4);grid-template-columns:1.2fr 1fr 1fr;display:grid}@media (width<=600px){.timetable-modal__grid,.timetable-modal__grid-3,.timetable-modal__grid--3col{grid-template-columns:1fr}}.timetable-field{gap:var(--space-2);box-sizing:border-box;flex-direction:column;width:100%;max-width:100%;display:flex}.timetable-field__label-row{justify-content:space-between;align-items:center;display:flex}.timetable-field label{align-items:center;gap:var(--space-2);font-size:var(--text-body-sm);color:var(--color-evergreen-ink);font-weight:600;display:flex}.timetable-field__link-action{color:var(--color-forest-600);font-size:var(--text-body-sm);cursor:pointer;background:0 0;border:none;padding:0;font-weight:600;text-decoration:underline}.timetable-field select,.timetable-field input[type=text],.timetable-field input[type=date]{height:var(--size-control-md);padding:0 var(--space-3);font-size:var(--text-body-sm);color:var(--color-evergreen-ink);background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-md);box-sizing:border-box;text-overflow:ellipsis;white-space:nowrap;width:100%;max-width:100%;transition:border-color var(--transition-fast), box-shadow var(--transition-fast);outline:none;overflow:hidden}.timetable-field select option{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.timetable-field select:focus,.timetable-field input:focus{border-color:var(--color-forest);box-shadow:0 0 0 2px var(--color-forest-soft)}.timetable-modal--observation .timetable-field select:disabled,.timetable-modal--observation .timetable-field input:disabled{background:var(--color-sage-50);color:var(--color-sage-muted);cursor:not-allowed;opacity:.9}.timetable-field__hint{font-size:var(--text-label);color:var(--color-sage-muted)}.timetable-video-combobox{box-sizing:border-box;width:100%;max-width:100%;position:relative}.timetable-video-combobox__control{box-sizing:border-box;align-items:center;width:100%;max-width:100%;display:flex;position:relative}.timetable-video-combobox__search-icon{width:16px;height:16px;color:var(--color-sage-muted);pointer-events:none;z-index:3;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.timetable-field .timetable-video-combobox__control input,.timetable-video-combobox__control input[type=text]{width:100%;height:var(--size-control-md);font-size:var(--text-body-sm);color:var(--color-evergreen-ink);background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-md);text-overflow:ellipsis;white-space:nowrap;box-sizing:border-box;transition:border-color var(--transition-fast), box-shadow var(--transition-fast);outline:none;padding-top:0;padding-bottom:0;overflow:hidden;padding-left:36px!important;padding-right:54px!important}.timetable-video-combobox.is-disabled .timetable-video-combobox__control input{background:var(--color-sage-50);color:var(--color-sage-muted);cursor:not-allowed}.timetable-video-combobox.is-open .timetable-video-combobox__control input,.timetable-video-combobox__control input:focus{border-color:var(--color-forest);box-shadow:0 0 0 2px var(--color-forest-soft)}.timetable-video-combobox__actions{right:var(--space-2);z-index:2;align-items:center;gap:2px;display:flex;position:absolute}.timetable-video-combobox__clear,.timetable-video-combobox__toggle{width:24px;height:24px;color:var(--color-sage-muted);border-radius:var(--radius-sm);cursor:pointer;transition:color var(--transition-fast), background var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.timetable-video-combobox__clear:hover,.timetable-video-combobox__toggle:hover{color:var(--color-evergreen-ink);background:var(--color-sage-50)}.timetable-video-combobox__clear svg,.timetable-video-combobox__toggle svg{width:16px;height:16px}.timetable-video-combobox.is-open .timetable-video-combobox__toggle svg{transform:rotate(180deg)}.timetable-video-combobox__dropdown{background:var(--color-paper);border:1px solid var(--color-line-strong);border-radius:var(--radius-md);z-index:100;max-height:220px;animation:modalSlideUp var(--transition-fast);padding:4px 0;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 10px 25px -5px #00000026}.timetable-video-combobox__option{justify-content:space-between;align-items:center;gap:var(--space-2);cursor:pointer;transition:background var(--transition-fast);box-sizing:border-box;width:100%;max-width:100%;padding:8px 12px;display:flex}.timetable-video-combobox__option:hover{background:var(--color-sage-50)}.timetable-video-combobox__option.is-selected{background:var(--color-forest-soft);color:var(--color-forest-900)}.timetable-video-combobox__option-content{align-items:center;gap:var(--space-2);flex:1;min-width:0;display:flex;overflow:hidden}.timetable-video-combobox__option-title{font-size:var(--text-body-sm);color:var(--color-evergreen-ink);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:500;overflow:hidden}.timetable-video-combobox__option.is-selected .timetable-video-combobox__option-title{color:var(--color-forest-800);font-weight:700}.timetable-video-combobox__option-meta{font-size:var(--text-label);color:var(--color-sage-muted);flex-shrink:0}.timetable-video-combobox__check{width:16px;height:16px;color:var(--color-forest);flex-shrink:0}.timetable-video-combobox__empty{font-size:var(--text-body-sm);color:var(--color-sage-muted);text-align:center;padding:12px}.timetable-video-preview{align-items:center;gap:var(--space-3);padding:var(--space-3);background:var(--color-paper-warm);border:1px solid var(--color-line);border-radius:var(--radius-md);box-sizing:border-box;width:100%;max-width:100%;display:flex;overflow:hidden}.timetable-video-preview__thumb{border-radius:var(--radius-sm);object-fit:cover;flex-shrink:0;width:60px;height:40px}.timetable-video-preview__info{flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.timetable-video-preview__info strong{font-size:var(--text-body-sm);color:var(--color-evergreen-ink);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.timetable-video-preview__info span{font-size:var(--text-label);color:var(--color-sage-muted)}.timetable-modal__footer{justify-content:space-between;align-items:center;gap:var(--space-3);padding-top:var(--space-4);margin-top:var(--space-2);border-top:1px solid var(--color-line);display:flex}.timetable-modal__footer-left{align-items:center;display:flex}.timetable-modal__footer-right{align-items:center;gap:var(--space-3);display:flex}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.sdm-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#0f172a99;justify-content:center;align-items:center;padding:1.5rem;animation:.2s ease-out sdm-fadeIn;display:flex;position:fixed;inset:0}@keyframes sdm-fadeIn{0%{opacity:0}to{opacity:1}}.sdm-card{background-color:#fff;border-radius:16px;flex-direction:column;width:100%;max-width:520px;animation:.25s cubic-bezier(.16,1,.3,1) sdm-slideUp;display:flex;position:relative;overflow:hidden;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}@keyframes sdm-slideUp{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.sdm-header{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:flex-start;padding:1.5rem 1.5rem 1rem;display:flex}.sdm-header-info{flex-direction:column;gap:.25rem;min-width:0;display:flex}.sdm-eyebrow{text-transform:uppercase;letter-spacing:.05em;color:#10b981;font-size:.75rem;font-weight:600}.sdm-title{color:#0f172a;margin:0;font-size:1.25rem;font-weight:700}.sdm-video-name{color:#64748b;white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:.875rem;font-weight:500;overflow:hidden}.sdm-close-btn{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;transition:all .15s;display:flex}.sdm-close-btn:hover{color:#0f172a;background-color:#f1f5f9}.sdm-context-bar{background-color:#f8fafc;border-bottom:1px solid #f1f5f9;align-items:center;gap:.5rem;padding:.75rem 1.5rem;display:flex}.sdm-chip{color:#334155;align-items:center;gap:.375rem;font-size:.8125rem;font-weight:600;display:inline-flex}.sdm-chip svg{color:#059669;width:15px;height:15px}.sdm-chip-divider{color:#cbd5e1}.sdm-body{flex-direction:column;gap:1rem;max-height:360px;padding:1.25rem 1.5rem;display:flex;overflow-y:auto}.sdm-instruction{color:#475569;margin:0;font-size:.875rem;line-height:1.5}.sdm-state{text-align:center;background-color:#f8fafc;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:2.5rem 1rem;display:flex}.sdm-state--loading{color:#64748b;font-size:.875rem}.sdm-state--loading .spinner-icon{color:#059669;width:24px;height:24px;animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.sdm-state--error{color:#ef4444;background-color:#fef2f2;font-size:.875rem}.sdm-state--empty{color:#64748b}.sdm-state--empty svg{color:#94a3b8;width:32px;height:32px}.sdm-state--empty p{color:#334155;margin:0;font-size:.875rem}.sdm-state--empty span{color:#64748b;font-size:.75rem}.sdm-division-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.75rem;display:grid}.sdm-division-option{cursor:pointer;text-align:left;background-color:#fff;border:1.5px solid #e2e8f0;border-radius:12px;align-items:center;gap:.75rem;padding:.875rem 1rem;transition:all .15s;display:flex}.sdm-division-option:hover{background-color:#f0fdf4;border-color:#059669}.sdm-division-option.is-selected{background-color:#ecfdf5;border-color:#059669;box-shadow:0 0 0 3px #0596691f}.sdm-radio-indicator{color:#fff;background-color:#fff;border:2px solid #cbd5e1;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;transition:all .15s;display:flex}.sdm-division-option.is-selected .sdm-radio-indicator{background-color:#059669;border-color:#059669}.sdm-radio-indicator svg{stroke-width:3px;width:12px;height:12px}.sdm-division-info{flex-direction:column;min-width:0;display:flex}.sdm-division-name{color:#0f172a;white-space:nowrap;text-overflow:ellipsis;font-size:.9375rem;font-weight:600;overflow:hidden}.sdm-division-code{color:#64748b;font-size:.75rem}.sdm-footer{background-color:#f8fafc;border-top:1px solid #f1f5f9;justify-content:flex-end;align-items:center;gap:.75rem;padding:1rem 1.5rem;display:flex}.assigned-videos-page{background:var(--color-canvas);min-height:100vh}.assigned-videos-main{padding:var(--space-6) var(--space-8);gap:var(--space-5);flex-direction:column;width:100%;max-width:1440px;margin:0 auto;display:flex}.vl-header-strip{justify-content:space-between;align-items:center;gap:var(--space-6);flex-wrap:wrap;display:flex}.vl-title-group{flex-direction:column;gap:4px;display:flex}.vl-page-title{font-size:var(--text-heading-xl);color:var(--color-evergreen-ink);letter-spacing:-.02em;margin:0;font-weight:800;line-height:1.2}.vl-page-subtitle{font-size:var(--text-body-md);color:var(--color-sage-muted);margin:0}.vl-summary-cards{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.vl-summary-card{background:var(--color-paper);border:1px solid var(--color-line);min-width:140px;transition:transform var(--transition-fast), box-shadow var(--transition-fast);border-radius:12px;align-items:center;gap:14px;padding:10px 18px;display:flex;box-shadow:0 1px 3px #18211d0a}.vl-summary-card:hover{transform:translateY(-1px);box-shadow:0 4px 12px #18211d0f}.vl-summary-icon{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.vl-summary-icon--total{color:#4f46e5;background:#eff6ff}.vl-summary-icon--total .vl-icon-play{width:16px;height:16px;margin-left:2px}.vl-summary-icon--scheduled{color:#10b981;background:#ecfdf5}.vl-summary-icon--scheduled .vl-icon-cal{width:18px;height:18px}.vl-summary-icon--unscheduled{color:#f59e0b;background:#fffbeb}.vl-summary-icon--unscheduled .vl-icon-clock{width:18px;height:18px}.vl-summary-info{flex-direction:column;display:flex}.vl-summary-label{color:var(--color-sage-muted);font-size:11.5px;font-weight:600;line-height:1.2}.vl-summary-value{color:var(--color-evergreen-ink);letter-spacing:-.02em;font-size:22px;font-weight:800;line-height:1.1}.vl-workspace-layout{gap:var(--space-5);align-items:flex-start;display:flex}.vl-grades-sidebar{background:var(--color-paper);border:1px solid var(--color-line);border-radius:14px;flex-direction:column;flex-shrink:0;gap:12px;width:240px;padding:16px;display:flex;box-shadow:0 1px 4px #18211d08}.vl-grades-sidebar__header{color:var(--color-evergreen-ink);border-bottom:1px solid var(--color-line);letter-spacing:.01em;align-items:center;gap:8px;padding:0 4px 6px;font-size:14px;font-weight:800;display:flex}.vl-grades-icon{width:18px;height:18px;color:var(--color-forest)}.vl-grades-list{flex-direction:column;gap:6px;max-height:600px;padding-right:2px;display:flex;overflow-y:auto}.vl-grade-item-btn{cursor:pointer;text-align:left;width:100%;transition:all var(--transition-fast);background:0 0;border:1px solid #0000;border-radius:9px;justify-content:space-between;align-items:center;padding:10px 12px;display:flex}.vl-grade-item-btn:hover{background:var(--color-sage-50);border-color:var(--color-line)}.vl-grade-item-btn.is-active{background:#e8f5e9;border-color:#a5d6a7;box-shadow:0 2px 6px #1e4d3b14}.vl-grade-item-info{flex-direction:column;gap:2px;min-width:0;display:flex}.vl-grade-item-name{color:var(--color-evergreen-ink);text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:700;overflow:hidden}.vl-grade-item-btn.is-active .vl-grade-item-name{color:#1e4d3b;font-weight:800}.vl-grade-item-count{color:var(--color-sage-muted);font-size:11px;font-weight:600}.vl-grade-item-btn.is-active .vl-grade-item-count{color:#2e7d32}.vl-grade-check{color:#1e4d3b;flex-shrink:0;width:16px;height:16px}.vl-grades-empty{color:var(--color-sage-muted);text-align:center;padding:16px 8px;font-size:12.5px}.vl-main-content{gap:var(--space-4);flex-direction:column;flex:1;min-width:0;display:flex}.vl-week-tabs-bar{background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-lg);align-items:center;padding:8px 12px;display:flex;box-shadow:0 1px 3px #18211d08}.vl-week-chips-scroll{scrollbar-width:thin;align-items:center;gap:6px;width:100%;padding:2px 0;display:flex;overflow-x:auto}.vl-week-chips-scroll::-webkit-scrollbar{height:4px}.vl-week-chips-scroll::-webkit-scrollbar-thumb{background:var(--color-line-strong);border-radius:4px}.vl-week-chip{background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-md);cursor:pointer;text-align:center;height:32px;transition:all var(--transition-fast);flex-shrink:0;align-items:center;gap:6px;padding:0 12px;display:inline-flex}.vl-week-chip:hover:not(.is-locked){background:var(--color-sage-50);border-color:var(--color-line-strong)}.vl-week-chip.is-current:not(.is-active){background:var(--color-sage-50);border-color:var(--color-forest)}.vl-week-chip.is-active{background:var(--color-forest);border-color:var(--color-forest);color:#fff;box-shadow:0 1px 3px #1e4d3b26}.vl-week-chip.is-locked{background:var(--color-paper-warm);border-color:var(--color-line);color:var(--color-sage-muted);opacity:.75}.vl-week-chip.is-locked:hover{opacity:.9;background:var(--color-paper-warm)}.vl-week-chip-title{color:var(--color-evergreen-ink);white-space:nowrap;font-size:12px;font-weight:600}.vl-week-chip.is-current:not(.is-active) .vl-week-chip-title{color:var(--color-forest);font-weight:700}.vl-week-chip.is-active .vl-week-chip-title{color:#fff;font-weight:700}.vl-week-chip.is-locked .vl-week-chip-title{color:var(--color-sage-muted)}.vl-week-chip-tag{border-radius:var(--radius-sm);background:var(--color-sage-50);color:var(--color-forest);padding:1px 5px;font-size:10px;font-weight:700}.vl-week-chip.is-active .vl-week-chip-tag{color:#fff;background:#fff3}.vl-week-chip-count{background:var(--color-sage-50);color:var(--color-forest);border-radius:10px;padding:1px 6px;font-size:10.5px;font-weight:700}.vl-week-chip.is-active .vl-week-chip-count{color:#fff;background:#fff3}.vl-week-chip.is-locked .vl-week-chip-count{background:var(--color-line);color:var(--color-sage-muted)}.vl-week-empty-text{color:var(--color-sage-muted);padding:4px 8px;font-size:12.5px}.vl-content-toolbar{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;padding:2px 4px;display:flex}.vl-content-title-box{flex-direction:column;gap:2px;display:flex}.vl-content-heading{color:var(--color-evergreen-ink);letter-spacing:-.01em;margin:0;font-size:17px;font-weight:800}.vl-content-count{color:var(--color-sage-muted);font-size:12.5px;font-weight:600}.vl-content-controls{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.vl-search-input-wrapper{background:var(--color-paper);border:1px solid var(--color-line);width:190px;height:36px;transition:all var(--transition-fast);border-radius:8px;align-items:center;gap:8px;padding:0 10px;display:flex;box-shadow:0 1px 2px #18211d05}.vl-search-input-wrapper:focus-within{border-color:var(--color-forest);width:220px;box-shadow:0 0 0 3px #1e4d3b1f}.vl-search-icon{width:14px;height:14px;color:var(--color-sage-muted);flex-shrink:0}.vl-search-input{color:var(--color-evergreen-ink);background:0 0;border:none;outline:none;width:100%;font-size:13px}.vl-search-clear-btn{color:var(--color-sage-muted);cursor:pointer;background:0 0;border:none;align-items:center;padding:0;display:flex}.vl-search-clear-btn svg{width:14px;height:14px}.vl-view-toggle-group{background:var(--color-paper);border:1px solid var(--color-line);border-radius:8px;align-items:center;padding:2px;display:flex}.vl-view-toggle-btn{width:32px;height:30px;color:var(--color-sage-muted);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;display:flex}.vl-view-toggle-btn svg{width:16px;height:16px}.vl-view-toggle-btn:hover{color:var(--color-evergreen-ink)}.vl-view-toggle-btn.is-active{background:var(--color-sage-50);color:var(--color-forest)}.vl-sort-select-wrapper{background:var(--color-paper);border:1px solid var(--color-line);border-radius:8px;align-items:center;gap:6px;height:36px;padding:0 10px;display:flex}.vl-sort-icon{width:14px;height:14px;color:var(--color-sage-muted);flex-shrink:0}.vl-sort-select{color:var(--color-evergreen-ink);cursor:pointer;background:0 0;border:none;outline:none;font-size:12.5px;font-weight:600}.vl-cards-container{gap:16px;display:grid}.vl-cards-container--grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.vl-video-card{background:var(--color-paper);border:1px solid var(--color-line);transition:transform var(--transition-fast), box-shadow var(--transition-fast), border-color var(--transition-fast);border-radius:14px;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 1px 3px #18211d08}.vl-video-card:hover{border-color:var(--color-line-strong);transform:translateY(-3px);box-shadow:0 8px 24px #18211d14}.vl-card-thumb-wrapper{aspect-ratio:16/9;cursor:pointer;background:#18211d;position:relative;overflow:hidden}.vl-card-thumbnail{object-fit:cover;width:100%;height:100%;transition:transform var(--transition-slow);display:block}.vl-card-thumb-wrapper:hover .vl-card-thumbnail{transform:scale(1.05)}.vl-thumb-fallback{color:#fff6;background:linear-gradient(135deg,#1e4d3b,#102f25);justify-content:center;align-items:center;width:100%;height:100%;display:flex}.vl-thumb-fallback svg{width:40px;height:40px}.vl-thumb-play-overlay{opacity:0;transition:opacity var(--transition-fast);background:#0000004d;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.vl-card-thumb-wrapper:hover .vl-thumb-play-overlay{opacity:1}.vl-play-circle{width:44px;height:44px;color:var(--color-forest);transition:transform var(--transition-fast);background:#fffffff2;border-radius:50%;justify-content:center;align-items:center;display:flex;transform:scale(.9);box-shadow:0 4px 14px #0000004d}.vl-card-thumb-wrapper:hover .vl-play-circle{transform:scale(1)}.vl-play-circle svg{width:18px;height:18px;margin-left:2px}.vl-badge-week{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;letter-spacing:.02em;background:#12281ec7;border-radius:5px;padding:3px 8px;font-size:11px;font-weight:700;position:absolute;top:8px;left:8px}.vl-badge-duration{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;letter-spacing:.02em;background:#000000d1;border-radius:4px;padding:2px 7px;font-size:11px;font-weight:700;position:absolute;bottom:8px;right:8px}.vl-card-body{flex-direction:column;flex:1;gap:5px;padding:12px 14px 14px;display:flex}.vl-card-title{color:var(--color-evergreen-ink);cursor:pointer;text-overflow:ellipsis;white-space:nowrap;transition:color var(--transition-fast);margin:0;font-size:15px;font-weight:800;line-height:1.3;overflow:hidden}.vl-card-title:hover{color:var(--color-forest)}.vl-card-subject{color:var(--color-sage-muted);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:12.5px;font-weight:600;overflow:hidden}.vl-card-schedule-row{margin-top:2px;padding:3px 0 6px;font-size:12px}.vl-schedule-text.is-scheduled{color:var(--color-sage-muted)}.vl-schedule-text.is-scheduled strong{color:var(--color-evergreen-ink);font-weight:700}.vl-schedule-text.is-unscheduled{color:#9ca3af;font-style:normal}.vl-card-actions{align-items:center;gap:8px;margin-top:auto;padding-top:4px;display:flex}.vl-btn-play{background:var(--color-paper);border:1px solid var(--color-line);height:34px;color:var(--color-evergreen-ink);cursor:pointer;transition:all var(--transition-fast);border-radius:8px;flex:1;justify-content:center;align-items:center;gap:6px;font-size:13px;font-weight:700;display:flex}.vl-btn-play:hover{background:var(--color-forest);border-color:var(--color-forest);color:#fff}.vl-btn-play-icon{width:13px;height:13px}.vl-btn-action-icon{background:var(--color-paper);border:1px solid var(--color-line);width:34px;height:34px;color:var(--color-sage-muted);cursor:pointer;transition:all var(--transition-fast);border-radius:8px;justify-content:center;align-items:center;display:flex}.vl-btn-action-icon svg{width:15px;height:15px}.vl-btn-action-icon:hover{background:var(--color-sage-50);color:var(--color-forest);border-color:var(--color-line-strong)}.vl-btn-action-icon.is-booked{color:#047857;background:#ecfdf5;border-color:#a7f3d0}.vl-cards-container--list .vl-video-card{flex-direction:row;align-items:center;height:110px}.vl-cards-container--list .vl-card-thumb-wrapper{aspect-ratio:auto;flex-shrink:0;width:180px;height:100%}.vl-cards-container--list .vl-card-body{justify-content:space-between;align-items:center;gap:var(--space-4);flex-direction:row;width:100%;padding:12px 20px}.vl-cards-container--list .vl-card-title{max-width:280px;font-size:15px}.vl-cards-container--list .vl-card-actions{flex-shrink:0;width:160px;margin-top:0;padding-top:0}.vl-help-banner{justify-content:space-between;align-items:center;gap:var(--space-4);margin-top:var(--space-2);background:#f0fdf4;border:1px solid #bbf7d0;border-radius:12px;padding:14px 20px;display:flex}.vl-help-left{align-items:center;gap:12px;display:flex}.vl-help-icon-circle{color:#166534;background:#dcfce7;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.vl-lightbulb-icon{width:18px;height:18px}.vl-help-text strong{color:#166534;margin-bottom:2px;font-size:14px;font-weight:800;display:block}.vl-help-text p{color:#15803d;margin:0;font-size:13px}.vl-help-action-btn{color:#166534;cursor:pointer;transition:all var(--transition-fast);background:#fff;border:1px solid #86efac;border-radius:8px;align-items:center;gap:8px;padding:8px 16px;font-size:13px;font-weight:700;display:inline-flex;box-shadow:0 1px 2px #0000000a}.vl-help-action-btn:hover{color:#fff;background:#166534;border-color:#166534}.vl-help-cal-icon{width:15px;height:15px}.vl-loading-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;display:grid}.vl-skeleton-card{background:var(--color-paper);border:1px solid var(--color-line);border-radius:12px;flex-direction:column;gap:10px;padding:12px;display:flex}.vl-skeleton-thumb{aspect-ratio:16/9;background:var(--color-sage-50);border-radius:8px;animation:1.5s ease-in-out infinite vl-pulse}.vl-skeleton-line{background:var(--color-sage-50);border-radius:4px;height:14px;animation:1.5s ease-in-out infinite vl-pulse}.vl-skeleton-line--title{width:75%}.vl-skeleton-line--sub{width:50%}.vl-skeleton-line--meta{width:90%;margin-top:8px}@keyframes vl-pulse{0%,to{opacity:1}50%{opacity:.4}}.vl-empty-state-card{background:var(--color-paper);border:1px dashed var(--color-line-strong);text-align:center;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:48px 24px;display:flex}.vl-empty-icon-wrap{background:var(--color-sage-50);width:48px;height:48px;color:var(--color-sage-muted);border-radius:50%;justify-content:center;align-items:center;display:flex}.vl-empty-icon-wrap svg{width:24px;height:24px}.vl-empty-title{color:var(--color-evergreen-ink);margin:0;font-size:16px;font-weight:800}.vl-empty-desc{color:var(--color-sage-muted);max-width:400px;margin:0;font-size:13.5px}@media (width<=1024px){.vl-workspace-layout{flex-direction:column}.vl-grades-sidebar{width:100%}.vl-grades-list{flex-direction:row;max-height:none;padding-bottom:4px;overflow-x:auto}.vl-grade-item-btn{flex-shrink:0;min-width:140px}}@media (width<=768px){.assigned-videos-main{padding:var(--space-4);gap:var(--space-4)}.vl-header-strip{flex-direction:column;align-items:flex-start}.vl-summary-cards{width:100%}.vl-summary-card{flex:1;min-width:120px;padding:8px 12px}.vl-week-tabs-bar{flex-direction:column;align-items:flex-start;gap:8px}.vl-week-tabs-label{border-right:none;border-bottom:1px solid var(--color-line);width:100%;padding-bottom:6px;padding-right:0}.vl-cards-container--list .vl-video-card{flex-direction:column;height:auto}.vl-cards-container--list .vl-card-thumb-wrapper{aspect-ratio:16/9;width:100%}.vl-cards-container--list .vl-card-body{flex-direction:column;align-items:flex-start}.vl-cards-container--list .vl-card-actions{width:100%}}:root[data-theme=dark] .vl-summary-icon--total{color:#a5b4fc;background:#1e1b4b}:root[data-theme=dark] .vl-summary-icon--scheduled{color:#6ee7b7;background:#064e3b}:root[data-theme=dark] .vl-summary-icon--unscheduled{color:#fcd34d;background:#451a03}:root[data-theme=dark] .vl-grade-item-btn.is-active{background:#193123;border-color:#365c43}:root[data-theme=dark] .vl-grade-item-btn.is-active .vl-grade-item-name{color:#a7f3d0}:root[data-theme=dark] .vl-grade-item-btn.is-active .vl-grade-item-count{color:#6ee7b7}:root[data-theme=dark] .vl-grade-check{color:#a7f3d0}:root[data-theme=dark] .vl-week-chip.is-active{color:#a7f3d0;background:#193123;border-color:#365c43}:root[data-theme=dark] .vl-btn-action-icon.is-booked{color:#83c99c;background:#193123;border-color:#365c43}:root[data-theme=dark] .vl-help-banner{background:#13241b;border-color:#244b36}:root[data-theme=dark] .vl-help-icon-circle{color:#83c99c;background:#1e3f2d}:root[data-theme=dark] .vl-help-text strong{color:#a7f3d0}:root[data-theme=dark] .vl-help-text p{color:#83c99c}:root[data-theme=dark] .vl-help-action-btn{color:#a7f3d0;background:#1e3a2b;border-color:#365c43}:root[data-theme=dark] .vl-help-action-btn:hover{color:#fff;background:#2b5941}.vl-week-chip-dot{background:var(--color-forest);border-radius:50%;flex-shrink:0;width:7px;height:7px}.vl-week-chip.is-active .vl-week-chip-dot{background:#fff}.vl-week-chip-tag{letter-spacing:.04em;text-transform:uppercase;color:var(--color-forest);white-space:nowrap;font-size:10px;font-weight:800}.vl-week-chip.is-active .vl-week-chip-tag{color:#ffffffd9}.vl-week-chip-lock{width:12px;height:12px;color:var(--color-sage-muted);flex-shrink:0}.vl-week-chip.is-active .vl-week-chip-lock{color:#fffc}.vl-week-chip.is-past:not(.is-active) .vl-week-chip-count{color:var(--color-sage-muted);opacity:.75}.vl-week-chip.is-locked:not(.is-active){border-style:dashed}.vl-week-chip.is-locked:not(.is-active) .vl-week-chip-title{color:var(--color-sage-muted)}.vl-card-thumb-wrapper.is-locked{cursor:not-allowed}.vl-card-thumb-wrapper.is-locked .vl-card-thumbnail,.vl-card-thumb-wrapper.is-locked .vl-thumb-fallback{filter:blur(3px)saturate(.7)brightness(.72);transform:scale(1.06)}.vl-card-thumb-wrapper.is-locked:hover .vl-card-thumbnail{transform:scale(1.06)}.vl-thumb-lock-overlay{background:#12281e57;flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex;position:absolute;inset:0}.vl-lock-circle{color:#1e4d3b;background:#fffffff0;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;display:flex;box-shadow:0 4px 14px #00000047}.vl-lock-circle svg{width:17px;height:17px}.vl-lock-caption{color:#fff;text-shadow:0 1px 3px #00000073;text-align:center;padding:0 10px;font-size:11.5px;font-weight:700}.vl-badge-locked{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;letter-spacing:.02em;background:#000000d1;border-radius:4px;align-items:center;gap:4px;padding:2px 7px;font-size:11px;font-weight:700;display:inline-flex;position:absolute;bottom:8px;right:8px}.vl-badge-locked svg{width:11px;height:11px}.vl-video-card.is-locked .vl-card-title{cursor:default}.vl-video-card.is-locked .vl-card-title:hover{color:var(--color-evergreen-ink)}.vl-schedule-text.is-locked{color:var(--color-sage-muted)}.vl-schedule-text.is-locked strong{color:var(--color-evergreen-ink);font-weight:700}.vl-btn-play.is-locked,.vl-btn-play:disabled{cursor:not-allowed;color:var(--color-sage-muted);background:var(--color-paper);border-color:var(--color-line)}.vl-btn-play.is-locked:hover,.vl-btn-play:disabled:hover{background:var(--color-paper);border-color:var(--color-line);color:var(--color-sage-muted)}.vl-btn-action-icon.is-locked,.vl-btn-action-icon:disabled{cursor:not-allowed;opacity:.7}.vl-watch-pill{letter-spacing:.02em;border:1px solid var(--color-line);background:var(--color-paper);color:var(--color-sage-muted);vertical-align:middle;border-radius:10px;align-items:center;gap:4px;margin-left:8px;padding:2px 8px;font-size:10.5px;font-weight:800;display:inline-flex}.vl-watch-pill svg{width:11px;height:11px}.vl-watch-pill.is-completed{color:#047857;background:#ecfdf5;border-color:#a7f3d0}.vl-watch-pill.is-progress{color:#b45309;background:#fffbeb;border-color:#fde68a}.vl-week-chip.is-draft:not(.is-active){border-style:dashed}.vl-week-chip-tag--draft{color:#92400e;background:#fef3c7}:root[data-theme=dark] .vl-week-chip-tag--draft{color:#fde68a;background:#78350f}.vl-video-card.is-draft,.vl-video-card.is-unavailable{opacity:.78;background:var(--color-canvas);border-color:var(--color-line)}.vl-video-card.is-draft:hover,.vl-video-card.is-unavailable:hover{border-color:var(--color-line);transform:none;box-shadow:0 1px 3px #18211d08}.vl-card-thumb-wrapper.is-draft,.vl-card-thumb-wrapper.is-unavailable{cursor:not-allowed;background:#374151}.vl-card-thumb-wrapper.is-draft .vl-card-thumbnail,.vl-card-thumb-wrapper.is-draft .vl-thumb-fallback,.vl-card-thumb-wrapper.is-unavailable .vl-card-thumbnail,.vl-card-thumb-wrapper.is-unavailable .vl-thumb-fallback{filter:grayscale(.9)contrast(.8)brightness(.75);opacity:.65}.vl-card-thumb-wrapper.is-draft:hover .vl-card-thumbnail,.vl-card-thumb-wrapper.is-unavailable:hover .vl-card-thumbnail{transform:none}.vl-thumb-draft-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);pointer-events:auto;cursor:not-allowed;background:#11182773;flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex;position:absolute;inset:0}.vl-draft-pill{color:#f3f4f6;letter-spacing:.02em;background:#1f2937eb;border:1px solid #ffffff26;border-radius:6px;align-items:center;gap:6px;padding:5px 12px;font-size:11.5px;font-weight:700;display:inline-flex;box-shadow:0 2px 8px #0000004d}.vl-draft-pill svg{color:#fbbf24;width:14px;height:14px}.vl-draft-caption{color:#fff;text-shadow:0 1px 3px #0009;text-align:center;padding:0 14px;font-size:11px;font-weight:600;line-height:1.3}.vl-badge-draft{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;letter-spacing:.02em;background:#4b5563e0;border-radius:4px;align-items:center;gap:4px;padding:2px 7px;font-size:11px;font-weight:700;display:inline-flex;position:absolute;bottom:8px;right:8px}.vl-video-card.is-draft .vl-card-title,.vl-video-card.is-unavailable .vl-card-title,.vl-card-title.is-disabled{color:var(--color-sage-muted);cursor:not-allowed}.vl-video-card.is-draft .vl-card-title:hover,.vl-video-card.is-unavailable .vl-card-title:hover,.vl-card-title.is-disabled:hover{color:var(--color-sage-muted)}.vl-schedule-text.is-draft{color:#b45309;font-weight:600}.vl-btn-play.is-draft,.vl-btn-play.is-unavailable,.vl-btn-play.is-draft:disabled,.vl-btn-play.is-unavailable:disabled{cursor:not-allowed;color:var(--color-sage-muted);background:var(--color-canvas);border-color:var(--color-line)}.vl-btn-play.is-draft:hover,.vl-btn-play.is-unavailable:hover{background:var(--color-canvas);border-color:var(--color-line);color:var(--color-sage-muted)}.vl-btn-draft-icon{color:#9ca3af;font-size:12px;font-weight:800;line-height:1}.vl-btn-action-icon.is-draft,.vl-btn-action-icon.is-draft:disabled{cursor:not-allowed;opacity:.6;background:var(--color-canvas);border-color:var(--color-line);color:var(--color-sage-muted)}:root[data-theme=dark] .vl-week-chip-dot{background:#6ee7b7}:root[data-theme=dark] .vl-week-chip-tag{color:#6ee7b7}:root[data-theme=dark] .vl-week-chip.is-active .vl-week-chip-dot,:root[data-theme=dark] .vl-week-chip.is-active .vl-week-chip-tag{color:#a7f3d0;background:unset}:root[data-theme=dark] .vl-week-chip.is-active .vl-week-chip-dot{background:#a7f3d0}:root[data-theme=dark] .vl-lock-circle{color:#a7f3d0;background:#0f1f17}:root[data-theme=dark] .vl-watch-pill.is-completed{color:#6ee7b7;background:#06301f;border-color:#1f6b4a}:root[data-theme=dark] .vl-watch-pill.is-progress{color:#fcd34d;background:#3a2a06;border-color:#7c5a12}.change-password-page{background:radial-gradient(circle at 84% 8%, color-mix(in srgb, var(--color-forest-soft) 58%, transparent), transparent 28%), var(--color-chalk-paper)}.change-password-main{min-height:calc(100dvh - 64px);padding:clamp(24px,4vw,48px)}.change-password-hero{width:min(100%,1080px);margin:0 auto var(--space-8);justify-content:space-between;align-items:flex-end;gap:var(--space-6);display:flex}.change-password-hero .text-label,.change-password-summary .text-label{margin-bottom:var(--space-2);color:var(--color-forest);display:block}.change-password-hero h1{color:var(--color-evergreen-ink);margin:0;font-size:clamp(34px,4vw,46px);line-height:1.08}.change-password-hero p{max-width:640px;margin-top:var(--space-2);color:var(--color-sage-muted);font-size:var(--text-body-lg)}.change-password-hero .button--ghost{border-color:var(--color-line);background:var(--color-paper);box-shadow:var(--shadow-card);flex:none}.change-password-layout{gap:var(--space-6);grid-template-columns:minmax(270px,.72fr) minmax(440px,1.28fr);align-items:stretch;width:min(100%,1080px);margin:0 auto;display:grid}.change-password-summary,.change-password-card{border:1px solid var(--color-line);box-shadow:var(--shadow-card);border-radius:14px}.change-password-summary{color:var(--color-on-dark);background:radial-gradient(circle at 95% 5%, #ffffff1f, transparent 32%), linear-gradient(145deg, var(--color-forest-600), var(--color-forest-800));flex-direction:column;padding:clamp(24px,3vw,36px);display:flex}.change-password-summary__icon{width:56px;height:56px;margin-bottom:var(--space-8);color:var(--color-marigold);background:#ffffff17;border:1px solid #ffffff2e;border-radius:16px;place-items:center;display:grid}.change-password-summary__icon svg{width:29px;height:29px}.change-password-summary .text-label{color:#ffffff9e}.change-password-summary h2{color:var(--color-on-dark);font-size:28px;line-height:var(--leading-heading);margin:0}.change-password-summary>p{margin-top:var(--space-3);color:#ffffffb8;font-size:var(--text-body-lg)}.change-password-summary ul{gap:var(--space-3);margin:var(--space-8) 0;padding:0;list-style:none;display:grid}.change-password-summary li{align-items:center;gap:var(--space-3);color:#ffffffd6;font-size:var(--text-body-md);display:flex}.change-password-summary li svg{width:18px;height:18px;color:var(--color-marigold);flex:0 0 18px}.change-password-summary__account{align-items:center;gap:var(--space-3);padding-top:var(--space-6);border-top:1px solid #ffffff24;margin-top:auto;display:flex}.change-password-summary__account>span{width:42px;height:42px;color:var(--color-evergreen-ink);background:var(--color-marigold);text-transform:uppercase;border-radius:50%;flex:0 0 42px;place-items:center;font-weight:800;display:grid}.change-password-summary__account div{min-width:0;display:grid}.change-password-summary__account strong,.change-password-summary__account small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.change-password-summary__account small{color:#ffffff94}.change-password-card{--change-password-card-padding:clamp(24px, 3vw, 32px);background:var(--color-paper);text-align:left;gap:0;overflow:hidden}.change-password-card__header{align-items:flex-start;gap:var(--space-4);padding:var(--change-password-card-padding);border-bottom:1px solid var(--color-line);background:linear-gradient(180deg, var(--color-paper-warm), var(--color-paper));display:flex}.change-password-card__header>span{width:46px;height:46px;color:var(--color-forest);background:var(--color-forest-soft);border-radius:12px;flex:0 0 46px;place-items:center;display:grid}.change-password-card__header svg{width:23px;height:23px}.change-password-card__header h2{color:var(--color-evergreen-ink);font-size:var(--text-heading-lg);margin:0}.change-password-card__header p{margin-top:var(--space-1);color:var(--color-sage-muted)}.change-password-form{gap:var(--space-5);padding:var(--change-password-card-padding);display:grid}.change-password-form .text-input__control{background:var(--color-paper-warm);min-height:48px;transition:border-color var(--transition-base), box-shadow var(--transition-base), background-color var(--transition-base)}.change-password-form .text-input__control:focus-within{background:var(--color-paper)}.change-password-form__divider{height:1px;margin:var(--space-1) 0;background:var(--color-line)}.change-password-form__actions{justify-content:flex-end;align-items:center;gap:var(--space-3);margin:var(--space-1) calc(0px - var(--change-password-card-padding)) calc(0px - var(--change-password-card-padding));padding:var(--space-5) var(--change-password-card-padding);border-top:1px solid var(--color-line);background:var(--color-paper-warm);display:flex}.change-password-form__actions .button{min-height:44px}@media (width<=900px){.change-password-layout{grid-template-columns:1fr}.change-password-summary{min-height:380px}}@media (width<=768px){.change-password-main{min-height:calc(100dvh - 136px)}}@media (width<=600px){.change-password-main{padding:var(--space-5) var(--space-4)}.change-password-hero{margin-bottom:var(--space-6);flex-direction:column;align-items:flex-start}.change-password-hero .button{width:100%}.change-password-summary{min-height:0}.change-password-summary__icon{margin-bottom:var(--space-6)}.change-password-form__actions{flex-direction:column-reverse;align-items:stretch}.change-password-form__actions .button{width:100%}}.profile-settings-main{min-height:calc(100dvh - 64px);padding:clamp(24px,4vw,48px)}.profile-settings-hero{width:min(100%,1160px);margin:0 auto var(--space-8);justify-content:space-between;align-items:flex-end;gap:var(--space-6);display:flex}.profile-settings-hero .text-label{margin-bottom:var(--space-2);color:var(--color-forest);display:block}.profile-settings-hero h1{color:var(--color-evergreen-ink);margin:0;font-size:clamp(34px,4vw,46px);line-height:1.08}.profile-settings-hero p{max-width:640px;margin-top:var(--space-2);color:var(--color-sage-muted);font-size:var(--text-body-lg)}.profile-settings-hero .button--ghost{border-color:var(--color-line);background:var(--color-paper);box-shadow:var(--shadow-card);flex:none}.profile-settings-layout{gap:var(--space-6);grid-template-columns:280px minmax(0,1fr);align-items:start;width:min(100%,1160px);margin:0 auto;display:grid}.profile-settings-nav,.settings-card{border:1px solid var(--color-line);background:var(--color-paper);box-shadow:var(--shadow-card);border-radius:14px}.profile-settings-nav{top:calc(64px + var(--space-6));position:sticky;overflow:hidden}.profile-settings-nav__account{align-items:center;gap:var(--space-3);padding:var(--space-6);border-bottom:1px solid var(--color-line);background:linear-gradient(145deg, var(--color-paper-warm), var(--color-paper));display:flex}.profile-settings-nav__account>span,.profile-settings-nav__account>img{border-radius:50%;flex:0 0 46px;width:46px;height:46px}.profile-settings-nav__account>span{color:var(--color-on-primary);background:var(--color-forest);font-size:var(--text-body-lg);text-transform:uppercase;place-items:center;font-weight:800;display:grid}.profile-settings-nav__account>img{object-fit:cover}.profile-settings-nav__account div{min-width:0;display:grid}.profile-settings-nav__account strong,.profile-settings-nav__account small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.profile-settings-nav__account small{color:var(--color-sage-muted)}.profile-settings-nav__tabs{gap:var(--space-2);padding:var(--space-3);display:grid}.profile-settings-nav__tabs button{align-items:center;gap:var(--space-3);border-radius:var(--radius-lg);width:100%;padding:var(--space-3);color:var(--color-sage-muted);text-align:left;transition:color var(--transition-base), border-color var(--transition-base), background-color var(--transition-base), transform var(--transition-fast);background:0 0;border:1px solid #0000;grid-template-columns:38px minmax(0,1fr);display:grid;position:relative}.profile-settings-nav__tabs button:hover{color:var(--color-evergreen-ink);background:var(--color-sage-50);transform:translate(2px)}.profile-settings-nav__tabs button.is-active{border-color:color-mix(in srgb, var(--color-forest) 24%, var(--color-line));color:var(--color-forest);background:var(--color-forest-soft)}.profile-settings-nav__tabs button.is-active:before{inset:var(--space-3) auto var(--space-3) -1px;border-radius:0 var(--radius-pill) var(--radius-pill) 0;background:var(--color-forest);content:"";width:3px;position:absolute}.profile-settings-nav__tabs button>svg{border-radius:var(--radius-lg);background:var(--color-sage-50);width:38px;height:38px;padding:9px}.profile-settings-nav__tabs button.is-active>svg{background:color-mix(in srgb, var(--color-paper) 68%, transparent)}.profile-settings-nav__tabs button>span{min-width:0;display:grid}.profile-settings-nav__tabs strong{color:inherit;font-size:var(--text-body-md)}.profile-settings-nav__tabs small{color:var(--color-sage-muted);font-size:var(--text-body-sm)}.profile-settings-nav__note{margin:0 var(--space-4) var(--space-4);border-top:1px solid var(--color-line);padding-top:var(--space-4);color:var(--color-sage-muted);font-size:var(--text-body-sm)}.profile-settings-content{min-width:0}.settings-card{--settings-card-padding:clamp(24px, 3vw, 34px);text-align:left;gap:0;overflow:hidden}.settings-card__header{align-items:flex-start;gap:var(--space-4);padding:var(--settings-card-padding);border-bottom:1px solid var(--color-line);background:linear-gradient(180deg, var(--color-paper-warm), var(--color-paper));display:flex}.settings-card__header>span{width:46px;height:46px;color:var(--color-forest);background:var(--color-forest-soft);border-radius:12px;flex:0 0 46px;place-items:center;display:grid}.settings-card__header svg{width:23px;height:23px}.settings-card__header h2{color:var(--color-evergreen-ink);font-size:var(--text-heading-lg);margin:0}.settings-card__header p{margin-top:var(--space-1);color:var(--color-sage-muted)}.profile-details-form,.settings-card .change-password-form{gap:var(--space-5);padding:var(--settings-card-padding);display:grid}.profile-details-form__grid{gap:var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.profile-details-form .text-input__control,.settings-card .change-password-form .text-input__control{background:var(--color-paper-warm);min-height:48px}.profile-details-form .text-input__control:focus-within,.settings-card .change-password-form .text-input__control:focus-within{background:var(--color-paper)}.settings-form__actions{justify-content:flex-end;align-items:center;gap:var(--space-3);margin:var(--space-1) calc(0px - var(--settings-card-padding)) calc(0px - var(--settings-card-padding));padding:var(--space-5) var(--settings-card-padding);border-top:1px solid var(--color-line);background:var(--color-paper-warm);display:flex}.settings-form__actions .button{min-width:150px;min-height:44px}.settings-form__actions--split{justify-content:space-between}@media (width<=980px){.profile-settings-layout{grid-template-columns:1fr}.profile-settings-nav{position:static}.profile-settings-nav__tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-settings-nav__tabs button:hover{transform:translateY(-1px)}}@media (width<=768px){.profile-settings-main{min-height:calc(100dvh - 136px)}}@media (width<=600px){.profile-settings-main{padding:var(--space-5) var(--space-4)}.profile-settings-hero{margin-bottom:var(--space-6);flex-direction:column;align-items:flex-start}.profile-settings-hero .button{width:100%}.profile-settings-nav__tabs,.profile-details-form__grid{grid-template-columns:1fr}.settings-form__actions,.settings-form__actions--split{flex-direction:column-reverse;align-items:stretch}.settings-form__actions .button{width:100%}}.dvm-overlay{z-index:1000;padding:var(--space-4);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172aa6;justify-content:center;align-items:center;animation:.2s ease-out dvmFadeIn;display:flex;position:fixed;inset:0}@keyframes dvmFadeIn{0%{opacity:0}to{opacity:1}}.dvm-card{border:1px solid var(--color-line);border-radius:var(--radius-xl);background:var(--color-paper);width:100%;max-width:520px;max-height:90vh;box-shadow:var(--shadow-2xl);flex-direction:column;animation:.2s cubic-bezier(.16,1,.3,1) dvmSlideUp;display:flex;overflow:hidden}@keyframes dvmSlideUp{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.dvm-header{justify-content:space-between;align-items:center;gap:var(--space-3);border-bottom:1px solid var(--color-line);padding:var(--space-4) var(--space-5);background:var(--color-paper-warm);display:flex}.dvm-header-left{align-items:center;gap:var(--space-3);display:flex}.dvm-warning-badge{border-radius:var(--radius-pill);color:#dc2626;background:#fef2f2;border:1px solid #fca5a5;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.dvm-warning-badge svg{width:18px;height:18px}.dvm-header-info{flex-direction:column;gap:1px;display:flex}.dvm-eyebrow{color:#dc2626;text-transform:uppercase;letter-spacing:.05em;font-size:11px;font-weight:800}.dvm-title{color:var(--color-ink-strong);font-size:var(--text-heading-md);margin:0;font-weight:800}.dvm-close-btn{border-radius:var(--radius-pill);width:32px;height:32px;color:var(--color-sage-muted);cursor:pointer;transition:color var(--transition-fast), background var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.dvm-close-btn:hover{color:var(--color-ink-strong);background:#0000000f}.dvm-body{gap:var(--space-4);padding:var(--space-5);flex-direction:column;display:flex;overflow-y:auto}.dvm-error-alert{align-items:flex-start;gap:var(--space-3);border-radius:var(--radius-lg);padding:var(--space-3) var(--space-4);color:#991b1b;background:#fef2f2;border:1px solid #fca5a5;display:flex}.dvm-error-alert svg{color:#dc2626;flex-shrink:0;width:20px;height:20px;margin-top:1px}.dvm-error-alert strong{font-size:var(--text-body-sm);margin-bottom:2px;font-weight:800;display:block}.dvm-error-alert p{font-size:var(--text-body-sm);margin:0;line-height:1.4}.dvm-video-preview{align-items:center;gap:var(--space-3);border:1px solid var(--color-line);border-radius:var(--radius-lg);padding:var(--space-3);background:var(--color-paper-warm);display:flex}.dvm-video-thumb{border-radius:var(--radius-md);background:var(--color-sage-100,#e2e8f0);flex-shrink:0;justify-content:center;align-items:center;width:64px;height:40px;display:flex;position:relative;overflow:hidden}.dvm-video-thumb img{object-fit:cover;width:100%;height:100%}.dvm-video-thumb svg{width:20px;height:20px;color:var(--color-sage-muted)}.dvm-video-info{flex-direction:column;gap:2px;min-width:0;display:flex}.dvm-video-title{color:var(--color-ink-strong);font-size:var(--text-body-sm);-webkit-line-clamp:1;-webkit-box-orient:vertical;font-weight:700;display:-webkit-box;overflow:hidden}.dvm-video-meta{align-items:center;gap:var(--space-3);color:var(--color-sage-muted);font-size:var(--text-label);font-weight:600;display:flex}.dvm-video-meta span{align-items:center;gap:4px;display:inline-flex}.dvm-video-meta svg{width:12px;height:12px}.dvm-filename{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dvm-summary-loading{padding:var(--space-3) 0;text-align:center}.dvm-summary-error{color:var(--color-warning,#d97706);font-size:var(--text-body-sm);font-weight:600}.dvm-dependencies-card{gap:var(--space-3);border:1px solid var(--color-line);border-radius:var(--radius-lg);padding:var(--space-4);background:var(--color-paper);flex-direction:column;display:flex}.dvm-dep-header{border-bottom:1px solid var(--color-line);padding-bottom:var(--space-2)}.dvm-dep-title{color:var(--color-ink-strong);font-size:var(--text-label);text-transform:uppercase;letter-spacing:.04em;font-weight:800}.dvm-dep-group{flex-direction:column;gap:4px;display:flex}.dvm-dep-subtitle{align-items:center;gap:var(--space-2);font-size:var(--text-body-sm);font-weight:700;display:inline-flex}.dvm-dep-subtitle.is-warning{color:#b45309}.dvm-dep-subtitle.is-info{color:#0369a1}.dvm-dep-subtitle svg{width:14px;height:14px}.dvm-dep-list{padding-left:var(--space-4);color:var(--color-ink-strong);font-size:var(--text-body-sm);margin:0;line-height:1.5}.dvm-dep-list li{margin-bottom:2px}.dvm-dep-list em{color:var(--color-forest);font-style:normal;font-weight:700}.dvm-dep-clean{align-items:center;gap:var(--space-2);color:var(--color-success,#059669);font-size:var(--text-body-sm);font-weight:700;display:flex}.dvm-dep-clean svg{width:16px;height:16px}.dvm-confirmation-text p{color:var(--color-sage-muted);font-size:var(--text-body-sm);margin:0;line-height:1.45}.dvm-confirmation-text strong{color:var(--color-ink-strong)}.dvm-footer{justify-content:flex-end;align-items:center;gap:var(--space-3);border-top:1px solid var(--color-line);padding:var(--space-4) var(--space-5);background:var(--color-paper-warm);display:flex}.dvm-footer .is-danger-btn{color:#dc2626;background:#fef2f2;border-color:#fca5a5}.dvm-footer .is-danger-btn:hover:not(:disabled){color:#fff;background:#dc2626;border-color:#f87171}.dam-overlay{z-index:1000;padding:var(--space-4);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172aa6;justify-content:center;align-items:center;animation:.2s ease-out damFadeIn;display:flex;position:fixed;inset:0}@keyframes damFadeIn{0%{opacity:0}to{opacity:1}}.dam-card{border:1px solid var(--color-line);border-radius:var(--radius-xl);background:var(--color-paper);width:100%;max-width:560px;max-height:90vh;box-shadow:var(--shadow-2xl);flex-direction:column;animation:.2s cubic-bezier(.16,1,.3,1) damSlideUp;display:flex;overflow:hidden}@keyframes damSlideUp{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.dam-header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);border-bottom:1px solid var(--color-line);padding:var(--space-5);background:var(--color-paper-warm);display:flex}.dam-header-info{flex-direction:column;gap:2px;min-width:0;display:flex}.dam-eyebrow{color:var(--color-forest);font-size:var(--text-label);text-transform:uppercase;letter-spacing:.05em;font-weight:800}.dam-title{color:var(--color-ink-strong);font-size:var(--text-heading-md);margin:0;font-weight:800}.dam-video-name{margin:var(--space-1) 0 0;color:var(--color-sage-muted);font-size:var(--text-body-sm);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.dam-close-btn{border-radius:var(--radius-pill);width:32px;height:32px;color:var(--color-sage-muted);cursor:pointer;transition:color var(--transition-fast), background var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.dam-close-btn:hover{color:var(--color-ink-strong);background:#0000000f}.dam-context-bar{border-bottom:1px solid var(--color-line);padding:var(--space-3) var(--space-5);color:var(--color-sage-muted);background:var(--color-paper);font-size:var(--text-body-sm);font-weight:600}.dam-body{padding:var(--space-5);flex:1;overflow-y:auto}.dam-state{justify-content:center;align-items:center;gap:var(--space-3);padding:var(--space-8) var(--space-4);text-align:center;flex-direction:column;display:flex}.dam-state--loading{color:var(--color-sage-muted)}.dam-state--loading .spinner-icon{width:28px;height:28px;animation:1s linear infinite damSpin}@keyframes damSpin{to{transform:rotate(360deg)}}.dam-state--empty svg{width:40px;height:40px;color:var(--color-sage-muted);opacity:.6}.dam-state--empty p{color:var(--color-ink-strong);font-size:var(--text-body-md);margin:0;font-weight:700}.dam-state--empty span{color:var(--color-sage-muted);font-size:var(--text-body-sm)}.dam-school-list{gap:var(--space-3);flex-direction:column;display:flex}.dam-school-row{justify-content:space-between;align-items:center;gap:var(--space-3);border:1px solid var(--color-line);border-radius:var(--radius-lg);padding:var(--space-3) var(--space-4);background:var(--color-paper);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);display:flex}.dam-school-row:hover{border-color:var(--color-line-strong);box-shadow:var(--shadow-sm)}.dam-school-info{align-items:center;gap:var(--space-3);min-width:0;display:flex}.dam-school-icon{width:20px;height:20px;color:var(--color-forest);flex-shrink:0}.dam-school-name{color:var(--color-ink-strong);font-size:var(--text-body-sm);text-overflow:ellipsis;white-space:nowrap;font-weight:800;display:block;overflow:hidden}.dam-school-code{color:var(--color-sage-muted);font-size:var(--text-label);font-weight:600;display:block}.dam-school-actions{align-items:center;gap:var(--space-3);flex-shrink:0;display:flex}.dam-status-text{font-size:var(--text-body-sm);transition:color var(--transition-fast);-webkit-user-select:none;user-select:none;font-weight:700}.dam-status-text.is-enabled{color:#059669}.dam-status-text.is-disabled{color:var(--color-sage-muted)}.dam-switch{cursor:pointer;border-radius:var(--radius-pill);background:0 0;border:none;outline:none;justify-content:center;align-items:center;padding:2px;display:inline-flex}.dam-switch:focus-visible .dam-switch-track{box-shadow:0 0 0 2px var(--color-paper), 0 0 0 4px var(--color-forest)}.dam-switch:disabled{opacity:.55;cursor:wait}.dam-switch-track{border-radius:12px;align-items:center;width:44px;height:24px;transition:background-color .2s cubic-bezier(.4,0,.2,1),border-color .2s cubic-bezier(.4,0,.2,1);display:inline-flex;position:relative}.dam-switch.is-off .dam-switch-track{border:1px solid var(--color-line-strong);background-color:var(--color-paper-warm)}.dam-switch.is-off:hover:not(:disabled) .dam-switch-track{background-color:#e2e8f0;border-color:#94a3b8}.dam-switch.is-on .dam-switch-track{background-color:#10b981;border:1px solid #059669}.dam-switch.is-on:hover:not(:disabled) .dam-switch-track{background-color:#059669;border-color:#047857}.dam-switch-thumb{background-color:#fff;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;transition:transform .2s cubic-bezier(.4,0,.2,1);display:flex;position:absolute;left:2px;box-shadow:0 1px 3px #00000040}.dam-switch.is-on .dam-switch-thumb{transform:translate(20px)}.dam-switch-spinner{width:12px;height:12px;color:var(--color-sage-muted);animation:1s linear infinite damSpin}.dam-tooltip-wrapper{align-items:center;display:inline-flex;position:relative}.dam-tooltip-wrapper:before{content:attr(data-tooltip);z-index:30;border-radius:var(--radius-md,6px);color:#fff;font-family:var(--font-body);white-space:nowrap;pointer-events:none;opacity:0;visibility:hidden;background:#0f172a;padding:4px 10px;font-size:11px;font-weight:700;transition:opacity .15s,transform .15s cubic-bezier(.16,1,.3,1),visibility .15s;position:absolute;bottom:calc(100% + 8px);right:0;transform:translateY(4px);box-shadow:0 4px 14px #0f172a40}.dam-tooltip-wrapper:after{content:"";z-index:30;pointer-events:none;opacity:0;visibility:hidden;border:5px solid #0000;border-top:6px solid #0f172a;border-bottom-width:0;transition:opacity .15s,visibility .15s;position:absolute;bottom:calc(100% + 2px);right:16px}.dam-tooltip-wrapper:hover:before,.dam-tooltip-wrapper:hover:after{opacity:1;visibility:visible;transform:translateY(0)}.dam-footer{border-top:1px solid var(--color-line);padding:var(--space-4) var(--space-5);background:var(--color-paper-warm);justify-content:flex-end;align-items:center;display:flex}.evm-overlay{z-index:1000;padding:var(--space-4);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172aa6;justify-content:center;align-items:center;animation:.2s ease-out evmFadeIn;display:flex;position:fixed;inset:0}@keyframes evmFadeIn{0%{opacity:0}to{opacity:1}}.evm-card{border:1px solid var(--color-line);border-radius:var(--radius-xl);background:var(--color-paper);width:100%;max-width:540px;max-height:85vh;box-shadow:var(--shadow-2xl);flex-direction:column;animation:.2s cubic-bezier(.16,1,.3,1) evmSlideUp;display:flex;overflow:hidden}@keyframes evmSlideUp{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.evm-header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);border-bottom:1px solid var(--color-line);padding:var(--space-5);background:var(--color-paper-warm);flex-shrink:0;display:flex}.evm-form{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.evm-header-info{flex-direction:column;gap:2px;display:flex}.evm-eyebrow{color:var(--color-forest);font-size:var(--text-label);text-transform:uppercase;letter-spacing:.05em;font-weight:800}.evm-title{color:var(--color-ink-strong);font-size:var(--text-heading-md);margin:0;font-weight:800}.evm-close-btn{border-radius:var(--radius-pill);width:32px;height:32px;color:var(--color-sage-muted);cursor:pointer;transition:color var(--transition-fast), background var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.evm-close-btn:hover:not(:disabled){color:var(--color-ink-strong);background:#0000000f}.evm-body{gap:var(--space-4);min-height:0;padding:var(--space-5);flex-direction:column;flex:1;display:flex;overflow-y:auto}.evm-error-alert{border:1px solid var(--color-danger-border,#fca5a5);border-radius:var(--radius-md);padding:var(--space-3);color:var(--color-danger,#dc2626);background:var(--color-danger-bg,#fef2f2);font-size:var(--text-body-sm);font-weight:700}.evm-preview-section{gap:var(--space-2);flex-direction:column;display:flex}.evm-field-label{color:var(--color-ink-strong);font-size:var(--text-body-sm);font-weight:800}.evm-preview-container{aspect-ratio:16/9;border:1px solid var(--color-line);border-radius:var(--radius-lg);background:#0f172a;justify-content:center;align-items:center;width:100%;display:flex;position:relative;overflow:hidden}.evm-preview-iframe{border:0;width:100%;height:100%}.evm-preview-thumbnail{object-fit:cover;width:100%;height:100%}.evm-preview-placeholder{align-items:center;gap:var(--space-2);color:var(--color-sage-muted);font-size:var(--text-body-sm);flex-direction:column;font-weight:600;display:flex}.evm-placeholder-icon{width:32px;height:32px}.evm-field{gap:var(--space-2);flex-direction:column;display:flex}.evm-field label{color:var(--color-ink-strong);font-size:var(--text-body-sm);font-weight:800}.evm-required{color:var(--color-danger)}.evm-optional{color:var(--color-sage-muted);font-weight:600}.evm-field input[type=text]{border:1px solid var(--color-line-strong);border-radius:var(--radius-lg);width:100%;min-height:42px;padding:0 var(--space-3);color:var(--color-evergreen-ink);background:var(--color-paper);font-family:var(--font-body);font-size:var(--text-body-md);box-sizing:border-box;transition:border-color var(--transition-fast), box-shadow var(--transition-fast);font-weight:600}.evm-field input[type=text]:focus{border-color:var(--color-forest);outline:none;box-shadow:0 0 0 3px #05966926}.evm-hint{color:var(--color-sage-muted);font-size:var(--text-label);font-weight:600}.evm-dropzone{padding:var(--space-5) var(--space-4);border:2px dashed var(--color-line-strong);border-radius:var(--radius-lg);background:var(--color-paper-warm);cursor:pointer;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:6px;transition:border-color .15s,background-color .15s;display:flex}.evm-dropzone:hover:not(.is-disabled){border-color:var(--color-forest);background:#10b9810a}.evm-dropzone.is-dragging{border-color:var(--color-forest);background:#10b98114}.evm-dropzone.is-disabled{opacity:.6;cursor:not-allowed}.evm-dropzone-icon{width:24px;height:24px;color:var(--color-forest)}.evm-dropzone-text{font-size:var(--text-body-sm);color:var(--color-ink-strong);font-weight:500}.evm-dropzone-hint{font-size:var(--text-label);color:var(--color-sage-muted);font-weight:600}.evm-selected-file-card{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);background:#f0fdf4;border:1px solid #bbf7d0;display:flex}.evm-selected-file-info{align-items:center;gap:var(--space-3);min-width:0;display:flex}.evm-file-icon-wrap{border-radius:var(--radius-md);color:#15803d;background:#dcfce7;flex-shrink:0;place-items:center;width:36px;height:36px;display:grid}.evm-file-icon-wrap svg{width:18px;height:18px}.evm-file-meta{flex-direction:column;gap:2px;min-width:0;display:flex}.evm-file-name{font-size:var(--text-body-sm);color:#14532d;text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.evm-file-size{font-size:var(--text-label);color:#15803d;font-weight:600}.evm-remove-file-btn{border-radius:var(--radius-pill);color:#15803d;cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;transition:background-color .15s,color .15s;display:inline-flex}.evm-remove-file-btn:hover:not(:disabled){color:#14532d;background:#dcfce7}.evm-progress-box{gap:var(--space-2);padding:var(--space-3) var(--space-4);border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-paper-warm);flex-direction:column;display:flex}.evm-progress-header{font-size:var(--text-body-sm);color:var(--color-forest);justify-content:space-between;align-items:center;font-weight:700;display:flex}.evm-progress-track{border-radius:var(--radius-pill);background:var(--color-line);width:100%;height:8px;overflow:hidden}.evm-progress-fill{background:var(--color-forest);border-radius:var(--radius-pill);height:100%;transition:width .2s ease-out}.evm-meta-box{gap:var(--space-3);border:1px solid var(--color-line);border-radius:var(--radius-lg);padding:var(--space-3) var(--space-4);background:var(--color-paper-warm);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.evm-meta-item{flex-direction:column;gap:2px;display:flex}.evm-meta-label{align-items:center;gap:var(--space-1);color:var(--color-sage-muted);font-size:var(--text-label);font-weight:700;display:inline-flex}.evm-meta-label svg{width:13px;height:13px}.evm-meta-value{color:var(--color-ink-strong);font-size:var(--text-body-sm);text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.evm-status-pill{border-radius:var(--radius-pill);padding:2px var(--space-2);font-size:var(--text-label);text-transform:uppercase;align-self:flex-start;align-items:center;font-weight:800;display:inline-flex}.evm-status-pill.is-published{color:var(--color-success);background:var(--color-success-bg)}.evm-status-pill.is-draft{color:var(--color-sage-muted);background:var(--color-sage-50)}.evm-status-pill.is-processing{color:var(--color-warning);background:var(--color-warning-bg)}.evm-footer{justify-content:flex-end;align-items:center;gap:var(--space-3);border-top:1px solid var(--color-line);padding:var(--space-4) var(--space-5);background:var(--color-paper-warm);flex-shrink:0;display:flex}.network-page.curriculum-workspace-page{max-width:100%;overflow:visible}.curriculum-workspace-main{align-content:start;gap:var(--space-6);width:100%;min-width:0;max-width:100%;padding-bottom:var(--space-7,var(--space-8));display:grid}.curriculum-workspace-hero{justify-content:space-between;align-items:flex-end;gap:var(--space-5);border-bottom:1px solid var(--color-line);padding-bottom:var(--space-5);display:flex}.curriculum-workspace-hero .text-label{color:var(--color-forest)}.curriculum-workspace-hero h1{margin:var(--space-2) 0;font-family:var(--font-display)}.curriculum-workspace-hero p{max-width:760px;color:var(--color-sage-muted);margin:0}.curriculum-workflow-key{justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap;display:flex}.curriculum-workflow-key span{align-items:center;gap:var(--space-2);color:var(--color-sage-muted);font-size:var(--text-body-sm);white-space:nowrap;font-weight:800;display:inline-flex}.curriculum-workflow-key b{width:26px;height:26px;color:var(--color-forest);background:var(--color-forest-soft);font-family:var(--font-mono);border-radius:50%;place-items:center;font-size:11px;display:grid}.curriculum-workspace-grid{align-items:start;gap:var(--space-6,24px);grid-template-columns:minmax(0,1fr) 340px;min-width:0;max-width:100%;transition:grid-template-columns .25s cubic-bezier(.16,1,.3,1),gap .25s cubic-bezier(.16,1,.3,1);display:grid}.curriculum-workspace-grid.is-tree-mode{grid-template-columns:minmax(0,1fr) 0;gap:0}.curriculum-global-panel,.curriculum-publish-panel{border:1px solid var(--color-line);border-radius:calc(var(--radius-lg) + 4px);background:var(--color-paper);min-width:0}.curriculum-publish-panel{opacity:1;transition:opacity .2s,transform .25s cubic-bezier(.16,1,.3,1),visibility .25s;transform:translate(0)}.curriculum-publish-panel.is-collapsed{opacity:0;visibility:hidden;pointer-events:none;overflow:hidden;transform:translate(24px)}.curriculum-global-panel{gap:var(--space-5);padding:clamp(var(--space-4), 2vw, var(--space-6));display:grid;box-shadow:0 12px 34px #18211d0d}.curriculum-global-panel>header,.curriculum-publish-panel>header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.curriculum-global-panel>header>div,.curriculum-publish-panel>header>div{align-items:flex-start;gap:var(--space-3);min-width:0;display:flex}.curriculum-global-panel h2,.curriculum-publish-panel h2{margin:0 0 var(--space-1);font-family:var(--font-display);font-size:var(--text-heading-md);line-height:1.2}.curriculum-global-panel header p,.curriculum-publish-panel header p{color:var(--color-sage-muted);font-size:var(--text-body-sm);margin:0}.curriculum-panel-icon{border-radius:var(--radius-lg);width:42px;height:42px;color:var(--color-forest);background:var(--color-forest-soft);flex:0 0 42px;place-items:center;display:grid}.curriculum-panel-icon svg{width:20px;height:20px}.curriculum-upload-banner{align-items:start;gap:var(--space-2);border:1px solid var(--color-info-border);border-radius:var(--radius-lg);padding:var(--space-3);color:var(--color-evergreen-ink);background:var(--color-forest-soft);font-size:var(--text-body-sm);grid-template-columns:auto 1fr;margin:0;display:grid}.curriculum-upload-banner svg{width:16px;height:16px;color:var(--color-forest);margin-top:1px}.curriculum-library-metrics{gap:var(--space-2);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid}.curriculum-library-metrics div{border-radius:var(--radius-lg);padding:var(--space-3);background:var(--color-paper-warm);border:1px solid #0000}.curriculum-library-metrics div:first-child{border-color:var(--color-line);background:var(--color-paper)}.curriculum-library-metrics dt{color:var(--color-sage-muted);font-size:var(--text-label);letter-spacing:.04em;text-transform:uppercase;font-weight:800}.curriculum-library-metrics dd{margin:var(--space-1) 0 0;color:var(--color-evergreen-ink);font-family:var(--font-mono);font-size:var(--text-heading-md);font-weight:900}.curriculum-library-tools{align-items:center;gap:var(--space-3);display:flex}.curriculum-library-tools label{align-items:center;gap:var(--space-2);border:1px solid var(--color-line-strong);border-radius:var(--radius-lg);min-width:0;min-height:44px;padding:0 var(--space-3);background:var(--color-paper-warm);transition:border-color var(--transition-base), box-shadow var(--transition-base);flex:1;display:flex}.curriculum-library-tools label:focus-within{border-color:var(--color-marigold);box-shadow:var(--shadow-focus)}.curriculum-library-tools svg{width:18px;color:var(--color-sage-muted)}.curriculum-library-tools input{width:100%;min-width:0;color:var(--color-evergreen-ink);background:0 0;border:0;outline:0}.curriculum-library-tools>span{color:var(--color-sage-muted);font-size:var(--text-body-sm);white-space:nowrap;font-weight:800}.curriculum-library-filter-list{gap:var(--space-2);flex-wrap:wrap;display:flex}.curriculum-library-filter-list button{align-items:center;gap:var(--space-2);border-radius:var(--radius-pill);min-height:34px;padding:5px 7px 5px var(--space-3);color:var(--color-sage-muted);background:var(--color-sage-50);font-size:var(--text-body-sm);transition:color var(--transition-base), border-color var(--transition-base), background-color var(--transition-base), transform var(--transition-base);border:1px solid #0000;font-weight:800;display:inline-flex}.curriculum-library-filter-list button:hover{border-color:var(--color-line-strong);color:var(--color-evergreen-ink);transform:translateY(-1px)}.curriculum-library-filter-list button.is-active{border-color:var(--color-forest);color:var(--color-forest);background:var(--color-forest-soft)}.curriculum-library-filter-list b{border-radius:var(--radius-pill);min-width:22px;height:22px;color:var(--color-evergreen-ink);background:var(--color-paper);font-family:var(--font-mono);place-items:center;padding:0 5px;font-size:11px;display:grid}.curriculum-tree{gap:var(--space-3);display:grid}.curriculum-tree-grade{border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-paper);min-width:0;overflow:hidden}.curriculum-tree-grade.is-unassigned{border-style:dashed}.curriculum-tree-toggle{align-items:center;gap:var(--space-2);width:100%;color:inherit;background:var(--color-forest-soft);text-align:left;cursor:pointer;border:0;padding:12px 14px;display:flex}.curriculum-tree-toggle.is-week{border-bottom:1px solid var(--color-line);background:0 0;padding-inline:12px}.curriculum-tree-toggle svg{width:18px;height:18px;color:var(--color-forest);flex:0 0 18px}.curriculum-tree-toggle strong{min-width:0;font-size:var(--text-body);flex:auto}.curriculum-tree-toggle span{color:var(--color-sage-muted);font-size:var(--text-body-sm);white-space:nowrap;font-weight:700}.curriculum-tree-grade__body{gap:var(--space-2);padding:var(--space-3);display:grid}.curriculum-tree-week{border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-paper);min-width:0}.curriculum-tree-week .curriculum-global-video-list{padding:0 var(--space-3) var(--space-3)}.curriculum-tree-grade__body>.curriculum-global-video-list{padding:0}.curriculum-tree-empty{padding:0 var(--space-3) var(--space-3);color:var(--color-sage-muted);font-size:var(--text-body-sm);margin:0}.curriculum-tree-grade__body>.curriculum-tree-empty{padding:0}.curriculum-global-video-list{border:1px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-paper);grid-template-columns:minmax(0,1fr);gap:0;display:grid;overflow:hidden}.curriculum-video-card{border:0;border-bottom:1px solid var(--color-line);background:var(--color-paper);min-width:0;transition:background-color var(--transition-base);border-radius:0;grid-template-columns:auto minmax(0,1fr) auto auto auto;align-items:center;gap:10px 12px;padding:8px 10px;display:grid;position:relative;overflow:hidden}.curriculum-video-card:last-child{border-bottom:0}.curriculum-video-card:hover{background:var(--color-forest-soft)}.curriculum-video-card.has-pending-targets{background:var(--color-paper)}.curriculum-video-card.has-pending-targets:before{content:"";background:var(--color-forest);width:3px;position:absolute;inset:0 auto 0 0}.curriculum-video-card__thumb{border-radius:var(--radius-sm);width:64px;height:42px;color:var(--color-on-dark);background:linear-gradient(135deg, var(--color-forest-800), var(--color-forest));place-items:center;display:grid;position:relative;overflow:hidden}.curriculum-video-card__thumb img{object-fit:cover;width:100%;height:100%;transition:transform var(--transition-slow)}.curriculum-video-card:hover .curriculum-video-card__thumb img{transform:none}.curriculum-video-card__thumb>svg{opacity:.92;width:18px;height:18px}.curriculum-video-card__copy{gap:2px;min-width:0;display:grid}.curriculum-video-card__title{min-width:0;color:var(--color-evergreen-ink);text-align:start;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:800;line-height:1.3;overflow:hidden}.curriculum-video-card__meta{min-width:0;color:var(--color-sage-muted);font-family:var(--font-mono);flex-wrap:wrap;align-items:center;gap:8px;font-size:10px;font-weight:700;display:flex}.curriculum-video-card__meta span,.curriculum-video-card__meta button{min-width:0;color:inherit;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;align-items:center;gap:5px;padding:0;display:inline-flex;overflow:hidden}.curriculum-video-card__meta button{cursor:pointer}.curriculum-video-card__meta button:hover{color:var(--color-forest)}.curriculum-video-card__meta svg{flex:0 0 13px;width:13px;height:13px}.curriculum-video-card__actions{align-items:center;gap:var(--space-1);margin-left:var(--space-2);display:flex}.curriculum-video-card__actions button{border:1px solid var(--color-line);border-radius:var(--radius-md);width:32px;height:32px;color:var(--color-sage-muted);background:var(--color-paper);cursor:pointer;transition:border-color var(--transition-fast), color var(--transition-fast), background var(--transition-fast);justify-content:center;align-items:center;display:inline-flex}.curriculum-video-card__actions button:hover{border-color:var(--color-line-strong);color:var(--color-ink-strong);background:var(--color-paper-warm)}.curriculum-video-card__actions button.is-delete:hover{border-color:var(--color-danger-border,#fca5a5);color:var(--color-danger,#dc2626);background:var(--color-danger-bg,#fef2f2)}.curriculum-video-card__actions svg{width:14px;height:14px}.curriculum-processing-badge{border-radius:var(--radius-pill);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;flex:none;align-items:center;gap:5px;padding:3px 8px 3px 7px;font-size:9px;font-weight:800;display:inline-flex}.curriculum-processing-badge i{background:currentColor;border-radius:50%;flex:0 0 6px;width:6px;height:6px}.curriculum-processing-badge.is-completed{color:var(--color-success);background:var(--color-success-bg)}.curriculum-processing-badge.is-processing{color:var(--color-warning);background:var(--color-warning-bg)}.curriculum-processing-badge.is-processing i{animation:1.1s ease-in-out infinite alternate curriculum-summary-pulse}.curriculum-processing-badge.is-failed{color:var(--color-danger);background:var(--color-danger-bg)}.curriculum-processing-badge.is-unavailable{color:var(--color-sage-muted);background:var(--color-sage-50)}.curriculum-processing-progress{align-items:center;gap:var(--space-2);grid-template-columns:minmax(0,1fr) auto;max-width:220px;display:grid}.curriculum-processing-progress>span{border-radius:var(--radius-pill);background:var(--color-sage-100);height:6px;overflow:hidden}.curriculum-processing-progress i{border-radius:inherit;background:linear-gradient(90deg, var(--color-marigold), var(--color-forest));height:100%;transition:width .32s;display:block}.curriculum-processing-progress b{color:var(--color-sage-muted);font-family:var(--font-mono);font-size:11px;font-weight:700}.curriculum-video-card__assignments-note{color:var(--color-sage-muted);font-size:var(--text-body-sm);align-items:center;gap:6px;font-weight:700;display:inline-flex}.curriculum-video-card__assignments-note svg{width:13px;height:13px}.curriculum-video-card__assignments-note.is-loading{animation:1.1s ease-in-out infinite alternate curriculum-summary-pulse}.curriculum-video-card__assignments-note.is-error{color:var(--color-danger)}.curriculum-video-card>.button{flex:none;min-width:92px;min-height:32px;font-size:12px}.curriculum-video-card__pending{border-radius:var(--radius-pill);min-height:28px;color:var(--color-marigold-600);background:var(--color-marigold-100);white-space:nowrap;flex:none;align-items:center;padding:0 8px;font-size:11px;font-weight:800;display:inline-flex}.curriculum-library-assignment-error{justify-content:space-between;align-items:center;gap:var(--space-3);border-radius:var(--radius-lg);padding:var(--space-2) var(--space-3);color:#8b2c25;font-size:var(--text-body-sm);background:#fff0ee;border:1px solid #e6b4ae;font-weight:700;display:flex}.curriculum-library-assignment-error button{color:inherit;text-underline-offset:3px;background:0 0;border:0;flex:none;padding:4px;font-weight:900;text-decoration:underline}.curriculum-filter-empty{justify-items:center;gap:var(--space-2);display:grid}.curriculum-filter-empty>button{padding:var(--space-2);color:var(--color-forest);text-underline-offset:3px;background:0 0;border:0;font-weight:800;text-decoration:underline}.curriculum-video-pagination{justify-items:center;gap:var(--space-2);border-top:1px solid var(--color-line);padding-top:var(--space-3);display:grid}.curriculum-video-pagination p,.curriculum-video-pagination span{color:var(--color-sage-muted);font-size:var(--text-body-sm);text-align:center;margin:0;font-weight:700}.curriculum-video-pagination p{color:var(--color-danger)}.curriculum-publish-panel{top:var(--space-4);align-self:start;gap:var(--space-4);max-height:calc(100vh - var(--space-4) - var(--space-4));max-height:calc(100dvh - var(--space-4) - var(--space-4));padding:var(--space-5);background:linear-gradient(180deg, var(--color-paper-warm), var(--color-paper));box-shadow:var(--shadow-card);grid-template-rows:auto minmax(0,1fr) auto;display:grid;position:sticky;overflow:hidden}.curriculum-publish-panel__body{align-content:start;gap:var(--space-3);overscroll-behavior:contain;scrollbar-gutter:stable;min-height:0;padding-right:3px;display:grid;overflow-y:auto}.curriculum-pending-count{min-width:34px;height:34px;color:var(--color-on-dark);background:var(--color-forest);font-family:var(--font-mono);border-radius:50%;place-items:center;font-weight:900;display:grid}.curriculum-publish-error{border-radius:var(--radius-lg);padding:var(--space-3);color:#8b2c25;font-size:var(--text-body-sm);background:#fff0ee;border:1px solid #e6b4ae;margin:0;font-weight:700}.curriculum-pending-list{gap:var(--space-3);display:grid}.curriculum-pending-list>article{gap:var(--space-3);border:1px solid var(--color-line);border-radius:var(--radius-lg);padding:var(--space-3);background:var(--color-paper);animation:.22s ease-out both curriculum-workspace-reveal;display:grid}.curriculum-pending-list>article>header{align-items:center;gap:var(--space-2);grid-template-columns:auto minmax(0,1fr) auto auto;min-width:0;display:grid}.curriculum-pending-list>article>header>span{border-radius:var(--radius-lg);width:32px;height:32px;color:var(--color-forest);background:var(--color-forest-soft);place-items:center;display:grid}.curriculum-pending-list header strong,.curriculum-pending-list header small{display:block}.curriculum-pending-list header small{color:var(--color-sage-muted);margin-top:2px}.curriculum-pending-list header button,.curriculum-pending-targets button{width:30px;height:30px;color:var(--color-sage-muted);transition:color var(--transition-base), background-color var(--transition-base);background:0 0;border:0;border-radius:50%;place-items:center;display:grid}.curriculum-pending-list header button:hover,.curriculum-pending-targets button:hover{color:var(--color-forest);background:var(--color-forest-soft)}.curriculum-pending-list header button svg,.curriculum-pending-targets button svg{width:16px;height:16px}.curriculum-pending-targets{gap:var(--space-2);display:grid}.curriculum-pending-targets>div{align-items:center;gap:var(--space-2);border-left:3px solid var(--color-marigold);padding:var(--space-2) var(--space-2) var(--space-2) var(--space-3);background:var(--color-paper-warm);grid-template-columns:minmax(0,1fr) auto;display:grid}.curriculum-pending-targets strong,.curriculum-pending-targets span,.curriculum-pending-targets small{display:block}.curriculum-pending-targets span,.curriculum-pending-targets small{color:var(--color-sage-muted);font-size:var(--text-label);margin-top:2px}.curriculum-publish-empty{align-content:center;justify-items:center;gap:var(--space-2);border:1px dashed var(--color-line-strong);border-radius:var(--radius-lg);min-height:250px;padding:var(--space-5);color:var(--color-sage-muted);text-align:center;display:grid}.curriculum-publish-empty>span{width:54px;height:54px;color:var(--color-forest);background:var(--color-forest-soft);border-radius:50%;place-items:center;display:grid}.curriculum-publish-empty h3,.curriculum-publish-empty p{margin:0}.curriculum-publish-empty h3{color:var(--color-evergreen-ink)}.curriculum-publish-panel>footer{gap:var(--space-3);border-top:1px solid var(--color-line);padding-top:var(--space-4);display:grid}.curriculum-publish-panel>footer strong,.curriculum-publish-panel>footer small{display:block}.curriculum-publish-panel>footer small{color:var(--color-sage-muted);margin-top:3px}.curriculum-publish-panel>footer .button{width:100%;min-height:48px}.curriculum-modal-backdrop{z-index:2000;padding:var(--space-5);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0d1e189e;place-items:center;animation:.18s ease-out both curriculum-modal-fade;display:grid;position:fixed;inset:0;overflow-y:auto}.curriculum-published-dialog{border:1px solid var(--color-line);border-radius:calc(var(--radius-lg) + 6px);background:var(--color-paper);grid-template-rows:auto auto minmax(0,1fr);width:min(940px,100%);max-height:calc(100vh - 40px);animation:.22s ease-out both curriculum-dialog-enter;display:grid;overflow:hidden;box-shadow:0 28px 80px #0a181247}.curriculum-published-dialog>header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);border-bottom:1px solid var(--color-line);padding:var(--space-5);background:linear-gradient(135deg, var(--color-paper-warm), var(--color-paper));display:flex}.curriculum-published-dialog__title{align-items:center;gap:var(--space-3);min-width:0;display:flex}.curriculum-published-dialog__title>span{border-radius:var(--radius-lg);width:96px;height:62px;color:var(--color-on-dark);background:linear-gradient(135deg, var(--color-forest-800), var(--color-forest));flex:0 0 96px;place-items:center;display:grid;overflow:hidden}.curriculum-published-dialog__title img{object-fit:cover;width:100%;height:100%}.curriculum-published-dialog__title h2,.curriculum-published-dialog__title p{margin:0}.curriculum-published-dialog__title h2{font-family:var(--font-display);font-size:var(--text-heading-lg);margin:2px 0}.curriculum-published-dialog__title small,.curriculum-published-dialog__title p{color:var(--color-sage-muted)}.curriculum-published-dialog>header>button{width:38px;height:38px;color:var(--color-sage-muted);background:var(--color-sage-50);cursor:pointer;border:0;border-radius:50%;flex:0 0 38px;place-items:center;display:grid}.curriculum-published-dialog>header>button:disabled{opacity:.5;cursor:wait}.curriculum-published-dialog__metrics{gap:var(--space-2);border-bottom:1px solid var(--color-line);padding:var(--space-3) var(--space-5);background:var(--color-paper-warm);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.curriculum-published-dialog__metrics div{align-items:baseline;gap:var(--space-2);display:flex}.curriculum-published-dialog__metrics strong{color:var(--color-forest);font-family:var(--font-mono);font-size:var(--text-heading-md)}.curriculum-published-dialog__metrics span{color:var(--color-sage-muted);font-size:var(--text-body-sm);font-weight:800}.curriculum-published-dialog__list{align-content:start;gap:var(--space-3);padding:var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid;overflow-y:auto}.curriculum-published-dialog__list article{border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-paper-warm);min-width:0;animation:.22s ease-out both curriculum-workspace-reveal}.curriculum-published-dialog__list article>header{justify-content:space-between;align-items:center;gap:var(--space-2);border-bottom:1px solid var(--color-line);padding:var(--space-3);display:flex}.curriculum-published-dialog__list article>header>div{align-items:center;gap:var(--space-2);min-width:0;display:flex}.curriculum-published-dialog__error{border-radius:var(--radius-lg);padding:var(--space-3);color:#9b2f2f;font-size:var(--text-body-sm);background:#fff0ee;border:1px solid #e6b4ae;grid-column:1/-1;margin:0;font-weight:700}.curriculum-published-dialog__list article>header>.curriculum-published-dialog__actions{flex:none}.curriculum-published-dialog__list article>header>div:first-child strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.curriculum-published-dialog__list article>header svg{width:17px;color:var(--color-forest)}.curriculum-published-dialog__status{border-radius:var(--radius-pill);color:var(--color-forest);background:var(--color-forest-soft);text-transform:uppercase;padding:4px 8px;font-size:10px;font-weight:900}.curriculum-published-dialog__actions>button{border-radius:var(--radius-pill);color:#91362f;cursor:pointer;min-height:32px;transition:border-color var(--transition-base), background-color var(--transition-base), transform var(--transition-base);background:#fff4f2;border:1px solid #e0aaa4;align-items:center;gap:6px;padding:5px 10px;font-size:11px;font-weight:900;display:inline-flex}.curriculum-published-dialog__actions>button:hover:not(:disabled){background:#ffe6e2;border-color:#b94e45;transform:translateY(-1px)}.curriculum-published-dialog__actions>button:disabled{opacity:.6;cursor:wait}.curriculum-published-dialog__list .curriculum-published-dialog__actions>button svg{color:currentColor;width:14px;height:14px}.curriculum-published-dialog__actions>button .is-spinning{animation:.8s linear infinite curriculum-unpublish-spin}.curriculum-published-dialog__list dl{gap:var(--space-3);padding:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;display:grid}.curriculum-published-dialog__list dl>div.is-wide{grid-column:1/-1}.curriculum-published-dialog__list dt{color:var(--color-sage-muted);letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:5px;font-size:10px;font-weight:900;display:flex}.curriculum-published-dialog__list dt svg{width:13px;height:13px}.curriculum-published-dialog__list dd{color:var(--color-evergreen-ink);font-size:var(--text-body-sm);margin:4px 0 0;font-weight:800}.curriculum-published-dialog__list dd strong,.curriculum-published-dialog__list dd small{display:block}.curriculum-published-dialog__list dd small{color:var(--color-sage-muted);margin-top:2px;font-weight:600;line-height:1.4}@keyframes curriculum-summary-pulse{0%{opacity:.45}to{opacity:1}}@keyframes curriculum-unpublish-spin{to{transform:rotate(360deg)}}.curriculum-assignment-dialog{border:1px solid var(--color-line);border-radius:calc(var(--radius-lg) + 6px);background:var(--color-paper);grid-template-rows:auto minmax(0,1fr);width:min(960px,100%);max-height:calc(100vh - 40px);animation:.22s ease-out both curriculum-dialog-enter;display:grid;overflow:hidden;box-shadow:0 28px 80px #0a181247}.curriculum-assignment-dialog>header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);border-bottom:1px solid var(--color-line);padding:var(--space-5);background:linear-gradient(135deg, var(--color-paper-warm), var(--color-paper));display:flex}.curriculum-assignment-dialog>header .text-label{color:var(--color-forest)}.curriculum-assignment-dialog>header h2{margin:var(--space-1) 0;font-family:var(--font-display);font-size:var(--text-heading-lg)}.curriculum-assignment-dialog>header p{color:var(--color-sage-muted);margin:0}.curriculum-assignment-dialog>header>button{width:38px;height:38px;color:var(--color-sage-muted);background:var(--color-sage-50);border:0;border-radius:50%;flex:0 0 38px;place-items:center;display:grid}.curriculum-assignment-dialog>form{gap:var(--space-4);padding:var(--space-5);display:grid;overflow-y:auto}.curriculum-assignment-dialog__state{align-content:center;justify-items:center;gap:var(--space-2);min-height:260px;padding:var(--space-6);color:var(--color-sage-muted);text-align:center;display:grid}.curriculum-assignment-dialog__state>svg{width:28px;height:28px;color:var(--color-forest)}.curriculum-assignment-dialog__state>strong{color:var(--color-evergreen-ink)}.curriculum-assignment-dialog__state.is-error>strong,.curriculum-assignment-dialog__state.is-error>svg{color:#9b2f2f}.curriculum-assignment-dialog__state .button{margin-top:var(--space-2)}.curriculum-assignment-dialog__state .is-spinning{animation:.8s linear infinite curriculum-unpublish-spin}.curriculum-assignment-dialog__error,.curriculum-assignment-row__error{color:#9b2f2f;font-size:var(--text-body-sm);margin:0;font-weight:700}.curriculum-assignment-dialog__error{border-radius:var(--radius-lg);padding:var(--space-3);background:#fff0ee;border:1px solid #e6b4ae}.curriculum-assignment-rows{gap:var(--space-4);display:grid}.curriculum-assignment-rows>article{gap:var(--space-4);border:1px solid var(--color-line);border-radius:var(--radius-lg);padding:var(--space-4);background:var(--color-paper-warm);animation:.22s ease-out both curriculum-workspace-reveal;display:grid}.curriculum-assignment-rows>article.has-error{border-color:#ca746b}.curriculum-assignment-rows>article.is-read-only{background:var(--color-sage-50)}.curriculum-assignment-rows>article.is-editing{border-color:var(--color-forest);box-shadow:0 0 0 2px var(--color-forest-soft)}.curriculum-assignment-rows>article.is-collapsed{padding-block:var(--space-3);gap:0}.curriculum-assignment-rows>article>header{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.curriculum-assignment-row__title{align-items:center;gap:var(--space-2);min-width:0;display:flex}.curriculum-assignment-row__title>strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.curriculum-assignment-row__title>span{border-radius:var(--radius-pill);color:var(--color-forest);background:var(--color-forest-soft);letter-spacing:.04em;text-transform:uppercase;padding:4px 8px;font-size:10px;font-weight:900}.curriculum-assignment-rows>article>header svg{width:18px;color:var(--color-forest)}.curriculum-assignment-row__toggle{justify-content:space-between;align-items:center;gap:var(--space-3);width:100%;min-width:0;color:var(--color-evergreen-ink);text-align:left;cursor:pointer;background:0 0;border:0;padding:0;display:flex}.curriculum-assignment-row__toggle>svg{flex:none;transition:transform .16s}.curriculum-assignment-row__toggle[aria-expanded=true]>svg{transform:rotate(180deg)}.curriculum-assignment-row__content{gap:var(--space-4);display:grid}.curriculum-assignment-row__content>.curriculum-assignment-row__actions{padding-top:var(--space-3);border-top:1px solid var(--color-line)}.curriculum-assignment-row__actions{justify-content:flex-end;align-items:center;gap:var(--space-2);display:flex}.curriculum-assignment-row__actions>button{border:1px solid var(--color-line-strong);border-radius:var(--radius-pill);min-height:32px;color:var(--color-forest);background:var(--color-paper);cursor:pointer;align-items:center;gap:6px;padding:5px 10px;font-size:11px;font-weight:900;display:inline-flex}.curriculum-assignment-row__actions>button:hover:not(:disabled){border-color:var(--color-forest);background:var(--color-forest-soft)}.curriculum-assignment-row__actions>button:disabled{opacity:.55;cursor:default}.curriculum-assignment-row__actions>button.is-danger{color:#91362f;background:#fff4f2;border-color:#e0aaa4}.curriculum-assignment-row__actions>button.is-danger:hover{background:#ffe6e2;border-color:#b94e45}.curriculum-assignment-row__actions>button.is-icon{color:#9b2f2f;background:#fde8e7;border-color:#0000;justify-content:center;width:32px;padding:0}.curriculum-assignment-rows .curriculum-assignment-row__actions>button svg{color:currentColor;width:14px;height:14px}.curriculum-assignment-fields{align-items:start;gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.curriculum-assignment-fields label{align-content:start;gap:var(--space-2);display:grid}.curriculum-assignment-field--schools{grid-column:1/-1}.curriculum-assignment-field--schools .searchable-multi-select__values{scrollbar-gutter:stable;max-height:76px;padding:2px;overflow-y:auto}.curriculum-assignment-field--schools .searchable-multi-select__chip{max-width:min(100%,320px)}.curriculum-assignment-field--schools .searchable-multi-select__chip>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.curriculum-assignment-fields label>span,.curriculum-assignment-rows legend{color:var(--color-evergreen-ink);font-size:var(--text-label);letter-spacing:.04em;text-transform:uppercase;font-weight:900}.curriculum-assignment-fields select{border:1px solid var(--color-line-strong);border-radius:var(--radius-lg);width:100%;min-width:0;min-height:44px;padding:0 var(--space-3);color:var(--color-evergreen-ink);background:var(--color-paper);font-weight:700}.curriculum-assignment-fields select:disabled{color:var(--color-sage-muted);background:var(--color-sage-50)}.curriculum-auto-divisions-note{align-items:flex-start;gap:var(--space-3);border:1px solid var(--color-line);border-radius:var(--radius-lg);padding:var(--space-3) var(--space-4);color:var(--color-forest);background:var(--color-forest-soft);display:flex}.curriculum-auto-divisions-note>svg{flex:none;width:18px;height:18px;margin-top:1px}.curriculum-auto-divisions-note>span,.curriculum-auto-divisions-note strong,.curriculum-auto-divisions-note small{display:block}.curriculum-auto-divisions-note small{color:var(--color-sage-muted);margin-top:3px;line-height:1.45}.curriculum-assignment-rows fieldset{border:0;min-width:0;margin:0;padding:0}.curriculum-assignment-rows legend{margin-bottom:var(--space-2)}.curriculum-audience-options{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.curriculum-audience-options>label{align-items:flex-start;gap:var(--space-2);border:1px solid var(--color-line);border-radius:var(--radius-lg);padding:var(--space-3);background:var(--color-paper);cursor:pointer;display:flex}.curriculum-audience-options>label:has(input:checked){border-color:var(--color-forest);background:var(--color-forest-soft)}.curriculum-assignment-rows fieldset:disabled .curriculum-audience-options>label{cursor:default}.curriculum-audience-options input{accent-color:var(--color-forest);margin-top:3px}.curriculum-audience-options strong,.curriculum-audience-options small{display:block}.curriculum-audience-options small{color:var(--color-sage-muted);margin-top:2px}.curriculum-division-options{gap:var(--space-2);border-top:1px solid var(--color-line);padding-top:var(--space-3);flex-wrap:wrap;display:flex}.curriculum-division-options label{align-items:center;gap:var(--space-2);border:1px solid var(--color-line);border-radius:var(--radius-pill);padding:var(--space-2) var(--space-3);background:var(--color-paper);cursor:pointer;font-weight:700;display:inline-flex}.curriculum-division-options label:has(input:checked){border-color:var(--color-forest);color:var(--color-forest);background:var(--color-forest-soft)}.curriculum-division-options input{accent-color:var(--color-forest)}.curriculum-division-options p{color:var(--color-sage-muted);margin:0}.curriculum-division-options.is-read-only>span{border:1px solid var(--color-line);border-radius:var(--radius-pill);padding:var(--space-2) var(--space-3);color:var(--color-sage-muted);background:var(--color-paper);font-weight:700}.curriculum-add-assignment{justify-self:start;align-items:center;gap:var(--space-2);border:1px dashed var(--color-forest);border-radius:var(--radius-lg);min-height:42px;padding:0 var(--space-3);color:var(--color-forest);background:var(--color-forest-soft);font-weight:900;display:inline-flex}.curriculum-add-assignment svg{width:17px}.curriculum-assignment-dialog form>footer{bottom:calc(-1 * var(--space-5));justify-content:flex-end;gap:var(--space-2);border-top:1px solid var(--color-line);margin:0 calc(-1 * var(--space-5)) calc(-1 * var(--space-5));padding:var(--space-4) var(--space-5);background:var(--color-paper);display:flex;position:sticky}@keyframes curriculum-modal-fade{0%{opacity:0}to{opacity:1}}@keyframes curriculum-dialog-enter{0%{opacity:0;transform:translateY(10px)scale(.99)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes curriculum-workspace-reveal{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (width<=1280px){.curriculum-workspace-grid{grid-template-columns:1fr}.curriculum-publish-panel{max-height:none;position:static}.curriculum-publish-panel__body{overflow-y:visible}}@media (width<=760px){.curriculum-workspace-hero{flex-direction:column;align-items:flex-start}.curriculum-workflow-key{justify-content:flex-start}.curriculum-global-panel>header,.curriculum-publish-panel>header{display:grid}.curriculum-published-dialog__list{grid-template-columns:1fr}.curriculum-global-panel>header>.button{width:100%}.curriculum-global-video-list{grid-template-columns:1fr}.curriculum-video-card{grid-template-columns:auto minmax(0,1fr) auto}.curriculum-video-card>.button{grid-column:1/-1}.curriculum-assignment-fields,.curriculum-audience-options{grid-template-columns:1fr}}@media (width<=560px){.curriculum-global-panel,.curriculum-publish-panel{margin-inline:calc(-1 * var(--space-4));padding:var(--space-4);border-inline:0;border-radius:0}.curriculum-library-metrics{grid-template-columns:1fr}.curriculum-library-tools{flex-direction:column;align-items:stretch}.curriculum-library-filter-list{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.curriculum-library-filter-list button{justify-content:space-between}.curriculum-video-card{grid-template-columns:auto minmax(0,1fr)}.curriculum-video-card__thumb{width:56px;height:38px}.curriculum-processing-badge,.curriculum-video-card__pending,.curriculum-video-card>.button{grid-column:1/-1;justify-self:start}.curriculum-library-assignment-error,.curriculum-assignment-rows>article>header{flex-direction:column;align-items:flex-start}.curriculum-assignment-row__actions{flex-wrap:wrap;justify-content:flex-start;width:100%}.curriculum-modal-backdrop{align-items:end;padding:0}.curriculum-assignment-dialog,.curriculum-published-dialog{border-radius:calc(var(--radius-lg) + 4px) calc(var(--radius-lg) + 4px) 0 0;width:100%;max-height:94vh}.curriculum-published-dialog>header,.curriculum-published-dialog__list{padding:var(--space-4)}.curriculum-published-dialog__title>span{flex-basis:72px;width:72px;height:52px}.curriculum-published-dialog__title p{display:none}.curriculum-published-dialog__list article>header{flex-direction:column;align-items:flex-start}.curriculum-published-dialog__list article>header>.curriculum-published-dialog__actions{justify-content:space-between;width:100%}.curriculum-published-dialog__metrics{padding-inline:var(--space-4)}.curriculum-assignment-dialog>header,.curriculum-assignment-dialog>form{padding:var(--space-4)}.curriculum-assignment-dialog form>footer{bottom:calc(-1 * var(--space-4));margin:0 calc(-1 * var(--space-4)) calc(-1 * var(--space-4));padding:var(--space-3) var(--space-4);grid-template-columns:1fr;display:grid}.curriculum-assignment-dialog form>footer .button{width:100%}}@media (prefers-reduced-motion:reduce){.curriculum-modal-backdrop,.curriculum-assignment-dialog,.curriculum-pending-list>article,.curriculum-published-dialog,.curriculum-published-dialog__list article{animation:none}.curriculum-video-card,.curriculum-video-card__thumb img,.curriculum-library-filter-list button,.curriculum-video-card__meta button,.curriculum-processing-progress i{transition:none}.curriculum-video-card:hover,.curriculum-video-card:hover .curriculum-video-card__thumb img{transform:none}.curriculum-processing-badge.is-processing i,.curriculum-video-card__assignments-note.is-loading{animation:none}.curriculum-published-dialog__actions>button{transition:none}}.curriculum-modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2000;background:#0f172a8c;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.curriculum-assignment-dialog{background:#fff;border:1px solid #cbd5e1;border-radius:16px;flex-direction:column;width:min(1560px,96vw);height:min(92vh,920px);max-height:calc(100vh - 40px);animation:.22s ease-out both curriculum-dialog-enter;display:flex;overflow:hidden;box-shadow:0 25px 70px -15px #00000059}.curriculum-dialog-header{background:#fff;border-bottom:1px solid #e2e8f0;flex:none;justify-content:space-between;align-items:center;gap:16px;padding:18px 28px;display:flex}.curriculum-dialog-header h2{font-family:var(--font-sans);color:#0f172a;margin:0;font-size:19px;font-weight:700}.curriculum-dialog-close-btn{color:#64748b;cursor:pointer;background:#f1f5f9;border:0;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;transition:all .15s;display:flex}.curriculum-dialog-close-btn:hover{color:#0f172a;background:#e2e8f0}.curriculum-assignment-form{flex-direction:column;flex:1;gap:20px;min-height:0;padding:24px 28px;display:flex;position:relative;overflow-y:auto}.curriculum-step-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;gap:14px;padding:18px 22px;display:grid}.curriculum-step-header{align-items:flex-start;gap:12px;display:flex}.curriculum-step-header--split{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px}.curriculum-step-header-left{align-items:flex-start;gap:12px;display:flex}.curriculum-step-badge{color:#fff;background:#047857;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;font-size:13px;font-weight:700;display:flex}.curriculum-step-title{color:#0f172a;margin:0;font-size:15px;font-weight:700;line-height:1.3}.curriculum-step-subtitle{color:#64748b;margin:2px 0 0;font-size:13px}.curriculum-step-body{gap:12px;display:grid}.curriculum-selected-count-badge{color:#475569;align-items:center;gap:6px;margin-top:2px;font-size:13px;font-weight:500;display:inline-flex}.curriculum-selected-count-badge svg{color:#059669;width:16px;height:16px}.curriculum-step-actions{align-items:center;gap:8px;display:flex}.curriculum-expand-btn{color:#1e293b;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:8px;align-items:center;gap:6px;padding:6px 14px;font-size:13px;font-weight:600;transition:all .15s;display:inline-flex}.curriculum-expand-btn:hover:not(:disabled){background:#f8fafc;border-color:#94a3b8}.curriculum-expand-btn:disabled{opacity:.45;cursor:not-allowed}.curriculum-expand-btn svg{color:#475569;width:15px;height:15px}.curriculum-empty-schools-notice{text-align:center;color:#64748b;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:12px;flex-direction:column;align-items:center;gap:8px;padding:28px;font-size:13.5px;display:flex}.curriculum-empty-schools-notice svg{color:#94a3b8;width:28px;height:28px}.curriculum-school-accordions{gap:14px;display:grid}.curriculum-school-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;transition:border-color .15s,box-shadow .15s;overflow:hidden}.curriculum-school-card.is-expanded{border-color:#cbd5e1;box-shadow:0 2px 8px #0f172a0a}.curriculum-school-card-header{cursor:pointer;-webkit-user-select:none;user-select:none;background:#fff;justify-content:space-between;align-items:center;padding:13px 18px;transition:background-color .15s;display:flex}.curriculum-school-card-header:hover{background:#f8fafc}.curriculum-school-info{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.curriculum-school-icon-badge{color:#15803d;background:#dcfce7;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.curriculum-school-icon-badge svg{width:17px;height:17px}.curriculum-school-name{color:#0f172a;font-size:14.5px;font-weight:700}.curriculum-grade-count-pill{color:#047857;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:12px;padding:2px 10px;font-size:11.5px;font-weight:600}.curriculum-school-toggle-btn{color:#64748b;cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.curriculum-school-card-body{border-top:1px solid #f1f5f9;gap:14px;padding:16px 18px 20px;display:grid}.curriculum-grade-chips{flex-wrap:wrap;gap:8px;display:flex}.curriculum-grade-chip{cursor:pointer;-webkit-user-select:none;user-select:none;background:#fff;border:1px solid #cbd5e1;border-radius:9px;align-items:center;gap:8px;min-height:36px;padding:6px 12px;transition:all .15s;display:inline-flex}.curriculum-grade-chip:hover{background:#f0fdf4;border-color:#059669}.curriculum-grade-chip.is-selected{background:#f0fdf4;border:2px solid #059669;box-shadow:0 1px 3px #0596691a}.curriculum-checkbox{background:#fff;border:1.5px solid #94a3b8;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;transition:all .15s;display:flex}.curriculum-checkbox.is-checked{color:#fff;background:#059669;border-color:#059669}.curriculum-checkbox svg{stroke-width:3px;width:11px;height:11px}.curriculum-grade-name{color:#1e293b;font-size:13px;font-weight:700}.curriculum-week-count-tag{color:#047857;background:#ecfdf5;border-radius:10px;padding:1px 7px;font-size:11px;font-weight:600}.curriculum-weeks-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;gap:10px;padding:12px 16px;display:grid}.curriculum-weeks-box-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.curriculum-weeks-box-title{color:#0f172a;align-items:center;gap:8px;font-size:13px;font-weight:700;display:flex}.curriculum-weeks-box-title svg{color:#059669;width:15px;height:15px}.curriculum-select-all-label{color:#475569;cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:6px;font-size:12.5px;font-weight:600;display:flex}.curriculum-select-all-label input[type=checkbox]{accent-color:#059669;cursor:pointer;width:15px;height:15px}.curriculum-week-pills{flex-wrap:wrap;gap:8px;display:flex}.curriculum-week-pill{cursor:pointer;-webkit-user-select:none;user-select:none;background:#fff;border:1px solid #cbd5e1;border-radius:7px;align-items:center;gap:8px;min-width:90px;padding:6px 14px;transition:all .15s;display:inline-flex}.curriculum-week-pill:hover{background:#f0fdf4;border-color:#059669}.curriculum-week-pill.is-selected{background:#f0fdf4;border:2px solid #059669}.curriculum-week-name{color:#1e293b;font-size:12.5px;font-weight:600}.curriculum-muted-notice{color:#94a3b8;margin:0;font-size:12.5px;font-style:italic}.curriculum-existing-assignments-panel{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden}.curriculum-existing-assignments-toggle{color:#475569;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;width:100%;padding:12px 16px;font-size:13px;font-weight:600;display:flex}.curriculum-existing-assignments-toggle svg{width:16px;height:16px}.curriculum-existing-assignments-list{border-top:1px solid #e2e8f0;gap:8px;padding:12px 16px;display:grid}.curriculum-existing-assignment-item{background:#fff;border:1px solid #e2e8f0;border-radius:8px;justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.curriculum-existing-assignment-details strong{color:#0f172a;font-size:13px;display:block}.curriculum-existing-assignment-details span{color:#64748b;font-size:12px}.curriculum-unpublish-btn{color:#991b1b;cursor:pointer;background:#fef2f2;border:1px solid #fca5a5;border-radius:6px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.curriculum-unpublish-btn:hover{background:#fee2e2}.curriculum-unpublish-btn svg{width:14px;height:14px}.curriculum-summary-banner{background:#eff6ff;border:1px solid #dbeafe;border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:14px 18px;display:flex}.curriculum-summary-banner-left{align-items:center;gap:12px;display:flex}.curriculum-summary-icon{color:#1d4ed8;background:#dbeafe;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.curriculum-summary-icon svg{width:17px;height:17px}.curriculum-summary-title{color:#1e3a8a;font-size:14px;font-weight:700;display:block}.curriculum-summary-desc{color:#3b82f6;margin:1px 0 0;font-size:12.5px}.curriculum-view-summary-btn{color:#1e293b;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:8px;align-items:center;gap:6px;padding:7px 16px;font-size:13px;font-weight:600;transition:all .15s;display:inline-flex}.curriculum-view-summary-btn:hover:not(:disabled){background:#f8fafc;border-color:#94a3b8}.curriculum-view-summary-btn:disabled{opacity:.45;cursor:not-allowed}.curriculum-view-summary-btn svg{color:#475569;width:15px;height:15px}.curriculum-dialog-footer{margin-inline:-28px;z-index:10;background:#fff;border-top:1px solid #e2e8f0;justify-content:flex-end;align-items:center;gap:12px;margin-top:auto;margin-bottom:-24px;padding:16px 28px;display:flex;position:sticky;bottom:-24px}.curriculum-summary-modal-backdrop{z-index:2000;background:#0f172a73;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.curriculum-summary-modal-card{background:#fff;border-radius:16px;flex-direction:column;width:min(580px,95vw);max-height:80vh;display:flex;overflow:hidden;box-shadow:0 20px 50px #0003}.curriculum-summary-modal-header{border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding:18px 24px;display:flex}.curriculum-summary-modal-header h3{color:#0f172a;margin:0;font-size:16px;font-weight:700}.curriculum-summary-modal-header p{color:#64748b;margin:2px 0 0;font-size:13px}.curriculum-summary-modal-header button{color:#64748b;cursor:pointer;background:0 0;border:0}.curriculum-summary-modal-body{gap:16px;padding:24px;display:grid;overflow-y:auto}.curriculum-summary-school-group{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:16px}.curriculum-summary-school-name{color:#0f172a;align-items:center;gap:8px;margin:0 0 12px;font-size:14.5px;font-weight:700;display:flex}.curriculum-summary-school-name svg{color:#059669;width:16px;height:16px}.curriculum-summary-grade-list{gap:10px;display:grid}.curriculum-summary-grade-row{flex-direction:column;gap:4px;display:flex}.curriculum-summary-grade-label{color:#475569;font-size:12px;font-weight:700}.curriculum-summary-weeks-chips{flex-wrap:wrap;gap:6px;display:flex}.curriculum-summary-week-chip{color:#1e293b;background:#fff;border:1px solid #cbd5e1;border-radius:6px;padding:3px 10px;font-size:12px;font-weight:600}.curriculum-summary-modal-footer{border-top:1px solid #e2e8f0;justify-content:flex-end;padding:16px 24px;display:flex}.curriculum-global-header{justify-content:space-between;align-items:center;gap:var(--space-3) var(--space-4);min-width:0;padding-bottom:var(--space-4);border-bottom:1px solid var(--color-line);flex-wrap:wrap;display:flex}.curriculum-tabs-navigation{overscroll-behavior-x:contain;scrollbar-width:none;background:var(--color-paper-warm,#f8fafc);border:1px solid var(--color-line,#e2e8f0);border-radius:8px;align-items:center;gap:4px;min-width:0;max-width:100%;padding:4px;display:flex;overflow-x:auto}.curriculum-tabs-navigation::-webkit-scrollbar{display:none}.curriculum-tab-btn{white-space:nowrap;color:var(--color-sage-muted,#64748b);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;flex:none;align-items:center;gap:8px;padding:6px 12px;font-size:13px;font-weight:500;transition:all .15s;display:inline-flex}.curriculum-tab-btn svg{width:15px;height:15px}.curriculum-tab-btn:hover{color:var(--color-ink-strong,#0f172a);background:#00000008}.curriculum-tab-btn.is-active{color:var(--color-brand-primary,#0284c7);background:#fff;font-weight:600;box-shadow:0 1px 3px #00000014}.curriculum-tab-badge{color:var(--color-text-secondary,#64748b);background:#64748b1f;border-radius:10px;justify-content:center;align-items:center;padding:2px 7px;font-size:11px;font-weight:600;display:inline-flex}.curriculum-tab-btn.is-active .curriculum-tab-badge{color:var(--color-brand-primary,#0284c7);background:#0284c71f}.curriculum-global-header button{border-radius:6px;height:36px;padding:0 14px;font-size:13px;font-weight:500}.all-videos-filter-bar{justify-content:space-between;align-items:center;gap:var(--space-3,12px);min-width:0;padding:var(--space-3,12px);background:var(--color-paper-warm,#f8fafc);border:1px solid var(--color-line,#e2e8f0);border-radius:var(--radius-lg,8px);flex-wrap:wrap;margin-top:0;display:flex}.filter-search-box{flex:1;align-items:center;min-width:240px;display:flex;position:relative}.filter-search-box svg{color:#94a3b8;pointer-events:none;width:16px;height:16px;position:absolute;left:10px}.filter-search-box input{color:#0f172a;box-sizing:border-box;background:#fff;border:1px solid #cbd5e1;border-radius:6px;outline:none;width:100%;height:36px;padding:0 12px 0 34px;font-size:13px;transition:border-color .15s}.filter-search-box input:focus{border-color:#0f172a}.filter-dropdowns{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.curriculum-school-select-wrap{flex-shrink:0;width:240px;min-width:200px}.curriculum-school-select-wrap .searchable-select__control{background:#fff;border-color:#cbd5e1;border-radius:6px;height:36px;min-height:36px}.curriculum-school-select-wrap .searchable-select__control input{color:#1e293b;height:34px;min-height:34px;font-size:12.5px;font-weight:500}.curriculum-grade-select{color:#1e293b;cursor:pointer;box-sizing:border-box;background:#fff;border:1px solid #cbd5e1;border-radius:6px;outline:none;min-width:150px;height:36px;padding:0 10px;font-size:12.5px;font-weight:500;transition:border-color .15s,opacity .15s,background-color .15s}.curriculum-grade-select:disabled{color:#94a3b8;cursor:not-allowed;background:#f1f5f9;border-color:#e2e8f0}.curriculum-grade-select:focus:not(:disabled){border-color:#0f172a}.curriculum-all-videos-view{min-width:0}.all-videos-table{min-width:0;margin-top:var(--space-4,16px);flex-direction:column;gap:8px;display:flex}.all-videos-row{background:#fff;border:1px solid #e2e8f0;border-radius:8px;justify-content:flex-start;align-items:center;gap:14px;min-width:0;padding:10px 16px;transition:border-color .15s,box-shadow .15s;display:flex}.all-videos-row:hover{border-color:#cbd5e1;box-shadow:0 2px 6px #0f172a0a}.all-videos-row.has-pending-targets{border-left:3px solid #d97706}.all-videos-row__thumb{background:#f1f5f9;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:72px;height:42px;display:flex;position:relative;overflow:hidden}.all-videos-row__thumb img{object-fit:cover;width:100%;height:100%}.all-videos-row__thumb svg{color:#94a3b8;width:22px;height:22px}.all-videos-row__main{text-align:left;flex-direction:column;flex:auto;justify-content:center;align-items:flex-start;gap:3px;min-width:0;margin:0;display:flex}.all-videos-row__title{color:#0f172a;text-align:left;text-overflow:ellipsis;white-space:nowrap;width:100%;margin:0;font-size:13.5px;font-weight:600;display:block;overflow:hidden}.all-videos-row__sub{color:#64748b;text-align:left;flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:4px 10px;width:100%;margin:0;font-size:11.5px;font-weight:500;display:flex}.all-videos-row__sub span{flex-shrink:0;align-items:center;gap:4px;display:inline-flex}.all-videos-row__sub svg{width:12px;height:12px}.all-videos-row__filename{text-overflow:ellipsis;white-space:nowrap;flex-shrink:1;min-width:0;max-width:min(280px,100%);overflow:hidden}.all-videos-row__actions{flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;align-items:center;gap:6px;margin-left:auto;display:flex}.is-assign-btn{border-radius:6px;height:32px;padding:0 12px;font-size:13px;font-weight:500;transition:all .15s;color:#334155!important;background:#f1f5f9!important;border:1px solid #cbd5e1!important}.is-assign-btn:hover:not(:disabled){color:#0f172a!important;background:#e2e8f0!important;border-color:#94a3b8!important}.all-videos-icon-btn{color:#475569;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:6px;justify-content:center;align-items:center;width:32px;height:32px;transition:all .15s;display:inline-flex}.all-videos-icon-btn svg{width:14px;height:14px}.all-videos-icon-btn:hover{color:#0f172a;background:#f8fafc;border-color:#94a3b8}.all-videos-icon-btn.is-delete:hover{color:#dc2626;background:#fef2f2;border-color:#fca5a5}.curriculum-tree-view-wrapper{min-width:0;margin-top:16px}.tree-view-layout{grid-template-columns:minmax(0,320px) minmax(0,1fr);align-items:start;gap:16px;min-width:0;display:grid}.tree-view-sidebar{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;flex-direction:column;gap:12px;min-width:0;padding:14px;display:flex}.tree-view-tools{flex-direction:column;gap:8px;display:flex}.tree-view-search{align-items:center;display:flex;position:relative}.tree-view-search svg{color:#94a3b8;width:14px;height:14px;position:absolute;left:10px}.tree-view-search input{background:#fff;border:1px solid #cbd5e1;border-radius:6px;outline:none;width:100%;padding:6px 10px 6px 30px;font-size:12.5px}.tree-view-actions{color:#64748b;justify-content:flex-end;align-items:center;gap:6px;font-size:11.5px;display:flex}.tree-view-actions button{color:#2563eb;cursor:pointer;background:0 0;border:none;padding:0;font-size:11.5px;font-weight:600}.tree-view-actions button:hover{text-decoration:underline}.tree-view-nodes{flex-direction:column;gap:6px;max-height:520px;padding-right:4px;display:flex;overflow-y:auto}.tree-school-node{flex-direction:column;display:flex}.tree-node-toggle{color:#0f172a;text-align:left;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:6px;align-items:center;gap:8px;width:100%;padding:8px 10px;font-size:13px;transition:background .15s;display:flex}.tree-node-toggle:hover{background:#f1f5f9}.tree-node-toggle svg{color:#475569;flex-shrink:0;width:14px;height:14px}.tree-node-toggle strong,.tree-node-toggle.is-grade>span{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.tree-node-count{color:#64748b;white-space:nowrap;background:#f1f5f9;border-radius:4px;flex-shrink:0;padding:2px 6px;font-size:11px;font-weight:700}.tree-grade-list{flex-direction:column;gap:4px;margin-top:4px;padding-left:16px;display:flex}.tree-node-toggle.is-grade{background:0 0;border-color:#0000;padding:6px 8px}.tree-node-toggle.is-grade:hover{background:#e2e8f0}.tree-week-list{flex-direction:column;gap:2px;margin-top:2px;padding-left:20px;display:flex}.tree-week-node{color:#334155;cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:6px;align-items:center;gap:8px;width:100%;padding:6px 10px;font-size:12px;font-weight:600;transition:all .15s;display:flex}.tree-week-node svg{color:#64748b;flex-shrink:0;width:13px;height:13px}.tree-week-node>span{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.tree-week-node:hover{color:#0f172a;background:#e2e8f0}.tree-week-node.is-selected{color:#fff;background:#0f172a;font-weight:700}.tree-week-node.is-selected svg{color:#fff}.tree-week-badge{color:#1e293b;background:#e2e8f0;border-radius:4px;margin-left:auto;padding:1px 5px;font-size:10.5px}.tree-week-node.is-selected .tree-week-badge{color:#fff;background:#fff3}.tree-view-content{background:#fff;border:1px solid #e2e8f0;border-radius:10px;flex-direction:column;gap:12px;min-width:0;min-height:480px;padding:16px;display:flex}.tree-view-breadcrumb{border-bottom:1px solid #e2e8f0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;min-width:0;padding-bottom:12px;display:flex}.tree-breadcrumb-path{color:#64748b;flex-wrap:wrap;align-items:center;gap:4px 6px;min-width:0;font-size:13px;font-weight:600;display:flex}.tree-breadcrumb-path span,.tree-breadcrumb-path strong{overflow-wrap:anywhere;align-items:center;gap:5px;min-width:0;max-width:100%;display:inline-flex}.tree-breadcrumb-path svg{flex-shrink:0;width:14px;height:14px}.tree-breadcrumb-count{flex-shrink:0}.tree-breadcrumb-path strong.is-active{color:#0f172a;font-weight:800}.tree-breadcrumb-count{color:#059669;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:12px;padding:3px 10px;font-size:12px;font-weight:700}.tree-assigned-list{flex-direction:column;gap:8px;display:flex}.tree-assigned-row{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;justify-content:flex-start;align-items:center;gap:12px;padding:10px 14px;transition:border-color .15s,box-shadow .15s;display:flex}.tree-assigned-row:hover{border-color:#cbd5e1;box-shadow:0 2px 6px #0f172a0a}.tree-assigned-thumb{background:#e2e8f0;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:64px;height:38px;display:flex;overflow:hidden}.tree-assigned-thumb img{object-fit:cover;width:100%;height:100%}.tree-assigned-thumb svg{color:#94a3b8;width:20px;height:20px}.tree-assigned-info{text-align:left;flex-direction:column;flex:auto;justify-content:center;align-items:flex-start;gap:2px;min-width:0;margin:0;display:flex}.tree-assigned-title{color:#0f172a;text-align:left;text-overflow:ellipsis;white-space:nowrap;width:100%;margin:0;font-size:13px;font-weight:700;display:block;overflow:hidden}.tree-assigned-meta{color:#64748b;text-align:left;flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:4px 10px;width:100%;margin:0;font-size:11.5px;display:flex}.tree-assigned-meta span{flex-shrink:0;align-items:center;gap:4px;display:inline-flex}.tree-assigned-meta svg{width:12px;height:12px}.tree-division-badge{color:#475569;white-space:nowrap;text-overflow:ellipsis;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:4px;align-items:center;min-width:0;max-width:100%;padding:2px 8px;font-size:11px;font-weight:500;display:inline-flex;overflow:hidden}.tree-assigned-actions{flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;align-items:center;gap:6px;margin-left:auto;display:flex}.is-view-mappings-btn{border-radius:6px;height:32px;padding:0 10px;font-size:12px;font-weight:500;color:#334155!important;background:#f8fafc!important;border:1px solid #cbd5e1!important}.is-view-mappings-btn:hover:not(:disabled){color:#0f172a!important;background:#f1f5f9!important;border-color:#94a3b8!important}.is-unassign-btn{border-radius:6px;height:32px;padding:0 10px;font-size:12px;font-weight:500;color:#dc2626!important;background:#fef2f2!important;border:1px solid #fecaca!important}.is-unassign-btn:hover:not(:disabled){background:#fee2e2!important;border-color:#fca5a5!important}@media (width<=1024px){.tree-view-layout{grid-template-columns:1fr}.curriculum-assignment-dialog{width:96vw;height:92vh}.curriculum-assignment-form{gap:16px;padding:20px}.curriculum-dialog-header{padding:16px 20px}.curriculum-dialog-footer{margin-inline:-20px;margin-bottom:-20px;padding:14px 20px;bottom:-20px}}@media (width<=640px){.curriculum-modal-backdrop{padding:8px}.curriculum-assignment-dialog{border-radius:12px;width:100%;height:96vh}.curriculum-grade-chips{flex-direction:column;align-items:stretch}.curriculum-week-pills{grid-template-columns:repeat(2,1fr);display:grid}}:root[data-theme=dark] .network-page.curriculum-workspace-page,:root[data-theme=dark] .network-page.curriculum-page,:root[data-theme=dark] .curriculum-main,:root[data-theme=dark] .curriculum-workspace-main{background:var(--color-chalk-paper)!important}:root[data-theme=dark] .curriculum-workspace-hero h1,:root[data-theme=dark] .curriculum-hero h1{color:var(--color-evergreen-ink)!important}:root[data-theme=dark] .curriculum-workspace-hero p,:root[data-theme=dark] .curriculum-hero p,:root[data-theme=dark] .curriculum-workflow-key span{color:var(--color-sage-muted)!important}:root[data-theme=dark] .curriculum-workflow-key b{background:var(--color-forest-soft)!important;color:var(--color-forest)!important}:root[data-theme=dark] .curriculum-global-panel,:root[data-theme=dark] .curriculum-publish-panel{background:var(--color-paper)!important;border-color:var(--color-line)!important;box-shadow:var(--shadow-card)!important}:root[data-theme=dark] .curriculum-publish-panel{background:linear-gradient(180deg, var(--color-paper-warm), var(--color-paper))!important}:root[data-theme=dark] .curriculum-global-panel h2,:root[data-theme=dark] .curriculum-publish-panel h2{color:var(--color-evergreen-ink)!important}:root[data-theme=dark] .curriculum-global-panel header p,:root[data-theme=dark] .curriculum-publish-panel header p{color:var(--color-sage-muted)!important}:root[data-theme=dark] .curriculum-panel-icon{background:var(--color-forest-soft)!important;color:var(--color-forest)!important}:root[data-theme=dark] .curriculum-upload-banner{background:var(--color-forest-soft)!important;border-color:var(--color-info-border)!important;color:var(--color-evergreen-ink)!important}:root[data-theme=dark] .curriculum-library-metrics div{background:var(--color-paper-warm)!important;border-color:var(--color-line)!important}:root[data-theme=dark] .curriculum-library-metrics div:first-child{background:var(--color-paper)!important;border-color:var(--color-line-strong)!important}:root[data-theme=dark] .curriculum-library-metrics dt{color:var(--color-sage-muted)!important}:root[data-theme=dark] .curriculum-library-metrics dd{color:var(--color-evergreen-ink)!important}:root[data-theme=dark] .curriculum-tabs-navigation{background:var(--color-paper-warm)!important;border-color:var(--color-line)!important}:root[data-theme=dark] .curriculum-tab-btn{color:var(--color-sage-muted)!important}:root[data-theme=dark] .curriculum-tab-btn:hover{color:var(--color-evergreen-ink)!important;background:var(--color-sage-50)!important}:root[data-theme=dark] .curriculum-tab-btn.is-active{background:var(--color-paper)!important;color:var(--color-forest)!important;box-shadow:0 1px 3px #0006!important}:root[data-theme=dark] .curriculum-tab-badge{background:var(--color-sage-50)!important;color:var(--color-sage-muted)!important}:root[data-theme=dark] .curriculum-tab-btn.is-active .curriculum-tab-badge{background:var(--color-forest-soft)!important;color:var(--color-forest)!important}:root[data-theme=dark] .all-videos-filter-bar{background:var(--color-paper-warm)!important;border-color:var(--color-line)!important}:root[data-theme=dark] .filter-search-box input{background:var(--color-paper)!important;color:var(--color-evergreen-ink)!important;border-color:var(--color-line-strong)!important}:root[data-theme=dark] .filter-search-box input:focus{border-color:var(--color-forest)!important}:root[data-theme=dark] .filter-search-box svg{color:var(--color-sage-muted)!important}:root[data-theme=dark] .curriculum-school-select-wrap .searchable-select__control{background:var(--color-paper)!important;border-color:var(--color-line-strong)!important}:root[data-theme=dark] .curriculum-school-select-wrap .searchable-select__control input{color:var(--color-evergreen-ink)!important}:root[data-theme=dark] .curriculum-grade-select{background:var(--color-paper)!important;color:var(--color-evergreen-ink)!important;border-color:var(--color-line-strong)!important}:root[data-theme=dark] .curriculum-grade-select:disabled{background:var(--color-sage-50)!important;color:var(--color-sage-muted)!important;border-color:var(--color-line)!important;cursor:not-allowed!important}:root[data-theme=dark] .curriculum-grade-select:focus:not(:disabled){border-color:var(--color-forest)!important}:root[data-theme=dark] .all-videos-row,:root[data-theme=dark] .curriculum-video-card{background:var(--color-paper)!important;border-color:var(--color-line)!important}:root[data-theme=dark] .all-videos-row:hover,:root[data-theme=dark] .curriculum-video-card:hover{background:var(--color-forest-soft)!important;border-color:var(--color-line-strong)!important;box-shadow:0 2px 6px #0000004d!important}:root[data-theme=dark] .all-videos-row.has-pending-targets,:root[data-theme=dark] .curriculum-video-card.has-pending-targets{background:var(--color-paper)!important;border-left:3px solid var(--color-marigold)!important}:root[data-theme=dark] .all-videos-row__thumb{background:var(--color-paper-warm)!important}:root[data-theme=dark] .all-videos-row__thumb svg{color:var(--color-sage-muted)!important}:root[data-theme=dark] .all-videos-row__title,:root[data-theme=dark] .curriculum-video-card__title{color:var(--color-evergreen-ink)!important}:root[data-theme=dark] .all-videos-row__sub,:root[data-theme=dark] .all-videos-row__filename,:root[data-theme=dark] .curriculum-video-card__meta{color:var(--color-sage-muted)!important}:root[data-theme=dark] .is-assign-btn{background:var(--color-paper-warm)!important;color:var(--color-evergreen-ink)!important;border:1px solid var(--color-line-strong)!important}:root[data-theme=dark] .is-assign-btn:hover:not(:disabled){background:var(--color-sage-50)!important;color:var(--color-forest)!important;border-color:var(--color-forest)!important}:root[data-theme=dark] .is-assign-btn:disabled{background:var(--color-sage-50)!important;color:var(--color-sage-muted)!important;border-color:var(--color-line)!important;opacity:.6!important}:root[data-theme=dark] .all-videos-icon-btn,:root[data-theme=dark] .curriculum-video-card__actions button{background:var(--color-paper-warm)!important;color:var(--color-sage-muted)!important;border:1px solid var(--color-line)!important}:root[data-theme=dark] .all-videos-icon-btn:hover,:root[data-theme=dark] .curriculum-video-card__actions button:hover{background:var(--color-sage-50)!important;color:var(--color-evergreen-ink)!important;border-color:var(--color-line-strong)!important}:root[data-theme=dark] .all-videos-icon-btn.is-delete:hover,:root[data-theme=dark] .curriculum-video-card__actions button.is-delete:hover{background:var(--color-danger-bg)!important;color:var(--color-danger)!important;border-color:var(--color-danger-border)!important}:root[data-theme=dark] .tree-view-sidebar{background:var(--color-paper-warm)!important;border-color:var(--color-line)!important}:root[data-theme=dark] .tree-view-search input{background:var(--color-paper)!important;color:var(--color-evergreen-ink)!important;border-color:var(--color-line-strong)!important}:root[data-theme=dark] .tree-view-search svg,:root[data-theme=dark] .tree-view-actions{color:var(--color-sage-muted)!important}:root[data-theme=dark] .tree-view-actions button{color:var(--color-forest)!important}:root[data-theme=dark] .tree-node-toggle{background:var(--color-paper)!important;color:var(--color-evergreen-ink)!important;border:1px solid var(--color-line)!important}:root[data-theme=dark] .tree-node-toggle:hover{background:var(--color-sage-50)!important}:root[data-theme=dark] .tree-node-toggle svg{color:var(--color-sage-muted)!important}:root[data-theme=dark] .tree-node-count{background:var(--color-sage-50)!important;color:var(--color-sage-muted)!important}:root[data-theme=dark] .tree-node-toggle.is-grade:hover{background:var(--color-sage-50)!important}:root[data-theme=dark] .tree-week-node,:root[data-theme=dark] .tree-week-node svg{color:var(--color-sage-muted)!important}:root[data-theme=dark] .tree-week-node:hover{background:var(--color-sage-50)!important;color:var(--color-evergreen-ink)!important}:root[data-theme=dark] .tree-week-node.is-selected{background:var(--color-forest)!important;color:var(--color-on-primary)!important;font-weight:700!important}:root[data-theme=dark] .tree-week-node.is-selected svg{color:var(--color-on-primary)!important}:root[data-theme=dark] .tree-week-badge{background:var(--color-sage-50)!important;color:var(--color-sage-muted)!important}:root[data-theme=dark] .tree-week-node.is-selected .tree-week-badge{color:var(--color-on-primary)!important;background:#0c171140!important}:root[data-theme=dark] .tree-view-content{background:var(--color-paper)!important;border-color:var(--color-line)!important}:root[data-theme=dark] .tree-view-breadcrumb{border-bottom-color:var(--color-line)!important}:root[data-theme=dark] .tree-breadcrumb-path{color:var(--color-sage-muted)!important}:root[data-theme=dark] .tree-breadcrumb-path strong.is-active{color:var(--color-evergreen-ink)!important}:root[data-theme=dark] .tree-breadcrumb-count{background:var(--color-forest-soft)!important;color:var(--color-forest)!important;border-color:var(--color-info-border)!important}:root[data-theme=dark] .tree-assigned-row{background:var(--color-paper-warm)!important;border-color:var(--color-line)!important}:root[data-theme=dark] .tree-assigned-row:hover{background:var(--color-sage-50)!important;border-color:var(--color-line-strong)!important;box-shadow:0 2px 6px #00000040!important}:root[data-theme=dark] .tree-assigned-thumb{background:var(--color-sage-50)!important}:root[data-theme=dark] .tree-assigned-thumb svg{color:var(--color-sage-muted)!important}:root[data-theme=dark] .tree-assigned-title{color:var(--color-evergreen-ink)!important}:root[data-theme=dark] .tree-assigned-meta{color:var(--color-sage-muted)!important}:root[data-theme=dark] .tree-division-badge{background:var(--color-sage-50)!important;color:var(--color-sage-muted)!important;border-color:var(--color-line)!important}:root[data-theme=dark] .is-view-mappings-btn{background:var(--color-paper)!important;color:var(--color-evergreen-ink)!important;border:1px solid var(--color-line-strong)!important}:root[data-theme=dark] .is-view-mappings-btn:hover:not(:disabled){background:var(--color-sage-50)!important;color:var(--color-forest)!important;border-color:var(--color-forest)!important}:root[data-theme=dark] .is-unassign-btn{background:var(--color-danger-bg)!important;color:var(--color-danger)!important;border:1px solid var(--color-danger-border)!important}:root[data-theme=dark] .is-unassign-btn:hover:not(:disabled){border-color:var(--color-danger)!important;background:#4a2723!important}:root[data-theme=dark] .curriculum-processing-badge.is-completed{color:var(--color-success)!important;background:var(--color-success-bg)!important}:root[data-theme=dark] .curriculum-processing-badge.is-processing{color:var(--color-warning)!important;background:var(--color-warning-bg)!important}:root[data-theme=dark] .curriculum-processing-badge.is-failed{color:var(--color-danger)!important;background:var(--color-danger-bg)!important}:root[data-theme=dark] .curriculum-processing-badge.is-unavailable{color:var(--color-sage-muted)!important;background:var(--color-sage-100)!important}:root[data-theme=dark] .curriculum-video-card__pending{background:var(--color-marigold-100)!important;color:var(--color-marigold-600)!important}:root[data-theme=dark] .curriculum-video-card__assignments-note{color:var(--color-sage-muted)!important}:root[data-theme=dark] .curriculum-pending-list>article{background:var(--color-paper)!important;border-color:var(--color-line)!important}:root[data-theme=dark] .curriculum-pending-list header strong{color:var(--color-evergreen-ink)!important}:root[data-theme=dark] .curriculum-pending-list header small{color:var(--color-sage-muted)!important}:root[data-theme=dark] .curriculum-pending-targets>div{background:var(--color-paper-warm)!important;border-left-color:var(--color-marigold)!important}:root[data-theme=dark] .curriculum-pending-targets strong{color:var(--color-evergreen-ink)!important}:root[data-theme=dark] .curriculum-pending-targets span,:root[data-theme=dark] .curriculum-pending-targets small{color:var(--color-sage-muted)!important}:root[data-theme=dark] .curriculum-publish-empty{background:var(--color-paper-warm)!important;border-color:var(--color-line-strong)!important;color:var(--color-sage-muted)!important}:root[data-theme=dark] .curriculum-publish-empty h3{color:var(--color-evergreen-ink)!important}:root[data-theme=dark] .curriculum-publish-panel>footer{border-top-color:var(--color-line)!important}:root[data-theme=dark] .curriculum-publish-panel>footer small{color:var(--color-sage-muted)!important}:root[data-theme=dark] .curriculum-library-assignment-error,:root[data-theme=dark] .curriculum-publish-error,:root[data-theme=dark] .curriculum-published-dialog__error,:root[data-theme=dark] .curriculum-assignment-dialog__error,:root[data-theme=dark] .curriculum-assignment-row__error{background:var(--color-danger-bg)!important;border-color:var(--color-danger-border)!important;color:var(--color-danger)!important}:root[data-theme=dark] .curriculum-modal-backdrop,:root[data-theme=dark] .curriculum-summary-modal-backdrop{-webkit-backdrop-filter:blur(6px)!important;backdrop-filter:blur(6px)!important;background:#000000c7!important}:root[data-theme=dark] .curriculum-published-dialog,:root[data-theme=dark] .curriculum-assignment-dialog,:root[data-theme=dark] .curriculum-summary-modal-card{background:var(--color-paper)!important;border-color:var(--color-line)!important;box-shadow:0 28px 80px #0009!important}:root[data-theme=dark] .curriculum-dialog-header,:root[data-theme=dark] .curriculum-published-dialog>header,:root[data-theme=dark] .curriculum-assignment-dialog>header,:root[data-theme=dark] .curriculum-summary-modal-header{background:linear-gradient(135deg, var(--color-paper-warm), var(--color-paper))!important;border-bottom-color:var(--color-line)!important}:root[data-theme=dark] .curriculum-dialog-header h2,:root[data-theme=dark] .curriculum-summary-modal-header h3,:root[data-theme=dark] .curriculum-published-dialog__title h2,:root[data-theme=dark] .curriculum-assignment-dialog>header h2{color:var(--color-evergreen-ink)!important}:root[data-theme=dark] .curriculum-dialog-close-btn,:root[data-theme=dark] .curriculum-published-dialog>header>button,:root[data-theme=dark] .curriculum-assignment-dialog>header>button{background:var(--color-sage-50)!important;color:var(--color-sage-muted)!important}:root[data-theme=dark] .curriculum-dialog-close-btn:hover,:root[data-theme=dark] .curriculum-published-dialog>header>button:hover,:root[data-theme=dark] .curriculum-assignment-dialog>header>button:hover{background:var(--color-sage-100)!important;color:var(--color-evergreen-ink)!important}:root[data-theme=dark] .curriculum-step-card{background:var(--color-paper-warm)!important;border-color:var(--color-line)!important}:root[data-theme=dark] .curriculum-step-title{color:var(--color-evergreen-ink)!important}:root[data-theme=dark] .curriculum-step-subtitle,:root[data-theme=dark] .curriculum-selected-count-badge{color:var(--color-sage-muted)!important}:root[data-theme=dark] .curriculum-expand-btn{background:var(--color-paper)!important;border-color:var(--color-line-strong)!important;color:var(--color-evergreen-ink)!important}:root[data-theme=dark] .curriculum-expand-btn:hover:not(:disabled){background:var(--color-sage-50)!important;border-color:var(--color-forest)!important}:root[data-theme=dark] .curriculum-empty-schools-notice{background:var(--color-paper-warm)!important;border-color:var(--color-line-strong)!important;color:var(--color-sage-muted)!important}:root[data-theme=dark] .curriculum-school-card{background:var(--color-paper)!important;border-color:var(--color-line)!important}:root[data-theme=dark] .curriculum-school-card.is-expanded{border-color:var(--color-line-strong)!important;box-shadow:0 2px 8px #0000004d!important}:root[data-theme=dark] .curriculum-school-card-header{background:var(--color-paper)!important}:root[data-theme=dark] .curriculum-school-card-header:hover{background:var(--color-sage-50)!important}:root[data-theme=dark] .curriculum-school-name{color:var(--color-evergreen-ink)!important}:root[data-theme=dark] .curriculum-school-icon-badge{background:var(--color-forest-soft)!important;color:var(--color-forest)!important}:root[data-theme=dark] .curriculum-grade-count-pill,:root[data-theme=dark] .curriculum-week-count-tag{background:var(--color-forest-soft)!important;color:var(--color-forest)!important;border-color:var(--color-info-border)!important}:root[data-theme=dark] .curriculum-school-card-body{border-top-color:var(--color-line)!important}:root[data-theme=dark] .curriculum-grade-chip{background:var(--color-paper-warm)!important;border-color:var(--color-line)!important}:root[data-theme=dark] .curriculum-grade-chip:hover{border-color:var(--color-forest)!important;background:var(--color-forest-soft)!important}:root[data-theme=dark] .curriculum-grade-chip.is-selected{border:2px solid var(--color-forest)!important;background:var(--color-forest-soft)!important;box-shadow:0 1px 3px #73b99333!important}:root[data-theme=dark] .curriculum-checkbox{background:var(--color-paper)!important;border-color:var(--color-line-strong)!important}:root[data-theme=dark] .curriculum-checkbox.is-checked{background:var(--color-forest)!important;border-color:var(--color-forest)!important;color:var(--color-on-primary)!important}:root[data-theme=dark] .curriculum-grade-name,:root[data-theme=dark] .curriculum-weeks-box-title,:root[data-theme=dark] .curriculum-week-name{color:var(--color-evergreen-ink)!important}:root[data-theme=dark] .curriculum-weeks-box{background:var(--color-sage-50)!important;border-color:var(--color-line)!important}:root[data-theme=dark] .curriculum-select-all-label{color:var(--color-sage-muted)!important}:root[data-theme=dark] .curriculum-week-pill{background:var(--color-paper-warm)!important;border-color:var(--color-line)!important}:root[data-theme=dark] .curriculum-week-pill:hover{border-color:var(--color-forest)!important;background:var(--color-forest-soft)!important}:root[data-theme=dark] .curriculum-week-pill.is-selected{border:2px solid var(--color-forest)!important;background:var(--color-forest-soft)!important}:root[data-theme=dark] .curriculum-existing-assignments-panel{background:var(--color-sage-50)!important;border-color:var(--color-line)!important}:root[data-theme=dark] .curriculum-existing-assignments-toggle{color:var(--color-sage-muted)!important}:root[data-theme=dark] .curriculum-existing-assignments-list{border-top-color:var(--color-line)!important}:root[data-theme=dark] .curriculum-existing-assignment-item{background:var(--color-paper)!important;border-color:var(--color-line)!important}:root[data-theme=dark] .curriculum-existing-assignment-details strong{color:var(--color-evergreen-ink)!important}:root[data-theme=dark] .curriculum-existing-assignment-details span{color:var(--color-sage-muted)!important}:root[data-theme=dark] .curriculum-unpublish-btn{background:var(--color-danger-bg)!important;border-color:var(--color-danger-border)!important;color:var(--color-danger)!important}:root[data-theme=dark] .curriculum-unpublish-btn:hover{border-color:var(--color-danger)!important;background:#4a2723!important}:root[data-theme=dark] .curriculum-summary-banner{background:var(--color-forest-soft)!important;border-color:var(--color-info-border)!important}:root[data-theme=dark] .curriculum-summary-icon{background:var(--color-paper-warm)!important;color:var(--color-forest)!important}:root[data-theme=dark] .curriculum-summary-title{color:var(--color-evergreen-ink)!important}:root[data-theme=dark] .curriculum-summary-desc{color:var(--color-sage-muted)!important}:root[data-theme=dark] .curriculum-view-summary-btn{background:var(--color-paper-warm)!important;border-color:var(--color-line-strong)!important;color:var(--color-evergreen-ink)!important}:root[data-theme=dark] .curriculum-view-summary-btn:hover:not(:disabled){background:var(--color-sage-50)!important;border-color:var(--color-forest)!important}:root[data-theme=dark] .curriculum-summary-week-chip{background:var(--color-paper-warm)!important;border-color:var(--color-line)!important;color:var(--color-evergreen-ink)!important}:root[data-theme=dark] .curriculum-summary-grade-label{color:var(--color-sage-muted)!important}:root[data-theme=dark] .curriculum-summary-modal-footer{border-top-color:var(--color-line)!important}:root[data-theme=dark] .curriculum-dialog-footer{background:var(--color-paper-warm)!important;border-top-color:var(--color-line)!important}:root[data-theme=dark] .curriculum-published-dialog__metrics{background:var(--color-paper-warm)!important;border-bottom-color:var(--color-line)!important}:root[data-theme=dark] .curriculum-published-dialog__list article{background:var(--color-paper-warm)!important;border-color:var(--color-line)!important}:root[data-theme=dark] .curriculum-published-dialog__list article>header{border-bottom-color:var(--color-line)!important}@media (width<=1280px){.curriculum-workspace-grid,.curriculum-workspace-grid.is-tree-mode{gap:var(--space-5);grid-template-columns:minmax(0,1fr)}.curriculum-publish-panel.is-collapsed{display:none}.curriculum-publish-panel{max-height:none;position:static}.curriculum-publish-panel__body{max-height:none;overflow-y:visible}.curriculum-publish-empty{min-height:180px}}@media (width<=1024px){.curriculum-workspace-hero h1{font-size:var(--text-heading-xl)}.curriculum-global-panel{gap:var(--space-4)}.tree-view-layout{grid-template-columns:minmax(0,1fr);gap:12px}.tree-view-nodes{max-height:340px}.tree-view-content{min-height:320px}.curriculum-school-select-wrap{width:220px;min-width:180px}}@media (width<=900px){.all-videos-filter-bar{flex-direction:column;align-items:stretch}.filter-search-box{flex:none;width:100%;min-width:0}.filter-dropdowns{gap:var(--space-2);flex:none;width:100%}.curriculum-school-select-wrap{flex:200px;width:auto;min-width:0}.curriculum-grade-select{flex:160px;width:auto;min-width:0}}@media (width<=768px){.network-page.curriculum-workspace-page{padding-bottom:calc(72px + env(safe-area-inset-bottom));grid-template-columns:minmax(0,1fr)}.network-main.curriculum-workspace-main{gap:var(--space-5);padding-bottom:calc(var(--space-6) + env(safe-area-inset-bottom))}.curriculum-workspace-hero{align-items:flex-start;gap:var(--space-4);padding-bottom:var(--space-4);flex-direction:column}.curriculum-workflow-key{justify-content:flex-start}.curriculum-global-panel>.curriculum-global-header{align-items:stretch;gap:var(--space-3);flex-direction:column}.curriculum-global-panel>.curriculum-global-header .curriculum-tabs-navigation{width:100%}.curriculum-global-panel>.curriculum-global-header>.button{justify-content:center;width:100%}.curriculum-publish-panel>header{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.curriculum-publish-panel>header>div{flex:auto;min-width:0}.curriculum-pending-count{flex:none}.tree-view-nodes{max-height:300px}.tree-view-content{min-height:0;padding:12px}.tree-view-breadcrumb{flex-direction:column;align-items:flex-start}.curriculum-video-pagination{gap:var(--space-3)}.curriculum-video-pagination .button{width:100%}}@media (width<=640px){.all-videos-row,.tree-assigned-row{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px 12px;padding:12px;display:grid}.all-videos-row__actions,.tree-assigned-actions{grid-column:1/-1;justify-content:flex-start;gap:8px;width:100%;margin-left:0}.all-videos-row__actions .is-assign-btn{flex:auto;min-width:0}.tree-assigned-actions .is-view-mappings-btn,.tree-assigned-actions .is-unassign-btn{flex:130px;min-width:0}.all-videos-icon-btn{flex:none;width:38px;height:38px}.all-videos-icon-btn svg{width:16px;height:16px}.is-assign-btn,.is-view-mappings-btn,.is-unassign-btn{height:38px;min-height:38px}.all-videos-row__thumb{width:64px;height:38px}.all-videos-row__filename{max-width:100%}.tree-division-badge{white-space:normal}.curriculum-publish-empty{min-height:0;padding:var(--space-4)}.curriculum-publish-panel>footer{padding-top:var(--space-3)}.curriculum-library-assignment-error{flex-direction:column;align-items:flex-start}}@media (width<=480px){.curriculum-workspace-hero h1{font-size:28px;line-height:1.15}.curriculum-workspace-hero p{font-size:var(--text-body-sm)}.curriculum-tabs-navigation{flex-direction:column;align-items:stretch;overflow-x:visible}.curriculum-tab-btn{justify-content:flex-start;width:100%}.curriculum-tab-badge{margin-left:auto}.filter-dropdowns{flex-direction:column;align-items:stretch}.curriculum-school-select-wrap,.curriculum-grade-select{flex:auto;width:100%}.tree-grade-list{padding-left:10px}.tree-week-list{padding-left:14px}.tree-view-sidebar{padding:10px}.all-videos-row__thumb,.tree-assigned-thumb{width:56px;height:34px}.all-videos-row__title{font-size:13px}.curriculum-pending-list header strong{overflow-wrap:anywhere}.curriculum-publish-panel>footer strong{font-size:var(--text-body-sm)}.curriculum-dialog-header{padding:14px 16px}.curriculum-dialog-header h2{font-size:16px}.curriculum-assignment-form{gap:14px;padding:16px}.curriculum-step-card{padding:14px}.curriculum-week-pills{grid-template-columns:minmax(0,1fr)}.curriculum-summary-modal-card{width:100%}}.login-page{background:var(--color-chalk-paper);text-align:left;place-items:center;width:100%;height:100dvh;min-height:0;padding:0;display:grid;overflow:hidden}.app-shell .login-page,.login-brand-panel,.login-form,.login-form .text-input{text-align:left}.login-card{background:var(--color-paper);width:100%;max-width:none;height:100dvh;min-height:0;box-shadow:none;animation:login-card-enter .52s var(--ease-emphasized) both;border:0;border-radius:0;grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);display:grid;overflow:hidden}.login-brand-panel{min-width:0;min-height:0;color:var(--color-on-dark);background:radial-gradient(circle at 35% 22%,#245b45b8,#0000 32%),linear-gradient(135deg,#245b45 0%,#102f25 72%);grid-template-rows:auto minmax(0,1fr) auto auto;gap:clamp(20px,4vh,40px);padding:clamp(28px,5.4vh,48px) clamp(30px,3.1vw,44px) clamp(26px,4.8vh,42px);display:grid}.login-brand-panel .brand-wordmark{animation:login-content-enter .48s var(--ease-emphasized) 90ms both}.login-brand-panel__copy{max-width:455px;animation:login-content-enter .52s var(--ease-emphasized) .15s both;align-self:center;gap:clamp(12px,2.2vh,20px);display:grid}.login-brand-panel__copy .text-label{color:#ffffffad}.login-brand-panel__copy h1{color:var(--color-on-dark);font-family:var(--font-display);margin:0;font-size:60px;font-weight:700;line-height:.98}.login-brand-panel__copy p:not(.text-label){color:#ffffffc2;overflow-wrap:anywhere;max-width:min(390px,100%);margin:0;font-size:19px;line-height:1.5}.login-week-spine{align-items:end;gap:var(--space-2);max-width:520px;animation:login-content-enter .52s var(--ease-emphasized) .22s both;grid-template-columns:repeat(12,minmax(18px,1fr));display:grid}.login-week-spine span{border-radius:var(--radius-sm);transform-origin:bottom;height:22px;animation:login-spine-grow .42s var(--ease-emphasized) both;background:#ffffff24}.login-week-spine span:nth-child(2),.login-week-spine span:nth-child(9){height:34px}.login-week-spine span:nth-child(4),.login-week-spine span:nth-child(11){height:46px}.login-week-spine span.login-week-spine__bar--active{background:var(--color-marigold);height:72px}.login-week-spine span:nth-child(2n){animation-delay:80ms}.login-week-spine span:nth-child(3n){animation-delay:.13s}.login-testimonial{color:#ffffffd1;animation:login-content-enter .52s var(--ease-emphasized) .28s both;gap:clamp(8px,1.6vh,16px);margin:0;display:grid}.login-testimonial p{font-size:var(--text-body-lg);margin:0}.login-testimonial footer{color:#ffffff94;font-family:var(--font-mono);font-size:var(--text-body-md);font-weight:700}.login-form-panel{background:var(--color-paper);place-items:center;min-width:0;min-height:0;padding:clamp(24px,5vh,48px);display:grid;overflow:hidden}.login-form{gap:clamp(12px,2vh,24px);width:min(100%,390px);display:grid}.login-form>*{animation:login-form-item-enter .42s var(--ease-emphasized) both}.login-form>:first-child{animation-delay:.11s}.login-form>:nth-child(2){animation-delay:.15s}.login-form>:nth-child(3){animation-delay:.19s}.login-form>:nth-child(4){animation-delay:.23s}.login-form>:nth-child(n+5){animation-delay:.27s}.login-form__header{text-align:left;gap:2px;display:grid}.login-form__header h2{color:var(--color-evergreen-ink);font-size:34px;line-height:var(--leading-heading);margin:0}.login-form__header p{color:var(--color-sage-muted);margin:0;font-size:19px;line-height:1.2}.login-form .segmented-control__label{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.login-form .segmented-control__group{gap:var(--space-3);background:0 0;border:0;padding:0}.login-form .segmented-control__option{gap:var(--space-3);border-color:var(--color-line);border-radius:var(--radius-lg);min-height:76px;padding:var(--space-4);background:var(--color-paper-warm);transition:color var(--transition-base), border-color var(--transition-base), background-color var(--transition-base), box-shadow var(--transition-base), transform var(--transition-fast)}.login-form .segmented-control__option:hover{border-color:var(--color-sage-300);background:var(--color-paper);transform:translateY(-1px)}.login-form .segmented-control__option:active{transform:translateY(0)scale(.992)}.login-form .segmented-control__option--selected,.login-form .segmented-control__option--selected:hover{background:var(--color-forest-soft);border-color:var(--color-forest);box-shadow:inset 0 0 0 1px var(--color-forest), 0 6px 18px #1e4d3b14}.login-form .segmented-control__option--selected .segmented-control__icon{transform:scale(1.06)}.login-form .segmented-control__icon{transition:color var(--transition-base), transform var(--transition-base)}.login-form .text-input__label{transition:color var(--transition-base)}.login-form .text-input:focus-within .text-input__label,.login-form .text-input:focus-within .text-input__icon{color:var(--color-forest)}.login-form .text-input__control{transition:border-color var(--transition-base), box-shadow var(--transition-base), background-color var(--transition-base), transform var(--transition-fast)}.login-form .text-input__control:hover:not(.text-input__control--disabled){transform:translateY(-1px)}.login-form .text-input__control:focus-within{background:var(--color-paper);box-shadow:0 0 0 3px var(--color-forest-soft), inset 0 0 0 1px var(--color-forest), var(--shadow-card);transform:none}.login-form .button{min-height:52px;font-size:var(--text-body-lg)}.login-form .button--primary:hover:not(:disabled){box-shadow:0 10px 24px #1e4d3b33}.login-form .button--primary:active:not(:disabled){transform:scale(.994)}.login-form__links{justify-content:space-between;gap:var(--space-4);color:var(--color-sage-muted);font-size:var(--text-body-md);display:flex}.login-form__links a{align-items:center;gap:var(--space-2);color:var(--color-forest);text-underline-offset:4px;transition:color var(--transition-base), text-decoration-color var(--transition-base);font-weight:700;text-decoration-color:#0000;text-decoration-thickness:1px;display:inline-flex}.login-form__links a svg{flex:0 0 16px;width:16px;height:16px}.login-form__links a:hover,.login-form__links a:focus-visible{color:var(--color-forest-600);text-decoration-color:currentColor}@keyframes login-card-enter{0%{opacity:0}}@keyframes login-content-enter{0%{opacity:0;transform:translateY(8px)}}@keyframes login-form-item-enter{0%{opacity:0;transform:translateY(6px)}}@keyframes login-spine-grow{0%{opacity:0;transform:scaleY(.2)}}@media (width<=1100px){.login-card{grid-template-columns:minmax(0,.95fr) minmax(390px,1.05fr)}.login-brand-panel{padding-inline:var(--space-8)}.login-brand-panel__copy h1{font-size:52px}}@media (width>=861px) and (height<=780px){.login-brand-panel{gap:var(--space-5);padding-block:var(--space-6)}.login-brand-panel__copy{gap:var(--space-3)}.login-brand-panel__copy h1{font-size:48px}.login-brand-panel__copy p:not(.text-label){font-size:var(--text-body-lg);line-height:1.4}.login-week-spine span.login-week-spine__bar--active{height:56px}.login-week-spine span:nth-child(4),.login-week-spine span:nth-child(11){height:38px}.login-testimonial{gap:var(--space-2)}.login-testimonial p,.login-testimonial footer{font-size:var(--text-body-sm)}.login-form-panel{padding:var(--space-6) clamp(28px, 4vw, 48px)}.login-form{gap:var(--space-3)}.login-form__header h2{font-size:31px}.login-form__header p{font-size:var(--text-body-lg)}.login-form .segmented-control__option{min-height:64px;padding:var(--space-3)}.login-form .text-input{gap:var(--space-1)}.login-form .text-input__control{min-height:46px}.login-form .button{min-height:48px}}@media (width<=860px){.login-page{place-items:start center;height:auto;min-height:100dvh;overflow:visible}.login-card{grid-template-columns:1fr;height:auto;max-height:none}.login-brand-panel{gap:var(--space-8);min-height:360px;padding:var(--space-8)}.login-brand-panel__copy{align-self:start;max-width:620px}.login-brand-panel__copy h1{max-width:560px;font-size:52px}.login-week-spine{max-width:460px}.login-testimonial{display:none}.login-form-panel{padding:var(--space-10) var(--space-6);overflow:visible}}@media (width<=520px){.login-page{padding:0}.login-card{width:100%;box-shadow:none;border-radius:0}.login-brand-panel{min-height:310px;padding:var(--space-6)}.login-brand-panel__copy{gap:var(--space-4)}.login-brand-panel__copy h1{font-size:38px}.login-brand-panel__copy p:not(.text-label){font-size:var(--text-body-md)}.login-week-spine{gap:var(--space-1);grid-template-columns:repeat(12,minmax(8px,1fr));width:100%;overflow:hidden}.login-form-panel{padding:var(--space-8) var(--space-4)}.login-form{gap:var(--space-5)}.login-form__header h2{font-size:30px}.login-form .segmented-control__group,.login-form__links{grid-template-columns:1fr}.login-form__links{justify-items:start;display:grid}}@media (prefers-reduced-motion:reduce){.login-card,.login-brand-panel .brand-wordmark,.login-brand-panel__copy,.login-week-spine,.login-week-spine span,.login-testimonial,.login-form>*{animation:none}.login-form .segmented-control__option:hover,.login-form .text-input__control:hover:not(.text-input__control--disabled){transform:none}}@keyframes search-backdrop-enter{0%{opacity:0}}@keyframes command-search-enter{0%{opacity:0;transform:translateY(-10px)scale(.985)}}@media (width<=620px){.command-search-backdrop{align-items:stretch;padding:0}.command-search{border:0;border-radius:0;width:100%;min-height:100vh;max-height:100vh}.command-search>footer small{display:none}.command-search>footer{gap:var(--space-2);padding:0 var(--space-3)}.search-result-group button{grid-template-columns:42px minmax(0,1fr)}.search-result-group small,.search-result-group kbd{grid-column:2}}@media (prefers-reduced-motion:reduce){.command-search-backdrop,.command-search{animation:none}.search-result-group button.is-active{transform:none}}@media (width>=769px){.app-sidebar[data-collapsed=true]{padding-inline:var(--space-2)}}@media (prefers-reduced-motion:reduce){.network-page,.app-sidebar,.app-sidebar *{transition-duration:1ms!important}}@keyframes top-header-menu-enter{0%{opacity:0;transform:translateY(-5px)scale(.985)}}@keyframes storage-progress-enter{0%{transform-origin:0;transform:scaleX(0)}}@keyframes network-health-chart-draw{to{stroke-dashoffset:0}}@keyframes page-enter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes chart-draw{to{stroke-dashoffset:0}}@keyframes chart-area-enter{0%{opacity:0}}@keyframes chart-dot-enter{to{opacity:1}}@media (width>=1240px){.network-page{min-height:100vh}}@media (width<=1024px){.network-main{padding:var(--space-6)}.top-header{grid-template-columns:1fr auto auto}.top-header__search{order:2;grid-column:1/-1}.network-grid{grid-template-columns:1fr}}@media (width<=720px){.network-health-card>header{grid-template-columns:1fr}.network-health-card__metrics{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=768px){.network-page{padding-bottom:calc(72px + env(safe-area-inset-bottom));border-radius:0;grid-template-columns:1fr}.app-sidebar{z-index:60;width:100%;max-width:100vw;height:calc(64px + env(safe-area-inset-bottom));max-height:none;padding:0 6px env(safe-area-inset-bottom);border-right:0;border-top:1px solid var(--color-line);background:color-mix(in srgb, var(--color-paper-warm) 94%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:0;display:block;position:fixed;inset:auto 0 0;box-shadow:0 -10px 30px #18211d14}.app-sidebar__brand,.app-sidebar__logo,.app-sidebar__nav,.app-sidebar__utilities{display:none}.app-sidebar__mobile-nav{z-index:2;box-sizing:border-box;justify-content:space-evenly;align-items:stretch;gap:2px;width:100%;height:64px;display:flex;position:relative}.app-sidebar__mobile-nav>a,.app-sidebar__mobile-nav>button{min-width:0;min-height:0;color:var(--color-sage-muted);text-align:center;box-sizing:border-box;transition:color var(--transition-base), background-color var(--transition-base), transform var(--transition-fast);background:0 0;border:0;border-radius:10px;flex-direction:column;flex:1 1 0;justify-content:center;align-items:center;gap:2px;padding:6px 2px 4px;font-size:10px;font-weight:700;line-height:1.1;text-decoration:none;display:flex;position:relative}.app-sidebar__mobile-nav>a:before,.app-sidebar__mobile-nav>button:before{content:"";border-radius:var(--radius-pill);background:var(--color-forest);opacity:0;width:16px;height:3px;transition:opacity var(--transition-base), transform var(--transition-base);position:absolute;top:3px;left:50%;transform:translate(-50%)scaleX(.4)}.app-sidebar__mobile-nav>a:hover,.app-sidebar__mobile-nav>button:hover,.app-sidebar__mobile-nav>a.is-active,.app-sidebar__mobile-nav>button.is-active{color:var(--color-forest);background:var(--color-forest-soft)}.app-sidebar__mobile-nav>a.is-active:before,.app-sidebar__mobile-nav>button.is-active:before{opacity:1;transform:translate(-50%)scaleX(1)}.app-sidebar__mobile-nav>a:active,.app-sidebar__mobile-nav>button:active{transform:scale(.96)}.app-sidebar__mobile-nav svg{stroke-width:1.8px;flex:0 0 20px;width:20px;height:20px;margin:0 auto;display:block}.app-sidebar__mobile-nav span{text-align:center;text-overflow:ellipsis;white-space:nowrap;width:100%;margin:0;font-size:10px;line-height:1.1;display:block;overflow:hidden}.app-sidebar__mobile-backdrop{z-index:1;inset:0 0 calc(64px + env(safe-area-inset-bottom));padding:var(--space-3);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:mobile-nav-backdrop-enter var(--transition-fast);background:#0c110e73;align-items:end;display:grid;position:fixed}.app-sidebar__mobile-sheet{gap:var(--space-4);border:1px solid var(--color-line-strong);width:100%;max-height:min(580px,100dvh - 96px);padding:var(--space-4);color:var(--color-evergreen-ink);background:var(--color-paper);box-shadow:var(--shadow-panel);animation:mobile-nav-sheet-enter var(--transition-slow);border-radius:20px;display:grid;overflow-y:auto}.app-sidebar__mobile-sheet>header{justify-content:space-between;align-items:center;gap:var(--space-4);display:flex}.app-sidebar__mobile-sheet>header strong,.app-sidebar__mobile-sheet>header small{display:block}.app-sidebar__mobile-sheet>header strong{font-family:var(--font-display);font-size:var(--text-heading-md)}.app-sidebar__mobile-sheet>header small{color:var(--color-sage-muted);margin-top:2px}.app-sidebar__mobile-sheet>header>button{border-radius:var(--radius-lg);width:40px;height:40px;color:var(--color-sage-muted);background:var(--color-sage-50);border:0;flex:none;place-items:center;display:grid}.app-sidebar__mobile-sheet>header svg{width:19px;height:19px}.app-sidebar__mobile-sheet>nav{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.app-sidebar__mobile-sheet>nav a{align-items:center;gap:var(--space-3);border:1px solid var(--color-line);min-width:0;min-height:52px;padding:var(--space-2);color:var(--color-evergreen-ink);background:var(--color-paper-warm);border-radius:12px;font-weight:700;text-decoration:none;display:flex}.app-sidebar__mobile-sheet>nav a>span{border-radius:var(--radius-lg);width:34px;height:34px;color:var(--color-forest);background:var(--color-forest-soft);flex:none;place-items:center;display:grid}.app-sidebar__mobile-sheet>nav a.is-active{border-color:var(--color-forest);box-shadow:inset 0 0 0 1px var(--color-forest)}.app-sidebar__mobile-sheet>nav svg,.app-sidebar__mobile-actions svg{width:18px;height:18px}.app-sidebar__mobile-actions{gap:var(--space-2);border-top:1px solid var(--color-line);padding-top:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.app-sidebar__mobile-actions button{justify-content:center;align-items:center;gap:var(--space-2);border:1px solid var(--color-line);min-height:44px;color:var(--color-evergreen-ink);background:var(--color-paper-warm);border-radius:12px;font-weight:700;display:flex}.app-sidebar__mobile-actions button.is-danger{color:var(--color-danger);background:var(--color-danger-bg)}@keyframes mobile-nav-backdrop-enter{0%{opacity:0}}@keyframes mobile-nav-sheet-enter{0%{opacity:0;transform:translateY(18px)scale(.98)}}.network-shell{grid-column:auto}.top-header{z-index:40;padding:var(--space-4);background:color-mix(in srgb, var(--color-paper) 94%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);grid-template-columns:minmax(0,1fr) auto auto;position:sticky;top:0}.top-header__network>svg{width:14px}.network-hero{display:grid}.network-hero__actions{flex-wrap:wrap}.network-metrics{grid-template-columns:1fr}.school-fleet__head{display:none}.school-row{gap:var(--space-2) var(--space-4);border:1px solid var(--color-line);border-radius:var(--radius-lg);margin-bottom:var(--space-3);padding:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr))}.school-row__school{margin-bottom:var(--space-2);grid-column:1/-1}.school-row__count{font-family:var(--font-sans);font-weight:700}.school-row__count:before{display:inline}}@media (width<=520px){.network-page{min-height:100vh}.network-main{padding:var(--space-4)}.top-header__network small,.top-header__mark,.top-header__search kbd{display:none}.top-header,.top-header__network{gap:var(--space-2)}.top-header__profile-trigger{gap:0}.top-header__profile-trigger>svg{display:none}.network-tabs,.network-hero__actions,.network-hero__actions .button{width:100%}.network-tabs button{padding:0 var(--space-2);flex:1}.network-health-card{min-height:0;padding:var(--space-5);border-radius:18px}.network-health-card__metrics{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr))}.network-health-chart svg{height:110px}.network-health-chart__axis{font-size:10px}}@media (prefers-reduced-motion:reduce){.network-health-chart__area,.network-health-chart__line{stroke-dashoffset:0;animation:none}.top-header__menu{animation:none}}@media (width<=1180px){.network-quick-actions{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=1050px){.network-overview-grid{grid-template-columns:1fr}.network-library-card{min-height:0}}@media (width<=768px){.network-hero--admin h1{font-size:36px}.network-quick-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=520px){.network-hero--admin h1{font-size:32px}.network-library-card{padding:var(--space-5);border-radius:18px}.network-quick-actions{gap:var(--space-2)}.network-quick-actions a{grid-template-columns:auto minmax(0,1fr);min-height:64px}.network-quick-actions a>svg{display:none}}@media (prefers-reduced-motion:reduce){.network-quick-actions a:hover,.network-quick-actions a:focus-visible{transform:none}}@media (width<=1100px){.school-metric-grid{grid-template-columns:repeat(2,1fr)}.school-dashboard-grid{grid-template-columns:1fr}}@media (width<=640px){.school-metric-grid{grid-template-columns:1fr}.today-prominent-item{flex-direction:column;align-items:flex-start}}.school-card[role=link]{cursor:pointer}.school-card[role=link]:focus-visible{border-color:var(--color-forest);box-shadow:var(--shadow-focus), 0 16px 34px #18211d17}.school-details-main{align-content:start;gap:var(--space-5);background:var(--color-paper-warm);display:grid}.school-details-back{margin-left:calc(var(--space-2) * -1);justify-self:start}.school-details-hero{justify-content:space-between;align-items:center;gap:var(--space-5);border:1px solid var(--color-line);padding:var(--space-6);background:radial-gradient(circle at 92% 10%, color-mix(in srgb, var(--color-marigold) 18%, transparent) 0 90px, transparent 91px), var(--color-paper);box-shadow:var(--shadow-card);border-radius:22px;display:flex;position:relative;overflow:hidden}.school-details-hero__identity{align-items:center;gap:var(--space-4);min-width:0;display:flex}.school-details-hero__identity>span{width:64px;height:64px;color:var(--color-on-primary);background:var(--color-forest);font-size:var(--text-heading-md);border-radius:20px;flex:none;place-items:center;font-weight:900;display:grid;box-shadow:0 12px 26px #1e4d3b2e}.school-details-hero__identity>img{border:1px solid var(--color-line);background:var(--color-paper);object-fit:contain;border-radius:20px;flex:none;width:64px;height:64px;padding:5px;display:block;box-shadow:0 12px 26px #1e4d3b1f}.school-details-hero small,.school-details-panel>header small{color:var(--color-sage-muted);font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.7px;text-transform:uppercase;font-weight:900;display:block}.school-details-hero h1{margin:var(--space-1) 0 var(--space-2);font-family:var(--font-display);font-size:clamp(28px,4vw,42px);line-height:var(--leading-tight)}.school-details-hero__identity p{min-width:0;color:var(--color-sage-muted);align-items:center;gap:6px;display:flex}.school-details-hero__identity p svg{flex:none;width:15px;height:15px}.school-details-hero__identity p i{color:var(--color-line-strong);font-style:normal}.school-details-hero>.status-badge{z-index:1;flex:none;gap:6px;position:relative}.school-details-hero>.status-badge:before{content:"";background:currentColor;border-radius:50%;width:7px;height:7px}.school-details-stats{gap:var(--space-3);grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.school-details-stat{align-items:center;gap:var(--space-3);border:1px solid var(--color-line);min-width:0;padding:var(--space-4);color:inherit;background:var(--color-paper);box-shadow:var(--shadow-card);transition:border-color var(--transition-base), box-shadow var(--transition-base), transform var(--transition-base);border-radius:16px;grid-template-columns:auto minmax(0,1fr);text-decoration:none;display:grid}.school-details-stat--link{cursor:pointer}.school-details-stat--link:focus-visible{border-color:var(--color-forest);box-shadow:var(--shadow-focus), 0 12px 26px #18211d14;outline:none}.school-details-stat--placeholder{cursor:default}.school-details-stat>span{width:36px;height:36px;color:var(--color-forest);background:var(--color-forest-soft);border-radius:11px;place-items:center;line-height:0;display:grid}.school-details-stats svg{width:18px;height:18px}.school-details-stats small,.school-details-stats strong{display:block}.school-details-stats small{color:var(--color-sage-muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:700;overflow:hidden}.school-details-stats strong{font-family:var(--font-mono);font-size:var(--text-heading-md);margin-top:2px}.school-details-grid{align-items:start;gap:var(--space-4);grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);display:grid}.school-details-panel{align-content:start;gap:var(--space-4);border:1px solid var(--color-line);min-width:0;padding:var(--space-5);background:var(--color-paper);box-shadow:var(--shadow-card);text-align:left;border-radius:20px;display:grid}.school-details-panel>header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);min-width:0;display:flex}.school-details-panel h2{margin:var(--space-1) 0 0;font-family:var(--font-display);font-size:var(--text-heading-md)}.school-details-panel>header>span{color:var(--color-sage-muted);font-family:var(--font-mono);font-size:var(--text-body-sm);flex:none}.school-details-profile dl{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;display:grid}.school-details-profile dl>div{border:1px solid var(--color-line);min-width:0;padding:var(--space-3);background:var(--color-paper-warm);border-radius:12px}.school-details-profile dl>div.is-wide{grid-column:1/-1}.school-details-profile dt{color:var(--color-sage-muted);font-size:var(--text-body-sm);margin-bottom:5px;font-weight:700}.school-details-profile dd{overflow-wrap:anywhere;margin:0;font-weight:800}.school-details-curriculum>header>strong{color:var(--color-forest);font-family:var(--font-mono);font-size:30px}.school-details-progress{gap:var(--space-2);display:grid}.school-details-progress>span{border-radius:var(--radius-pill);background:var(--color-sage-100);height:9px;overflow:hidden}.school-details-progress i{width:calc(var(--published-percent,0) * 1%);border-radius:inherit;background:var(--color-forest);height:100%;animation:school-details-progress-enter var(--transition-slow);display:block}.school-details-progress>div{color:var(--color-sage-muted);justify-content:space-between;display:flex}.school-details-curriculum__stats{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.school-details-mini-stat{border:1px solid var(--color-line);padding:var(--space-3);color:inherit;background:var(--color-paper-warm);transition:border-color var(--transition-base), box-shadow var(--transition-base), transform var(--transition-base);border-radius:12px;text-decoration:none}.school-details-mini-stat--link{cursor:pointer}.school-details-mini-stat--link:focus-visible{border-color:var(--color-forest);box-shadow:var(--shadow-focus);outline:none}.school-details-mini-stat--placeholder{cursor:default}.school-details-curriculum__stats strong,.school-details-curriculum__stats span{display:block}.school-details-curriculum__stats strong{font-family:var(--font-mono);font-size:var(--text-heading-md)}.school-details-curriculum__stats span{color:var(--color-sage-muted);font-size:var(--text-body-sm);margin-top:3px}.school-details-grades{grid-row:span 2}.school-details-grade-list,.school-details-user-list{gap:var(--space-2);display:grid}.school-details-user-list{gap:var(--space-3);overscroll-behavior:contain;max-height:420px;padding-right:2px;overflow-y:auto}.school-details-grade-list article{align-items:center;gap:var(--space-3);border:1px solid var(--color-line);min-width:0;padding:var(--space-3);background:var(--color-paper-warm);border-radius:12px;grid-template-columns:auto minmax(0,1fr) auto;display:grid}.school-details-grade-list article>span{width:36px;height:36px;color:var(--color-forest);background:var(--color-forest-soft);border-radius:10px;place-items:center;line-height:0;display:grid}.school-details-grade-list article>div{min-width:0}.school-details-grade-list svg{width:17px;height:17px}.school-details-grade-list strong,.school-details-grade-list small{display:block}.school-details-grade-list small{color:var(--color-sage-muted);line-height:var(--leading-normal);overflow-wrap:anywhere;margin-top:3px}.school-details-grade-list .status-badge{min-width:68px;padding:6px 12px;font-size:11px}.school-details-grade-list .status-badge--healthy{color:#fff;background:var(--color-forest-700)}.school-details-grade-list .status-badge--risk{color:#fff;background:var(--color-danger)}.school-details-grade-state{place-items:center;gap:var(--space-3);border:1px dashed var(--color-line-strong);min-height:120px;padding:var(--space-5);color:var(--color-sage-muted);background:var(--color-paper-warm);text-align:center;border-radius:12px;display:grid}.school-details-user-list article{align-items:center;gap:var(--space-3);border:1px solid var(--color-line);min-width:0;padding:var(--space-3);background:var(--color-paper-warm);transition:border-color var(--transition-base), box-shadow var(--transition-base);border-radius:12px;grid-template-columns:minmax(0,1fr) auto;display:grid}.school-details-user-list article>div{min-width:0}.school-details-user-list .school-details-user-identity{text-align:left;align-content:center;justify-items:start;gap:4px;display:grid}.school-details-user-list strong,.school-details-user-list small{display:block}.school-details-user-list strong{width:100%;color:var(--color-evergreen-ink);font-size:var(--text-body-md);line-height:var(--leading-heading);text-align:left}.school-details-user-list small{width:100%;min-width:0;color:var(--color-sage-muted);text-overflow:ellipsis;text-align:left;white-space:nowrap;justify-content:flex-start;align-items:center;gap:5px;margin-top:0;display:flex;overflow:hidden}.school-details-user-list small svg{flex:none;width:13px;height:13px}.school-details-user-meta{justify-items:end;gap:5px;display:grid}.school-details-user-meta .status-badge{gap:6px;padding:5px 10px;font-size:11px}.school-details-user-list b{color:var(--color-sage-muted);font-family:var(--font-mono);text-transform:uppercase;font-size:10px}.school-details-user-state{place-items:center;gap:var(--space-3);border:1px dashed var(--color-line-strong);min-height:120px;padding:var(--space-5);color:var(--color-sage-muted);background:var(--color-paper-warm);text-align:center;border-radius:12px;display:grid}.school-details-empty{border:1px dashed var(--color-line-strong);padding:var(--space-5);color:var(--color-sage-muted);background:var(--color-paper-warm);text-align:center;border-radius:12px}@keyframes school-details-progress-enter{0%{width:0}}@media (hover:hover){.school-details-stat--link:hover{border-color:var(--color-sage-300);transform:translateY(-2px);box-shadow:0 12px 26px #18211d14}.school-details-mini-stat--link:hover{border-color:var(--color-sage-300);transform:translateY(-1px);box-shadow:0 8px 18px #18211d12}.school-details-user-list article:hover{border-color:var(--color-sage-300);box-shadow:0 8px 18px #18211d0f}}@media (width<=1200px){.school-details-stats{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=900px){.school-details-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.school-details-grid{grid-template-columns:1fr}.school-details-grades{grid-row:auto}}@media (width<=520px){.school-details-main{gap:var(--space-4)}.school-details-hero{padding:var(--space-4);border-radius:18px;align-items:flex-start}.school-details-hero__identity{align-items:flex-start}.school-details-hero__identity>span{width:48px;height:48px;font-size:var(--text-body-lg);border-radius:15px}.school-details-hero__identity>img{border-radius:15px;width:48px;height:48px}.school-details-hero h1{font-size:28px}.school-details-hero__identity p{flex-wrap:wrap}.school-details-stats{gap:var(--space-2)}.school-details-stat{gap:var(--space-2);padding:var(--space-3);grid-template-columns:1fr}.school-details-panel{padding:var(--space-4);border-radius:16px}.school-details-profile dl{grid-template-columns:1fr}.school-details-profile dl>div.is-wide{grid-column:auto}.school-details-user-list article{grid-template-columns:1fr}.school-details-user-meta{grid-column:1/-1;justify-content:space-between;align-items:center;display:flex}}.school-timetable-page{background:var(--color-canvas);min-height:100vh}.school-timetable-main{padding:var(--space-6) var(--space-8);gap:var(--space-5);flex-direction:column;width:100%;max-width:1680px;margin:0 auto;display:flex}.school-timetable-header{justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.school-header-badge-row{align-items:center;gap:var(--space-3);margin-bottom:var(--space-2);display:flex}.school-badge{background:var(--color-paper-warm);border:1px solid var(--color-line);border-radius:var(--radius-pill);font-size:var(--text-caption);color:var(--color-evergreen-ink);align-items:center;gap:6px;padding:4px 10px;font-weight:700;display:inline-flex}.school-badge svg{width:14px;height:14px;color:var(--color-forest)}.live-indicator{border-radius:var(--radius-pill);font-size:var(--text-caption);color:#15803d;background:#22c55e1a;border:1px solid #22c55e40;align-items:center;gap:6px;padding:4px 10px;font-weight:700;display:inline-flex}.live-indicator-dot{background:#22c55e;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 2px #22c55e4d}.school-timetable-header h1{font-size:var(--text-heading-xl);color:var(--color-evergreen-ink);letter-spacing:-.02em;margin:0 0 4px;font-weight:800}.school-timetable-header p{font-size:var(--text-body-md);color:var(--color-sage-muted);margin:0}.timetable-header-actions{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.timetable-view-tabs{align-items:center;gap:var(--space-1);background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);padding:4px;display:inline-flex}.view-tab-btn{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);font-size:var(--text-body-sm);color:var(--color-sage-muted);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:1px solid #0000;font-weight:600;display:inline-flex}.view-tab-btn svg{width:16px;height:16px}.view-tab-btn:hover{color:var(--color-evergreen-ink);background:var(--color-sage-50)}.view-tab-btn.is-active{background:var(--color-paper-warm);border-color:var(--color-line-strong);color:var(--color-evergreen-ink);box-shadow:var(--shadow-xs);font-weight:700}.school-timetable-page .timetable-controls-card{background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);box-sizing:border-box;scrollbar-width:none;width:100%;padding:12px 16px;overflow-x:auto;flex-flow:row!important;justify-content:space-between!important;align-items:flex-end!important;gap:12px!important;display:flex!important}.school-timetable-page .timetable-controls-card::-webkit-scrollbar{display:none}.school-timetable-page .timetable-filter-item{flex-direction:column;gap:4px;display:flex}.school-timetable-page .timetable-filter-item label{font-size:var(--text-label);color:var(--color-sage-muted);text-transform:uppercase;letter-spacing:.5px;font-weight:700;line-height:1}.school-timetable-page .timetable-filter-item--date{flex:none}.school-timetable-page .timetable-date-nav-group{align-items:center;gap:4px;display:flex}.school-timetable-page .date-nav-btn{background:var(--color-paper-warm);border:1px solid var(--color-line-strong);border-radius:var(--radius-md);width:36px;height:36px;color:var(--color-evergreen-ink);cursor:pointer;transition:all var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.school-timetable-page .date-nav-btn:hover:not(:disabled){background:var(--color-sage-50);border-color:var(--color-forest);color:var(--color-forest)}.school-timetable-page .date-nav-btn:disabled{opacity:.4;cursor:not-allowed;border-color:var(--color-line);color:var(--color-sage-muted)}.school-timetable-page .date-range-display{min-width:170px;height:36px;font-size:var(--text-body-sm);color:var(--color-evergreen-ink);background:var(--color-paper-warm);border:1px solid var(--color-line-strong);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;flex-shrink:0;justify-content:center;align-items:center;padding:0 16px;font-weight:700;display:inline-flex}.school-timetable-page .date-range-display:hover{border-color:var(--color-forest);background:var(--color-forest-soft);color:var(--color-forest-800)}.school-timetable-page .date-picker-icon-btn{background:var(--color-forest-soft);width:36px;height:36px;color:var(--color-forest);border:1px solid var(--color-info-border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.school-timetable-page .date-picker-icon-btn:hover{background:var(--color-forest);color:#fff}.school-timetable-page .today-reset-btn{background:var(--color-forest);color:#fff;border-radius:var(--radius-md);height:36px;font-size:var(--text-body-sm);cursor:pointer;transition:background var(--transition-fast);border:none;flex-shrink:0;padding:0 14px;font-weight:700}.school-timetable-page .today-reset-btn:hover{background:var(--color-forest-dark,#1b4332)}.school-timetable-page .timetable-filter-item--grade,.school-timetable-page .timetable-filter-item--division,.school-timetable-page .timetable-filter-item--week{flex:150px;min-width:130px}.school-timetable-page .timetable-filter-item select{height:36px;font-size:var(--text-body-sm);color:var(--color-evergreen-ink);background:var(--color-paper-warm);border:1px solid var(--color-line-strong);border-radius:var(--radius-md);cursor:pointer;width:100%;transition:all var(--transition-fast);box-sizing:border-box;outline:none;padding:0 12px;font-weight:600}.school-timetable-page .timetable-filter-item select:focus{border-color:var(--color-forest);box-shadow:0 0 0 3px #1e4d3b1f}.school-timetable-page .timetable-filter-item select:disabled{background:var(--color-sage-50);border-color:var(--color-line);color:var(--color-sage-muted);cursor:not-allowed;opacity:.75}.timetable-layout-grid{gap:var(--space-5);flex-direction:column;width:100%;display:flex}.timetable-main-column{gap:var(--space-5);flex-direction:column;min-width:0;display:flex}.timetable-view-container{gap:var(--space-5);flex-direction:column;display:flex}.timetable-grid-card{background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);overflow:hidden}.timetable-grid-header{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-line);background:var(--color-paper-warm);justify-content:space-between;align-items:center;display:flex}.grid-header-title h2{font-size:var(--text-heading-md);color:var(--color-evergreen-ink);margin:0 0 2px;font-weight:700}.grid-header-title p{font-size:var(--text-body-xs);color:var(--color-sage-muted);margin:0}.grid-header-meta span{font-size:var(--text-body-sm);color:var(--color-forest);background:var(--color-forest-soft);border-radius:var(--radius-pill);padding:4px 10px;font-weight:600}.school-timetable-page .timetable-calendar-card{background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-lg);min-width:0;max-width:100%;box-shadow:var(--shadow-card);overflow:hidden}.school-timetable-page .timetable-grid-wrapper,.school-timetable-page .timetable-scroll-wrapper{overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;max-width:100%;overflow-x:auto}.school-timetable-page .timetable-grid,.school-timetable-page .timetable-table{border-collapse:collapse;width:100%;min-width:780px}.school-timetable-page .timetable-th{padding:var(--space-3) var(--space-2);text-align:center;border-bottom:1px solid var(--color-line);border-right:1px solid var(--color-line);background:var(--color-paper-warm);font-size:var(--text-body-sm);color:var(--color-evergreen-ink);font-weight:600}.school-timetable-page .timetable-th--time,.school-timetable-page .th-time-col{text-align:left;width:90px;min-width:90px;padding-left:var(--space-4);color:var(--color-sage-muted);font-size:var(--text-label);text-transform:uppercase}.school-timetable-page .timetable-th--day,.school-timetable-page .th-day-col{text-align:center;width:calc(14.2857% - 12.8571px)}.school-timetable-page .timetable-th--day .day-name,.school-timetable-page .th-day-col .day-name{font-size:var(--text-body-sm);color:var(--color-evergreen-ink);font-weight:700;display:block}.school-timetable-page .timetable-th--day .day-date,.school-timetable-page .th-day-col .day-date{font-size:var(--text-label);color:var(--color-sage-muted);margin-top:2px;font-weight:500;display:block}.school-timetable-page .timetable-th--day.is-today,.school-timetable-page .th-day-col.is-today-header{background:var(--color-forest-soft);color:var(--color-forest-800)}.school-timetable-page .timetable-th--day.is-today .day-name,.school-timetable-page .th-day-col.is-today-header .day-name{color:var(--color-forest-700)}.school-timetable-page .timetable-th--day.is-today .day-date,.school-timetable-page .th-day-col.is-today-header .day-date{color:var(--color-forest-600);font-weight:700}.school-timetable-page .timetable-td{border-bottom:1px solid var(--color-line);border-right:1px solid var(--color-line);vertical-align:top;height:98px;max-height:98px;padding:4px}.school-timetable-page .timetable-td--time,.school-timetable-page .td-time-slot{text-align:left;width:90px;min-width:90px;padding:var(--space-2) var(--space-4);font-size:var(--text-label);color:var(--color-sage-muted);background:var(--color-paper-warm);vertical-align:top;font-weight:600}.school-timetable-page .timetable-td--slot,.school-timetable-page .td-slot-cell{background:var(--color-paper);cursor:pointer;transition:background var(--transition-fast);position:relative;overflow-y:auto}.school-timetable-page .timetable-td--slot:hover,.school-timetable-page .td-slot-cell:hover{background:var(--color-sage-50)}.school-timetable-page .timetable-td--slot.is-today-col,.school-timetable-page .td-slot-cell.is-today-col{background:#22c55e05}.school-timetable-page .timetable-card{border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);box-shadow:var(--shadow-xs);background:var(--color-paper-warm);border:1px solid #0000;border-left-width:3px;flex-direction:column;gap:4px;margin-bottom:4px;padding:6px 8px;display:flex}.school-timetable-page .timetable-card:hover{box-shadow:var(--shadow-sm);filter:brightness(.98);transform:translateY(-1px)}.school-timetable-page .timetable-card__header{align-items:center;gap:6px;display:flex}.school-timetable-page .timetable-card__thumb{border-radius:var(--radius-sm);object-fit:cover;flex-shrink:0;width:24px;height:24px}.school-timetable-page .timetable-card__icon{flex-shrink:0;width:14px;height:14px}.school-timetable-page .timetable-card__title{font-size:var(--text-caption);white-space:nowrap;text-overflow:ellipsis;font-weight:700;line-height:1.2;overflow:hidden}.school-timetable-page .timetable-card__meta{justify-content:space-between;align-items:center;gap:4px;font-size:11px;display:flex}.school-timetable-page .timetable-card__div{font-weight:600}.school-timetable-page .timetable-card__time{opacity:.85}.school-timetable-page .timetable-card__duration{color:var(--color-sage-muted);font-size:10px}.school-timetable-page .timetable-card__actions{border-top:1px solid #0000000f;align-items:center;gap:4px;margin-top:2px;padding-top:4px;display:flex}.school-timetable-page .timetable-card-action-btn{border-radius:var(--radius-sm);width:22px;height:22px;color:var(--color-evergreen-ink);cursor:pointer;transition:all var(--transition-fast);background:#ffffffd9;border:1px solid #00000014;justify-content:center;align-items:center;padding:0;display:inline-flex}.school-timetable-page .timetable-card-action-btn svg{width:12px;height:12px}.school-timetable-page .timetable-card-action-btn--play:hover{background:var(--color-forest);color:#fff;border-color:var(--color-forest)}.school-timetable-page .timetable-card-action-btn--edit:hover{background:var(--color-forest-soft);color:var(--color-forest);border-color:var(--color-forest)}.school-timetable-page .timetable-card-action-btn--cancel:hover{color:#b91c1c;background:#fee2e2;border-color:#fca5a5}.school-timetable-page .timetable-card--unassigned{border-style:dashed dashed dashed solid}.school-timetable-page .timetable-unassigned-badge{border-radius:var(--radius-sm);color:#92400e;letter-spacing:.03em;text-transform:uppercase;background:#fef3c7;border:1px solid #fde68a;align-items:center;margin-left:auto;padding:1px 6px;font-size:9px;font-weight:700;display:inline-flex}.school-timetable-page .timetable-card--green{color:#14532d;background:#dcfce7;border-color:#bbf7d0 #bbf7d0 #bbf7d0 #16a34a}.school-timetable-page .timetable-card--purple{color:#581c87;background:#f3e8ff;border-color:#e9d5ff #e9d5ff #e9d5ff #9333ea}.school-timetable-page .timetable-card--amber{color:#78350f;background:#fef3c7;border-color:#fde68a #fde68a #fde68a #d97706}.school-timetable-page .timetable-card--pink{color:#831843;background:#fce7f3;border-color:#fbcfe8 #fbcfe8 #fbcfe8 #db2777}.school-timetable-page .timetable-card--cyan{color:#164e63;background:#cffafe;border-color:#a5f3fc #a5f3fc #a5f3fc #0891b2}.timetable-legend{padding:var(--space-3) var(--space-5);background:var(--color-paper-warm);border-top:1px solid var(--color-line);justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.legend-item{font-size:var(--text-caption);color:var(--color-evergreen-ink);align-items:center;gap:6px;font-weight:600;display:inline-flex}.legend-dot{border-radius:50%;width:10px;height:10px}.legend-dot--cyan{background:#0891b2}.legend-note{font-size:var(--text-caption);color:var(--color-sage-muted);align-items:center;gap:6px;font-weight:600;display:inline-flex}.month-calendar-grid{background:var(--color-line);grid-template-columns:repeat(7,1fr);gap:1px;display:grid}.month-header-cell{background:var(--color-paper-warm);padding:var(--space-3);text-align:center;font-size:var(--text-caption);color:var(--color-sage-muted);text-transform:uppercase;font-weight:700}.month-day-cell{background:var(--color-paper);min-height:110px;padding:var(--space-2);cursor:pointer;transition:background var(--transition-fast);flex-direction:column;gap:4px;display:flex}.month-day-cell:hover{background:var(--color-sage-50)}.month-day-cell.is-outside-month{background:var(--color-canvas);opacity:.45}.month-day-cell.is-today-cell{background:#22c55e0d}.month-cell-top{justify-content:space-between;align-items:center;display:flex}.month-date-num{font-size:var(--text-body-sm);color:var(--color-evergreen-ink);font-weight:700}.month-count-tag{background:var(--color-forest);color:#fff;border-radius:var(--radius-pill);padding:1px 6px;font-size:10px;font-weight:800}.month-cell-entries{flex-direction:column;gap:2px;display:flex;overflow:hidden}.month-mini-chip{border-radius:var(--radius-sm);white-space:nowrap;text-overflow:ellipsis;padding:2px 4px;font-size:10px;font-weight:600;overflow:hidden}.month-mini-chip--green{color:#14532d;background:#dcfce7}.month-mini-chip--purple{color:#581c87;background:#f3e8ff}.month-mini-chip--amber{color:#78350f;background:#fef3c7}.month-mini-chip--pink{color:#831843;background:#fce7f3}.month-mini-chip--cyan{color:#164e63;background:#cffafe}.month-more-tag{color:var(--color-sage-muted);font-size:10px;font-weight:700}.timetable-list-header{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-line);background:var(--color-paper-warm);justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.timetable-list-title h2{font-size:var(--text-heading-md);color:var(--color-evergreen-ink);margin:0 0 2px;font-weight:700}.timetable-list-title p{font-size:var(--text-body-xs);color:var(--color-sage-muted);margin:0}.timetable-list-search{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-md);min-width:280px;display:flex}.timetable-list-table{border-collapse:collapse;width:100%}.timetable-list-table th{padding:var(--space-3) var(--space-4);font-size:var(--text-caption);color:var(--color-sage-muted);text-transform:uppercase;letter-spacing:.05em;background:var(--color-paper-warm);border-bottom:2px solid var(--color-line);text-align:left;font-weight:700}.timetable-list-table td{padding:var(--space-3) var(--space-4);font-size:var(--text-body-sm);color:var(--color-evergreen-ink);border-bottom:1px solid var(--color-line);vertical-align:middle}.timetable-list-table td small{color:var(--color-sage-muted);font-size:var(--text-caption)}.lesson-table-title{align-items:center;gap:var(--space-3);display:flex}.table-lesson-thumb{border-radius:var(--radius-sm);object-fit:cover;flex-shrink:0;width:44px;height:44px}.div-badge{border-radius:var(--radius-sm);font-size:var(--text-caption);padding:2px 8px;font-weight:700;display:inline-block}.div-badge--cyan{color:#164e63;background:#cffafe}.status-badge-scheduled{border-radius:var(--radius-pill);color:#0369a1;background:#e0f2fe;padding:2px 8px;font-size:11px;font-weight:700;display:inline-block}.status-badge-cancelled{border-radius:var(--radius-pill);color:#b91c1c;background:#fee2e2;padding:2px 8px;font-size:11px;font-weight:700;display:inline-block}.table-row-actions{align-items:center;gap:var(--space-2);display:flex}.btn-icon-action{border-radius:var(--radius-sm);border:1px solid var(--color-line);background:var(--color-paper-warm);width:32px;height:32px;color:var(--color-sage-muted);cursor:pointer;transition:all var(--transition-fast);justify-content:center;align-items:center;display:inline-flex}.btn-icon-action:hover{background:var(--color-paper);color:var(--color-evergreen-ink);border-color:var(--color-line-strong)}.btn-icon-play{background:var(--color-forest);color:#fff;border-color:var(--color-forest)}.btn-icon-play:hover{background:var(--color-forest-dark,#1b4332);color:#fff}.btn-icon-cancel:hover{color:#b91c1c;background:#fee2e2;border-color:#fca5a5}.timetable-summary-cards{gap:var(--space-4);grid-template-columns:repeat(4,1fr);width:100%;display:grid}@media (width<=900px){.timetable-summary-cards{grid-template-columns:repeat(2,1fr)}}@media (width<=540px){.timetable-summary-cards{grid-template-columns:1fr}}.timetable-metric-card{background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);align-items:center;gap:12px;padding:12px 16px;display:flex}.metric-info{flex-direction:column;display:flex}.side-panel-title-row .title-icon{width:20px;height:20px;color:var(--color-forest)}.side-panel-title-row p{color:var(--color-sage-muted);margin:0;font-size:11px}.count-badge{background:var(--color-forest-soft);color:var(--color-forest);border-radius:var(--radius-pill);margin-left:auto;padding:2px 8px;font-size:11px;font-weight:800}.today-lessons-list,.unscheduled-list{padding:var(--space-3);gap:var(--space-3);flex-direction:column;max-height:380px;display:flex;overflow-y:auto}.today-lesson-item{align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-paper-warm);border:1px solid var(--color-line);transition:all var(--transition-fast);display:flex}.today-lesson-item:hover{border-color:var(--color-line-strong);transform:translate(2px)}.today-lesson-item__thumb-box{border-radius:var(--radius-sm);flex-shrink:0;width:42px;height:42px;overflow:hidden}.today-lesson-item__thumb{object-fit:cover;width:100%;height:100%}.today-lesson-item__thumb-placeholder{background:var(--color-sage-50);width:100%;height:100%;color:var(--color-sage-muted);justify-content:center;align-items:center;display:flex}.today-lesson-item__main h3{font-size:var(--text-body-sm);color:var(--color-evergreen-ink);white-space:nowrap;text-overflow:ellipsis;margin:0 0 2px;font-weight:700;overflow:hidden}.today-lesson-item__main p{color:var(--color-sage-muted);margin:0 0 2px;font-size:11px}.today-lesson-item__main time{color:var(--color-forest);font-size:11px;font-weight:700}.badge-upcoming{text-transform:uppercase;border-radius:var(--radius-pill);color:#0369a1;background:#e0f2fe;padding:2px 6px;font-size:10px;font-weight:800}.unscheduled-item{align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-paper-warm);border:1px solid var(--color-line);display:flex}.unscheduled-thumb-placeholder{border-radius:var(--radius-sm);background:var(--color-sage-50);width:42px;height:42px;color:var(--color-sage-muted);flex-shrink:0;justify-content:center;align-items:center;display:flex}.unscheduled-info p{color:var(--color-sage-muted);margin:0;font-size:11px}.unscheduled-btn{flex-shrink:0}.side-panel-card__footer{padding:var(--space-3) var(--space-4);border-top:1px solid var(--color-line);background:var(--color-paper-warm);text-align:center}.side-panel-link-btn{font-size:var(--text-body-xs);color:var(--color-forest);cursor:pointer;background:0 0;border:none;padding:0;font-weight:700}.side-panel-link-btn:hover{text-decoration:underline}.school-today-page{background:var(--color-canvas);min-height:100vh}.school-today-main{padding:var(--space-6) var(--space-8);gap:var(--space-6);flex-direction:column;width:100%;max-width:1280px;margin:0 auto;display:flex}.school-today-header{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-6);background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);flex-wrap:wrap;display:flex}.today-badge{align-items:center;gap:var(--space-2);background:var(--color-forest-soft);color:var(--color-forest);border-radius:var(--radius-pill);font-size:var(--text-label);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--space-2);padding:4px 10px;font-weight:700;display:inline-flex}.today-badge svg{width:14px;height:14px}.school-today-header h1{font-size:var(--text-heading-xl);color:var(--color-evergreen-ink);margin:0 0 var(--space-1);font-weight:800}.today-date-text{font-size:var(--text-body-md);color:var(--color-sage-muted);margin:0;font-weight:600}.school-today-stats{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.today-stat-pill{padding:var(--space-3) var(--space-5);background:var(--color-paper-warm);border:1px solid var(--color-line);border-radius:var(--radius-md);flex-direction:column;align-items:center;min-width:90px;display:flex}.today-stat-pill .stat-num{font-size:var(--text-heading-md);color:var(--color-evergreen-ink);font-weight:800;line-height:1}.today-stat-pill .stat-label{color:var(--color-sage-muted);text-transform:uppercase;margin-top:4px;font-size:11px;font-weight:600}.today-stat-pill--live{background:#f0fdf4;border-color:#86efac;position:relative}.today-stat-pill--live .stat-num{color:#16a34a}.stat-pulse{background:#22c55e;border-radius:50%;width:8px;height:8px;animation:2s infinite pulseGreen;position:absolute;top:8px;right:8px;box-shadow:0 0 #22c55eb3}@keyframes pulseGreen{0%{transform:scale(.95);box-shadow:0 0 #22c55eb3}70%{transform:scale(1);box-shadow:0 0 0 6px #22c55e00}to{transform:scale(.95);box-shadow:0 0 #22c55e00}}.school-today-filters{align-items:center;gap:var(--space-2);padding:var(--space-2);background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-md);display:flex;overflow-x:auto}.division-tab-btn{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-radius:var(--radius-sm);font-size:var(--text-body-sm);color:var(--color-sage-muted);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;background:0 0;border:1px solid #0000;font-weight:600;display:inline-flex}.division-tab-btn:hover{color:var(--color-evergreen-ink);background:var(--color-sage-50)}.division-tab-btn.is-active{background:var(--color-paper-warm);border-color:var(--color-line-strong);color:var(--color-evergreen-ink);font-weight:700}.div-dot{border-radius:50%;width:8px;height:8px;display:inline-block}.div-dot--green{background:#22c55e}.div-dot--purple{background:#8b5cf6}.div-dot--amber{background:#f59e0b}.school-today-timeline{gap:var(--space-4);flex-direction:column;display:flex}.today-lesson-card{gap:var(--space-5);padding:var(--space-5);background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);transition:all var(--transition-fast);grid-template-columns:140px 1fr auto;align-items:center;display:grid;position:relative}.today-lesson-card:hover{border-color:var(--color-line-strong);box-shadow:var(--shadow-panel);transform:translateY(-1px)}.today-lesson-card.is-live{background:linear-gradient(#fafdf9 0%,#f4fbf5 100%);border-color:#86efac;box-shadow:0 4px 16px #22c55e1a}.today-lesson-card.is-completed{opacity:.75}.today-lesson-card__time-col{flex-direction:column;display:flex;position:relative}.time-badge{font-size:var(--text-body-md);color:var(--color-evergreen-ink);align-items:center;gap:6px;display:inline-flex}.time-badge svg{width:16px;height:16px;color:var(--color-forest)}.time-range-sub{font-size:var(--text-label);color:var(--color-sage-muted);margin-top:2px;padding-left:22px;font-weight:500}.today-lesson-card__content{align-items:center;gap:var(--space-4);display:flex}.today-lesson-card__thumb-wrap{border-radius:var(--radius-md);border:1px solid var(--color-line);background:var(--color-paper-warm);flex-shrink:0;width:140px;height:90px;position:relative;overflow:hidden}.today-lesson-card__thumb{object-fit:cover;width:100%;height:100%}.today-lesson-card__thumb-placeholder{background:var(--color-sage-50);width:100%;height:100%;color:var(--color-sage-muted);justify-content:center;align-items:center;display:flex}.today-lesson-card__thumb-placeholder svg{width:28px;height:28px}.duration-pill{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;border-radius:var(--radius-xs);background:#0c110ebf;padding:2px 6px;font-size:11px;font-weight:600;position:absolute;bottom:6px;right:6px}.today-lesson-card__info{gap:var(--space-2);flex-direction:column;display:flex}.info-top-row{align-items:center;gap:var(--space-2);display:flex}.status-pill{border-radius:var(--radius-pill);text-transform:uppercase;letter-spacing:.5px;align-items:center;gap:5px;padding:3px 8px;font-size:11px;font-weight:700;display:inline-flex}.status-pill--live{color:#15803d;background:#dcfce7;border:1px solid #86efac}.status-pill--upcoming{background:var(--color-paper-warm);color:var(--color-sage-muted);border:1px solid var(--color-line)}.status-pill--completed{background:var(--color-sage-50);color:var(--color-sage-muted);border:1px solid var(--color-line)}.live-indicator-dot{background:#22c55e;border-radius:50%;width:6px;height:6px;animation:1.5s infinite pulseGreen}.week-pill{font-size:var(--text-label);color:var(--color-forest-700);background:var(--color-forest-soft);border-radius:var(--radius-pill);padding:2px 8px;font-weight:600}.lesson-title{font-size:var(--text-heading-md);color:var(--color-evergreen-ink);margin:0;font-weight:700;line-height:1.25}.lesson-desc{font-size:var(--text-body-sm);color:var(--color-sage-muted);-webkit-line-clamp:1;-webkit-box-orient:vertical;margin:0;line-height:1.4;display:-webkit-box;overflow:hidden}.lesson-meta-chips{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.meta-chip{background:var(--color-paper-warm);border:1px solid var(--color-line);border-radius:var(--radius-sm);font-size:var(--text-label);color:var(--color-evergreen-ink);align-items:center;gap:5px;padding:3px 8px;font-weight:600;display:inline-flex}.meta-chip svg{width:13px;height:13px;color:var(--color-sage-muted)}.meta-chip--green{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.meta-chip--purple{color:#6b21a8;background:#faf5ff;border-color:#e9d5ff}.meta-chip--amber{color:#92400e;background:#fffbeb;border-color:#fde68a}.meta-chip--room{color:var(--color-sage-muted)}.today-lesson-card__actions{justify-content:flex-end;align-items:center;display:flex}.btn-start-live{box-shadow:0 2px 8px #125c3b40;background:var(--color-forest)!important;color:#fff!important}.school-today-empty{padding:var(--space-12) var(--space-6);background:var(--color-paper);border:1px dashed var(--color-line);border-radius:var(--radius-lg);text-align:center;justify-content:center;align-items:center;gap:var(--space-3);flex-direction:column;display:flex}.school-today-empty .empty-icon{width:48px;height:48px;color:var(--color-sage-muted)}.school-today-empty h3{font-size:var(--text-heading-md);color:var(--color-evergreen-ink);margin:0;font-weight:700}.school-today-empty p{font-size:var(--text-body-sm);color:var(--color-sage-muted);max-width:420px;margin:0 0 var(--space-3)}@media (width<=900px){.today-lesson-card{gap:var(--space-3);grid-template-columns:1fr}.today-lesson-card__content{flex-direction:column;align-items:flex-start}.today-lesson-card__thumb-wrap{width:100%;height:160px}.today-lesson-card__actions{justify-content:flex-start;width:100%}}.timetable-page{background:var(--color-chalk-paper);min-height:100vh}.timetable-main{padding:var(--space-6);gap:var(--space-5);box-sizing:border-box;flex-direction:column;width:100%;min-width:0;max-width:1680px;margin:0 auto;display:flex}.timetable-header{justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.timetable-header h1{font-size:var(--text-heading-lg);color:var(--color-evergreen-ink);margin:0 0 var(--space-1);font-weight:700}.timetable-header p{font-size:var(--text-body-sm);color:var(--color-sage-muted);margin:0}.timetable-view-switcher{align-items:center;gap:var(--space-1);background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-lg);width:fit-content;padding:4px;display:inline-flex;box-shadow:0 1px 2px #0000000a}.timetable-view-tab{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);font-size:var(--text-body-sm);color:var(--color-sage-muted);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:1px solid #0000;font-weight:600;display:inline-flex}.timetable-view-tab svg{width:16px;height:16px}.timetable-view-tab:hover{color:var(--color-evergreen-ink);background:var(--color-sage-50)}.timetable-view-tab.is-active{background:var(--color-forest-soft);color:var(--color-forest-800);border-color:var(--color-info-border)}.timetable-page .timetable-controls-card{background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);box-sizing:border-box;scrollbar-width:none;width:100%;padding:12px 16px;overflow-x:auto;flex-flow:row!important;justify-content:space-between!important;align-items:flex-end!important;gap:12px!important;display:flex!important}.timetable-page .timetable-controls-card::-webkit-scrollbar{display:none}.timetable-filter-item{flex-direction:column;gap:4px;display:flex}.timetable-filter-item label{font-size:var(--text-label);color:var(--color-sage-muted);text-transform:uppercase;letter-spacing:.5px;font-weight:700;line-height:1}.timetable-filter-item--date{flex:none}.timetable-date-nav-group{align-items:center;gap:4px;display:flex}.date-nav-btn{background:var(--color-paper-warm);border:1px solid var(--color-line-strong);border-radius:var(--radius-md);width:36px;height:36px;color:var(--color-evergreen-ink);cursor:pointer;transition:all var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.date-nav-btn:hover{background:var(--color-sage-50);border-color:var(--color-forest);color:var(--color-forest)}.date-range-display{min-width:170px;height:36px;font-size:var(--text-body-sm);color:var(--color-evergreen-ink);background:var(--color-paper-warm);border:1px solid var(--color-line-strong);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;flex-shrink:0;justify-content:center;align-items:center;padding:0 16px;font-weight:700;display:inline-flex}.date-range-display:hover{border-color:var(--color-forest);background:var(--color-forest-soft);color:var(--color-forest-800)}.date-picker-icon-btn{background:var(--color-forest-soft);width:36px;height:36px;color:var(--color-forest);border:1px solid var(--color-info-border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.date-picker-icon-btn:hover{background:var(--color-forest);color:#fff}.timetable-filter-item--school{flex:2 240px;min-width:200px}.timetable-filter-item--grade,.timetable-filter-item--division,.timetable-filter-item--week{flex:150px;min-width:130px}.timetable-filter-item select{height:36px;font-size:var(--text-body-sm);color:var(--color-evergreen-ink);background:var(--color-paper-warm);border:1px solid var(--color-line-strong);border-radius:var(--radius-md);cursor:pointer;width:100%;transition:all var(--transition-fast);box-sizing:border-box;outline:none;padding:0 12px;font-weight:600}.timetable-filter-item select:focus{border-color:var(--color-forest);box-shadow:0 0 0 3px #1e4d3b1f}.timetable-filter-item select:disabled{background:var(--color-sage-50);border-color:var(--color-line);color:var(--color-sage-muted);cursor:not-allowed;opacity:.75}.timetable-filter-item .searchable-select{width:100%}.timetable-filter-item .searchable-select__control{background:var(--color-paper-warm);border:1px solid var(--color-line-strong);border-radius:var(--radius-md);box-sizing:border-box;height:36px;min-height:36px}.timetable-filter-item .searchable-select__control input{min-height:34px;font-size:var(--text-body-sm);padding:0 8px;font-weight:600}.timetable-filter-item .searchable-select--disabled .searchable-select__control{background:var(--color-sage-50);border-color:var(--color-line);opacity:.75;cursor:not-allowed}.timetable-filter-item .searchable-select--disabled .searchable-select__control input{color:var(--color-sage-muted);cursor:not-allowed}.timetable-workspace-layout{gap:var(--space-5);flex-direction:column;width:100%;min-width:0;max-width:100%;display:flex}.timetable-main-column{gap:var(--space-5);flex-direction:column;min-width:0;max-width:100%;display:flex}.timetable-calendar-card{background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-lg);min-width:0;max-width:100%;box-shadow:var(--shadow-card);overflow:hidden}.timetable-grid-wrapper{overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;max-width:100%;overflow-x:auto}.timetable-grid{border-collapse:collapse;width:100%;min-width:780px}.timetable-th{padding:var(--space-3) var(--space-2);text-align:center;border-bottom:1px solid var(--color-line);border-right:1px solid var(--color-line);background:var(--color-paper-warm);font-size:var(--text-body-sm);color:var(--color-evergreen-ink);font-weight:600}.timetable-th--time{text-align:left;width:90px;min-width:90px;padding-left:var(--space-4);color:var(--color-sage-muted);font-size:var(--text-label);text-transform:uppercase}.timetable-th--day{width:calc(14.2857% - 12.8571px)}.timetable-th--day .day-name{font-size:var(--text-body-sm);font-weight:700;display:block}.timetable-th--day .day-date{font-size:var(--text-label);color:var(--color-sage-muted);margin-top:2px;font-weight:500;display:block}.timetable-th--day.is-today{background:var(--color-forest-soft);color:var(--color-forest-800)}.timetable-th--day.is-today .day-name{color:var(--color-forest-700)}.timetable-th--day.is-today .day-date{color:var(--color-forest-600);font-weight:700}.timetable-td{border-bottom:1px solid var(--color-line);border-right:1px solid var(--color-line);vertical-align:top;height:98px;max-height:98px;padding:4px}.timetable-td--slot{background:var(--color-paper);cursor:pointer;transition:background var(--transition-fast);position:relative;overflow:hidden}.timetable-td--slot.is-observation-empty{cursor:default}.timetable-td--slot.is-observation-empty:hover{background:var(--color-paper)}.month-cell.is-observation-empty{cursor:default}.timetable-td--slot.has-popover-open{z-index:25;overflow:visible}.timetable-slot-stack{flex-direction:column;gap:3px;height:100%;max-height:90px;display:flex;overflow:hidden}.timetable-slot-card{border-radius:var(--radius-sm);text-align:left;cursor:pointer;width:100%;min-height:0;font:inherit;border:1px solid #0000;border-left-width:3px;flex-direction:column;flex-shrink:0;align-items:flex-start;gap:1px;padding:5px 7px;display:flex;box-shadow:0 1px 2px #0f172a0d}.timetable-slot-card:hover{filter:brightness(.98)}.timetable-slot-card__school{letter-spacing:.04em;text-transform:uppercase;opacity:.9;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:8px;font-weight:800;line-height:1.1;overflow:hidden}.timetable-slot-card__title{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:10px;font-weight:700;line-height:1.25;overflow:hidden}.timetable-slot-card__meta{opacity:.85;justify-content:space-between;align-items:center;gap:4px;width:100%;font-size:9px;font-weight:600;line-height:1.1;display:flex}.timetable-slot-card__meta em{flex-shrink:0;font-style:normal;font-weight:700}.timetable-slot-card--green{color:#14532d;background:#eaf7ee;border-color:#bce6c6 #bce6c6 #bce6c6 #22c55e}.timetable-slot-card--purple{color:#4c1d95;background:#f4f0ff;border-color:#dcd0ff #dcd0ff #dcd0ff #8b5cf6}.timetable-slot-card--amber{color:#78350f;background:#fef8eb;border-color:#fde6b8 #fde6b8 #fde6b8 #f59e0b}.timetable-slot-card--pink{color:#831843;background:#fdf2f8;border-color:#fbcfe8 #fbcfe8 #fbcfe8 #ec4899}.timetable-slot-card--cyan{color:#155e75;background:#ecfeff;border-color:#a5f3fc #a5f3fc #a5f3fc #06b6d4}.timetable-slot-card--unassigned{opacity:.95;border-style:dashed dashed dashed solid}.timetable-slot-card__unassigned-label{color:#92400e;align-items:center;gap:4px;font-style:italic;font-weight:700;display:inline-flex}.timetable-slot-card__dot{background:#f59e0b;border-radius:50%;flex-shrink:0;width:5px;height:5px;display:inline-block}.timetable-slot-card__tag{color:#b45309;letter-spacing:.02em;text-transform:uppercase;background:#f59e0b2e;border-radius:3px;padding:1px 4px;font-size:8px;font-weight:700;display:inline-block}.timetable-card--unassigned{border-style:dashed dashed dashed solid}.timetable-unassigned-badge{border-radius:var(--radius-sm);color:#92400e;letter-spacing:.03em;text-transform:uppercase;background:#fef3c7;border:1px solid #fde68a;align-items:center;margin-left:auto;padding:1px 6px;font-size:9px;font-weight:700;display:inline-flex}.table-lesson-thumb-placeholder.is-unassigned{color:#d97706;background:#fffbeb;border:1px dashed #fcd34d}.table-unassigned-tag{font-style:italic;display:inline-block;color:#b45309!important}.month-lesson-pill--unassigned{opacity:.9;border-style:dashed;font-style:italic}.timetable-slot-unassigned-banner{border-radius:var(--radius-md);color:#92400e;background:#fffbeb;border:1px solid #fde68a;align-items:flex-start;gap:8px;margin-bottom:16px;padding:10px 14px;font-size:12px;line-height:1.4;display:flex}.timetable-slot-unassigned-banner svg{color:#d97706;flex-shrink:0;width:16px;height:16px;margin-top:2px}.timetable-slot-more{border:1px dashed var(--color-line-strong);border-radius:var(--radius-sm);background:var(--color-sage-50);width:100%;color:var(--color-forest);cursor:pointer;text-align:center;flex-shrink:0;padding:3px 6px;font-size:10px;font-weight:800;display:block}.timetable-slot-more:hover{background:var(--color-forest-soft);border-color:var(--color-forest)}.timetable-slot-popover{z-index:50;background:var(--color-paper);border:1px solid var(--color-line-strong);border-radius:var(--radius-md);flex-direction:column;min-width:220px;max-height:min(340px,70vh);display:flex;position:absolute;top:2px;left:2px;right:2px;box-shadow:0 12px 28px #0f172a29}.timetable-slot-popover__header{border-bottom:1px solid var(--color-line);background:var(--color-paper-warm);grid-template-columns:1fr auto;align-items:center;gap:2px 8px;padding:8px 10px;display:grid}.timetable-slot-popover__header strong{color:var(--color-evergreen-ink);font-size:11px}.timetable-slot-popover__header span{color:var(--color-sage-muted);grid-column:1;font-size:10px}.timetable-slot-popover__close{border-radius:var(--radius-sm);width:22px;height:22px;color:var(--color-sage-muted);cursor:pointer;background:0 0;border:none;grid-area:1/2/span 2;font-size:16px;line-height:1}.timetable-slot-popover__close:hover{background:var(--color-sage-50);color:var(--color-evergreen-ink)}.timetable-slot-popover__list{flex-direction:column;gap:4px;padding:6px;display:flex;overflow-y:auto}.timetable-td--slot:hover{background:var(--color-sage-50)}.timetable-td--slot.is-today-col{background:#1e4d3b05}.timetable-td--slot.is-today-col:hover{background:#1e4d3b0d}.timetable-td--time{padding-left:var(--space-4);padding-top:var(--space-2);font-size:var(--text-data);color:var(--color-sage-muted);background:var(--color-paper-warm);white-space:nowrap;font-weight:600}.timetable-card{border-radius:var(--radius-md);cursor:pointer;transition:box-shadow var(--transition-fast);flex-shrink:0;margin-bottom:0;padding:6px 8px;box-shadow:0 1px 2px #0000000d}.timetable-slot-stack .timetable-card:hover,.timetable-slot-popover__list .timetable-card:hover{transform:none;box-shadow:0 2px 6px #00000014}.timetable-card:hover{transform:translateY(-1px);box-shadow:0 3px 6px #00000014}.timetable-card__school{letter-spacing:.03em;text-transform:uppercase;opacity:.9;white-space:nowrap;text-overflow:ellipsis;margin-bottom:3px;font-size:9px;font-weight:800;display:block;overflow:hidden}.timetable-card__header{justify-content:space-between;align-items:center;gap:4px;margin-bottom:2px;display:flex}.timetable-card__title{font-size:var(--text-data);white-space:nowrap;text-overflow:ellipsis;font-weight:700;line-height:1.2;overflow:hidden}.timetable-card__thumb{border-radius:var(--radius-sm);object-fit:cover;flex-shrink:0;width:20px;height:20px}.timetable-card__icon{opacity:.8;flex-shrink:0;width:12px;height:12px}.timetable-card__meta{flex-direction:column;gap:1px;display:flex}.timetable-card__div{opacity:.85;font-size:10px;font-weight:600}.timetable-card__time{opacity:.75;font-size:10px}.timetable-card--green{color:#14532d;background:#eaf7ee;border:1px solid #bce6c6;border-left:3px solid #22c55e}.timetable-card--purple{color:#4c1d95;background:#f4f0ff;border:1px solid #dcd0ff;border-left:3px solid #8b5cf6}.timetable-card--amber{color:#78350f;background:#fef8eb;border:1px solid #fde6b8;border-left:3px solid #f59e0b}.timetable-card--pink{color:#831843;background:#fdf2f8;border:1px solid #fbcfe8;border-left:3px solid #ec4899}.timetable-card--cyan{color:#164e63;background:#ecfeff;border:1px solid #bae6fd;border-left:3px solid #06b6d4}.timetable-legend{padding:var(--space-3) var(--space-5);background:var(--color-paper-warm);border-top:1px solid var(--color-line);font-size:var(--text-data);justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;font-weight:600;display:flex}.legend-items{align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.legend-item{color:var(--color-evergreen-ink);align-items:center;gap:6px;display:flex}.legend-dot{border-radius:50%;width:8px;height:8px;display:inline-block}.legend-dot--purple{background:#8b5cf6}.legend-dot--pink{background:#ec4899}.legend-note{color:var(--color-sage-muted);align-items:center;gap:6px;display:flex}.legend-note svg{width:14px;height:14px}.timetable-summary-cards{gap:var(--space-4);grid-template-columns:repeat(4,minmax(0,1fr));width:100%;min-width:0;display:grid}@media (width<=900px){.timetable-summary-cards{grid-template-columns:repeat(2,1fr)}}@media (width<=540px){.timetable-summary-cards{grid-template-columns:1fr}}.timetable-metric-card{background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-lg);min-width:0;box-shadow:var(--shadow-card);box-sizing:border-box;align-items:center;gap:12px;padding:12px 16px;display:flex}.metric-icon-box{border-radius:var(--radius-md);flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.metric-icon-box svg{width:18px;height:18px}.metric-icon-box--purple{color:#7c3aed;background:#f4f0ff}.metric-icon-box--green{color:#16a34a;background:#eaf7ee}.metric-icon-box--amber{color:#d97706;background:#fef8eb}.metric-icon-box--pink{color:#db2777;background:#fdf2f8}.metric-info{flex-direction:column;min-width:0;display:flex}.metric-label{color:var(--color-sage-muted);text-transform:uppercase;letter-spacing:.5px;font-size:10.5px;font-weight:700}.metric-value{color:var(--color-evergreen-ink);margin:1px 0;font-size:20px;font-weight:800;line-height:1.15}.metric-sub{color:var(--color-sage-muted);font-size:11px}.timetable-side-column{gap:var(--space-4);flex-direction:column;display:flex}.side-panel-card{background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);overflow:hidden}.side-panel-card__header{padding:var(--space-4);border-bottom:1px solid var(--color-line);background:var(--color-paper-warm)}.side-panel-title-row{align-items:center;gap:var(--space-3);display:flex}.side-panel-title-row .title-icon{color:#7c3aed;flex-shrink:0;width:20px;height:20px}.side-panel-title-row h2{font-size:var(--text-body-md);color:var(--color-evergreen-ink);margin:0;font-weight:700}.side-panel-title-row p{font-size:var(--text-label);color:var(--color-sage-muted);margin:2px 0 0}.side-panel-title-row .count-badge{color:#7c3aed;border-radius:var(--radius-pill);background:#f4f0ff;justify-content:center;align-items:center;width:20px;height:20px;margin-left:auto;font-size:11px;font-weight:700;display:inline-flex}.today-lessons-list{padding:var(--space-3);gap:var(--space-2);flex-direction:column;display:flex}.today-lesson-item{align-items:center;gap:var(--space-3);padding:var(--space-3);background:var(--color-paper-warm);border:1px solid var(--color-line);border-radius:var(--radius-md);transition:all var(--transition-fast);display:flex}.today-lesson-item:hover{background:var(--color-paper);border-color:var(--color-line-strong)}.today-lesson-item__thumb-box{border-radius:var(--radius-sm);background:var(--color-line);flex-shrink:0;justify-content:center;align-items:center;width:48px;height:36px;display:flex;overflow:hidden}.today-lesson-item__thumb{object-fit:cover;width:100%;height:100%;display:block}.today-lesson-item__thumb-placeholder{width:100%;height:100%;color:var(--color-sage-muted);justify-content:center;align-items:center;display:flex}.today-lesson-item__thumb-placeholder svg{width:18px;height:18px}.today-lesson-item--green{border-left:3px solid #22c55e}.today-lesson-item--purple{border-left:3px solid #8b5cf6}.today-lesson-item--amber{border-left:3px solid #f59e0b}.today-lesson-item--pink{border-left:3px solid #ec4899}.today-lesson-item__main{flex:1;min-width:0}.today-lesson-item__main h3{font-size:var(--text-body-sm);color:var(--color-evergreen-ink);margin:0 0 2px;font-weight:700}.today-lesson-item__school{color:var(--color-forest);margin:0 0 3px;font-size:10px;font-weight:700}.today-lesson-item__main p{font-size:var(--text-label);color:var(--color-sage-muted);margin:0 0 2px}.today-lesson-item__main time{font-size:var(--text-label);color:var(--color-forest-700);font-weight:600}.badge-upcoming{color:#16a34a;border-radius:var(--radius-pill);background:#eaf7ee;align-items:center;padding:3px 8px;font-size:10px;font-weight:700;display:inline-flex}.unscheduled-list{padding:var(--space-3);gap:var(--space-2);flex-direction:column;display:flex}.unscheduled-item{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--color-paper-warm);border:1px solid var(--color-line);border-radius:var(--radius-md);display:flex}.unscheduled-thumb{border-radius:var(--radius-sm);object-fit:cover;flex-shrink:0;width:48px;height:36px}.unscheduled-info{flex:1;min-width:0}.unscheduled-info h3{font-size:var(--text-body-sm);color:var(--color-evergreen-ink);white-space:nowrap;text-overflow:ellipsis;margin:0 0 2px;font-weight:700;overflow:hidden}.unscheduled-info p{font-size:var(--text-label);color:var(--color-sage-muted);margin:0}.unscheduled-btn{font-size:var(--text-label);flex-shrink:0;height:28px;padding:4px 10px}.empty-unscheduled-text{font-size:var(--text-body-sm);color:var(--color-sage-muted);text-align:center;padding:var(--space-4);margin:0}.side-panel-card__footer{padding:var(--space-3);text-align:center;border-top:1px solid var(--color-line);background:var(--color-paper-warm)}.side-panel-link-btn{font-size:var(--text-body-sm);color:#7c3aed;cursor:pointer;transition:color var(--transition-fast);background:0 0;border:none;padding:0;font-weight:600}.side-panel-link-btn:hover{color:#5b21b6;text-decoration:underline}.timetable-list-card{background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);overflow:hidden}.timetable-list-header{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-line);background:var(--color-paper-warm);flex-wrap:wrap;display:flex}.timetable-list-header h2{font-size:var(--text-heading-md);color:var(--color-evergreen-ink);margin:0;font-weight:700}.timetable-list-search{align-items:center;gap:var(--space-2);padding:0 var(--space-3);background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-md);width:280px;height:36px;display:flex}.timetable-list-search svg{width:16px;height:16px;color:var(--color-sage-muted)}.timetable-list-search input{font-size:var(--text-body-sm);color:var(--color-evergreen-ink);background:0 0;border:none;outline:none;width:100%}.timetable-table-container{overflow-x:auto}.timetable-list-table{border-collapse:collapse;width:100%;font-size:var(--text-body-sm)}.timetable-list-table th{padding:var(--space-3) var(--space-4);text-align:left;background:var(--color-paper-warm);border-bottom:1px solid var(--color-line);color:var(--color-sage-muted);font-weight:700;font-size:var(--text-label);text-transform:uppercase;letter-spacing:.5px}.timetable-list-table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-line);color:var(--color-evergreen-ink);vertical-align:middle}.timetable-list-table tr:hover td{background:var(--color-sage-50)}.timetable-list-table td strong{display:block}.timetable-list-table td small{font-size:var(--text-label);color:var(--color-sage-muted)}.lesson-table-title{align-items:center;gap:var(--space-3);color:var(--color-forest-800);display:flex}.table-lesson-thumb{border-radius:var(--radius-sm);object-fit:cover;background:var(--color-line);flex-shrink:0;width:48px;height:34px;display:block}.table-lesson-thumb-placeholder{border-radius:var(--radius-sm);background:var(--color-line);width:48px;height:34px;color:var(--color-sage-muted);flex-shrink:0;justify-content:center;align-items:center;display:flex}.table-lesson-thumb-placeholder svg{width:16px;height:16px}.div-badge{border-radius:var(--radius-pill);align-items:center;padding:2px 8px;font-size:11px;font-weight:700;display:inline-flex}.div-badge--green{color:#16a34a;background:#eaf7ee}.div-badge--purple{color:#7c3aed;background:#f4f0ff}.div-badge--amber{color:#d97706;background:#fef8eb}.div-badge--pink{color:#db2777;background:#fdf2f8}.status-badge-upcoming,.status-badge-scheduled{background:var(--color-success-bg);color:var(--color-success);border-radius:var(--radius-pill);align-items:center;padding:3px 8px;font-size:11px;font-weight:600;display:inline-flex}.status-badge-cancelled{background:var(--color-danger-bg);color:var(--color-danger);border-radius:var(--radius-pill);align-items:center;padding:3px 8px;font-size:11px;font-weight:600;display:inline-flex}.status-badge-orphaned{background:var(--color-warning-bg);color:var(--color-warning);border-radius:var(--radius-pill);align-items:center;padding:3px 8px;font-size:11px;font-weight:600;display:inline-flex}.unscheduled-thumb-placeholder,.timetable-video-preview__placeholder{border-radius:var(--radius-sm);background:var(--color-sage-50);border:1px solid var(--color-line);width:48px;height:36px;color:var(--color-sage-muted);flex-shrink:0;justify-content:center;align-items:center;display:flex}.unscheduled-thumb-placeholder svg,.timetable-video-preview__placeholder svg{width:18px;height:18px}.table-actions{align-items:center;gap:var(--space-1);display:flex}.table-action-btn{border:1px solid var(--color-line);border-radius:var(--radius-sm);width:28px;height:28px;color:var(--color-sage-muted);cursor:pointer;transition:all var(--transition-fast);background:0 0;justify-content:center;align-items:center;display:flex}.table-action-btn:hover{background:var(--color-paper);color:var(--color-evergreen-ink);border-color:var(--color-line-strong)}.table-action-btn.is-danger:hover{background:var(--color-danger-bg);color:var(--color-danger);border-color:var(--color-danger-border)}.timetable-month-card{background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);overflow:hidden}.timetable-month-header{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-line);background:var(--color-paper-warm);justify-content:space-between;align-items:center;display:flex}.timetable-month-header h2{font-size:var(--text-heading-md);margin:0;font-weight:700}.timetable-month-header span{font-size:var(--text-body-sm);color:var(--color-sage-muted)}.timetable-month-grid{background:var(--color-line);grid-template-columns:repeat(7,1fr);gap:1px;display:grid}.month-cell{background:var(--color-paper);cursor:pointer;min-height:90px;transition:background var(--transition-fast);padding:6px}.month-cell:hover{background:var(--color-sage-50)}.month-cell.is-today{background:var(--color-forest-soft)}.month-cell__header{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.month-cell__day{color:var(--color-sage-muted);font-size:11px;font-weight:700}.month-cell.is-today .month-cell__day{color:var(--color-forest-800)}.month-cell__badge{background:var(--color-forest);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;font-size:9px;font-weight:700;display:inline-flex}.month-cell__lessons{flex-direction:column;gap:2px;display:flex}.month-lesson-pill{border-radius:var(--radius-xs);white-space:nowrap;text-overflow:ellipsis;padding:2px 4px;font-size:9px;font-weight:700;overflow:hidden}.month-lesson-pill__school{letter-spacing:.03em;opacity:.85;margin-bottom:1px;font-size:8px;font-weight:800;display:block}.month-lesson-pill--green{color:#16a34a;background:#eaf7ee}.month-lesson-pill--purple{color:#7c3aed;background:#f4f0ff}.month-lesson-pill--amber{color:#d97706;background:#fef8eb}.month-lesson-pill--pink{color:#db2777;background:#fdf2f8}.month-lesson-more{color:var(--color-sage-muted);padding-left:2px;font-size:9px;font-weight:600}:root[data-theme=dark] .timetable-card--green{color:#86efac;background:#143525;border-color:#235c41}:root[data-theme=dark] .timetable-card--purple{color:#c4b5fd;background:#271d3d;border-color:#4c337d}:root[data-theme=dark] .timetable-card--amber{color:#fde68a;background:#33230c;border-color:#634316}:root[data-theme=dark] .timetable-card--pink{color:#fbcfe8;background:#361528;border-color:#6b264e}:root[data-theme=dark] .timetable-card--cyan{color:#a5f3fc;background:#0d2c38;border-color:#1a5166}:root[data-theme=dark] .metric-icon-box--purple{color:#c4b5fd;background:#271d3d}:root[data-theme=dark] .metric-icon-box--green{color:#86efac;background:#143525}:root[data-theme=dark] .metric-icon-box--amber{color:#fde68a;background:#33230c}:root[data-theme=dark] .metric-icon-box--pink{color:#fbcfe8;background:#361528}:root[data-theme=dark] .badge-upcoming{color:#86efac;background:#143525}:root[data-theme=dark] .side-panel-title-row .count-badge{color:#c4b5fd;background:#271d3d}@media (width<=1200px){.timetable-page .timetable-controls-card{grid-template-columns:repeat(2,minmax(0,1fr));overflow-x:visible;justify-content:stretch!important;align-items:end!important;gap:12px 14px!important;display:grid!important}.timetable-filter-item{min-width:0}.timetable-filter-item--date{grid-column:1/-1}.timetable-filter-item--school,.timetable-filter-item--grade,.timetable-filter-item--division,.timetable-filter-item--week{flex:initial;min-width:0}}@media (width<=1024px){.network-main.timetable-main{gap:var(--space-4)}.timetable-header h1{font-size:var(--text-heading-md)}.timetable-date-nav-group{flex-wrap:wrap}.date-range-display{flex:auto;min-width:0;padding-inline:10px}}@media (width<=768px){.network-page.timetable-page{padding-bottom:calc(72px + env(safe-area-inset-bottom));grid-template-columns:minmax(0,1fr)}.network-main.timetable-main{padding:var(--space-4);padding-bottom:calc(var(--space-6) + env(safe-area-inset-bottom))}.timetable-header{align-items:flex-start;gap:var(--space-3);flex-direction:column}.timetable-header>.button{justify-content:center;width:100%}.timetable-page .timetable-controls-card{grid-template-columns:repeat(2,minmax(0,1fr));padding:12px}.date-range-display{min-width:0;font-size:var(--text-label)}.timetable-grid{min-width:700px}.timetable-th--time,.timetable-td--time{z-index:3;position:sticky;left:0}.timetable-th--time{z-index:4;width:72px;min-width:72px;padding-left:var(--space-3)}.timetable-td--time{padding-left:var(--space-3);box-shadow:1px 0 0 var(--color-line)}.timetable-th--day{width:auto;min-width:88px}.timetable-td{height:84px;max-height:84px}.timetable-slot-stack{max-height:76px}.timetable-slot-popover{width:max-content;min-width:0;max-width:min(260px,74vw)}.timetable-page .timetable-legend{padding:var(--space-3);row-gap:var(--space-2)}.timetable-page .legend-items{gap:var(--space-3)}}@media (width<=560px){.timetable-page .timetable-summary-cards{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr))}.timetable-page .timetable-metric-card{gap:10px;padding:10px 12px}.timetable-page .metric-icon-box{width:32px;height:32px}.timetable-page .metric-icon-box svg{width:16px;height:16px}.timetable-page .metric-label{letter-spacing:.3px;font-size:9.5px;line-height:1.25}.timetable-page .metric-value{font-size:18px}.timetable-page .metric-sub{font-size:10px}.timetable-page .timetable-controls-card{grid-template-columns:minmax(0,1fr)}.timetable-filter-item--date{grid-column:auto}.timetable-date-nav-group{flex-wrap:nowrap}.date-nav-btn,.date-picker-icon-btn{width:34px;height:34px}.timetable-grid{min-width:620px}.timetable-th--time,.timetable-th--time.timetable-th{width:62px;min-width:62px;padding-left:var(--space-2)}.timetable-td--time{padding-left:var(--space-2);font-size:10px}.timetable-th--day{min-width:78px;padding-inline:4px}.timetable-td{height:76px;max-height:76px}.timetable-slot-stack{max-height:68px}.timetable-page .timetable-legend{flex-direction:column;align-items:flex-start}}@media (width<=400px){.timetable-page .timetable-summary-cards{grid-template-columns:minmax(0,1fr)}.timetable-page .metric-label{font-size:10px}.timetable-page .metric-value{font-size:19px}.timetable-header h1{font-size:21px}}.video-status--scheduled,.video-status--processing{color:var(--color-warning);background:var(--color-warning-bg)}@media (width<=1180px){.video-grid--grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=900px){.video-grid--grid{grid-template-columns:repeat(2,minmax(0,1fr))}.video-library-toolbar__filters{flex-wrap:wrap;justify-content:flex-start}.video-library-scope{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=620px){.video-library-heading{display:grid}.video-library-heading__actions{flex-direction:column;align-items:stretch}.video-grid--grid,.video-grid--list .video-card{grid-template-columns:1fr}.video-filter{flex:1 1 calc(50% - var(--space-2))}.video-filter select,.video-library-toolbar__filters .button{width:100%}.video-library-scope{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.video-card:hover,.video-card:focus-within,.video-card__actions{transform:none}}@media (width<=520px){.video-upload-backdrop{align-items:end;padding:0}.video-upload-dialog{width:100%;padding:var(--space-5);border-radius:16px 16px 0 0}.video-upload-fields{grid-template-columns:1fr}.video-upload-fields label:last-child,.video-upload-fields .is-wide{grid-column:auto}.video-upload-dialog>footer .button,.video-upload-dialog>form>footer .button{flex:1}.video-library-pagination{justify-content:space-between;align-items:center;gap:var(--space-2);padding-top:var(--space-3);flex-direction:row;display:flex}.video-library-pagination>span{white-space:nowrap;font-size:11px}.video-library-pagination>div{flex-shrink:0;gap:6px;display:flex}.video-library-pagination .button{width:auto;min-height:32px;padding:4px 10px;font-size:12px}.video-library-pagination .button svg{width:14px;height:14px}}@media (prefers-reduced-motion:reduce){.video-upload-backdrop,.video-upload-dialog{animation:none}}@keyframes fadeInOverlay{0%{opacity:0}to{opacity:1}}@media (width<=1024px){.player-layout{grid-template-columns:1fr}.player-layout__side{position:static}}@media (width<=640px){.player-title-header{flex-direction:column}.player-quick-actions{width:100%}.player-quick-actions .button{flex:1}.player-context-pills{flex-direction:column;align-items:stretch}.context-pill{justify-content:flex-start}.player-assignment-meta{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.spinner-icon{animation-duration:1.6s}.player-back-btn:hover{transform:none}}@media (width<=768px){.reports-main{padding:var(--space-4);gap:var(--space-4)}}@media (width<=480px){.reports-main{padding:var(--space-3);gap:var(--space-3)}}@media (width<=640px){.reports-hero{flex-direction:column;align-items:flex-start}.reports-hero__actions{justify-content:flex-start;width:100%}}@media (width<=1400px){.reports-kpi-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=768px){.reports-kpi-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=480px){.reports-kpi-grid{grid-template-columns:1fr}}@media (width<=1024px){.reports-analytics-grid{grid-template-columns:1fr}}@keyframes tooltipFadeIn{0%{opacity:0;transform:translate(-50%,-105%)}to{opacity:1;transform:translate(-50%,-115%)}}@keyframes tooltipFadeInStart{0%{opacity:0;transform:translateY(-105%)}to{opacity:1;transform:translateY(-115%)}}@keyframes tooltipFadeInEnd{0%{opacity:0;transform:translate(-100%,-105%)}to{opacity:1;transform:translate(-100%,-115%)}}@media (width<=480px){.reports-donut-summary{flex-direction:column;align-items:stretch}.reports-donut-visual{align-self:center}.reports-legend-list{width:100%}}@media (width<=640px){.reports-filter-actions{justify-content:flex-start;width:100%}.reports-export-dropdown,.reports-export-btn,.reports-reset-btn{flex:1;min-width:0}}@media (width>=1400px){.reports-filter-bar__options{grid-template-columns:repeat(7,1fr)}}@media (width<=1024px){.reports-filter-bar__options{grid-template-columns:repeat(4,1fr)}}@media (width<=768px){.reports-filter-bar__options{grid-template-columns:repeat(2,1fr)}}@media (width<=480px){.reports-filter-bar__options{grid-template-columns:1fr}}.reports-table tr:hover td,.reports-table tr:hover td:first-child{background:var(--color-sage-50)}@media (width<=640px){.sub-report-container{padding:var(--space-4)}}@media (width<=640px){.reports-modal__section-grid{grid-template-columns:1fr}}@media (width<=640px){.reports-modal__metrics-bar{grid-template-columns:repeat(2,1fr)}}@media (width<=1024px){.network-main.reports-main{padding:var(--space-5)}.reports-analytics-card{padding:var(--space-4)}}@media (width<=768px){.network-page.reports-page-shell{padding-bottom:calc(72px + env(safe-area-inset-bottom));grid-template-columns:minmax(0,1fr)}.network-main.reports-main{padding:var(--space-4);padding-bottom:calc(var(--space-6) + env(safe-area-inset-bottom))}.network-hero.reports-hero{align-items:flex-start;gap:var(--space-3);flex-direction:column}.reports-hero h1{font-size:var(--text-heading-xl)}.reports-hero__actions{width:100%}.reports-hero__actions .button{justify-content:center;width:100%}.reports-global-filters .reports-filter-bar,.reports-unified-module .reports-filter-bar{padding:12px}.reports-global-filters__header{padding:10px 12px}.reports-filter-bar__top{flex-direction:column;align-items:stretch}.reports-filter-search{flex:none;width:100%;min-width:0}.reports-filter-actions{gap:var(--space-2);flex:none;width:100%}.reports-filter-count{width:100%}.reports-export-dropdown,.reports-export-btn,.reports-reset-btn{flex:1 1 0;min-width:0}.reports-export-btn,.reports-reset-btn{width:100%!important;padding-inline:var(--space-2)!important}.reports-export-menu{width:100%;min-width:0;left:0;right:auto}.reports-export-menu button{white-space:normal;line-height:1.35}.reports-tabs-bar,.reports-unified-module .reports-tabs-bar{gap:0;padding-inline:10px}.reports-tab-btn{padding:12px 10px;font-size:12.5px}.reports-analytics-card__header{margin-bottom:var(--space-3);flex-direction:column;align-items:flex-start;gap:4px}.daily-trend-y-axis,.daily-trend-chart-container{height:170px;min-height:170px}.daily-trend-svg{height:170px}.chart-hover-tooltip{max-width:62vw}.reports-modal-backdrop{padding:var(--space-2)}.reports-modal,.reports-modal.reports-modal--wide{max-height:94vh;width:100%!important;max-width:100%!important}.reports-modal__header{align-items:flex-start;gap:var(--space-3);padding:var(--space-4)}.reports-modal__body{padding:var(--space-4);gap:var(--space-4)}.reports-modal__footer{padding:var(--space-3) var(--space-4)}.sub-report-table-wrap .reports-table{min-width:760px}}@media (width<=560px){.network-main.reports-main{padding:var(--space-3)}.reports-hero h1{font-size:26px;line-height:1.15}.reports-hero p{font-size:var(--text-body-sm)}.reports-kpi-grid{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr))}.reports-kpi-card{min-height:0;padding:var(--space-3)}.reports-kpi-card__top{align-items:flex-start;margin-bottom:6px}.reports-kpi-card__label{letter-spacing:.02em;font-size:10px}.reports-kpi-card__icon{width:26px;height:26px}.reports-kpi-card__icon svg{width:14px;height:14px}.reports-kpi-card__value{font-size:19px}.reports-kpi-card__sub{font-size:10px;line-height:1.3}.reports-analytics-card{padding:var(--space-3)}.reports-donut-summary{align-items:stretch;gap:var(--space-3);flex-direction:column}.reports-donut-visual{flex:none;align-self:center;width:132px;height:132px}.donut-circle{width:84px;height:84px}.reports-legend-list{width:100%}.legend-stat-row{padding:8px 10px}.reports-table-empty{padding:var(--space-6) var(--space-4)}.sub-report-table-wrap .reports-table{min-width:640px}.sub-report-title{font-size:var(--text-body-md)}}@media (width<=400px){.reports-kpi-grid{grid-template-columns:minmax(0,1fr)}.reports-kpi-card__label{font-size:10.5px}.reports-hero h1{font-size:23px}.reports-tab-btn{padding:11px 8px;font-size:12px}}.reports-table-container.is-refreshing{opacity:.6;pointer-events:none;transition:opacity var(--transition-fast)}.empty-icon.is-spinning,.viewing-detail-state .is-spinning{animation:.9s linear infinite reports-spin}@keyframes reports-spin{to{transform:rotate(360deg)}}.viewing-table th{white-space:nowrap}.viewing-sort-btn{font:inherit;color:inherit;cursor:pointer;text-transform:inherit;letter-spacing:inherit;background:0 0;border:0;align-items:center;gap:4px;padding:0;display:inline-flex}.viewing-sort-btn svg{opacity:.45;flex-shrink:0;width:12px;height:12px}.viewing-sort-btn:hover svg,.viewing-sort-btn.is-active svg{opacity:1;color:var(--color-forest)}.viewing-sort-btn.is-active{color:var(--color-forest)}.viewing-school{flex-direction:column;gap:2px;min-width:150px;display:flex}.viewing-school strong{font-size:var(--text-body-sm);color:var(--color-evergreen-ink);font-weight:700}.viewing-school span{color:var(--color-sage-muted);font-size:11px}.viewing-school__code{letter-spacing:.04em;font-style:normal;font-weight:700}.viewing-video{align-items:center;gap:var(--space-3);min-width:230px;max-width:300px;display:flex}.viewing-video__thumb{border-radius:var(--radius-sm);object-fit:cover;background:var(--color-sage-50);border:1px solid var(--color-line);flex-shrink:0;width:56px;height:34px}.viewing-video__thumb--empty{justify-content:center;align-items:center;display:flex}.viewing-video__thumb--empty svg{width:16px;height:16px;color:var(--color-sage-muted)}.viewing-video__meta{flex-direction:column;gap:2px;min-width:0;display:flex}.viewing-video__meta strong{font-size:var(--text-body-sm);color:var(--color-evergreen-ink);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.viewing-video__meta span{color:var(--color-sage-muted);font-size:11px}.viewing-context{flex-direction:column;gap:4px;min-width:170px;display:flex}.viewing-context__primary{font-size:var(--text-body-sm);color:var(--color-evergreen-ink);font-weight:600}.viewing-context__pills{flex-wrap:wrap;gap:4px;display:flex}.viewing-context__pills em{border-radius:var(--radius-pill);background:var(--color-forest-soft);color:var(--color-forest);padding:2px 7px;font-size:11px;font-style:normal;font-weight:600}.viewing-context__pills em.is-muted{background:var(--color-sage-50);color:var(--color-sage-muted)}.viewing-context__scheduled{color:var(--color-sage-muted);font-size:11px}.viewing-progress{flex-direction:column;gap:5px;min-width:140px;display:flex}.viewing-progress__bar{border-radius:var(--radius-pill);background:var(--color-sage-50);height:6px;overflow:hidden}.viewing-progress__fill{border-radius:var(--radius-pill);height:100%;transition:width var(--transition-fast)}.viewing-progress__fill.is-completed{background:#16a34a}.viewing-progress__fill.is-in-progress{background:#f59e0b}.viewing-progress__fill.is-not-started{background:#cbd5e1}.viewing-progress__legend{align-items:baseline;gap:var(--space-2);display:flex}.viewing-progress__legend strong{font-size:var(--text-body-sm);color:var(--color-evergreen-ink);font-weight:700}.viewing-progress__legend span{color:var(--color-sage-muted);font-size:11px}.viewing-views{font-weight:700;font-size:var(--text-body-sm);color:var(--color-evergreen-ink);align-items:center;gap:5px;display:inline-flex}.viewing-views svg{width:14px;height:14px;color:var(--color-sage-muted)}.viewing-when{flex-direction:column;gap:1px;min-width:120px;display:flex}.viewing-when strong{font-size:var(--text-body-sm);color:var(--color-evergreen-ink);font-weight:600}.viewing-when span{color:var(--color-sage-muted);font-size:11px}.viewing-when span.is-muted{opacity:.8}.reports-table-footer{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.reports-pagination{align-items:center;gap:var(--space-2);display:flex}.reports-pagination__btn{border-radius:var(--radius-md);border:1px solid var(--color-line);background:var(--color-paper);width:30px;height:30px;color:var(--color-evergreen-ink);cursor:pointer;transition:all var(--transition-fast);justify-content:center;align-items:center;display:inline-flex}.reports-pagination__btn svg{width:15px;height:15px}.reports-pagination__btn:hover:not(:disabled){border-color:var(--color-forest);color:var(--color-forest)}.reports-pagination__btn:disabled{opacity:.4;cursor:not-allowed}.reports-pagination__label{font-size:var(--text-body-sm);color:var(--color-evergreen-ink);white-space:nowrap;font-weight:600}@media (width<=640px){.reports-table-footer{justify-content:space-between;align-items:center;gap:var(--space-2);padding:10px var(--space-3);flex-direction:row;display:flex}.reports-table-count{white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.reports-pagination{flex-shrink:0;align-items:center;gap:4px;display:flex}.reports-pagination__btn{width:26px;height:26px}.reports-pagination__btn svg{width:13px;height:13px}.reports-pagination__label{font-size:11px}}.reports-filter-search__clear{right:var(--space-2);border-radius:var(--radius-pill);background:var(--color-sage-50);width:22px;height:22px;color:var(--color-sage-muted);cursor:pointer;border:0;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:50%;transform:translateY(-50%)}.reports-filter-search__clear svg{width:13px;height:13px}.reports-filter-count{color:var(--color-forest);background:var(--color-forest-soft);border-radius:var(--radius-pill);white-space:nowrap;padding:4px 10px;font-size:11px;font-weight:700}.reports-filter-select input[type=date]{height:38px;padding:0 var(--space-3);font-size:var(--text-body-sm);color:var(--color-evergreen-ink);background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-md);box-sizing:border-box;outline:none;width:100%;font-family:inherit}.reports-filter-select input[type=date]:focus{border-color:var(--color-forest);box-shadow:0 0 0 2px var(--color-forest-soft)}.reports-filter-select select:disabled{background:var(--color-sage-50);color:var(--color-sage-muted);cursor:not-allowed}.viewing-detail-state{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-8) var(--space-4);color:var(--color-sage-muted);font-size:var(--text-body-sm);display:flex}.viewing-detail-state svg{width:18px;height:18px}.viewing-detail-state.is-error{color:#b91c1c}.viewing-detail-grid{gap:var(--space-4);grid-template-columns:1.15fr 1fr;display:grid}@media (width<=860px){.viewing-detail-grid{grid-template-columns:1fr}}.viewing-detail-card{background:var(--color-paper-warm);border:1px solid var(--color-line);border-radius:var(--radius-lg);padding:var(--space-4)}.viewing-detail-card h3{margin:0 0 var(--space-3);letter-spacing:.05em;text-transform:uppercase;color:var(--color-sage-muted);font-size:11px;font-weight:800}.viewing-detail-card dl{gap:var(--space-2);flex-direction:column;margin:0;display:flex}.viewing-detail-card dl>div{justify-content:space-between;align-items:baseline;gap:var(--space-3);display:flex}.viewing-detail-card dt{font-size:var(--text-body-sm);color:var(--color-sage-muted);white-space:nowrap}.viewing-detail-card dd{font-size:var(--text-body-sm);color:var(--color-evergreen-ink);text-align:right;margin:0;font-weight:600}.viewing-detail-card dd em{color:var(--color-sage-muted);font-style:normal;font-weight:500}.viewing-detail-video{gap:var(--space-3);display:flex}.viewing-detail-video img,.viewing-detail-video__placeholder{border-radius:var(--radius-md);object-fit:cover;background:var(--color-sage-50);border:1px solid var(--color-line);flex-shrink:0;width:128px;height:76px}.viewing-detail-video__placeholder{justify-content:center;align-items:center;display:flex}.viewing-detail-video__placeholder svg{width:22px;height:22px;color:var(--color-sage-muted)}.viewing-detail-video>div{flex-direction:column;align-items:flex-start;gap:6px;min-width:0;display:flex}.viewing-detail-video strong{font-size:var(--text-body);color:var(--color-evergreen-ink);font-weight:700}.viewing-detail-video span{font-size:var(--text-body-sm);color:var(--color-sage-muted)}.viewing-metric-row{gap:var(--space-3);grid-template-columns:repeat(5,1fr);display:grid}@media (width<=900px){.viewing-metric-row{grid-template-columns:repeat(3,1fr)}}@media (width<=560px){.viewing-metric-row{grid-template-columns:repeat(2,1fr)}}.viewing-metric{padding:var(--space-3);background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-lg);flex-direction:column;gap:3px;display:flex}.viewing-metric__icon{color:var(--color-forest);display:inline-flex}.viewing-metric__icon svg{width:16px;height:16px}.viewing-metric__label{letter-spacing:.05em;text-transform:uppercase;color:var(--color-sage-muted);font-size:10px;font-weight:800}.viewing-metric__value{font-size:var(--text-body);color:var(--color-evergreen-ink);font-weight:800;line-height:1.2}.viewing-metric__hint{color:var(--color-sage-muted);font-size:11px}.viewing-timestamp-row{gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-paper-warm);border:1px solid var(--color-line);border-radius:var(--radius-lg);grid-template-columns:repeat(4,1fr);display:grid}@media (width<=760px){.viewing-timestamp-row{grid-template-columns:repeat(2,1fr)}}.viewing-timestamp-row>div{flex-direction:column;gap:2px;min-width:0;display:flex}.viewing-timestamp-row span{letter-spacing:.05em;text-transform:uppercase;color:var(--color-sage-muted);font-size:10px;font-weight:800}.viewing-timestamp-row strong{font-size:var(--text-body-sm);color:var(--color-evergreen-ink);font-weight:600}.viewing-breakdown-row{gap:var(--space-6);flex-wrap:wrap;display:flex}.viewing-breakdown-row h4{margin:0 0 var(--space-2);letter-spacing:.05em;text-transform:uppercase;color:var(--color-sage-muted);font-size:10px;font-weight:800}.viewing-breakdown-row ul{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.viewing-breakdown-row li{border-radius:var(--radius-pill);background:var(--color-sage-50);color:var(--color-evergreen-ink);align-items:center;gap:6px;padding:3px 10px;font-size:11px;font-weight:600;display:inline-flex}.viewing-breakdown-row li em{color:var(--color-forest);font-style:normal;font-weight:800}.viewing-viewers h3,.viewing-timeline h3{margin:0 0 var(--space-3);font-size:var(--text-body-sm);color:var(--color-evergreen-ink);align-items:center;gap:6px;font-weight:800;display:flex}.viewing-viewers h3 svg,.viewing-timeline h3 svg{width:15px;height:15px;color:var(--color-forest)}.viewing-viewers__scroll{border:1px solid var(--color-line);border-radius:var(--radius-lg);overflow-x:auto}.viewing-viewers table{border-collapse:collapse;width:100%;font-size:var(--text-body-sm)}.viewing-viewers th{text-align:left;padding:var(--space-2) var(--space-3);background:var(--color-paper-warm);letter-spacing:.05em;text-transform:uppercase;color:var(--color-sage-muted);white-space:nowrap;font-size:10px;font-weight:800}.viewing-viewers td{padding:var(--space-2) var(--space-3);border-top:1px solid var(--color-line);color:var(--color-evergreen-ink);vertical-align:top}.viewing-viewers td strong{font-weight:600;display:block}.viewing-viewers td span{color:var(--color-sage-muted);font-size:11px}.viewing-session-list{gap:var(--space-3);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.viewing-session{gap:var(--space-3);padding:var(--space-3);background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-lg);border-left:3px solid #cbd5e1;display:flex}.viewing-session.is-completed{border-left-color:#16a34a}.viewing-session__marker{border-radius:var(--radius-pill);background:var(--color-forest-soft);width:26px;height:26px;color:var(--color-forest);flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:800;display:flex}.viewing-session__body{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.viewing-session__head{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.viewing-session__head strong{font-size:var(--text-body-sm);color:var(--color-evergreen-ink);font-weight:700}.viewing-session__outcome{border-radius:var(--radius-pill);background:var(--color-sage-50);color:var(--color-sage-muted);white-space:nowrap;padding:2px 9px;font-size:11px;font-weight:700}.viewing-session__outcome.is-completed{color:#15803d;background:#dcfce7}.viewing-session__facts,.viewing-session__meta{gap:var(--space-1) var(--space-4);flex-wrap:wrap;display:flex}.viewing-session__facts span{font-size:var(--text-body-sm);color:var(--color-evergreen-ink);align-items:center;gap:5px;display:inline-flex}.viewing-session__facts svg{width:14px;height:14px;color:var(--color-forest);flex-shrink:0}.viewing-session__meta span{color:var(--color-sage-muted);align-items:center;gap:5px;font-size:11px;display:inline-flex}.viewing-session__meta svg{flex-shrink:0;width:13px;height:13px}.viewing-session__meta span.is-muted{margin-left:auto;font-style:italic}.viewing-timeline__empty{padding:var(--space-4);text-align:center;font-size:var(--text-body-sm);color:var(--color-sage-muted);background:var(--color-paper-warm);border:1px dashed var(--color-line);border-radius:var(--radius-lg);margin:0}.viewing-division-accordion-container{gap:var(--space-4);margin-top:var(--space-4);flex-direction:column;display:flex}.viewing-division-accordion-title{align-items:center;gap:var(--space-2);font-size:var(--text-heading-sm);color:var(--color-evergreen-ink);margin:0;font-weight:700;display:flex}.viewing-division-accordion-title svg{width:18px;height:18px;color:var(--color-forest)}.viewing-division-accordion-list{gap:var(--space-3);flex-direction:column;display:flex}.viewing-division-card{background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-lg);transition:all var(--transition-normal);overflow:hidden}.viewing-division-card.is-expanded{border-color:var(--color-sage-muted);box-shadow:var(--shadow-sm)}.viewing-division-header{justify-content:space-between;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);background:var(--color-paper-warm);cursor:pointer;text-align:left;transition:background var(--transition-fast);border:none;display:flex}.viewing-division-header:hover{background:var(--color-sage-50)}.viewing-division-header__title{align-items:center;gap:var(--space-3);min-width:0;display:flex}.viewing-division-icon{border-radius:var(--radius-md);background:var(--color-forest-soft);width:36px;height:36px;color:var(--color-forest);flex-shrink:0;justify-content:center;align-items:center;display:flex}.viewing-division-icon svg{width:18px;height:18px}.viewing-division-name{font-size:var(--text-body-md);color:var(--color-evergreen-ink);font-weight:700;display:block}.viewing-division-badge{font-size:var(--text-body-xs);color:var(--color-sage-muted);display:block}.viewing-division-header__actions{align-items:center;gap:var(--space-3);display:flex}.viewing-division-time{font-size:var(--text-body-sm);color:var(--color-evergreen-ink);align-items:center;gap:4px;font-weight:600;display:inline-flex}.viewing-division-time svg{width:14px;height:14px;color:var(--color-forest)}.viewing-division-chevron{width:24px;height:24px;color:var(--color-sage-muted);justify-content:center;align-items:center;display:flex}.viewing-division-chevron svg{width:18px;height:18px}.viewing-division-body{padding:var(--space-4);gap:var(--space-4);border-top:1px solid var(--color-line);background:var(--color-paper);flex-direction:column;display:flex}.viewing-division-metrics{gap:var(--space-3);padding:var(--space-3);background:var(--color-paper-warm);border-radius:var(--radius-md);grid-template-columns:repeat(auto-fit,minmax(140px,1fr));display:grid}.viewing-division-metrics span{font-size:var(--text-body-xs);color:var(--color-sage-muted);display:block}.viewing-division-metrics strong{font-size:var(--text-body-md);color:var(--color-evergreen-ink);font-weight:700;display:block}.viewing-division-viewers h4,.viewing-division-timeline h4{align-items:center;gap:var(--space-2);font-size:var(--text-body-sm);color:var(--color-evergreen-ink);margin:0 0 var(--space-2) 0;font-weight:700;display:flex}.viewing-division-viewers table{border-collapse:collapse;width:100%;font-size:var(--text-body-sm)}.viewing-division-viewers th,.viewing-division-viewers td{padding:var(--space-2) var(--space-3);text-align:left;border-bottom:1px solid var(--color-line)}.viewing-division-viewers th{color:var(--color-sage-muted);background:var(--color-paper-warm);font-weight:600}@media (width<=900px){.reports-table.viewing-table{width:100%;min-width:0;display:block}.viewing-table thead{display:none}.viewing-table tbody{gap:10px;padding:12px;display:grid}.viewing-table tbody tr{border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-paper);box-shadow:var(--shadow-card);grid-template-columns:minmax(0,1fr);display:grid;overflow:hidden}.viewing-table tbody td{align-items:start;gap:2px var(--space-3);border:0;border-bottom:1px solid var(--color-line);white-space:normal;background:0 0;grid-template-columns:minmax(88px,34%) minmax(0,1fr);padding:9px 12px;display:grid}.viewing-table tbody tr td:last-child{border-bottom:0}.reports-table-container .reports-table.viewing-table tbody td:first-child{z-index:auto;background:0 0;border-right:0;position:static}.viewing-table tbody td:before{color:var(--color-sage-muted);font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;font-size:10px;font-weight:700;line-height:1.6}.viewing-table tbody td:first-child:before{content:"School"}.viewing-table tbody td:nth-child(3):before{content:"Curriculum"}.viewing-table tbody td:nth-child(4):before{content:"Watched"}.viewing-table tbody td:nth-child(5):before{content:"Views"}.viewing-table tbody td:nth-child(6):before{content:"Status"}.viewing-table tbody td:nth-child(7):before{content:"Last watched"}.viewing-table tbody td:nth-child(2){background:var(--color-paper-warm);order:-1;grid-template-columns:minmax(0,1fr);padding:12px}.viewing-table tbody td:nth-child(8){text-align:left;background:var(--color-paper-warm);grid-template-columns:minmax(0,1fr);padding:10px 12px}.viewing-table tbody td:nth-child(8) .table-action-btn{width:100%!important;height:38px!important;min-height:38px!important}.viewing-table tbody .viewing-school,.viewing-table tbody .viewing-video,.viewing-table tbody .viewing-context,.viewing-table tbody .viewing-progress,.viewing-table tbody .viewing-when{min-width:0;max-width:none}.viewing-table tbody .viewing-video__thumb{width:64px;height:38px}.viewing-table tbody .viewing-video__meta strong{overflow-wrap:anywhere;white-space:normal;overflow:visible}.viewing-table tbody .viewing-when,.viewing-table tbody .viewing-school{gap:1px}.viewing-table tbody .viewing-progress{gap:4px}}@media (width<=480px){.viewing-table tbody{gap:8px;padding:10px}.viewing-table tbody td{grid-template-columns:minmax(0,1fr);gap:1px;padding:8px 10px}.viewing-table tbody td:nth-child(2),.viewing-table tbody td:nth-child(8){padding:10px}.viewing-table tbody .viewing-video{gap:var(--space-2)}}@media (width<=640px){.reports-table-container .reports-table-footer{padding:10px var(--space-3)}}@media (width<=480px){.reports-table-container .reports-table-footer{padding:10px}}@media (width<=768px){.viewing-detail-card{padding:var(--space-3)}.viewing-viewers__scroll{overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;overflow-x:auto}.viewing-viewers table{min-width:420px}.viewing-session__facts,.viewing-session__meta{flex-wrap:wrap;row-gap:4px}}@media (width<=480px){.viewing-detail-video img,.viewing-detail-video__placeholder{width:96px;height:58px}.viewing-session__head{flex-direction:column;align-items:flex-start;gap:4px}}.schedule-report-page-shell .schedule-main{gap:var(--space-5)}.schedule-hero h1{margin:var(--space-2) 0}.schedule-hero p{max-width:720px;color:var(--color-sage-muted);margin:0}.schedule-hero .reports-hero__actions .button--primary{background:var(--color-forest)!important;border-color:var(--color-forest)!important;color:#fff!important}.schedule-hero .reports-hero__actions .button--primary:hover{background:var(--color-forest-800,var(--color-forest))!important;border-color:var(--color-forest-800,var(--color-forest))!important;color:#fff!important}.schedule-unified-module{overflow:hidden}.schedule-unified-module .schedule-calendar-dashboard{padding:16px}.schedule-filters-container{background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-panel);flex-direction:column;gap:14px;padding:14px 18px 16px;display:flex}.schedule-filters-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.schedule-filters-header__title{align-items:flex-start;gap:10px;min-width:0;display:flex}.schedule-filter-icon{width:18px;height:18px;color:var(--color-forest);flex:0 0 18px;margin-top:2px}.schedule-filters-header__title span{color:var(--color-evergreen-ink);font-size:14px;font-weight:800;display:block}.schedule-filters-header__title small{color:var(--color-sage-muted);margin-top:2px;font-size:12px;display:block}.schedule-filters-grid{grid-template-columns:minmax(220px,1.5fr) repeat(auto-fit,minmax(150px,1fr));align-items:end;gap:12px;display:grid}.schedule-filter-item{flex-direction:column;gap:6px;min-width:0;display:flex}.schedule-filter-item--search{grid-column:1/-1}@media (width>=1100px){.schedule-filter-item--search{grid-column:auto}}.schedule-filter-item label{letter-spacing:.02em;color:var(--color-sage-muted);font-size:11px;font-weight:700}.schedule-search-input-wrap{align-items:center;display:flex;position:relative}.schedule-search-icon{width:15px;height:15px;color:var(--color-sage-muted);pointer-events:none;position:absolute;left:10px}.schedule-search-input-wrap input,.schedule-select-native{border:1px solid var(--color-line-strong);border-radius:var(--radius-md);background:var(--color-paper);width:100%;height:38px;color:var(--color-evergreen-ink);box-sizing:border-box;font-size:13px}.schedule-search-input-wrap input{padding:8px 12px 8px 32px}.schedule-select-native{padding:8px 12px}.schedule-search-input-wrap input:focus,.schedule-select-native:focus{outline:2px solid var(--color-forest-soft);border-color:var(--color-forest)}.schedule-searchable-select{width:100%}.schedule-filters-container .searchable-select__control{height:38px;min-height:38px}.schedule-kpi-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}@media (width<=1200px){.schedule-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=720px){.schedule-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=480px){.schedule-kpi-grid{grid-template-columns:1fr}}.schedule-kpi-card{background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-lg);flex-direction:column;gap:8px;min-width:0;padding:14px;display:flex}.schedule-kpi-card__top{justify-content:space-between;align-items:center;display:flex}.schedule-kpi-card__label{color:var(--color-sage-muted);font-size:13px;font-weight:600}.schedule-kpi-card__icon-badge{border-radius:var(--radius-md);place-items:center;width:34px;height:34px;display:grid}.schedule-kpi-card__icon-badge svg{width:18px;height:18px}.schedule-kpi-card__icon-badge--emerald,.schedule-kpi-card__icon-badge--blue,.schedule-kpi-card__icon-badge--purple,.schedule-kpi-card__icon-badge--amber,.schedule-kpi-card__icon-badge--teal{background:var(--color-forest-soft);color:var(--color-forest)}.schedule-kpi-card__value{color:var(--color-evergreen-ink);font-size:24px;font-weight:800;line-height:1.1}.schedule-kpi-card__meta{align-items:center;gap:8px;font-size:12px;display:flex}.schedule-kpi-tag{border-radius:var(--radius-pill);padding:2px 8px;font-size:11px;font-weight:700}.schedule-kpi-tag--ongoing{background:var(--color-forest-soft);color:var(--color-forest)}.schedule-kpi-tag--upcoming{background:var(--color-sage-50);color:var(--color-evergreen-ink)}.schedule-kpi-trend{color:var(--color-sage-muted)}.schedule-calendar-dashboard{grid-template-columns:248px minmax(0,1fr);align-items:start;gap:16px;display:grid}@media (width<=990px){.schedule-calendar-dashboard{grid-template-columns:1fr}}.schedule-calendar-sidebar{gap:var(--space-4);flex-direction:column;display:flex}.schedule-mini-calendar-card{background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-lg);padding:14px}.schedule-date-range-inputs{background:var(--color-sage-50,#f6f8f6);border:1px solid var(--color-line);border-radius:var(--radius-md);justify-content:space-between;align-items:center;gap:6px;margin-bottom:12px;padding:4px;display:flex}.schedule-date-box{border-radius:var(--radius-sm);background:var(--color-paper);cursor:pointer;min-width:0;transition:all var(--transition-fast);-webkit-user-select:none;user-select:none;border:1px solid #0000;flex-direction:column;flex:1;padding:5px 8px;display:flex}.schedule-date-box:hover{border-color:var(--color-forest);background:#fff}.schedule-date-box.is-active{border-color:var(--color-forest);box-shadow:0 0 0 2px var(--color-forest-soft,#22664426);background:#fff}.schedule-date-box-label{text-transform:uppercase;letter-spacing:.04em;color:var(--color-sage-muted);font-size:10px;font-weight:700;line-height:1.2}.schedule-date-box.is-active .schedule-date-box-label{color:var(--color-forest)}.schedule-date-box-val{color:var(--color-evergreen-ink);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:12px;font-weight:700;overflow:hidden}.schedule-date-arrow{color:var(--color-sage-muted);flex-shrink:0;padding:0 2px;font-size:13px;font-weight:600}.schedule-mini-calendar-header{margin-bottom:var(--space-3);justify-content:space-between;align-items:center;display:flex}.schedule-mini-cal-title{color:var(--color-evergreen-ink);align-items:center;gap:8px;font-size:13px;font-weight:700;display:flex}.schedule-mini-cal-selects{align-items:center;gap:4px;display:flex}.schedule-mini-cal-select{border:1px solid var(--color-line);background:var(--color-paper);color:var(--color-evergreen-ink);border-radius:var(--radius-sm);cursor:pointer;transition:border-color var(--transition-fast);outline:none;padding:2px 4px;font-size:12px;font-weight:700}.schedule-mini-cal-select:hover,.schedule-mini-cal-select:focus{border-color:var(--color-forest)}.schedule-mini-cal-nav{align-items:center;gap:2px;display:flex}.schedule-mini-cal-nav-btn{border-radius:var(--radius-sm);color:var(--color-sage-muted);cursor:pointer;transition:background var(--transition-fast);background:0 0;border:0;place-items:center;padding:4px;display:grid}.schedule-mini-cal-nav-btn:hover{background:var(--color-sage-50);color:var(--color-evergreen-ink)}.schedule-mini-cal-nav-btn svg{width:14px;height:14px}.schedule-mini-cal-grid{text-align:center;grid-template-columns:repeat(7,1fr);gap:3px;display:grid}.schedule-mini-cal-day-label{color:var(--color-sage-muted);padding-bottom:4px;font-size:11px;font-weight:700}.schedule-mini-cal-day{border-radius:var(--radius-md);color:var(--color-evergreen-ink);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:0;padding:6px 0;font-size:12px}.schedule-mini-cal-day.is-empty{pointer-events:none;background:0 0}.schedule-mini-cal-day:hover:not(.is-empty){background:var(--color-sage-50)}.schedule-mini-cal-day.is-in-range{background:var(--color-forest-soft);color:var(--color-forest);border-radius:0;font-weight:600}.schedule-mini-cal-day.is-selected{background:var(--color-forest);color:#fff;border-radius:var(--radius-md);font-weight:700}.schedule-mini-cal-day.is-today:not(.is-selected){border:1px solid var(--color-forest);font-weight:700}.schedule-mini-cal-footer{border-top:1px dashed var(--color-line);justify-content:space-between;align-items:center;margin-top:10px;padding-top:8px;font-size:11px;display:flex}.schedule-range-hint{color:var(--color-sage-muted);font-size:11px;font-weight:500}.schedule-reset-range-btn{color:var(--color-forest);cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;font-size:11px;font-weight:700;display:flex}.schedule-reset-range-btn svg{width:12px;height:12px}.schedule-insights-card{background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-lg);padding:14px}.schedule-insights-card__header{color:var(--color-evergreen-ink);margin-bottom:var(--space-3);align-items:center;gap:8px;font-size:14px;font-weight:700;display:flex}.schedule-insights-icon{width:16px;height:16px;color:var(--color-forest)}.schedule-insights-body{gap:var(--space-3);flex-direction:column;display:flex}.schedule-insight-item{border-bottom:1px solid var(--color-line);flex-direction:column;gap:4px;padding-bottom:8px;display:flex}.schedule-insight-item:last-child{border-bottom:0}.schedule-insight-item__top{color:var(--color-sage-muted);align-items:center;gap:6px;font-size:12px;display:flex}.schedule-insight-subicon{width:14px;height:14px;color:var(--color-forest)}.schedule-insight-subicon--amber{color:#b06000}.schedule-insight-highlight{color:var(--color-evergreen-ink);font-size:14px;font-weight:700}.schedule-top-videos-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.schedule-top-videos-list li{align-items:center;gap:6px;font-size:12px;display:flex}.schedule-vid-icon{width:13px;height:13px;color:var(--color-sage-muted);flex-shrink:0}.schedule-top-vid-title{text-overflow:ellipsis;white-space:nowrap;color:var(--color-evergreen-ink);flex:1;overflow:hidden}.schedule-top-vid-empty{color:var(--color-sage-muted);font-size:12px}.schedule-top-vid-badge{background:var(--color-sage-50);border-radius:var(--radius-pill);color:var(--color-forest);padding:1px 6px;font-size:10px;font-weight:700}.schedule-status-pills-row{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.schedule-status-pill{border-radius:var(--radius-pill);padding:2px 8px;font-size:11px;font-weight:700}.schedule-status-pill--ongoing{color:#137333;background:#e6f4ea}.schedule-status-pill--upcoming{color:#1a73e8;background:#e8f0fe}.schedule-status-pill--completed{color:#5f6368;background:#f1f3f4}.schedule-timeline-container{background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-lg);flex-direction:column;min-width:0;min-height:460px;display:flex;overflow:hidden}.schedule-timeline-toolbar{border-bottom:1px solid var(--color-line);background:var(--color-sage-50);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.schedule-timeline-date-title{color:var(--color-evergreen-ink);margin:0;font-size:18px;font-weight:800}.schedule-timeline-subtitle{color:var(--color-sage-muted);font-size:12px}.schedule-timeline-actions{align-items:center;gap:8px;display:flex}.schedule-timeline-actions button{height:32px;color:var(--color-evergreen-ink);background:var(--color-paper);border:1px solid var(--color-line-strong);border-radius:var(--radius-md);transition:all var(--transition-fast);padding:0 12px;font-size:12px;font-weight:600;box-shadow:0 1px 2px #0000000a}.schedule-timeline-actions button:hover{background:var(--color-sage-50);border-color:var(--color-forest);color:var(--color-forest)}.schedule-date-nav-btns{border:1px solid var(--color-line-strong);border-radius:var(--radius-md);background:var(--color-paper);display:flex;overflow:hidden}.schedule-nav-btn{color:var(--color-evergreen-ink);cursor:pointer;background:0 0;border:0;place-items:center;padding:6px 10px;display:grid}.schedule-nav-btn:hover{background:var(--color-sage-50)}.schedule-nav-btn svg{width:16px;height:16px}.schedule-timeline-scroll-wrap{flex-direction:column;flex:1;width:100%;display:flex;overflow-x:auto}.schedule-timeline-grid{flex-direction:column;flex:1;width:100%;min-width:760px;display:flex}.schedule-timeline-header-row{border-bottom:1px solid var(--color-line);background:var(--color-sage-50);grid-template-columns:180px minmax(0,1fr);width:100%;display:grid}.schedule-school-header-cell{color:var(--color-sage-muted);text-transform:uppercase;letter-spacing:.04em;border-right:1px solid var(--color-line);box-sizing:border-box;align-items:center;width:180px;padding:10px 14px;font-size:11px;font-weight:700;display:flex}.schedule-time-slots-header{width:100%;display:grid}.schedule-time-slot-header-cell{color:var(--color-sage-muted);text-align:center;border-right:1px solid var(--color-line);box-sizing:border-box;padding:12px 8px;font-size:11px;font-weight:700}.schedule-school-row{border-bottom:1px solid var(--color-line);grid-template-columns:180px minmax(0,1fr);width:100%;min-height:82px;display:grid}.schedule-school-cell{border-right:1px solid var(--color-line);background:var(--color-paper);box-sizing:border-box;align-items:center;gap:10px;width:180px;padding:10px 14px;display:flex}.schedule-school-avatar{border-radius:var(--radius-md);background:var(--color-sage-50);width:36px;height:36px;color:var(--color-forest);border:1px solid var(--color-line-strong);flex-shrink:0;place-items:center;display:grid}.schedule-school-icon{width:18px;height:18px;color:var(--color-forest)}.schedule-school-name-wrap{flex:1;min-width:0}.schedule-school-name-wrap strong{color:var(--color-evergreen-ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;line-height:1.25;display:block;overflow:hidden}.schedule-school-name-wrap small{color:var(--color-sage-muted);margin-top:2px;font-size:11px;font-weight:600;display:inline-block}.schedule-timeline-slots-area{background:var(--color-paper);width:100%;min-height:90px;display:grid}.schedule-grid-slot-cell{border-right:1px dashed var(--color-line);box-sizing:border-box;flex-direction:column;justify-content:flex-start;min-height:90px;padding:6px;display:flex;position:relative}.schedule-grid-slot-cell.has-popover-open{z-index:50}.schedule-slot-stack{flex-direction:column;gap:4px;width:100%;display:flex}.schedule-lesson-block{border-radius:var(--radius-md);text-align:left;cursor:pointer;width:100%;min-height:52px;transition:transform var(--transition-fast), box-shadow var(--transition-fast);box-sizing:border-box;border:1px solid #0000;flex-direction:column;justify-content:space-between;padding:6px 8px;display:flex;overflow:hidden;box-shadow:0 1px 3px #0000000d}.schedule-lesson-block:hover{transform:translateY(-1px);box-shadow:0 4px 10px #0000001a}.schedule-block__title{text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:700;line-height:1.2;display:block;overflow:hidden}.schedule-block__meta{opacity:.9;white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:4px;font-size:10px;display:flex;overflow:hidden}.schedule-lesson-block--ongoing{color:#137333;background:#e6f4ea;border-color:#34a853}.schedule-lesson-block--upcoming{color:#1a73e8;background:#e8f0fe;border-color:#1a73e8}.schedule-slot-more-btn{border:1px solid var(--color-line-strong);background:var(--color-paper-warm);width:100%;color:var(--color-forest);border-radius:var(--radius-md);cursor:pointer;text-align:center;transition:background var(--transition-fast);padding:4px 6px;font-size:11px;font-weight:700}.schedule-slot-more-btn:hover{color:#1a73e8;background:#e8f0fe}.schedule-slot-popover{background:var(--color-paper);border:1px solid var(--color-line-strong);border-radius:var(--radius-lg);z-index:100;flex-direction:column;gap:8px;width:240px;padding:10px;display:flex;position:absolute;top:4px;left:4px;box-shadow:0 10px 25px #0000002e}.schedule-slot-popover__header{border-bottom:1px solid var(--color-line);justify-content:space-between;align-items:flex-start;padding-bottom:8px;display:flex}.schedule-slot-popover__header strong{color:var(--color-evergreen-ink);font-size:12px;display:block}.schedule-slot-popover__header span{color:var(--color-sage-muted);font-size:10px;display:block}.schedule-slot-popover__close{color:var(--color-sage-muted);cursor:pointer;background:0 0;border:0;padding:0 4px;font-size:16px;line-height:1}.schedule-slot-popover__list{flex-direction:column;gap:6px;max-height:200px;display:flex;overflow-y:auto}.schedule-popover-item{border-radius:var(--radius-md);text-align:left;border:1px solid var(--color-line);background:var(--color-paper-warm);cursor:pointer;width:100%;transition:background var(--transition-fast);flex-direction:column;gap:4px;padding:8px;display:flex}.schedule-popover-item:hover{background:var(--color-sage-50)}.schedule-popover-item__title{color:var(--color-evergreen-ink);font-size:11px;font-weight:700}.schedule-popover-item__meta{color:var(--color-sage-muted);flex-wrap:wrap;align-items:center;gap:4px;font-size:10px;display:flex}.schedule-lesson-block--completed{color:#3c4043;background:#f1f3f4;border-color:#bdc1c6}.schedule-lesson-block--cancelled{color:#c5221f;background:#fce8e6;border-color:#ea4335}.schedule-block__top{justify-content:space-between;align-items:center;display:flex}.schedule-block__title{text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:700;overflow:hidden}.schedule-block__meta{opacity:.9;align-items:center;gap:4px;font-size:10px;display:flex}.schedule-empty-timeline{text-align:center;color:var(--color-sage-muted);padding:40px}.schedule-details-modal-backdrop{z-index:2000}.schedule-details-modal{background:var(--color-paper);border-radius:20px;width:min(640px,95vw);overflow:hidden}.schedule-details-modal__header{padding:var(--space-5);border-bottom:1px solid var(--color-line);background:var(--color-paper-warm);justify-content:space-between;align-items:center;display:flex}.schedule-details-header-info{align-items:center;gap:var(--space-3);display:flex}.schedule-details-badge{border-radius:var(--radius-lg);background:var(--color-forest-soft);width:40px;height:40px;color:var(--color-forest);place-items:center;display:grid}.schedule-details-badge svg{width:20px;height:20px}.schedule-details-header-info h2{color:var(--color-evergreen-ink);margin:0;font-size:18px;font-weight:800}.schedule-details-header-info p{color:var(--color-sage-muted);margin:2px 0 0;font-size:12px}.schedule-details-modal__body{padding:var(--space-5);gap:var(--space-5);flex-direction:column;display:flex}.schedule-detail-video-card{gap:var(--space-4);background:var(--color-sage-50);border:1px solid var(--color-line-strong);border-radius:var(--radius-lg);padding:var(--space-3);grid-template-columns:140px 1fr;display:grid}.schedule-detail-thumb-wrap{border-radius:var(--radius-md);position:relative;overflow:hidden}.schedule-detail-thumb{object-fit:cover;width:100%;height:90px}.schedule-detail-video-duration{color:#fff;background:#000000bf;border-radius:4px;padding:2px 6px;font-size:10px;font-weight:700;position:absolute;bottom:4px;right:4px}.schedule-detail-video-meta{flex-direction:column;justify-content:center;gap:4px;display:flex}.schedule-detail-subject{color:var(--color-forest);text-transform:uppercase;font-size:11px;font-weight:700}.schedule-detail-video-meta h3{color:var(--color-evergreen-ink);margin:0;font-size:15px;font-weight:700}.schedule-detail-status-pill-wrap{align-items:center;gap:8px;margin-top:4px;display:flex}.schedule-status-badge{border-radius:var(--radius-pill);padding:2px 8px;font-size:10px;font-weight:800}.schedule-status-badge--ongoing{color:#137333;background:#e6f4ea}.schedule-status-badge--upcoming{color:#1a73e8;background:#e8f0fe}.schedule-status-badge--completed{color:#5f6368;background:#f1f3f4}.schedule-status-badge--cancelled{color:#c5221f;background:#fce8e6}.schedule-room-tag{color:var(--color-sage-muted);font-size:11px}.schedule-cancel-alert{border-radius:var(--radius-md);padding:var(--space-3);color:#c5221f;background:#fce8e6;border:1px solid #ea4335;align-items:flex-start;gap:10px;font-size:13px;display:flex}.schedule-cancel-icon{flex-shrink:0;width:18px;height:18px;margin-top:2px}.schedule-cancel-alert p{margin:2px 0 0}.schedule-details-grid{gap:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.schedule-detail-item{align-items:flex-start;gap:10px;display:flex}.schedule-detail-icon{width:16px;height:16px;color:var(--color-forest);flex-shrink:0;margin-top:2px}.schedule-detail-item label{color:var(--color-sage-muted);font-size:11px;display:block}.schedule-detail-item strong{color:var(--color-evergreen-ink);font-size:13px;display:block}.schedule-details-modal__footer{padding:var(--space-4) var(--space-5);border-top:1px solid var(--color-line);background:var(--color-paper-warm);justify-content:flex-end;display:flex}.schedule-timeline-chronological-wrap,.schedule-timeline-list{gap:var(--space-3);flex-direction:column;display:flex}.schedule-timeline-card{gap:var(--space-4);background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-card);cursor:pointer;transition:transform var(--transition-fast);grid-template-columns:120px 1fr;display:grid}.schedule-timeline-card:hover{border-color:var(--color-line-strong);transform:translateY(-2px)}.schedule-timeline-card__time-badge{background:var(--color-sage-50);border-radius:var(--radius-md);color:var(--color-forest);flex-direction:column;justify-content:center;align-items:center;padding:8px;display:flex}.schedule-timeline-time-icon{width:16px;height:16px;margin-bottom:4px}.schedule-timeline-card__time-badge strong{font-size:14px}.schedule-timeline-card__time-badge small{color:var(--color-sage-muted);font-size:11px}.schedule-timeline-card__content{flex-direction:column;gap:6px;display:flex}.schedule-timeline-card__top{justify-content:space-between;align-items:center;display:flex}.schedule-timeline-card__date{color:var(--color-sage-muted);align-items:center;gap:4px;font-size:12px;display:inline-flex}.schedule-mini-icon{width:13px;height:13px}.schedule-timeline-card__title{color:var(--color-evergreen-ink);margin:0;font-size:15px;font-weight:700}.schedule-timeline-card__details{color:var(--color-sage-muted);align-items:center;gap:8px;font-size:12px;display:flex}.schedule-view-empty{text-align:center;color:var(--color-sage-muted);padding:60px 20px}.schedule-school-analytics-grid{gap:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(320px,1fr));display:grid}.schedule-school-card{background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-lg);padding:var(--space-5);box-shadow:var(--shadow-card);gap:var(--space-4);flex-direction:column;display:flex}.schedule-school-card__header{align-items:center;gap:var(--space-3);display:flex}.schedule-school-avatar-large{border-radius:var(--radius-lg);background:var(--color-forest-soft);width:44px;height:44px;color:var(--color-forest);place-items:center;font-size:14px;font-weight:800;display:grid}.schedule-school-card__header h3{color:var(--color-evergreen-ink);margin:0;font-size:16px;font-weight:700}.schedule-school-code-badge{color:var(--color-sage-muted);font-size:11px}.schedule-school-stats-row{text-align:center;background:var(--color-sage-50);border-radius:var(--radius-md);padding:var(--space-3);grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.schedule-school-stat__label{color:var(--color-sage-muted);text-transform:uppercase;justify-content:center;align-items:center;gap:4px;font-size:10px;display:flex}.schedule-school-stat__val{color:var(--color-evergreen-ink);font-size:16px;font-weight:800;display:block}.schedule-school-distribution{flex-direction:column;gap:6px;display:flex}.schedule-distribution-labels{color:var(--color-sage-muted);justify-content:space-between;font-size:12px;font-weight:600;display:flex}.schedule-distribution-bar{background:var(--color-sage-50);border-radius:var(--radius-pill);height:8px;display:flex;overflow:hidden}.schedule-dist-fill--ongoing{background:#34a853}.schedule-dist-fill--upcoming{background:#4285f4}.schedule-dist-fill--completed{background:#bdc1c6}.schedule-dist-legend{color:var(--color-sage-muted);gap:12px;font-size:11px;display:flex}.schedule-grade-analytics-grid{gap:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(300px,1fr));display:grid}.schedule-grade-card{background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-lg);padding:var(--space-5);box-shadow:var(--shadow-card);gap:var(--space-4);flex-direction:column;display:flex}.schedule-grade-card__header{align-items:center;gap:var(--space-3);display:flex}.schedule-grade-icon-badge{border-radius:var(--radius-lg);color:#9334e6;background:#f3e8fd;place-items:center;width:40px;height:40px;display:grid}.schedule-grade-icon-badge svg{width:20px;height:20px}.schedule-grade-card__header h3{margin:0;font-size:16px;font-weight:700}.schedule-grade-card__header p{color:var(--color-sage-muted);margin:2px 0 0;font-size:12px}.schedule-divisions-list{flex-direction:column;gap:8px;display:flex}.schedule-divisions-list h4{color:var(--color-sage-muted);text-transform:uppercase;margin:0;font-size:12px}.schedule-division-row{background:var(--color-sage-50);border-radius:var(--radius-md);justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.schedule-division-info{align-items:center;gap:6px;font-size:13px;display:flex}.schedule-division-metrics{gap:6px;display:flex}.schedule-div-count-pill{background:var(--color-paper);border-radius:var(--radius-pill);color:var(--color-forest);padding:2px 8px;font-size:11px;font-weight:700}.schedule-div-dur-pill{color:var(--color-sage-muted);font-size:11px}.schedule-week-analytics-table-wrap{overflow-x:auto}.schedule-week-table{border-collapse:collapse;text-align:left;width:100%}.schedule-week-table th,.schedule-week-table td{border-bottom:1px solid var(--color-line);padding:12px 16px}.schedule-week-table th{background:var(--color-paper-warm);color:var(--color-sage-muted);text-transform:uppercase;font-size:12px;font-weight:700}.schedule-week-name-cell{align-items:center;gap:10px;display:flex}.schedule-week-badge{border-radius:var(--radius-md);background:var(--color-forest-soft);width:32px;height:32px;color:var(--color-forest);place-items:center;font-size:11px;font-weight:800;display:grid}.schedule-week-count-highlight{color:var(--color-forest);font-weight:700}.schedule-week-tag{color:var(--color-evergreen-ink);align-items:center;gap:4px;font-size:12px;display:inline-flex}.schedule-video-analytics-grid{gap:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));display:grid}.schedule-video-card{background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-card);gap:var(--space-4);flex-direction:column;display:flex}.schedule-video-card__top{gap:var(--space-3);display:flex}.schedule-video-card__thumb{object-fit:cover;border-radius:var(--radius-md);width:90px;height:60px}.schedule-video-card__info h3{color:var(--color-evergreen-ink);margin:4px 0 0;font-size:14px;font-weight:700}.schedule-video-dur-tag{background:var(--color-sage-50);color:var(--color-forest);border-radius:4px;padding:2px 6px;font-size:10px;font-weight:700}.schedule-video-card__stats-grid{text-align:center;background:var(--color-paper-warm);padding:var(--space-2);border-radius:var(--radius-md);grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.schedule-video-stat strong{font-size:15px;font-weight:800;display:block}.schedule-video-stat small{color:var(--color-sage-muted);font-size:10px}.schedule-video-card__footer{flex-wrap:wrap;gap:6px;display:flex}:root{--color-forest:#1e4d3b;--color-forest-600:#245b45;--color-forest-700:#153b2d;--color-forest-800:#102f25;--color-forest-soft:#dbece3;--color-marigold:#de9526;--color-marigold-100:#fff4df;--color-marigold-600:#b87518;--color-chalk-paper:#f4f5f1;--color-paper:#fff;--color-paper-warm:#fbfaf6;--color-evergreen-ink:#18211d;--color-sage-muted:#5c6862;--color-sage-200:#dfe5df;--color-sage-300:#cbd6cf;--color-sage-50:#eef2ed;--color-sage-100:#e9eee8;--color-line:#e3e6df;--color-line-strong:#ccd5ce;--color-danger:#b85245;--color-danger-bg:#fbecea;--color-danger-border:#efccc7;--color-success:#4f8d68;--color-success-bg:#eaf4ed;--color-success-border:#cde4d4;--color-warning:#b87518;--color-warning-bg:#fff4df;--color-info-border:#bed9ca;--color-notification-surface:#18211d;--color-notification-text:#fff;--color-on-primary:#fff;--color-on-dark:#fff;--font-display:"Palatino Linotype", Palatino, "Book Antiqua", Georgia, serif;--font-sans:"Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, Roboto, Arial, sans-serif;--font-mono:"Segoe UI Mono", "SFMono-Regular", Consolas, "Liberation Mono", monospace;--text-display-xl:56px;--text-display-lg:44px;--text-heading-xl:32px;--text-heading-lg:24px;--text-heading-md:20px;--text-body-lg:16px;--text-body-md:14px;--text-body-sm:13px;--text-label:11px;--text-data:12px;--leading-tight:1.08;--leading-heading:1.18;--leading-body:1.45;--leading-label:1.2;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;--size-control-sm:32px;--size-control-md:40px;--size-control-lg:48px;--radius-xs:3px;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-pill:999px;--shadow-card:0 1px 2px #18211d0f, 0 8px 24px #18211d0d;--shadow-panel:0 18px 60px #18211d1a;--shadow-focus:0 0 0 3px #de952647;--breakpoint-mobile:480px;--breakpoint-tablet:768px;--breakpoint-laptop:1024px;--breakpoint-desktop:1280px;--motion-fast:.12s;--motion-standard:.2s;--motion-slow:.36s;--ease-standard:cubic-bezier(.2, 0, 0, 1);--ease-emphasized:cubic-bezier(.2, .8, .2, 1);--hover-lift:-2px;--transition-fast:var(--motion-fast) var(--ease-standard);--transition-base:var(--motion-standard) var(--ease-standard);--transition-slow:var(--motion-slow) var(--ease-emphasized)}:root[data-theme=dark]{--color-forest:#73b993;--color-forest-600:#367858;--color-forest-700:#2b654a;--color-forest-800:#24523e;--color-forest-soft:#1a3528;--color-marigold:#e5a23a;--color-marigold-100:#382a16;--color-marigold-600:#f0b75f;--color-chalk-paper:#0c110e;--color-paper:#121814;--color-paper-warm:#171e19;--color-evergreen-ink:#edf4ef;--color-sage-muted:#9ba9a1;--color-sage-200:#303b34;--color-sage-300:#3a4940;--color-sage-50:#1d2721;--color-sage-100:#253129;--color-line:#2b352f;--color-line-strong:#415047;--color-danger:#e18476;--color-danger-bg:#3a201d;--color-danger-border:#71433c;--color-success:#83c99c;--color-success-bg:#193123;--color-success-border:#365c43;--color-warning:#edb55d;--color-warning-bg:#392a15;--color-info-border:#315c45;--color-notification-surface:#202a24;--color-notification-text:#f7fbf8;--color-on-primary:#0c1711;--color-on-dark:#f7fbf8;--shadow-card:0 1px 2px #0000003d, 0 10px 28px #00000038;--shadow-panel:0 18px 60px #0000005c;--shadow-focus:0 0 0 3px #e5a23a57}*{box-sizing:border-box}html{background:var(--color-chalk-paper);width:100%;min-width:320px;min-height:100%}body{width:100%;min-width:320px;min-height:100vh;color:var(--color-evergreen-ink);background:var(--color-chalk-paper);font-family:var(--font-sans);font-size:var(--text-body-md);line-height:var(--leading-body);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:color var(--transition-base), background-color var(--transition-base);margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:inherit}img,svg{display:block}#root{width:100%;min-height:100vh}:focus-visible{box-shadow:var(--shadow-focus);outline:none}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}.text-display{font-family:var(--font-display);font-size:var(--text-display-lg);font-weight:700;line-height:var(--leading-tight)}.text-heading{font-family:var(--font-sans);font-size:var(--text-heading-lg);font-weight:700;line-height:var(--leading-heading)}.text-label{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:0;font-weight:700;line-height:var(--leading-label);text-transform:uppercase}.text-data{font-family:var(--font-mono);font-size:var(--text-data);letter-spacing:0;line-height:var(--leading-label)}.button{min-height:var(--size-control-md);justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--radius-md);padding:0 var(--space-4);color:var(--color-evergreen-ink);font-size:var(--text-body-md);transition:background-color var(--transition-base), border-color var(--transition-base), color var(--transition-base), opacity var(--transition-base), transform var(--transition-fast), box-shadow var(--transition-base);background:0 0;border:1px solid #0000;font-weight:700;line-height:1;text-decoration:none;display:inline-flex}.button:hover:not(:disabled){transform:translateY(-1px)}.button:active:not(:disabled){transform:translateY(0)}.button--primary{color:var(--color-on-primary);background:var(--color-forest);border-color:var(--color-forest)}.button--primary:hover:not(:disabled){background:var(--color-forest-600);border-color:var(--color-forest-600);box-shadow:0 8px 18px #1e4d3b2e}.button--secondary{color:var(--color-evergreen-ink);background:var(--color-marigold);border-color:var(--color-marigold)}.button--secondary:hover:not(:disabled){background:var(--color-marigold-600);border-color:var(--color-marigold-600);box-shadow:0 8px 18px #de95262e}.button--ghost{color:var(--color-sage-muted);background:0 0;border-color:#0000}.button--ghost:hover:not(:disabled){color:var(--color-forest);background:var(--color-sage-50)}.button:disabled{opacity:.55}.button__icon{flex:0 0 16px;justify-content:center;align-items:center;width:16px;height:16px;line-height:0;display:inline-flex}.button__icon svg,.button__spinner{stroke-width:1.6px;flex:0 0 16px;width:16px;height:16px;display:block}.button__label{align-items:center;display:inline-flex}.button__spinner{animation:.9s linear infinite button-spin}@keyframes button-spin{to{transform:rotate(360deg)}}.text-input{gap:var(--space-2);display:grid}.text-input__label{color:var(--color-sage-muted);font-size:var(--text-body-sm);font-weight:700}.text-input__control{min-height:var(--size-control-lg);border:1px solid var(--color-line-strong);border-radius:var(--radius-lg);background:var(--color-paper-warm);transition:border-color var(--transition-base), box-shadow var(--transition-base), background-color var(--transition-base);grid-template-columns:1fr;align-items:center;display:grid}.text-input__control:focus-within{border-color:var(--color-forest);box-shadow:0 0 0 3px var(--color-forest-soft), inset 0 0 0 1px var(--color-forest)}.text-input__control:hover:not(.text-input__control--disabled){border-color:var(--color-sage-300);background:var(--color-paper)}.text-input__control--with-leading{grid-template-columns:40px 1fr}.text-input__control--with-trailing{grid-template-columns:1fr auto}.text-input__control--with-leading.text-input__control--with-trailing{grid-template-columns:40px 1fr auto}.text-input__field{width:100%;min-width:0;padding:0 var(--space-4);color:var(--color-evergreen-ink);font-size:var(--text-body-md);background:0 0;border:0;outline:0}.text-input__control--with-leading .text-input__field{padding-left:0}.text-input__field::placeholder{color:#89928d}.text-input__icon,.text-input__action{color:var(--color-sage-muted);flex:none;justify-content:center;align-items:center;line-height:0;display:inline-flex}.text-input__icon svg,.text-input__action svg{stroke-width:1.6px;flex:0 0 18px;width:18px;height:18px;display:block}.text-input__action{padding-right:var(--space-2)}.text-input__control--error{border-color:var(--color-danger)}.text-input__control--disabled{background:var(--color-sage-50);opacity:.72}.text-input__error{color:var(--color-danger);font-size:var(--text-body-sm);margin:0}.password-input__toggle{align-items:center;gap:var(--space-1);border-radius:var(--radius-sm);min-height:32px;padding:0 var(--space-2);color:var(--color-sage-muted);font-size:var(--text-body-sm);background:0 0;border:0;font-weight:700;line-height:1;display:inline-flex}.password-input__toggle svg{flex:0 0 16px;width:16px;height:16px}.password-input__toggle:hover{color:var(--color-forest);background:var(--color-sage-50)}.searchable-select{min-width:0;position:relative}.searchable-select__control{background:var(--color-paper);border:1px solid var(--color-line-strong);border-radius:var(--radius-lg);min-height:42px;transition:border-color var(--transition-fast), box-shadow var(--transition-fast);align-items:center;display:flex;overflow:hidden}.searchable-select__control:focus-within{border-color:var(--color-marigold);box-shadow:0 0 0 3px #f2b1342e}.searchable-select--invalid .searchable-select__control{border-color:var(--color-danger)}.searchable-select__search-icon{color:var(--color-sage-muted);flex:none;width:17px;height:17px;margin-left:12px}.searchable-select__control input{color:var(--color-evergreen-ink);font:inherit;background:0 0;border:0;outline:0;flex:1;width:100%;min-width:0;min-height:40px;padding:0 8px}.searchable-select__control input::placeholder{color:var(--color-sage-muted)}.searchable-select__toggle{color:var(--color-sage-muted);cursor:pointer;background:0 0;border:0;flex:0 0 38px;justify-content:center;align-self:stretch;align-items:center;padding:0;line-height:0;display:inline-flex}.searchable-select__toggle svg{flex:0 0 17px;width:17px;height:17px;display:block}.searchable-select__chevron{transition:transform var(--transition-fast)}.searchable-select--open .searchable-select__chevron{transform:rotate(180deg)}.searchable-select--disabled{opacity:.68}.searchable-select--disabled .searchable-select__control,.searchable-select--disabled .searchable-select__toggle{cursor:not-allowed}.searchable-select__menu{background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);z-index:250;min-width:100%;margin-top:6px;position:absolute;top:100%;left:0;right:0;overflow:hidden}.searchable-select__menu--portal{z-index:9999;min-width:0;max-width:calc(100vw - 16px);margin:0;position:fixed;top:auto;bottom:auto;right:auto}.searchable-select__menu--portal .searchable-select__list{scrollbar-gutter:stable}.searchable-select__menu--portal .searchable-select__option--selected{background:color-mix(in srgb, var(--color-forest) 9%, var(--color-paper))}.searchable-select__menu--portal .searchable-select__option+.searchable-select__option{margin-top:2px}.searchable-select--open-above .searchable-select__menu{margin-top:0;margin-bottom:6px;top:auto;bottom:100%}.searchable-select__list{max-height:260px;padding:5px;overflow-y:auto}.searchable-select__option{border-radius:var(--radius-sm);color:var(--color-evergreen-ink);cursor:pointer;justify-content:space-between;align-items:center;gap:12px;min-height:42px;padding:8px 10px;display:flex}.searchable-select__option--active{background:var(--color-forest-soft)}.searchable-select__option--selected{color:var(--color-forest);font-weight:650}.searchable-select__option--disabled{cursor:not-allowed;opacity:.5}.searchable-select__option-copy{gap:2px;min-width:0;display:grid}.searchable-select__option-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.searchable-select__option-description{color:var(--color-sage-muted);font-size:.76rem;font-weight:500}.searchable-select__option>svg{flex:none;width:17px;height:17px;display:block}.searchable-select__state{color:var(--color-sage-muted);text-align:center;justify-content:center;align-items:center;gap:8px;min-height:64px;padding:12px;font-size:.86rem;display:flex}.searchable-select__spinner{flex:none;animation:.8s linear infinite searchable-select-spin}.entity-field .searchable-select__control{background:var(--color-paper-warm);min-height:48px}.entity-field .searchable-select__control input{box-shadow:none;background:0 0;border:0;min-height:46px;padding:0 8px}.entity-field .searchable-select__control:focus-within{border-color:var(--color-forest)}.entity-field .searchable-select__control input:focus{box-shadow:none;border:0}.entity-field .searchable-select__menu{font-weight:500}.hierarchy-filters .searchable-select{flex:240px;width:100%;min-width:180px;max-width:340px}.hierarchy-filters .searchable-select__control input{font-weight:700}.searchable-multi-select__values{flex-wrap:wrap;gap:6px;margin-bottom:7px;display:flex}.searchable-multi-select__chip{background:color-mix(in srgb, var(--color-forest) 10%, white);border:1px solid color-mix(in srgb, var(--color-forest) 22%, transparent);color:var(--color-forest);border-radius:999px;align-items:center;gap:5px;max-width:100%;padding:4px 8px;font-size:.78rem;font-weight:700;display:inline-flex}.searchable-multi-select__chip button{color:inherit;background:0 0;border:0;align-items:center;padding:0;display:inline-flex}.searchable-multi-select__chip button:hover{color:var(--color-danger)}.searchable-multi-select__chip button svg{width:13px;height:13px}@keyframes searchable-select-spin{to{transform:rotate(360deg)}}@media (width<=900px){.hierarchy-filters .searchable-select{flex:190px;width:auto}}@media (width<=620px){.hierarchy-filters .searchable-select{flex-basis:100%;width:100%}}.segmented-control{gap:var(--space-2);display:grid}.segmented-control__label{color:var(--color-sage-muted);margin:0}.segmented-control__group{gap:var(--space-1);border:1px solid var(--color-line);border-radius:var(--radius-lg);padding:var(--space-1);background:var(--color-sage-100);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.segmented-control__option{border-radius:var(--radius-md);min-height:44px;padding:var(--space-2) var(--space-3);color:var(--color-sage-muted);text-align:left;transition:background-color var(--transition-base), border-color var(--transition-base), color var(--transition-base);background:0 0;border:1px solid #0000;align-items:center;gap:2px;font-weight:700;display:flex}.segmented-control__icon{width:24px;height:24px;color:var(--color-forest);flex:none;justify-content:center;align-items:center;line-height:0;display:inline-flex}.segmented-control__icon svg{stroke-width:1.6px;flex:0 0 20px;width:20px;height:20px;display:block}.segmented-control__copy{align-content:center;gap:2px;min-width:0;display:grid}.segmented-control__option small{color:inherit;font-size:var(--text-label);font-weight:600}.segmented-control__option--selected{color:var(--color-evergreen-ink);background:var(--color-paper);border-color:var(--color-line);box-shadow:0 1px 2px #18211d0d}.divider{align-items:center;gap:var(--space-3);color:var(--color-sage-muted);font-size:var(--text-body-sm);display:flex}.divider:before,.divider:after{content:"";background:var(--color-line);flex:1 1 0;height:1px}.divider span{flex:none}.social-sign-in{min-height:var(--size-control-md);justify-content:center;align-items:center;gap:var(--space-2);border:1px solid var(--color-line);border-radius:var(--radius-md);padding:0 var(--space-3);color:var(--color-evergreen-ink);background:var(--color-paper);font-size:var(--text-body-sm);transition:border-color var(--transition-base), box-shadow var(--transition-base), background-color var(--transition-base);font-weight:700;display:inline-flex}.social-sign-in:hover:not(:disabled){border-color:var(--color-line-strong);box-shadow:var(--shadow-card)}.social-sign-in__mark{flex:none;place-items:center;width:14px;height:14px;display:grid}.social-sign-in--google .social-sign-in__mark{background:conic-gradient(#4285f4 0 25%, #34a853 0 50%, #fbbc05 0 75%, #ea4335 0);border-radius:50%}.social-sign-in--google .social-sign-in__mark span{background:var(--color-paper);border-radius:50%;width:6px;height:6px}.social-sign-in--microsoft .social-sign-in__mark{grid-template-columns:repeat(2,1fr);gap:1px}.social-sign-in--microsoft .social-sign-in__mark:before,.social-sign-in--microsoft .social-sign-in__mark:after,.social-sign-in--microsoft .social-sign-in__mark span,.social-sign-in--microsoft .social-sign-in__mark span:before{content:"";width:6px;height:6px}.social-sign-in--microsoft .social-sign-in__mark:before{background:#f25022}.social-sign-in--microsoft .social-sign-in__mark:after{background:#7fba00}.social-sign-in--microsoft .social-sign-in__mark span{display:contents}.social-sign-in--microsoft .social-sign-in__mark span:before{background:#00a4ef}.social-sign-in--microsoft .social-sign-in__mark span:after{content:"";background:#ffb900;width:6px;height:6px}.brand-wordmark{border-radius:var(--radius-lg);align-items:center;width:min(100%,330px);display:inline-flex}.brand-wordmark--dark{box-shadow:none;background:0 0;padding:10px 14px}.brand-wordmark img{object-fit:contain;width:100%;height:auto}.form-message{align-items:center;gap:var(--space-2);border:1px solid var(--color-line);border-radius:var(--radius-md);padding:var(--space-3);color:var(--color-sage-muted);background:var(--color-paper);font-size:var(--text-body-sm);animation:form-message-enter var(--transition-base);margin:0;display:flex}@keyframes form-message-enter{0%{opacity:0;transform:translateY(-4px)}}@media (prefers-reduced-motion:reduce){.form-message{animation:none}}.form-message svg{stroke-width:1.6px;flex:none;width:16px;height:16px}.form-message--error{color:var(--color-danger);background:var(--color-danger-bg);border-color:var(--color-danger-border)}.form-message--success{color:var(--color-success);background:var(--color-success-bg);border-color:var(--color-success-border)}.form-message--info{color:var(--color-forest);background:var(--color-forest-soft);border-color:var(--color-info-border)}.skeleton{border-radius:var(--radius-md);background:linear-gradient(90deg, var(--color-sage-50) 25%, var(--color-sage-100) 50%, var(--color-sage-50) 75%);background-size:220% 100%;min-height:18px;animation:1.3s linear infinite skeleton-shimmer;display:block}.inline-loader{align-items:center;gap:var(--space-2);color:var(--color-sage-muted);font-family:var(--font-mono);font-size:var(--text-data);display:inline-flex}.inline-loader svg{flex:0 0 16px;width:16px;height:16px;animation:.8s linear infinite loader-spin}.page-skeleton{align-content:start;gap:var(--space-5);min-height:calc(100vh - 64px);padding:var(--space-8);background:var(--color-chalk-paper);display:grid}.page-skeleton__heading,.page-skeleton__toolbar,.page-skeleton__grid{gap:var(--space-3);display:grid}.page-skeleton__heading .skeleton:first-child{width:min(340px,76%);height:38px}.page-skeleton__heading .skeleton:last-child{width:min(480px,92%)}.page-skeleton__toolbar{grid-template-columns:repeat(5,minmax(90px,1fr))}.page-skeleton__toolbar .skeleton{height:46px}.page-skeleton__grid{grid-template-columns:minmax(0,1.5fr) minmax(280px,.7fr)}.page-skeleton__grid .skeleton{min-height:220px}.page-skeleton__grid .skeleton:first-child{grid-row:span 2;min-height:480px}.state-panel{align-content:center;place-items:center;gap:var(--space-4);min-height:360px;padding:var(--space-10) var(--space-6);border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-paper);text-align:center;animation:state-enter var(--transition-slow);display:grid}.state-panel__icon{width:68px;height:68px;color:var(--color-forest);background:var(--color-forest-soft);border-radius:20px;place-items:center;line-height:0;display:grid}.state-panel__icon svg{width:32px;height:32px}.state-panel--error .state-panel__icon{color:var(--color-danger);background:var(--color-danger-bg)}.state-panel--success .state-panel__icon{color:var(--color-success);background:var(--color-success-bg)}.state-panel h2{font-family:var(--font-display);font-size:var(--text-heading-lg);margin:0}.state-panel p{max-width:430px;color:var(--color-sage-muted);margin:0}.state-panel__actions{justify-content:center;gap:var(--space-3);flex-wrap:wrap;display:flex}@keyframes skeleton-shimmer{to{background-position-x:-220%}}@keyframes loader-spin{to{transform:rotate(360deg)}}@keyframes state-enter{0%{opacity:0;transform:translateY(8px)}}@media (width<=768px){.page-skeleton{padding:var(--space-5)}.page-skeleton__toolbar{grid-template-columns:repeat(2,1fr)}.page-skeleton__grid{grid-template-columns:1fr}.page-skeleton__grid .skeleton:first-child{grid-row:auto;min-height:320px}}@media (prefers-reduced-motion:reduce){.skeleton{background:var(--color-sage-50);animation:none}.inline-loader svg{animation-duration:1.5s}.state-panel{animation:none}}.toast-viewport{right:var(--space-5);bottom:var(--space-5);z-index:4000;gap:var(--space-2);pointer-events:none;width:min(380px,100vw - 32px);display:grid;position:fixed}.toast{align-items:center;gap:var(--space-3);border-radius:var(--radius-lg);min-height:58px;padding:var(--space-3) var(--space-4);color:var(--color-notification-text);background:var(--color-notification-surface);box-shadow:var(--shadow-panel);pointer-events:auto;animation:toast-enter var(--transition-slow);border:1px solid #ffffff1a;grid-template-columns:auto 1fr auto;display:grid}.toast>svg{width:20px;height:20px;color:var(--color-marigold)}.toast--success>svg{color:#8bd0a5}.toast--error>svg{color:#f1a299}.toast button{width:30px;height:30px;color:inherit;background:0 0;border:0;place-items:center;display:grid}.toast button svg{width:16px;height:16px}@keyframes toast-enter{0%{opacity:0;transform:translateY(10px)scale(.98)}}@media (prefers-reduced-motion:reduce){.toast{animation:none}}.confirmation-backdrop{z-index:3000;padding:var(--space-5);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);animation:confirmation-backdrop-enter var(--transition-base);background:#08120d9e;place-items:center;display:grid;position:fixed;inset:0}.confirmation-dialog{gap:var(--space-4);border:1px solid var(--color-line-strong);width:min(100%,460px);padding:var(--space-6);color:var(--color-evergreen-ink);background:var(--color-paper);animation:confirmation-dialog-enter var(--transition-slow);border-radius:18px;grid-template-columns:auto minmax(0,1fr);display:grid;position:relative;overflow:hidden;box-shadow:0 28px 80px #08120d4d}.confirmation-dialog:before{content:"";background:var(--color-warning);height:4px;position:absolute;inset:0 0 auto}.confirmation-dialog--danger:before{background:var(--color-danger)}.confirmation-dialog--move{width:min(100%,540px)}.confirmation-dialog__close{top:var(--space-3);right:var(--space-3);border-radius:var(--radius-md);width:34px;height:34px;color:var(--color-sage-muted);transition:color var(--transition-base), background-color var(--transition-base);background:0 0;border:0;place-items:center;line-height:0;display:grid;position:absolute}.confirmation-dialog__close:hover{color:var(--color-evergreen-ink);background:var(--color-sage-50)}.confirmation-dialog__close svg{width:18px;height:18px}.confirmation-dialog__icon{width:48px;height:48px;color:var(--color-warning);background:var(--color-warning-bg);border-radius:14px;place-items:center;line-height:0;display:grid}.confirmation-dialog--danger .confirmation-dialog__icon{color:var(--color-danger);background:var(--color-danger-bg)}.confirmation-dialog__icon svg{width:23px;height:23px}.confirmation-dialog__content{gap:var(--space-2);min-width:0;padding-top:2px;padding-right:var(--space-6);display:grid}.confirmation-dialog__content .text-label{color:var(--color-warning)}.confirmation-dialog--danger .confirmation-dialog__content .text-label{color:var(--color-danger)}.confirmation-dialog__content h2,.confirmation-dialog__content p{margin:0}.confirmation-dialog__content h2{font-family:var(--font-display);font-size:var(--text-heading-lg);line-height:var(--leading-heading)}.confirmation-dialog__content p{color:var(--color-sage-muted);font-size:var(--text-body-md);line-height:var(--leading-body)}.confirmation-dialog__conflicts{gap:var(--space-2);border:1px solid var(--color-danger);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);color:var(--color-danger);background:var(--color-danger-bg);grid-column:1/-1;display:grid}.confirmation-dialog__conflicts ul{gap:var(--space-1);padding-left:var(--space-5);margin:0;display:grid}.confirmation-dialog__conflicts li{color:var(--color-evergreen-ink)}.confirmation-dialog footer{justify-content:flex-end;gap:var(--space-2);border-top:1px solid var(--color-line);margin-top:var(--space-2);padding-top:var(--space-4);grid-column:1/-1;display:flex}.confirmation-dialog__confirm--warning.button{color:var(--color-on-primary);border-color:var(--color-warning);background:var(--color-warning)}.confirmation-dialog__confirm--warning.button:hover:not(:disabled){border-color:var(--color-marigold-600);background:var(--color-marigold-600)}.confirmation-dialog__confirm--danger.button{color:var(--color-on-primary);border-color:var(--color-danger);background:var(--color-danger)}.confirmation-dialog__confirm--danger.button:hover:not(:disabled){border-color:var(--color-danger);background:var(--color-danger);box-shadow:0 8px 18px #b8524538}@keyframes confirmation-backdrop-enter{0%{opacity:0}}@keyframes confirmation-dialog-enter{0%{opacity:0;transform:translateY(10px)scale(.98)}}@media (width<=520px){.confirmation-backdrop{padding:var(--space-3);align-items:end}.confirmation-dialog{gap:var(--space-3);padding:var(--space-5);border-radius:18px;grid-template-columns:1fr}.confirmation-dialog__content{padding-right:0}.confirmation-dialog footer{grid-template-columns:1fr 1fr;display:grid}.confirmation-dialog footer .button{width:100%}}.video-upload-tray{z-index:1900;right:var(--space-5);bottom:var(--space-5);width:min(420px, calc(100vw - var(--space-8)));border:1px solid var(--color-line);background:var(--color-paper);box-shadow:var(--shadow-panel);border-radius:14px;flex-direction:column;display:flex;position:fixed;overflow:hidden}.video-upload-tray>header{align-items:center;gap:var(--space-3);border-bottom:1px solid var(--color-line);padding:var(--space-3) var(--space-4);background:var(--color-paper-warm);flex:none;grid-template-columns:auto 1fr auto auto;display:grid}.video-upload-tray.is-collapsed>header{border-bottom:0}.video-upload-tray__mark{border-radius:var(--radius-md);width:32px;height:32px;color:var(--color-forest);background:var(--color-forest-soft);place-items:center;display:grid}.video-upload-tray__mark svg{width:17px;height:17px}.video-upload-tray__spin{animation:1s linear infinite video-upload-tray-spin}.video-upload-tray>header strong{font-size:var(--text-body-md);line-height:var(--leading-label);display:block}.video-upload-tray>header small{color:var(--color-sage-muted);font-size:var(--text-body-sm);margin-top:2px;display:block}.video-upload-tray__clear{border-radius:var(--radius-sm);padding:var(--space-1) var(--space-2);color:var(--color-sage-muted);font-size:var(--text-body-sm);background:0 0;border:0}.video-upload-tray__clear:hover{color:var(--color-evergreen-ink);background:var(--color-sage-50)}.video-upload-tray__toggle{border-radius:var(--radius-md);width:30px;height:30px;color:var(--color-sage-muted);background:var(--color-sage-50);border:0;place-items:center;line-height:0;display:grid}.video-upload-tray__toggle svg{width:16px;height:16px}.video-upload-tray__notice{border-bottom:1px solid var(--color-line);padding:var(--space-3) var(--space-4);color:var(--color-warning);background:var(--color-warning-bg);font-size:var(--text-body-sm);flex:none;margin:0}.video-upload-tray__list{overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--color-sage-muted) transparent;flex:0 auto;min-height:0;max-height:clamp(180px,100dvh - 260px,420px);margin:0;padding:0;list-style:none;overflow-y:auto}.video-upload-tray.has-scroll .video-upload-tray__list{scrollbar-gutter:stable;height:clamp(180px,100dvh - 260px,420px)}.video-upload-tray__list:focus-visible{box-shadow:inset var(--shadow-focus);outline:none}.video-upload-tray__list::-webkit-scrollbar{width:12px}.video-upload-tray__list::-webkit-scrollbar-track{background:0 0}.video-upload-tray__list::-webkit-scrollbar-thumb{border-radius:var(--radius-pill);background:var(--color-sage-muted);background-clip:content-box;border:2px solid #0000}.video-upload-tray__list::-webkit-scrollbar-thumb:hover{background:var(--color-evergreen-ink);background-clip:content-box}.video-upload-tray__item{gap:var(--space-2);border-bottom:1px solid var(--color-line);padding:var(--space-4);display:grid}.video-upload-tray__item:last-child{border-bottom:0}.video-upload-tray__item.is-failed{background:var(--color-danger-bg)}.video-upload-tray__item.is-completed{background:var(--color-success-bg)}.video-upload-tray__item-head{align-items:start;gap:var(--space-3);grid-template-columns:auto 1fr auto;display:grid}.video-upload-tray__item-icon{border-radius:var(--radius-md);width:34px;height:34px;color:var(--color-forest);background:var(--color-forest-soft);place-items:center;display:grid}.video-upload-tray__item-icon svg{width:17px;height:17px}.video-upload-tray__item-copy{min-width:0}.video-upload-tray__item-copy strong{font-size:var(--text-body-md);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.video-upload-tray__item-copy small{color:var(--color-sage-muted);font-size:var(--text-body-sm);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;display:block;overflow:hidden}.video-upload-tray__status{border:1px solid var(--color-line-strong);border-radius:var(--radius-pill);padding:3px var(--space-2);color:var(--color-sage-muted);background:var(--color-paper);font-family:var(--font-mono);font-size:var(--text-label);text-transform:uppercase;white-space:nowrap;align-items:center;gap:6px;font-weight:900;display:inline-flex}.video-upload-tray__status svg{width:12px;height:12px}.video-upload-tray__status.is-uploading,.video-upload-tray__status.is-processing{border-color:var(--color-info-border);color:var(--color-forest);background:var(--color-forest-soft)}.video-upload-tray__status.is-completed{border-color:var(--color-success-border);color:var(--color-success);background:var(--color-success-bg)}.video-upload-tray__status.is-failed{border-color:var(--color-danger-border);color:var(--color-danger);background:var(--color-danger-bg)}.video-upload-tray__status.is-retrying,.video-upload-tray__status.is-waiting{border-color:var(--color-marigold);color:var(--color-marigold-600);background:var(--color-marigold-100)}.video-upload-tray__progress{align-items:center;gap:var(--space-3);grid-template-columns:1fr auto;display:grid}.video-upload-tray__progress>span{border-radius:var(--radius-pill);background:var(--color-sage-100);height:6px;display:block;overflow:hidden}.video-upload-tray__progress>span i{border-radius:inherit;background:var(--color-forest);height:100%;transition:width var(--transition-base);display:block}.video-upload-tray__progress.is-processing>span i{background:var(--color-marigold)}.video-upload-tray__progress b{color:var(--color-sage-muted);font-family:var(--font-mono);font-size:var(--text-data)}.video-upload-tray__detail{color:var(--color-sage-muted);font-size:var(--text-body-sm);overflow-wrap:anywhere;margin:0}.video-upload-tray__item.is-failed .video-upload-tray__detail{color:var(--color-danger)}.video-upload-tray__actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.video-upload-tray__action{border:1px solid var(--color-line-strong);border-radius:var(--radius-md);padding:5px var(--space-3);color:var(--color-evergreen-ink);background:var(--color-paper);font-size:var(--text-body-sm);transition:background var(--transition-fast), border-color var(--transition-fast);align-items:center;gap:6px;display:inline-flex}.video-upload-tray__action svg{width:14px;height:14px}.video-upload-tray__action:hover:not(:disabled){border-color:var(--color-forest);background:var(--color-sage-50)}.video-upload-tray__action:disabled{opacity:.6}.video-upload-tray__action.is-primary{border-color:var(--color-forest);color:var(--color-on-primary);background:var(--color-forest)}.video-upload-tray__action.is-primary:hover:not(:disabled){background:var(--color-forest-600)}.video-upload-tray__hint{color:var(--color-sage-muted);font-size:var(--text-body-sm)}@keyframes video-upload-tray-spin{to{transform:rotate(360deg)}}@media (width<=560px){.video-upload-tray{right:var(--space-3);left:var(--space-3);bottom:var(--space-3);width:auto}.video-upload-tray__list{max-height:clamp(160px,100dvh - 230px,340px)}.video-upload-tray.has-scroll .video-upload-tray__list{height:clamp(160px,100dvh - 230px,340px)}}@media (prefers-reduced-motion:reduce){.video-upload-tray__spin{animation:none}.video-upload-tray__progress>span i{transition:none}}.component-showcase{gap:var(--space-8);width:min(1180px,100%);padding:var(--space-6);margin:0 auto;display:grid}.component-showcase__header{justify-content:space-between;align-items:flex-start;gap:var(--space-6);padding-bottom:var(--space-6);border-bottom:1px solid var(--color-line);display:flex}.component-showcase__header h1,.component-showcase__header p{margin:0}.component-showcase__header h1{margin-top:var(--space-3)}.component-showcase__grid{gap:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.component-showcase__card{align-content:start;gap:var(--space-5);border:1px solid var(--color-line);border-radius:var(--radius-lg);min-height:260px;padding:var(--space-6);background:var(--color-paper-warm);display:grid}.component-showcase__card--dark{color:var(--color-on-dark);background:linear-gradient(135deg, var(--color-forest-800), var(--color-forest))}.component-showcase__card h2{color:var(--color-sage-muted);margin:0}.component-showcase__card--dark h2{color:var(--color-sage-200)}.component-showcase__cluster{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.component-showcase__stack{gap:var(--space-4);display:grid}.component-showcase__social-row{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (width<=1024px){.component-showcase__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.component-showcase__header{display:grid}.component-showcase__grid{grid-template-columns:1fr}}:root{--app-sidebar-width:84px}:root[data-sidebar=expanded]{--app-sidebar-width:252px}:root[data-sidebar=collapsed]{--app-sidebar-width:84px}.network-page{grid-template-columns:var(--app-sidebar-width) minmax(0, 1fr);background:var(--color-paper);width:100%;max-width:none;min-height:100vh;transition:grid-template-columns var(--transition-base);border:0;border-radius:0;margin:0;display:grid;overflow:visible}.app-sidebar{z-index:50;width:var(--app-sidebar-width);height:100dvh;max-height:100dvh;padding:var(--space-3);gap:var(--space-3);border-right:1px solid var(--color-line);background:linear-gradient(180deg, var(--color-paper-warm) 0%, color-mix(in srgb, var(--color-paper-warm) 62%, var(--color-sage-50)) 100%);transition:width var(--transition-base);grid-template-rows:auto minmax(0,1fr) auto;display:grid;position:fixed;inset:0 auto 0 0}@media (width>=769px){.app-sidebar[data-collapsed=true]{padding-inline:var(--space-2)}}.app-sidebar__mobile-nav,.app-sidebar__mobile-backdrop{display:none}.app-sidebar svg{stroke-width:1.75px;flex:none;width:18px;height:18px}.app-sidebar__brand{align-items:center;gap:var(--space-3);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-line);grid-template-columns:40px minmax(0,1fr) 28px;display:grid}.app-sidebar[data-collapsed=true] .app-sidebar__brand{justify-items:center;gap:var(--space-2);grid-template-columns:minmax(0,1fr)}.app-sidebar__logo{background:#171316;border-radius:11px;width:40px;height:40px;overflow:hidden;box-shadow:0 6px 16px #1713162e}.app-sidebar__logo--school{border:1px solid var(--color-line);background:var(--color-paper);box-shadow:0 4px 12px #18211d1f}.app-sidebar__logo>a{place-items:center;width:100%;height:100%;display:grid}.app-sidebar__network-logo{object-fit:contain;object-position:center;width:36px;height:36px;display:block}.app-sidebar__school-logo-image{object-fit:contain;object-position:center;width:100%;height:100%;padding:4px;display:block}.app-sidebar__school-initials{width:100%;height:100%;color:var(--color-evergreen-ink);font-family:var(--font-sans);letter-spacing:.04em;place-items:center;font-size:.82rem;font-weight:800;line-height:1;display:grid}.app-sidebar__wordmark{gap:1px;min-width:0;text-decoration:none;display:grid}.app-sidebar__wordmark strong{font-family:var(--font-display);color:var(--color-evergreen-ink);white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:600;line-height:1.15;overflow:hidden}.app-sidebar__wordmark small{letter-spacing:.07em;text-transform:uppercase;color:var(--color-sage-muted);white-space:nowrap;text-overflow:ellipsis;font-size:10px;font-weight:700;overflow:hidden}.app-sidebar__collapse{border-radius:var(--radius-md);width:28px;height:28px;color:var(--color-sage-muted);cursor:pointer;transition:color var(--transition-fast), background-color var(--transition-fast), border-color var(--transition-fast);background:0 0;border:1px solid #0000;place-items:center;display:grid}.app-sidebar__collapse svg{width:16px;height:16px}.app-sidebar__collapse:hover:not(:disabled){color:var(--color-forest);border-color:var(--color-line-strong);background:var(--color-paper)}.app-sidebar__collapse:disabled{opacity:0;pointer-events:none}.app-sidebar[data-collapsed=true] .app-sidebar__wordmark{display:none}.app-sidebar__nav{align-content:start;gap:var(--space-3);overscroll-behavior:contain;scrollbar-width:none;min-height:0;display:grid;overflow-y:auto}.app-sidebar__nav::-webkit-scrollbar{display:none}.app-sidebar__group{gap:var(--space-1);display:grid}.app-sidebar__group-title{padding-inline:var(--space-3);letter-spacing:.1em;text-transform:uppercase;color:var(--color-sage-muted);opacity:.72;margin:0;font-size:10px;font-weight:800;line-height:1}.app-sidebar__group-items{padding-left:var(--space-3);gap:2px;display:grid;position:relative}.app-sidebar__group-items:before{content:"";inset-block:5px;border-radius:var(--radius-pill);background:var(--color-line);width:1px;position:absolute;left:0}.app-sidebar__group:first-child .app-sidebar__group-items:before{display:none}.app-sidebar__nav a{align-items:center;gap:var(--space-3);min-height:34px;padding:0 var(--space-3);border-radius:var(--radius-lg);color:var(--color-sage-muted);font-size:var(--text-body-sm);transition:background-color var(--transition-base), color var(--transition-base);font-weight:600;line-height:1;text-decoration:none;display:flex;position:relative}.app-sidebar__nav a>span{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.app-sidebar__short-label{display:none}.app-sidebar__nav a svg{color:currentColor;opacity:.78;transition:opacity var(--transition-base)}.app-sidebar__nav a:hover{color:var(--color-evergreen-ink);background:color-mix(in srgb, var(--color-paper) 70%, transparent)}.app-sidebar__nav a:hover svg{opacity:1}.app-sidebar__nav a.is-active{color:var(--color-forest);background:var(--color-forest-soft);font-weight:700}.app-sidebar__nav a.is-active svg{opacity:1}.app-sidebar__nav a:before{content:"";top:6px;bottom:6px;left:calc(var(--space-3) * -1);border-radius:var(--radius-pill);background:var(--color-forest);opacity:0;width:2px;transition:opacity var(--transition-base), transform var(--transition-base);position:absolute;transform:scaleY(.3)}.app-sidebar__nav a.is-active:before{opacity:1;transform:scaleY(1)}.app-sidebar__group:first-child a:before{display:none}.app-sidebar__utilities{padding-top:var(--space-2);border-top:1px solid var(--color-line);gap:2px;display:grid}.app-sidebar__theme,.app-sidebar__logout{align-items:center;gap:var(--space-3);min-height:34px;padding:0 var(--space-3);border-radius:var(--radius-lg);color:var(--color-sage-muted);font-family:inherit;font-size:var(--text-body-sm);text-align:left;cursor:pointer;transition:background-color var(--transition-base), color var(--transition-base);background:0 0;border:0;font-weight:600;line-height:1;display:flex;position:relative}.app-sidebar__theme svg,.app-sidebar__logout svg{opacity:.78}.app-sidebar__theme:hover{color:var(--color-marigold-600);background:var(--color-marigold-100)}.app-sidebar__logout:hover{color:var(--color-danger);background:var(--color-danger-bg)}.app-sidebar__theme:hover svg,.app-sidebar__logout:hover svg{opacity:1}.app-sidebar[data-collapsed=true] .app-sidebar__group-title{clip-path:inset(50%);height:1px;margin:0;padding:0;overflow:hidden}.app-sidebar[data-collapsed=true] .app-sidebar__group+.app-sidebar__group{padding-top:var(--space-2);border-top:1px solid var(--color-line)}.app-sidebar[data-collapsed=true] .app-sidebar__nav{gap:var(--space-2)}.app-sidebar[data-collapsed=true] .app-sidebar__group-items{justify-items:center;padding-left:0}.app-sidebar[data-collapsed=true] .app-sidebar__group-items:before{display:none}.app-sidebar[data-collapsed=true] .app-sidebar__nav a,.app-sidebar[data-collapsed=true] .app-sidebar__theme,.app-sidebar[data-collapsed=true] .app-sidebar__logout{flex-direction:column;justify-content:center;gap:4px;width:64px;min-height:52px;padding:6px 4px}.app-sidebar[data-collapsed=true] .app-sidebar__utilities{justify-items:center}.app-sidebar[data-collapsed=true] .app-sidebar__nav a>span,.app-sidebar[data-collapsed=true] .app-sidebar__theme>span,.app-sidebar[data-collapsed=true] .app-sidebar__logout>span{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.app-sidebar[data-collapsed=true] .app-sidebar__short-label{clip-path:none;width:100%;max-width:64px;color:inherit;letter-spacing:.02em;text-align:center;text-overflow:ellipsis;white-space:nowrap;font-size:9px;font-weight:800;line-height:1.1;display:block;position:static;overflow:hidden}.app-sidebar[data-collapsed=true] .app-sidebar__nav a:before{left:-6px}.app-sidebar[data-collapsed=true] .app-sidebar__nav a:after,.app-sidebar[data-collapsed=true] .app-sidebar__theme:after,.app-sidebar[data-collapsed=true] .app-sidebar__logout:after{content:attr(data-label);z-index:60;border-radius:var(--radius-md);color:var(--color-notification-text);background:var(--color-notification-surface);box-shadow:var(--shadow-panel);font-size:var(--text-body-sm);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity var(--transition-fast), transform var(--transition-fast);padding:7px 11px;font-weight:600;position:absolute;left:calc(100% + 14px);transform:translate(-4px)}.app-sidebar[data-collapsed=true] .app-sidebar__nav a[data-hint]:after{content:attr(data-label) " · " attr(data-hint)}.app-sidebar[data-collapsed=true] .app-sidebar__nav a:hover:after,.app-sidebar[data-collapsed=true] .app-sidebar__nav a:focus-visible:after,.app-sidebar[data-collapsed=true] .app-sidebar__theme:hover:after,.app-sidebar[data-collapsed=true] .app-sidebar__theme:focus-visible:after,.app-sidebar[data-collapsed=true] .app-sidebar__logout:hover:after,.app-sidebar[data-collapsed=true] .app-sidebar__logout:focus-visible:after{opacity:1;transform:translate(0)}.app-sidebar a:focus-visible,.app-sidebar button:focus-visible{outline:2px solid var(--color-marigold);outline-offset:2px}@media (prefers-reduced-motion:reduce){.network-page,.app-sidebar,.app-sidebar *{transition-duration:1ms!important}}.network-shell{width:100%;min-width:0;animation:page-enter var(--transition-slow) ease-out;grid-column:2}.top-header{z-index:100;align-items:center;gap:var(--space-4);min-height:64px;padding:var(--space-3) var(--space-6);border-bottom:1px solid var(--color-line);background:var(--color-paper);grid-template-columns:minmax(220px,320px) minmax(220px,1fr) auto auto;display:grid;position:sticky;top:0}.top-header__context,.top-header__profile{min-width:0;position:relative}.top-header__network{align-items:center;gap:var(--space-3);border-radius:var(--radius-lg);width:100%;min-width:0;padding:var(--space-1);color:inherit;text-align:left;background:0 0;border:0;display:flex}.top-header__network--interactive{cursor:pointer;transition:background-color var(--transition-base)}.top-header__network--interactive:hover,.top-header__network--interactive[aria-expanded=true]{background:var(--color-sage-50)}.top-header__network>div{flex:auto;min-width:0}.top-header__network>div strong,.top-header__network>div small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.top-header__network>svg,.top-header__profile-trigger>svg{width:16px;height:16px;color:var(--color-sage-muted);transition:transform var(--transition-base);flex:none}.top-header__network>svg.is-open,.top-header__profile-trigger>svg.is-open{transform:rotate(180deg)}.top-header__mark,.top-header__avatar{border-radius:var(--radius-lg);place-items:center;width:36px;height:36px;font-weight:800;display:grid}.top-header__profile-trigger{align-items:center;gap:var(--space-1);border-radius:var(--radius-lg);min-height:42px;color:inherit;transition:background-color var(--transition-base);background:0 0;border:0;padding:3px 4px;display:flex}.top-header__profile-trigger:hover,.top-header__profile-trigger[aria-expanded=true]{background:var(--color-sage-50)}.top-header__menu{top:calc(100% + var(--space-2));z-index:150;gap:var(--space-1);border:1px solid var(--color-line-strong);border-radius:var(--radius-lg);padding:var(--space-2);color:var(--color-evergreen-ink);background:var(--color-paper);box-shadow:var(--shadow-panel);text-align:left;animation:top-header-menu-enter var(--transition-fast);display:grid;position:absolute;overflow:hidden}.top-header__workspace-menu{width:min(310px,100vw - 32px);max-height:calc(100vh - 90px);left:0;overflow-y:auto}.top-header__profile-menu{width:min(270px,100vw - 32px);right:0}.top-header__menu-label{padding:var(--space-2) var(--space-3) var(--space-1);color:var(--color-sage-muted);font-family:var(--font-mono);font-size:var(--text-label);text-transform:uppercase;font-weight:900}.top-header__menu>button{align-items:center;gap:var(--space-3);border-radius:var(--radius-md);width:100%;min-height:48px;padding:var(--space-2) var(--space-3);color:inherit;text-align:left;transition:color var(--transition-base), background-color var(--transition-base);background:0 0;border:0;grid-template-columns:auto minmax(0,1fr) auto;display:grid}.top-header__menu>button:hover,.top-header__menu>button:focus-visible,.top-header__menu>button.is-active{color:var(--color-forest);background:var(--color-forest-soft)}.top-header__menu-icon{border-radius:var(--radius-md);width:34px;height:34px;color:var(--color-forest);background:var(--color-sage-50);place-items:center;display:grid}.top-header__menu-icon svg,.top-header__menu>button>svg{width:17px;height:17px}.top-header__menu-check{color:var(--color-success)}.top-header__profile-menu>header{align-items:center;gap:var(--space-3);border-bottom:1px solid var(--color-line);margin-bottom:var(--space-1);padding:var(--space-2) var(--space-3) var(--space-3);grid-template-columns:auto 1fr;display:grid}.top-header__profile-menu>button{grid-template-columns:auto minmax(0,1fr)}.top-header__profile-menu hr{width:100%;height:1px;margin:var(--space-1) 0;background:var(--color-line);border:0}.top-header__profile-menu>button.top-header__signout{color:var(--color-danger)}.top-header__profile-menu>button.top-header__signout:hover,.top-header__profile-menu>button.top-header__signout:focus-visible{background:var(--color-danger-bg)}.top-header__mark{color:var(--color-on-primary);background:var(--color-forest)}.top-header__avatar{color:var(--color-evergreen-ink);background:var(--color-marigold)}.top-header strong,.top-header small{display:block}.top-header small{color:var(--color-sage-muted)}.top-header__search{align-items:center;gap:var(--space-2);border:1px solid var(--color-line);border-radius:var(--radius-lg);height:42px;padding:0 var(--space-3);background:var(--color-paper-warm);color:var(--color-sage-muted);text-align:left;cursor:text;transition:border-color var(--transition-base), box-shadow var(--transition-base);grid-template-columns:auto 1fr auto;display:grid}.top-header__search>svg,.top-header__icon-button>svg{flex:0 0 18px;width:18px;height:18px}.top-header__search>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.top-header__search:hover{border-color:var(--color-forest)}.top-header__search:focus-visible{border-color:var(--color-marigold);box-shadow:var(--shadow-focus);outline:0}.top-header__search kbd{border:1px solid var(--color-line);border-radius:var(--radius-sm);color:var(--color-sage-muted);background:var(--color-paper);font-family:var(--font-mono);padding:2px 5px}.top-header__icon-button{border-radius:var(--radius-lg);width:40px;height:40px;color:var(--color-sage-muted);transition:background-color var(--transition-base), color var(--transition-base), transform var(--transition-fast);background:0 0;border:0;justify-content:center;align-items:center;display:flex;position:relative}.top-header__icon-button:hover{color:var(--color-forest);background:var(--color-sage-50);transform:translateY(-1px)}.top-header__unread-badge{color:#fff;min-width:18px;height:18px;font-family:var(--font-sans,system-ui, -apple-system, sans-serif);letter-spacing:-.2px;box-shadow:0 0 0 2px var(--color-paper,#fff);pointer-events:none;z-index:2;box-sizing:border-box;background-color:#ef4444;border-radius:9999px;justify-content:center;align-items:center;padding:0 4px;font-size:10.5px;font-weight:700;line-height:18px;display:inline-flex;position:absolute;top:1px;right:1px}.network-main{padding:var(--space-8)}.network-hero{justify-content:space-between;align-items:flex-start;gap:var(--space-6);margin-bottom:var(--space-6);display:flex}.network-hero--admin{align-items:flex-end}.network-hero__eyebrow{margin-bottom:var(--space-2);color:var(--color-sage-muted);font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.8px;text-transform:uppercase;font-weight:800;display:block}.network-hero--admin h1{font-size:42px}.network-hero--admin p{max-width:650px}.network-hero--admin .button--ghost{border-color:var(--color-line);background:var(--color-paper);box-shadow:var(--shadow-card)}.network-overview-grid{align-items:stretch;gap:var(--space-4);margin-bottom:var(--space-4);grid-template-columns:minmax(0,2.05fr) minmax(300px,1fr);display:grid}.app-shell .network-health-card{text-align:left;gap:0}.network-library-card{align-content:start;gap:var(--space-5);border:1px solid var(--color-line);min-width:0;min-height:300px;padding:var(--space-6);background:var(--color-paper);text-align:left;transition:border-color var(--transition-base), box-shadow var(--transition-base);border-radius:24px;display:grid}.network-library-card:hover{border-color:var(--color-line-strong);box-shadow:var(--shadow-card)}.network-library-card>header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);display:flex}.network-library-card>header>div>span{color:var(--color-sage-muted);font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.8px;text-transform:uppercase}.network-library-card h2{margin:var(--space-2) 0 0;font-family:var(--font-display);font-size:24px;font-weight:400;line-height:1.1}.network-library-card__icon{width:42px;height:42px;color:var(--color-forest);background:var(--color-forest-soft);border-radius:50%;flex:none;place-items:center;display:grid}.network-library-card__icon svg{width:18px;height:18px}.network-library-card__stats{gap:var(--space-3);margin:0;display:grid}.network-library-card__stats>div{align-items:center;gap:var(--space-3);border-top:1px solid var(--color-line);padding-top:var(--space-3);grid-template-columns:auto minmax(0,1fr);display:grid}.network-library-card__stats>div:first-child{border-top:0;padding-top:0}.network-library-card__stat-icon{border-radius:var(--radius-md);width:36px;height:36px;color:var(--color-forest);background:var(--color-paper-warm);flex:none;place-items:center;display:grid}.network-library-card__stat-icon svg{width:17px;height:17px}.network-library-card__stat-copy{align-items:baseline;gap:2px var(--space-3);grid-template-columns:minmax(0,1fr) auto;min-width:0;display:grid}.network-library-card__stat-copy dt{color:var(--color-evergreen-ink);font-size:var(--text-body-sm);font-weight:800}.network-library-card__stat-copy dd{color:var(--color-evergreen-ink);font-family:var(--font-mono);text-align:right;margin:0;font-size:22px;font-weight:900}.network-library-card__stat-copy small{color:var(--color-sage-muted);font-size:var(--text-data);grid-column:1/-1}.network-quick-actions{gap:var(--space-3);margin-bottom:var(--space-6);grid-template-columns:repeat(6,minmax(0,1fr));display:grid}.network-quick-actions a{align-items:center;gap:var(--space-3);border:1px solid var(--color-line);border-radius:var(--radius-lg);min-width:0;min-height:68px;padding:var(--space-3);color:inherit;background:var(--color-paper);transition:border-color var(--transition-base), box-shadow var(--transition-base), background-color var(--transition-base), transform var(--transition-fast);grid-template-columns:auto minmax(0,1fr) auto;text-decoration:none;display:grid}.network-quick-actions a:hover,.network-quick-actions a:focus-visible{border-color:var(--color-line-strong);background:var(--color-paper-warm);box-shadow:var(--shadow-card);transform:translateY(-1px)}.network-quick-actions__icon{width:38px;height:38px;color:var(--color-forest);background:var(--color-sage-50);border-radius:50%;place-items:center;display:grid}.network-quick-actions__icon svg,.network-quick-actions a>svg{width:16px;height:16px}.network-quick-actions a>span:nth-child(2){min-width:0}.network-quick-actions strong,.network-quick-actions small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.network-quick-actions small,.network-quick-actions a>svg{color:var(--color-sage-muted)}.network-hero h1{font-family:var(--font-display);margin:0;font-size:32px;line-height:1.1}.network-hero p{margin:var(--space-2) 0 0;color:var(--color-sage-muted)}.network-hero__actions{gap:var(--space-3);align-items:center;display:flex}.network-tabs{padding:var(--space-1);border-radius:var(--radius-lg);background:var(--color-sage-100);display:inline-flex}.network-tabs button{border-radius:var(--radius-md);min-height:38px;padding:0 var(--space-4);color:var(--color-sage-muted);background:0 0;border:0;font-weight:700}.network-tabs button.is-active{color:var(--color-evergreen-ink);background:var(--color-paper)}.network-grid{gap:var(--space-4);grid-template-columns:minmax(0,1.45fr) minmax(320px,.9fr);display:grid}.network-grid__main,.network-grid__side{align-content:start;gap:var(--space-4);display:grid}.watch-card,.metric-card,.dashboard-section{border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-paper);transition:border-color var(--transition-base), box-shadow var(--transition-base), transform var(--transition-fast)}.watch-card:hover,.metric-card:hover,.dashboard-section:hover{border-color:var(--color-line-strong);box-shadow:var(--shadow-card)}.watch-card{padding:var(--space-5)}.watch-card header{justify-content:space-between;gap:var(--space-4);display:flex}.watch-card h2,.metric-card h3,.dashboard-section h2{font-size:var(--text-body-md);margin:0}.watch-card strong{margin-top:var(--space-3);font-family:var(--font-mono);font-size:34px;display:inline-block}.watch-card header span:not(.watch-card__status){margin-left:var(--space-2);color:var(--color-success);font-family:var(--font-mono);font-weight:800}.watch-card__status,.status-badge{border-radius:var(--radius-pill);padding:var(--space-1) var(--space-3);font-size:var(--text-body-sm);justify-content:center;align-items:center;font-weight:800;line-height:1;display:inline-flex}.watch-card__status,.status-badge--healthy,.status-badge--live{color:var(--color-success);background:var(--color-success-bg)}.watch-chart svg{width:100%;height:auto}.watch-chart__area{fill:var(--color-sage-50);animation:chart-area-enter var(--transition-slow) both}.watch-chart__line{fill:none;stroke:var(--color-forest);stroke-width:4px;stroke-dasharray:900;stroke-dashoffset:900px;animation:chart-draw .85s var(--ease-emphasized) forwards}.watch-chart__dot{fill:var(--color-marigold);opacity:0;animation:chart-dot-enter var(--transition-base) .7s forwards}.watch-chart__axis{color:var(--color-sage-muted);font-family:var(--font-mono);justify-content:space-between;font-size:11px;display:flex}.network-health-card{min-height:300px;padding:var(--space-6) 28px var(--space-5);color:var(--color-on-dark);box-shadow:none;background:linear-gradient(118deg,#102f25,#173d2f);border:0;border-radius:24px}.network-health-card:hover{box-shadow:none;border-color:#0000}.network-health-card>header{align-items:start;gap:var(--space-6);grid-template-columns:minmax(220px,1fr) auto;display:grid}.network-health-card .network-health-card__score h2{color:#91a59a;font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.8px;text-transform:uppercase;font-weight:700}.network-health-card .network-health-card__score>strong{margin:var(--space-1) 0 var(--space-2);color:var(--color-on-dark);font-family:var(--font-display);font-size:48px;font-weight:400;line-height:1;display:block}.network-health-card .network-health-card__score>strong small{color:var(--color-marigold);margin-left:2px;font-size:24px;font-weight:400}.watch-card.network-health-card header .network-health-card__score>span{align-items:center;gap:var(--space-2);color:var(--color-marigold);font-family:var(--font-sans);margin-left:0;font-weight:700;display:inline-flex}.network-health-card__score>span svg{width:16px;height:16px}.network-health-card__metrics{grid-template-columns:repeat(4,minmax(58px,auto));gap:clamp(20px,2.6vw,38px);margin:0;display:grid}.network-health-card__metrics div{gap:var(--space-1);display:grid}.network-health-card__metrics dt{color:#91a59a;font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.8px;text-transform:uppercase}.network-health-card__metrics dd{color:var(--color-on-dark);font-family:var(--font-display);margin:0;font-size:25px;line-height:1.1}.network-health-chart{margin-top:var(--space-5);color:var(--color-marigold)}.network-health-chart svg{width:100%;height:132px;display:block;overflow:visible}.network-health-chart__area{fill:url(#network-health-area);opacity:.9;animation:chart-area-enter var(--transition-slow) both}.network-health-chart__line{fill:none;stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1200;stroke-dashoffset:1200px;animation:network-health-chart-draw .9s var(--ease-emphasized) forwards}.network-health-chart__point{fill:var(--color-marigold);stroke:#173d2f;stroke-width:3px}.network-health-chart__axis{color:#82968b;font-size:var(--text-data);text-align:center;margin-top:-7px;display:grid}.network-health-chart__axis span:first-child{text-align:left}.network-health-chart__axis span:last-child{text-align:right}.network-metrics{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.metric-card{min-height:190px;padding:var(--space-5)}.metric-card>strong{margin-top:var(--space-3);font-size:34px;display:block}.metric-card p{color:var(--color-sage-muted)}.metric-card__line{width:100%;margin-top:var(--space-6)}.metric-card__line polyline{fill:none;stroke:var(--color-success);stroke-width:3px}.progress-ring{width:100px;margin-top:var(--space-3);position:relative}.progress-ring svg{transform:rotate(-90deg)}.progress-ring circle{fill:none;stroke-width:12px}.progress-ring__track{stroke:var(--color-sage-50)}.progress-ring__value{stroke:var(--color-forest);stroke-linecap:round;transition:stroke-dashoffset var(--motion-fast) linear}.progress-ring strong{text-align:center;font-size:18px;position:absolute;inset:35px 0 auto}.progress-ring span{width:1px;height:1px;position:absolute;overflow:hidden}.dashboard-section{padding:var(--space-5)}.dashboard-section__header{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);display:flex}.dashboard-section__header a,.dashboard-section__header span{color:var(--color-sage-muted);font-weight:800;text-decoration:none}.school-section,.recent-activity-section,.school-section .dashboard-section__header,.recent-activity-section .dashboard-section__header{text-align:start}.school-fleet__head,.school-row{align-items:center;gap:var(--space-4);grid-template-columns:minmax(200px,1.9fr) 84px 70px 84px 104px;display:grid}.school-fleet__head{padding:var(--space-2) 0;color:var(--color-sage-muted);font-family:var(--font-mono);text-transform:uppercase;font-size:11px;font-weight:800}.school-fleet__head>span:first-child{text-align:start}.school-row{border-top:1px solid var(--color-line);padding:var(--space-3) 0;transition:background-color var(--transition-base), transform var(--transition-fast)}.school-row:hover{background:var(--color-paper-warm);transform:translate(1px)}.school-row__school{align-items:center;gap:var(--space-3);min-width:0;display:flex}.school-row__school>div{text-align:start;min-width:0}.school-row__avatar{width:32px;height:32px;color:var(--color-on-primary);background:var(--color-forest);border-radius:50%;flex:none;place-items:center;font-size:12px;font-weight:900;display:grid}.school-row__avatar--slipping{background:#8d5a25}.school-row__avatar--risk{background:var(--color-danger)}.school-row__avatar img{border-radius:inherit;object-fit:cover;object-position:center;width:100%;height:100%;display:block}.school-fleet__empty,.attention-list__empty{border:1px dashed var(--color-line-strong);border-radius:var(--radius-lg);padding:var(--space-5);color:var(--color-sage-muted);background:var(--color-paper-warm);text-align:center;margin:0}.school-row strong,.school-row small{display:block}.school-row small{color:var(--color-sage-muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.school-row__count{font-family:var(--font-mono);font-weight:800}.school-row__count:before{content:attr(data-label) ": ";color:var(--color-sage-muted);font-family:var(--font-sans);font-weight:700;display:none}.school-row__progress{align-items:center;gap:var(--space-2);display:flex}.school-row__progress span,.rollout-item__bar{border-radius:var(--radius-pill);background:var(--color-sage-100);flex:auto;height:6px;overflow:hidden}.school-row__progress i,.rollout-item__bar i{border-radius:inherit;background:var(--color-forest);height:100%;display:block}.progress-width--31 i{width:31%}.progress-width--54 i{width:54%}.progress-width--62 i{width:62%}.progress-width--78 i{width:78%}.progress-width--88 i{width:88%}.progress-width--92 i{width:92%}.progress-width--96 i{width:96%}.progress-width--98 i{width:98%}.school-row__progress strong{font-size:12px}.school-row__spark polyline{fill:none;stroke:var(--color-forest);stroke-width:3px}.school-row__spark--down polyline{stroke:var(--color-danger)}.status-badge--slipping,.status-badge--publishing{color:var(--color-warning);background:var(--color-warning-bg)}.status-badge--risk{color:var(--color-danger);background:var(--color-danger-bg)}.attention-list{display:grid}.activity-list{gap:var(--space-3);display:grid}.activity-item{align-items:start;gap:var(--space-3);border-top:1px solid var(--color-line);padding-top:var(--space-3);text-align:start;grid-template-columns:auto minmax(0,1fr);display:grid}.activity-item:first-child{border-top:0;padding-top:0}.activity-item__icon{width:34px;height:34px;color:var(--color-forest);background:var(--color-forest-soft);border-radius:50%;flex:none;place-items:center;display:grid}.activity-item__icon svg{width:16px;height:16px}.activity-item--video_uploaded .activity-item__icon{color:var(--color-marigold-600);background:var(--color-marigold-100)}.activity-item--school_added .activity-item__icon{color:var(--color-sage-muted);background:var(--color-sage-50)}.activity-item__body{text-align:start;min-width:0}.activity-item__body header{justify-content:space-between;align-items:baseline;gap:var(--space-2);text-align:start;margin:0;display:flex}.activity-item__body strong{color:var(--color-evergreen-ink);font-size:var(--text-body-md);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.activity-item__body time{color:var(--color-sage-muted);font-family:var(--font-mono);white-space:nowrap;flex:none;font-size:11px}.activity-item__body small{color:var(--color-sage-muted);font-size:var(--text-body-sm);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;display:block;overflow:hidden}.activity-list__empty{border:1px dashed var(--color-line-strong);border-radius:var(--radius-lg);padding:var(--space-5);color:var(--color-sage-muted);background:var(--color-paper-warm);text-align:center;margin:0}.attention-item{align-items:center;gap:var(--space-3);border-top:1px solid var(--color-line);padding:var(--space-4) 0;transition:background-color var(--transition-base);display:flex}.attention-item:hover{background:linear-gradient(90deg, var(--color-paper-warm), transparent)}.attention-item:first-child{border-top:0;padding-top:0}.attention-item svg{border-radius:var(--radius-md);stroke-width:1.6px;flex:none;width:34px;height:34px;padding:6px}.attention-item--risk svg{color:var(--color-danger);background:var(--color-danger-bg)}.attention-item--warning svg{color:var(--color-warning);background:var(--color-warning-bg)}.attention-item--info svg{color:var(--color-success);background:var(--color-success-bg)}.attention-item p{margin-top:var(--space-1);color:var(--color-sage-muted)}.sr-only{width:1px;height:1px;position:absolute;overflow:hidden}@media (width>=1240px){.network-page{min-height:100vh}}@media (width<=1024px){.network-main{padding:var(--space-6)}.top-header{grid-template-columns:1fr auto auto}.top-header__search{order:2;grid-column:1/-1}.network-grid{grid-template-columns:1fr}}@media (width<=720px){.network-health-card>header{grid-template-columns:1fr}.network-health-card__metrics{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=768px){.network-page{padding-bottom:calc(72px + env(safe-area-inset-bottom));border-radius:0;grid-template-columns:1fr}.app-sidebar{z-index:60;width:100%;max-width:100vw;height:calc(64px + env(safe-area-inset-bottom));max-height:none;padding:0 6px env(safe-area-inset-bottom);border-right:0;border-top:1px solid var(--color-line);background:color-mix(in srgb, var(--color-paper-warm) 94%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:0;display:block;position:fixed;inset:auto 0 0;box-shadow:0 -10px 30px #18211d14}.app-sidebar__brand,.app-sidebar__logo,.app-sidebar__nav,.app-sidebar__utilities{display:none}.app-sidebar__mobile-nav{z-index:2;box-sizing:border-box;justify-content:space-evenly;align-items:stretch;gap:2px;width:100%;height:64px;display:flex;position:relative}.app-sidebar__mobile-nav>a,.app-sidebar__mobile-nav>button{min-width:0;min-height:0;color:var(--color-sage-muted);text-align:center;box-sizing:border-box;transition:color var(--transition-base), background-color var(--transition-base), transform var(--transition-fast);background:0 0;border:0;border-radius:10px;flex-direction:column;flex:1 1 0;justify-content:center;align-items:center;gap:2px;padding:6px 2px 4px;font-size:10px;font-weight:700;line-height:1.1;text-decoration:none;display:flex;position:relative}.app-sidebar__mobile-nav>a:before,.app-sidebar__mobile-nav>button:before{content:"";border-radius:var(--radius-pill);background:var(--color-forest);opacity:0;width:16px;height:3px;transition:opacity var(--transition-base), transform var(--transition-base);position:absolute;top:3px;left:50%;transform:translate(-50%)scaleX(.4)}.app-sidebar__mobile-nav>a:hover,.app-sidebar__mobile-nav>button:hover,.app-sidebar__mobile-nav>a.is-active,.app-sidebar__mobile-nav>button.is-active{color:var(--color-forest);background:var(--color-forest-soft)}.app-sidebar__mobile-nav>a.is-active:before,.app-sidebar__mobile-nav>button.is-active:before{opacity:1;transform:translate(-50%)scaleX(1)}.app-sidebar__mobile-nav>a:active,.app-sidebar__mobile-nav>button:active{transform:scale(.96)}.app-sidebar__mobile-nav svg{stroke-width:1.8px;flex:0 0 20px;width:20px;height:20px;margin:0 auto;display:block}.app-sidebar__mobile-nav span{text-align:center;text-overflow:ellipsis;white-space:nowrap;width:100%;margin:0;font-size:10px;line-height:1.1;display:block;overflow:hidden}.app-sidebar__mobile-backdrop{z-index:1;inset:0 0 calc(64px + env(safe-area-inset-bottom));padding:var(--space-3);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:mobile-nav-backdrop-enter var(--transition-fast);background:#0c110e73;align-items:end;display:grid;position:fixed}.app-sidebar__mobile-sheet{gap:var(--space-4);border:1px solid var(--color-line-strong);width:100%;max-height:min(580px,100dvh - 96px);padding:var(--space-4);color:var(--color-evergreen-ink);background:var(--color-paper);box-shadow:var(--shadow-panel);animation:mobile-nav-sheet-enter var(--transition-slow);border-radius:20px;display:grid;overflow-y:auto}.app-sidebar__mobile-sheet>header{justify-content:space-between;align-items:center;gap:var(--space-4);display:flex}.app-sidebar__mobile-sheet>header strong,.app-sidebar__mobile-sheet>header small{display:block}.app-sidebar__mobile-sheet>header strong{font-family:var(--font-display);font-size:var(--text-heading-md)}.app-sidebar__mobile-sheet>header small{color:var(--color-sage-muted);margin-top:2px}.app-sidebar__mobile-sheet>header>button{border-radius:var(--radius-lg);width:40px;height:40px;color:var(--color-sage-muted);background:var(--color-sage-50);border:0;flex:none;place-items:center;display:grid}.app-sidebar__mobile-sheet>header svg{width:19px;height:19px}.app-sidebar__mobile-sheet>nav{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.app-sidebar__mobile-sheet>nav a{align-items:center;gap:var(--space-3);border:1px solid var(--color-line);min-width:0;min-height:52px;padding:var(--space-2);color:var(--color-evergreen-ink);background:var(--color-paper-warm);border-radius:12px;font-weight:700;text-decoration:none;display:flex}.app-sidebar__mobile-sheet>nav a>span{border-radius:var(--radius-lg);width:34px;height:34px;color:var(--color-forest);background:var(--color-forest-soft);flex:none;place-items:center;display:grid}.app-sidebar__mobile-sheet>nav a.is-active{border-color:var(--color-forest);box-shadow:inset 0 0 0 1px var(--color-forest)}.app-sidebar__mobile-sheet>nav svg,.app-sidebar__mobile-actions svg{width:18px;height:18px}.app-sidebar__mobile-actions{gap:var(--space-2);border-top:1px solid var(--color-line);padding-top:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.app-sidebar__mobile-actions button{justify-content:center;align-items:center;gap:var(--space-2);border:1px solid var(--color-line);min-height:44px;color:var(--color-evergreen-ink);background:var(--color-paper-warm);border-radius:12px;font-weight:700;display:flex}.app-sidebar__mobile-actions button.is-danger{color:var(--color-danger);background:var(--color-danger-bg)}@keyframes mobile-nav-backdrop-enter{0%{opacity:0}}@keyframes mobile-nav-sheet-enter{0%{opacity:0;transform:translateY(18px)scale(.98)}}.network-shell{grid-column:auto}.top-header{z-index:40;padding:var(--space-4);background:color-mix(in srgb, var(--color-paper) 94%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);grid-template-columns:minmax(0,1fr) auto auto;position:sticky;top:0}.top-header__network>svg{width:14px}.network-hero{display:grid}.network-hero__actions{flex-wrap:wrap}.network-metrics{grid-template-columns:1fr}.school-fleet__head{display:none}.school-row{gap:var(--space-2) var(--space-4);border:1px solid var(--color-line);border-radius:var(--radius-lg);margin-bottom:var(--space-3);padding:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr))}.school-row__school{margin-bottom:var(--space-2);grid-column:1/-1}.school-row__count{font-family:var(--font-sans);font-weight:700}.school-row__count:before{display:inline}}@media (width<=520px){.network-page{min-height:100vh}.network-main{padding:var(--space-4)}.top-header__network small,.top-header__mark,.top-header__search kbd{display:none}.top-header,.top-header__network{gap:var(--space-2)}.top-header__profile-trigger{gap:0}.top-header__profile-trigger>svg{display:none}.network-tabs,.network-hero__actions,.network-hero__actions .button{width:100%}.network-tabs button{padding:0 var(--space-2);flex:1}.network-health-card{min-height:0;padding:var(--space-5);border-radius:18px}.network-health-card__metrics{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr))}.network-health-chart svg{height:110px}.network-health-chart__axis{font-size:10px}}@media (prefers-reduced-motion:reduce){.network-health-chart__area,.network-health-chart__line{stroke-dashoffset:0;animation:none}.top-header__menu{animation:none}}@media (width<=1180px){.network-quick-actions{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=1050px){.network-overview-grid{grid-template-columns:1fr}.network-library-card{min-height:0}}@media (width<=768px){.network-hero--admin h1{font-size:36px}.network-quick-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=520px){.network-hero--admin h1{font-size:32px}.network-library-card{padding:var(--space-5);border-radius:18px}.network-quick-actions{gap:var(--space-2)}.network-quick-actions a{grid-template-columns:auto minmax(0,1fr);min-height:64px}.network-quick-actions a>svg{display:none}}@media (prefers-reduced-motion:reduce){.network-quick-actions a:hover,.network-quick-actions a:focus-visible{transform:none}}.school-dashboard-page{background:var(--color-canvas);min-height:100vh}.school-dashboard-main{padding:var(--space-6) var(--space-8);gap:var(--space-6);flex-direction:column;width:100%;max-width:1360px;margin:0 auto;display:flex}.school-welcome-card{padding:var(--space-6) var(--space-8);background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);text-align:left;flex-direction:column;align-items:flex-start;display:flex;position:relative;overflow:hidden}.welcome-card-bg-overlay{pointer-events:none;z-index:1;position:absolute;inset:0;overflow:hidden}.welcome-card-bg-img{opacity:.12;filter:contrast(1.05)saturate(1.1);width:55%;transition:opacity var(--transition-normal);background-position:100%;background-repeat:no-repeat;background-size:cover;position:absolute;top:0;bottom:0;right:0}.welcome-card-bg-gradient{background:linear-gradient(90deg, var(--color-paper) 0%, var(--color-paper) 35%, #ffffffb3 70%, transparent 100%);position:absolute;inset:0}.school-welcome-content{z-index:2;text-align:left;flex-direction:column;align-items:flex-start;width:100%;max-width:760px;display:flex;position:relative}.welcome-tag{align-items:center;gap:var(--space-2);background:var(--color-forest-soft);color:var(--color-forest);border-radius:var(--radius-pill);font-size:var(--text-label);margin-bottom:var(--space-3);letter-spacing:.2px;border:1px solid #16a34a2e;align-self:flex-start;padding:4px 12px;font-weight:700;display:inline-flex}.welcome-tag svg{width:14px;height:14px;color:var(--color-forest)}.school-welcome-content h1{font-size:var(--text-heading-xl);color:var(--color-evergreen-ink);margin:0 0 var(--space-2);letter-spacing:-.3px;text-align:left;align-self:flex-start;font-weight:800;line-height:1.2}.school-welcome-content p{font-size:var(--text-body-md);color:var(--color-sage-muted);margin:0 0 var(--space-4);text-align:left;align-self:flex-start;max-width:680px;line-height:1.5}.school-welcome-actions{justify-content:flex-start;align-items:center;gap:var(--space-3);flex-wrap:wrap;align-self:flex-start;display:flex}.school-metric-grid{gap:var(--space-4);grid-template-columns:repeat(4,1fr);display:grid}.school-stat-card{align-items:center;gap:var(--space-4);padding:var(--space-5);background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);cursor:pointer;transition:all var(--transition-fast);display:flex}.school-stat-card:hover{border-color:var(--color-line-strong);box-shadow:var(--shadow-panel);transform:translateY(-2px)}.stat-card__icon-wrap{border-radius:var(--radius-md);flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.stat-card__icon-wrap svg{width:24px;height:24px}.school-stat-card--green .stat-card__icon-wrap{color:#16a34a;background:#f0fdf4}.school-stat-card--purple .stat-card__icon-wrap{color:#8b5cf6;background:#faf5ff}.school-stat-card--amber .stat-card__icon-wrap{color:#f59e0b;background:#fffbeb}.school-stat-card--pink .stat-card__icon-wrap{color:#ec4899;background:#fdf2f8}.stat-card__content{flex-direction:column;display:flex}.stat-card__label{font-size:var(--text-label);color:var(--color-sage-muted);text-transform:uppercase;letter-spacing:.3px;font-weight:700}.stat-card__value{color:var(--color-evergreen-ink);margin:2px 0;font-size:28px;font-weight:800;line-height:1.1}.stat-card__sub{color:var(--color-sage-muted);align-items:center;gap:4px;font-size:11px;font-weight:600;display:flex}.live-dot{background:#22c55e;border-radius:50%;width:6px;height:6px;display:inline-block}.school-dashboard-grid{gap:var(--space-6);grid-template-columns:1.6fr 1fr;align-items:start;display:grid}.school-section-card{background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);flex-direction:column;height:auto;display:flex;overflow:hidden}.school-section-header{border-bottom:1px solid var(--color-line);background:var(--color-paper-warm);flex-shrink:0;justify-content:space-between;align-items:center;min-height:auto;padding:14px 20px;display:flex}.school-section-header h2{color:var(--color-evergreen-ink);margin:0 0 2px;font-size:16px;font-weight:700;line-height:1.25}.school-section-header p{color:var(--color-sage-muted);margin:0;font-size:12px;line-height:1.25}.section-view-all-link{color:var(--color-forest);transition:gap var(--transition-fast);flex-shrink:0;align-items:center;gap:4px;font-size:12px;font-weight:700;text-decoration:none;display:inline-flex}.section-view-all-link:hover{gap:8px}.section-view-all-link svg{width:14px;height:14px}.today-prominent-list{flex-direction:column;flex:initial;gap:12px;padding:16px 20px;display:flex}.today-prominent-item{align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4);background:var(--color-paper-warm);border:1px solid var(--color-line);border-radius:var(--radius-md);transition:all var(--transition-fast);display:flex}.today-prominent-item:hover{background:var(--color-paper);border-color:var(--color-line-strong);box-shadow:var(--shadow-xs)}.today-prominent-item.is-live-border{background:#fcfefc;border-left:3px solid #22c55e}.today-prominent-thumb-box{border-radius:var(--radius-sm);border:1px solid var(--color-line);flex-shrink:0;width:100px;height:64px;position:relative;overflow:hidden}.today-prominent-thumb{object-fit:cover;width:100%;height:100%}.duration-tag{color:#fff;border-radius:var(--radius-xs);background:#0c110ebf;padding:1px 4px;font-size:10px;font-weight:600;position:absolute;bottom:4px;right:4px}.today-prominent-info{flex-direction:column;flex:1;gap:4px;display:flex}.info-badge-row{align-items:center;gap:var(--space-2);display:flex}.time-tag{color:var(--color-forest-700);align-items:center;gap:4px;font-size:11px;font-weight:600;display:inline-flex}.time-tag svg{width:12px;height:12px}.today-prominent-title{font-size:var(--text-body-md);color:var(--color-evergreen-ink);margin:0;font-weight:700;line-height:1.25}.today-prominent-chips{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.chip-item{background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-xs);color:var(--color-sage-muted);align-items:center;gap:4px;padding:2px 6px;font-size:11px;font-weight:600;display:inline-flex}.chip-item svg{width:12px;height:12px}.chip-item--green{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.chip-item--purple{color:#6b21a8;background:#faf5ff;border-color:#e9d5ff}.chip-item--amber{color:#92400e;background:#fffbeb;border-color:#fde68a}.btn-live-accent{background:var(--color-forest)!important;color:#fff!important}.week-day-bars{padding:var(--space-4) var(--space-6);gap:var(--space-3);flex-direction:column;flex:1;display:flex}.week-day-row{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);grid-template-columns:70px 1fr 80px;display:grid}.week-day-row:hover{background:var(--color-sage-50)}.week-day-row.is-today-row{background:var(--color-forest-soft)}.day-name-block{flex-direction:column;display:flex}.day-name-block strong{font-size:var(--text-body-sm);color:var(--color-evergreen-ink)}.day-name-block small{color:var(--color-sage-muted);font-size:10px;font-weight:600}.day-bar-track{background:var(--color-line);border-radius:var(--radius-pill);height:8px;overflow:hidden}.day-bar-fill{border-radius:var(--radius-pill);background:#8b5cf6;height:100%;transition:width .4s}.day-bar-fill--today{background:var(--color-forest)}.day-count-badge{color:var(--color-sage-muted);text-align:right;font-size:11px;font-weight:600}.day-count-badge.has-lessons{color:var(--color-evergreen-ink);font-weight:700}.week-overview-footer{padding:var(--space-4) var(--space-6);border-top:1px solid var(--color-line);background:var(--color-paper-warm)}.overview-summary-box{gap:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.overview-summary-item{flex-direction:column;display:flex}.summary-label{color:var(--color-sage-muted);text-transform:uppercase;font-size:10px;font-weight:700}.summary-val{font-size:var(--text-body-md);color:var(--color-evergreen-ink);font-weight:800}@media (width<=1100px){.school-metric-grid{grid-template-columns:repeat(2,1fr)}.school-dashboard-grid{grid-template-columns:1fr}}@media (width<=640px){.school-metric-grid{grid-template-columns:1fr}.today-prominent-item{flex-direction:column;align-items:flex-start}}.curriculum-main{align-content:start;gap:var(--space-5);background:var(--color-paper);display:grid}.curriculum-hero{align-items:flex-end;margin-bottom:0}.curriculum-hero .text-label{margin-bottom:var(--space-2);color:var(--color-sage-muted);display:block}.curriculum-target,.curriculum-week-card,.curriculum-division-card,.curriculum-videos,.curriculum-library,.curriculum-upload,.curriculum-publish{align-content:start;gap:var(--space-4);border:1px solid var(--color-line);border-radius:var(--radius-lg);min-width:0;padding:var(--space-5);background:var(--color-paper);text-align:left;transition:border-color var(--transition-base), box-shadow var(--transition-base);display:grid}.curriculum-target:hover,.curriculum-week-card:hover,.curriculum-division-card:hover,.curriculum-videos:hover,.curriculum-library:hover,.curriculum-upload:hover,.curriculum-publish:hover{border-color:var(--color-line-strong);box-shadow:var(--shadow-card)}.curriculum-target>header,.curriculum-week-card>header,.curriculum-division-card>header,.curriculum-videos>header,.curriculum-library>header,.curriculum-upload>header,.curriculum-publish>header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);display:flex}.curriculum-target h2,.curriculum-grid h2{margin:var(--space-1) 0;font-family:var(--font-display);font-size:var(--text-heading-md)}.curriculum-target header p,.curriculum-grid header p,.curriculum-grid header>span{color:var(--color-sage-muted)}.curriculum-selector{align-items:end;gap:var(--space-3);text-align:left;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr);display:grid}.curriculum-selector label{gap:var(--space-2);display:grid}.curriculum-selector label>span{color:var(--color-sage-muted);font-size:var(--text-body-sm);font-weight:800}.curriculum-selector select{border:1px solid var(--color-line-strong);border-radius:var(--radius-lg);width:100%;min-height:46px;padding:0 var(--space-3);color:var(--color-evergreen-ink);background:var(--color-paper);font-weight:700}.curriculum-selector__step{color:var(--color-marigold);font-family:var(--font-mono);padding-bottom:14px;font-weight:900}.curriculum-grid{gap:var(--space-5);grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);min-width:0;display:grid}.curriculum-path{align-items:center;gap:var(--space-2);border-block:1px solid var(--color-line);padding-block:var(--space-3);color:var(--color-sage-muted);flex-wrap:wrap;display:flex}.curriculum-path b{color:var(--color-marigold)}.curriculum-path strong{color:var(--color-evergreen-ink)}.curriculum-week-card dl{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid}.curriculum-week-card dl div{gap:var(--space-1);border-radius:var(--radius-lg);padding:var(--space-3);background:var(--color-paper-warm);display:grid}.curriculum-week-card dt{color:var(--color-sage-muted);font-size:var(--text-body-sm)}.curriculum-week-card dd{font-family:var(--font-mono);margin:0;font-weight:900}.division-mode{gap:var(--space-2);display:grid}.division-mode>button{align-items:center;gap:var(--space-3);border:1px solid var(--color-line);border-radius:var(--radius-lg);padding:var(--space-3);color:var(--color-evergreen-ink);background:var(--color-paper-warm);text-align:left;transition:border-color var(--transition-base), background-color var(--transition-base);grid-template-columns:auto minmax(0,1fr);display:grid}.division-mode>button:hover,.division-mode>button.is-selected{border-color:var(--color-forest);background:var(--color-forest-soft)}.division-mode>button>span{border:1px solid var(--color-line-strong);width:24px;height:24px;color:var(--color-on-primary);background:var(--color-paper);border-radius:50%;place-items:center;display:grid}.division-mode>button.is-selected>span{border-color:var(--color-forest);background:var(--color-forest)}.division-mode svg{width:14px;height:14px}.division-mode strong,.division-mode small{display:block}.division-mode small{color:var(--color-sage-muted);margin-top:2px}.division-checklist{gap:var(--space-2);border-top:1px solid var(--color-line);padding-top:var(--space-3);flex-wrap:wrap;display:flex}.division-checklist label{align-items:center;gap:var(--space-2);border:1px solid var(--color-line);border-radius:var(--radius-pill);padding:var(--space-2) var(--space-3);background:var(--color-paper-warm);cursor:pointer;font-weight:700;display:inline-flex}.division-checklist input{accent-color:var(--color-forest)}.curriculum-videos,.curriculum-library,.curriculum-upload,.curriculum-publish{grid-column:1/-1}.curriculum-video-list{gap:var(--space-2);display:grid}.curriculum-video-list article,.curriculum-library-grid article{align-items:center;gap:var(--space-3);border:1px solid var(--color-line);border-radius:var(--radius-lg);min-width:0;padding:var(--space-3);background:var(--color-paper-warm);transition:border-color var(--transition-base), transform var(--transition-base);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.curriculum-video-list article:hover,.curriculum-library-grid article:hover{border-color:var(--color-line-strong);transform:translateY(-1px)}.curriculum-video-list strong,.curriculum-video-list small,.curriculum-library-grid strong,.curriculum-library-grid small{display:block}.curriculum-video-list small,.curriculum-library-grid small{color:var(--color-sage-muted);margin-top:2px}.curriculum-video-mark{border-radius:var(--radius-lg);color:#fff;background:linear-gradient(135deg,#1e4d3b,#4f8d68);place-items:center;width:52px;height:42px;display:grid;overflow:hidden}.curriculum-video-mark img{object-fit:cover;width:100%;height:100%}.curriculum-video-mark--slate{background:linear-gradient(135deg,#30444f,#708692)}.curriculum-video-mark--umber{background:linear-gradient(135deg,#74492f,#ba8459)}.curriculum-video-mark--plum{background:linear-gradient(135deg,#56344e,#9c668e)}.curriculum-video-mark--sage{background:linear-gradient(135deg,#436a58,#88aa91)}.curriculum-video-mark--brick{background:linear-gradient(135deg,#763d35,#bd7568)}.curriculum-video-mark svg{width:22px;height:22px}.curriculum-library-grid{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.curriculum-library>header .button{flex:none}.curriculum-library__actions{align-items:center;gap:var(--space-3);display:flex}.curriculum-publish__action{justify-content:space-between;align-items:center;gap:var(--space-4);border-top:1px solid var(--color-line);padding-top:var(--space-4);display:flex}.curriculum-publish__action>span{max-width:720px;color:var(--color-sage-muted)}.video-upload-scope{border:1px solid var(--color-line);border-radius:var(--radius-lg);padding:var(--space-3);color:var(--color-sage-muted);background:var(--color-paper-warm);margin:0;font-weight:700}.video-upload-scope span{margin-top:var(--space-1);color:var(--color-evergreen-ink);display:block}.upload-video-field{grid-column:1/-1}.upload-video-field input[type=file]{cursor:pointer;min-height:56px;padding:10px}.curriculum-videos .state-panel{margin:0}@media (width<=1000px){.curriculum-selector{grid-template-columns:repeat(2,minmax(0,1fr))}.curriculum-selector__step{display:none}.curriculum-grid{grid-template-columns:1fr}.curriculum-videos,.curriculum-library,.curriculum-upload,.curriculum-publish{grid-column:auto}.curriculum-library-grid{grid-template-columns:1fr}}@media (width<=720px){.curriculum-hero .button{width:100%}.curriculum-selector{grid-template-columns:1fr}.curriculum-selector__step{display:none}.curriculum-week-card dl{grid-template-columns:1fr}.curriculum-target>header,.curriculum-week-card>header,.curriculum-division-card>header,.curriculum-videos>header,.curriculum-library>header,.curriculum-upload>header,.curriculum-publish>header,.curriculum-publish__action{display:grid}.curriculum-library>header .button,.curriculum-upload>header .button,.curriculum-publish__action .button{width:100%}.curriculum-library__actions{display:grid}}@media (width<=480px){.curriculum-video-list article,.curriculum-library-grid article{grid-template-columns:auto minmax(0,1fr)}.curriculum-video-list article>button,.curriculum-library-grid article>.button{grid-column:1/-1;width:100%}}.curriculum-page .curriculum-main{gap:clamp(var(--space-5), 3vw, var(--space-7))}.curriculum-page .curriculum-hero{border-bottom:1px solid var(--color-line);padding-bottom:var(--space-5)}.curriculum-page .curriculum-hero p{max-width:720px}.curriculum-page .curriculum-target{gap:var(--space-4);border-radius:calc(var(--radius-lg) + 4px);background:linear-gradient(135deg, var(--color-paper-warm), var(--color-paper));box-shadow:inset 0 0 0 1px var(--color-line);border-color:#0000}.curriculum-page .curriculum-target:hover{box-shadow:inset 0 0 0 1px var(--color-line-strong);border-color:#0000}.curriculum-page .curriculum-step__heading{gap:var(--space-3)}.curriculum-page .curriculum-step__heading h2{margin-top:0}.curriculum-page .curriculum-selector{margin-left:58px}.curriculum-page .curriculum-selector label>span{color:var(--color-evergreen-ink);font-size:var(--text-label);letter-spacing:.04em;text-transform:uppercase}.curriculum-page .curriculum-selector select{transition:border-color var(--transition-base), box-shadow var(--transition-base), background-color var(--transition-base)}.curriculum-page .curriculum-selector select:not(:disabled):hover{border-color:var(--color-forest)}.curriculum-page .curriculum-selector select:not(:disabled):focus{border-color:var(--color-marigold);box-shadow:var(--shadow-focus);outline:0}.curriculum-target__state,.curriculum-library__context{align-items:center;gap:var(--space-2);border-radius:var(--radius-lg);min-width:0;color:var(--color-sage-muted);background:var(--color-sage-50);transition:color var(--transition-base), background-color var(--transition-base), transform var(--transition-base);display:flex}.curriculum-target__state{padding:var(--space-2) var(--space-3);font-size:var(--text-body-sm);margin-left:58px;font-weight:700}.curriculum-target__state svg,.curriculum-library__context>svg{flex:0 0 18px;width:18px;height:18px}.curriculum-target__state.is-ready,.curriculum-library__context.is-ready{color:var(--color-forest);background:var(--color-forest-soft)}.curriculum-page .curriculum-builder{transition:grid-template-columns .24s,gap .24s}.curriculum-page .curriculum-builder.is-library-only{grid-template-columns:minmax(0,1fr)}.curriculum-page .curriculum-builder__content{gap:var(--space-6)}.curriculum-page .curriculum-builder .curriculum-step{gap:var(--space-4);border:0;border-top:1px solid var(--color-line);padding:var(--space-6) 0 0;box-shadow:none;background:0 0;border-radius:0}.curriculum-page .curriculum-builder .curriculum-step:hover{border-color:var(--color-line-strong);box-shadow:none}.curriculum-page .curriculum-global-library{border-top:0;padding-top:0}.curriculum-library__context{padding:var(--space-3);margin-left:58px}.curriculum-library__context>svg{width:34px;height:34px;color:var(--color-forest);background:var(--color-paper);border-radius:50%;flex-basis:34px;padding:8px}.curriculum-library__context strong,.curriculum-library__context span{display:block}.curriculum-library__context strong{color:var(--color-evergreen-ink)}.curriculum-library__context span{font-size:var(--text-body-sm);margin-top:2px}.curriculum-page .curriculum-library-toolbar,.curriculum-page .curriculum-builder .curriculum-library-grid{margin-left:58px}.curriculum-page .curriculum-builder.is-library-only .curriculum-library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.curriculum-page .curriculum-library-grid article{border-color:var(--color-line);background:var(--color-paper);transition:border-color var(--transition-base), box-shadow var(--transition-base), transform var(--transition-base), background-color var(--transition-base);box-shadow:0 1px 2px #18211d0a}.curriculum-page .curriculum-library-grid article:hover{border-color:var(--color-line-strong);transform:translateY(-2px);box-shadow:0 8px 22px #18211d14}.curriculum-page .curriculum-builder.is-library-only .curriculum-library-grid article{grid-template-columns:auto minmax(0,1fr)}.curriculum-page .curriculum-reach{padding-bottom:var(--space-2)}.curriculum-page .division-mode>button{transition:border-color var(--transition-base), background-color var(--transition-base), box-shadow var(--transition-base), transform var(--transition-base)}.curriculum-page .division-mode>button:not(:disabled):hover{transform:translateY(-1px)}.curriculum-page .curriculum-review{border-color:var(--color-line-strong);background:linear-gradient(180deg, var(--color-paper-warm), var(--color-paper));overflow:hidden;box-shadow:0 16px 40px #18211d1a}.curriculum-review__readiness{gap:var(--space-2);border:1px solid color-mix(in srgb, var(--color-marigold) 38%, var(--color-line));border-radius:var(--radius-lg);padding:var(--space-3);color:var(--color-evergreen-ink);background:color-mix(in srgb, var(--color-marigold) 9%, var(--color-paper));grid-template-columns:auto minmax(0,1fr);display:grid}.curriculum-review__readiness.is-ready{border-color:color-mix(in srgb, var(--color-forest) 35%, var(--color-line));background:var(--color-forest-soft)}.curriculum-review__readiness>svg{width:19px;height:19px;color:var(--color-marigold);margin-top:1px}.curriculum-review__readiness.is-ready>svg{color:var(--color-forest)}.curriculum-review__readiness p,.curriculum-review__readiness ul{margin:var(--space-1) 0 0;color:var(--color-sage-muted);font-size:var(--text-body-sm)}.curriculum-review__readiness ul{gap:3px;padding-left:18px;display:grid}.curriculum-assignment-enter{animation:.26s ease-out both curriculum-assignment-reveal}@keyframes curriculum-assignment-reveal{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (width<=960px){.curriculum-page .curriculum-builder,.curriculum-page .curriculum-builder.is-library-only{grid-template-columns:1fr}.curriculum-page .curriculum-builder.is-assignment-ready .curriculum-library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=720px){.curriculum-page .curriculum-selector,.curriculum-target__state,.curriculum-library__context,.curriculum-page .curriculum-library-toolbar,.curriculum-page .curriculum-builder .curriculum-library-grid{margin-left:0}.curriculum-page .curriculum-builder.is-library-only .curriculum-library-grid,.curriculum-page .curriculum-builder.is-assignment-ready .curriculum-library-grid{grid-template-columns:1fr}}@media (width<=480px){.curriculum-page .curriculum-builder.is-library-only .curriculum-library-grid article{grid-template-columns:auto minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){.curriculum-assignment-enter{animation:none}.curriculum-page .curriculum-builder,.curriculum-page .curriculum-library-grid article,.curriculum-page .division-mode>button{transition:none}}.curriculum-page .curriculum-main{box-sizing:border-box;width:100%;max-width:none}.curriculum-step__heading{text-align:left}@media (width>=961px){.curriculum-builder{grid-template-columns:minmax(0,1fr) minmax(340px,390px)}.curriculum-builder .curriculum-reach{align-items:center;gap:var(--space-5);padding-block:var(--space-4);grid-template-columns:minmax(300px,.75fr) minmax(440px,1.25fr)}.curriculum-reach .curriculum-step__heading{gap:var(--space-3);grid-template-columns:40px minmax(0,1fr)}.curriculum-reach .curriculum-step__icon{width:40px;height:40px}.curriculum-reach .curriculum-step__heading h2{margin:0 0 2px}.curriculum-reach .curriculum-step__heading p{line-height:1.35}.curriculum-reach .curriculum-step__meta{display:none}.curriculum-builder .curriculum-reach .division-mode{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));margin-left:0}.curriculum-builder .curriculum-reach .division-mode>button{min-height:64px;padding:var(--space-3)}.curriculum-builder .curriculum-reach .division-checklist{grid-column:1/-1;margin:0;padding-left:53px}}.curriculum-main{gap:var(--space-6)}.curriculum-hero{align-items:flex-start}.curriculum-hero>div{max-width:760px}.curriculum-hero .text-label{color:var(--color-forest)}.curriculum-progress{border-radius:var(--radius-lg);padding:var(--space-3) var(--space-4);background:var(--color-paper-warm);grid-template-columns:repeat(6,minmax(0,1fr));margin:0;list-style:none;display:grid}.curriculum-progress li{align-items:center;gap:var(--space-2);min-width:0;padding:var(--space-2) var(--space-3);color:var(--color-sage-muted);display:flex;position:relative}.curriculum-progress li:not(:last-child):after{border-top:1px solid var(--color-line-strong);border-right:1px solid var(--color-line-strong);content:"";width:6px;height:6px;position:absolute;top:50%;right:-3px;transform:translateY(-50%)rotate(45deg)}.curriculum-progress span{color:var(--color-marigold-600);font-family:var(--font-mono);font-size:var(--text-data);font-weight:900}.curriculum-progress strong{color:var(--color-evergreen-ink);font-size:var(--text-body-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.curriculum-step{align-content:start;gap:var(--space-5);min-width:0;padding:var(--space-8) 0;box-shadow:none;text-align:left;background:0 0;border:0;border-radius:0;display:grid}.curriculum-step:hover{box-shadow:none;border-color:#0000}.curriculum-target{border-radius:var(--radius-lg);padding:var(--space-6);background:var(--color-paper-warm);border:0}.curriculum-target:hover{box-shadow:none;border-color:#0000}.curriculum-workflow{min-width:0;display:grid}.curriculum-workflow>.curriculum-step{border-bottom:1px solid var(--color-line)}.curriculum-step__heading{align-items:start;gap:var(--space-3);grid-template-columns:34px 44px minmax(0,1fr) auto;min-width:0;display:grid}.curriculum-step__number{color:var(--color-marigold-600);font-family:var(--font-mono);font-size:var(--text-data);letter-spacing:.04em;padding-top:7px;font-weight:900}.curriculum-step__icon{width:44px;height:44px;color:var(--color-forest);background:var(--color-forest-soft);border-radius:50%;place-items:center;display:grid}.curriculum-step__icon svg{stroke-width:1.8px;width:20px;height:20px}.curriculum-step__heading h2{margin:var(--space-1) 0;font-family:var(--font-display);font-size:var(--text-heading-lg)}.curriculum-step__heading p{max-width:720px;color:var(--color-sage-muted);margin:0}.curriculum-step__meta{border-radius:var(--radius-pill);padding:var(--space-2) var(--space-3);color:var(--color-forest);background:var(--color-forest-soft);font-size:var(--text-body-sm);white-space:nowrap;align-self:center;font-weight:800}.curriculum-selector,.curriculum-target-summary{margin-left:90px}.curriculum-selector{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr)}.curriculum-selector select{min-height:48px;transition:border-color var(--transition-base), box-shadow var(--transition-base)}.curriculum-selector select:focus{border-color:var(--color-marigold);box-shadow:var(--shadow-focus);outline:0}.curriculum-target-summary{align-items:center;gap:var(--space-5);border-radius:var(--radius-lg);padding:var(--space-4);background:var(--color-forest-soft);grid-template-columns:minmax(0,1fr) auto auto;display:grid}.curriculum-target-summary__path{align-items:center;gap:var(--space-3);min-width:0;display:flex}.curriculum-target-summary__path>svg{width:38px;height:38px;color:var(--color-forest);background:var(--color-paper);border-radius:50%;flex:0 0 38px;padding:9px}.curriculum-target-summary__path div{min-width:0}.curriculum-target-summary__path span,.curriculum-target-summary__path small{color:var(--color-sage-muted);display:block}.curriculum-target-summary__path strong{margin:2px 0;display:block}.curriculum-target-summary__path b,.curriculum-publish__action b{color:var(--color-marigold-600)}.curriculum-target-summary dl{gap:var(--space-4);margin:0;display:flex}.curriculum-target-summary dl div{min-width:54px}.curriculum-target-summary dt{color:var(--color-sage-muted);font-size:var(--text-label);text-transform:uppercase;font-weight:800}.curriculum-target-summary dd{font-family:var(--font-mono);margin:2px 0 0;font-weight:900}.division-mode,.division-checklist,.curriculum-videos>.curriculum-video-list,.curriculum-videos>.state-panel{margin-left:90px}.division-mode{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr))}.division-mode>button{padding:var(--space-4)}.division-mode>button:hover:not(:disabled){border-color:var(--color-line-strong);box-shadow:var(--shadow-card)}.division-mode>button.is-selected{border-color:var(--color-forest);background:var(--color-forest-soft)}.division-checklist{padding-top:var(--space-1);border-top:0}.division-checklist label{background:var(--color-sage-50);border:0}.division-checklist label:has(input:checked){color:var(--color-forest);background:var(--color-forest-soft)}.curriculum-media{min-width:0;margin:var(--space-6) 0;border-radius:var(--radius-lg);background:var(--color-paper-warm);text-align:left}.curriculum-upload{align-items:center;gap:var(--space-4);padding:var(--space-6);box-shadow:none;background:0 0;border:0;border-radius:0;grid-template-columns:minmax(0,1fr) auto;display:grid}.curriculum-upload:hover{box-shadow:none;border-color:#0000}.curriculum-library{gap:var(--space-5);border:0;border-top:1px solid var(--color-line);padding:var(--space-6);box-shadow:none;background:0 0;border-radius:0;display:grid}.curriculum-library:hover{border-color:var(--color-line);box-shadow:none}.curriculum-library-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-left:90px}.curriculum-library-grid article,.curriculum-video-list article{background:var(--color-paper);border-color:#0000;box-shadow:0 1px 2px #18211d0f}.curriculum-library-grid article:hover,.curriculum-video-list article:hover{border-color:var(--color-line);box-shadow:var(--shadow-card)}.curriculum-library-grid article.is-assigned{border-color:var(--color-forest);background:var(--color-forest-soft)}.curriculum-video-list{border-radius:var(--radius-lg);padding:var(--space-2);background:var(--color-paper-warm)}.curriculum-icon-button{width:36px;height:36px;color:var(--color-sage-muted);background:var(--color-sage-50);border:0;border-radius:50%;place-items:center;display:grid}.curriculum-icon-button:hover:not(:disabled){color:var(--color-danger);background:var(--color-danger-bg)}.curriculum-icon-button svg{width:16px;height:16px}.curriculum-publish{margin-top:var(--space-6);border-radius:var(--radius-lg);padding:var(--space-6);color:var(--color-on-dark);background:linear-gradient(135deg, var(--color-forest-800), var(--color-forest-700));box-shadow:var(--shadow-panel);border:0}.curriculum-publish:hover{box-shadow:var(--shadow-panel);border-color:#0000}.curriculum-publish .curriculum-step__number,.curriculum-publish .text-label{color:var(--color-marigold)}.curriculum-publish .curriculum-step__icon{color:var(--color-on-dark);background:#ffffff1f}.curriculum-publish .curriculum-step__heading p{color:#ffffffb8}.curriculum-publish__action{border-top-color:#ffffff29;margin-left:90px}.curriculum-publish__action>span{color:#ffffffc7;font-weight:700}.curriculum-publish__action .button--primary,.curriculum-publish__action .button--secondary{min-height:48px;padding-inline:var(--space-6);border-color:var(--color-marigold);color:#18211d;background:var(--color-marigold);font-weight:900}.video-upload-scope{border:0}@media (width<=1100px){.curriculum-progress{grid-template-columns:repeat(6,minmax(145px,1fr));overflow-x:auto}.curriculum-target-summary{grid-template-columns:1fr auto}.curriculum-library-grid{grid-template-columns:1fr}.curriculum-target-summary dl{grid-column:1/-1}}@media (width<=800px){.curriculum-step__heading{grid-template-columns:30px 40px minmax(0,1fr)}.curriculum-step__meta{grid-column:3;justify-self:start}.curriculum-selector,.curriculum-target-summary,.division-mode,.division-checklist,.curriculum-library-grid,.curriculum-videos>.curriculum-video-list,.curriculum-videos>.state-panel,.curriculum-publish__action{margin-left:0}.curriculum-selector{grid-template-columns:1fr}.curriculum-selector__step{display:none}.curriculum-target-summary{grid-template-columns:1fr}.curriculum-target-summary dl{grid-column:auto}.division-mode,.curriculum-upload{grid-template-columns:1fr}.curriculum-upload>.button,.curriculum-publish__action .button{width:100%}.curriculum-publish__action{display:grid}}@media (width<=540px){.curriculum-main{gap:var(--space-5)}.curriculum-target,.curriculum-upload,.curriculum-library,.curriculum-publish{padding:var(--space-5)}.curriculum-step{padding-block:var(--space-6)}.curriculum-step__heading{grid-template-columns:28px minmax(0,1fr)}.curriculum-step__icon{display:none}.curriculum-step__meta{grid-column:2}.curriculum-target-summary dl{justify-content:space-between}.curriculum-library-grid article,.curriculum-video-list article{grid-template-columns:auto minmax(0,1fr)}.curriculum-library-grid article>.button,.curriculum-video-list article>button{grid-column:1/-1;width:100%}}.curriculum-main{gap:var(--space-5);max-width:1500px}.curriculum-hero{min-height:auto;padding-bottom:var(--space-1)}.curriculum-hero h1{margin-bottom:var(--space-2)}.curriculum-progress{background:0 0;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;width:min(660px,100%);padding:0}.curriculum-progress li{gap:var(--space-2);padding:0 var(--space-4) 0 0}.curriculum-progress li:before{top:17px;right:var(--space-2);background:var(--color-line);content:"";height:2px;position:absolute;left:36px}.curriculum-progress li:not(:last-child):after{display:none}.curriculum-progress li>span{z-index:1;border:2px solid var(--color-line-strong);width:34px;height:34px;color:var(--color-sage-muted);background:var(--color-paper);font-size:var(--text-body-sm);border-radius:50%;flex:0 0 34px;place-items:center;display:grid}.curriculum-progress li.is-complete>span{border-color:var(--color-forest);color:var(--color-on-primary);background:var(--color-forest)}.curriculum-progress li.is-complete:before{background:var(--color-forest)}.curriculum-progress strong{z-index:1;padding-right:var(--space-2);background:var(--color-paper);font-size:var(--text-body-sm)}.curriculum-target{gap:var(--space-5);border:1px solid var(--color-line);padding:var(--space-5);background:var(--color-paper);box-shadow:0 1px 2px #18211d0a}.curriculum-target:hover{border-color:var(--color-line);box-shadow:0 1px 2px #18211d0a}.curriculum-step__heading{grid-template-columns:44px minmax(0,1fr) auto;align-items:center}.curriculum-step__heading h2{margin:1px 0 var(--space-1);font-size:var(--text-heading-md)}.curriculum-step__heading .text-label{color:var(--color-forest)}.curriculum-selector{align-items:start;gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));margin-left:58px}.curriculum-selector label>span{align-items:center;gap:var(--space-2);display:flex}.curriculum-selector label>span b{width:20px;height:20px;color:var(--color-forest);background:var(--color-forest-soft);font-family:var(--font-mono);border-radius:50%;place-items:center;font-size:11px;display:grid}.curriculum-selector select:disabled{border-color:var(--color-line);color:var(--color-sage-muted);background:var(--color-sage-50);cursor:not-allowed}.curriculum-builder{align-items:start;gap:var(--space-5);grid-template-columns:minmax(0,1fr) minmax(300px,360px);min-width:0;display:grid}.curriculum-builder__content{gap:var(--space-5);min-width:0;display:grid}.curriculum-builder .curriculum-step{gap:var(--space-5);border:1px solid var(--color-line);border-radius:var(--radius-lg);padding:var(--space-5);background:var(--color-paper);box-shadow:0 1px 2px #18211d0a}.curriculum-builder .curriculum-step:hover{border-color:var(--color-line);box-shadow:0 1px 2px #18211d0a}.curriculum-builder .division-mode,.curriculum-builder .division-checklist,.curriculum-builder .curriculum-library-grid{margin-left:58px}.curriculum-builder .division-mode{grid-template-columns:repeat(2,minmax(0,1fr))}.curriculum-builder .division-mode>button{background:var(--color-paper);min-height:82px}.curriculum-builder .division-mode>button.is-selected{box-shadow:inset 0 0 0 1px var(--color-forest)}.curriculum-library-toolbar{align-items:center;gap:var(--space-3);margin-left:58px;display:flex}.curriculum-library-toolbar label{align-items:center;gap:var(--space-2);border:1px solid var(--color-line-strong);border-radius:var(--radius-lg);min-width:0;min-height:44px;padding:0 var(--space-3);background:var(--color-paper-warm);flex:1;display:flex}.curriculum-library-toolbar label:focus-within{border-color:var(--color-marigold);box-shadow:var(--shadow-focus)}.curriculum-library-toolbar svg{width:18px;height:18px;color:var(--color-sage-muted);flex:0 0 18px}.curriculum-library-toolbar input{width:100%;min-width:0;color:var(--color-evergreen-ink);background:0 0;border:0;outline:0}.curriculum-library-toolbar>span{color:var(--color-sage-muted);font-size:var(--text-body-sm);white-space:nowrap;font-weight:700}.curriculum-builder .curriculum-library-grid{grid-template-columns:1fr}.curriculum-builder .curriculum-library-grid article{border-color:var(--color-line);background:var(--color-paper-warm);box-shadow:none}.curriculum-builder .curriculum-library-grid article.is-assigned{border-color:var(--color-forest);background:var(--color-forest-soft)}.curriculum-review{top:var(--space-4);gap:var(--space-4);border:1px solid var(--color-line);border-radius:var(--radius-lg);min-width:0;padding:var(--space-5);background:var(--color-paper-warm);box-shadow:var(--shadow-card);display:grid;position:sticky}.curriculum-review>header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.curriculum-review h2{margin:var(--space-1) 0 0;font-family:var(--font-display);font-size:var(--text-heading-md)}.curriculum-review__target{align-items:center;gap:var(--space-3);border-radius:var(--radius-lg);padding:var(--space-3);color:var(--color-on-dark);background:var(--color-forest-800);grid-template-columns:auto minmax(0,1fr);display:grid}.curriculum-review__target>svg{width:38px;height:38px;color:var(--color-marigold);background:#ffffff1a;border-radius:50%;padding:9px}.curriculum-review__target span,.curriculum-review__target strong,.curriculum-review__target small{display:block}.curriculum-review__target span,.curriculum-review__target small{color:#ffffffb8}.curriculum-review__target strong{text-overflow:ellipsis;white-space:nowrap;margin:2px 0;overflow:hidden}.curriculum-review__stats{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;display:grid}.curriculum-review__stats div{border:1px solid var(--color-line);border-radius:var(--radius-lg);padding:var(--space-3);background:var(--color-paper)}.curriculum-review__stats dt{color:var(--color-sage-muted);font-size:var(--text-label);text-transform:uppercase;font-weight:800}.curriculum-review__stats dd{margin:var(--space-1) 0 0;font-weight:800}.curriculum-review__videos{gap:var(--space-3);min-width:0;display:grid}.curriculum-review__label{align-items:center;gap:var(--space-2);display:flex}.curriculum-review__label svg{width:17px;height:17px;color:var(--color-forest)}.curriculum-review .curriculum-video-list{gap:var(--space-2);max-height:280px;padding:0 var(--space-1) 0 0;background:0 0;overflow-y:auto}.curriculum-review .curriculum-video-list article{padding:var(--space-2);background:var(--color-paper);grid-template-columns:auto minmax(0,1fr) auto}.curriculum-review .curriculum-video-list small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.curriculum-video-order{width:26px;height:26px;color:var(--color-forest);background:var(--color-forest-soft);font-family:var(--font-mono);font-size:var(--text-label);border-radius:50%;place-items:center;font-weight:900;display:grid}.curriculum-review__empty{border:1px dashed var(--color-line-strong);border-radius:var(--radius-lg);padding:var(--space-4);color:var(--color-sage-muted);background:var(--color-paper);text-align:center;margin:0}.curriculum-review__action{gap:var(--space-2);border-top:1px solid var(--color-line);padding-top:var(--space-4);display:grid}.curriculum-review__action .button{width:100%;min-height:48px}.curriculum-review__action>small{color:var(--color-sage-muted);text-align:center}@media (width<=1150px){.curriculum-builder{grid-template-columns:minmax(0,1fr) 320px}}@media (width<=960px){.curriculum-builder{grid-template-columns:1fr}.curriculum-review{position:static}}@media (width<=720px){.curriculum-progress{grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible}.curriculum-progress li{justify-items:start;gap:var(--space-1);display:grid}.curriculum-progress li:before{top:17px}.curriculum-progress strong{white-space:normal;padding-right:0}.curriculum-step__heading{grid-template-columns:40px minmax(0,1fr)}.curriculum-step__meta,.curriculum-step__heading>.button{grid-column:2;justify-self:start}.curriculum-selector,.curriculum-builder .division-mode,.curriculum-builder .division-checklist,.curriculum-library-toolbar,.curriculum-builder .curriculum-library-grid{margin-left:0}.curriculum-selector,.curriculum-builder .division-mode{grid-template-columns:1fr}}@media (width<=480px){.curriculum-progress strong{font-size:11px}.curriculum-target,.curriculum-builder .curriculum-step,.curriculum-review{padding:var(--space-4)}.curriculum-library-toolbar{flex-direction:column;align-items:stretch}.curriculum-builder .curriculum-library-grid article{grid-template-columns:auto minmax(0,1fr)}.curriculum-builder .curriculum-library-grid article>.button{grid-column:1/-1;width:100%}}.curriculum-page .curriculum-library__metrics{gap:var(--space-2);grid-template-columns:repeat(3,minmax(0,1fr));margin:0 0 0 58px;display:grid}.curriculum-page .curriculum-library__metrics div{border-left:3px solid var(--color-line-strong);min-width:0;padding:var(--space-2) var(--space-3);background:linear-gradient(90deg, var(--color-sage-50), transparent)}.curriculum-page .curriculum-library__metrics div:nth-child(2){border-left-color:var(--color-forest)}.curriculum-page .curriculum-library__metrics div:nth-child(3){border-left-color:var(--color-marigold)}.curriculum-page .curriculum-library__metrics dt{color:var(--color-sage-muted);font-size:var(--text-label);letter-spacing:.04em;text-transform:uppercase;font-weight:800}.curriculum-page .curriculum-library__metrics dd{color:var(--color-evergreen-ink);font-family:var(--font-mono);font-size:var(--text-heading-md);margin:2px 0 0;font-weight:900}.curriculum-library-filters{gap:var(--space-2);flex-wrap:wrap;margin-left:58px;display:flex}.curriculum-library-filters button{align-items:center;gap:var(--space-2);border-radius:var(--radius-pill);min-height:34px;padding:5px 7px 5px var(--space-3);color:var(--color-sage-muted);background:var(--color-sage-50);font-size:var(--text-body-sm);transition:border-color var(--transition-base), color var(--transition-base), background-color var(--transition-base), transform var(--transition-base);border:1px solid #0000;font-weight:800;display:inline-flex}.curriculum-library-filters button:hover{border-color:var(--color-line-strong);color:var(--color-evergreen-ink);transform:translateY(-1px)}.curriculum-library-filters button.is-active{border-color:var(--color-forest);color:var(--color-forest);background:var(--color-forest-soft)}.curriculum-library-filters button b{border-radius:var(--radius-pill);min-width:22px;min-height:22px;color:var(--color-evergreen-ink);background:var(--color-paper);font-family:var(--font-mono);place-items:center;padding:0 6px;font-size:11px;display:grid}.curriculum-video-copy{min-width:0}.curriculum-video-copy>strong,.curriculum-video-copy>small{text-overflow:ellipsis;overflow:hidden}.curriculum-video-copy>small{-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.45;display:-webkit-box}.curriculum-video-meta{margin-top:var(--space-2);flex-wrap:wrap;align-items:center;gap:6px;display:flex}.curriculum-video-meta>span:not(.curriculum-video-status){color:var(--color-sage-muted);font-size:var(--text-label);font-weight:700}.curriculum-video-meta>span:not(.curriculum-video-status)+span:not(.curriculum-video-status):before{color:var(--color-line-strong);content:"•";margin-right:6px}.curriculum-video-status{border-radius:var(--radius-pill);letter-spacing:.03em;padding:3px 8px;font-size:11px;font-weight:900}.curriculum-video-status.is-completed{color:var(--color-forest);background:var(--color-forest-soft)}.curriculum-video-status.is-processing{color:#835b12;background:#fff3d6}.curriculum-video-status.is-failed{color:#9b2f2f;background:#fde8e7}.curriculum-video-status.is-unavailable{color:var(--color-sage-muted);background:var(--color-sage-50)}.curriculum-video-progress{align-items:center;gap:var(--space-2);margin-top:var(--space-2);grid-template-columns:minmax(80px,1fr) auto;display:grid}.curriculum-video-progress>span{border-radius:var(--radius-pill);background:var(--color-line);height:5px;overflow:hidden}.curriculum-video-progress i{border-radius:inherit;background:linear-gradient(90deg, var(--color-marigold), var(--color-forest));height:100%;transition:width .32s;display:block}.curriculum-video-progress b{color:var(--color-sage-muted);font-family:var(--font-mono);font-size:11px}.curriculum-library__empty-filter{justify-items:center;gap:var(--space-2);margin-left:58px;display:grid}.curriculum-library__empty-filter>button{padding:var(--space-2);color:var(--color-forest);text-underline-offset:3px;background:0 0;border:0;font-weight:800;text-decoration:underline}@media (width<=720px){.curriculum-page .curriculum-library__metrics,.curriculum-library-filters,.curriculum-library__empty-filter{margin-left:0}}@media (width<=480px){.curriculum-page .curriculum-library__metrics{grid-template-columns:1fr}.curriculum-library-filters{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.curriculum-library-filters button{justify-content:space-between}}@media (prefers-reduced-motion:reduce){.curriculum-library-filters button,.curriculum-video-progress i{transition:none}}.curriculum-page .curriculum-builder.is-assignment-ready .curriculum-reach{border-top:0;padding-top:0}.curriculum-page .curriculum-builder.is-assignment-ready .curriculum-global-library{border-top:1px solid var(--color-line);padding-top:var(--space-6)}.curriculum-page .curriculum-builder.is-assignment-ready .curriculum-library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}@media (width<=720px){.curriculum-page .curriculum-builder.is-assignment-ready .curriculum-library-grid{grid-template-columns:1fr}}:root[data-theme=dark] .curriculum-main{background:var(--color-chalk-paper)}:root[data-theme=dark] .curriculum-target,:root[data-theme=dark] .curriculum-week-card,:root[data-theme=dark] .curriculum-division-card,:root[data-theme=dark] .curriculum-videos,:root[data-theme=dark] .curriculum-library,:root[data-theme=dark] .curriculum-upload,:root[data-theme=dark] .curriculum-publish{background:var(--color-paper);border-color:var(--color-line)}:root[data-theme=dark] .curriculum-target:hover,:root[data-theme=dark] .curriculum-week-card:hover,:root[data-theme=dark] .curriculum-division-card:hover,:root[data-theme=dark] .curriculum-videos:hover,:root[data-theme=dark] .curriculum-library:hover,:root[data-theme=dark] .curriculum-upload:hover,:root[data-theme=dark] .curriculum-publish:hover{border-color:var(--color-line-strong);box-shadow:var(--shadow-card)}:root[data-theme=dark] .curriculum-selector select{background:var(--color-paper-warm);border-color:var(--color-line-strong);color:var(--color-evergreen-ink)}:root[data-theme=dark] .curriculum-week-card dl div{background:var(--color-paper-warm)}:root[data-theme=dark] .division-mode>button{background:var(--color-paper-warm);border-color:var(--color-line);color:var(--color-evergreen-ink)}:root[data-theme=dark] .division-mode>button:hover,:root[data-theme=dark] .division-mode>button.is-selected{border-color:var(--color-forest);background:var(--color-forest-soft)}:root[data-theme=dark] .division-checklist label{background:var(--color-paper-warm);border-color:var(--color-line);color:var(--color-evergreen-ink)}:root[data-theme=dark] .curriculum-video-list article,:root[data-theme=dark] .curriculum-library-grid article{background:var(--color-paper-warm);border-color:var(--color-line)}:root[data-theme=dark] .curriculum-video-list article:hover,:root[data-theme=dark] .curriculum-library-grid article:hover{border-color:var(--color-line-strong)}:root[data-theme=dark] .video-upload-scope{background:var(--color-paper-warm);border-color:var(--color-line);color:var(--color-sage-muted)}.hierarchy-main{align-content:start;gap:var(--space-5);background:var(--color-paper);display:grid}.hierarchy-hero{align-items:flex-end;margin-bottom:0}.hierarchy-hero .text-label{margin-bottom:var(--space-2);color:var(--color-sage-muted);display:block}.hierarchy-summary{border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-paper-warm);grid-template-columns:repeat(4,minmax(0,1fr));display:grid;overflow:hidden}.hierarchy-summary.schools-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.hierarchy-summary>div{gap:var(--space-1);min-width:0;padding:var(--space-4) var(--space-5);border-right:1px solid var(--color-line);display:grid}.hierarchy-summary>div:last-child{border-right:0}.hierarchy-summary span,.hierarchy-summary small{color:var(--color-sage-muted)}.hierarchy-summary strong{font-family:var(--font-mono);font-size:24px}.hierarchy-panel{border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-paper);min-width:0;overflow:hidden}.hierarchy-panel>header{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-5);display:flex}.hierarchy-panel>header h2{font-family:var(--font-display);font-size:var(--text-heading-md);margin:0}.hierarchy-panel>header p{margin-top:var(--space-1);color:var(--color-sage-muted)}.hierarchy-panel>header>span{color:var(--color-sage-muted);font-family:var(--font-mono)}.hierarchy-filters{align-items:center;gap:var(--space-2);border-block:1px solid var(--color-line);padding:var(--space-3) var(--space-5);background:var(--color-paper-warm);display:flex}.grades-list-panel>.hierarchy-filters:first-child,.schools-list-panel>.hierarchy-filters:first-child,.weeks-list-panel>.hierarchy-filters:first-child{border-top:0}.hierarchy-search{align-items:center;gap:var(--space-2);border:1px solid var(--color-line);border-radius:var(--radius-lg);min-width:220px;min-height:42px;padding:0 var(--space-3);background:var(--color-paper);flex:auto;grid-template-columns:auto minmax(0,1fr);display:grid}.hierarchy-search:focus-within{border-color:var(--color-marigold);box-shadow:var(--shadow-focus)}.hierarchy-search svg{width:17px;height:17px;color:var(--color-sage-muted);flex:0 0 17px}.hierarchy-search input{min-width:0;color:var(--color-evergreen-ink);background:0 0;border:0;outline:0}.hierarchy-filters select{border:1px solid var(--color-line);border-radius:var(--radius-lg);min-height:42px;padding:0 34px 0 var(--space-3);color:var(--color-evergreen-ink);background:var(--color-paper);font-weight:700}.hierarchy-filter-count{border:1px solid color-mix(in srgb, var(--color-forest) 24%, var(--color-line));border-radius:var(--radius-pill);min-height:42px;padding:0 var(--space-3);color:var(--color-forest);background:var(--color-forest-soft);font-size:var(--text-body-sm);white-space:nowrap;flex:none;align-items:center;gap:6px;font-weight:800;display:inline-flex}.hierarchy-filter-count strong{font-family:var(--font-mono);font-size:var(--text-body-md)}.hierarchy-table-wrap{width:100%;overflow-x:auto}.hierarchy-table{border-collapse:collapse;width:100%;min-width:850px}.hierarchy-table th,.hierarchy-table td{padding:var(--space-3) var(--space-4);text-align:left;vertical-align:middle}.hierarchy-table th{color:var(--color-sage-muted);font-family:var(--font-mono);font-size:var(--text-label);text-transform:uppercase;font-weight:900}.hierarchy-table tbody tr{border-top:1px solid var(--color-line);transition:background-color var(--transition-base)}.hierarchy-table tbody tr:hover{background:var(--color-paper-warm)}.grades-card-grid{gap:var(--space-3);border-top:1px solid var(--color-line);padding:var(--space-5);background:var(--color-paper-warm);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.grade-card{align-content:start;gap:var(--space-3);border:1px solid var(--color-line-strong);min-width:0;min-height:268px;padding:var(--space-5);background:var(--color-paper);text-align:left;transition:border-color var(--transition-base), box-shadow var(--transition-base), transform var(--transition-base);border-radius:22px;grid-template-rows:auto auto auto 1fr auto;display:grid;position:relative;overflow:hidden;box-shadow:0 1px 2px #18211d08}.grade-card:before{content:"";background:color-mix(in srgb, var(--color-marigold) 17%, var(--color-paper));pointer-events:none;border-radius:50%;width:104px;height:104px;position:absolute;top:-34px;right:-30px}.grade-card:nth-child(5n+2):before{background:color-mix(in srgb, var(--color-danger) 13%, var(--color-paper))}.grade-card:nth-child(5n+3):before{background:color-mix(in srgb, var(--color-warning) 15%, var(--color-paper))}.grade-card:nth-child(5n+4):before{background:color-mix(in srgb, var(--color-forest) 14%, var(--color-paper))}.grade-card:nth-child(5n):before{background:color-mix(in srgb, #559bb7 17%, var(--color-paper))}.grade-card>header{z-index:1;min-width:0;position:relative}.grade-card>header>span{color:var(--color-sage-muted);font-family:var(--font-mono);letter-spacing:.8px;text-transform:uppercase;margin-bottom:2px;font-size:10px;font-weight:900;display:block}.grade-card>header>strong{color:var(--color-evergreen-ink);font-family:var(--font-display);text-overflow:ellipsis;white-space:nowrap;font-size:38px;font-weight:400;line-height:1;display:block;overflow:hidden}.grade-card>header h3{color:var(--color-evergreen-ink);font-family:var(--font-sans);font-size:var(--text-body-md);text-overflow:ellipsis;white-space:nowrap;margin:5px 0 0;font-weight:700;overflow:hidden}.grade-card__school,.grade-card__metrics span{min-width:0;color:var(--color-sage-muted);font-size:var(--text-body-sm);align-items:center;gap:6px;display:flex}.grade-card__school span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.grade-card__school svg,.grade-card__metrics svg{flex:none;width:14px;height:14px}.grade-card__metrics{gap:var(--space-2);border-block:1px dashed var(--color-line);padding-block:var(--space-3);display:grid}.grade-card__description{color:var(--color-sage-muted);font-size:var(--text-body-sm);-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.grade-card>footer{justify-content:space-between;align-items:center;gap:var(--space-2);min-width:0;padding-top:var(--space-1);display:flex}.grade-card .status-badge{gap:7px;min-height:30px;padding:6px 14px;font-size:12px}.grade-card .status-badge:before{content:"";opacity:.72;background:currentColor;border-radius:50%;flex:none;width:8px;height:8px}.grade-card__deleting{min-height:30px;color:var(--color-danger);align-items:center;gap:7px;font-size:12px;font-weight:800;display:inline-flex}.grade-card__deleting svg{width:15px;height:15px}.grade-card .record-actions{gap:2px}.grade-card .record-actions button{border-radius:9px;width:30px;height:30px}.grade-card .record-actions svg{width:15px;height:15px}@media (hover:hover){.grade-card:hover{border-color:var(--color-sage-300);transform:translateY(-3px);box-shadow:0 15px 32px #18211d14}}.schools-card-grid{gap:var(--space-4);border-top:1px solid var(--color-line);padding:var(--space-5);background:var(--color-paper-warm);grid-template-columns:repeat(auto-fill,minmax(min(100%,310px),1fr));display:grid}.school-card{gap:var(--space-5);border:1px solid var(--color-line-strong);min-width:0;padding:var(--space-5);background:var(--color-paper);text-align:left;transition:border-color var(--transition-base), box-shadow var(--transition-base), transform var(--transition-base);border-radius:20px;grid-template-rows:auto 1fr auto;display:grid;overflow:hidden;box-shadow:0 1px 2px #18211d08}.school-card__header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);min-width:0;display:flex}.school-card__identity{align-items:center;gap:var(--space-3);min-width:0;display:flex}.school-card__identity>div{min-width:0}.school-card__avatar{color:#fff;background:var(--color-forest);width:48px;height:48px;font-size:var(--text-body-md);letter-spacing:.3px;border-radius:16px;flex:none;place-items:center;font-weight:900;display:grid;box-shadow:0 7px 18px #1e4d3b29}img.school-card__avatar{object-fit:contain;background:var(--color-paper);padding:4px;display:block}.school-card:nth-child(4n+2) .school-card__avatar{background:var(--color-marigold);box-shadow:0 7px 18px #de95262e}.school-card:nth-child(4n+3) .school-card__avatar{background:#3c8da8;box-shadow:0 7px 18px #3c8da82e}.school-card:nth-child(4n) .school-card__avatar{background:#8d6550;box-shadow:0 7px 18px #8d65502e}.school-card__identity h3{margin:0 0 var(--space-1);color:var(--color-evergreen-ink);font-family:var(--font-display);font-size:18px;line-height:var(--leading-heading);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.school-card__identity p{min-width:0;color:var(--color-sage-muted);font-size:var(--text-body-sm);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:5px;display:flex;overflow:hidden}.school-card__identity p svg{flex:none;width:14px;height:14px}.school-card__header .status-badge{flex:none;gap:6px;padding:5px 10px;font-size:11px}.school-card__header .status-badge:before{content:"";opacity:.72;background:currentColor;border-radius:50%;flex:none;width:6px;height:6px}.school-card__details{gap:var(--space-3);border-block:1px dashed var(--color-line-strong);min-width:0;padding-block:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.school-card__details>div{align-content:start;gap:5px;min-width:0;display:grid}.school-card__details span{min-width:0;color:var(--color-sage-muted);font-family:var(--font-mono);letter-spacing:.45px;text-transform:uppercase;align-items:center;gap:5px;font-size:10px;font-weight:800;display:flex}.school-card__details span svg{flex:none;width:13px;height:13px}.school-card__details strong{min-width:0;color:var(--color-evergreen-ink);font-family:var(--font-mono);font-size:var(--text-body-md);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.school-card__footer{justify-content:flex-end;align-items:center;gap:var(--space-3);min-width:0;display:flex}.school-card .record-actions{gap:var(--space-2)}.school-card .record-actions button{border:1px solid var(--color-line);background:var(--color-paper-warm);border-radius:10px;width:36px;height:36px}@media (hover:hover){.school-card:hover{border-color:var(--color-sage-300);transform:translateY(-3px);box-shadow:0 16px 34px #18211d17}}.users-card-grid{gap:var(--space-3);border-top:1px solid var(--color-line);padding:var(--space-5);background:var(--color-paper-warm);grid-template-columns:repeat(auto-fill,minmax(min(100%,360px),1fr));display:grid}.user-card{align-items:center;gap:var(--space-3);border:1px solid var(--color-line-strong);min-width:0;padding:var(--space-4);background:var(--color-paper);text-align:left;transition:border-color var(--transition-base), box-shadow var(--transition-base), transform var(--transition-base);border-radius:18px;grid-template-columns:auto minmax(0,1fr) auto;display:grid;box-shadow:0 1px 2px #18211d08}.user-card__avatar{color:#fff;background:var(--color-forest);width:46px;height:46px;font-size:var(--text-body-md);letter-spacing:.3px;border-radius:15px;flex:none;place-items:center;font-weight:900;display:grid}.user-card:nth-child(5n+2) .user-card__avatar{background:var(--color-marigold)}.user-card:nth-child(5n+3) .user-card__avatar{background:#3c8da8}.user-card:nth-child(5n+4) .user-card__avatar{background:#7c76b8}.user-card:nth-child(5n) .user-card__avatar{background:#d77f61}.user-card__content{gap:4px;min-width:0;display:grid}.user-card__title{align-items:center;gap:var(--space-2);min-width:0;display:flex}.user-card__title h3{min-width:0;color:var(--color-evergreen-ink);font-family:var(--font-sans);font-size:var(--text-body-lg);line-height:var(--leading-heading);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.user-card__role{border:1px solid var(--color-line);border-radius:var(--radius-pill);color:var(--color-sage-muted);background:var(--color-sage-50);font-family:var(--font-mono);letter-spacing:.5px;text-transform:uppercase;flex:none;padding:3px 7px;font-size:9px;font-weight:900;line-height:1}.user-card__email,.user-card__meta{min-width:0;color:var(--color-sage-muted);white-space:nowrap;align-items:center;gap:5px;font-size:12px;display:flex;overflow:hidden}.user-card__email span,.user-card__meta span{text-overflow:ellipsis;min-width:0;overflow:hidden}.user-card__email svg,.user-card__meta svg{flex:none;width:13px;height:13px}.user-card__controls{justify-items:end;gap:var(--space-2);display:grid}.user-card__controls .status-badge{gap:6px;padding:5px 9px;font-size:10px}.user-card__controls .status-badge:before{content:"";opacity:.72;background:currentColor;border-radius:50%;flex:none;width:6px;height:6px}.user-card .record-actions{gap:2px}.user-card .record-actions button{border-radius:9px;width:30px;height:30px}.user-card .record-actions svg{width:15px;height:15px}@media (hover:hover){.user-card:hover{border-color:var(--color-sage-300);transform:translateY(-2px);box-shadow:0 12px 26px #18211d14}}.weeks-card-grid{gap:var(--space-3);border-top:1px solid var(--color-line);padding:var(--space-5);background:var(--color-paper-warm);grid-template-columns:repeat(auto-fill,minmax(min(100%,360px),1fr));display:grid}.week-card{gap:var(--space-3);border:1px solid var(--color-line-strong);min-width:0;padding:var(--space-4);background:var(--color-paper);text-align:left;transition:border-color var(--transition-base), box-shadow var(--transition-base), transform var(--transition-base);border-radius:18px;flex-direction:column;display:flex;box-shadow:0 1px 2px #18211d08}.week-card__header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);min-width:0;display:flex}.week-card__title-row{align-items:center;gap:var(--space-2);flex-wrap:wrap;min-width:0;display:flex}.week-card__name{min-width:0;color:var(--color-evergreen-ink);font-family:var(--font-sans);font-size:var(--text-body-md);text-overflow:ellipsis;white-space:nowrap;margin:0;font-weight:650;line-height:1.3;overflow:hidden}.week-card__grade-badge{border:1px solid var(--color-line);border-radius:var(--radius-pill);color:var(--color-sage-muted);background:var(--color-sage-50);font-family:var(--font-mono);letter-spacing:.3px;white-space:nowrap;flex:none;padding:3px 8px;font-size:10px;font-weight:700;line-height:1}.week-card__status-wrap{flex:none}.week-card__status-wrap .status-badge{white-space:nowrap;gap:6px;padding:4px 8px;font-size:10px}.week-card__status-wrap .status-badge:before{content:"";opacity:.72;background:currentColor;border-radius:50%;flex:none;width:6px;height:6px}.week-card__body{justify-content:space-between;align-items:center;gap:var(--space-3);min-width:0;padding-top:var(--space-2);border-top:1px dashed var(--color-line);display:flex}.week-card__school{min-width:0;color:var(--color-sage-muted);font-family:var(--font-sans);align-items:center;gap:6px;margin:0;font-size:12px;line-height:1.4;display:flex}.week-card__icon{width:14px;height:14px;color:var(--color-sage-muted);flex:none}.week-card__school-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:500;overflow:hidden}.week-card__actions-wrap{flex:none}.week-card .record-actions{gap:4px}.week-card .record-actions button{border-radius:8px;width:28px;height:28px}.week-card .record-actions svg{width:14px;height:14px}@media (hover:hover){.week-card:hover{border-color:var(--color-sage-300);transform:translateY(-2px);box-shadow:0 12px 26px #18211d14}}.weeks-school-select-container{flex:260px;min-width:200px;max-width:340px}.hierarchy-filters .weeks-school-select{flex:100%;width:100%}.weeks-active-school-bar{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);border:1px solid var(--color-line-strong);border-radius:var(--radius-lg);background:var(--color-paper-warm);padding:10px 16px;display:flex}.weeks-active-school-info{font-size:var(--text-body-sm);color:var(--color-evergreen-ink);align-items:center;gap:8px;display:flex}.weeks-active-school-info svg{width:16px;height:16px;color:var(--color-forest);flex-shrink:0}.weeks-clear-school-btn{border:1px solid var(--color-line);border-radius:var(--radius-pill);color:var(--color-sage-muted);background:var(--color-paper);transition:all var(--transition-base);cursor:pointer;align-items:center;gap:4px;padding:4px 10px;font-size:11px;font-weight:600;display:inline-flex}.weeks-clear-school-btn:hover{color:var(--color-evergreen-ink);background:var(--color-sage-50);border-color:var(--color-line-strong)}.weeks-clear-school-btn svg{width:12px;height:12px}.weeks-groups-container{flex-direction:column;gap:0;padding:0;display:flex}.weeks-school-group{flex-direction:column;gap:0;display:flex}.weeks-school-group__header{justify-content:space-between;align-items:center;gap:var(--space-3);padding:12px var(--space-5) 10px;border-bottom:1px solid var(--color-line);background:var(--color-paper-warm);display:flex}.weeks-school-group__title{align-items:center;gap:8px;display:flex}.weeks-school-group__icon{width:16px;height:16px;color:var(--color-forest);flex-shrink:0}.weeks-school-group__title h2{color:var(--color-evergreen-ink);margin:0;font-size:14px;font-weight:700;line-height:1.2}.weeks-school-count{color:var(--color-sage-muted);font-size:12px;font-weight:600;line-height:1}.weeks-school-group .weeks-card-grid{padding:var(--space-4) var(--space-5) var(--space-5);border-top:0}.week-card__badge-icon{vertical-align:-1px;width:11px;height:11px;margin-right:4px;display:inline-block}.week-card__meta{flex-direction:column;gap:2px;min-width:0;display:flex}.week-card__assignment-info{color:var(--color-sage-muted);align-items:center;gap:6px;font-size:11px;display:flex}.weeks-tree-root{gap:var(--space-4);flex-direction:column;width:100%;display:flex}.weeks-tree-toolbar{justify-content:space-between;align-items:center;gap:var(--space-3);background:var(--color-paper-warm);border:1px solid var(--color-line);border-radius:12px;flex-wrap:wrap;padding:10px 16px;display:flex}.weeks-tree-toolbar__summary{color:var(--color-evergreen-ink);align-items:center;gap:8px;font-size:13px;display:flex}.weeks-tree-toolbar__icon{width:16px;height:16px;color:var(--color-forest);flex-shrink:0}.weeks-tree-toolbar__dot{color:var(--color-line-strong);margin:0 4px}.weeks-tree-toggle-all-btn{border-radius:var(--radius-pill);border:1px solid var(--color-line-strong);background:var(--color-paper);color:var(--color-evergreen-ink);cursor:pointer;transition:all var(--transition-base);align-items:center;gap:6px;padding:6px 13px;font-size:12px;font-weight:650;display:inline-flex}.weeks-tree-toggle-all-btn svg{width:14px;height:14px;color:var(--color-forest)}.weeks-tree-toggle-all-btn:hover{background:var(--color-sage-100);border-color:var(--color-sage-300)}.weeks-tree-container{gap:var(--space-4);flex-direction:column;display:flex}.weeks-tree-school{border:1px solid var(--color-line-strong);background:var(--color-paper);transition:box-shadow var(--transition-base);border-radius:16px;overflow:hidden;box-shadow:0 1px 3px #18211d0a}.weeks-tree-school:hover{box-shadow:0 4px 14px #18211d0f}.weeks-tree-school__header{justify-content:space-between;align-items:center;gap:var(--space-3);background:linear-gradient(180deg, var(--color-paper) 0%, var(--color-paper-warm) 100%);border-bottom:1px solid var(--color-line);flex-wrap:wrap;padding:13px 18px;display:flex}.weeks-tree-school--collapsed .weeks-tree-school__header{border-bottom:0}.weeks-tree-school__toggle{cursor:pointer;text-align:left;color:inherit;background:0 0;border:none;align-items:center;gap:10px;padding:0;display:flex}.weeks-tree-school__identity{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.weeks-tree-school__icon{width:18px;height:18px;color:var(--color-forest);flex-shrink:0}.weeks-tree-school__title{color:var(--color-evergreen-ink);margin:0;font-size:15px;font-weight:750;line-height:1.2}.weeks-tree-school__code{font-family:var(--font-mono);color:var(--color-sage-muted);background:var(--color-sage-100);border-radius:var(--radius-pill);border:1px solid var(--color-line);padding:2px 7px;font-size:11px;font-weight:700}.weeks-tree-school__meta{align-items:center;gap:6px;display:flex}.weeks-tree-chip{color:var(--color-sage-muted);background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-pill);padding:3px 9px;font-size:11px;font-weight:600}.weeks-tree-chevron{width:18px;height:18px;color:var(--color-sage-muted);transition:transform var(--transition-base);flex-shrink:0}.weeks-tree-chevron--collapsed{transform:rotate(-90deg)}.weeks-tree-school__content{background:var(--color-paper);padding:16px 18px 20px}.weeks-tree-branch{gap:var(--space-3);border-left:2px solid var(--color-sage-200);flex-direction:column;margin-left:6px;padding-left:16px;display:flex;position:relative}.weeks-tree-grade{border:1px solid var(--color-line);background:var(--color-paper-warm);transition:border-color var(--transition-base), box-shadow var(--transition-base);border-radius:14px;overflow:hidden}.weeks-tree-grade:hover{border-color:var(--color-sage-300)}.weeks-tree-grade--collapsed{background:var(--color-paper)}.weeks-tree-grade__header{background:var(--color-sage-50);border-bottom:1px solid var(--color-line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;display:flex}.weeks-tree-grade--collapsed .weeks-tree-grade__header{border-bottom:0}.weeks-tree-grade__toggle{cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:8px;padding:0;display:flex}.weeks-tree-grade__identity{align-items:center;gap:8px;display:flex}.weeks-tree-grade__icon{width:16px;height:16px;color:var(--color-forest);flex-shrink:0}.weeks-tree-grade__name{color:var(--color-evergreen-ink);margin:0;font-size:13.5px;font-weight:700}.weeks-tree-grade__meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.weeks-tree-count-pill{color:var(--color-evergreen-ink);background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-pill);padding:3px 9px;font-size:11px;font-weight:700}.weeks-tree-status-pill{border-radius:var(--radius-pill);letter-spacing:.2px;padding:2px 7px;font-size:10px;font-weight:700}.weeks-tree-status-pill--active{color:#15803d;background:#22c55e1f;border:1px solid #22c55e40}.weeks-tree-status-pill--published{color:#1d4ed8;background:#3b82f61f;border:1px solid #3b82f640}.weeks-tree-add-btn{border-radius:var(--radius-pill);border:1px solid var(--color-line-strong);background:var(--color-paper);color:var(--color-evergreen-ink);cursor:pointer;transition:all var(--transition-base);align-items:center;gap:4px;padding:4px 10px;font-size:11.5px;font-weight:650;display:inline-flex}.weeks-tree-add-btn:hover{background:var(--color-evergreen-ink);color:#fff;border-color:var(--color-evergreen-ink)}.weeks-tree-add-icon{width:12px;height:12px}.weeks-tree-grade__content{background:var(--color-paper-warm);padding:12px}.weeks-tree-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:10px;display:grid}.weeks-tree-card{border:1px solid var(--color-line);background:var(--color-paper);text-align:left;transition:all var(--transition-base);border-radius:12px;flex-direction:column;gap:8px;padding:12px 14px;display:flex;box-shadow:0 1px 2px #18211d08}.weeks-tree-card:hover{border-color:var(--color-sage-300);transform:translateY(-1px);box-shadow:0 6px 16px #18211d14}.weeks-tree-card__top{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.weeks-tree-card__title-row{align-items:center;gap:6px;min-width:0;display:flex}.weeks-tree-card__num{font-family:var(--font-mono);color:var(--color-sage-muted);background:var(--color-sage-50);border:1px solid var(--color-line-subtle);border-radius:6px;flex-shrink:0;padding:1px 5px;font-size:11px;font-weight:700}.weeks-tree-card__title{color:var(--color-evergreen-ink);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:13.5px;font-weight:700;overflow:hidden}.weeks-tree-card__status{flex-shrink:0}.weeks-tree-card__desc{color:var(--color-sage-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:12px;line-height:1.35;display:-webkit-box;overflow:hidden}.weeks-tree-card__assignment{flex-wrap:wrap;align-items:center;gap:6px;font-size:11px;display:flex}.weeks-tree-card__assignment-badge{background:var(--color-sage-100);color:var(--color-sage-muted);border:1px solid var(--color-line);border-radius:4px;padding:2px 6px;font-size:10px;font-weight:600}.weeks-tree-card__assignment-badge--published{color:#1d4ed8;background:#3b82f61a;border-color:#3b82f633}.weeks-tree-card__video-count{color:var(--color-sage-muted);font-size:11px;font-weight:500}.weeks-tree-card__footer{border-top:1px solid var(--color-line-subtle);justify-content:space-between;align-items:center;margin-top:auto;padding-top:6px;display:flex}.weeks-tree-card__id{font-family:var(--font-mono);color:var(--color-sage-muted);font-size:10px;font-weight:600}.weeks-tree-card__actions{align-items:center;gap:2px;display:flex}.weeks-tree-card__actions .record-actions{gap:2px}.weeks-tree-card__actions .record-actions button{border-radius:8px;width:28px;height:28px}.weeks-tree-card__actions .record-actions svg{width:14px;height:14px}@media (width<=640px){.weeks-tree-branch{margin-left:2px;padding-left:8px}.weeks-tree-grid{grid-template-columns:1fr}.weeks-tree-toolbar{flex-direction:column;align-items:flex-start}}.hierarchy-name{gap:2px;min-width:180px;display:grid}.hierarchy-name strong{font-size:var(--text-body-md)}.hierarchy-name small,.hierarchy-muted{color:var(--color-sage-muted)}.hierarchy-code{font-family:var(--font-mono);font-weight:800}.record-actions{justify-content:flex-end;align-items:center;gap:var(--space-1);display:flex}.record-actions button,.entity-modal>header>button,.curriculum-icon-button{border-radius:var(--radius-md);width:34px;height:34px;color:var(--color-sage-muted);transition:color var(--transition-base), background-color var(--transition-base), transform var(--transition-fast);background:0 0;border:0;flex:none;place-items:center;line-height:0;display:grid}.record-actions button:hover,.entity-modal>header>button:hover,.curriculum-icon-button:hover{color:var(--color-forest);background:var(--color-forest-soft)}.record-actions button.is-activate{color:var(--color-success);background:var(--color-success-bg)}.record-actions button.is-activate:hover{color:var(--color-on-dark);background:var(--color-success)}.record-actions button.is-deactivate{color:var(--color-warning);background:var(--color-warning-bg)}.record-actions button.is-deactivate:hover{color:var(--color-on-dark);background:var(--color-warning)}.record-actions button:active,.curriculum-icon-button:active{transform:scale(.94)}.record-actions button.is-danger:hover{color:var(--color-danger);background:var(--color-danger-bg)}.record-actions button:disabled{cursor:wait;opacity:.45;pointer-events:none}.record-actions svg,.entity-modal>header>button svg,.curriculum-icon-button svg{width:17px;height:17px}.hierarchy-panel .state-panel{margin:var(--space-5)}.entity-modal-backdrop{z-index:2000;padding:var(--space-4);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:entity-backdrop-enter var(--transition-fast);background:#18211d7a;place-items:center;display:grid;position:fixed;inset:0;overflow-y:auto}.app-shell .entity-modal{border:1px solid var(--color-line-strong);background:var(--color-paper);width:min(680px,100%);max-height:calc(100dvh - 32px);box-shadow:var(--shadow-panel);text-align:left;animation:entity-modal-enter var(--transition-slow);border-radius:16px;grid-template-rows:auto minmax(0,1fr);gap:0;display:grid;overflow:hidden}.app-shell .entity-modal--grade-form{width:min(1120px,100%)}.entity-modal>header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);border-bottom:1px solid var(--color-line);padding:var(--space-5) var(--space-6);display:flex}.entity-modal>header h2{margin:var(--space-1) 0;font-family:var(--font-display);font-size:var(--text-heading-lg)}.entity-modal>header p{color:var(--color-sage-muted)}.entity-modal>form{grid-template-rows:minmax(0,1fr) auto;display:grid;overflow:hidden}.entity-form{align-content:start;gap:var(--space-4);padding:var(--space-5) var(--space-6);grid-template-columns:repeat(2,minmax(0,1fr));display:grid;overflow-y:auto}.entity-field{align-content:start;gap:var(--space-2);display:grid}.entity-field--wide,.entity-detail-field--wide{grid-column:1/-1}.entity-field>span,.entity-detail-field>span{color:var(--color-sage-muted);font-size:var(--text-body-sm);font-weight:700}.entity-field b{color:var(--color-danger)}.entity-field input,.entity-field select,.entity-field textarea{width:100%;min-height:var(--size-control-lg);border:1px solid var(--color-line-strong);border-radius:var(--radius-lg);padding:0 var(--space-3);color:var(--color-evergreen-ink);background:var(--color-paper-warm)}.entity-field textarea{min-height:96px;padding-block:var(--space-3);resize:vertical}.entity-field select.week-edit-locked-field:disabled,.entity-field .week-edit-locked-field.searchable-select--disabled .searchable-select__control{border-color:var(--color-line);color:var(--color-sage-muted);background:color-mix(in srgb, var(--color-paper) 84%, var(--color-sage-50));box-shadow:none;opacity:1}.entity-field select.week-edit-locked-field:disabled,.entity-field .week-edit-locked-field.searchable-select--disabled,.entity-field .week-edit-locked-field.searchable-select--disabled .searchable-select__control,.entity-field .week-edit-locked-field.searchable-select--disabled .searchable-select__toggle{cursor:not-allowed}.entity-field .week-edit-locked-field.searchable-select--disabled{opacity:1}.entity-field .week-edit-locked-field.searchable-select--disabled input{color:var(--color-sage-muted);-webkit-text-fill-color:var(--color-sage-muted)}.entity-field .week-edit-locked-field.searchable-select--disabled .searchable-select__search-icon,.entity-field .week-edit-locked-field.searchable-select--disabled .searchable-select__toggle{color:var(--color-sage-muted)}.entity-field>input[aria-invalid=true],.entity-field>select[aria-invalid=true],.entity-field>textarea[aria-invalid=true],.entity-password-control input[aria-invalid=true]{border-color:var(--color-danger)}.entity-password-control{position:relative}.entity-password-control input{padding-right:46px}.entity-password-control button{border-radius:var(--radius-md);width:34px;height:34px;color:var(--color-sage-muted);background:0 0;border:0;place-items:center;padding:0;display:grid;position:absolute;top:50%;right:7px;transform:translateY(-50%)}.entity-password-control button:hover,.entity-password-control button:focus-visible{color:var(--color-forest);background:var(--color-forest-soft)}.entity-password-control button svg{width:17px;height:17px;display:block}.school-logo-upload{align-items:center;gap:var(--space-3);border:1px dashed var(--color-line-strong);border-radius:var(--radius-lg);min-width:0;min-height:76px;padding:var(--space-3);color:var(--color-sage-muted);background:var(--color-paper-warm);cursor:pointer;transition:border-color var(--transition-base), background-color var(--transition-base);grid-template-columns:auto minmax(0,1fr);display:grid;position:relative;overflow:hidden}.school-logo-upload:hover,.school-logo-upload:focus-within{border-color:var(--color-forest);background:var(--color-forest-soft)}.school-logo-upload>svg{border-radius:var(--radius-lg);width:40px;height:40px;color:var(--color-forest);background:var(--color-forest-soft);padding:9px}.school-logo-upload strong,.school-logo-upload small{display:block}.school-logo-upload strong{color:var(--color-evergreen-ink);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.school-logo-upload small{color:var(--color-sage-muted);margin-top:3px}.school-logo-upload input{opacity:0;cursor:pointer;width:100%;height:100%;min-height:0;padding:0;position:absolute;inset:0}.school-form-field-error{color:var(--color-danger);font-size:var(--text-body-sm);margin-top:6px;font-weight:700;display:block}.school-form-field-error .link-button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.school-form-field-error .link-button:hover{text-decoration:none}.school-logo-actions{justify-content:space-between;align-items:center;gap:var(--space-3);margin-top:var(--space-2);display:flex}.school-logo-preview{border:1px solid var(--color-line);border-radius:var(--radius-md);object-fit:contain;background:var(--color-paper);width:72px;height:72px;display:block}.school-logo-actions .button{min-height:36px;color:var(--color-danger)}.schools-search-hint{border-bottom:1px solid var(--color-line);padding:var(--space-2) var(--space-5);color:var(--color-sage-muted);background:var(--color-paper-warm);font-size:var(--text-body-sm);margin:0}.schools-directory-state{border-top:1px solid var(--color-line);background:var(--color-paper-warm);place-items:center;min-height:220px;display:grid}.schools-pagination{align-items:center;gap:var(--space-3);border-top:1px solid var(--color-line);padding:var(--space-3) var(--space-5);background:var(--color-paper);grid-template-columns:auto 1fr auto auto;display:grid}.schools-pagination>span{color:var(--color-sage-muted);font-size:var(--text-body-sm);justify-self:center}.schools-pagination>label{align-items:center;gap:var(--space-2);color:var(--color-sage-muted);font-size:var(--text-body-sm);font-weight:700;display:flex}.schools-pagination select{border:1px solid var(--color-line);border-radius:var(--radius-md);min-height:38px;padding:0 30px 0 var(--space-2);color:var(--color-evergreen-ink);background:var(--color-paper-warm);font-weight:700}@media (width<=720px){.schools-pagination{justify-content:space-between;align-items:center;gap:var(--space-2);padding:10px var(--space-3);box-sizing:border-box;flex-wrap:nowrap;width:100%;display:flex}.schools-pagination>span{white-space:nowrap;text-align:center;text-overflow:ellipsis;flex:0 auto;grid-area:auto;min-width:0;font-size:12px;overflow:hidden}.schools-pagination>label{white-space:nowrap;flex:none;grid-column:auto;align-items:center;gap:4px;font-size:11px;display:flex}.schools-pagination select{border-radius:var(--radius-sm);height:32px;min-height:32px;padding:0 20px 0 6px;font-size:11px}.schools-pagination .button{flex:none;gap:4px;min-height:32px;padding:4px 10px;font-size:12px}.schools-pagination .button svg{width:14px;height:14px}.school-logo-actions{flex-direction:column;align-items:flex-start}}@media (width<=480px){.schools-pagination{padding:var(--space-2) 6px;gap:4px}.schools-pagination>span{font-size:10px}.schools-pagination>label{gap:2px;font-size:10px}.schools-pagination>label>span{display:none}.schools-pagination select{height:28px;min-height:28px;padding:0 16px 0 4px;font-size:10px}.schools-pagination .button{min-height:28px;padding:4px 6px;font-size:11px}}.grade-divisions-field{gap:var(--space-3);border:1px solid var(--color-line);padding:var(--space-4);background:var(--color-paper-warm);border-radius:14px;display:grid}.grade-divisions-field>header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.grade-divisions-field h3{font-family:var(--font-display);font-size:var(--text-heading-md);margin:0}.grade-divisions-field header p{color:var(--color-sage-muted);font-size:var(--text-body-sm);margin-top:3px}.grade-divisions-field header>span{border-radius:var(--radius-pill);color:var(--color-forest);background:var(--color-forest-soft);font-size:var(--text-body-sm);flex:none;padding:4px 9px;font-weight:800}.grade-division-list{gap:var(--space-3);display:grid}.grade-division-row{align-items:end;gap:var(--space-2);border:1px solid var(--color-line);min-width:0;padding:var(--space-3);background:var(--color-paper);animation:entity-modal-enter var(--transition-base);border-radius:12px;grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.grade-division-row--create>.grade-division-actions,.grade-division-row--editable>.grade-division-actions{grid-column:1/-1;justify-content:flex-end;align-self:end}.grade-division-row--view{grid-template-columns:minmax(0,1fr) auto;align-items:center}.grade-division-summary{gap:4px;min-width:0;display:grid}.grade-division-summary strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.grade-division-summary span,.grade-division-students span{color:var(--color-sage-muted);font-size:11px}.grade-division-students{justify-items:end;gap:5px;display:grid}.grade-division-row-error{grid-column:1/-1}.grade-division-header-actions{align-items:center;gap:var(--space-2);display:flex}.grade-division-header-actions>span{border-radius:var(--radius-pill);color:var(--color-forest);background:var(--color-forest-soft);font-size:var(--text-body-sm);flex:none;padding:4px 9px;font-weight:800}.grade-division-header-actions>button{border:1px solid var(--color-line-strong);min-height:32px;color:var(--color-forest);background:var(--color-paper);border-radius:9px;align-items:center;gap:5px;padding:0 10px;font-weight:800;line-height:1;display:inline-flex}.grade-division-header-actions>button svg{flex:0 0 16px;width:16px;height:16px}.grade-division-header-actions>button:disabled{cursor:wait;opacity:.5}.grade-division-row .entity-field{gap:6px}.grade-division-row .entity-field>span{font-size:11px}.grade-division-row .entity-field input,.grade-division-row .entity-field select{min-height:42px}.grade-division-actions{align-items:center;gap:var(--space-1);display:flex}.grade-division-actions button{border:1px solid var(--color-line-strong);width:42px;height:42px;color:var(--color-forest);background:var(--color-forest-soft);transition:color var(--transition-base), background-color var(--transition-base), transform var(--transition-fast);border-radius:10px;place-items:center;display:grid}.grade-division-actions button:hover{color:var(--color-on-primary);background:var(--color-forest)}.grade-division-actions button.is-danger{color:var(--color-danger);background:var(--color-danger-bg)}.grade-division-actions button.is-danger:hover{color:var(--color-on-dark);background:var(--color-danger)}.grade-division-actions button:active{transform:scale(.94)}.grade-division-actions svg{width:18px;height:18px}.grade-division-actions .is-spinning{animation:.8s linear infinite grade-division-spin}@keyframes grade-division-spin{to{transform:rotate(360deg)}}.entity-field input:focus,.entity-field select:focus,.entity-field textarea:focus{border-color:var(--color-forest);box-shadow:var(--shadow-focus);outline:0}.entity-detail-field{align-content:start;gap:var(--space-2);border:1px solid var(--color-line);border-radius:var(--radius-lg);min-width:0;padding:var(--space-3);background:var(--color-paper-warm);display:grid}.entity-detail-field strong{overflow-wrap:anywhere}.entity-modal footer{justify-content:flex-end;gap:var(--space-3);border-top:1px solid var(--color-line);padding:var(--space-4) var(--space-6);display:flex}@keyframes entity-backdrop-enter{0%{opacity:0}}@keyframes entity-modal-enter{0%{opacity:0;transform:translateY(8px)scale(.99)}}@media (width<=1100px){.grades-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=900px){.grade-division-row{grid-template-columns:repeat(2,minmax(0,1fr))}.grade-division-row--view{grid-template-columns:minmax(0,1fr) auto}.hierarchy-summary,.grades-card-grid,.hierarchy-summary.schools-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.hierarchy-summary.schools-summary>div:last-child{grid-column:1/-1}.hierarchy-summary>div:nth-child(2){border-right:0}.hierarchy-summary>div:nth-child(-n+2){border-bottom:1px solid var(--color-line)}.hierarchy-filters{flex-wrap:wrap}.hierarchy-search{flex-basis:100%}.hierarchy-filters select{flex:180px}}@media (width<=620px){.grades-card-grid{gap:var(--space-3);padding:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr))}.grade-card{min-height:250px;padding:var(--space-4);border-radius:18px}.schools-card-grid,.users-card-grid,.weeks-card-grid{gap:var(--space-3);padding:var(--space-3);grid-template-columns:1fr}.weeks-school-group__header{padding-inline:var(--space-3)}.school-card{gap:var(--space-4);padding:var(--space-4);border-radius:16px}.school-card__avatar{border-radius:14px;width:44px;height:44px}.school-card__identity h3{font-size:17px}.school-card__details{gap:var(--space-2);padding-block:var(--space-3)}.school-card__details span{letter-spacing:.2px}.user-card{padding:var(--space-3);border-radius:16px;grid-template-columns:auto minmax(0,1fr)}.user-card__controls{border-top:1px dashed var(--color-line);width:100%;padding-top:var(--space-2);grid-column:1/-1;justify-content:space-between;align-items:center;display:flex}.week-card{padding:var(--space-3);border-radius:16px;grid-template-columns:1fr}.week-card__controls{border-top:1px dashed var(--color-line);width:100%;padding-top:var(--space-2);grid-column:1/-1;justify-content:space-between;align-items:center;display:flex}.grade-divisions-field{padding:var(--space-3)}.grade-division-header-actions{justify-content:space-between;width:100%}.hierarchy-hero .button{width:100%}.hierarchy-panel>header{align-items:flex-start}.hierarchy-filters select{flex-basis:100%}.hierarchy-filter-count{justify-content:center;width:100%}.entity-modal-backdrop{align-items:end;padding:0}.app-shell .entity-modal{border-width:1px 0 0;border-radius:16px 16px 0 0;width:100%;max-height:100dvh}.entity-form{padding:var(--space-4);grid-template-columns:1fr}.entity-field--wide,.entity-detail-field--wide{grid-column:auto}.entity-modal>header,.entity-modal footer{padding-inline:var(--space-4)}}@media (width<=430px){.grade-division-row{grid-template-columns:1fr}.grade-division-row--view{grid-template-columns:minmax(0,1fr) auto}.grade-division-actions{grid-column:1;justify-content:flex-end}.grades-card-grid{grid-template-columns:1fr}.grade-card{min-height:0}}.timetable-color-picker{justify-content:space-between;align-items:center;gap:var(--space-4);min-height:var(--size-control-lg);background:var(--color-paper-warm);border:1px solid var(--color-line-strong);border-radius:var(--radius-lg);box-sizing:border-box;transition:border-color var(--transition-fast), box-shadow var(--transition-fast), background-color var(--transition-fast);flex-wrap:wrap;padding:6px 12px;display:flex}.timetable-color-picker:hover{border-color:var(--color-forest)}.timetable-color-picker:focus-within{border-color:var(--color-forest);background:var(--color-paper);box-shadow:0 0 0 3px var(--color-forest-soft)}.timetable-color-picker.is-invalid{border-color:var(--color-danger)}.timetable-color-picker__control{background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-md);align-items:center;gap:8px;padding:3px 8px 3px 4px;display:inline-flex;box-shadow:0 1px 2px #0000000a}.timetable-color-picker__swatch-wrapper{justify-content:center;align-items:center;display:flex;position:relative}.timetable-color-picker__swatch-btn{border-radius:var(--radius-sm);cursor:pointer;border:1px solid #00000029;width:28px;height:28px;padding:0;transition:transform .15s,box-shadow .15s;position:relative;overflow:hidden;box-shadow:0 1px 3px #0000001f}.timetable-color-picker__swatch-btn:hover{transform:scale(1.06);box-shadow:0 2px 5px #0003}.timetable-color-picker__swatch-btn:focus-visible{outline:2px solid var(--color-forest);outline-offset:2px}.timetable-color-picker__swatch-ring{border-radius:inherit;pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #fff6}.timetable-color-picker__native-hidden{opacity:0;pointer-events:none;border:none;width:0;height:0;margin:0;padding:0;position:absolute}.timetable-color-picker__hex-wrap{align-items:center;gap:2px;display:inline-flex}.timetable-color-picker__hex-hash{color:var(--color-sage-muted);-webkit-user-select:none;user-select:none;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:13px;font-weight:700;line-height:1}.entity-field .timetable-color-picker__hex-input{width:66px;min-height:unset;height:auto;color:var(--color-evergreen-ink);text-transform:uppercase;letter-spacing:.05em;border-radius:0;outline:none;padding:0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:13px;font-weight:700;box-shadow:none!important;background:0 0!important;border:none!important}.timetable-color-picker__dropper-btn{border-radius:var(--radius-sm);width:24px;height:24px;color:var(--color-sage-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;transition:color .15s,background-color .15s;display:inline-flex}.timetable-color-picker__dropper-btn:hover{color:var(--color-evergreen-ink);background:var(--color-sage-50)}.timetable-color-picker__dropper-btn:focus-visible{outline:2px solid var(--color-forest);outline-offset:1px}.timetable-color-picker__dropper-icon{width:14px;height:14px}.timetable-color-picker__presets{flex-wrap:wrap;align-items:center;gap:10px;display:inline-flex}.timetable-color-picker__presets-label{text-transform:uppercase;letter-spacing:.06em;color:var(--color-sage-muted);-webkit-user-select:none;user-select:none;font-size:11px;font-weight:700}.timetable-color-picker__swatches-row{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.timetable-color-picker__swatch{cursor:pointer;box-sizing:border-box;border:1px solid #0000001f;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;padding:0;transition:transform .15s,box-shadow .15s;display:inline-flex;position:relative}.timetable-color-picker__swatch:hover{transform:translateY(-1px)scale(1.18);box-shadow:0 3px 6px #0000002e}.timetable-color-picker__swatch:focus-visible{outline:2px solid var(--color-forest);outline-offset:2px}.timetable-color-picker__swatch.is-selected{box-shadow:0 0 0 2px var(--color-paper), 0 0 0 4px var(--color-evergreen-ink);transform:scale(1.1)}.timetable-color-picker__check{stroke-width:3px;width:12px;height:12px}.school-color-dot{vertical-align:middle;border-radius:50%;width:9px;height:9px;margin-left:6px;display:inline-block;box-shadow:0 0 0 1px #00000026}.video-library-main{gap:var(--space-5);background:var(--color-paper);display:grid}.video-library-heading{justify-content:space-between;align-items:end;gap:var(--space-5);display:flex}.video-library-heading h1{margin:var(--space-1) 0;font-family:var(--font-display);font-size:var(--text-heading-xl)}.video-library-heading p,.video-library-heading>span{color:var(--color-sage-muted)}.video-library-heading>span{font-family:var(--font-mono)}.video-library-heading__actions{align-items:center;gap:var(--space-3);display:flex}.video-library-heading__actions>span{color:var(--color-sage-muted);font-family:var(--font-mono)}.video-library-scope{gap:var(--space-3);border:1px solid var(--color-line);border-radius:var(--radius-lg);padding:var(--space-4);background:var(--color-paper-warm);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.video-library-scope label{gap:var(--space-2);color:var(--color-sage-muted);font-size:var(--text-body-sm);font-weight:800;display:grid}.video-library-scope select{border:1px solid var(--color-line-strong);border-radius:var(--radius-lg);width:100%;min-height:44px;padding:0 var(--space-3);color:var(--color-evergreen-ink);background:var(--color-paper);font-weight:700}.video-library-toolbar{gap:var(--space-3);display:grid}.video-library-toolbar__search{align-items:center;gap:var(--space-3);border:1px solid var(--color-line);border-radius:var(--radius-lg);min-height:44px;padding:0 var(--space-4);background:var(--color-paper-warm);transition:border-color var(--transition-base), box-shadow var(--transition-base);grid-template-columns:auto 1fr;display:grid}.video-library-toolbar__search:focus-within{border-color:var(--color-marigold);box-shadow:var(--shadow-focus)}.video-library-toolbar__search>svg{width:18px;height:18px;color:var(--color-sage-muted);flex:0 0 18px}.video-library-toolbar__search input{background:0 0;border:0;outline:0;min-width:0}.video-library-toolbar__filters{justify-content:flex-end;align-items:center;gap:var(--space-2);display:flex}.video-library-toolbar__filters>svg{width:18px;height:18px;color:var(--color-sage-muted);flex:0 0 18px}.video-filter select{border:1px solid var(--color-line);border-radius:var(--radius-lg);min-height:40px;padding:0 34px 0 var(--space-3);color:var(--color-evergreen-ink);background:var(--color-paper);font-weight:700}.video-view-toggle{border:1px solid var(--color-line);border-radius:var(--radius-lg);padding:2px;display:inline-flex}.video-view-toggle button{border-radius:var(--radius-md);width:34px;height:34px;color:var(--color-sage-muted);background:0 0;border:0;place-items:center;display:grid}.video-view-toggle button.is-active{color:var(--color-forest);background:var(--color-forest-soft)}.video-view-toggle svg{width:17px;height:17px}.video-grid{gap:var(--space-5) var(--space-4);transition:opacity var(--transition-base);align-items:stretch;display:grid}.video-grid--grid{grid-template-columns:repeat(4,minmax(0,1fr))}.video-card{box-sizing:border-box;border-radius:var(--radius-lg);min-width:0;height:100%;padding:var(--space-2);background:var(--color-paper,#fff);transition:border-color var(--transition-base), box-shadow var(--transition-base), transform var(--transition-fast);border:1px solid #0000;flex-direction:column;display:flex;position:relative}.video-card:hover,.video-card:focus-within{border-color:var(--color-line);box-shadow:var(--shadow-card);transform:translateY(var(--hover-lift))}.video-card>a{color:inherit;flex-shrink:0;text-decoration:none;display:block}.video-thumbnail{aspect-ratio:16/9;align-content:space-between;gap:var(--space-3);border-radius:var(--radius-lg);width:100%;min-height:150px;padding:var(--space-3);color:var(--color-on-dark);grid-template-columns:1fr auto;display:grid;position:relative;overflow:hidden}.video-thumbnail:after{content:"";opacity:0;transition:opacity var(--transition-base);background:#ffffff12;position:absolute;inset:0}.video-thumbnail__image{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.video-thumbnail:has(.video-thumbnail__image):before{content:"";z-index:1;background:linear-gradient(#0000006b,#0000 50%,#00000047);position:absolute;inset:0}.video-card:hover .video-thumbnail:after{opacity:1}.video-thumbnail--forest{background:linear-gradient(135deg,#174a39,#176475)}.video-thumbnail--slate{background:linear-gradient(135deg,#31516f,#5b8b83)}.video-thumbnail--umber{background:linear-gradient(135deg,#8c4e19,#bd842c)}.video-thumbnail--plum{background:linear-gradient(135deg,#3d315f,#775f91)}.video-thumbnail--sage{background:linear-gradient(135deg,#2f5b4b,#6da17f)}.video-thumbnail--brick{background:linear-gradient(135deg,#5b3040,#a5544d)}.video-thumbnail__eyebrow{z-index:1;font-family:var(--font-mono);font-size:var(--text-label);text-transform:uppercase;grid-column:1/-1;align-self:start;font-weight:900}.video-thumbnail__play{z-index:1;color:#fff;width:38px;height:38px;transition:background-color var(--transition-base), transform var(--transition-fast);background:#081f19c7;border:1px solid #ffffff4d;border-radius:50%;align-self:end;place-items:center;display:grid;box-shadow:0 5px 16px #0000003d}.video-card:hover .video-thumbnail__play{background:#081f19f0;transform:scale(1.06)}.video-thumbnail__play svg{filter:drop-shadow(0 1px 1px #00000047);width:15px;height:15px;transform:translate(1px)}.video-thumbnail time{z-index:1;border-radius:var(--radius-sm);font-family:var(--font-mono);background:#00000094;align-self:end;padding:3px 7px;font-weight:900}.video-thumbnail>i{background:linear-gradient(90deg, var(--color-marigold) var(--progress), #ffffff40 var(--progress));height:4px;position:absolute;bottom:0;left:0;right:0}.video-progress--24{--progress:24%}.video-progress--62{--progress:62%}.video-progress--88{--progress:88%}.video-card__body{justify-content:space-between;gap:var(--space-3);padding:var(--space-3) 0 var(--space-1);flex-direction:column;flex:1;display:flex}.video-card h2{font-family:var(--font-sans);font-size:var(--text-body-lg);-webkit-line-clamp:2;text-overflow:ellipsis;-webkit-box-orient:vertical;min-height:2.6em;margin:0;font-weight:800;line-height:1.3;display:-webkit-box;overflow:hidden}.video-card__body a{color:inherit;text-decoration:none}.video-card p{margin:var(--space-1) 0 0;color:var(--color-sage-muted);font-size:var(--text-body-sm);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.video-card p span{border-radius:var(--radius-sm);color:var(--color-forest);background:var(--color-forest-soft);padding:3px 7px}.video-card__meta{justify-content:space-between;align-items:center;gap:var(--space-2);color:var(--color-sage-muted);font-size:var(--text-body-sm);margin-top:auto;display:flex}.video-card__download-access{justify-content:space-between;align-items:center;gap:var(--space-2);border:1px solid var(--color-line);border-radius:var(--radius-md);padding:var(--space-2);background:var(--color-paper-warm);display:flex}.video-card__download-access>span{align-items:center;gap:var(--space-2);color:var(--color-sage-muted);font-size:var(--text-body-sm);font-weight:800;display:inline-flex}.video-card__download-access>span svg{width:15px;height:15px}.video-card__download-access button{border:1px solid var(--color-line-strong);border-radius:var(--radius-pill);min-width:76px;color:var(--color-sage-muted);background:var(--color-paper);font-size:var(--text-label);cursor:pointer;padding:4px 10px;font-weight:900}.video-card__download-access.is-enabled{border-color:var(--color-success-border);background:var(--color-success-bg)}.video-card__download-access.is-enabled>span,.video-card__download-access.is-enabled button{color:var(--color-success)}.video-card__download-access button:disabled{cursor:wait;opacity:.65}.video-card__download-access button:focus-visible{outline:2px solid var(--color-forest);outline-offset:2px}.video-status{border-radius:var(--radius-pill);font-size:var(--text-label);text-transform:uppercase;justify-content:center;align-items:center;padding:3px 8px;font-weight:900;line-height:1;display:inline-flex}.video-status--published{color:var(--color-success);background:var(--color-success-bg)}.video-status--draft{color:var(--color-sage-muted);background:var(--color-sage-50)}.video-status--scheduled,.video-status--processing{color:var(--color-warning);background:var(--color-warning-bg)}.video-status--failed{color:var(--color-danger);background:var(--color-danger-bg)}.video-card__actions{top:var(--space-4);right:var(--space-4);z-index:2;gap:var(--space-1);opacity:0;transition:opacity var(--transition-base), transform var(--transition-base);display:flex;position:absolute;transform:translateY(-4px)}.video-card:hover .video-card__actions,.video-card:focus-within .video-card__actions{opacity:1;transform:none}.video-card__actions button{width:32px;height:32px;color:var(--color-on-dark);background:#00000085;border:0;border-radius:50%;place-items:center;display:grid}.video-card__actions button:disabled{cursor:not-allowed;opacity:.55}.video-card__actions button.is-active{color:var(--color-marigold)}.video-card__actions svg{width:15px;height:15px}.video-grid--list{grid-template-columns:1fr}.video-grid--list .video-card{gap:var(--space-4);border-color:var(--color-line);grid-template-columns:220px minmax(0,1fr);height:auto;display:grid}.video-grid--list .video-thumbnail{aspect-ratio:auto;min-height:125px}.video-grid--list .video-card__body{padding-right:var(--space-8);justify-content:center}.video-grid--list .video-card h2{min-height:auto}@media (width<=1180px){.video-grid--grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=900px){.video-grid--grid{grid-template-columns:repeat(2,minmax(0,1fr))}.video-library-toolbar__filters{flex-wrap:wrap;justify-content:flex-start}.video-library-scope{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=620px){.video-library-heading{display:grid}.video-library-heading__actions{flex-direction:column;align-items:stretch}.video-grid--grid,.video-grid--list .video-card{grid-template-columns:1fr}.video-filter{flex:1 1 calc(50% - var(--space-2))}.video-filter select,.video-library-toolbar__filters .button{width:100%}.video-library-scope{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.video-card:hover,.video-card:focus-within,.video-card__actions{transform:none}}.video-upload-backdrop{z-index:2000;padding:var(--space-5);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:search-backdrop-enter var(--transition-fast);background:#18211d6b;place-items:center;display:grid;position:fixed;inset:0;overflow-y:auto}.video-upload-dialog{gap:var(--space-5);width:min(560px,100%);padding:var(--space-6);background:var(--color-paper);box-shadow:var(--shadow-panel);text-align:left;animation:command-search-enter var(--transition-slow);border-radius:16px;display:grid}.video-upload-dialog>header{justify-content:space-between;align-items:start;gap:var(--space-4);display:flex}.video-upload-dialog h2{margin:var(--space-1) 0 0;font-family:var(--font-display);font-size:var(--text-heading-lg)}.video-upload-dialog>header button{border-radius:var(--radius-md);width:36px;height:36px;color:var(--color-sage-muted);background:var(--color-sage-50);border:0;place-items:center;line-height:0;display:grid}.video-upload-dialog>header button svg{width:18px;height:18px}.video-upload-dropzone{align-content:center;place-items:center;gap:var(--space-2);border:1px dashed var(--color-line-strong);border-radius:var(--radius-lg);min-height:180px;color:var(--color-sage-muted);background:var(--color-paper-warm);text-align:center;cursor:pointer;transition:border-color var(--transition-base), background var(--transition-base);display:grid}.video-upload-dropzone:hover{border-color:var(--color-forest);background:var(--color-forest-soft)}.video-upload-dropzone svg{width:24px;height:24px;color:var(--color-forest)}.video-upload-dropzone strong{color:var(--color-evergreen-ink);font-size:var(--text-body-lg)}.video-upload-dropzone input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.video-upload-file{align-items:center;gap:var(--space-3);border:1px solid var(--color-line);border-radius:var(--radius-lg);padding:var(--space-3);grid-template-columns:auto 1fr auto;display:grid}.video-upload-file>svg{border-radius:var(--radius-md);width:38px;height:38px;color:var(--color-forest);background:var(--color-forest-soft);padding:8px}.video-upload-file span{height:6px;margin-top:var(--space-2);border-radius:var(--radius-pill);background:var(--color-sage-100);display:block}.video-upload-file span i{border-radius:inherit;background:var(--color-forest);width:72%;height:100%;display:block}.video-upload-file b{color:var(--color-forest);font-family:var(--font-mono)}.video-upload-fields{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.video-upload-fields label:last-child{grid-column:1/-1}.video-upload-fields label{gap:var(--space-2);display:grid}.video-upload-fields span{color:var(--color-sage-muted);font-family:var(--font-mono);font-size:var(--text-label);text-transform:uppercase;font-weight:900}.video-upload-required{color:var(--color-danger);font-style:normal}.video-upload-fields select{border:1px solid var(--color-line);border-radius:var(--radius-lg);min-width:0;min-height:42px;padding:0 var(--space-3);background:var(--color-paper-warm)}.video-upload-dialog>footer{justify-content:flex-end;gap:var(--space-3);display:flex}.video-upload-dialog>form{gap:var(--space-4);display:grid}.video-upload-dialog>form>footer{justify-content:flex-end;gap:var(--space-3);display:flex}.video-upload-fields input,.video-upload-fields textarea{border:1px solid var(--color-line);border-radius:var(--radius-lg);width:100%;min-width:0;padding:var(--space-3);color:var(--color-evergreen-ink);background:var(--color-paper-warm)}.video-upload-fields input{min-height:42px}.video-upload-fields textarea{resize:vertical}.video-upload-fields .is-wide{grid-column:1/-1}.video-upload-fields .field-error,.entity-field .field-error{color:var(--color-danger);font-family:var(--font-sans);font-size:var(--text-body-sm);text-transform:none;font-weight:700}.video-upload-fields .video-upload-field-note{color:var(--color-sage-muted);font-size:var(--text-body-sm)}.video-upload-file small{margin-top:var(--space-1);color:var(--color-sage-muted);display:block}.video-upload-queue-note{align-items:start;gap:var(--space-2);border:1px solid var(--color-info-border);border-radius:var(--radius-lg);padding:var(--space-3);color:var(--color-evergreen-ink);background:var(--color-forest-soft);font-size:var(--text-body-sm);grid-template-columns:auto 1fr;margin:0;display:grid}.video-upload-queue-note svg{width:16px;height:16px;color:var(--color-forest);margin-top:1px}.video-library-state{place-items:center;min-height:240px;display:grid}.video-library-pagination{justify-content:space-between;align-items:center;gap:var(--space-4);border-top:1px solid var(--color-line);padding-top:var(--space-4);color:var(--color-sage-muted);display:flex}.video-library-pagination>div{gap:var(--space-2);display:flex}@media (width<=520px){.video-upload-backdrop{align-items:end;padding:0}.video-upload-dialog{width:100%;padding:var(--space-5);border-radius:16px 16px 0 0}.video-upload-fields{grid-template-columns:1fr}.video-upload-fields label:last-child,.video-upload-fields .is-wide{grid-column:auto}.video-upload-dialog>footer .button,.video-upload-dialog>form>footer .button{flex:1}.video-library-pagination{justify-content:space-between;align-items:center;gap:var(--space-2);padding-top:var(--space-3);flex-direction:row;display:flex}.video-library-pagination>span{white-space:nowrap;font-size:11px}.video-library-pagination>div{flex-shrink:0;gap:6px;display:flex}.video-library-pagination .button{width:auto;min-height:32px;padding:4px 10px;font-size:12px}.video-library-pagination .button svg{width:14px;height:14px}}@media (prefers-reduced-motion:reduce){.video-upload-backdrop,.video-upload-dialog{animation:none}}.player-main{gap:var(--space-5);padding-bottom:var(--space-10);background:var(--color-paper-warm);flex-direction:column;display:flex}.player-nav-bar{justify-content:space-between;align-items:center;gap:var(--space-4);border-bottom:1px solid var(--color-line);padding-bottom:var(--space-4);flex-wrap:wrap;display:flex}.player-back-btn{align-items:center;gap:var(--space-2);border:1px solid var(--color-forest-soft);border-radius:var(--radius-pill);min-height:38px;padding:0 var(--space-4);color:var(--color-forest);background:var(--color-forest-soft);font-size:var(--text-body-sm);cursor:pointer;transition:transform var(--transition-fast), background var(--transition-fast);font-weight:800;display:inline-flex}.player-back-btn:hover{background:#dbece3cc;transform:translate(-2px)}.player-back-btn:focus-visible{box-shadow:var(--shadow-focus);outline:none}.player-back-btn svg{width:16px;height:16px;color:var(--color-forest)}.player-breadcrumbs{align-items:center;gap:var(--space-2);color:var(--color-sage-muted);font-size:var(--text-body-sm);flex-wrap:wrap;font-weight:600;display:flex}.crumb-link{color:var(--color-sage-muted);font-size:inherit;cursor:pointer;transition:color var(--transition-fast);background:0 0;border:0;padding:0;font-weight:700}.crumb-link:hover{color:var(--color-forest);text-underline-offset:3px;text-decoration:underline}.crumb-separator{color:var(--color-sage-300)}.crumb-active{max-width:380px;color:var(--color-evergreen-ink);text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.player-layout{gap:var(--space-6);grid-template-columns:minmax(0,1fr) minmax(320px,360px);align-items:start;display:grid}.player-layout__stage{gap:var(--space-5);flex-direction:column;min-width:0;display:flex}.player-cinema-wrapper{border-radius:var(--radius-lg);background:#081611;width:100%;position:relative;overflow:hidden;box-shadow:0 20px 48px #07171247}.player-stage--native{aspect-ratio:16/9;background:#071712;width:100%;position:relative}.player-stage--native iframe{background:#071712;border:0;width:100%;height:100%;display:block}.player-stage__state{z-index:2;justify-content:center;align-items:center;gap:var(--space-3);padding:var(--space-6);color:var(--color-on-dark);font-size:var(--text-body-md);text-align:center;background:radial-gradient(circle,#0f2b21 0%,#06140e 100%);flex-direction:column;font-weight:700;display:flex;position:absolute;inset:0}.spinner-icon{width:36px;height:36px;color:var(--color-forest);animation:1s linear infinite spin}.player-stage__state--error{color:#ffd7cf}.player-stage__state--error p{max-width:380px;line-height:var(--leading-body);margin:0}.player-stage-error-actions{gap:var(--space-3);margin-top:var(--space-2);flex-wrap:wrap;justify-content:center;display:flex}.player-stage__overlay{z-index:5;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeInOverlay var(--transition-fast) ease-out;background:#06140ebf;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.player-replay-btn{justify-content:center;align-items:center;gap:var(--space-3);border-radius:var(--radius-pill);min-height:52px;padding:0 var(--space-6);color:#fff;font-family:var(--font-body);font-size:var(--text-body-md);cursor:pointer;transition:transform var(--transition-fast), box-shadow var(--transition-fast), background var(--transition-fast);background:linear-gradient(135deg,#10b981 0%,#059669 100%);border:1px solid #fff3;font-weight:800;display:inline-flex;box-shadow:0 8px 24px #10b98159,0 0 0 1px #ffffff1a}.player-replay-btn:hover{background:linear-gradient(135deg,#34d399 0%,#10b981 100%);transform:scale(1.05);box-shadow:0 12px 32px #10b98180,0 0 0 2px #fff3}.player-replay-btn:active{transform:scale(.98)}.player-replay-btn:focus-visible{outline:none;box-shadow:0 0 0 3px #fff,0 0 0 6px #10b981}.replay-icon{width:22px;height:22px;transition:transform .4s cubic-bezier(.34,1.56,.64,1)}.player-replay-btn:hover .replay-icon{transform:rotate(-180deg)}.player-info-card{gap:var(--space-4);border:1px solid var(--color-line);border-radius:var(--radius-lg);padding:var(--space-6);background:var(--color-paper);box-shadow:var(--shadow-card);flex-direction:column;display:flex}.player-title-header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);flex-wrap:wrap;display:flex}.player-title-main{gap:var(--space-2);flex-direction:column;flex:300px;display:flex}.player-eyebrow{align-items:center;gap:var(--space-2);color:var(--color-forest);font-size:var(--text-label);text-transform:uppercase;letter-spacing:.08em;font-weight:800;display:inline-flex}.player-eyebrow:before{content:"";background:var(--color-marigold);width:7px;height:7px;box-shadow:0 0 0 3px var(--color-marigold-100);border-radius:50%}.player-badge-group{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.player-duration-badge{border:1px solid var(--color-line);border-radius:var(--radius-xs);color:var(--color-sage-muted);background:var(--color-paper-warm);font-family:var(--font-mono);font-size:var(--text-data);align-items:center;gap:4px;padding:2px 8px;font-weight:700;display:inline-flex}.player-duration-badge svg{width:12px;height:12px}.player-title-main h1{color:var(--color-evergreen-ink);font-family:var(--font-display);font-size:var(--text-heading-xl);font-weight:700;line-height:var(--leading-heading);margin:0}.player-quick-actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.player-context-pills{align-items:center;gap:var(--space-3);border-top:1px solid var(--color-line);padding-top:var(--space-4);flex-wrap:wrap;display:flex}.context-pill{align-items:center;gap:var(--space-2);border:1px solid var(--color-line);border-radius:var(--radius-pill);color:var(--color-evergreen-ink);background:var(--color-paper-warm);font-size:var(--text-body-sm);padding:6px 14px;font-weight:700;display:inline-flex}.context-pill svg{width:15px;height:15px;color:var(--color-forest)}.player-layout__side{gap:var(--space-4);min-width:0;top:var(--space-5);flex-direction:column;display:flex;position:sticky}.player-sidebar-card{border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-paper);box-shadow:var(--shadow-card);flex-direction:column;display:flex;overflow:hidden}.player-sidebar-tabs{border-bottom:1px solid var(--color-line);background:var(--color-paper-warm);display:flex}.sidebar-tab-btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:48px;padding:0 var(--space-3);color:var(--color-sage-muted);font-size:var(--text-body-sm);cursor:pointer;transition:color var(--transition-fast), border-color var(--transition-fast), background var(--transition-fast);background:0 0;border:0;border-bottom:2px solid #0000;flex:1;font-weight:700;display:flex}.sidebar-tab-btn:hover{color:var(--color-evergreen-ink);background:var(--color-sage-50)}.sidebar-tab-btn:focus-visible{box-shadow:inset 0 0 0 2px var(--color-forest);outline:none}.sidebar-tab-btn.is-active{border-bottom-color:var(--color-forest);color:var(--color-forest);background:var(--color-paper)}.sidebar-tab-btn svg{width:16px;height:16px}.sidebar-tab-content{gap:var(--space-4);padding:var(--space-5);flex-direction:column;display:flex}.context-detail-item{gap:var(--space-1);border-bottom:1px solid var(--color-sage-50);padding-bottom:var(--space-4);flex-direction:column;display:flex}.context-detail-item:last-child{border-bottom:0;padding-bottom:0}.detail-label{align-items:center;gap:var(--space-1);color:var(--color-sage-muted);font-size:var(--text-label);text-transform:uppercase;letter-spacing:.5px;font-weight:800;display:inline-flex}.detail-label svg{width:13px;height:13px;color:var(--color-forest)}.detail-value{color:var(--color-evergreen-ink);font-size:var(--text-body-md);word-break:break-word;font-weight:700}.detail-value.code-font{font-family:var(--font-mono);font-size:var(--text-data)}.detail-value.highlight-success{align-items:center;gap:var(--space-2);color:var(--color-success);display:inline-flex}.detail-value.highlight-success:before{content:"";background:var(--color-success);width:8px;height:8px;box-shadow:0 0 0 3px var(--color-success-bg);border-radius:50%}.detail-value.highlight-warning{align-items:center;gap:var(--space-2);color:var(--color-warning);display:inline-flex}.detail-value.highlight-warning:before{content:"";background:var(--color-warning);width:8px;height:8px;box-shadow:0 0 0 3px var(--color-warning-bg);border-radius:50%}.detail-value.highlight-danger{align-items:center;gap:var(--space-2);color:var(--color-danger);display:inline-flex}.detail-value.highlight-danger:before{content:"";background:var(--color-danger);width:8px;height:8px;box-shadow:0 0 0 3px var(--color-danger-bg);border-radius:50%;flex:0 0 8px}.player-assignments-card{gap:var(--space-4);border:1px solid var(--color-line);border-radius:var(--radius-lg);padding:var(--space-5);background:var(--color-paper);display:grid}.player-assignments-card>header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.player-assignments-card h2{font-family:var(--font-display);font-size:var(--text-heading-md);margin:0}.player-assignments-card>header p{margin:var(--space-1) 0 0;color:var(--color-sage-muted);font-size:var(--text-body-sm)}.player-assignments-retry{align-items:center;gap:var(--space-2);border:1px solid var(--color-line-strong);border-radius:var(--radius-md);padding:5px var(--space-3);color:var(--color-evergreen-ink);background:var(--color-paper);font-size:var(--text-body-sm);white-space:nowrap;display:inline-flex}.player-assignments-retry svg{width:14px;height:14px}.player-assignments-state{align-items:center;gap:var(--space-2);border:1px dashed var(--color-line-strong);border-radius:var(--radius-lg);padding:var(--space-4);color:var(--color-sage-muted);background:var(--color-paper-warm);font-size:var(--text-body-sm);margin:0;display:flex}.player-assignments-state.is-error{border-style:solid;border-color:var(--color-danger-border);color:var(--color-danger);background:var(--color-danger-bg)}.player-assignments-state svg{width:16px;height:16px}.player-assignment-list{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.player-assignment-list>li{gap:var(--space-3);border:1px solid var(--color-line);border-radius:var(--radius-lg);padding:var(--space-4);background:var(--color-paper-warm);display:grid}.player-assignment-head{justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.player-assignment-school{align-items:center;gap:var(--space-2);color:var(--color-evergreen-ink);font-size:var(--text-body-md);font-weight:800;display:inline-flex}.player-assignment-school svg{width:16px;height:16px;color:var(--color-forest)}.player-assignment-school em{border-radius:var(--radius-sm);color:var(--color-forest);background:var(--color-forest-soft);font-family:var(--font-mono);font-size:var(--text-label);padding:2px 6px;font-style:normal;font-weight:900}.player-assignment-head time{color:var(--color-sage-muted);font-size:var(--text-body-sm)}.player-assignment-meta{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid}.player-assignment-meta dt{color:var(--color-sage-muted);font-size:var(--text-label);letter-spacing:.5px;text-transform:uppercase;font-weight:800}.player-assignment-meta dd{margin:var(--space-1) 0 0;color:var(--color-evergreen-ink);font-size:var(--text-body-sm);overflow-wrap:anywhere;font-weight:700}.player-assignment-divisions{gap:var(--space-1);flex-wrap:wrap;display:flex}.player-assignment-divisions b{border:1px solid var(--color-line-strong);border-radius:var(--radius-pill);padding:2px var(--space-2);background:var(--color-paper);font-size:var(--text-label);font-weight:800}.player-assignment-divisions b.is-inactive{border-color:var(--color-danger-border);color:var(--color-danger);background:var(--color-danger-bg);text-decoration:line-through}.player-assignment-note{border-top:1px solid var(--color-line);padding-top:var(--space-3);color:var(--color-sage-muted);font-size:var(--text-body-sm);margin:0}.sidebar-card-footer{border-top:1px solid var(--color-line);padding:var(--space-4);background:var(--color-paper-warm)}.button--full{width:100%}@media (width<=1024px){.player-layout{grid-template-columns:1fr}.player-layout__side{position:static}}@media (width<=640px){.player-title-header{flex-direction:column}.player-quick-actions{width:100%}.player-quick-actions .button{flex:1}.player-context-pills{flex-direction:column;align-items:stretch}.context-pill{justify-content:flex-start}.player-assignment-meta{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.spinner-icon{animation-duration:1.6s}.player-back-btn:hover{transform:none}}.global-search-page{min-height:100vh;position:relative}.search-underlay{gap:var(--space-4);filter:grayscale(.5);grid-template-columns:1.4fr .7fr;display:grid}.search-underlay div{border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-paper);min-height:260px}.search-underlay div:first-child{grid-row:span 2;min-height:570px}.command-search-backdrop{z-index:2000;padding:min(14vh, 120px) var(--space-4) var(--space-8);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:search-backdrop-enter var(--transition-fast);background:#18211d61;place-items:start center;display:grid;position:fixed;inset:0;overflow-y:auto}.command-search{border:1px solid var(--color-line-strong);background:var(--color-paper);width:min(740px,100%);max-height:min(74vh,760px);box-shadow:var(--shadow-panel);animation:command-search-enter var(--transition-slow);border-radius:20px;grid-template-rows:auto minmax(0,1fr) auto;display:grid;overflow:hidden}.command-search>header{align-items:center;gap:var(--space-3);border-bottom:1px solid var(--color-line);min-height:72px;padding:0 var(--space-5);grid-template-columns:auto 1fr auto;display:grid}.command-search>header>svg{width:20px;height:20px;color:var(--color-sage-muted)}.command-search>header input{background:0 0;border:0;outline:0;min-width:0;font-size:18px}.command-search>header button{border-radius:var(--radius-md);width:34px;height:34px;color:var(--color-sage-muted);background:var(--color-sage-50);border:0;place-items:center;display:grid}.command-search kbd{border:1px solid var(--color-line);border-radius:var(--radius-sm);color:var(--color-sage-muted);background:var(--color-paper-warm);font-family:var(--font-mono);padding:3px 7px;font-size:11px}.command-search__body{padding:var(--space-3);overflow-y:auto}.search-recents,.search-result-group{gap:var(--space-2);display:grid}.search-recents h2,.search-result-group h2{margin:var(--space-2) var(--space-3);color:var(--color-sage-muted);font-family:var(--font-mono);font-size:var(--text-label);text-transform:uppercase}.search-recents>div{gap:var(--space-2);padding:0 var(--space-2) var(--space-3);flex-wrap:wrap;display:flex}.search-recents button{align-items:center;gap:var(--space-2);border:1px solid var(--color-line);border-radius:var(--radius-pill);min-height:34px;padding:0 var(--space-3);color:var(--color-sage-muted);background:var(--color-paper);display:flex}.search-recents svg{flex:0 0 14px;width:14px;height:14px}.search-result-group>div{display:grid}.search-result-group button{align-items:center;gap:var(--space-3);border-radius:var(--radius-lg);min-height:58px;padding:var(--space-2) var(--space-3);color:inherit;text-align:left;transition:background var(--transition-fast), transform var(--transition-fast);background:0 0;border:0;grid-template-columns:42px minmax(0,1fr) auto auto;display:grid}.search-result-group button.is-active{background:var(--color-forest-soft);transform:translate(2px)}.search-result__icon{border-radius:var(--radius-md);width:38px;height:38px;color:var(--color-forest);background:var(--color-sage-50);place-items:center;display:grid}.search-result-group button.is-active .search-result__icon{color:var(--color-on-primary);background:var(--color-forest)}.search-result__icon svg{width:17px;height:17px}.search-result-group small{color:var(--color-sage-muted);font-family:var(--font-mono)}.search-empty{align-content:center;place-items:center;gap:var(--space-3);min-height:300px;color:var(--color-sage-muted);text-align:center;display:grid}.search-empty svg{width:42px;height:42px;color:var(--color-forest)}.search-empty strong{color:var(--color-evergreen-ink);font-family:var(--font-display);font-size:var(--text-heading-md)}.command-search>footer{align-items:center;gap:var(--space-4);border-top:1px solid var(--color-line);min-height:52px;padding:0 var(--space-5);color:var(--color-sage-muted);font-size:var(--text-body-sm);display:flex}.command-search>footer small{margin-left:auto}@media (width<=620px){.command-search-backdrop{align-items:stretch;padding:0}.command-search{border:0;border-radius:0;width:100%;min-height:100vh;max-height:100vh}.command-search>footer small{display:none}.command-search>footer{gap:var(--space-2);padding:0 var(--space-3)}.search-result-group button{grid-template-columns:42px minmax(0,1fr)}.search-result-group small,.search-result-group kbd{grid-column:2}}@media (prefers-reduced-motion:reduce){.command-search-backdrop,.command-search{animation:none}.search-result-group button.is-active{transform:none}}.coming-soon-main{align-content:center;place-items:center;gap:var(--space-4);min-height:calc(100vh - 64px);padding:var(--space-8);background:var(--color-chalk-paper);text-align:center;display:grid}.coming-soon-main__icon{width:76px;height:76px;color:var(--color-forest);background:var(--color-forest-soft);border-radius:24px;place-items:center;line-height:0;display:grid}.coming-soon-main__icon svg{width:30px;height:30px}.coming-soon-main h1{font-family:var(--font-display);font-size:var(--text-heading-xl);margin:0}.coming-soon-main>strong{color:var(--color-marigold-600);font-family:var(--font-mono);text-transform:uppercase}.coming-soon-main p{max-width:480px;margin:0 0 var(--space-3);color:var(--color-sage-muted)}.reports-page-shell{box-sizing:border-box;width:100%;min-height:100vh}.reports-page-shell .top-header{z-index:100}.reports-main{gap:var(--space-6);padding:var(--space-6);box-sizing:border-box;flex-direction:column;width:100%;min-width:0;max-width:100%;display:flex}@media (width<=768px){.reports-main{padding:var(--space-4);gap:var(--space-4)}}@media (width<=480px){.reports-main{padding:var(--space-3);gap:var(--space-3)}}.reports-hero{justify-content:space-between;align-items:center;gap:var(--space-4);box-sizing:border-box;flex-wrap:wrap;width:100%;display:flex}@media (width<=640px){.reports-hero{flex-direction:column;align-items:flex-start}.reports-hero__actions{justify-content:flex-start;width:100%}}.reports-hero__actions{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.reports-hero__actions .button{background:var(--color-paper)!important;border:1px solid var(--color-line)!important;color:var(--color-evergreen-ink)!important;font-weight:700!important;box-shadow:0 1px 2px #0000000d!important}.reports-hero__actions .button:hover{background:var(--color-sage-50)!important;border-color:var(--color-line-strong)!important}.date-range-badge{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-md);font-size:var(--text-body-sm);color:var(--color-evergreen-ink);height:var(--size-control-md);box-sizing:border-box;font-weight:600;display:inline-flex}.date-range-badge svg{width:16px;height:16px;color:var(--color-forest);flex-shrink:0}.reports-section{box-sizing:border-box;width:100%;min-width:0;max-width:100%}.reports-global-filters-section{position:relative}.reports-global-filters{background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-panel);overflow:hidden}.reports-global-filters__header{align-items:center;gap:var(--space-3);background:linear-gradient(180deg, var(--color-sage-50) 0%, var(--color-paper) 100%);border-bottom:1px solid var(--color-line);padding:12px 18px;display:flex}.reports-global-filters__header>svg{width:18px;height:18px;color:var(--color-forest);flex-shrink:0}.reports-global-filters__title{flex-direction:column;gap:1px;min-width:0;display:flex}.reports-global-filters__title strong{font-size:var(--text-body-sm);color:var(--color-evergreen-ink);font-weight:800}.reports-global-filters__title span{color:var(--color-sage-muted);font-size:11px}.reports-global-filters .reports-filter-bar{box-shadow:none;border:none;border-radius:0;padding:14px 18px 16px}.reports-filter-bar--global{gap:var(--space-3)}.reports-active-filters{flex-wrap:wrap;align-items:center;gap:8px;padding:0 2px 2px;display:flex}.reports-active-filter-chip{background:var(--color-forest-soft);border-radius:var(--radius-pill);color:var(--color-forest-800,#166534);border:1px solid #16a34a33;align-items:center;gap:6px;max-width:100%;padding:4px 8px 4px 10px;font-size:11px;font-weight:600;display:inline-flex}.reports-active-filter-chip button{width:16px;height:16px;color:var(--color-forest);cursor:pointer;background:#ffffffb3;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.reports-active-filter-chip button svg{width:10px;height:10px}.reports-active-filter-chip button:hover{background:#fff}.reports-active-filters__clear{color:var(--color-sage-muted);cursor:pointer;text-underline-offset:2px;background:0 0;border:none;padding:4px 10px;font-size:11px;font-weight:700;text-decoration:underline}.reports-active-filters__clear:hover{color:var(--color-evergreen-ink)}.reports-tab-content{box-sizing:border-box;width:100%;min-width:0;max-width:100%}.reports-kpi-grid{gap:var(--space-4);box-sizing:border-box;grid-template-columns:repeat(6,minmax(0,1fr));width:100%;min-width:0;display:grid}@media (width<=1400px){.reports-kpi-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=768px){.reports-kpi-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=480px){.reports-kpi-grid{grid-template-columns:1fr}}.reports-kpi-card{min-width:0;padding:var(--space-4);background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);transition:transform var(--transition-fast), box-shadow var(--transition-fast);box-sizing:border-box;flex-direction:column;justify-content:space-between;min-height:110px;display:flex}.reports-kpi-card:hover{box-shadow:var(--shadow-panel);transform:translateY(-2px)}.reports-kpi-card__top{justify-content:space-between;align-items:center;gap:var(--space-2);margin-bottom:var(--space-2);display:flex}.reports-kpi-card__label{color:var(--color-sage-muted);text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:700;line-height:1.2}.reports-kpi-card__icon{border-radius:var(--radius-md);flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.reports-kpi-card__icon svg{width:16px;height:16px}.icon--forest{background:var(--color-forest-soft);color:var(--color-forest)}.icon--cyan{color:#0284c7;background:#e0f2fe}.icon--green{color:#16a34a;background:#dcfce7}.icon--amber{color:#d97706;background:#fef3c7}.icon--purple{color:#9333ea;background:#f3e8ff}.icon--slate{background:var(--color-sage-50);color:var(--color-sage-muted)}.reports-kpi-card__value{font-size:var(--text-heading-md);color:var(--color-evergreen-ink);margin-bottom:var(--space-1);font-weight:800;line-height:1.1}.reports-kpi-card__trend,.reports-kpi-card__sub{color:var(--color-sage-muted);align-items:center;gap:4px;font-size:11px;display:flex}.trend--positive{color:#16a34a;font-weight:600}.trend--positive svg{width:12px;height:12px}.reports-analytics-grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));min-width:0;display:grid}@media (width<=1024px){.reports-analytics-grid{grid-template-columns:1fr}}.reports-analytics-card{min-width:0;padding:var(--space-5);background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);box-sizing:border-box;flex-direction:column;display:flex}.reports-analytics-card__header{margin-bottom:var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-line);justify-content:space-between;align-items:center;display:flex}.reports-analytics-card__header .card-title{align-items:center;gap:var(--space-2);font-size:var(--text-body-md);color:var(--color-evergreen-ink);font-weight:700;display:flex}.reports-analytics-card__header .card-title svg{width:18px;height:18px;color:var(--color-forest);flex-shrink:0}.reports-analytics-card__header .card-subtitle{font-size:var(--text-label);color:var(--color-sage-muted)}.reports-analytics-card--trend{overflow:visible}.daily-trend-chart-layout{align-items:stretch;gap:6px;width:100%;display:flex}.daily-trend-y-axis{pointer-events:none;flex:0 0 22px;height:196px;position:relative}.daily-trend-y-label{color:var(--color-sage-muted);text-align:right;font-size:11px;font-weight:500;line-height:1;position:absolute;right:0;transform:translateY(-50%)}.daily-trend-chart-container{flex:1;min-width:0;min-height:196px;position:relative}.daily-trend-empty-state{pointer-events:none;z-index:1;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.daily-trend-empty-state span{font-size:var(--text-body-sm);color:var(--color-sage-muted);background:var(--color-sage-50);border-radius:var(--radius-pill);border:1px dashed var(--color-line);padding:6px 14px;font-weight:600}.daily-trend-svg{width:100%;height:196px;display:block;overflow:visible}.chart-grid-line{stroke:var(--color-line,#e2e8f0);stroke-dasharray:4 4;stroke-width:1px}.chart-area-fill{transition:opacity .2s}.chart-line-path{filter:drop-shadow(0 2px 4px #16a34a2e)}.chart-hover-line{stroke:#15803d;stroke-width:1.5px;stroke-dasharray:3 3;opacity:.55}.chart-point-marker{transition:r .15s,stroke-width .15s}.chart-interactive-column{cursor:pointer}.chart-axis-tick-text{fill:var(--color-sage-muted,#64748b);font-size:11px;font-weight:500}.chart-x-label{fill:var(--color-sage-muted,#64748b);font-size:12px;font-weight:600;transition:fill .15s,font-weight .15s}.chart-x-label--active{fill:#15803d;font-weight:800}.chart-hover-tooltip{pointer-events:none;background:var(--color-evergreen-ink,#0f172a);color:#fff;z-index:20;white-space:nowrap;border-radius:8px;min-width:130px;padding:8px 12px;animation:.15s ease-out tooltipFadeIn;position:absolute;transform:translate(-50%,-115%);box-shadow:0 10px 25px -5px #0000004d,0 8px 10px -6px #0003}.chart-hover-tooltip--start{animation:.15s ease-out tooltipFadeInStart;transform:translateY(-115%)}.chart-hover-tooltip--end{animation:.15s ease-out tooltipFadeInEnd;transform:translate(-100%,-115%)}.chart-hover-tooltip:after{content:"";border-style:solid;border-width:5px 5px 0;border-color:var(--color-evergreen-ink,#0f172a) transparent transparent;position:absolute;bottom:-5px;left:50%;transform:translate(-50%)}.chart-hover-tooltip--start:after{left:14px;transform:none}.chart-hover-tooltip--end:after{left:auto;right:14px;transform:none}.tooltip-header{border-bottom:1px solid #ffffff26;justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px;padding-bottom:4px;font-size:11px;display:flex}.tooltip-day{color:#86efac;font-weight:700}.tooltip-date{opacity:.75;font-size:10px}.tooltip-body{flex-direction:column;gap:3px;display:flex}.tooltip-row{justify-content:space-between;align-items:center;gap:12px;font-size:11px;display:flex}.tooltip-label{color:#cbd5e1}.tooltip-val{color:#fff;font-weight:700}.tooltip-val--green{color:#4ade80}.chart-bar-label{color:var(--color-sage-muted);font-size:11px;font-weight:600}.reports-analytics-card--donut{flex-direction:column;display:flex}.reports-donut-summary{align-items:center;gap:var(--space-4);padding:var(--space-1) 0;flex:1;width:100%;display:flex}.reports-donut-visual{flex:0 0 152px;width:152px;height:152px;position:relative}.donut-svg{filter:drop-shadow(0 4px 12px #16a34a1a);display:block}.donut-segment{transition:opacity .15s,stroke-width .15s}.donut-segment--active{stroke-width:20px;filter:drop-shadow(0 0 6px #00000026)}.donut-circle{background:var(--color-paper);width:96px;height:96px;box-shadow:inset 0 0 0 1px var(--color-line);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:1px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.donut-center-value{color:var(--color-evergreen-ink);font-size:1.35rem;font-weight:800;line-height:1}.donut-center-label{color:var(--color-sage-muted);text-transform:uppercase;letter-spacing:.04em;font-size:10px;font-weight:600}.donut-center-total{color:var(--color-sage-muted);margin-top:2px;font-size:9px}.reports-legend-list{gap:var(--space-2);flex-direction:column;flex:1;justify-content:center;min-width:0;display:flex}.legend-stat-row{border-radius:var(--radius-md);background:var(--color-sage-50);border:1px solid var(--color-line);cursor:default;flex-direction:column;gap:6px;padding:10px 12px;transition:background .15s,border-color .15s,box-shadow .15s;display:flex}.legend-stat-row--completed{border-left:3px solid #22c55e}.legend-stat-row--inProgress{border-left:3px solid #f59e0b}.legend-stat-row--notStarted{border-left:3px solid #94a3b8}.legend-stat-row--active{background:var(--color-paper);border-color:var(--color-line-strong,#cbd5e1);box-shadow:var(--shadow-card)}.legend-stat-top{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.legend-stat-label{font-size:var(--text-body-sm);color:var(--color-evergreen-ink);align-items:center;gap:8px;font-weight:600;display:flex}.legend-stat-value{font-size:var(--text-body-sm);color:var(--color-evergreen-ink);white-space:nowrap;font-weight:800}.legend-stat-value span{color:var(--color-sage-muted);font-weight:600}.legend-stat-track{background:var(--color-paper);border-radius:var(--radius-pill);border:1px solid var(--color-line);height:6px;overflow:hidden}.legend-stat-fill{border-radius:var(--radius-pill);height:100%;transition:width .3s}.legend-item{align-items:center;gap:var(--space-2);font-size:var(--text-body-sm);border-radius:var(--radius-md);cursor:default;margin:-4px -6px;padding:4px 6px;transition:background .15s;display:flex}.legend-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.legend-dot--green{background:#22c55e}.legend-dot--amber{background:#f59e0b}.legend-dot--slate{background:#94a3b8}.legend-name{color:var(--color-sage-muted);min-width:85px}.legend-val{color:var(--color-evergreen-ink);font-weight:700}.legend-item--active{background:var(--color-sage-50)}.donut-empty-note{margin:var(--space-2) 0 0;color:var(--color-sage-muted);font-size:11px;font-style:italic}@media (width<=480px){.reports-donut-summary{flex-direction:column;align-items:stretch}.reports-donut-visual{align-self:center}.reports-legend-list{width:100%}}.reports-top-videos-list{gap:var(--space-3);flex-direction:column;display:flex}.top-video-item{align-items:center;gap:var(--space-3);display:flex}.top-video-rank{font-size:var(--text-body-sm);color:var(--color-forest);flex-shrink:0;width:24px;font-weight:800}.top-video-details{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.top-video-title-row{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.top-video-title{font-size:var(--text-body-sm);color:var(--color-evergreen-ink);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.top-video-badge{background:var(--color-forest-soft);color:var(--color-forest-800);border-radius:var(--radius-pill);flex-shrink:0;padding:2px 6px;font-size:10px;font-weight:600}.top-video-progress-row{align-items:center;gap:var(--space-3);display:flex}.top-video-track{background:var(--color-sage-50);border-radius:var(--radius-pill);flex:1;height:6px;overflow:hidden}.top-video-fill{background:var(--color-forest);border-radius:var(--radius-pill);height:100%}.top-video-meta{color:var(--color-sage-muted);white-space:nowrap;font-size:11px}.reports-grade-activity-list{gap:var(--space-4);flex-direction:column;display:flex}.grade-activity-item{flex-direction:column;gap:6px;display:flex}.grade-activity-header{font-size:var(--text-body-sm);justify-content:space-between;align-items:center;display:flex}.grade-activity-header strong{color:var(--color-evergreen-ink)}.grade-activity-header span{color:var(--color-sage-muted);font-size:11px}.grade-activity-track{background:var(--color-sage-50);border-radius:var(--radius-pill);height:8px;overflow:hidden}.grade-activity-fill{border-radius:var(--radius-pill);background:linear-gradient(90deg,#0284c7,#22c55e);height:100%}.grade-activity-footer{color:var(--color-sage-muted);justify-content:space-between;align-items:center;font-size:11px;display:flex}.reports-unified-module{background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);box-sizing:border-box;flex-direction:column;width:100%;display:flex;overflow:hidden}.reports-unified-module .reports-filter-bar{gap:var(--space-3);border:none;border-bottom:1px solid var(--color-line);box-shadow:none;box-sizing:border-box;background:0 0;border-radius:0;flex-direction:column;width:100%;padding:14px 18px;display:flex}.reports-filter-bar{gap:var(--space-3);background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);box-sizing:border-box;flex-direction:column;width:100%;min-width:0;max-width:100%;padding:14px 18px;display:flex;overflow:hidden}.reports-filter-bar__top{justify-content:space-between;align-items:center;gap:var(--space-3);box-sizing:border-box;flex-wrap:wrap;width:100%;display:flex}.reports-filter-search{flex:280px;min-width:200px;max-width:100%;position:relative}.reports-filter-search .search-icon{left:var(--space-3);width:16px;height:16px;color:var(--color-sage-muted);pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.reports-filter-search input{width:100%;height:36px;padding:0 var(--space-3) 0 36px;font-size:var(--text-body-sm);color:var(--color-evergreen-ink);background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-md);box-sizing:border-box;transition:border-color var(--transition-fast), box-shadow var(--transition-fast);outline:none}.reports-filter-search input:focus{border-color:var(--color-forest);box-shadow:0 0 0 2px var(--color-forest-soft)}.reports-filter-actions{align-items:center;gap:var(--space-3);flex-wrap:wrap;flex-shrink:0;display:flex}@media (width<=640px){.reports-filter-actions{justify-content:flex-start;width:100%}.reports-export-dropdown,.reports-export-btn,.reports-reset-btn{flex:1;min-width:0}}.reports-export-dropdown{position:relative}.reports-export-btn{background:var(--color-forest)!important;border:1px solid var(--color-forest)!important;color:#fff!important;height:36px!important;padding:0 var(--space-4)!important;white-space:nowrap!important;border-radius:var(--radius-md)!important;font-weight:700!important;box-shadow:0 2px 6px #1e4d3b33!important}.reports-export-btn:hover{background:var(--color-forest-600)!important;border-color:var(--color-forest-600)!important}.reports-export-btn svg,.reports-reset-btn svg{width:16px;height:16px}.reports-reset-btn{background:var(--color-paper)!important;border:1px solid var(--color-line)!important;color:var(--color-sage-muted)!important;height:36px!important;padding:0 var(--space-3)!important;white-space:nowrap!important;border-radius:var(--radius-md)!important;font-weight:600!important}.reports-reset-btn:hover{background:var(--color-sage-50)!important;color:var(--color-evergreen-ink)!important;border-color:var(--color-line-strong)!important}.reports-export-menu{background:var(--color-paper);border:1px solid var(--color-line-strong);border-radius:var(--radius-md);z-index:100;width:200px;padding:4px 0;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 10px 25px -5px #00000026}.reports-export-menu button{text-align:left;width:100%;font-size:var(--text-body-sm);color:var(--color-evergreen-ink);cursor:pointer;transition:background var(--transition-fast);background:0 0;border:none;padding:8px 14px}.reports-export-menu button:hover{background:var(--color-sage-50)}.reports-filter-bar__options{box-sizing:border-box;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 14px;width:100%;min-width:0;display:grid}@media (width>=1400px){.reports-filter-bar__options{grid-template-columns:repeat(7,1fr)}}@media (width<=1024px){.reports-filter-bar__options{grid-template-columns:repeat(4,1fr)}}@media (width<=768px){.reports-filter-bar__options{grid-template-columns:repeat(2,1fr)}}@media (width<=480px){.reports-filter-bar__options{grid-template-columns:1fr}}.reports-filter-select{flex-direction:column;gap:3px;min-width:0;display:flex}.reports-filter-select label{color:var(--color-sage-muted);text-transform:uppercase;letter-spacing:.03em;align-items:center;gap:4px;font-size:10.5px;font-weight:700;display:flex}.reports-filter-select label svg{width:12px;height:12px;color:var(--color-forest);flex-shrink:0}.reports-filter-select select,.reports-filter-select input[type=date]{height:34px;padding:0 var(--space-2);color:var(--color-evergreen-ink);background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-md);box-sizing:border-box;text-overflow:ellipsis;white-space:nowrap;width:100%;transition:border-color var(--transition-fast), background var(--transition-fast), opacity var(--transition-fast);outline:none;font-size:13px;overflow:hidden}.reports-filter-select select:focus,.reports-filter-select input[type=date]:focus{border-color:var(--color-forest);box-shadow:0 0 0 2px var(--color-forest-soft)}.reports-filter-select.is-disabled select,.reports-filter-select select:disabled{opacity:.6;background:var(--color-sage-50,#f8fafc);cursor:not-allowed;border-color:var(--color-line);color:var(--color-sage-muted)}.reports-filter-fixed-badge{height:34px;padding:0 var(--space-3);background:var(--color-forest-soft);border:1px solid var(--color-forest);border-radius:var(--radius-md);color:var(--color-forest-800);text-overflow:ellipsis;white-space:nowrap;box-sizing:border-box;align-items:center;font-size:13px;font-weight:600;display:flex;overflow:hidden}.reports-unified-module .reports-tabs-bar{align-items:center;gap:var(--space-2);border-bottom:1px solid var(--color-line);background:var(--color-sage-50,#f8fafc);overscroll-behavior-x:contain;box-sizing:border-box;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--color-line-strong) transparent;width:100%;max-width:100%;margin-bottom:0;padding:0 14px;display:flex;overflow-x:auto}.reports-unified-module .reports-tab-content{background:var(--color-paper)}.reports-tabs-bar{align-items:center;gap:var(--space-2);border-bottom:2px solid var(--color-line);margin-bottom:var(--space-4);overscroll-behavior-x:contain;box-sizing:border-box;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--color-line-strong) transparent;width:100%;max-width:100%;display:flex;overflow-x:auto}.reports-tabs-bar::-webkit-scrollbar{height:4px}.reports-tabs-bar::-webkit-scrollbar-thumb{background:var(--color-line-strong);border-radius:var(--radius-pill)}.reports-tab-btn{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);font-size:var(--text-body-sm);color:var(--color-sage-muted);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;background:0 0;border:none;border-bottom:3px solid #0000;flex-shrink:0;margin-bottom:-2px;font-weight:600;display:flex}.reports-tab-btn svg{flex-shrink:0;width:16px;height:16px}.reports-tab-btn:hover{color:var(--color-evergreen-ink)}.reports-tab-btn.is-active{color:var(--color-forest);border-bottom-color:var(--color-forest);font-weight:700}.reports-table-container{background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);box-sizing:border-box;width:100%;min-width:0;max-width:100%;overflow:hidden}.reports-table-scroll{overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--color-line-strong) transparent;width:100%;min-width:0;max-width:100%;display:block;overflow-x:auto}.reports-table-scroll::-webkit-scrollbar{height:8px}.reports-table-scroll::-webkit-scrollbar-track{background:var(--color-paper-warm);border-radius:var(--radius-pill)}.reports-table-scroll::-webkit-scrollbar-thumb{background:var(--color-line-strong);border-radius:var(--radius-pill)}.reports-table-scroll::-webkit-scrollbar-thumb:hover{background:var(--color-sage-muted)}.reports-table{border-collapse:collapse;text-align:left;width:100%;min-width:1050px;font-size:var(--text-body-sm);table-layout:auto}.reports-table th{z-index:10;background:var(--color-paper-warm);color:var(--color-sage-muted);font-family:var(--font-mono);text-transform:uppercase;border-bottom:1px solid var(--color-line);white-space:nowrap;padding:12px 16px;font-size:11px;font-weight:700;position:sticky;top:0}.reports-table td{border-bottom:1px solid var(--color-line);vertical-align:middle;color:var(--color-evergreen-ink);white-space:nowrap;padding:12px 16px}.reports-table th:first-child,.reports-table td:first-child{z-index:11;background:var(--color-paper);border-right:1px solid var(--color-line);position:sticky;left:0}.reports-table th:first-child{z-index:15;background:var(--color-paper-warm)}.reports-table tr:hover td,.reports-table tr:hover td:first-child{background:var(--color-sage-50)}.text-right{text-align:right}.table-user-cell{align-items:center;gap:var(--space-3);min-width:160px;display:flex}.table-user-avatar{background:var(--color-forest-soft);width:32px;height:32px;color:var(--color-forest-800);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:flex}.table-user-info{flex-direction:column;display:flex}.table-user-info .user-name{font-weight:600}.table-user-info .user-id{color:var(--color-sage-muted);font-size:11px}.table-school-cell,.table-class-cell,.table-week-cell,.table-schedule-cell{align-items:center;gap:var(--space-2);white-space:nowrap;display:flex}.cell-icon{width:15px;height:15px;color:var(--color-sage-muted);flex-shrink:0}.cell-code,.schedule-time{color:var(--color-sage-muted);font-size:11px}.div-pill{background:var(--color-sage-50);border-radius:var(--radius-sm);padding:2px 6px;font-size:11px;font-weight:600}.table-video-cell{align-items:center;gap:var(--space-3);min-width:240px;display:flex}.table-video-thumb{border-radius:var(--radius-sm);object-fit:cover;flex-shrink:0;width:48px;height:32px}.table-video-meta{flex-direction:column;min-width:0;display:flex}.table-video-meta .video-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.table-video-meta .video-duration{color:var(--color-sage-muted);font-size:11px}.table-progress-cell{flex-direction:column;gap:2px;min-width:140px;display:flex}.progress-bar-wrap{align-items:center;gap:var(--space-2);display:flex}.progress-bar-track{background:var(--color-sage-50);border-radius:var(--radius-pill);flex:1;height:6px;overflow:hidden}.progress-bar-fill{border-radius:var(--radius-pill);height:100%}.fill-complete{background:#22c55e}.fill-in-progress{background:#f59e0b}.progress-percent{font-size:11px;font-weight:700}.progress-time{color:var(--color-sage-muted);font-size:11px}.reports-status-badge{border-radius:var(--radius-pill);white-space:nowrap;align-items:center;gap:4px;padding:4px 8px;font-size:11px;font-weight:600;display:inline-flex}.reports-status-badge svg{flex-shrink:0;width:13px;height:13px}.reports-status-badge--completed{color:#15803d;background:#dcfce7;border:1px solid #bbf7d0}.reports-status-badge--in-progress{color:#b45309;background:#fef3c7;border:1px solid #fde68a}.reports-status-badge--not-started{background:var(--color-sage-50);color:var(--color-sage-muted);border:1px solid var(--color-line)}.table-view-count{align-items:center;gap:4px;font-weight:600;display:inline-flex}.table-view-count svg{width:14px;height:14px;color:var(--color-sage-muted)}.table-action-btn{background:var(--color-paper)!important;border:1px solid var(--color-line)!important;color:var(--color-forest)!important;white-space:nowrap!important;border-radius:var(--radius-md)!important;cursor:pointer!important;width:auto!important;height:32px!important;min-height:32px!important;transition:all var(--transition-fast)!important;justify-content:center!important;align-items:center!important;padding:0 12px!important;font-size:12px!important;font-weight:700!important;display:inline-flex!important;box-shadow:0 1px 2px #0000000d!important}.table-action-btn:hover{background:var(--color-forest-soft)!important;border-color:var(--color-forest)!important;color:var(--color-forest-800)!important;transform:translateY(-1px)!important}.reports-table-footer{padding:var(--space-3) var(--space-4);background:var(--color-paper-warm);border-top:1px solid var(--color-line);font-size:var(--text-body-sm);color:var(--color-sage-muted)}.reports-table-empty{padding:var(--space-8) var(--space-4);text-align:center;background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-lg)}.reports-table-empty .empty-icon{width:40px;height:40px;color:var(--color-sage-muted);margin-bottom:var(--space-3)}.sub-report-container{padding:var(--space-6);background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);gap:var(--space-5);box-sizing:border-box;flex-direction:column;width:100%;min-width:0;max-width:100%;display:flex}@media (width<=640px){.sub-report-container{padding:var(--space-4)}}.sub-report-header{flex-direction:column;gap:4px;display:flex}.sub-report-title{align-items:center;gap:var(--space-2);font-size:var(--text-heading-md);color:var(--color-evergreen-ink);font-weight:700;display:flex}.sub-report-title svg{width:20px;height:20px;color:var(--color-forest)}.sub-report-desc{font-size:var(--text-body-sm);color:var(--color-sage-muted)}.sub-report-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.sub-report-card{padding:var(--space-4);background:var(--color-paper-warm);border:1px solid var(--color-line);border-radius:var(--radius-md);flex-direction:column;gap:4px;display:flex}.sub-report-card .card-label{color:var(--color-sage-muted);text-transform:uppercase;font-size:11px;font-weight:700}.sub-report-card .card-val{font-size:var(--text-heading-md);color:var(--color-evergreen-ink);font-weight:800}.sub-report-card .card-sub{color:var(--color-sage-muted);font-size:11px}.text-green{color:#16a34a}.text-amber{color:#d97706}.sub-report-table-wrap{border:1px solid var(--color-line);border-radius:var(--radius-md);overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--color-line-strong) transparent;width:100%;min-width:0;max-width:100%;overflow-x:auto}.sub-report-table-wrap::-webkit-scrollbar{height:6px}.sub-report-table-wrap::-webkit-scrollbar-thumb{background:var(--color-line-strong);border-radius:var(--radius-pill)}.reports-modal-backdrop{z-index:2000;padding:var(--space-4);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:modalFadeIn var(--transition-base);background:#0c110e8c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.reports-modal{background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-lg);width:100%;max-width:720px;max-height:90vh;box-shadow:var(--shadow-panel);animation:modalSlideUp var(--transition-base);box-sizing:border-box;position:relative;overflow-y:auto}.reports-modal.reports-modal--wide{width:96vw!important;max-width:1400px!important}.reports-modal__header{padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--color-line);background:var(--color-paper-warm);justify-content:space-between;align-items:center;display:flex}.reports-modal__header-info{align-items:center;gap:var(--space-3);display:flex}.reports-modal__icon-badge{background:var(--color-forest-soft);width:40px;height:40px;color:var(--color-forest);border-radius:var(--radius-md);justify-content:center;align-items:center;display:flex}.reports-modal__header h2{font-size:var(--text-heading-md);color:var(--color-evergreen-ink);margin:0 0 2px;font-weight:700}.reports-modal__header p{font-size:var(--text-body-sm);color:var(--color-sage-muted);margin:0}.reports-modal__close-btn{width:32px;height:32px;color:var(--color-sage-muted);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;display:flex}.reports-modal__close-btn:hover{background:var(--color-sage-50);color:var(--color-evergreen-ink)}.reports-modal__body{padding:var(--space-6);gap:var(--space-5);flex-direction:column;display:flex}.reports-modal__section-grid{gap:var(--space-4);grid-template-columns:1fr 1fr;display:grid}@media (width<=640px){.reports-modal__section-grid{grid-template-columns:1fr}}.reports-modal__card{padding:var(--space-4);background:var(--color-paper-warm);border:1px solid var(--color-line);border-radius:var(--radius-md);gap:var(--space-3);flex-direction:column;display:flex}.reports-modal__card-title{align-items:center;gap:var(--space-2);font-size:var(--text-body-sm);color:var(--color-evergreen-ink);border-bottom:1px solid var(--color-line);padding-bottom:var(--space-2);font-weight:700;display:flex}.reports-modal__card-title svg{width:16px;height:16px;color:var(--color-forest)}.reports-modal__info-list{gap:var(--space-2);flex-direction:column;display:flex}.reports-modal__info-item{font-size:var(--text-body-sm);justify-content:space-between;align-items:center;display:flex}.info-label{color:var(--color-sage-muted)}.info-value{color:var(--color-evergreen-ink);align-items:center;gap:4px;display:flex}.info-value.strong{font-weight:700}.inline-icon{width:14px;height:14px;color:var(--color-sage-muted)}.reports-modal__video-row{align-items:center;gap:var(--space-3);display:flex}.reports-modal__video-thumb{border-radius:var(--radius-sm);object-fit:cover;width:72px;height:48px}.reports-modal__video-meta{font-size:var(--text-body-sm);flex-direction:column;gap:2px;display:flex}.reports-modal__video-meta strong{color:var(--color-evergreen-ink)}.reports-modal__video-meta span{color:var(--color-sage-muted);font-size:11px}.reports-modal__schedule-tag{color:var(--color-forest);align-items:center;gap:4px;font-weight:600;display:flex}.reports-modal__metrics-bar{gap:var(--space-3);padding:var(--space-4);background:var(--color-sage-50);border:1px solid var(--color-line);border-radius:var(--radius-md);grid-template-columns:repeat(4,1fr);display:grid}@media (width<=640px){.reports-modal__metrics-bar{grid-template-columns:repeat(2,1fr)}}.reports-metric-box{flex-direction:column;gap:4px;display:flex}.metric-box-label{color:var(--color-sage-muted);text-transform:uppercase;font-size:11px;font-weight:700}.metric-box-content{font-size:var(--text-body-sm);color:var(--color-evergreen-ink);align-items:center;gap:4px;display:flex}.reports-modal__progress-wrap{align-items:center;gap:var(--space-2);width:100%;display:flex}.reports-modal__progress-bar{background:var(--color-paper);border-radius:var(--radius-pill);border:1px solid var(--color-line);flex:1;height:8px;overflow:hidden}.reports-modal__progress-fill{height:100%}.reports-modal__timestamps{padding:var(--space-2) var(--space-4);background:var(--color-paper-warm);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;font-size:11px;display:flex}.timestamp-item{align-items:center;gap:var(--space-2);display:flex}.timestamp-label{color:var(--color-sage-muted)}.timestamp-val{color:var(--color-evergreen-ink);font-weight:600}.reports-modal__timeline-section{gap:var(--space-3);flex-direction:column;display:flex}.reports-modal__section-title{align-items:center;gap:var(--space-2);font-size:var(--text-body-sm);color:var(--color-evergreen-ink);font-weight:700;display:flex}.reports-modal__section-title svg{width:16px;height:16px;color:var(--color-forest)}.reports-timeline{gap:var(--space-3);padding-left:var(--space-4);border-left:2px solid var(--color-line);flex-direction:column;margin-left:12px;display:flex}.reports-timeline__item{align-items:flex-start;gap:var(--space-3);display:flex;position:relative}.reports-timeline__node{background:var(--color-paper);border:2px solid var(--color-forest);width:24px;height:24px;color:var(--color-forest);border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:2px;left:-29px}.type-complete .reports-timeline__node{color:#22c55e;background:#dcfce7;border-color:#22c55e}.type-play .reports-timeline__node{color:#0284c7;background:#e0f2fe;border-color:#0284c7}.reports-timeline__node svg{width:12px;height:12px}.reports-timeline__content{flex-direction:column;gap:2px;display:flex}.reports-timeline__header{align-items:center;gap:var(--space-3);font-size:var(--text-body-sm);display:flex}.reports-timeline__time{color:var(--color-sage-muted);min-width:65px;font-size:11px;font-weight:700}.reports-timeline__event{color:var(--color-evergreen-ink)}.reports-timeline__details{color:var(--color-sage-muted);font-size:11px}.reports-timeline__empty{font-size:var(--text-body-sm);color:var(--color-sage-muted);font-style:italic}.reports-modal__footer{padding:var(--space-4) var(--space-6);border-top:1px solid var(--color-line);background:var(--color-paper-warm);justify-content:flex-end;align-items:center;display:flex}@media (width<=1024px){.network-main.reports-main{padding:var(--space-5)}.reports-analytics-card{padding:var(--space-4)}}@media (width<=768px){.network-page.reports-page-shell{padding-bottom:calc(72px + env(safe-area-inset-bottom));grid-template-columns:minmax(0,1fr)}.network-main.reports-main{padding:var(--space-4);padding-bottom:calc(var(--space-6) + env(safe-area-inset-bottom))}.network-hero.reports-hero{align-items:flex-start;gap:var(--space-3);flex-direction:column}.reports-hero h1{font-size:var(--text-heading-xl)}.reports-hero__actions{width:100%}.reports-hero__actions .button{justify-content:center;width:100%}.reports-global-filters .reports-filter-bar,.reports-unified-module .reports-filter-bar{padding:12px}.reports-global-filters__header{padding:10px 12px}.reports-filter-bar__top{flex-direction:column;align-items:stretch}.reports-filter-search{flex:none;width:100%;min-width:0}.reports-filter-actions{gap:var(--space-2);flex:none;width:100%}.reports-filter-count{width:100%}.reports-export-dropdown,.reports-export-btn,.reports-reset-btn{flex:1 1 0;min-width:0}.reports-export-btn,.reports-reset-btn{width:100%!important;padding-inline:var(--space-2)!important}.reports-export-menu{width:100%;min-width:0;left:0;right:auto}.reports-export-menu button{white-space:normal;line-height:1.35}.reports-tabs-bar,.reports-unified-module .reports-tabs-bar{gap:0;padding-inline:10px}.reports-tab-btn{padding:12px 10px;font-size:12.5px}.reports-analytics-card__header{margin-bottom:var(--space-3);flex-direction:column;align-items:flex-start;gap:4px}.daily-trend-y-axis,.daily-trend-chart-container{height:170px;min-height:170px}.daily-trend-svg{height:170px}.chart-hover-tooltip{max-width:62vw}.reports-modal-backdrop{padding:var(--space-2)}.reports-modal,.reports-modal.reports-modal--wide{max-height:94vh;width:100%!important;max-width:100%!important}.reports-modal__header{align-items:flex-start;gap:var(--space-3);padding:var(--space-4)}.reports-modal__body{padding:var(--space-4);gap:var(--space-4)}.reports-modal__footer{padding:var(--space-3) var(--space-4)}.sub-report-table-wrap .reports-table{min-width:760px}}@media (width<=560px){.network-main.reports-main{padding:var(--space-3)}.reports-hero h1{font-size:26px;line-height:1.15}.reports-hero p{font-size:var(--text-body-sm)}.reports-kpi-grid{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr))}.reports-kpi-card{min-height:0;padding:var(--space-3)}.reports-kpi-card__top{align-items:flex-start;margin-bottom:6px}.reports-kpi-card__label{letter-spacing:.02em;font-size:10px}.reports-kpi-card__icon{width:26px;height:26px}.reports-kpi-card__icon svg{width:14px;height:14px}.reports-kpi-card__value{font-size:19px}.reports-kpi-card__sub{font-size:10px;line-height:1.3}.reports-analytics-card{padding:var(--space-3)}.reports-donut-summary{align-items:stretch;gap:var(--space-3);flex-direction:column}.reports-donut-visual{flex:none;align-self:center;width:132px;height:132px}.donut-circle{width:84px;height:84px}.reports-legend-list{width:100%}.legend-stat-row{padding:8px 10px}.reports-table-empty{padding:var(--space-6) var(--space-4)}.sub-report-table-wrap .reports-table{min-width:640px}.sub-report-title{font-size:var(--text-body-md)}}@media (width<=400px){.reports-kpi-grid{grid-template-columns:minmax(0,1fr)}.reports-kpi-card__label{font-size:10.5px}.reports-hero h1{font-size:23px}.reports-tab-btn{padding:11px 8px;font-size:12px}}.app-shell{background:var(--color-chalk-paper);width:100%;min-height:100vh;padding:0;display:block}.app-shell section{gap:var(--space-3);text-align:center;display:grid}.app-shell h1,.app-shell p{margin:0}@media (width<=520px){.app-shell{padding:0}}
