*{box-sizing:border-box;padding:0}*,body{margin:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f6fa;font-family:Nunito Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:#f1f1f1}::-webkit-scrollbar-thumb{background:#888;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#555}.sidebar{background-color:#fff;border-right:1px solid #e5e5e5;display:flex;flex-direction:column;height:100vh;overflow-y:auto;position:relative;width:240px}.sidebar-logo{border-bottom:1px solid #f0f0f0;padding:30px 20px}.logo-text{font-family:Nunito Sans,sans-serif;font-size:24px;font-weight:700;letter-spacing:-.5px}.logo-cr{color:#ffc107}.logo-m{color:#202224}.sidebar-menu{display:flex;flex-direction:column;padding:10px 0}.sidebar-item{align-items:center;color:#202224;cursor:pointer;display:flex;font-size:14px;font-weight:600;letter-spacing:.3px;padding:13px 20px;position:relative;text-decoration:none;transition:all .2s ease}.sidebar-item:hover{background-color:#f9f9f9}.sidebar-item.active{background-color:#ffc107;border-radius:6px;color:#fff;margin:0 12px;padding-left:20px}.sidebar-item.active:before{background-color:#ffc107;border-radius:0 4px 4px 0;bottom:0;content:"";left:-12px;position:absolute;top:0;width:4px}.sidebar-icon{align-items:center;display:flex;flex-shrink:0;height:20px;justify-content:center;margin-right:12px;width:20px}.sidebar-icon svg{stroke:currentColor;height:20px;width:20px}.sidebar-item.active .sidebar-icon svg{stroke:#fff}.sidebar-item.active .sidebar-icon svg [fill=currentColor]{fill:#fff}.sidebar-label{flex:1 1}.sidebar-divider{background-color:#e8e8e8;height:1px;margin:10px 20px}.sidebar-section-title{color:#202224;font-size:12px;font-weight:700;letter-spacing:.26px;opacity:.6;padding:20px 20px 10px}.sidebar-logout{align-items:center;background:none;border:none;color:#202224;cursor:pointer;display:flex;font-family:inherit;font-size:14px;font-weight:600;letter-spacing:.3px;margin-top:auto;padding:13px 20px;text-align:left;transition:all .2s ease;width:100%}.sidebar-logout:hover{background-color:#f9f9f9}.topbar{background-color:#fff;border-bottom:1px solid #e5e5e5;height:70px;justify-content:space-between;padding:0 32px}.topbar,.topbar-search{align-items:center;display:flex}.topbar-search{background-color:#f5f6fa;border:.6px solid #d5d5d5;border-radius:19px;padding:10px 16px;width:400px}.search-icon{align-items:center;display:flex;justify-content:center;margin-right:10px;opacity:.5}.search-icon svg{stroke:#202224;height:20px;width:20px}.search-input{background:#0000;border:none;color:#202224;font-family:Nunito Sans,sans-serif;outline:none}.search-input::placeholder{color:#202224;opacity:.5}.topbar-right{align-items:center;display:flex;gap:24px}.language-selector{align-items:center;cursor:pointer;display:flex;gap:8px}.flag-icon{border-radius:5px;height:18px;object-fit:cover;width:27px}.language-text{color:#646464;font-size:14px;font-weight:600}.dropdown-icon{align-items:center;display:flex;justify-content:center}.dropdown-icon svg{stroke:#646464;height:8px;width:12px}.notification-icon{align-items:center;cursor:pointer;display:flex;justify-content:center;position:relative}.notification-icon svg{stroke:#646464;height:22px;width:22px}.notification-badge{align-items:center;background-color:#ff6b6b;border-radius:50%;color:#fff;display:flex;font-size:12px;font-weight:700;height:18px;justify-content:center;position:absolute;right:-8px;top:-5px;width:18px}.profile-section{align-items:center;cursor:pointer;display:flex;gap:12px}.profile-image{border-radius:50%;height:44px;object-fit:cover;width:44px}.profile-info{display:flex;flex-direction:column}.profile-name{color:#202224;font-size:14px;font-weight:700}.profile-role{color:#565656;font-size:12px;font-weight:600}.layout{background-color:#fff;display:flex;height:100vh;width:100%}.main-content{background-color:#f5f6fa;display:flex;flex:1 1;flex-direction:column;overflow:hidden}.content-area{flex:1 1;overflow-y:auto;padding:0}.coming-soon-page{align-items:center;background:#f5f6fa;display:flex;justify-content:center;min-height:70vh;padding:32px}.coming-soon-card{background:#fff;border-radius:20px;box-shadow:0 4px 24px #00000012;max-width:440px;padding:56px 48px;text-align:center;width:100%}.coming-soon-icon{display:flex;justify-content:center;margin-bottom:24px}.coming-soon-title{color:#202224;font-size:26px;font-weight:700;margin-bottom:12px}.coming-soon-description{color:#777;font-size:15px;line-height:1.6;margin-bottom:28px}.coming-soon-badge{background:#eef0ff;border-radius:20px;color:#4c6fff;display:inline-block;font-size:13px;font-weight:600;letter-spacing:.04em;padding:8px 22px}.metric-card{align-items:flex-start;border-radius:14px;box-shadow:6px 6px 54px 0 #0000000d;gap:20px;height:140px}.metric-icon svg{stroke:#333;height:28px;width:28px}.metric-details{gap:8px}.metric-title{color:#202224;font-size:16px;font-weight:600;opacity:.7}.metric-value{letter-spacing:1px}.metric-change{align-items:center;display:flex;font-size:16px;gap:6px}.metric-change.positive{color:#00b69b}.metric-change.negative{color:#f93c65}.change-icon{align-items:center;display:flex;height:14px;justify-content:center;width:14px}.change-icon svg{stroke:currentColor;height:14px;width:14px}.change-text{font-size:16px}.change-text .gray{color:#606060;margin-left:4px}.dashboard{background-color:#f5f6fa;min-height:100%;padding:32px}.dashboard-title{color:#202224;font-size:32px;font-weight:700;letter-spacing:-.11px}.dashboard-error{background:#fef2f2;border-radius:8px;color:#b91c1c;padding:1rem}.dashboard-loading{color:#888;font-size:15px;padding:60px 24px;text-align:center}.chart-empty{align-items:center;color:#aaa;display:flex;height:300px;justify-content:center}.metrics-grid{grid-template-columns:repeat(4,1fr)}.payment-section,.sales-section{background:#fff;border-radius:14px;box-shadow:6px 6px 54px 0 #0000000d;margin-bottom:32px;padding:24px}.section-header{margin-bottom:24px}.section-title{color:#202224;font-size:24px;font-weight:700}.month-selector{background:#fcfdfd;border:.6px solid #d5d5d5;border-radius:4px;color:#2b303466;cursor:pointer;font-family:Nunito Sans,sans-serif;font-size:12px;outline:none;padding:8px 12px}.sales-chart{height:300px;width:100%}.payment-table{overflow-x:auto;width:100%}.payment-table table{border-collapse:collapse;width:100%}.payment-table thead{background-color:#f1f4f9;border-radius:12px}.payment-table th{color:#202224;font-size:14px;font-weight:700;padding:16px;text-align:left}.payment-table td{border-bottom:1px solid #f0f0f0;color:#202224;font-size:14px;font-weight:600;opacity:.8;padding:20px 16px}.payment-table tbody tr:last-child td{border-bottom:none}.status-badge{border-radius:13.5px;font-size:14px;font-weight:700;padding:6px 16px}.status-badge.paid{background-color:#00b69b;color:#fff}.status-badge.pending{background-color:#fcbe2d;color:#fff}.status-badge.rejected{background-color:#fd5454;color:#fff}@media (max-width:1400px){.metrics-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.dashboard{padding:16px}.metrics-grid{grid-template-columns:1fr}.section-header{align-items:flex-start;flex-direction:column;gap:16px}.payment-table{font-size:12px}}.course-card{align-items:center;background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000000d;display:flex;margin-bottom:12px;overflow:hidden;padding:0;transition:box-shadow .3s ease}.course-card:hover{box-shadow:0 4px 12px #00000014}.course-image{background:#f5f5f5;flex-shrink:0;height:107px;overflow:hidden;position:relative;width:230px}.course-image img{height:100%;object-fit:cover;width:100%}.play-overlay{align-items:center;background:#0000004d;display:flex;height:100%;justify-content:center;left:0;opacity:0;position:absolute;top:0;transition:opacity .3s ease;width:100%}.course-card:hover .play-overlay{opacity:1}.play-button{cursor:pointer;transition:transform .2s ease}.play-button:hover{transform:scale(1.1)}.course-info{flex:1 1;padding:20px 30px}.course-title{color:#1a1a1a;font-size:20px;font-weight:600;margin:0 0 8px}.video-count{color:#666;font-size:14px;margin:0 0 12px}.course-tags{display:flex;flex-wrap:wrap;gap:10px}.tag{border-radius:6px;font-size:13px;font-weight:500;padding:4px 12px}.duration-tag{background:#f0f0f0;color:#666}.duration-tag.highlight-1{background:#fff4e6;color:#ff9800}.duration-tag.highlight-2{background:#f3e8ff;color:#9c27b0}.duration-tag.highlight-3{background:#fff3e0;color:#ff9800}.duration-tag.highlight-4{background:#e3f2fd;color:#2196f3}.duration-tag.free{background:#f3e8ff;color:#9c27b0}.course-actions{display:flex;gap:8px;padding:20px 20px 20px 0}.btn-delete,.btn-edit{border-radius:8px;font-size:14px;font-weight:500;padding:10px 16px}.btn-edit{color:#333}.btn-edit:hover{background:#f5f5f5;border-color:#d0d0d0}.btn-delete{color:#333}.btn-delete:hover{background:#fff5f5;border-color:#ffcdd2;color:#d32f2f}.btn-delete .icon,.btn-edit .icon{font-size:16px}@media (max-width:768px){.course-card{flex-direction:column}.course-image{height:200px;width:100%}.course-info{padding:15px}.course-actions{justify-content:flex-end;padding:0 15px 15px;width:100%}}.empty-state{align-items:center;background:#fafafa;border:2px dashed #d0d0d0;cursor:pointer;display:flex;flex-direction:column;justify-content:center;padding:80px 40px;transition:all .3s ease}.empty-state:hover{background:#fffbf0;border-color:#ffc107}.empty-state:hover .upload-icon svg path{stroke:#ffc107}.upload-icon{margin-bottom:16px}.upload-text{color:#333;font-size:18px;font-weight:500;margin:0}@media (max-width:768px){.empty-state{padding:60px 30px}.upload-icon svg{height:60px;width:60px}.upload-text{font-size:16px}}.courses-page{background:#f8f9fa;min-height:100vh;padding:30px}.courses-header{margin-bottom:30px}.courses-header h1{color:#1a1a1a;font-size:32px;font-weight:600;margin:0}.courses-tabs{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000000d;display:flex;gap:0;margin-bottom:30px;padding:8px;width:-webkit-fit-content;width:fit-content}.tab-button{background:#0000;border:none;border-radius:8px;color:#666;cursor:pointer;font-size:14px;font-weight:500;padding:12px 24px;transition:all .2s ease}.tab-button:hover{background:#f5f5f5;color:#333}.tab-button.active{background:#fef3e0;color:#1a1a1a}.courses-schedule{max-width:1200px}.page-subtitle{color:#1a1a1a;font-size:24px;font-weight:600;margin:0 0 30px}.courses-section{margin-bottom:40px}.section-header{background:#fff;border-radius:10px 10px 0 0;padding:14px 20px}.section-title{font-size:18px}.btn-create-video{background:#ffc107;border:none;border-radius:8px;color:#1a1a1a;cursor:pointer;font-size:13px;font-weight:500;padding:10px 20px;transition:all .2s ease}.btn-create-video:hover{background:#ffb300;box-shadow:0 4px 8px #ffc1074d;transform:translateY(-1px)}.courses-list{background:#fff;border-radius:0 0 10px 10px;padding:16px}.tab-content{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000000d;padding:40px}.tab-content h2{color:#1a1a1a;font-size:24px;font-weight:600;margin:0 0 16px}.tab-content p{color:#666;font-size:16px;margin:0}.modal-overlay{animation:fadeIn .2s ease}.modal-content{animation:slideUp .3s ease;border-radius:16px}.upload-modal{max-width:600px}.modal-header{border-bottom:1px solid #f0f0f0;padding:24px 24px 16px}.modal-close{color:#666;transition:color .2s ease}.modal-header h3{color:#1a1a1a;font-size:20px}.modal-body p{color:#333;font-size:15px;line-height:1.5;margin:0 0 12px}.modal-warning{color:#d32f2f;font-size:14px;margin:12px 0 0}.modal-actions{padding:16px 24px 24px}.btn-cancel,.btn-confirm-delete{font-weight:500;padding:10px 24px;transition:all .2s ease}.btn-cancel{border:1px solid #e0e0e0}.btn-cancel:hover{background:#f5f5f5}.btn-confirm-delete{background:#d32f2f;border:none}.btn-confirm-delete:hover{background:#c62828;box-shadow:0 4px 12px #d32f2f4d}.btn-primary{background:#ffc107;border:none;border-radius:8px;color:#1a1a1a;cursor:pointer;font-size:14px;font-weight:500;padding:10px 24px;transition:all .2s ease}.btn-primary:hover{background:#ffb300;box-shadow:0 4px 12px #ffc1074d}.upload-area{align-items:center;background:#fafafa;border:2px dashed #d0d0d0;border-radius:12px;cursor:pointer;display:flex;flex-direction:column;justify-content:center;margin-bottom:24px;padding:40px;transition:all .3s ease}.upload-area:hover{background:#fffbf0;border-color:#ffc107}.upload-instruction{color:#333;font-size:16px;font-weight:500;margin:16px 0 8px}.upload-hint{color:#999;font-size:13px;margin:0}.form-group{margin-bottom:20px}.form-group input,.form-group textarea{border:1px solid #e0e0e0;border-radius:8px;box-sizing:border-box;padding:10px 14px;transition:border-color .2s ease}.form-group input:focus,.form-group textarea:focus{border-color:#ffc107}.form-group textarea{min-height:80px}@media (max-width:768px){.courses-page{padding:20px}.courses-header h1{font-size:24px}.courses-tabs{flex-direction:column;width:100%}.section-header{align-items:flex-start;flex-direction:column;gap:12px}.btn-create-video{width:100%}.modal-content{margin:20px}}.learning-section{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000000d;margin-bottom:16px;overflow:hidden}.section-header{align-items:center;background:#fafafa;border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;padding:10px 16px}.section-title{color:#1a1a1a;margin:0}.section-actions{align-items:center}.btn-delete,.btn-edit{align-items:center;background:#fff;border:1px solid #e0e0e0;border-radius:6px;color:#666;cursor:pointer;display:flex;font-size:12px;gap:6px;padding:6px 12px;transition:all .2s ease}.btn-edit:hover{background:#fffbf0;border-color:#ffc107;color:#ffc107}.btn-delete:hover{background:#fee;border-color:#e53e3e;color:#e53e3e}.btn-delete svg,.btn-edit svg{color:currentColor}.section-content{padding:20px 16px}.form-field{margin-bottom:16px}.form-field,.select-wrapper{position:relative}.input-datetime,.select-input{background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-sizing:border-box;cursor:pointer;font-family:inherit;font-size:14px;padding:10px 40px 10px 14px;transition:border-color .2s ease;width:100%}.input-datetime:focus,.select-input:focus{border-color:#ffc107;outline:none}select.select-input{appearance:none;-webkit-appearance:none;-moz-appearance:none}select.select-input optgroup{background:#f5f5f5;color:#999;font-size:11px;font-weight:600;letter-spacing:.5px;padding:4px 0;text-transform:uppercase}select.select-input option{background:#fff;color:#333;font-size:14px;padding:8px 12px}.dropdown-icon{pointer-events:none;position:absolute;right:14px;top:50%;transform:translateY(-50%)}.input-with-icon{position:relative}.calendar-icon{left:14px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.input-datetime{padding-left:46px}.hint-text{color:#999;font-size:12px;margin:8px 0 0}.btn-save{background:#ffc107;color:#1a1a1a;font-weight:500;padding:10px 24px;transition:all .2s ease}.btn-save:hover{background:#ffb300;box-shadow:0 4px 12px #ffc1074d}.month-selector{border-top:1px solid #f0f0f0;margin-top:20px;padding-top:20px}.month-label{color:#666;font-size:13px;margin:0 0 12px}.month-buttons{display:flex;flex-wrap:wrap;gap:8px}.btn-month{background:#fff;border:1px solid #e0e0e0;border-radius:6px;color:#666;cursor:pointer;font-size:13px;font-weight:500;padding:4px 12px;transition:all .2s ease}.btn-month:hover{background:#fffbf0;border-color:#ffc107}.btn-month.active{background:#ffc107;border-color:#ffc107;color:#1a1a1a}.dropdown-menu{background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 4px 12px #0000001a;left:0;max-height:200px;overflow-y:auto;position:absolute;right:0;top:calc(100% + 4px);z-index:100}.dropdown-section{padding:8px}.dropdown-section+.dropdown-section{border-top:1px solid #f0f0f0}.dropdown-label{color:#999;display:block;font-size:11px;letter-spacing:.5px;margin-bottom:4px;padding:0 8px;text-transform:uppercase}.dropdown-item{align-items:center;border-radius:6px;color:#333;cursor:pointer;display:flex;font-size:14px;gap:8px;padding:8px 12px;transition:background .2s ease}.dropdown-item:hover{background:#f5f5f5}.item-icon{color:#666;flex-shrink:0;height:16px;width:16px}@media (max-width:768px){.form-row{grid-template-columns:1fr}.month-buttons{justify-content:flex-start}}.video-manager{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000000d;padding:20px}.video-title-row{margin-bottom:16px}.video-label{color:#333;font-size:14px;font-weight:500;margin:0}.main-video-container{align-items:center;display:flex;gap:20px;justify-content:center;margin-bottom:24px;position:relative}.nav-button{background:none;border:none;color:#333;cursor:pointer;flex-shrink:0;padding:8px;transition:color .2s ease}.nav-button:hover{color:#ffc107}.main-video{background:#f5f5f5;border-radius:12px;height:202px;max-width:475px;overflow:hidden;position:relative;width:100%}.main-video img{height:100%;object-fit:cover;width:100%}.video-overlay{align-items:center;background:#0000004d;display:flex;height:100%;justify-content:center;left:0;opacity:0;position:absolute;top:0;transition:opacity .3s ease;width:100%}.main-video:hover .video-overlay{opacity:1}.play-button-large{background:none;border:none;cursor:pointer;transition:transform .2s ease}.play-button-large:hover{transform:scale(1.1)}.checkbox-button{align-items:center;background:#0000004d;border:2px solid #fff;border-radius:50%;cursor:pointer;display:flex;height:32px;justify-content:center;position:absolute;right:12px;top:12px;transition:all .2s ease;width:32px}.checkbox-button:hover{background:#00000080}.checkbox-button.checked{background:#ffc107;border-color:#ffc107}.video-carousel{align-items:center;display:flex;gap:12px;margin-bottom:24px;padding:12px 0}.carousel-nav{background:none;border:none;color:#666;cursor:pointer;flex-shrink:0;padding:4px;transition:color .2s ease}.carousel-nav:hover{color:#ffc107}.thumbnails-container{flex:1 1;overflow:hidden}.thumbnails-scroll{display:flex;gap:12px;overflow-x:auto;padding:4px 0;scroll-behavior:smooth}.thumbnails-scroll::-webkit-scrollbar{height:4px}.thumbnails-scroll::-webkit-scrollbar-track{background:#f0f0f0;border-radius:2px}.thumbnails-scroll::-webkit-scrollbar-thumb{background:#ccc;border-radius:2px}.thumbnails-scroll::-webkit-scrollbar-thumb:hover{background:#999}.thumbnail-item{cursor:pointer;flex-shrink:0;position:relative;transition:transform .2s ease;width:125px}.thumbnail-item:hover{transform:translateY(-2px)}.thumbnail-item.active{border-radius:8px;box-shadow:0 4px 12px #ffc10766}.thumbnail-item img{border-radius:8px;display:block;height:53px;object-fit:cover;width:100%}.thumbnail-overlay{align-items:center;background:#0006;border-radius:8px;display:flex;height:53px;justify-content:center;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .2s ease}.thumbnail-item:hover .thumbnail-overlay{opacity:1}.thumbnail-title{color:#666;font-size:11px;margin:4px 0 0;text-align:center}.video-title-input{margin-top:20px}.title-input{border:1px solid #e0e0e0;border-radius:8px;box-sizing:border-box;font-family:inherit;font-size:14px;padding:10px 14px;transition:border-color .2s ease;width:100%}.title-input:focus{border-color:#ffc107;outline:none}.title-hint{color:#999;font-size:12px;margin:8px 0 0}@media (max-width:768px){.main-video-container{flex-direction:column;gap:12px}.main-video{height:250px;max-width:100%}.nav-button{display:none}.thumbnail-item{width:100px}.thumbnail-item img{height:45px}}.datetime-picker-overlay{align-items:center;animation:fadeIn .2s ease;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:2000}.datetime-picker{animation:slideUp .3s ease;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:634px;padding:20px;position:relative;width:90%}.close-button{background:none;border:none;color:#666;cursor:pointer;padding:4px;position:absolute;right:10px;top:10px;transition:color .2s ease;z-index:10}.close-button:hover{color:#333}.picker-content{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr;margin:30px 0 20px}.calendar-section{padding:10px}.calendar-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.month-nav{background:none;border:none;color:#666;cursor:pointer;padding:8px;transition:color .2s ease}.month-nav:hover{color:#ffc107}.month-year{color:#333;font-size:16px;font-weight:600}.calendar-grid{grid-gap:4px;display:grid;gap:4px;grid-template-columns:repeat(7,1fr)}.day-name{color:#666;font-size:12px;font-weight:500;padding:8px 4px;text-align:center}.day-name.weekend{color:#ff5252}.calendar-day{align-items:center;aspect-ratio:1;border-radius:8px;color:#333;cursor:pointer;display:flex;font-size:14px;justify-content:center;transition:all .2s ease}.calendar-day:not(.empty):hover{background:#f5f5f5}.calendar-day.empty{cursor:default}.calendar-day.today{border:2px solid #ffc107}.calendar-day.selected{background:#ffc107;color:#fff;font-weight:600}.time-section{background:#fafafa;border-radius:12px;display:flex;flex-direction:column;gap:20px;justify-content:center;padding:20px}.time-row{gap:12px}.time-inputs,.time-row{align-items:center;display:flex}.time-inputs{flex:1 1;gap:8px}.time-input{background:#fff;border:1px solid #e0e0e0;border-radius:6px;font-size:20px;font-weight:500;padding:8px;text-align:center;transition:border-color .2s ease;width:50px}.time-input:focus{border-color:#ffc107;outline:none}.time-input::-webkit-inner-spin-button,.time-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.time-separator{color:#333;font-size:20px;font-weight:600}.period-selector{display:flex;flex-direction:column;gap:4px}.period-option{background:#fff;border:1px solid #e0e0e0;border-radius:6px;color:#666;font-size:14px;font-weight:500;padding:8px 12px;text-align:center;transition:all .2s ease}.period-option.active{background:#ffc107;border-color:#ffc107;color:#1a1a1a}.picker-actions{border-top:1px solid #f0f0f0;display:flex;gap:12px;justify-content:flex-end;padding-top:20px}.btn-publish,.btn-save-update{border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;padding:10px 24px;transition:all .2s ease}.btn-save-update{background:#fff;border:1px solid #e0e0e0;color:#333}.btn-save-update:hover{background:#f5f5f5}.btn-publish{background:#ffc107;border:none;color:#1a1a1a}.btn-publish:hover{background:#ffb300;box-shadow:0 4px 12px #ffc1074d}@media (max-width:768px){.picker-content{grid-template-columns:1fr}.time-section{padding:15px}.time-input{font-size:18px;width:40px}.picker-actions{flex-direction:column}.btn-publish,.btn-save-update{width:100%}}.delete-modal-overlay{align-items:center;animation:fadeIn .2s ease-out;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.delete-modal-content{animation:slideUp .3s ease-out;background:#fff;border-radius:12px;box-shadow:0 8px 24px #00000026;max-width:400px;padding:32px;position:relative;text-align:center;width:90%}.modal-close-btn{background:none;border:none;color:#666;cursor:pointer;padding:4px;position:absolute;right:16px;top:16px;transition:color .2s}.modal-close-btn:hover{color:#333}.modal-icon{display:flex;justify-content:center;margin:0 auto 20px}.modal-title{color:#1a1a1a;font-size:20px;font-weight:600;margin:0 0 12px}.modal-message{color:#666;font-size:14px;line-height:1.5;margin:0 0 28px}.modal-actions{justify-content:center}.btn-modal-cancel,.btn-modal-delete{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;min-width:100px;padding:10px 28px;transition:all .2s}.btn-modal-cancel{background:#f5f5f5;color:#333}.btn-modal-cancel:hover{background:#e8e8e8}.btn-modal-delete{background:#e53e3e;color:#fff}.btn-modal-delete:hover{background:#c53030}.file-upload-container{width:100%}.drag-drop-area{background:#fff;border:2px dashed #ddd;border-radius:12px;cursor:pointer;padding:60px 40px;text-align:center;transition:all .3s ease}.drag-drop-area.drag-active{background:#fffbf0;border-color:#ffc107}.upload-icon{display:block;margin:0 auto 24px}.drag-drop-title{color:#333;font-size:18px;font-weight:500;margin:0 0 24px}.btn-select-files{background:#ffc107;border:none;border-radius:6px;color:#333;cursor:pointer;font-size:14px;font-weight:500;padding:12px 32px;transition:all .2s}.btn-select-files:hover{background:#ffb300;box-shadow:0 4px 8px #ffc1074d;transform:translateY(-1px)}.files-list{display:flex;flex-direction:column;gap:16px;margin-top:24px}.file-item{align-items:flex-start;background:#fff;border:1px solid #e5e5e5;border-radius:8px;display:flex;gap:16px;padding:16px}.file-preview{flex-shrink:0}.file-details{flex:1 1;min-width:0}.file-info-row{align-items:center;display:flex;gap:16px;margin-bottom:8px}.file-name{color:#333;flex:1 1;font-size:14px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-size{color:#666;flex-shrink:0;font-size:13px}.btn-remove-file{background:none;border:none;color:#999;cursor:pointer;flex-shrink:0;padding:4px;transition:color .2s}.btn-remove-file:hover{color:#e53e3e}.file-progress-text{color:#666;flex-shrink:0;font-size:12px;font-weight:500;min-width:40px;text-align:right}.progress-bar{background:#f0f0f0}.progress-bar-fill{background:#ffc107;border-radius:4px;height:100%;transition:width .3s ease}@media (max-width:768px){.drag-drop-area{padding:40px 24px}.upload-icon{height:60px;width:60px}.drag-drop-title{font-size:16px}}.course-creation-page{background:#f8f9fa;min-height:100vh;padding:30px}.course-form{background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;max-width:560px;padding:24px}.course-form .form-group{margin-bottom:16px}.course-form .form-group label{color:#374151;display:block;font-size:14px;font-weight:600;margin-bottom:6px}.course-form .form-group input,.course-form .form-group select,.course-form .form-group textarea{border:1px solid #d1d5db;border-radius:8px;box-sizing:border-box;font-size:14px;padding:10px 12px;width:100%}.course-form .form-row{display:flex;gap:16px}.course-form .form-row .form-group{flex:1 1}.course-form .form-error{background:#fef2f2;border-radius:8px;color:#b91c1c;font-size:14px;margin-bottom:16px;padding:10px 12px}.page-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px}.page-header h1{color:#1a1a1a;font-size:24px;font-weight:600;margin:0}.header-actions{align-items:center}.btn-feature,.btn-publish-header{border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;padding:8px 20px;transition:all .2s ease}.btn-feature{background:#fff;border:1px solid #e0e0e0;color:#333}.btn-feature:hover{background:#f5f5f5}.btn-publish-header{background:#ffc107;border:none;color:#1a1a1a}.btn-publish-header:hover{background:#ffb300;box-shadow:0 4px 12px #ffc1074d}.edit-delete-group{display:flex;gap:8px}.btn-delete-header,.btn-edit-header{align-items:center;background:#fff;border:1px solid #e0e0e0;border-radius:8px;color:#333;cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:6px;padding:8px 14px;transition:all .2s ease}.btn-edit-header:hover{background:#f5f5f5;border-color:#d0d0d0}.btn-delete-header:hover{background:#fff5f5;border-color:#ffcdd2;color:#d32f2f}.creation-content{max-width:1200px}.learning-grid{display:flex;flex-direction:column;gap:16px;margin-bottom:20px}.grid-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.section-actions{display:flex;gap:8px;justify-content:flex-end;margin-bottom:20px}.btn-delete-section,.btn-edit-section{align-items:center;background:#fff;border:1px solid #e0e0e0;border-radius:8px;color:#333;cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:6px;padding:6px 12px;transition:all .2s ease}.btn-edit-section:hover{background:#f5f5f5;border-color:#d0d0d0}.btn-delete-section:hover{background:#fff5f5;border-color:#ffcdd2;color:#d32f2f}.video-section{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000000d;padding:20px;position:relative}.video-section-actions{display:flex;gap:8px;position:absolute;right:20px;top:20px}.section-heading{color:#1a1a1a;font-size:18px;font-weight:600;margin:0 0 20px}.btn-upload-videos{background:#fff;border:1px solid #e0e0e0;border-radius:8px;color:#333;cursor:pointer;font-size:14px;font-weight:500;margin-top:16px;padding:10px 24px;transition:all .2s ease}.btn-upload-videos:hover{background:#f5f5f5;border-color:#d0d0d0}.btn-save-continue{background:#ffc107;border:none;border-radius:8px;color:#1a1a1a;cursor:pointer;font-size:14px;font-weight:500;margin-top:20px;padding:10px 24px;transition:all .2s ease}.btn-save-continue:hover{background:#ffb300;box-shadow:0 4px 12px #ffc1074d}@media (max-width:968px){.course-creation-page{padding:20px}.page-header{align-items:flex-start;flex-direction:column;gap:16px}.header-actions{flex-wrap:wrap;width:100%}.grid-row{grid-template-columns:1fr}.btn-feature,.btn-publish-header{flex:1 1}.edit-delete-group{justify-content:stretch;width:100%}.btn-delete-header,.btn-edit-header{flex:1 1;justify-content:center}}.login-page{align-items:center;background:linear-gradient(135deg,#f5f7fa,#e4e8ec);display:flex;justify-content:center;min-height:100vh}.login-card{background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000014;max-width:400px;padding:2.5rem;width:100%}.login-title{color:#1a1a2e;font-size:1.75rem;font-weight:800;margin:0 0 .25rem}.login-subtitle{color:#6b7280;font-size:.9rem;margin:0 0 1.5rem}.login-form{display:flex;flex-direction:column;gap:1.25rem}.login-field label{color:#374151;display:block;font-size:.875rem;font-weight:600;margin-bottom:.375rem}.login-field input{border:1px solid #d1d5db;border-radius:8px;box-sizing:border-box;font-size:1rem;padding:.75rem 1rem;width:100%}.login-field input:focus{border-color:#ffc107;box-shadow:0 0 0 3px #ffc10733;outline:none}.login-error{background:#fef2f2;border-radius:8px;color:#b91c1c;font-size:.875rem;padding:.75rem}.login-submit{background:#ffc107;border:none;border-radius:8px;color:#1a1a2e;cursor:pointer;font-size:1rem;font-weight:700;margin-top:.5rem;padding:.875rem 1.5rem}.login-submit:hover:not(:disabled){background:#ffb300}.login-submit:disabled{cursor:not-allowed;opacity:.7}.students-page{background-color:#f5f6fa;min-height:100%;padding:32px}.students-header{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:24px}.students-header h1{color:#202224;font-size:24px;font-weight:700;margin:0}.students-controls{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.view-toggle{border:1px solid #d1d5db;gap:0;overflow:hidden}.view-toggle button{background:#fff;border:none;color:#374151;cursor:pointer;font-size:14px;padding:8px 14px}.view-toggle button.active{background:#ffc107;color:#1a1a2e;font-weight:600}.view-toggle button:not(.active):hover{background:#f3f4f6}.course-select{min-width:200px}.course-select,.search-input{border:1px solid #d1d5db;padding:10px 14px}.search-input{width:220px}.students-error{background:#fef2f2;border-radius:8px;color:#b91c1c;margin-bottom:16px;padding:12px 16px}.students-table-wrap{background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;padding:24px}.students-table td,.students-table th{border-bottom:1px solid #eee;padding:12px 16px;text-align:left}.students-table th{color:#374151}.students-table td{color:#1f2937}.btn-more{background:#ffc107;border:none;border-radius:6px;color:#1a1a2e;cursor:pointer;font-size:13px;font-weight:600;padding:6px 12px}.btn-more:hover{background:#ffb300}.pagination-info{color:#6b7280;font-size:13px;margin-top:16px}.order-lists-page{background-color:#f5f6fa;min-height:100%;padding:32px}.order-lists-header{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:24px}.order-lists-header h1{color:#202224;font-size:24px;font-weight:700;margin:0}.order-lists-filters .filter-select{border:1px solid #d1d5db;border-radius:8px;font-size:14px;min-width:160px;padding:10px 14px}.order-lists-error{background:#fef2f2;border-radius:8px;color:#b91c1c;margin-bottom:16px;padding:12px 16px}.order-lists-table-wrap{background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;padding:24px}.order-lists-table{border-collapse:collapse;width:100%}.order-lists-table td,.order-lists-table th{border-bottom:1px solid #eee;padding:12px 16px;text-align:left}.order-lists-table th{color:#374151;font-size:13px;font-weight:600}.status-badge{border-radius:6px;padding:4px 10px}.status-completed{background:#d1fae5;color:#065f46}.status-pending{background:#fef3c7;color:#92400e}.status-cancelled,.status-failed{background:#fee2e2;color:#991b1b}.status-refunded{background:#e5e7eb;color:#374151}.status-processing{background:#dbeafe;color:#1e40af}.order-lists-pagination{align-items:center;color:#6b7280;display:flex;font-size:14px;gap:12px;margin-top:16px}.order-lists-pagination button{background:#fff;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;font-size:13px;padding:8px 14px}.order-lists-pagination button:disabled{cursor:not-allowed;opacity:.5}.order-lists-pagination button:not(:disabled):hover{background:#f9fafb}.feedback-page{background-color:#f5f6fa;min-height:100%;padding:32px}.feedback-header{margin-bottom:24px}.feedback-header h1{color:#202224;font-size:24px;font-weight:700;margin:0 0 4px}.feedback-subtitle{color:#6b7280;font-size:14px;margin:0 0 16px}.feedback-search{border:1px solid #d1d5db;border-radius:8px;font-size:14px;padding:10px 14px;width:260px}.feedback-error{background:#fef2f2;border-radius:8px;color:#b91c1c;margin-bottom:16px;padding:12px 16px}.feedback-list{display:flex;flex-direction:column;gap:16px}.feedback-item{background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;padding:16px 20px}.feedback-item-header{align-items:center;display:flex;gap:8px;margin-bottom:8px}.feedback-user{color:#1f2937;font-weight:600}.feedback-context{color:#6b7280;font-size:12px}.feedback-content{color:#374151;font-size:14px;line-height:1.5;margin:0 0 8px}.feedback-meta{color:#9ca3af;font-size:12px}.feedback-rating{margin-right:12px}.mentor-profile{margin:0 auto;max-width:800px;padding:20px}.mentor-profile-header{margin-bottom:30px}.mentor-profile-header h1{font-size:28px;font-weight:600;margin-bottom:8px}.mentor-profile-header p{color:#666;font-size:14px}.mentor-profile-form{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:30px}.form-section{display:flex;flex-direction:column;gap:24px}.form-input,.form-select,.form-textarea{border:1px solid #ddd;border-radius:6px;font-family:inherit;padding:10px 12px;transition:border-color .2s}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none}.char-count{text-align:right}.profile-image-preview{border:1px solid #ddd;border-radius:8px;margin-top:12px;overflow:hidden;width:120px}.profile-image-preview img{display:block;height:auto;width:100%}.file-input{padding:8px}.success-message{border-radius:6px;font-size:14px;margin-bottom:16px;padding:12px 16px}.form-actions{margin-top:30px;padding-top:30px}.btn:disabled{cursor:not-allowed;opacity:.6}.mentor-directory{margin:0 auto;max-width:1200px;padding:20px}.directory-header{margin-bottom:30px}.directory-header h1{font-size:28px;font-weight:600;margin-bottom:8px}.directory-header p{color:#666;font-size:14px}.directory-filters{display:flex;gap:12px;margin-bottom:24px}.subject-filter{margin-bottom:30px}.filter-label{color:#333;font-weight:500;margin-bottom:12px}.filter-buttons{display:flex;flex-wrap:wrap;gap:8px}.filter-btn{background:#fff;border:1px solid #ddd;border-radius:6px;cursor:pointer;font-size:14px;padding:8px 16px;transition:all .2s}.filter-btn:hover{border-color:#4c6fff;color:#4c6fff}.filter-btn.active{background-color:#4c6fff;border-color:#4c6fff;color:#fff}.mentors-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));margin-bottom:30px}.mentor-card{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;cursor:pointer;overflow:hidden;transition:all .2s}.mentor-card:hover{box-shadow:0 4px 16px #00000026;transform:translateY(-2px)}.mentor-image{background:#f5f5f5;height:200px;overflow:hidden;width:100%}.mentor-image img{height:100%;object-fit:cover;width:100%}.mentor-info{padding:16px}.mentor-name{color:#333;font-size:16px;font-weight:600;margin:0 0 8px}.mentor-subject{color:#4c6fff;font-size:12px;font-weight:500;margin:0 0 8px}.mentor-bio{color:#666;font-size:13px;line-height:1.4;margin:0}.course-modules{margin:0 auto;max-width:1000px;padding:20px}.modules-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px}.modules-header h1{font-size:28px;font-weight:600;margin:0}.module-form-card{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:24px;padding:24px}.module-form-card h3{font-size:16px;font-weight:600;margin:0 0 20px}.form-group input,.form-group textarea{border:1px solid #ddd;border-radius:6px;font-family:inherit;font-size:14px;padding:10px 12px;width:100%}.form-group input:focus,.form-group textarea:focus{border-color:#4c6fff;box-shadow:0 0 0 3px #4c6fff1a;outline:none}.modules-table{background:#fff;border-collapse:collapse;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:hidden;width:100%}.modules-table thead{background-color:#f5f5f5;border-bottom:1px solid #eee}.modules-table th{color:#333;font-size:14px;font-weight:600;padding:16px;text-align:left}.modules-table td{border-bottom:1px solid #eee;font-size:14px;padding:16px}.modules-table tbody tr:hover{background-color:#fafafa}.course-lessons{margin:0 auto;max-width:1200px;padding:20px}.lessons-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px}.lessons-header h1{font-size:28px;font-weight:600;margin:0}.lesson-form-card{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:24px;padding:24px}.lesson-form-card h3{font-size:16px;font-weight:600;margin:0 0 20px}.lessons-table{background:#fff;border-collapse:collapse;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:hidden;width:100%}.lessons-table thead{background-color:#f5f5f5;border-bottom:1px solid #eee}.lessons-table th{color:#333;font-size:14px;font-weight:600;padding:16px;text-align:left}.lessons-table td{border-bottom:1px solid #eee;font-size:14px;padding:16px}.lessons-table tbody tr:hover{background-color:#fafafa}.status-badge.uploaded{background-color:#e8f5e9;color:#2e7d32}.actions{align-items:center}.btn-action:hover:not(:disabled){border-color:#4c6fff;color:#4c6fff}.btn-action:disabled{opacity:.5}.upload-progress{color:#4c6fff;font-size:12px;font-weight:500}@media (max-width:768px){.form-row{grid-template-columns:1fr}.lessons-table{font-size:12px}.lessons-table td,.lessons-table th{padding:12px 8px}}.course-enrollments{margin:0 auto;max-width:1000px;padding:20px}.enrollments-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:30px}.enrollments-header h1{font-size:28px;font-weight:600;margin:0 0 8px}.enrollments-header p{color:#666;font-size:14px;margin:0}.add-student-form{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:24px;padding:24px}.add-student-form h3{font-size:16px;font-weight:600;margin:0 0 20px}.form-group input,.form-group select{border:1px solid #ddd;border-radius:6px;font-family:inherit;font-size:14px;padding:10px 12px;width:100%}.form-group input:focus,.form-group select:focus{border-color:#4c6fff;box-shadow:0 0 0 3px #4c6fff1a;outline:none}.enrollments-filters{display:flex;gap:12px;margin-bottom:24px}.search-input,.status-select{border:1px solid #ddd;border-radius:6px;font-size:14px;padding:10px 12px}.search-input:focus,.status-select:focus{border-color:#4c6fff;box-shadow:0 0 0 3px #4c6fff1a;outline:none}.enrollments-table{background:#fff;border-collapse:collapse;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:hidden;width:100%}.enrollments-table thead{background-color:#f5f5f5;border-bottom:1px solid #eee}.enrollments-table th{color:#333;font-size:14px;font-weight:600;padding:16px;text-align:left}.enrollments-table td{border-bottom:1px solid #eee;font-size:14px;padding:16px}.enrollments-table tbody tr:hover{background-color:#fafafa}.pagination{margin-top:20px}.course-revenue{margin:0 auto;max-width:1200px;padding:20px}.revenue-header{margin-bottom:30px}.revenue-header h1{font-size:28px;font-weight:600;margin:0}.revenue-cards{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:30px}.revenue-card{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:20px}.card-value{color:#333;font-size:24px;margin-bottom:8px}.card-meta{color:#999;font-size:12px}.charts-section{grid-gap:20px;gap:20px;grid-template-columns:1fr 1fr;margin-bottom:30px}.chart-container{padding:20px}.chart-empty{color:#999;font-size:14px;padding:40px 20px;text-align:center}.payments-section{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:24px}.payments-section h2{color:#333;font-size:18px;font-weight:600;margin:0 0 20px}.payment-filters{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:20px}.payment-filters input,.payment-filters select{border:1px solid #ddd;border-radius:6px;font-family:inherit;font-size:14px;padding:10px 12px}.payment-filters input:focus,.payment-filters select:focus{border-color:#4c6fff;box-shadow:0 0 0 3px #4c6fff1a;outline:none}.payments-table{border-collapse:collapse;margin-bottom:20px;width:100%}.payments-table thead{background-color:#f5f5f5;border-bottom:1px solid #eee}.payments-table th{color:#333;font-size:14px;font-weight:600;padding:16px;text-align:left}.payments-table td{border-bottom:1px solid #eee;font-size:14px;padding:16px}.payments-table tbody tr:hover{background-color:#fafafa}.status-badge.completed{background-color:#e8f5e9;color:#2e7d32}@media (max-width:768px){.charts-section,.payment-filters{grid-template-columns:1fr}.payments-table{font-size:12px}.payments-table td,.payments-table th{padding:12px 8px}}.course-quizzes{margin:0 auto;max-width:1200px;padding:20px}.quizzes-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px}.quizzes-header h1{font-size:28px;font-weight:600;margin:0}.quiz-form-card{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:24px;padding:24px}.quiz-form-card h3{font-size:16px;font-weight:600;margin:0 0 20px}.quiz-form-card h4{color:#333;font-size:14px;font-weight:600;margin:24px 0 16px}.quiz-form-card h5{color:#555;font-size:13px;font-weight:600;margin:0 0 16px}.form-section{border-bottom:1px solid #eee;margin-bottom:24px;padding-bottom:24px}.form-section:last-child{border-bottom:none}.form-row{grid-gap:16px;gap:16px}.question-item{background:#f9f9f9;border-radius:6px;margin-bottom:8px;padding:12px}.question-header span{color:#666;flex:1 1;font-size:13px}.question-form{background:#f9f9f9;border:1px solid #eee;border-radius:6px;margin-top:16px;padding:16px}.options-section{border-top:1px solid #ddd;margin-top:16px;padding-top:16px}.options-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.options-header label{margin:0}.btn-small{background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:12px;padding:4px 12px;transition:all .2s}.btn-small:hover{border-color:#4c6fff;color:#4c6fff}.option-item{align-items:center;background:#fff;border:1px solid #eee;border-radius:4px;display:flex;gap:8px;margin-bottom:8px;padding:8px}.option-item input[type=checkbox],.option-item input[type=radio]{flex-shrink:0}.option-item input[type=text]{border:1px solid #ddd;border-radius:4px;flex:1 1;font-size:13px;padding:6px 8px}.option-item input[type=text]:focus{border-color:#4c6fff;outline:none}.btn-delete-small{background:#fff;border:1px solid #d32f2f;border-radius:4px;color:#d32f2f;cursor:pointer;font-size:12px;padding:4px 8px}.btn-delete-small:hover{background-color:#ffebee}.btn-secondary{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px}.btn-outline{background-color:#fff;border:1px solid #4c6fff;color:#4c6fff;display:inline-block;font-size:13px;padding:8px 16px;text-decoration:none}.btn-outline:hover{background-color:#f0f0ff}.quizzes-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.quiz-card{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;gap:12px;padding:20px}.quiz-card-header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.quiz-card h3{color:#333;flex:1 1;font-size:16px;margin:0}.quiz-actions{display:flex;gap:8px}.btn-action{white-space:nowrap}.btn-action:hover{color:#4c6fff}.btn-action.btn-danger{border-color:#d32f2f;color:#d32f2f}.btn-action.btn-danger:hover{background-color:#ffebee}.quiz-description{color:#666;font-size:13px;line-height:1.4;margin:0}.quiz-meta{border-bottom:1px solid #eee;border-top:1px solid #eee;color:#999;display:flex;font-size:12px;gap:16px;padding:8px 0}@media (max-width:768px){.form-row{grid-template-columns:1fr}.question-header{align-items:flex-start;flex-direction:column}.quizzes-grid{grid-template-columns:1fr}}.quiz-results{margin:0 auto;max-width:1000px;padding:20px}.results-header{margin-bottom:30px}.results-header h1{font-size:28px;font-weight:600;margin:0}.stats-cards{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:30px}.stat-card{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:20px}.stat-label{color:#666;font-size:13px;margin-bottom:8px}.stat-value{color:#4c6fff;font-size:32px}.chart-container{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:24px;padding:24px}.chart-container h3{color:#333;font-size:16px;font-weight:600;margin:0 0 20px}.insights-section{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:24px;padding:24px}.insights-section h3{color:#333;font-size:16px;font-weight:600;margin:0 0 20px}.insight-box{background-color:#f0f0ff;border-left:4px solid #4c6fff;border-radius:6px;margin-bottom:16px;padding:16px}.insight-box.warning{background-color:#fff3e0;border-left-color:#ff9800}.insight-box.info{background-color:#e0f7fa;border-left-color:#00bcd4}.insight-box h4{color:#333;font-size:14px;font-weight:600;margin:0 0 12px}.insight-box ul{list-style:none;margin:0;padding:0}.insight-box li{color:#555;font-size:13px;line-height:1.5;padding:8px 0}.insight-box li:not(:last-child){border-bottom:1px solid #0000001a}.attempts-section{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:24px}.attempts-section h2{color:#333;font-size:18px;font-weight:600;margin:0 0 20px}.attempts-table{border-collapse:collapse;margin-bottom:20px;width:100%}.attempts-table thead{background-color:#f5f5f5;border-bottom:1px solid #eee}.attempts-table th{color:#333;font-size:14px;font-weight:600;padding:16px;text-align:left}.attempts-table td{border-bottom:1px solid #eee;font-size:14px;padding:16px}.attempts-table tbody tr:hover{background-color:#fafafa}.status-badge.passed{background-color:#e8f5e9;color:#2e7d32}.status-badge.failed{background-color:#ffebee;color:#c62828}.btn-action{border:1px solid #4c6fff}.modal-content{border-radius:8px;box-shadow:0 4px 24px #0003;max-height:90vh;max-width:600px;overflow-y:auto}.modal-header{background:#fff;padding:20px;position:-webkit-sticky;position:sticky;top:0}.modal-header h3{font-size:16px;font-weight:600;margin:0}.modal-close{font-size:24px}.attempt-summary{grid-gap:16px;background:#f9f9f9;border-radius:6px;display:grid;gap:16px;grid-template-columns:repeat(3,1fr);margin-bottom:24px;padding:16px}.summary-item{display:flex;flex-direction:column;gap:4px}.summary-item span{color:#666;font-size:12px}.summary-item strong{color:#333;font-size:14px}.attempt-answers h4{font-size:14px;font-weight:600;margin:0 0 16px}.answer-item{border:1px solid #eee;border-radius:6px;margin-bottom:12px;padding:16px}.answer-item h5{color:#333;font-size:13px;font-weight:600;margin:0 0 12px}.correct-answer,.student-answer{border-radius:4px;margin-bottom:8px;padding:8px}.correct-answer,.student-answer{background-color:#f5f5f5}.correct-answer.correct{background-color:#e8f5e9}.correct-answer.incorrect{background-color:#ffebee}.correct-answer strong,.student-answer strong{display:block;font-size:12px;margin-bottom:4px}.correct-answer p,.student-answer p{color:#333;font-size:13px;margin:0}.course-analytics{margin:0 auto;max-width:1000px;padding:20px}.analytics-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.analytics-header h1{font-size:28px;font-weight:600;margin:0}.header-actions{display:flex;gap:12px}.cache-info{background:#f5f5f5;border-radius:4px;color:#999;font-size:12px;margin-bottom:20px;padding:8px 12px}.analytics-cards{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:30px}.analytics-card{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:20px;text-align:center}.card-label{font-weight:500;margin-bottom:8px}.card-value{color:#4c6fff}.analytics-nav{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:30px}.nav-link{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;color:#4c6fff;display:block;font-weight:500;padding:20px;text-decoration:none;transition:all .2s}.nav-link:hover{box-shadow:0 4px 16px #4c6fff4d;transform:translateY(-2px)}.lesson-metrics{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:30px;padding:24px}.lesson-metrics h2{color:#333;font-size:18px;font-weight:600;margin:0 0 20px}.metrics-table{border-collapse:collapse;width:100%}.metrics-table thead{background-color:#f5f5f5;border-bottom:1px solid #eee}.metrics-table th{color:#333;font-size:14px;font-weight:600;padding:16px;text-align:left}.metrics-table td{border-bottom:1px solid #eee;font-size:14px;padding:16px}.metrics-table tbody tr:hover{background-color:#fafafa}.progress-bar{align-items:center;display:flex;gap:8px}.progress-bar>div{background-color:#eee;border-radius:3px;height:6px;overflow:hidden;width:100px}.progress-bar span{color:#666;font-size:12px;font-weight:500;min-width:40px}.export-section{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:24px}.export-section h2{color:#333;font-size:18px;font-weight:600;margin:0 0 20px}.export-options{margin-bottom:20px}.checkbox-group{align-items:center;cursor:pointer;display:flex;font-size:14px;gap:8px;margin-bottom:12px}.checkbox-group input[type=checkbox]{cursor:pointer}.btn-secondary{background-color:#f0f0f0}.btn-secondary:hover{background-color:#e0e0e0}@media print{.analytics-header .header-actions,.export-section{display:none}.analytics-cards,.analytics-nav,.lesson-metrics{page-break-inside:avoid}}.student-progress{margin:0 auto;max-width:1200px;padding:20px}.progress-header{margin-bottom:30px}.progress-header h1{font-size:28px;font-weight:600;margin:0}.progress-filters{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:24px}.filter-select,.search-input{border-radius:6px;padding:10px 12px}.progress-content{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 350px}.students-table-section{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.students-table th{font-size:14px}.students-table tbody tr{cursor:pointer;transition:background-color .2s}.status-badge.cancelled{background-color:#ffebee;color:#c62828}.progress-bar{background-color:#eee;margin-bottom:4px;width:100%}.progress-fill{background-color:#4c6fff}.pagination{padding:20px}.student-detail-panel{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;max-height:calc(100vh - 40px);overflow-y:auto;padding:20px;position:-webkit-sticky;position:sticky;top:20px}.detail-header{border-bottom:1px solid #eee;margin-bottom:20px;padding-bottom:20px}.detail-header h3{color:#333;font-size:16px;margin:0}.detail-info{border-bottom:1px solid #eee;margin-bottom:24px;padding-bottom:24px}.info-item{align-items:center;display:flex;font-size:13px;justify-content:space-between;padding:8px 0}.info-item span{color:#999}.info-item strong{color:#333}.detail-metrics{grid-gap:12px;border-bottom:1px solid #eee;display:grid;gap:12px;grid-template-columns:1fr 1fr;margin-bottom:24px;padding-bottom:24px}.metric{background:#f9f9f9;border-radius:6px;gap:4px;padding:12px;text-align:center}.metric span{color:#999;font-size:12px}.metric strong{color:#4c6fff;font-size:18px}.activity-timeline{font-size:13px}.activity-timeline h4{color:#333;font-size:13px;font-weight:600;margin:0 0 12px}.activity-item{border-bottom:1px solid #eee;padding:8px 0}.activity-item:last-child{border-bottom:none}.activity-time{font-size:11px;margin-bottom:2px}.activity-description{color:#666;line-height:1.4}@media (max-width:1024px){.progress-content{grid-template-columns:1fr}.student-detail-panel{max-height:none;position:relative;top:auto}}.dropoff-analysis{margin:0 auto;max-width:1000px;padding:20px}.dropoff-header{margin-bottom:30px}.dropoff-header h1{font-size:28px;font-weight:600;margin:0 0 8px}.dropoff-header p{color:#666;font-size:14px;margin:0}.dropoff-table{background:#fff;border-collapse:collapse;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:24px;overflow:hidden;width:100%}.dropoff-table thead{background-color:#f5f5f5;border-bottom:1px solid #eee}.dropoff-table th{color:#333;font-size:14px;font-weight:600;padding:16px;text-align:left}.dropoff-table td{border-bottom:1px solid #eee;font-size:14px;padding:16px}.dropoff-table tbody tr{transition:background-color .2s}.dropoff-table tbody tr:hover{background-color:#fafafa}.dropoff-table tbody tr.high-dropoff{background-color:#ffebee}.dropoff-meter{align-items:center;display:flex;gap:8px;margin-bottom:4px}.dropoff-bar{background-color:#eee;border-radius:4px;flex:1 1;height:8px;max-width:150px;overflow:hidden}.btn-view{background:#fff;border:1px solid #4c6fff;border-radius:4px;color:#4c6fff;font-size:12px;padding:6px 12px}.btn-view:hover{background-color:#f0f0ff}.dropped-students-panel{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:24px}.panel-header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:20px}.panel-header h3{color:#333;font-size:16px;margin:0}.close-btn{background:none;border:none;color:#999;cursor:pointer;font-size:24px}.students-list{display:flex;flex-direction:column;gap:8px}.student-item{align-items:center;background:#f9f9f9;border-radius:6px;display:flex;font-size:14px;justify-content:space-between;padding:12px}.student-name{color:#333;font-weight:500}.student-progress{color:#999;font-size:12px}.empty{color:#999;padding:20px;text-align:center}.course-certificates{margin:0 auto;max-width:1000px;padding:20px}.certificates-header{margin-bottom:30px}.certificates-header h1{font-size:28px;font-weight:600;margin:0 0 8px}.certificates-header p{color:#666;font-size:14px;margin:0}.certificates-table{background:#fff;border-collapse:collapse;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:20px;overflow:hidden;width:100%}.certificates-table thead{background-color:#f5f5f5;border-bottom:1px solid #eee}.certificates-table th{color:#333;font-size:14px;font-weight:600;padding:16px;text-align:left}.certificates-table td{border-bottom:1px solid #eee;font-size:14px;padding:16px}.certificates-table tbody tr:hover{background-color:#fafafa}.status-badge.generated{background-color:#e8f5e9;color:#2e7d32}.status-badge.pending{background-color:#fff3e0;color:#e65100}.actions{display:flex;flex-wrap:wrap;gap:8px}.btn-action{background:#fff;border:1px solid #ddd;border-radius:4px;color:#4c6fff;display:inline-block;font-size:12px;padding:6px 12px;text-decoration:none;transition:all .2s}.btn-action:hover{background-color:#f0f0ff;border-color:#4c6fff}.btn-action.btn-primary{background-color:#4c6fff;border-color:#4c6fff;color:#fff}.btn-action.btn-primary:hover:not(:disabled){background-color:#3d57e0}.btn-action:disabled{cursor:not-allowed;opacity:.6}.pagination{padding-top:20px}.pagination-btn{background:#fff}.pagination-btn:hover:not(:disabled){color:#4c6fff}.thread-list{display:flex;flex-direction:column;gap:12px}.thread-item{align-items:flex-start;background:#fff;border:1px solid #eee;border-radius:8px;cursor:pointer;display:flex;justify-content:space-between;padding:16px;transition:all .2s}.thread-item:hover{background:#f9f9ff;border-color:#4c6fff;box-shadow:0 2px 8px #4c6fff1a}.thread-item.answered{border-left:4px solid #4caf50}.thread-item.unanswered{border-left:4px solid #ffc107}.thread-content{flex:1 1}.thread-header{align-items:flex-start;display:flex;gap:12px;margin-bottom:8px}.thread-title{color:#333;flex:1 1;font-size:16px;font-weight:600;margin:0}.notification-indicator{background-color:#ff6b6b;border-radius:12px;color:#fff;flex-shrink:0;font-size:12px;font-weight:600;min-width:24px;padding:2px 8px;text-align:center}.thread-preview{color:#666;font-size:14px;line-height:1.4;margin:0 0 12px}.thread-meta{align-items:center;color:#999;display:flex;font-size:12px;gap:8px}.author{color:#666;font-weight:500}.separator{color:#ddd}.time{color:#999}.lesson{background-color:#f0f0f0;border-radius:3px;color:#666;font-size:11px;padding:2px 8px}.thread-stats{gap:20px;margin-left:20px}.stat,.thread-stats{align-items:center;display:flex}.stat{flex-direction:column;gap:4px}.stat-value{color:#333;font-weight:600}.status-column{align-items:center;display:flex;margin-left:12px;min-width:100px}.status-badge{font-weight:500;white-space:nowrap}.status-badge.answered{background-color:#e8f5e9;color:#2e7d32}.status-badge.unanswered{background-color:#fff3e0;color:#e65100}@media (max-width:768px){.thread-item{flex-direction:column}.thread-stats{border-top:1px solid #eee;margin-left:0;margin-top:12px;padding-top:12px;width:100%}.thread-header{flex-direction:column}.notification-indicator{align-self:flex-end}}.thread-detail{margin:0 auto;max-width:900px;padding:20px}.detail-header{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:24px}.btn-status{background:#fff;border:1px solid #ddd;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s}.btn-status:hover{border-color:#4c6fff;color:#4c6fff}.btn-status.answered{background-color:#e8f5e9;border-color:#4caf50;color:#2e7d32}.btn-status.unanswered{background-color:#fff3e0;border-color:#ffc107;color:#e65100}.question-section,.replies-section,.reply-form-section{margin-bottom:32px}.section-title{border-bottom:2px solid #f0f0f0;color:#333;font-size:16px;font-weight:600;margin-bottom:16px;padding-bottom:12px}.question-card{background:#fff;border:1px solid #eee;border-radius:8px;box-shadow:0 2px 4px #0000000d;padding:24px}.question-header{align-items:flex-start;gap:12px;margin-bottom:16px}.question-header h2{color:#333;flex:1 1;font-size:24px;font-weight:600;margin:0}.answered-badge{background-color:#e8f5e9;border-radius:4px;color:#2e7d32;font-size:12px;font-weight:600;padding:4px 12px;white-space:nowrap}.question-content{color:#666;font-size:15px;line-height:1.6;margin:0 0 20px}.question-meta{border-top:1px solid #eee;color:#666;display:flex;flex-wrap:wrap;font-size:14px;gap:20px;padding-top:16px}.meta-item{align-items:center;display:flex;gap:8px}.meta-item strong{color:#333}.replies-list{display:flex;flex-direction:column;gap:12px}.reply-card{background:#fff;border:1px solid #eee;border-left:4px solid #f0f0f0;border-radius:8px;padding:16px;transition:all .2s}.reply-card:hover{box-shadow:0 2px 8px #0000000d}.reply-card.teacher-reply{background-color:#f9f9ff;border-left-color:#4c6fff}.reply-header{justify-content:space-between;margin-bottom:12px}.reply-author,.reply-header{align-items:center;display:flex}.reply-author{gap:8px}.reply-author strong{color:#333;font-size:14px}.teacher-badge{background-color:#4c6fff;border-radius:3px;color:#fff;font-size:11px;font-weight:600;padding:2px 8px}.reply-time{color:#999;font-size:12px}.reply-content{color:#666;font-size:14px;line-height:1.5;margin:0;white-space:pre-wrap;word-break:break-word}.btn-delete-reply{background:#fff;border:1px solid #d32f2f;border-radius:4px;color:#d32f2f;cursor:pointer;font-size:12px;margin-top:12px;padding:6px 12px;transition:all .2s}.btn-delete-reply:hover{background-color:#ffebee}.no-replies{background:#f9f9f9;border-radius:8px;color:#999;padding:40px;text-align:center}.reply-form-section{background:#fff;border:1px solid #eee;border-radius:8px;padding:24px}.reply-form{margin-top:16px}.form-group{position:relative}.form-group textarea{border:1px solid #ddd;border-radius:6px;font-family:inherit;font-size:14px;padding:12px;width:100%}.form-group textarea:focus{border-color:#4c6fff;box-shadow:0 0 0 3px #4c6fff1a;outline:none}.char-count{bottom:-20px;position:absolute;right:0}.form-actions{padding-top:16px}@media (max-width:768px){.thread-detail{padding:12px}.detail-header{align-items:stretch;flex-direction:column}.btn-back{text-align:left}.question-header{flex-direction:column}.question-header h2{font-size:18px}.question-meta{gap:12px}.form-actions,.question-meta{flex-direction:column}.btn{width:100%}}.course-qa{margin:0 auto;max-width:1200px;padding:20px}.qa-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px}.qa-header h1{font-size:28px;font-weight:600;margin:0}.new-thread-card{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:24px;padding:24px}.new-thread-card h3{font-size:16px;font-weight:600;margin:0 0 20px}.form-group label{color:#333;display:block;font-weight:500;margin-bottom:8px}.form-group input,.form-group select,.form-group textarea{border:1px solid #ddd;border-radius:6px;font-family:inherit;font-size:14px;padding:10px 12px;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#4c6fff;box-shadow:0 0 0 3px #4c6fff1a;outline:none}.form-group textarea{resize:vertical}.form-actions{border-top:1px solid #eee;margin-top:20px;padding-top:20px}.btn{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s}.btn-primary:hover:not(:disabled){background-color:#3d57e0;box-shadow:0 4px 12px #4c6fff4d}.btn-primary:disabled{cursor:not-allowed;opacity:.6}.btn-cancel{background-color:#f0f0f0}.btn-cancel:hover{background-color:#e0e0e0}.btn-pagination{background-color:#f0f0f0;color:#333;font-size:13px;padding:8px 16px}.btn-pagination:hover:not(:disabled){background-color:#e0e0e0}.btn-pagination:disabled{cursor:not-allowed;opacity:.5}.qa-controls{align-items:center;display:flex;gap:16px;margin-bottom:24px}.search-box{flex:1 1}.search-box input{border:1px solid #ddd;border-radius:6px;font-size:14px;padding:10px 12px;width:100%}.search-box input:focus{border-color:#4c6fff;box-shadow:0 0 0 3px #4c6fff1a;outline:none}.filters{display:flex;gap:12px}.filter-select{background:#fff;border-radius:6px;padding:10px 12px}.pagination{gap:12px}.pagination-info{min-width:120px}@media (max-width:768px){.qa-header{align-items:flex-start}.qa-controls,.qa-header{flex-direction:column;gap:12px}.filters{flex-direction:column}.filter-select,.filters{width:100%}}.conversation-list{display:flex;flex-direction:column;gap:8px}.conversation-item{background:#fff;border:1px solid #eee;border-radius:8px;cursor:pointer;display:flex;gap:12px;padding:12px;position:relative;transition:all .2s}.conversation-item:hover{background:#f9f9ff;border-color:#4c6fff;box-shadow:0 2px 8px #4c6fff1a}.conversation-item.unread{background-color:#f0f0ff;border-color:#4c6fff}.conversation-avatar{flex-shrink:0;position:relative}.avatar-initials{font-size:14px;height:48px;width:48px}.online-indicator{background-color:#4caf50;border:2px solid #fff;border-radius:50%;bottom:0;height:12px;position:absolute;right:0;width:12px}.conversation-content{flex:1 1;min-width:0}.conversation-header{align-items:center;display:flex;gap:8px;justify-content:space-between;margin-bottom:4px}.participant-name{color:#333;flex:1 1;font-size:14px;font-weight:600;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.last-message-time{color:#999;flex-shrink:0;font-size:12px}.last-message{color:#666;font-size:13px;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conversation-item.unread .last-message{color:#333;font-weight:500}.unread-badge{background-color:#ff6b6b;border-radius:12px;color:#fff;font-size:11px;font-weight:600;min-width:24px;padding:2px 8px;position:absolute;right:8px;text-align:center;top:8px}@media (max-width:768px){.conversation-item{gap:10px;padding:10px}.avatar-initials{font-size:12px;height:40px;width:40px}.participant-name{font-size:13px}.last-message{font-size:12px}}.message-detail-view{background:#fff;display:flex;flex-direction:column;height:100vh;margin:0 auto;max-width:900px}.message-detail-header{align-items:center;background:#fff;border-bottom:1px solid #eee;display:flex;gap:16px;padding:16px 20px}.btn-back{font-size:14px}.btn-back:hover{color:#3d57e0}.header-info{flex:1 1}.header-info h2{color:#333;font-size:18px;font-weight:600;margin:0}.online-status{color:#4caf50;display:inline-block;font-size:12px;font-weight:500;margin-top:2px}.messages-container{background:#f9f9f9;flex:1 1;overflow-y:auto;padding:16px 20px}.no-messages{align-items:center;color:#999;display:flex;height:100%;justify-content:center;text-align:center}.messages-list{display:flex;flex-direction:column;gap:12px}.message-item{align-items:flex-end;display:flex;gap:12px}.message-item.sent{justify-content:flex-end}.message-avatar{flex-shrink:0}.avatar-initials{align-items:center;background:linear-gradient(135deg,#4c6fff,#8a92ff);border-radius:50%;color:#fff;display:flex;font-size:12px;font-weight:600;height:32px;justify-content:center;width:32px}.message-content{max-width:70%}.message-item.sent .message-content{align-self:flex-end;max-width:70%}.message-bubble{background:#fff;border-radius:8px;box-shadow:0 1px 2px #0000001a;padding:10px 14px}.message-item.sent .message-bubble{background:#4c6fff;border-bottom-right-radius:2px;color:#fff}.message-item.received .message-bubble{border-bottom-left-radius:2px}.message-bubble p{font-size:14px;line-height:1.4;margin:0;white-space:pre-wrap;word-break:break-word}.message-time{color:#999;font-size:11px;margin-top:4px}.message-item.sent .message-time,.message-time{text-align:right}.message-item.received .message-time{text-align:left}.message-input-form{background:#fff;border-top:1px solid #eee;padding:16px 20px}.message-input-form textarea{border:1px solid #ddd;border-radius:6px;font-family:inherit;font-size:14px;padding:10px 12px;resize:none;transition:all .2s;width:100%}.message-input-form textarea:focus{border-color:#4c6fff;box-shadow:0 0 0 3px #4c6fff1a;outline:none}.message-input-form textarea:disabled{background-color:#f5f5f5;color:#999}.input-actions{align-items:center;display:flex;justify-content:space-between;margin-top:8px}.char-count{color:#999;font-size:12px}.btn-send{background-color:#4c6fff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 20px;transition:all .2s}.btn-send:hover:not(:disabled){background-color:#3d57e0;box-shadow:0 4px 12px #4c6fff4d}.btn-send:disabled{cursor:not-allowed;opacity:.6}@media (max-width:768px){.message-detail-view{height:auto;max-width:100%}.message-detail-header{padding:12px 16px}.header-info h2{font-size:16px}.messages-container{max-height:60vh;padding:12px 16px}.message-content,.message-item.sent .message-content{max-width:85%}.message-input-form{padding:12px 16px}}.direct-messaging{margin:0 auto;max-width:1200px;padding:20px}.messaging-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.messaging-header h1{font-size:28px;font-weight:600;margin:0}.header-info{color:#999;font-size:14px}.search-section{margin-bottom:24px}.search-input{border-radius:6px;max-width:400px;padding:10px 12px;transition:all .2s;width:100%}.search-input:focus{border-color:#4c6fff;box-shadow:0 0 0 3px #4c6fff1a}.empty-state{background:#f9f9f9;border-radius:8px}.error-message{background-color:#ffebee;border-radius:6px;color:#c62828;font-size:14px;margin-bottom:16px;padding:12px 16px}.loading{color:#999}.realtime-indicator{align-items:center;background:#f5f5f5;border-radius:6px;color:#999;display:flex;font-size:12px;gap:8px;justify-content:center;margin-top:24px;padding:12px}.pulse{animation:pulse 2s infinite;background-color:#4caf50;border-radius:50%;display:inline-block;height:8px;width:8px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@media (max-width:768px){.direct-messaging{padding:12px}.messaging-header{align-items:flex-start;flex-direction:column;gap:8px}.messaging-header h1{font-size:24px}.search-input{max-width:100%}}.teachers-page{margin:0 auto;max-width:1400px;padding:20px}.teachers-header{align-items:center;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;margin-bottom:30px}.teachers-header h1{color:#333;font-size:28px;font-weight:600;margin:0}.teachers-header-actions{display:flex;gap:10px}.teachers-content{display:flex;flex-direction:column;gap:20px}.teachers-primary-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .3s ease}.teachers-primary-btn:hover:not(:disabled){box-shadow:0 8px 16px #667eea66;transform:translateY(-2px)}.teachers-primary-btn:disabled{cursor:not-allowed;opacity:.6}.teachers-submit-btn{background:#667eea;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:all .3s ease;width:100%}.teachers-submit-btn:hover:not(:disabled){background:#5568d3;box-shadow:0 4px 12px #667eea66}.teachers-submit-btn:disabled{cursor:not-allowed;opacity:.6}.teachers-back-btn{background:#f0f0f0;border:1px solid #ddd;border-radius:8px;color:#333;cursor:pointer;font-size:14px;padding:10px 16px;transition:all .3s ease}.teachers-back-btn:hover{background:#e8e8e8}.btn-action{background:#667eea;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;padding:8px 16px;transition:all .3s ease}.btn-action:hover{background:#5568d3}.btn-remove{background:#ff6b6b;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;padding:8px 16px;transition:all .3s ease}.btn-remove:hover{background:#ee5a52}.btn-action-sm,.btn-remove-sm{border:none;border-radius:6px;cursor:pointer;font-size:12px;font-weight:600;margin-bottom:8px;padding:8px 12px;transition:all .3s ease;width:100%}.btn-action-sm{background:#667eea;color:#fff}.btn-action-sm:hover{background:#5568d3}.btn-remove-sm{background:#ff6b6b;color:#fff}.btn-remove-sm:hover{background:#ee5a52}.teacher-accept-form,.teacher-form,.teacher-invite-card,.teacher-login-form{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:24px}.teacher-form-group{margin-bottom:20px}.teacher-form-group label{color:#333;display:block;font-size:14px;font-weight:600;margin-bottom:8px}.teacher-form-group input,.teacher-form-group textarea{border:1px solid #ddd;border-radius:8px;font-family:inherit;font-size:14px;padding:12px;transition:border-color .3s ease;width:100%}.teacher-form-group input:focus,.teacher-form-group textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.teacher-form-group input:disabled{background:#f5f5f5;cursor:not-allowed}.teacher-form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.teacher-form-error,.teachers-error{background:#fee;border-left:4px solid #c33;color:#c33}.teacher-form-error,.teachers-error,.teachers-success{border-radius:8px;font-size:14px;margin-bottom:16px;padding:12px}.teachers-success{background:#efe;border-left:4px solid #3c3;color:#3c3}.teacher-login-page{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:20px}.teacher-accept-card,.teacher-login-card{background:#fff;border-radius:12px;box-shadow:0 10px 40px #00000026;max-width:400px;padding:40px;width:100%}.teacher-accept-card h1,.teacher-login-title{color:#333;font-size:28px;font-weight:700;margin:0 0 8px;text-align:center}.teacher-accept-subtitle,.teacher-login-subtitle{color:#666;font-size:14px;margin-bottom:30px;text-align:center}.teacher-login-footer{color:#666;font-size:13px;margin-top:20px;text-align:center}.teacher-accept-page{align-items:center;background:#f5f5f5;display:flex;justify-content:center;min-height:100vh;padding:20px}.teacher-accept-card{max-width:500px}.teacher-accept-card.error-state{text-align:center}.teacher-accept-card.error-state h1{color:#c33}.teacher-accept-info,.teacher-invite-info{background:#f9f9f9;border-radius:8px;color:#666;font-size:13px;line-height:1.6;margin-top:20px;padding:16px}.assign-students-table-wrap,.teachers-table-wrap{overflow-x:auto}.teachers-table{background:#fff;border-collapse:collapse;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden;width:100%}.teachers-table thead{background:#f9f9f9;border-bottom:2px solid #eee}.teachers-table th{color:#666;font-size:13px;font-weight:600;padding:16px;text-align:left;text-transform:uppercase}.teachers-table tbody tr{border-bottom:1px solid #eee;transition:background .2s ease}.teachers-table tbody tr:hover{background:#fafafa}.teachers-table td{color:#333;font-size:14px;padding:16px}.teachers-table td.numeric{font-weight:600;text-align:right}.teachers-table td.empty-state{color:#999;padding:40px 16px;text-align:center}.teacher-info{align-items:center;display:flex;gap:12px}.teacher-avatar{border-radius:50%;height:40px;object-fit:cover;width:40px}.contact-info{color:#666;font-size:13px}.contact-info div{margin-bottom:4px}.action-buttons{flex-wrap:wrap;gap:8px}.teachers-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.teacher-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;display:flex;flex-direction:column;padding:20px;transition:all .3s ease}.teacher-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.teacher-card-avatar{border-radius:50%;height:80px;margin:0 auto 16px;object-fit:cover;width:80px}.teacher-card h3{color:#333;font-size:18px;margin:0 0 12px;text-align:center}.teacher-card-contact{margin-bottom:16px;text-align:center}.teacher-card-contact p{color:#666;font-size:13px;margin:4px 0}.teacher-card-stats{grid-gap:12px;border-bottom:1px solid #eee;border-top:1px solid #eee;display:grid;gap:12px;grid-template-columns:1fr 1fr;margin-bottom:16px;padding:12px 0}.teacher-card-stats .stat{align-items:center;display:flex;flex-direction:column}.stat-value{color:#667eea;font-size:18px;font-weight:700}.stat-label{color:#999;font-size:12px;margin-top:4px}.teacher-card-meta{color:#999;font-size:12px;margin-bottom:16px}.teacher-card-actions{margin-top:auto}.teachers-stats{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:20px}.stat-card{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;box-shadow:0 4px 12px #667eea4d;color:#fff;padding:24px;text-align:center}.stat-card h3{font-size:32px;font-weight:700;margin:0 0 8px}.stat-card p{font-size:14px;margin:0;opacity:.9}.assign-controls,.teachers-controls{align-items:center;display:flex;flex-wrap:wrap;gap:16px}.search-input{border:1px solid #ddd;border-radius:8px;flex:1 1;font-size:14px;min-width:200px;padding:10px 16px;transition:border-color .3s ease}.search-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.result-count{color:#666;font-size:13px;white-space:nowrap}.teacher-toggle-pending{background:#f0f0f0;border:1px solid #ddd;border-radius:8px;color:#333;cursor:pointer;font-size:14px;font-weight:600;padding:10px 16px;transition:all .3s ease}.teacher-toggle-pending:hover{background:#e8e8e8}.assign-students-card,.teacher-invitations-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:24px}.teacher-invitations-list{margin-top:20px}.modal-overlay{background:#00000080}.modal-content{box-shadow:0 10px 40px #0000004d;max-width:400px;padding:24px}.modal-content h3{color:#333;font-size:20px;margin:0 0 16px}.modal-content p{color:#666;font-size:14px;line-height:1.6;margin:0 0 20px}.modal-actions{justify-content:flex-end}.btn-cancel,.btn-confirm-delete{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .3s ease}.btn-cancel{background:#f0f0f0}.btn-cancel:hover{background:#e8e8e8}.btn-confirm-delete{background:#ff6b6b;color:#fff}.btn-confirm-delete:hover{background:#ee5a52}.btn-cancel:disabled,.btn-confirm-delete:disabled{cursor:not-allowed;opacity:.6}.empty-state-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:60px 24px;text-align:center}.empty-state-card h3{color:#333;font-size:18px;margin:0 0 8px}.empty-state-card p{color:#666;font-size:14px;margin:0 0 20px}input[type=checkbox]{accent-color:#667eea;cursor:pointer;height:18px;width:18px}input[type=checkbox]:disabled{cursor:not-allowed;opacity:.6}@media (max-width:768px){.teachers-page{padding:16px}.teachers-header{align-items:flex-start;flex-direction:column}.teachers-header h1{font-size:22px}.teacher-form-row{grid-template-columns:1fr}.teachers-table td,.teachers-table th{font-size:12px;padding:12px}.action-buttons{flex-direction:column}.btn-action,.btn-remove{margin-bottom:8px;width:100%}.teachers-grid,.teachers-stats{grid-template-columns:1fr}.modal-content{padding:20px}.assign-controls{align-items:stretch;flex-direction:column}.search-input{min-width:auto}}@media (max-width:480px){.teacher-accept-card,.teacher-login-card{padding:24px 16px}.teacher-login-title{font-size:22px}.teachers-table{font-size:12px}.action-buttons{gap:4px}}.teacher-dashboard{background-color:#f5f6fa;min-height:100%;padding:32px}.course-selector-section{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;display:flex;gap:16px;margin-bottom:24px;padding:20px}.course-label{color:#202224;font-weight:600;min-width:120px}.course-selector{background-color:#fff;border:1px solid #ddd;border-radius:8px;cursor:pointer;flex:1 1;font-family:Nunito Sans,sans-serif;font-size:14px;padding:10px 16px}.course-selector:hover{border-color:#4c6fff}.course-selector:focus{border-color:#4c6fff;box-shadow:0 0 0 3px #4c6fff1a;outline:none}.filters-section{grid-gap:16px;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.filter-select,.search-input{background-color:#fff;border:1px solid #ddd;border-radius:8px;cursor:pointer;font-family:Nunito Sans,sans-serif;font-size:14px;padding:10px 16px}.search-input::placeholder{color:#999}.filter-select:focus,.search-input:focus{border-color:#4c6fff;box-shadow:0 0 0 3px #4c6fff1a;outline:none}.students-table-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;overflow:hidden}.empty-state{color:#999}.empty-state p{font-size:16px}.students-table{border-collapse:collapse;width:100%}.students-table thead{background-color:#f5f5f5;border-bottom:1px solid #eee}.students-table th{color:#333;font-size:13px;font-weight:600;letter-spacing:.5px;padding:16px;text-align:left;text-transform:uppercase}.students-table td{border-bottom:1px solid #eee;color:#333;font-size:14px;padding:16px}.name-cell,.status-badge{font-weight:600}.status-badge{border-radius:4px;display:inline-block;font-size:12px;padding:4px 12px;text-transform:capitalize}.status-badge.active{background-color:#e8f5e9;color:#2e7d32}.status-badge.completed{background-color:#e3f2fd;color:#1565c0}.status-badge.at-risk{background-color:#fff3e0;color:#e65100}.progress-bar-cell{align-items:center;display:flex;gap:8px}.progress-bar{flex:1 1;min-width:100px}.progress-text{color:#666;font-size:12px;font-weight:600;min-width:40px;text-align:right}.centered{text-align:center}.btn-view{border:none;border-radius:6px;cursor:pointer;font-size:13px;font-weight:600;padding:6px 16px;transition:background-color .2s}.students-table tbody tr:hover{background-color:#fafafa}.pagination{border-top:1px solid #eee}.pagination-info{min-width:150px}@media (max-width:1024px){.filters-section{grid-template-columns:1fr}.students-table{font-size:13px}.students-table td,.students-table th{padding:12px}}@media (max-width:768px){.teacher-dashboard{padding:16px}.dashboard-header h1{font-size:24px}.course-selector-section{align-items:flex-start;flex-direction:column}.students-table{font-size:12px}.students-table td,.students-table th{padding:8px}.students-table tbody td:not(:first-child),.students-table thead th:not(:first-child){display:none}.students-table tbody tr{border-top:2px solid #eee;display:block}.students-table td{display:block;padding-left:50%;position:relative;text-align:right}.students-table td:before{content:attr(data-label);font-weight:700;left:6px;position:absolute;text-align:left}.btn-view{display:block;text-align:center;width:100%}}.student-detail{background-color:#f5f6fa;min-height:100%;padding:32px}.detail-header{margin-bottom:32px}.student-info-header h1{color:#202224;font-size:32px;font-weight:700;margin:0}.student-email{font-size:16px;margin:8px 0 0}.overview-cards{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:32px}.card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;padding:24px}.card-label{color:#666;font-size:13px;font-weight:600;letter-spacing:.5px;margin-bottom:12px;text-transform:uppercase}.card-value{color:#202224;font-size:28px;font-weight:700;margin-bottom:12px}.card-date{color:#999;font-size:12px;margin-bottom:12px}.progress-bar-card{background-color:#f0f0f0;border-radius:4px;height:8px;margin-top:16px;overflow:hidden}.chart-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;margin-bottom:32px;padding:24px}.chart-section h2{color:#202224;font-size:20px;font-weight:700;margin:0 0 24px}.lessons-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;margin-bottom:32px;padding:24px}.lessons-section h2{color:#202224;font-size:20px;font-weight:700;margin:0 0 24px}.empty-message{color:#999;margin:0;padding:40px 0;text-align:center}.lessons-list{display:flex;flex-direction:column;gap:16px}.lesson-item{border:1px solid #eee;border-radius:8px;padding:16px;transition:all .2s}.lesson-item:hover{background-color:#f9f9ff;border-color:#4c6fff}.lesson-title{color:#202224;font-size:15px;font-weight:600;margin-bottom:12px}.lesson-progress{align-items:center;display:flex;gap:12px;margin-bottom:12px}.lesson-progress .progress-bar{background-color:#f0f0f0;border-radius:3px;flex:1 1;height:6px;overflow:hidden}.lesson-progress span{color:#666;font-size:13px;font-weight:600;min-width:40px;text-align:right}.lesson-meta{align-items:center;display:flex;gap:12px}.badge-completed{background-color:#e8f5e9;border-radius:4px;color:#2e7d32;font-size:12px;font-weight:600;padding:4px 8px}.lesson-date{color:#999;font-size:12px}.activity-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;margin-bottom:32px;padding:24px}.activity-section h2{color:#202224;font-size:20px;font-weight:700;margin:0 0 24px}.activity-list{display:flex;flex-direction:column;gap:12px;max-height:400px;overflow-y:auto}.activity-item{background-color:#f9f9ff;border-left:3px solid #4c6fff;border-radius:4px;padding:12px}.activity-time{color:#999;font-size:12px;font-weight:600;margin-bottom:4px}.activity-description{color:#333;font-size:14px}.action-buttons{gap:16px;margin-top:32px}.btn-primary,.btn-secondary{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:all .2s}.btn-primary{background-color:#4c6fff;color:#fff}.btn-primary:hover{background-color:#3d57d4}.btn-secondary{background-color:#f5f5f5;border:1px solid #ddd;color:#333}.btn-secondary:hover{background-color:#e8e8e8}@media (max-width:768px){.student-detail{padding:16px}.student-info-header h1{font-size:24px}.overview-cards{grid-template-columns:1fr}.action-buttons{flex-direction:column}.btn-primary,.btn-secondary{width:100%}}.quiz-feedback{background-color:#f5f6fa;min-height:100%;padding:32px}.feedback-header{margin-bottom:32px}.btn-back{background:none;border:none;color:#4c6fff;cursor:pointer;font-size:16px;font-weight:600;margin-bottom:16px;padding:0;transition:color .2s}.btn-back:hover{color:#3d57d4}.header-content h1{color:#202224;font-size:32px;font-weight:700;margin:0}.header-subtitle{color:#666;font-size:16px;margin:8px 0 0}.success-message{align-items:center;background-color:#e8f5e9;border-left:4px solid #2e7d32;border-radius:8px;color:#2e7d32;display:flex;font-weight:600;gap:12px;margin-bottom:24px;padding:16px}.success-message svg{flex-shrink:0}.feedback-container{grid-gap:32px;display:grid;gap:32px;grid-template-columns:1fr 1fr}.feedback-form-card,.quiz-details-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;padding:24px}.feedback-form-card h2,.quiz-details-card h2{color:#202224;font-size:20px;font-weight:700;margin:0 0 20px}.detail-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr;margin-bottom:24px}.detail-item{display:flex;flex-direction:column;gap:6px}.detail-item .label{color:#666;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.detail-item .value{color:#202224;font-size:16px;font-weight:600}.detail-item .value.score{color:#4c6fff;font-size:18px}.questions-section{border-top:1px solid #eee;margin-top:24px;padding-top:24px}.questions-section h3{color:#202224;font-size:16px;font-weight:700;margin:0 0 16px}.questions-list{display:flex;flex-direction:column;gap:12px}.question-item{background-color:#f9f9f9;border:1px solid #eee;border-left:4px solid #ddd;border-radius:8px;padding:16px}.question-item.correct{background-color:#f1f8f5;border-left-color:#2e7d32}.question-item.incorrect{background-color:#fef2f2;border-left-color:#b91c1c}.question-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.question-number{color:#333;font-size:13px;font-weight:600}.question-status{border-radius:4px;font-size:12px;font-weight:600;padding:4px 8px}.question-status.correct{background-color:#e8f5e9;color:#2e7d32}.question-status.incorrect{background-color:#ffebee;color:#b91c1c}.question-text{color:#333;font-size:14px;font-weight:500;margin-bottom:8px}.correct-answer,.student-answer{color:#666;font-size:13px;margin-bottom:4px}.correct-answer strong,.student-answer strong{color:#333;font-weight:600}.correct-answer{color:#2e7d32}.form-group{display:flex;flex-direction:column;gap:8px;margin-bottom:24px}.form-group label{color:#202224;font-size:14px;font-weight:600}.form-group small{color:#999;font-size:12px}.score-input-group{align-items:center;display:flex;gap:8px}.score-input{border:1px solid #ddd;border-radius:8px;flex:1 1;font-family:Nunito Sans,sans-serif;font-size:14px;padding:10px 12px}.score-input:focus{border-color:#4c6fff;box-shadow:0 0 0 3px #4c6fff1a;outline:none}.score-helper{color:#666;font-size:14px;font-weight:600;min-width:40px}.feedback-textarea,.suggestions-textarea{border:1px solid #ddd;border-radius:8px;color:#333;font-family:Nunito Sans,sans-serif;font-size:14px;padding:12px;resize:vertical}.feedback-textarea::placeholder,.suggestions-textarea::placeholder{color:#999}.feedback-textarea:focus,.suggestions-textarea:focus{border-color:#4c6fff;box-shadow:0 0 0 3px #4c6fff1a;outline:none}.form-actions{display:flex;gap:12px;margin-top:24px}@media (max-width:1024px){.feedback-container{grid-template-columns:1fr}}@media (max-width:768px){.quiz-feedback{padding:16px}.header-content h1{font-size:24px}.detail-grid{grid-template-columns:1fr}.form-actions{flex-direction:column}.btn-cancel,.btn-submit{width:100%}}.at-risk-dashboard{background-color:#f5f6fa;min-height:100%;padding:32px}.dashboard-header{margin-bottom:32px}.dashboard-header h1{color:#202224;font-size:32px;font-weight:700;letter-spacing:-.11px;margin:0}.filters-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;flex-wrap:wrap;gap:16px;margin-bottom:24px;padding:20px}.filter-group,.filters-section{align-items:center;display:flex}.filter-group{gap:8px}.filter-group label{color:#333;font-size:14px;font-weight:600;min-width:120px}.filter-select{background-color:#fff;border:1px solid #ddd;border-radius:8px;cursor:pointer;font-family:Nunito Sans,sans-serif;font-size:14px;min-width:150px;padding:10px 16px}.filter-select:hover{border-color:#4c6fff}.filter-select:focus{border-color:#4c6fff;box-shadow:0 0 0 3px #4c6fff1a;outline:none}.students-container{width:100%}.empty-state{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;padding:60px 20px;text-align:center}.empty-state svg{color:#ccc;margin-bottom:16px}.empty-state p{color:#333;font-size:18px;font-weight:600;margin:0}.empty-subtitle{color:#999;font-size:14px;margin-top:8px!important}.students-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));margin-bottom:32px}.student-card{background:#fff;border-left:4px solid #ddd;border-radius:12px;box-shadow:0 2px 8px #0000000d;overflow:hidden;padding:24px;position:relative;transition:all .2s}.student-card:hover{box-shadow:0 8px 24px #0000001f;transform:translateY(-2px)}.student-card.risk-high{background:linear-gradient(135deg,#fff5f5,#fff);border-left-color:#ff6b6b}.student-card.risk-medium{background:linear-gradient(135deg,#fff9f0,#fff);border-left-color:#ffa94d}.student-card.risk-low{background:linear-gradient(135deg,#f5f8ff,#fff);border-left-color:#4c6fff}.risk-badge{border-radius:6px;display:inline-block;font-size:12px;font-weight:600;margin-bottom:12px;padding:6px 12px}.risk-badge.risk-high{background-color:#ffebee;color:#b91c1c}.risk-badge.risk-medium{background-color:#fff3e0;color:#e65100}.risk-badge.risk-low{background-color:#e3f2fd;color:#1565c0}.student-header{margin-bottom:16px}.student-header h3{color:#202224;font-size:18px;font-weight:700;margin:0 0 4px}.student-email{color:#666;font-size:13px;margin:0}.metrics{grid-gap:16px;border-bottom:1px solid #eee;display:grid;gap:16px;grid-template-columns:1fr 1fr;margin-bottom:20px;padding-bottom:20px}.metric{display:flex;flex-direction:column;gap:6px}.metric-label{color:#666;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.metric-value{font-size:20px}.metric-value.score-high{color:#ff6b6b}.metric-value.score-medium{color:#ffa94d}.metric-value.score-low{color:#2e7d32}.risk-reasons{background-color:#00000005;border-radius:8px;margin-bottom:20px;padding:12px}.risk-reasons h4{color:#666;font-size:12px;font-weight:600;letter-spacing:.5px;margin:0 0 8px;text-transform:uppercase}.risk-reasons ul{display:flex;flex-direction:column;gap:6px;list-style:none;margin:0;padding:0}.risk-reasons li{color:#333;font-size:13px;margin:0;padding-left:16px;position:relative}.risk-reasons li:before{color:#ff6b6b;content:"•";font-weight:700;left:0;position:absolute}.progress-indicator{margin-bottom:20px}.progress-bar{background-color:#f0f0f0;border-radius:4px;height:8px;margin-bottom:8px;overflow:hidden}.progress-fill{background:linear-gradient(90deg,#4c6fff,#29cc97);height:100%;transition:width .3s ease}.progress-label{color:#666;font-size:12px;font-weight:600}.action-buttons{display:flex;gap:12px}.btn-message,.btn-view{border:none;border-radius:8px;cursor:pointer;flex:1 1;font-size:13px;font-weight:600;padding:10px 12px;text-align:center;transition:all .2s}.btn-message{background-color:#e3f2fd;color:#1565c0}.btn-message:hover{background-color:#bbdefb}.btn-view{background-color:#4c6fff;color:#fff}.btn-view:hover{background-color:#3d57d4}.pagination{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;display:flex;gap:16px;justify-content:center;margin-top:24px;padding:24px}.pagination-btn{background-color:#f5f5f5;border:1px solid #ddd;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;padding:8px 16px;transition:all .2s}.pagination-btn:hover:not(:disabled){background-color:#4c6fff;border-color:#4c6fff;color:#fff}.pagination-btn:disabled{cursor:not-allowed;opacity:.5}.pagination-info{color:#666;font-size:14px;min-width:200px;text-align:center}.modal-overlay{background-color:#00000080;bottom:0;left:0;right:0;top:0}.modal-content{animation:slideIn .3s ease-out;background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-width:500px;width:90%}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.modal-header{border-bottom:1px solid #eee;padding:24px}.modal-header h2{color:#202224;font-size:20px;font-weight:700;margin:0}.modal-close{align-items:center;color:#999;display:flex;font-size:28px;height:32px;justify-content:center;padding:0;transition:color .2s;width:32px}.modal-close:hover{color:#333}.modal-body{padding:24px}.message-textarea{border:1px solid #ddd;border-radius:8px;color:#333;font-family:Nunito Sans,sans-serif;font-size:14px;padding:12px;resize:vertical;width:100%}.message-textarea::placeholder{color:#999}.message-textarea:focus{border-color:#4c6fff;box-shadow:0 0 0 3px #4c6fff1a;outline:none}.modal-actions{border-top:1px solid #eee;display:flex;gap:12px;padding:24px}.btn-cancel,.btn-submit{border:none;border-radius:8px;cursor:pointer;flex:1 1;font-size:14px;font-weight:600;padding:12px 24px;transition:all .2s}.btn-submit{background-color:#4c6fff;color:#fff}.btn-submit:hover:not(:disabled){background-color:#3d57d4}.btn-submit:disabled{cursor:not-allowed;opacity:.6}.btn-cancel{background-color:#f5f5f5;border:1px solid #ddd;color:#333}.btn-cancel:hover:not(:disabled){background-color:#e8e8e8}.btn-cancel:disabled{cursor:not-allowed;opacity:.6}@media (max-width:1200px){.students-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}}@media (max-width:768px){.at-risk-dashboard{padding:16px}.dashboard-header h1{font-size:24px}.filter-group,.filters-section{align-items:flex-start;flex-direction:column}.filter-group,.filter-select{width:100%}.metrics,.students-grid{grid-template-columns:1fr}.action-buttons{flex-direction:column}.btn-message,.btn-view{width:100%}.modal-content{width:95%}}.teacher-metrics{background-color:#f5f6fa;min-height:100%;padding:32px}.header{margin-bottom:32px}.header h1{color:#202224;font-size:32px;font-weight:700;letter-spacing:-.11px;margin:0}.subtitle{color:#666;font-size:14px;margin:8px 0 0}.error-message{background-color:#fef2f2;border-left:4px solid #b91c1c;border-radius:8px;color:#b91c1c;margin-bottom:24px;padding:16px}.loading{color:#666;font-size:16px;padding:40px;text-align:center}.course-selector{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;display:flex;gap:16px;margin-bottom:24px;padding:20px}.course-selector label{color:#202224;font-weight:600;min-width:120px}.course-select{background-color:#fff;border:1px solid #ddd;border-radius:8px;cursor:pointer;flex:1 1;font-family:Nunito Sans,sans-serif;font-size:14px;padding:10px 16px}.course-select:hover{border-color:#4c6fff}.course-select:focus{border-color:#4c6fff;box-shadow:0 0 0 3px #4c6fff1a;outline:none}.metrics-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-bottom:32px}.metric-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;display:flex;gap:16px;padding:24px;transition:all .2s}.metric-card:hover{box-shadow:0 8px 24px #0000001f;transform:translateY(-2px)}.metric-icon{align-items:center;border-radius:12px;display:flex;flex-shrink:0;font-size:28px;height:60px;justify-content:center;width:60px}.metric-icon.enrollment{background-color:#e3f2fd}.metric-icon.completion{background-color:#e8f5e9}.metric-icon.engagement{background-color:#fff3e0}.metric-icon.average{background-color:#f3e5f5}.metric-icon.at-risk{background-color:#ffebee}.metric-icon.retention{background-color:#e0f2f1}.metric-details{display:flex;flex:1 1;flex-direction:column;justify-content:center}.metric-details h3{color:#666;font-size:13px;font-weight:600;letter-spacing:.5px;margin:0 0 8px;text-transform:uppercase}.metric-value{color:#202224;font-size:28px;font-weight:700;margin-bottom:4px}.metric-change{color:#666;font-size:13px;font-weight:600}.metric-change.positive{color:#2e7d32}.charts-section{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));margin-bottom:32px}.chart-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;padding:24px}.chart-card.full-width{grid-column:1/-1}.chart-card h2{color:#202224;font-size:18px;font-weight:700;margin:0 0 24px}.insights-section{margin-bottom:32px}.insights-section h2{color:#202224;font-size:20px;font-weight:700;margin:0 0 24px}.insights-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.insight-card{background:#fff;border-left:4px solid #ddd;border-radius:12px;box-shadow:0 2px 8px #0000000d;padding:24px;transition:all .2s}.insight-card:hover{box-shadow:0 8px 24px #0000001f;transform:translateY(-2px)}.insight-card.insight-positive{background:linear-gradient(135deg,#f1f8f5,#fff);border-left-color:#2e7d32}.insight-card.insight-warning{background:linear-gradient(135deg,#fff5f5,#fff);border-left-color:#ff6b6b}.insight-card.insight-info{background:linear-gradient(135deg,#f5f8ff,#fff);border-left-color:#4c6fff}.insight-icon{font-size:24px;margin-bottom:12px}.insight-content h3{color:#202224;font-size:16px;font-weight:700;margin:0 0 8px}.insight-content p{color:#666;font-size:14px;line-height:1.5;margin:0 0 12px}.insight-action{background-color:#4c6fff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:12px;font-weight:600;padding:8px 16px;transition:background-color .2s}.insight-action:hover{background-color:#3d57d4}.empty-insights{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;padding:40px;text-align:center}.empty-insights p{color:#999;margin:0}.recommendations-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;padding:24px}.recommendations-section h2{color:#202224;font-size:20px;font-weight:700;margin:0 0 24px}.recommendations-list{display:flex;flex-direction:column;gap:16px}.recommendation-item{background-color:#f9f9f9;border-left:4px solid #4c6fff;border-radius:8px;display:flex;gap:16px;padding:16px}.rec-number{align-items:center;background-color:#4c6fff;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-weight:700;height:40px;justify-content:center;width:40px}.rec-content h4{color:#202224;font-size:15px;font-weight:700;margin:0 0 8px}.rec-content p{color:#666;font-size:14px;line-height:1.5;margin:0 0 8px}.rec-impact{background-color:#e8f5e9;border-radius:4px;color:#2e7d32;display:inline-block;font-size:12px;font-weight:600;padding:8px}@media (max-width:1200px){.charts-section{grid-template-columns:1fr}.metrics-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}}@media (max-width:768px){.teacher-metrics{padding:16px}.header h1{font-size:24px}.course-selector{align-items:flex-start;flex-direction:column}.course-select{width:100%}.charts-section,.insights-grid,.metrics-grid{grid-template-columns:1fr}.metric-card{flex-direction:column}.metric-icon{height:50px;width:50px}.recommendations-list{gap:12px}.recommendation-item{flex-direction:column}.rec-number{font-size:14px;height:32px;width:32px}}.statistics-page{background-color:#f5f6fa;min-height:100%;padding:32px}.statistics-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:28px}.statistics-title{color:#202224;font-size:26px;font-weight:700;margin:0}.statistics-subtitle{color:#888;font-size:14px;margin-top:4px}.stats-period-tabs{background:#fff;border:1px solid #e8eaf0;border-radius:10px;display:flex;flex-shrink:0;gap:2px;padding:4px}.stats-period-tab{background:none;border:none;border-radius:7px;color:#64748b;cursor:pointer;font-size:13px;font-weight:500;padding:7px 16px;transition:all .15s;white-space:nowrap}.stats-period-tab.active{background:#4c6fff;box-shadow:0 2px 6px #4c6fff40;color:#fff}.stats-period-tab:not(.active):hover{background:#f1f5f9;color:#374151}.stats-error,.stats-loading{color:#888;font-size:15px;padding:60px 24px;text-align:center}.stats-error{color:#ef4444}.stats-skeleton{animation:shimmer 1.4s infinite;background:linear-gradient(90deg,#f0f0f0 25%,#e8e8e8 50%,#f0f0f0 75%);background-size:200% 100%;border-radius:8px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.stats-kpi-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(4,1fr);margin-bottom:24px}@media (max-width:1200px){.stats-kpi-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.stats-kpi-grid{grid-template-columns:1fr}}.stats-kpi-card{background:#fff;border-radius:14px;border-top:3px solid #0000;box-shadow:0 1px 4px #0000000f;display:flex;flex-direction:column;gap:6px;padding:20px;transition:box-shadow .2s}.stats-kpi-card:hover{box-shadow:0 4px 16px #0000001a}.stats-kpi-label{color:#94a3b8;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.stats-kpi-value{color:#1e293b;font-size:28px;font-weight:800;line-height:1}.stats-kpi-sub{color:#64748b;font-size:12px;margin-top:2px}.stats-kpi-badge{align-items:center;border-radius:20px;display:inline-flex;font-size:12px;font-weight:600;gap:3px;padding:2px 8px;width:-webkit-fit-content;width:fit-content}.stats-kpi-badge.positive{background:#dcfce7;color:#16a34a}.stats-kpi-badge.neutral{background:#f1f5f9;color:#64748b}.stats-kpi-badge.warning{background:#fef9c3;color:#ca8a04}.stats-section-header{align-items:center;display:flex;gap:10px;margin-bottom:16px;margin-top:8px}.stats-section-title{color:#1e293b;font-size:18px;font-weight:700}.stats-section-divider{background:#e8eaf0;flex:1 1;height:1px}.stats-row-2{grid-gap:20px;grid-template-columns:2fr 1fr}.stats-row-2,.stats-row-equal{display:grid;gap:20px;margin-bottom:24px}.stats-row-equal{grid-gap:20px;grid-template-columns:repeat(2,1fr)}.stats-row-3{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(3,1fr);margin-bottom:24px}@media (max-width:1100px){.stats-row-2,.stats-row-3,.stats-row-equal{grid-template-columns:1fr}}.stats-card{background:#fff;border-radius:14px;box-shadow:0 1px 4px #0000000f;padding:24px;transition:box-shadow .2s}.stats-card:hover{box-shadow:0 4px 16px #00000014}.stats-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.stats-card-title{color:#1e293b;font-size:15px;font-weight:700}.stats-card-badge{background:#f0f4ff;border-radius:20px;color:#4c6fff;font-size:12px;font-weight:600;padding:3px 10px}.stats-chart-empty{align-items:center;color:#cbd5e1;display:flex;font-size:14px;height:200px;justify-content:center}.stats-summary-list{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}.stats-summary-item{align-items:center;background:#f8f9fc;border-radius:8px;display:flex;justify-content:space-between;padding:10px 14px}.stats-summary-label{color:#666;font-size:13px}.stats-summary-value{color:#1e293b;font-size:14px;font-weight:700}.stats-highlight{color:#4c6fff}.stats-engage-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,1fr);margin-bottom:24px}@media (max-width:900px){.stats-engage-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:550px){.stats-engage-grid{grid-template-columns:1fr}}.stats-engage-card{background:#fff;box-shadow:0 1px 4px #0000000f;gap:14px;padding:18px 20px}.stats-engage-card,.stats-engage-icon{align-items:center;border-radius:12px;display:flex}.stats-engage-icon{flex-shrink:0;font-size:20px;height:44px;justify-content:center;width:44px}.stats-engage-label{color:#94a3b8;font-size:12px;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.stats-engage-value{color:#1e293b;font-size:22px;font-weight:800;line-height:1.2}.stats-engage-sub{color:#94a3b8;font-size:11px}.stats-progress-item{margin-bottom:14px}.stats-progress-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:6px}.stats-progress-label{color:#475569;font-size:13px;font-weight:500}.stats-progress-pct{color:#1e293b;font-size:13px;font-weight:700}.stats-progress-track{background:#f1f5f9;border-radius:20px;height:7px;overflow:hidden}.stats-progress-fill{border-radius:20px;height:100%;transition:width .8s cubic-bezier(.25,1,.5,1)}.stats-table{border-collapse:collapse;width:100%}.stats-table th{border-bottom:1px solid #f1f5f9;color:#94a3b8;font-size:11px;font-weight:700;letter-spacing:.06em;padding:0 12px 10px;text-align:left;text-transform:uppercase}.stats-table td{border-bottom:1px solid #f8f9fc;color:#374151;font-size:13px;padding:12px}.stats-table tr:last-child td{border-bottom:none}.stats-table tr:hover td{background:#fafbff}.stats-table td:last-child,.stats-table th:last-child{text-align:right}.stats-rank{align-items:center;background:#f1f5f9;border-radius:50%;color:#64748b;display:inline-flex;font-size:11px;font-weight:700;height:22px;justify-content:center;margin-right:8px;width:22px}.stats-rank.gold{background:#fef9c3;color:#ca8a04}.stats-rank.silver{background:#f1f5f9;color:#475569}.stats-rank.bronze{background:#fef3e2;color:#c2672a}.stats-revenue-chip{background:#dcfce7;border-radius:20px;color:#15803d;display:inline-block;font-size:12px;font-weight:600;padding:2px 8px}.stats-role-list{display:flex;flex-direction:column;gap:10px}.stats-role-item{align-items:center;display:flex;gap:10px}.stats-role-dot{border-radius:50%;flex-shrink:0;height:10px;width:10px}.stats-role-label{color:#475569;flex:1 1;font-size:13px;text-transform:capitalize}.stats-role-count{color:#1e293b;font-size:13px;font-weight:700}.stats-role-bar{background:#f1f5f9;border-radius:20px;height:6px;overflow:hidden;width:80px}.stats-role-fill{border-radius:20px;height:100%}.stats-provider-list{display:flex;flex-direction:column;gap:10px}.stats-provider-item{align-items:center;background:#f8f9fc;border-radius:8px;display:flex;justify-content:space-between;padding:10px 14px}.stats-provider-name{color:#374151;font-size:13px;font-weight:600;text-transform:capitalize}.stats-provider-amount{color:#4c6fff;font-size:13px;font-weight:700}.stats-period-select{background:#fff;border:1px solid #e0e0e0;border-radius:8px;color:#555;cursor:pointer;font-size:13px;padding:6px 12px}.stats-metrics-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(4,1fr);margin-bottom:28px}@media (max-width:1100px){.stats-metrics-grid{grid-template-columns:repeat(2,1fr)}}.stats-charts-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:2fr 1fr}@media (max-width:900px){.stats-charts-row{grid-template-columns:1fr}}.stats-chart-card{background:#fff;border-radius:14px;box-shadow:0 1px 4px #0000000f;padding:24px}.stats-chart-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.stats-chart-title{color:#202224;font-size:16px;font-weight:600}.team-page{background:#f5f6fa;min-height:100%;padding:32px}.team-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:24px}.team-title{color:#202224;font-size:26px;font-weight:700;margin:0}.team-subtitle{color:#94a3b8;font-size:14px;margin-top:4px}.team-header-actions{align-items:center;display:flex;gap:10px}.team-add-btn{align-items:center;background:#4c6fff;border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:10px 20px;transition:background .15s,box-shadow .15s;white-space:nowrap}.team-add-btn:hover{background:#3a5ce0;box-shadow:0 4px 12px #4c6fff59}.team-view-toggle{background:#fff;border:1px solid #e8eaf0;border-radius:10px;display:flex;gap:2px;padding:4px}.team-view-btn{align-items:center;background:none;border:none;border-radius:7px;color:#94a3b8;cursor:pointer;display:flex;font-size:16px;height:34px;justify-content:center;transition:all .15s;width:34px}.team-view-btn.active{background:#4c6fff;color:#fff}.team-view-btn:not(.active):hover{background:#f1f5f9;color:#374151}.team-stats-strip{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(4,1fr);margin-bottom:24px}@media (max-width:900px){.team-stats-strip{grid-template-columns:repeat(2,1fr)}}@media (max-width:500px){.team-stats-strip{grid-template-columns:1fr}}.team-stat-card{align-items:center;background:#fff;border-left:4px solid #0000;border-radius:14px;box-shadow:0 1px 4px #0000000f;display:flex;gap:14px;padding:18px 20px;transition:box-shadow .2s}.team-stat-card:hover{box-shadow:0 4px 14px #00000017}.team-stat-icon{align-items:center;border-radius:12px;display:flex;flex-shrink:0;font-size:20px;height:44px;justify-content:center;width:44px}.team-stat-label{color:#94a3b8;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.team-stat-value{color:#1e293b;font-size:24px;font-weight:800;line-height:1.2}.team-filters-bar{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px}.team-search-wrap{flex:1 1;min-width:200px;position:relative}.team-search-icon{color:#94a3b8;font-size:14px;left:12px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.team-search{background:#fff;border:1px solid #e8eaf0;border-radius:10px;box-sizing:border-box;font-size:14px;outline:none;padding:10px 14px 10px 36px;transition:border-color .2s,box-shadow .2s;width:100%}.team-search:focus{border-color:#4c6fff;box-shadow:0 0 0 3px #4c6fff1a}.team-role-tabs{background:#fff;border:1px solid #e8eaf0;border-radius:10px;display:flex;gap:2px;padding:4px}.team-role-tab{background:none;border:none;border-radius:7px;color:#64748b;cursor:pointer;font-size:13px;font-weight:500;padding:7px 14px;transition:all .15s;white-space:nowrap}.team-role-tab.active{background:#4c6fff;box-shadow:0 2px 6px #4c6fff40;color:#fff}.team-role-tab:not(.active):hover{background:#f1f5f9;color:#374151}.team-sort-select{background:#fff;border:1px solid #e8eaf0;border-radius:10px;color:#374151;cursor:pointer;font-size:13px;outline:none;padding:10px 14px}.team-skeleton{animation:team-shimmer 1.4s infinite;background:linear-gradient(90deg,#f0f0f0 25%,#e8e8e8 50%,#f0f0f0 75%);background-size:200% 100%;border-radius:6px}@keyframes team-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.team-skeleton-card{background:#fff;border-radius:16px;box-shadow:0 1px 4px #0000000f;padding:24px}.team-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));margin-bottom:28px}.team-card{align-items:center;background:#fff;border-radius:16px;box-shadow:0 1px 4px #0000000f;display:flex;flex-direction:column;overflow:hidden;padding:20px 18px 16px;position:relative;text-align:center;transition:box-shadow .2s,transform .15s}.team-card:hover{box-shadow:0 8px 24px #0000001a;transform:translateY(-2px)}.team-card-top-bar{height:4px;left:0;position:absolute;right:0;top:0}.team-card-avatar{align-items:center;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:24px;font-weight:700;height:68px;justify-content:center;margin:10px 0;overflow:hidden;position:relative;width:68px}.team-card-avatar img{height:100%;object-fit:cover;width:100%}.team-card-status-dot{border:2px solid #fff;border-radius:50%;bottom:3px;height:13px;position:absolute;right:3px;width:13px}.team-card-name{color:#1e293b;font-size:14px;font-weight:700;margin-bottom:2px}.team-card-email,.team-card-name{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.team-card-email{color:#94a3b8;font-size:11px;margin-bottom:10px}.team-card-badges{display:flex;flex-wrap:wrap;gap:5px;justify-content:center;margin-bottom:12px}.team-card-role-badge{border-radius:20px;font-size:10px;font-weight:700;letter-spacing:.04em;padding:3px 10px;text-transform:uppercase}.team-card-status-badge{border-radius:20px;font-size:11px;font-weight:600;padding:3px 9px}.team-card-status-badge.active{background:#dcfce7;color:#16a34a}.team-card-status-badge.inactive{background:#f3f4f6;color:#9ca3af}.team-card-status-badge.banned{background:#fef2f2;color:#ef4444}.team-card-meta{color:#cbd5e1;flex-wrap:wrap;font-size:11px;gap:8px;margin-bottom:12px}.team-card-actions,.team-card-meta{display:flex;justify-content:center}.team-card-actions{gap:6px;width:100%}.team-card-action-btn{background:#fff;border:1px solid #e8eaf0;border-radius:8px;color:#64748b;cursor:pointer;flex:1 1;font-size:12px;font-weight:500;max-width:80px;padding:7px 0;transition:all .15s}.team-card-action-btn:hover{background:#f0f4ff;border-color:#4c6fff;color:#4c6fff}.team-card-action-btn.danger:hover{background:#fef2f2;border-color:#ef4444;color:#ef4444}.team-card-action-btn.warn:hover{background:#fefce8;border-color:#f59e0b;color:#b45309}.team-table-wrap{background:#fff;border-radius:16px;box-shadow:0 1px 4px #0000000f;margin-bottom:28px;overflow:hidden}.team-table{border-collapse:collapse;width:100%}.team-table th{background:#f8f9fc;border-bottom:1px solid #f0f2f8;color:#94a3b8;font-size:11px;font-weight:700;letter-spacing:.06em;padding:13px 16px;text-align:left;text-transform:uppercase;white-space:nowrap}.team-table td{border-bottom:1px solid #f8f9fc;color:#374151;font-size:13px;padding:13px 16px;vertical-align:middle}.team-table tbody tr:last-child td{border-bottom:none}.team-table tbody tr:hover td{background:#fafbff}.team-member-cell{gap:10px}.team-avatar,.team-member-cell{align-items:center;display:flex}.team-avatar{border-radius:50%;color:#fff;flex-shrink:0;font-size:13px;font-weight:700;height:38px;justify-content:center;overflow:hidden;position:relative;width:38px}.team-avatar img{height:100%;object-fit:cover;width:100%}.team-avatar-status{border:2px solid #fff;border-radius:50%;bottom:1px;height:10px;position:absolute;right:1px;width:10px}.team-member-name{color:#1e293b;font-size:13px;font-weight:600}.team-member-id{color:#cbd5e1;font-size:11px}.team-role-badge{border-radius:20px;display:inline-block;font-size:11px;font-weight:700;letter-spacing:.03em;padding:3px 10px;text-transform:uppercase}.team-status-badge{align-items:center;border-radius:20px;display:inline-flex;font-size:12px;font-weight:600;gap:5px;padding:4px 10px}.team-status-badge:before{border-radius:50%;content:"";flex-shrink:0;height:6px;width:6px}.team-status-badge.active{background:#dcfce7;color:#16a34a}.team-status-badge.active:before{background:#16a34a}.team-status-badge.inactive{background:#f3f4f6;color:#9ca3af}.team-status-badge.inactive:before{background:#9ca3af}.team-status-badge.banned{background:#fef2f2;color:#ef4444}.team-status-badge.banned:before{background:#ef4444}.team-role-select{background:#f8f9fc;border:1px solid #e8eaf0;border-radius:8px;color:#374151;cursor:pointer;font-size:12px;font-weight:600;outline:none;padding:4px 8px;transition:border-color .15s}.team-role-select:hover{border-color:#4c6fff}.team-actions{display:flex;gap:5px}.team-action-btn{align-items:center;background:#fff;border:1px solid #e8eaf0;border-radius:8px;color:#64748b;cursor:pointer;display:flex;font-size:13px;height:30px;justify-content:center;transition:all .15s;width:30px}.team-action-btn:hover{background:#f0f4ff;border-color:#4c6fff;color:#4c6fff}.team-action-btn.danger:hover{background:#fef2f2;border-color:#ef4444;color:#ef4444}.team-action-btn.warn:hover{background:#fefce8;border-color:#f59e0b;color:#b45309}.team-action-btn.success:hover{background:#f0fdf4;border-color:#22c55e;color:#16a34a}.team-empty{align-items:center;background:#fff;border-radius:16px;box-shadow:0 1px 4px #0000000f;color:#94a3b8;display:flex;flex-direction:column;justify-content:center;margin-bottom:28px;padding:64px 24px}.team-empty-icon{font-size:48px;margin-bottom:16px;opacity:.5}.team-empty-title{color:#475569;font-size:16px;font-weight:600;margin-bottom:6px}.team-empty-sub{color:#94a3b8;font-size:13px}.team-error{background:#fef2f2;border:1px solid #fca5a5;border-radius:10px;color:#ef4444;font-size:14px;margin-bottom:16px;padding:12px 16px}.team-pagination{align-items:center;background:#fff;border-radius:12px;box-shadow:0 1px 4px #0000000f;display:flex;justify-content:space-between;padding:16px 20px}.team-pagination-info{color:#94a3b8;font-size:13px}.team-pagination-controls{align-items:center;display:flex;gap:4px}.team-page-btn{align-items:center;background:#fff;border:1px solid #e8eaf0;border-radius:8px;color:#475569;cursor:pointer;display:flex;font-size:13px;font-weight:500;height:36px;justify-content:center;min-width:36px;padding:0 10px;transition:all .15s}.team-page-btn.current,.team-page-btn:hover:not(:disabled){background:#4c6fff;border-color:#4c6fff;color:#fff}.team-page-btn.current{font-weight:700}.team-page-btn:disabled{cursor:not-allowed;opacity:.35}.team-modal-overlay{align-items:center;background:#0f172a73;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1000}.team-modal{background:#fff;border-radius:18px;box-shadow:0 20px 60px #0000002e;max-height:90vh;max-width:500px;overflow-y:auto;width:100%}.team-modal-header{align-items:center;border-bottom:1px solid #f0f2f8;display:flex;justify-content:space-between;padding:22px 24px 16px}.team-modal-title{color:#1e293b;font-size:17px;font-weight:700}.team-modal-close{align-items:center;background:#f1f5f9;border:none;border-radius:8px;color:#64748b;cursor:pointer;display:flex;font-size:15px;height:30px;justify-content:center;width:30px}.team-modal-close:hover{background:#e2e8f0}.team-modal-body{padding:20px 24px}.team-form-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:1fr 1fr}.team-form-full{grid-column:1/-1}.team-field{display:flex;flex-direction:column;gap:5px}.team-label{color:#475569;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.team-input,.team-select{background:#fff;border:1px solid #e8eaf0;border-radius:9px;color:#1e293b;font-size:14px;outline:none;padding:10px 12px;transition:border-color .2s,box-shadow .2s}.team-input:focus,.team-select:focus{border-color:#4c6fff;box-shadow:0 0 0 3px #4c6fff1a}.team-field-hint{color:#94a3b8;font-size:11px}.team-avatar-preview{align-items:center;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:20px;font-weight:700;height:56px;justify-content:center;margin-bottom:4px;overflow:hidden;width:56px}.team-modal-footer{border-top:1px solid #f0f2f8;display:flex;gap:10px;justify-content:flex-end;padding:14px 24px 20px}.team-btn-cancel{background:#fff;border:1px solid #e8eaf0;border-radius:9px;color:#64748b;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px}.team-btn-cancel:hover{background:#f8f9fc}.team-btn-save{background:#4c6fff;border:none;border-radius:9px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 24px;transition:background .15s}.team-btn-save:hover{background:#3a5ce0}.team-btn-save:disabled{cursor:not-allowed;opacity:.6}.team-form-error{background:#fef2f2;border:1px solid #fca5a5;border-radius:8px;color:#ef4444;font-size:13px;margin-bottom:14px;padding:10px 14px}.team-confirm-modal{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000002e;max-width:380px;padding:28px;text-align:center;width:100%}.team-confirm-icon{font-size:40px;margin-bottom:12px}.team-confirm-title{color:#1e293b;font-size:17px;font-weight:700;margin-bottom:8px}.team-confirm-msg{color:#64748b;font-size:13px;line-height:1.5;margin-bottom:22px}.team-confirm-btns{display:flex;gap:10px;justify-content:center}.team-confirm-cancel{background:#fff;border:1px solid #e8eaf0;border-radius:9px;color:#64748b;cursor:pointer;font-size:14px;padding:10px 20px}.team-confirm-delete{background:#ef4444}.team-confirm-delete,.team-confirm-warn{border:none;border-radius:9px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px}.team-confirm-warn{background:#f59e0b}.team-toast{animation:toast-in .2s ease;background:#1e293b;border-radius:10px;bottom:28px;box-shadow:0 8px 24px #0003;color:#fff;font-size:13px;font-weight:500;padding:12px 20px;position:fixed;right:28px;z-index:2000}.discount-page{background:#f5f6fa;min-height:100%;padding:32px}.discount-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:24px}.discount-title{color:#202224;font-size:26px;font-weight:700;margin:0}.discount-subtitle{color:#94a3b8;font-size:14px;margin-top:4px}.discount-create-btn{align-items:center;background:#4c6fff;border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:10px 20px;transition:background .15s,box-shadow .15s;white-space:nowrap}.discount-create-btn:hover{background:#3a5ce0;box-shadow:0 4px 12px #4c6fff59}.discount-stats-strip{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(5,1fr);margin-bottom:24px}@media (max-width:1100px){.discount-stats-strip{grid-template-columns:repeat(3,1fr)}}@media (max-width:700px){.discount-stats-strip{grid-template-columns:repeat(2,1fr)}}.discount-stat-card{align-items:center;background:#fff;border-left:4px solid #0000;border-radius:14px;box-shadow:0 1px 4px #0000000f;display:flex;gap:14px;padding:18px 20px}.discount-stat-icon{align-items:center;border-radius:11px;display:flex;flex-shrink:0;font-size:19px;height:42px;justify-content:center;width:42px}.discount-stat-label{color:#94a3b8;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.discount-stat-value{color:#1e293b;font-size:22px;font-weight:800;line-height:1.2}.discount-filters{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px}.discount-search-wrap{flex:1 1;min-width:200px;position:relative}.discount-search-icon{color:#94a3b8;font-size:14px;left:12px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.discount-search{background:#fff;border:1px solid #e8eaf0;border-radius:10px;box-sizing:border-box;font-size:14px;outline:none;padding:10px 14px 10px 36px;transition:border-color .2s,box-shadow .2s;width:100%}.discount-search:focus{border-color:#4c6fff;box-shadow:0 0 0 3px #4c6fff1a}.discount-filter-select{color:#374151;cursor:pointer;font-size:13px;outline:none;padding:10px 14px}.discount-filter-select,.discount-status-tabs{background:#fff;border:1px solid #e8eaf0;border-radius:10px}.discount-status-tabs{display:flex;gap:2px;padding:4px}.discount-status-tab{background:none;border:none;border-radius:7px;color:#64748b;cursor:pointer;font-size:13px;font-weight:500;padding:7px 14px;transition:all .15s;white-space:nowrap}.discount-status-tab.active{background:#4c6fff;box-shadow:0 2px 6px #4c6fff40;color:#fff}.discount-status-tab:not(.active):hover{background:#f1f5f9;color:#374151}.discount-table-wrap{background:#fff;border-radius:16px;box-shadow:0 1px 4px #0000000f;margin-bottom:24px;overflow:hidden}.discount-table{border-collapse:collapse;width:100%}.discount-table th{background:#f8f9fc;border-bottom:1px solid #f0f2f8;color:#94a3b8;font-size:11px;font-weight:700;letter-spacing:.06em;padding:12px 16px;text-align:left;text-transform:uppercase;white-space:nowrap}.discount-table td{border-bottom:1px solid #f8f9fc;color:#374151;font-size:13px;padding:14px 16px;vertical-align:middle}.discount-table tbody tr:last-child td{border-bottom:none}.discount-table tbody tr:hover td{background:#fafbff}.discount-code-chip{align-items:center;background:#f0f4ff;border:1px dashed #c7d2fe;border-radius:8px;color:#4c6fff;cursor:pointer;display:inline-flex;font-family:monospace;font-size:13px;font-weight:700;gap:6px;letter-spacing:.05em;padding:5px 10px;transition:background .15s}.discount-code-chip:hover{background:#e0e7ff}.discount-code-copy{font-size:12px;opacity:.6}.discount-type-badge{border-radius:20px;display:inline-block;font-size:11px;font-weight:700;letter-spacing:.03em;padding:3px 10px;text-transform:uppercase}.discount-type-badge.percentage{background:#f0fdf4;color:#16a34a}.discount-type-badge.fixed{background:#fef9c3;color:#b45309}.discount-value{color:#1e293b;font-size:15px;font-weight:800}.discount-scope-badge{background:#f1f5f9;border-radius:20px;color:#64748b;display:inline-block;font-size:11px;font-weight:600;padding:3px 9px;text-transform:capitalize}.discount-usage-wrap{min-width:100px}.discount-usage-row{color:#94a3b8;display:flex;font-size:11px;justify-content:space-between;margin-bottom:4px}.discount-usage-track{background:#f1f5f9;border-radius:20px;height:5px;overflow:hidden}.discount-usage-fill{background:#4c6fff;border-radius:20px;height:100%;transition:width .6s ease}.discount-toggle{flex-shrink:0;height:22px;position:relative;width:40px}.discount-toggle input{height:0;opacity:0;width:0}.discount-toggle-slider{background:#d1d5db;border-radius:20px;cursor:pointer;inset:0;position:absolute;transition:background .2s}.discount-toggle-slider:before{background:#fff;border-radius:50%;box-shadow:0 1px 3px #0003;content:"";height:16px;left:3px;position:absolute;top:3px;transition:transform .2s;width:16px}.discount-toggle input:checked+.discount-toggle-slider{background:#4c6fff}.discount-toggle input:checked+.discount-toggle-slider:before{transform:translateX(18px)}.discount-expiry{color:#64748b;font-size:12px;white-space:nowrap}.discount-expiry.expired{color:#ef4444}.discount-expiry.soon{color:#f59e0b}.discount-actions{display:flex;gap:6px}.discount-action-btn{align-items:center;background:#fff;border:1px solid #e8eaf0;border-radius:8px;color:#64748b;cursor:pointer;display:flex;font-size:13px;height:30px;justify-content:center;transition:all .15s;width:30px}.discount-action-btn:hover{background:#f0f4ff;border-color:#4c6fff;color:#4c6fff}.discount-action-btn.danger:hover{background:#fef2f2;border-color:#ef4444;color:#ef4444}.discount-empty{align-items:center;background:#fff;border-radius:16px;box-shadow:0 1px 4px #0000000f;display:flex;flex-direction:column;padding:64px 24px}.discount-empty-icon{font-size:52px;margin-bottom:16px;opacity:.4}.discount-empty-title{color:#475569;font-size:16px;font-weight:600;margin-bottom:6px}.discount-empty-sub{color:#94a3b8;font-size:13px;margin-bottom:20px}.discount-skeleton{animation:disc-shimmer 1.4s infinite;background:linear-gradient(90deg,#f0f0f0 25%,#e8e8e8 50%,#f0f0f0 75%);background-size:200% 100%;border-radius:6px}@keyframes disc-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.discount-error{background:#fef2f2;border:1px solid #fca5a5;border-radius:10px;color:#ef4444;font-size:14px;margin-bottom:16px;padding:12px 16px}.discount-modal-overlay{align-items:center;background:#0f172a73;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1000}.discount-modal{background:#fff;border-radius:18px;box-shadow:0 20px 60px #0000002e;max-height:90vh;max-width:560px;overflow-y:auto;width:100%}.discount-modal-header{align-items:center;border-bottom:1px solid #f0f2f8;display:flex;justify-content:space-between;padding:22px 24px 18px}.discount-modal-title{color:#1e293b;font-size:17px;font-weight:700}.discount-modal-close{align-items:center;background:#f1f5f9;border:none;border-radius:8px;color:#64748b;cursor:pointer;display:flex;font-size:16px;height:30px;justify-content:center;transition:background .15s;width:30px}.discount-modal-close:hover{background:#e2e8f0}.discount-modal-body{padding:22px 24px}.discount-form-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.discount-form-full{grid-column:1/-1}.discount-field{display:flex;flex-direction:column;gap:6px}.discount-label{color:#475569;font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.discount-input,.discount-select,.discount-textarea{background:#fff;border:1px solid #e8eaf0;border-radius:9px;color:#1e293b;font-size:14px;outline:none;padding:10px 12px;transition:border-color .2s,box-shadow .2s}.discount-input:focus,.discount-select:focus,.discount-textarea:focus{border-color:#4c6fff;box-shadow:0 0 0 3px #4c6fff1a}.discount-textarea{min-height:70px;resize:vertical}.discount-hint{color:#94a3b8;font-size:11px}.discount-type-toggle{border:1px solid #e8eaf0;border-radius:9px;display:flex;overflow:hidden}.discount-type-option{background:none;border:none;color:#64748b;cursor:pointer;flex:1 1;font-size:13px;font-weight:500;padding:10px;transition:all .15s}.discount-type-option.active{background:#4c6fff;color:#fff;font-weight:700}.discount-modal-footer{border-top:1px solid #f0f2f8;display:flex;gap:10px;justify-content:flex-end;padding:16px 24px 22px}.discount-btn-cancel{background:#fff;border:1px solid #e8eaf0;border-radius:9px;color:#64748b;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:background .15s}.discount-btn-cancel:hover{background:#f8f9fc}.discount-btn-save{background:#4c6fff;border:none;border-radius:9px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 24px;transition:background .15s}.discount-btn-save:hover{background:#3a5ce0}.discount-btn-save:disabled{cursor:not-allowed;opacity:.6}.discount-pagination{align-items:center;background:#fff;border-radius:12px;box-shadow:0 1px 4px #0000000f;display:flex;justify-content:space-between;padding:14px 18px}.discount-pagination-info{color:#94a3b8;font-size:13px}.discount-pagination-controls{align-items:center;display:flex;gap:4px}.discount-page-btn{align-items:center;background:#fff;border:1px solid #e8eaf0;border-radius:8px;color:#475569;cursor:pointer;display:flex;font-size:13px;font-weight:500;height:34px;justify-content:center;min-width:34px;padding:0 8px;transition:all .15s}.discount-page-btn.current,.discount-page-btn:hover:not(:disabled){background:#4c6fff;border-color:#4c6fff;color:#fff}.discount-page-btn.current{font-weight:700}.discount-page-btn:disabled{cursor:not-allowed;opacity:.35}.discount-toast{animation:toast-in .2s ease;background:#1e293b;border-radius:10px;bottom:28px;box-shadow:0 8px 24px #0003;color:#fff;font-size:13px;font-weight:500;padding:12px 20px;position:fixed;right:28px;z-index:2000}@keyframes toast-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.calendar-page{background:#f8f9fb;display:flex;height:calc(100vh - 64px);overflow:hidden}.cal-sidebar{background:#fff;border-right:1px solid #e8eaf0;display:flex;flex-direction:column;flex-shrink:0;overflow-y:auto;padding-bottom:24px;width:260px}.cal-sidebar-section{padding:20px 16px 8px}.cal-sidebar-section-title{color:#9ca3af;font-size:11px;font-weight:700;letter-spacing:.08em;margin-bottom:12px;text-transform:uppercase}.mini-cal{-webkit-user-select:none;user-select:none}.mini-cal-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.mini-cal-month{color:#1e293b;font-size:13px;font-weight:600}.mini-cal-nav{background:none;border:none;border-radius:4px;color:#64748b;cursor:pointer;font-size:14px;line-height:1;padding:2px 6px}.mini-cal-nav:hover{background:#f1f5f9}.mini-cal-grid{grid-gap:2px;display:grid;gap:2px;grid-template-columns:repeat(7,1fr);text-align:center}.mini-cal-dow{color:#94a3b8;font-size:10px;font-weight:600;padding:3px 0}.mini-cal-day{align-items:center;aspect-ratio:1;border-radius:50%;color:#374151;cursor:pointer;display:flex;font-size:12px;justify-content:center;padding:4px;transition:background .15s}.mini-cal-day:hover{background:#f1f5f9}.mini-cal-day.other-month{color:#cbd5e1}.mini-cal-day.today{background:#4c6fff;color:#fff;font-weight:700}.mini-cal-day.selected{background:#e0e7ff;color:#4c6fff;font-weight:600}.mini-cal-day.has-events:after{background:#4c6fff;border-radius:50%;content:"";display:block;height:4px;margin:1px auto 0;width:4px}.category-list{display:flex;flex-direction:column;gap:4px;margin-bottom:10px}.category-item{align-items:center;border-radius:8px;color:#374151;cursor:pointer;display:flex;font-size:13px;gap:8px;padding:7px 10px;transition:background .15s}.category-item:hover{background:#f8f9fb}.category-item.active{background:#f0f4ff}.category-dot{border-radius:50%;flex-shrink:0;height:10px;width:10px}.category-name{flex:1 1;font-weight:500}.category-actions{display:none;gap:4px}.category-item:hover .category-actions{display:flex}.cat-action-btn{background:none;border:none;border-radius:4px;color:#94a3b8;cursor:pointer;font-size:12px;line-height:1;padding:2px}.cat-action-btn:hover{background:#e0e7ff;color:#4c6fff}.cat-action-btn.delete:hover{background:#fee2e2;color:#ef4444}.btn-add-category{align-items:center;background:none;border:1.5px dashed #d1d5db;border-radius:8px;color:#9ca3af;cursor:pointer;display:flex;font-size:13px;gap:6px;padding:8px 10px;transition:all .15s;width:100%}.btn-add-category:hover{background:#f0f4ff;border-color:#4c6fff;color:#4c6fff}.cal-main{display:flex;flex:1 1;flex-direction:column;overflow:hidden}.cal-toolbar{background:#fff;border-bottom:1px solid #e8eaf0;gap:12px;justify-content:space-between;padding:14px 24px}.cal-toolbar,.cal-toolbar-left{align-items:center;display:flex}.cal-toolbar-left{gap:8px}.cal-toolbar-title{color:#1e293b;font-size:18px;font-weight:700;min-width:200px}.btn-nav{align-items:center;background:#f1f5f9;border:none;border-radius:8px;color:#475569;cursor:pointer;display:flex;font-size:16px;height:32px;justify-content:center;transition:all .15s;width:32px}.btn-nav:hover{background:#e2e8f0;color:#1e293b}.btn-today{background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#374151;cursor:pointer;font-size:13px;font-weight:500;padding:6px 14px;transition:all .15s}.btn-today:hover{background:#f8f9fb;border-color:#4c6fff;color:#4c6fff}.cal-toolbar-right{align-items:center;display:flex;gap:8px}.view-toggle{background:#f1f5f9;border-radius:8px;display:flex;padding:3px}.view-btn{background:none;border:none;border-radius:6px;color:#64748b;cursor:pointer;font-size:13px;font-weight:500;padding:5px 14px;transition:all .15s}.view-btn.active{background:#fff;box-shadow:0 1px 3px #0000001a;color:#4c6fff}.btn-new-event{align-items:center;background:#4c6fff;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:13px;font-weight:600;gap:6px;padding:8px 16px;transition:background .15s}.btn-new-event:hover{background:#3b5bdb}.cal-month{display:flex;flex:1 1;flex-direction:column;overflow:hidden}.cal-month-header{background:#fff;border-bottom:1px solid #e8eaf0;display:grid;grid-template-columns:repeat(7,1fr)}.cal-dow{color:#64748b;font-size:12px;font-weight:600;letter-spacing:.04em;padding:10px 12px;text-align:center;text-transform:uppercase}.cal-grid{display:grid;flex:1 1;grid-template-columns:repeat(7,1fr);grid-template-rows:repeat(6,1fr);overflow:hidden}.cal-cell{border-bottom:1px solid #e8eaf0;border-right:1px solid #e8eaf0;cursor:pointer;display:flex;flex-direction:column;min-height:0;overflow:hidden;padding:6px;transition:background .1s}.cal-cell:hover{background:#f8f9fb}.cal-cell.other-month{background:#fcfcfd}.cal-cell.other-month .cal-day-num{color:#cbd5e1}.cal-cell.today .cal-day-num{background:#4c6fff;color:#fff}.cal-cell.selected{background:#f0f4ff}.cal-day-num{align-items:center;border-radius:50%;color:#374151;display:flex;flex-shrink:0;font-size:13px;font-weight:600;height:24px;justify-content:center;margin-bottom:4px;width:24px}.cal-events{flex:1 1;flex-direction:column;gap:2px;min-height:0}.cal-event-pill,.cal-events{display:flex;overflow:hidden}.cal-event-pill{align-items:center;border-radius:4px;color:#fff;cursor:pointer;flex-shrink:0;font-size:11px;font-weight:500;gap:4px;padding:2px 6px;text-overflow:ellipsis;transition:opacity .15s;white-space:nowrap}.cal-event-pill:hover{opacity:.85}.cal-event-pin{flex-shrink:0;font-size:9px}.cal-event-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-more{border-radius:4px;color:#64748b;cursor:pointer;font-size:11px;padding:1px 4px}.cal-more:hover{background:#e2e8f0}.cal-week{display:flex;flex:1 1;flex-direction:column;overflow:hidden}.cal-week-header{background:#fff;border-bottom:1px solid #e8eaf0;display:grid;grid-template-columns:60px repeat(7,1fr)}.week-day-header,.week-time-gutter{border-right:1px solid #e8eaf0}.week-day-header{cursor:pointer;padding:10px 8px;text-align:center}.week-day-label{color:#94a3b8;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.week-day-num{align-items:center;border-radius:50%;color:#374151;display:flex;font-size:20px;font-weight:700;height:36px;justify-content:center;line-height:1.2;margin:2px auto 0;width:36px}.week-day-header.today .week-day-num{background:#4c6fff;color:#fff}.cal-week-body{display:grid;flex:1 1;grid-template-columns:60px repeat(7,1fr);overflow-y:auto}.week-time-col{border-right:1px solid #e8eaf0}.week-time-slot{align-items:flex-start;border-bottom:1px solid #f1f5f9;display:flex;height:56px;justify-content:flex-end;padding-right:8px}.week-time-label{color:#94a3b8;font-size:10px;margin-top:-6px;white-space:nowrap}.week-day-col{border-right:1px solid #e8eaf0;cursor:pointer;position:relative}.week-day-col:hover{background:#f8f9fb}.week-day-col.today{background:#fafbff}.week-hour-slot{border-bottom:1px solid #f1f5f9;height:56px}.week-events-overlay{inset:0;pointer-events:none;position:absolute}.week-event-block{border-radius:6px;color:#fff;cursor:pointer;font-size:11px;font-weight:500;left:4px;overflow:hidden;padding:4px 6px;pointer-events:all;position:absolute;right:4px;transition:opacity .15s}.week-event-block:hover{opacity:.85}.modal-overlay{align-items:center;animation:fadeIn .15s ease;background:#0006;display:flex;inset:0;justify-content:center;padding:16px;position:fixed;z-index:1000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-card{animation:slideUp .2s ease;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0003;max-height:90vh;max-width:480px;overflow-y:auto;width:100%}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.modal-header{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;padding:20px 24px 16px}.modal-title{color:#1e293b;font-size:16px;font-weight:700}.modal-close{background:none;border:none;border-radius:6px;color:#94a3b8;cursor:pointer;font-size:20px;line-height:1;padding:4px;transition:all .15s}.modal-close:hover{background:#f1f5f9;color:#374151}.modal-body{padding:20px 24px}.form-group{margin-bottom:16px}.form-label{color:#374151;display:block;font-size:13px;font-weight:600;margin-bottom:6px}.form-input,.form-select,.form-textarea{background:#fff;border:1.5px solid #e2e8f0;border-radius:8px;box-sizing:border-box;color:#1e293b;font-size:14px;outline:none;padding:9px 12px;transition:border-color .15s;width:100%}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:#4c6fff;box-shadow:0 0 0 3px #4c6fff1a}.form-textarea{min-height:80px;resize:vertical}.form-row{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.color-picker{display:flex;flex-wrap:wrap;gap:8px}.color-swatch{border:2.5px solid #0000;border-radius:6px;cursor:pointer;height:28px;transition:transform .1s;width:28px}.color-swatch:hover{transform:scale(1.15)}.color-swatch.selected{border-color:#1e293b;transform:scale(1.15)}.form-checkbox-row{align-items:center;cursor:pointer;display:flex;gap:8px}.form-checkbox{accent-color:#4c6fff;cursor:pointer;height:16px;width:16px}.form-checkbox-label{color:#374151;font-size:14px}.modal-footer{align-items:center;border-top:1px solid #f1f5f9;justify-content:space-between;padding:16px 24px 20px}.modal-footer,.modal-footer-right{display:flex;gap:8px}.btn-cancel{background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#374151;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .15s}.btn-cancel:hover{background:#f8f9fb}.btn-save{background:#4c6fff;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:8px 20px;transition:background .15s}.btn-save:hover{background:#3b5bdb}.btn-save:disabled{cursor:not-allowed;opacity:.6}.btn-delete-event{background:#fee2e2;border:none;border-radius:8px;color:#ef4444;cursor:pointer;font-size:14px;font-weight:600;padding:8px 16px;transition:background .15s}.btn-delete-event:hover{background:#fecaca}.event-detail-panel{animation:slideUp .2s ease;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0003;left:50%;overflow:hidden;position:fixed;top:50%;transform:translate(-50%,-50%);width:360px;z-index:1000}.event-detail-color-bar{height:6px}.event-detail-body{padding:20px}.event-detail-title{color:#1e293b;font-size:16px;font-weight:700;margin-bottom:12px}.event-detail-row{align-items:flex-start;color:#64748b;display:flex;font-size:13px;gap:10px;margin-bottom:8px}.event-detail-icon{flex-shrink:0;margin-top:1px}.event-detail-actions{border-top:1px solid #f1f5f9;display:flex;gap:8px;margin-top:16px;padding-top:16px}.btn-edit-event{background:#f0f4ff;border:none;border-radius:8px;color:#4c6fff;cursor:pointer;flex:1 1;font-size:13px;font-weight:600;padding:8px;transition:background .15s}.btn-edit-event:hover{background:#e0e7ff}.cal-loading{align-items:center;color:#64748b;display:flex;flex:1 1;font-size:15px;gap:10px;justify-content:center}.cal-spinner{animation:spin .7s linear infinite;border:3px solid #e2e8f0;border-radius:50%;border-top-color:#4c6fff;height:24px;width:24px}@keyframes spin{to{transform:rotate(1turn)}}.cal-error{align-items:center;color:#ef4444;display:flex;flex:1 1;flex-direction:column;font-size:14px;gap:8px;justify-content:center}.btn-retry{background:#fee2e2;border:none;border-radius:8px;color:#ef4444;cursor:pointer;font-size:13px;padding:6px 14px}.modal-card.small{max-width:380px}.cal-pinned-band{align-items:center;background:#fff;border-bottom:1px solid #e8eaf0;display:flex;flex-wrap:wrap;gap:8px;padding:8px 24px}.cal-pinned-label{color:#9ca3af;flex-shrink:0;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.cal-pinned-pill{align-items:center;border-radius:20px;color:#fff;cursor:pointer;display:flex;font-size:12px;font-weight:500;gap:5px;padding:3px 10px;transition:opacity .15s}.cal-pinned-pill:hover{opacity:.85}.App{background-color:#fff;display:flex;height:100vh;width:100%}.page-content{color:#202224;font-size:24px;font-weight:600;padding:32px}
/*# sourceMappingURL=main.cd4da32f.css.map*/