@import"https://fonts.googleapis.com/css2?family=Comfortaa:wght@300;400;500;600;700&display=swap";.teach-page{font-family:Comfortaa,system-ui,sans-serif;width:100%;margin:0;background:transparent;border:none;border-radius:0;box-shadow:none;overflow:visible}.teach-content{padding:0;background:transparent}.lessons-container{width:100%;margin:0;background:transparent}#lessons-container{margin-top:20px}.lesson,.header-row{display:flex;box-sizing:border-box}.loading-spinner-small{width:12px;height:12px;border:2px solid #f3f3f3;border-top:2px solid #000000;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.preview-lesson{opacity:.8;border:2px dashed #d1d5db!important;background:linear-gradient(135deg,#f9fafb,#f3f4f6)!important}.preview-lesson .lesson-title{color:#6b7280!important}.preview-lesson .lesson-type-badge{background:#e5e7eb!important;color:#6b7280!important}.delete-confirmation-overlay{position:absolute;inset:0;background-color:#ef4444;border-radius:1rem;display:flex;align-items:center;justify-content:center;z-index:100;pointer-events:auto;width:100%;height:100%}.delete-confirmation-content{text-align:center;color:#fff}.delete-confirmation-text{font-size:1.5rem;font-weight:700;margin-bottom:16px;color:#fff}.delete-confirmation-buttons{display:flex;gap:12px;justify-content:center}.delete-confirm-btn{background-color:#991b1b;color:#fff;border:2px solid #7f1d1d;padding:8px 16px;border-radius:8px;font-weight:700;cursor:pointer;transition:all .2s ease-in-out;box-shadow:0 2px 4px #0000004d}.delete-confirm-btn:hover{background-color:#7f1d1d;border-color:#450a0a;transform:translateY(-1px);box-shadow:0 4px 8px #0006}.delete-cancel-btn{background-color:#fff3;color:#fff;border:2px solid white;padding:8px 16px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s ease-in-out}.delete-cancel-btn:hover{background-color:#fff;color:#dc2626}.delete-confirm-btn:disabled{background-color:#6b7280;border-color:#4b5563;cursor:not-allowed;opacity:.7;transform:none;box-shadow:none}.delete-confirm-btn:disabled:hover{background-color:#6b7280;border-color:#4b5563;transform:none;box-shadow:none}.delete-cancel-btn:disabled{background-color:#ffffff1a;color:#ffffff80;border-color:#ffffff4d;cursor:not-allowed;opacity:.7}.delete-cancel-btn:disabled:hover{background-color:#ffffff1a;color:#ffffff80}.lesson-container{position:relative;display:flex;align-items:center;margin-bottom:12px;gap:16px}.lesson{display:flex;flex-direction:row;align-items:center;text-align:center;margin:auto;justify-content:center;width:100%;box-sizing:border-box;background:#fff;border-radius:1rem;border:1px solid #e5e7eb;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;overflow:hidden;padding:16px;text-decoration:none;transition:all .2s ease-in-out}.lesson:hover{transform:translateY(-2px);box-shadow:0 10px 25px #0000001a}.dark .lesson{background:#1f2937;border-color:#374151;box-shadow:0 8px 24px #00000059}.dark .lesson:hover{box-shadow:0 12px 28px #00000073}.lesson.clickable-lesson:hover{transform:translateY(-2px);box-shadow:0 10px 25px #0000001a;background-color:#f8fafc}.lesson.current-lesson{background-color:#fef3c7;border-color:#f59e0b;box-shadow:0 0 20px #f59e0b4d}.lesson.upcoming-lesson{background-color:#fff;border-color:#e5e7eb}.lesson.past-unsubmitted{background-color:#fce7f3!important;border-color:#f9a8d4}.lesson.past-unsubmitted:hover{background-color:#fbcfe8!important;border-color:#f472b6;transform:translateY(-2px);box-shadow:0 10px 25px #0000001a}.lesson-left-column{flex:0 0 20%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:0 12px;gap:6px}.lesson-avatar-container{margin:0;padding:0;display:flex;align-items:center;justify-content:center}.teacher-avatar{width:70px;height:70px;border-radius:50%;-o-object-fit:cover;object-fit:cover;border:2px solid #e5e7eb;box-shadow:0 2px 4px #0000001a;margin:0;padding:0;display:block}.lesson-teacher-name{color:#374151;font-weight:500;font-size:.875rem;text-align:center;line-height:1;margin:0;padding:0}.dark .lesson-teacher-name{color:#e5e7eb}.lesson-middle-column{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:0 16px;gap:6px}.lesson-title{color:#1f2937;font-weight:700;font-size:1.375rem;margin-bottom:0;line-height:1.2;text-align:center}.dark .lesson-title{color:#f3f4f6}.lesson-type-badge{background:#f3f4f6;color:#374151;padding:4px 12px;border-radius:20px;font-size:.75rem;font-weight:600;text-align:center;border:1px solid #d1d5db;align-self:center}.lesson.type-speaking .lesson-type-badge{background:linear-gradient(135deg,#fef3c7,#fde68a);border-color:#f59e0b;color:#92400e}.lesson.type-grammar .lesson-type-badge{background:linear-gradient(135deg,#dbeafe,#bfdbfe);border-color:#3b82f6;color:#1e40af}.lesson.type-pronunciation .lesson-type-badge{background:linear-gradient(135deg,#f3e8ff,#e9d5ff);border-color:#8b5cf6;color:#6b21a8}.lesson.type-vocabulary .lesson-type-badge{background:linear-gradient(135deg,#dcfce7,#bbf7d0);border-color:#10b981;color:#065f46}.lesson.type-individual .lesson-type-badge{background:linear-gradient(135deg,#fee2e2,#fecaca);border-color:#ef4444;color:#991b1b}.lesson.type-meetup .lesson-type-badge{background:linear-gradient(135deg,#fce7f3,#fbcfe8);border-color:#ec4899;color:#9f1239}.lesson-student-badge{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#991b1b;padding:4px 12px;border-radius:20px;font-size:.75rem;font-weight:600;text-align:center;border:1px solid #ef4444;align-self:center}.lesson-right-column{flex:0 0 20%;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:6px}.lesson-actions{display:flex;flex-direction:column;align-items:center;gap:4px;flex-shrink:0}.lesson-action-btn{background:none;border:none;cursor:pointer;padding:6px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s ease-in-out;width:28px;height:28px}.lesson-action-btn:hover{background-color:#f3f4f6;transform:scale(1.1)}.dark .lesson-action-btn:hover{background-color:#374151}.lesson-action-btn:active{transform:scale(.95)}.lesson-action-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.lesson-action-btn:disabled:hover{background-color:transparent;transform:none}.add-teacher-btn{color:#000}.add-teacher-btn:hover{background-color:#f0f9ff}.remove-teacher-btn{color:#000}.edit-lesson-btn{color:#3b82f6}.edit-lesson-btn:hover{background-color:#eff6ff}.remove-teacher-btn:hover{background-color:#fef2f2}.delete-lesson-btn{background:none;border:none;color:#ef4444;cursor:pointer;padding:6px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s ease-in-out;width:28px;height:28px}.delete-lesson-btn:hover{background-color:#fef2f2;color:#dc2626;transform:scale(1.1)}.delete-lesson-btn:active{transform:scale(.95)}.lesson-time{font-weight:700;color:#1f2937;font-size:1.375rem;margin-bottom:0}.dark .lesson-time{color:#e5e7eb}.lesson-date{color:#6b7280;font-size:.875rem;line-height:1.2}.dark .lesson-date{color:#cbd5e1}.lesson div{align-items:center;text-align:center;margin:auto;justify-content:center}@media(max-width:767px){.lesson{flex-direction:column;padding:12px;gap:8px}.lesson-left-column,.lesson-middle-column,.lesson-right-column{flex:none;width:100%;padding:0}.teacher-avatar{width:50px;height:50px}.lesson-title,.lesson-time{font-size:1.125rem}}.teach-filters-container{position:relative;z-index:10;margin:0 auto;max-width:-moz-fit-content;max-width:fit-content;display:flex;flex-direction:column;align-items:center;gap:12px}@media(min-width:768px){.teach-filters-container{max-width:600px;width:100%;flex-direction:column}.teach-filters-floating-bar{padding:12px 24px;gap:4px}.teach-filters-icons{gap:4px}.teach-filter-selected-value{flex:2;min-width:200px}}.teach-filters-floating-bar{background:#ffffffe6;backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.3);border-radius:50px;padding:8px 16px;box-shadow:0 8px 32px #0000001a;transition:all .3s ease;display:flex;align-items:center;gap:8px;width:100%;max-width:600px;min-width:400px;flex-shrink:0}.teach-filters-floating-bar:hover{box-shadow:0 12px 40px #00000026;transform:translateY(-2px)}.teach-filters-icons{display:flex;gap:8px;align-items:center;justify-content:center;flex-shrink:0}.teach-filter-icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;background:transparent;border:none;border-radius:50%;color:#6b7280;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;flex-shrink:0}.teach-filter-icon .icon-circle{display:flex;align-items:center;justify-content:center;width:100%;height:100%;border-radius:50%;background:transparent;transition:all .3s cubic-bezier(.4,0,.2,1)}.teach-filter-icon:hover{color:#3b82f6;transform:scale(1.05)}.teach-filter-icon.active{color:#fff;background:#3b82f6;transform:scale(1.05);box-shadow:0 4px 20px #3b82f666}.teach-filter-icon.has-filter:not(.active){color:#3b82f6}.teach-filter-icon.default-selected:not(.active){color:#3b82f6}.teach-filter-icon.default-selected .icon-circle{background:#3b82f61a;border:1px solid rgba(59,130,246,.3)}.teach-filter-selected-value{display:flex;align-items:center;background:#e0edff;padding:8px 12px;border-radius:20px;border:1px solid rgba(59,130,246,.3);flex:2;min-width:200px;margin:0;position:relative}.teach-filter-value-text{font-size:.75rem;font-weight:500;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%;text-align:center}.teach-filter-value-text.active-filter{color:#fff;font-weight:600}.teach-filter-default-value{color:#6b7280;font-weight:400}.teach-filter-selected-value:has(.teach-filter-default-value){background:#3b82f61a;border-color:#3b82f633}.teach-filters-shared-area{display:none;flex-direction:column;min-width:0;margin:0;width:100%}.teach-filters-shared-area.active{display:flex;align-items:stretch;background:var(--slab-frame-bg);border:1px solid var(--slab-frame-border);border-radius:var(--shell-liquid-slab-radius);box-shadow:var(--slab-frame-shadow-soft);padding:.125rem;min-height:2.5rem}.dark .teach-filters-shared-area.active{background:var(--slab-frame-bg);border-color:var(--slab-frame-border)}.teach-filter-dropdown{position:relative;width:100%;max-height:12rem;overflow-y:auto;-ms-overflow-style:none;scrollbar-width:none;border-radius:var(--shell-liquid-slab-radius)}.teach-filter-dropdown::-webkit-scrollbar{width:0;height:0;display:none}.teach-filter-options{padding:.125rem}.teach-filter-option{display:flex;align-items:center;justify-content:center;padding:.5rem .75rem;cursor:pointer;transition:background-color .15s ease,color .15s ease,border-color .15s ease,box-shadow .15s ease;border:1px solid transparent;background:transparent;width:100%;text-align:center;font-size:.8125rem;font-weight:500;color:rgb(var(--liquid-foreground-rgb) / .82);border-radius:calc(var(--shell-liquid-slab-radius) - 4px);outline:none}.dark .teach-filter-option{color:rgb(var(--liquid-foreground-rgb) / .86)}.teach-filter-option:hover{border-color:var(--slab-item-hover-border);background-color:var(--slab-item-hover-bg);box-shadow:var(--slab-item-hover-shadow-soft)}.dark .teach-filter-option:hover{border-color:var(--slab-item-hover-border);background-color:var(--slab-item-hover-bg)}.teach-filter-option.selected{border-color:var(--shell-surface-border-light);background-color:#ffffff24;background-image:none;box-shadow:inset 0 -1px 0 var(--shell-surface-rim-bottom-light),0 0 0 1px var(--shell-surface-contour-light);color:rgb(var(--liquid-foreground-rgb) / var(--liquid-foreground-active-alpha));text-shadow:var(--liquid-foreground-shadow)}.dark .teach-filter-option.selected{border-color:var(--shell-surface-border-dark);background-color:#0f172a2e;background-image:none;box-shadow:inset 0 -1px 0 var(--shell-surface-rim-bottom-dark),0 0 0 1px var(--shell-surface-contour-dark);color:rgb(var(--liquid-foreground-rgb) / var(--liquid-foreground-active-alpha))}.teach-filter-option.disabled{color:#9ca3af;cursor:not-allowed;font-style:italic}.dark .teach-filter-option.disabled{color:#6b7280}.teach-filter-option.with-avatar{justify-content:flex-start;gap:.5rem;padding-left:.75rem}.teach-filter-teacher-avatar{width:1.5rem;height:1.5rem;border-radius:50%;-o-object-fit:cover;object-fit:cover;border:1px solid rgb(229 231 235);flex-shrink:0}.dark .teach-filter-teacher-avatar{border-color:#4b5563}.teach-filter-input-container{position:relative;width:100%;display:flex;align-items:center;padding:.5rem .75rem;border:1px solid transparent;border-radius:calc(var(--shell-liquid-slab-radius) - 4px);background:transparent}.teach-filter-topic-input{background:transparent;border:none;color:#111827;font-size:.875rem;font-weight:500;outline:none;width:100%;padding:0;margin:0;text-align:left}.dark .teach-filter-topic-input{color:#f3f4f6}.teach-filter-topic-input::-moz-placeholder{color:#9ca3af}.teach-filter-topic-input::placeholder{color:#9ca3af}.dark .teach-filter-topic-input::-moz-placeholder{color:#6b7280}.dark .teach-filter-topic-input::placeholder{color:#6b7280}.teach-filter-clear-input{background:transparent;border:none;color:#6b7280;cursor:pointer;padding:.25rem;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-left:.5rem;transition:all .15s ease;flex-shrink:0}.teach-filter-clear-input:hover,.dark .teach-filter-clear-input:hover{background:var(--slab-item-hover-bg);color:rgb(var(--liquid-foreground-rgb) / .92)}.teach-filter-date-container{position:relative;width:100%;display:flex;flex-direction:column;padding:.5rem .75rem;gap:.5rem;border:1px solid transparent;border-radius:calc(var(--shell-liquid-slab-radius) - 4px);background:transparent}.teach-filter-date-quick-options{display:flex;gap:.25rem;flex-wrap:wrap}.teach-filter-date-quick-btn{padding:.25rem .5rem;border:1px solid transparent;background:transparent;border-radius:calc(var(--shell-liquid-slab-radius) - 6px);font-size:.75rem;font-weight:500;color:rgb(var(--liquid-foreground-rgb) / .82);cursor:pointer;transition:all .15s ease;white-space:nowrap}.dark .teach-filter-date-quick-btn{border-color:transparent;color:rgb(var(--liquid-foreground-rgb) / .86)}.teach-filter-date-quick-btn:hover{border-color:var(--slab-item-hover-border);background:var(--slab-item-hover-bg);box-shadow:var(--slab-item-hover-shadow-soft)}.dark .teach-filter-date-quick-btn:hover{background:var(--slab-item-hover-bg)}.teach-filter-date-quick-btn.selected{border-color:var(--slab-item-selected-border);background:var(--slab-item-selected-bg);box-shadow:var(--slab-item-selected-shadow-soft);color:rgb(var(--liquid-foreground-rgb) / .98)}.dark .teach-filter-date-quick-btn.selected{background:var(--slab-item-selected-bg);color:rgb(var(--liquid-foreground-rgb) / .98)}.teach-filter-date-range-wrapper{display:flex;flex-direction:column;align-items:stretch;gap:.5rem;width:100%}.teach-filter-date-input-group{display:flex;flex-direction:column;gap:.25rem;flex:1;min-width:0}.teach-filter-date-label{font-size:.6875rem;font-weight:500;color:#6b7280;text-align:left}.dark .teach-filter-date-label{color:#9ca3af}.teach-filter-date-input{background:var(--slab-item-hover-bg);border:1px solid var(--slab-item-hover-border);color:#111827;font-size:.75rem;font-weight:500;outline:none;width:100%;padding:.25rem .5rem;margin:0;border-radius:calc(var(--shell-liquid-slab-radius) - 6px);text-align:left;flex:1;min-width:0}.dark .teach-filter-date-input{background:var(--slab-item-hover-bg);border-color:var(--slab-item-hover-border);color:#f3f4f6}.teach-filter-date-input:focus{border-color:var(--slab-item-selected-border);box-shadow:0 0 0 1px var(--slab-item-selected-border)}.teach-filter-date-input::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.6}.teach-filter-date-input::-webkit-calendar-picker-indicator:hover{opacity:1}.teach-filter-clear-date{background:transparent;border:none;color:#6b7280;cursor:pointer;padding:.25rem;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .15s ease;flex-shrink:0}.teach-filter-clear-date:hover{background:#f3f4f6;color:#374151}.dark .teach-filter-clear-date:hover{background:#37414f;color:#d1d5db}.teach-filters-chips{display:flex;gap:8px;justify-content:center;align-items:center;margin-top:8px;flex-wrap:wrap;width:100%;z-index:10;animation:slideDown .3s ease-out;position:relative}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.teach-filter-chip{display:flex;align-items:center;gap:6px;padding:8px 12px;background:#3b82f6f2;backdrop-filter:blur(10px);color:#fff;border-radius:20px;font-size:.75rem;font-weight:500;box-shadow:0 4px 20px #3b82f64d;animation:floatIn .3s ease-out;white-space:nowrap;flex-shrink:0}@keyframes floatIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.teach-filter-chip-remove{cursor:pointer;padding:2px;border-radius:50%;transition:background-color .2s ease;display:flex;align-items:center;justify-content:center;width:16px;height:16px;background:transparent;border:none;color:#fff}.teach-filter-chip-remove:hover{background:#fff3}.teach-filter-clear-all{display:flex;align-items:center;gap:6px;padding:8px 16px;background:#ef4444;color:#fff;border:1px solid #dc2626;border-radius:.5rem;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .2s ease-in-out}.teach-filter-clear-all:hover{background:#dc2626;transform:translateY(-1px);box-shadow:0 4px 12px #ef44444d}@media(max-width:768px){.teach-filters-container{top:10px;margin:0 16px 16px;max-width:calc(100% - 32px);flex-direction:column;gap:8px}.teach-filters-floating-bar{flex-direction:column;gap:12px;padding:12px 16px;min-width:0;max-width:100%}.teach-filters-icons{gap:6px;justify-content:center}.teach-filter-icon{width:40px;height:40px}.teach-filters-shared-area.active{align-self:stretch;flex:1;width:100%;min-width:0}.teach-filters-chips{margin-top:8px;max-width:100%}}@media(max-width:480px){.teach-filters-container{margin:0 8px 16px;max-width:calc(100% - 16px)}.teach-filters-icons{gap:4px;justify-content:center}.teach-filter-icon{width:36px;height:36px}}
