@charset "UTF-8";.date-field{-moz-appearance:none;appearance:none;-webkit-appearance:none;height:40px;min-width:170px;padding:0 12px 0 40px;border:1px solid #dbe2ea;border-radius:10px;background:#fff url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="%230b3c49" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="4" width="18" height="18" rx="2" ry="2"/><line x1="16" y1="2" x2="16" y2="6"/><line x1="8" y1="2" x2="8" y2="6"/><line x1="3" y1="10" x2="21" y2="10"/></svg>') no-repeat 12px center;font-size:14px;color:#142126;transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease}@media (prefers-color-scheme: dark){.date-field{border-color:#2a3a41;color:#000;background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="%23e7eef2" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="4" width="18" height="18" rx="2" ry="2"/><line x1="16" y1="2" x2="16" y2="6"/><line x1="8" y1="2" x2="8" y2="6"/><line x1="3" y1="10" x2="21" y2="10"/></svg>')}.date-field:hover{border-color:#3b4c53}.date-field:focus{box-shadow:0 0 0 3px #0f4c5c47}}:root{--primary:#0b3c49;--accent:#184F6B;--bg:#184F6B;--fg:#142126;--muted:#6c7a80;--card:#ffffff;--border:#e6eef1;--radius:16px;--pad:14px;--topbar-height:50px;--sidebar-width:200px;--sidebar-collapsed-width:60px;--logo-margin:0px}body{margin:0;background:var(--bg);color:var(--fg);font:16px/1.5 system-ui,-apple-system,Segoe UI,Roboto,Inter,sans-serif}.topbar{display:flex;justify-content:space-between;align-items:center;height:var(--topbar-height);padding:10px 18px 10px 0;background:#184F6B;border-bottom:none;position:sticky;top:0;z-index:10}.brand{display:flex;align-items:center;gap:12px;width:var(--sidebar-collapsed-width);justify-content:center;margin:var(--logo-margin)}.brand img{width:70px;height:var(--sidebar-collapsed-width);-o-object-fit:contain;object-fit:contain}.brand-text .title{font-weight:700;letter-spacing:.4px;color:#fff}.brand-text .tagline{font-size:12px;color:#fffc}.usernav a{color:#fff;text-decoration:none}.usernav span{color:#fff}.layout{display:grid;grid-template-columns:var(--sidebar-width) 1fr;min-height:calc(100vh - var(--topbar-height));background:#184F6B;transition:grid-template-columns .3s ease}.layout.sidebar-collapsed{grid-template-columns:var(--sidebar-collapsed-width) 1fr}.sidebar{border-right:none;background:#184F6B;padding:10px;position:relative;transition:width .3s ease;display:flex;flex-direction:column}.sidebar-toggle{margin-top:auto;background:rgba(255,255,255,.1);border:none;color:#fff;padding:10px;border-radius:8px;cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center;gap:8px;transition:background .2s ease;width:100%}.sidebar-toggle:hover{background:rgba(255,255,255,.2)}.sidebar ul{list-style:none;margin:0;padding:0;flex:1}.sidebar a{display:flex;align-items:center;gap:10px;padding:10px 12px;margin:6px 0;border-radius:10px;color:#fff;text-decoration:none;transition:all .2s ease;white-space:nowrap}.sidebar a .nav-icon{font-size:20px;min-width:24px;display:flex;align-items:center;justify-content:center}.sidebar a .nav-label{flex:1;overflow:hidden;text-overflow:ellipsis}.layout.sidebar-collapsed .sidebar a{justify-content:center;padding:10px}.layout.sidebar-collapsed .sidebar a .nav-label{display:none}.sidebar a.active,.sidebar a:hover{background:rgba(255,255,255,.15);color:#fff}.content{padding:15px;margin:0 10px 5px 0;background:#ffffff;border-radius:15px;box-shadow:0 2px 12px #00000014;height:calc(100vh - var(--topbar-height) - 15px);overflow-y:auto;overflow-x:hidden}.btn{background:var(--primary);color:#fff;border:none;border-radius:10px;padding:8px 14px;cursor:pointer}.btn.ghost{background:#fff;color:var(--primary);border:1px solid var(--primary)}.btn.danger{background:#b00020;color:#fff}.form-inline{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.form-inline input,.form-inline select,.form-inline textarea{padding:8px;border:1px solid var(--border);border-radius:10px}.table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--border);border-radius:12px;overflow:hidden}.table th,.table td{padding:10px;border-bottom:1px solid var(--border)}.table th{background:#f5fafc;text-align:left}.table tr.row-link:hover{background:#f0f7fa}.table tr.row-link:active{background:#e2edf1}.kv{margin:6px 0}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:18px}.muted{color:var(--muted)}.kanban{gap:12px;align-items:flex-start;overflow-x:auto;padding-bottom:8px}.kanban::-webkit-scrollbar{height:10px}.kanban::-webkit-scrollbar-thumb{background:rgba(0,0,0,.15);border-radius:8px}.column{background:#fff;border:1px solid var(--border);border-radius:12px;min-height:200px;min-width:200px}.col-head{padding:10px 12px;border-bottom:1px solid var(--border);font-weight:600;color:var(--primary)}.col-body{padding:10px;display:flex;flex-direction:column;gap:10px;min-height:160px}.card{background:linear-gradient(180deg,#ffffff 0%,#fbfeff 100%);border:1px solid var(--border);border-radius:12px;padding:10px;box-shadow:0 2px 8px #00000008}.card.dragging{opacity:.5}.card-title{font-weight:600}.card-note{font-size:12px;color:var(--muted);margin-top:6px}.toolbar{display:inline-flex;justify-content:space-between;align-items:center;margin-bottom:10px}.login-body{display:grid;place-items:center;min-height:100vh;background:radial-gradient(ellipse at center,#ffffff 0%,#eef6f9 100%);font:16px/1.5 system-ui,-apple-system,Segoe UI,Roboto,Inter,sans-serif}.login-card{background:#fff;padding:22px;border-radius:14px;border:1px solid var(--border);box-shadow:0 10px 30px #0000000f;max-width:340px;text-align:center;font:16px/1.5 system-ui,-apple-system,Segoe UI,Roboto,Inter,sans-serif;color:var(--fg)}.login-card *{font-family:system-ui,-apple-system,Segoe UI,Roboto,Inter,sans-serif}.login-card img{width:120px;height:120px;border-radius:12px;-o-object-fit:contain;object-fit:contain;margin:0 auto 8px;display:block}.login-card h1{margin:6px 0 14px;color:var(--primary);font-size:32px;line-height:1.3;font-family:system-ui,-apple-system,Segoe UI,Roboto,Inter,sans-serif;font-weight:700}.login-card .form label{display:block;text-align:left;margin-bottom:8px;font:16px/1.5 system-ui,-apple-system,Segoe UI,Roboto,Inter,sans-serif}.login-card .form input{width:100%;padding:8px;border:1px solid var(--border);border-radius:10px;font:16px/1.5 system-ui,-apple-system,Segoe UI,Roboto,Inter,sans-serif}.login-card .form small{font:13px/1.5 system-ui,-apple-system,Segoe UI,Roboto,Inter,sans-serif}.login-card .btn{font:16px/1.5 system-ui,-apple-system,Segoe UI,Roboto,Inter,sans-serif;font-weight:500}.login-card .error{color:#b00020;margin-top:8px;font:16px/1.5 system-ui,-apple-system,Segoe UI,Roboto,Inter,sans-serif}.error{color:#b00020;margin-top:8px}.modal.hidden{display:none}.modal{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.2);display:grid;place-items:center;z-index:50}.modal-card{background:#fff;border-radius:14px;min-width:320px;max-width:560px;padding:16px;border:1px solid var(--border)}.row.gap{display:flex;gap:10px}.hide-btn{margin-left:auto}.card-row{display:flex;align-items:center;gap:8px}.card-hidden{opacity:.7;border-style:dashed}.calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:10px}.cal-day{background:#fff;border:1px solid var(--border);border-radius:12px}.cal-head{padding:8px 10px;border-bottom:1px solid var(--border);font-weight:600;color:var(--primary)}.cal-body{padding:8px}.cal-item{background:#f7fcfe;border:1px dashed var(--border);border-radius:10px;padding:6px 8px;margin:6px 0}.list{list-style:none;padding:0}.column.collapsed .col-body{display:none}.column.collapsed{width:40px;min-height:30px}.collapse-btn{margin-left:8px}.col-head{display:flex;align-items:center;gap:6px}.collapse-btn{position:absolute;left:150px;top:50%;transform:translateY(-50%) rotate(0);background:#fff;border:1px solid var(--border);border-radius:50%;width:28px;height:28px;font-size:14px;line-height:1;color:var(--primary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .25s ease,background .2s ease;box-shadow:0 2px 6px #00000014}.collapse-btn:hover{background:var(--primary);color:#fff}.column.collapsed .collapse-btn{transform:translateY(-50%) rotate(90deg)}.col-head{position:relative;display:flex;align-items:center;gap:6px;padding:10px 12px;border-bottom:1px solid var(--border);font-weight:600;color:var(--primary)}.card.hidden{max-height:0;margin:0;padding:0;opacity:0;overflow:hidden;border:none;transition:all .3s ease}.card{transition:all .3s ease}.date-range{display:flex;align-items:center;gap:8px;margin-left:8px}.date-field{-moz-appearance:none;appearance:none;-webkit-appearance:none;height:40px;min-width:170px;padding:0 12px 0 40px;border:1px solid #dbe2ea;border-radius:10px;background:#fff url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="%230b3c49" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="4" width="18" height="18" rx="2" ry="2"/><line x1="16" y1="2" x2="16" y2="6"/><line x1="8" y1="2" x2="8" y2="6"/><line x1="3" y1="10" x2="21" y2="10"/></svg>') no-repeat 12px center;font-size:14px;color:#142126;transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease}.date-field:hover{border-color:#c7d5dc;background-color:#fbfdff}.date-field:focus{outline:none;border-color:#184f6b;box-shadow:0 0 0 3px #0f4c5c1f}.date-sep{color:#6c7a80;-webkit-user-select:none;-moz-user-select:none;user-select:none}@media (prefers-color-scheme: dark){.date-field{border-color:#2a3a41;color:#000;background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="%23e7eef2" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="4" width="18" height="18" rx="2" ry="2"/><line x1="16" y1="2" x2="16" y2="6"/><line x1="8" y1="2" x2="8" y2="6"/><line x1="3" y1="10" x2="21" y2="10"/></svg>')}.date-field:hover{border-color:#3b4c53}.date-field:focus{box-shadow:0 0 0 3px #0f4c5c47}}.st-planned{--st-bg:#eef6ff;--st-border:#cfe5ff;--st-fg:#0b4aa2}.st-window{--st-bg:#eaf9ef;--st-border:#bfe8cc;--st-fg:#11663a}.st-thinking,.st-rescheduled{--st-bg:#fff8cc;--st-border:#f2e59a;--st-fg:#7a5b00}.st-done{--st-bg:#dff7ff;--st-border:#b3e6f5;--st-fg:#055160}.st-missed{--st-bg:#ffeaea;--st-border:#ffd0d0;--st-fg:#9d1b1b}.st-canceled,.st-burned{--st-bg:#f3f4f6;--st-border:#e5e7eb;--st-fg:#6b7280}.pill[class*=st-]{background:var(--st-bg);border-color:var(--st-border);color:var(--st-fg)}.lesson-box{background:#fff;border:1px solid var(--st-border);border-left:4px solid var(--st-fg);background:var(--st-bg);color:var(--st-fg)}.lesson-box .time{font-weight:600;color:#0f172a}.lesson-box .topic{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#0f172a}.status-legend{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px;overflow:hidden;max-height:320px;opacity:1;transition:max-height .35s ease,opacity .3s ease}.legend-item{display:flex;align-items:center;gap:6px;font-size:12px;background:#fff;border:1px solid var(--border);border-radius:999px;padding:4px 10px;line-height:1.2}.legend-item .pill{margin:0}.legend-toggle{font-size:12px}.legend-collapsed .status-legend{max-height:0;opacity:0}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000bf;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .2s ease-in-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:white;padding:2rem;border-radius:12px;max-width:500px;width:90%;box-shadow:0 10px 40px #0003;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-content h2{margin-top:0;color:#333;font-size:1.5rem;margin-bottom:.5rem}.modal-description{color:#666;margin-bottom:1.5rem;line-height:1.5}.modal-hint{color:#999;font-size:.875rem;margin-top:1rem;margin-bottom:0;text-align:center}.form-group{margin-bottom:1rem}.form-group label{display:block;color:#333;font-weight:500;margin-bottom:.5rem;font-size:.95rem}.form-control{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:6px;font-size:1rem;transition:border-color .2s,box-shadow .2s}.form-control:focus{outline:none;border-color:#4caf50;box-shadow:0 0 0 3px #4caf501a}.form-control:disabled{background-color:#f5f5f5;cursor:not-allowed}.modal-actions{display:flex;justify-content:center;gap:1rem;margin-top:1.5rem}.error-message{color:#dc3545;padding:.75rem;background:#fff5f5;border:1px solid #ffcdd2;border-radius:6px;margin:1rem 0;font-size:.9rem}.password-strength{margin-top:.5rem;margin-bottom:.5rem}.strength-indicator{display:inline-block;padding:.25rem .75rem;border-radius:4px;font-size:.8rem;font-weight:600}.strength-indicator.weak{background:#ffebee;color:#c62828}.strength-indicator.medium{background:#fff3e0;color:#f57c00}.strength-indicator.strong{background:#e8f5e9;color:#2e7d32}.btn{padding:.75rem 1.5rem;border:none;border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-primary{background:#4CAF50;color:#fff}.btn-primary:hover:not(:disabled){background:#45a049;transform:translateY(-1px);box-shadow:0 4px 12px #4caf504d}.btn-primary:disabled{background:#ccc;cursor:not-allowed;transform:none}.btn-secondary{background:#f5f5f5;color:#666}.btn-secondary:hover:not(:disabled){background:#e0e0e0}.teacher-layout{display:flex;min-height:100vh;background-color:#f5f5f5}.teacher-sidebar{width:260px;background:linear-gradient(180deg,#2c3e50 0%,#34495e 100%);color:#fff;display:flex;flex-direction:column;position:fixed;height:100vh;box-shadow:2px 0 8px #0000001a}.sidebar-header{padding:24px 20px;border-bottom:1px solid rgba(255,255,255,.1)}.user-info h3{margin:0 0 4px;font-size:18px;font-weight:600}.role-badge{display:inline-block;padding:4px 12px;background:rgba(255,255,255,.15);border-radius:12px;font-size:12px;font-weight:500}.sidebar-nav{flex:1;padding:20px 0}.nav-item{display:flex;align-items:center;padding:12px 20px;color:#fffc;text-decoration:none;transition:all .2s ease;border-left:3px solid transparent}.nav-item:hover{background:rgba(255,255,255,.1);color:#fff;border-left-color:#3498db}.nav-item.active{background:rgba(52,152,219,.2);color:#fff;border-left-color:#3498db}.nav-item span{margin-left:12px;font-size:15px}.sidebar-footer{padding:20px;border-top:1px solid rgba(255,255,255,.1)}.logout-btn{width:100%;padding:10px;background:rgba(231,76,60,.9);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;transition:background .2s ease}.logout-btn:hover{background:#e74c3c}.teacher-main{margin-left:260px;flex:1;padding:30px}.teacher-dashboard h1{margin:0 0 24px;color:#2c3e50;font-size:28px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;margin-bottom:30px}.stat-card{background:white;padding:24px;border-radius:12px;box-shadow:0 2px 8px #00000014;transition:transform .2s ease,box-shadow .2s ease}.stat-card:hover{transform:translateY(-4px);box-shadow:0 4px 16px #0000001f}.stat-card h3{margin:0 0 8px;font-size:14px;color:#7f8c8d;font-weight:500}.stat-value{font-size:32px;font-weight:700;color:#2c3e50;margin:0}.stat-value.success{color:#27ae60}.stat-value.info{color:#3498db}.stat-value.warning{color:#f39c12}.dashboard-section{background:white;padding:24px;border-radius:12px;box-shadow:0 2px 8px #00000014;margin-bottom:20px}.dashboard-section h2{margin:0 0 20px;font-size:20px;color:#2c3e50}.lessons-list{display:flex;flex-direction:column;gap:12px}.lesson-card{display:flex;align-items:center;padding:16px;background:#f8f9fa;border-radius:8px;border-left:4px solid #3498db}.lesson-time{font-weight:600;color:#2c3e50;min-width:80px}.lesson-info{flex:1;margin-left:16px}.lesson-student{font-weight:500;color:#2c3e50;margin-bottom:4px}.lesson-subject{font-size:13px;color:#7f8c8d}.lesson-rate{font-weight:600;color:#27ae60;margin-left:auto}.status-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:500;margin-left:12px}.status-scheduled{background:#d1ecf1;color:#0c5460}.status-completed{background:#d4edda;color:#155724}.status-cancelled{background:#f8d7da;color:#721c24}.empty-state{text-align:center;padding:40px 20px;color:#95a5a6}.teacher-schedule h1{margin:0 0 24px;color:#2c3e50}.schedule-controls{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;background:white;padding:16px 20px;border-radius:12px;box-shadow:0 2px 8px #00000014}.view-toggle{display:flex;gap:8px}.toggle-btn{padding:8px 16px;background:#ecf0f1;border:none;border-radius:6px;cursor:pointer;font-size:14px;transition:all .2s ease}.toggle-btn.active{background:#3498db;color:#fff}.date-nav{display:flex;align-items:center;gap:12px}.nav-btn{padding:8px 12px;background:white;border:1px solid #ddd;border-radius:6px;cursor:pointer;transition:all .2s ease}.nav-btn:hover{background:#ecf0f1}.current-date{font-weight:600;color:#2c3e50;min-width:200px;text-align:center}.schedule-content{display:flex;flex-direction:column;gap:20px}.day-section{background:white;padding:20px;border-radius:12px;box-shadow:0 2px 8px #00000014}.day-header{margin:0 0 16px;padding-bottom:12px;border-bottom:2px solid #ecf0f1;font-size:18px;color:#2c3e50}.lessons-grid{display:grid;gap:12px}.teacher-reports h1{margin:0 0 24px;color:#2c3e50}.reports-tabs{display:flex;gap:8px;margin-bottom:24px;background:white;padding:12px;border-radius:12px;box-shadow:0 2px 8px #00000014}.tab-btn{flex:1;padding:12px 20px;background:transparent;border:none;border-radius:8px;cursor:pointer;font-size:15px;color:#7f8c8d;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px}.tab-btn:hover{background:#ecf0f1;color:#2c3e50}.tab-btn.active{background:#3498db;color:#fff}.report-controls{display:flex;gap:16px;margin-bottom:20px;background:white;padding:16px;border-radius:12px;box-shadow:0 2px 8px #00000014}.report-controls label{display:flex;flex-direction:column;gap:8px;font-size:14px;color:#7f8c8d}.report-controls input{padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px}.report-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}.summary-card{background:white;padding:20px;border-radius:12px;box-shadow:0 2px 8px #00000014}.summary-card h3{margin:0 0 8px;font-size:13px;color:#7f8c8d;font-weight:500}.summary-value{font-size:28px;font-weight:700;color:#2c3e50;margin:0}.report-table-container{background:white;padding:20px;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow-x:auto}.report-table{width:100%;border-collapse:collapse}.report-table thead{background:#f8f9fa}.report-table th{padding:12px 16px;text-align:left;font-size:13px;color:#7f8c8d;font-weight:600;border-bottom:2px solid #ecf0f1}.report-table td{padding:12px 16px;border-bottom:1px solid #ecf0f1;color:#2c3e50}.report-table tbody tr:hover{background:#f8f9fa}.table-footer{padding:16px;background:#f8f9fa;border-top:2px solid #dee2e6;text-align:right;font-weight:600;color:#2c3e50}.students-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.student-card{background:white;padding:20px;border-radius:12px;box-shadow:0 2px 8px #00000014;transition:transform .2s ease}.student-card:hover{transform:translateY(-4px);box-shadow:0 4px 16px #0000001f}.student-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.student-avatar{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);display:flex;align-items:center;justify-content:center;font-size:24px}.student-name{font-weight:600;color:#2c3e50;font-size:16px}.student-stats{margin-bottom:12px}.stat-row{display:flex;justify-content:space-between;margin-bottom:8px;font-size:14px}.stat-label{color:#7f8c8d}.stat-number{font-weight:600;color:#2c3e50}.progress-bar-container{background:#ecf0f1;height:8px;border-radius:4px;overflow:hidden;margin-bottom:12px}.progress-bar-fill{height:100%;background:linear-gradient(90deg,#27ae60 0%,#2ecc71 100%);transition:width .3s ease}.student-last-lesson{font-size:13px;color:#7f8c8d;padding-top:12px;border-top:1px solid #ecf0f1}.completion-section{background:white;padding:30px;border-radius:12px;box-shadow:0 2px 8px #00000014;margin-bottom:24px;text-align:center}.completion-circle{position:relative;width:120px;height:120px;margin:20px auto}.progress-ring{transform:rotate(-90deg)}.completion-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:28px;font-weight:700;color:#2c3e50}.breakdown-section{background:white;padding:20px;border-radius:12px;box-shadow:0 2px 8px #00000014}.breakdown-list{display:flex;flex-direction:column;gap:12px}.breakdown-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#f8f9fa;border-radius:8px}.count{font-weight:600;color:#2c3e50;font-size:18px}.teacher-profile{max-width:800px}.profile-header{display:flex;align-items:center;gap:20px;background:white;padding:30px;border-radius:12px;box-shadow:0 2px 8px #00000014;margin-bottom:24px}.profile-avatar{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);display:flex;align-items:center;justify-content:center}.avatar-icon{font-size:40px}.profile-title h2{margin:0 0 8px;color:#2c3e50}.message{padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:14px}.message.success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.message.error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.profile-content{background:white;padding:30px;border-radius:12px;box-shadow:0 2px 8px #00000014}.profile-info{display:flex;flex-direction:column;gap:16px;margin-bottom:24px}.info-row{display:flex;padding:12px 0;border-bottom:1px solid #ecf0f1}.info-row .label{flex:0 0 180px;color:#7f8c8d;font-size:14px}.info-row .value{flex:1;color:#2c3e50;font-weight:500}.badge.active{padding:4px 12px;background:#d4edda;color:#155724;border-radius:12px;font-size:13px}.badge.inactive{padding:4px 12px;background:#f8d7da;color:#721c24;border-radius:12px;font-size:13px}.profile-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:14px;color:#7f8c8d;font-weight:500}.form-group input,.form-group textarea{padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;transition:border-color .2s ease}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#3498db}.form-group input:disabled{background:#f8f9fa;color:#95a5a6;cursor:not-allowed}.form-actions{display:flex;gap:12px;margin-top:10px}.btn-primary{padding:12px 24px;background:#3498db;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:15px;font-weight:500;transition:background .2s ease}.btn-primary:hover{background:#2980b9}.btn-primary:disabled{background:#95a5a6;cursor:not-allowed}.btn-secondary{padding:12px 24px;background:#ecf0f1;color:#2c3e50;border:none;border-radius:8px;cursor:pointer;font-size:15px;font-weight:500;transition:background .2s ease}.btn-secondary:hover{background:#bdc3c7}.loading{text-align:center;padding:60px 20px;color:#95a5a6;font-size:16px}.error-state{text-align:center;padding:60px 20px;color:#e74c3c;font-size:16px}@media (max-width: 768px){.teacher-sidebar{width:200px}.teacher-main{margin-left:200px;padding:20px}.stats-grid,.students-grid{grid-template-columns:1fr}.schedule-controls{flex-direction:column;align-items:stretch}.date-nav{justify-content:space-between}}@media (max-width: 480px){.teacher-sidebar{width:60px}.sidebar-header,.nav-item span,.sidebar-footer{display:none}.teacher-main{margin-left:60px;padding:15px}}:root{--font-size-xs: 11px;--font-size-sm: 12px;--font-size-base: 13px;--font-size-md: 14px;--font-size-lg: 15px;--font-size-xl: 16px;--font-size-2xl: 18px;--font-size-3xl: 20px;--font-size-4xl: 24px;--font-size-5xl: 28px;--font-size-6xl: 32px;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.2;--line-height-normal: 1.4;--line-height-relaxed: 1.5;--line-height-loose: 1.6}h1{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);margin:0 0 16px;color:var(--primary, #0b3c49)}h2{font-size:var(--font-size-3xl);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);margin:0 0 12px;color:var(--primary, #0b3c49)}h3{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);line-height:var(--line-height-normal);margin:0 0 10px;color:var(--fg, #142126)}h4{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);line-height:var(--line-height-normal);margin:0 0 8px;color:var(--fg, #142126)}h5{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);line-height:var(--line-height-normal);margin:0 0 6px;color:var(--fg, #142126)}h6{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);line-height:var(--line-height-normal);margin:0 0 4px;color:var(--fg, #142126)}body{font-size:var(--font-size-md);font-weight:var(--font-weight-normal);line-height:var(--line-height-relaxed);color:var(--fg, #142126)}p{font-size:var(--font-size-md);line-height:var(--line-height-relaxed);margin:0 0 12px}.text-xs{font-size:var(--font-size-xs);line-height:var(--line-height-normal)}.text-sm{font-size:var(--font-size-sm);line-height:var(--line-height-normal)}.text-base{font-size:var(--font-size-base);line-height:var(--line-height-normal)}.text-md{font-size:var(--font-size-md);line-height:var(--line-height-normal)}.text-lg{font-size:var(--font-size-lg);line-height:var(--line-height-normal)}.text-xl{font-size:var(--font-size-xl);line-height:var(--line-height-normal)}.text-2xl{font-size:var(--font-size-2xl);line-height:var(--line-height-tight)}.text-3xl{font-size:var(--font-size-3xl);line-height:var(--line-height-tight)}.text-4xl{font-size:var(--font-size-4xl);line-height:var(--line-height-tight)}.text-5xl{font-size:var(--font-size-5xl);line-height:var(--line-height-tight)}.text-6xl{font-size:var(--font-size-6xl);line-height:var(--line-height-tight)}.font-normal{font-weight:var(--font-weight-normal)}.font-medium{font-weight:var(--font-weight-medium)}.font-semibold{font-weight:var(--font-weight-semibold)}.font-bold{font-weight:var(--font-weight-bold)}.btn{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);line-height:var(--line-height-normal)}.btn.small{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}input,select,textarea{font-size:var(--font-size-md);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal)}label{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);line-height:var(--line-height-normal)}.tbl thead th{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.tbl tbody td{font-size:var(--font-size-md);font-weight:var(--font-weight-normal)}.badge,.pill{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);line-height:var(--line-height-normal)}.card-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.card-note{font-size:var(--font-size-sm);font-weight:var(--font-weight-normal)}.kpi-value,.kpi .n{font-size:var(--font-size-5xl);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight)}.kpi-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold)}.kpi-change{font-size:var(--font-size-md);font-weight:var(--font-weight-medium)}@media (max-width: 768px){h1{font-size:var(--font-size-3xl)}h2{font-size:var(--font-size-2xl)}h3{font-size:var(--font-size-xl)}.kpi-value,.kpi .n{font-size:var(--font-size-4xl)}}*,:before,:after{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246 / .5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246 / .5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.collapse{visibility:collapse}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{top:0;right:0;bottom:0;left:0}.-bottom-0\.5{bottom:-.125rem}.-right-1{right:-.25rem}.-top-0\.5{top:-.125rem}.-top-1{top:-.25rem}.bottom-0{bottom:0}.left-0{left:0}.left-3{left:.75rem}.left-5{left:1.25rem}.right-0{right:0}.right-1{right:.25rem}.right-3{right:.75rem}.right-5{right:1.25rem}.top-0{top:0}.top-1{top:.25rem}.top-1\.5{top:.375rem}.top-1\/2{top:50%}.top-2\.5{top:.625rem}.top-3{top:.75rem}.top-5{top:1.25rem}.top-full{top:100%}.isolate{isolation:isolate}.z-10{z-index:10}.z-50{z-index:50}.z-\[10000\]{z-index:10000}.z-\[1000\]{z-index:1000}.z-\[1001\]{z-index:1001}.z-\[1100\]{z-index:1100}.z-\[1200\]{z-index:1200}.z-\[1\]{z-index:1}.z-\[2000\]{z-index:2000}.z-\[2\]{z-index:2}.z-\[3000\]{z-index:3000}.z-\[9999\]{z-index:9999}.col-span-2{grid-column:span 2 / span 2}.col-span-full{grid-column:1 / -1}.m-0{margin:0}.m-1{margin:.25rem}.m-2{margin:.5rem}.m-5{margin:1.25rem}.m-6{margin:1.5rem}.mx-auto{margin-left:auto;margin-right:auto}.my-2\.5{margin-top:.625rem;margin-bottom:.625rem}.my-3\.5{margin-top:.875rem;margin-bottom:.875rem}.my-4{margin-top:1rem;margin-bottom:1rem}.my-6{margin-top:1.5rem;margin-bottom:1.5rem}.-mt-0\.5{margin-top:-.125rem}.-mt-1\.5{margin-top:-.375rem}.-mt-4{margin-top:-1rem}.mb-0{margin-bottom:0}.mb-1{margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}.mb-2{margin-bottom:.5rem}.mb-2\.5{margin-bottom:.625rem}.mb-3{margin-bottom:.75rem}.mb-3\.5{margin-bottom:.875rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-0{margin-left:0}.ml-1{margin-left:.25rem}.ml-1\.5{margin-left:.375rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.ml-4{margin-left:1rem}.ml-6{margin-left:1.5rem}.ml-8{margin-left:2rem}.ml-auto{margin-left:auto}.mr-0\.5{margin-right:.125rem}.mr-1{margin-right:.25rem}.mr-1\.5{margin-right:.375rem}.mr-2{margin-right:.5rem}.mt-0{margin-top:0}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-2{margin-top:.5rem}.mt-2\.5{margin-top:.625rem}.mt-3{margin-top:.75rem}.mt-3\.5{margin-top:.875rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.mt-\[60px\]{margin-top:60px}.mt-auto{margin-top:auto}.box-border{box-sizing:border-box}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.\!grid{display:grid!important}.grid{display:grid}.hidden{display:none}.h-0{height:0px}.h-0\.5{height:.125rem}.h-1{height:.25rem}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-20{height:5rem}.h-24{height:6rem}.h-3{height:.75rem}.h-32{height:8rem}.h-4{height:1rem}.h-48{height:12rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-64{height:16rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-\[120px\]{height:120px}.h-\[18px\]{height:18px}.h-\[260px\]{height:260px}.h-\[26px\]{height:26px}.h-\[360px\]{height:360px}.h-\[400px\]{height:400px}.h-full{height:100%}.h-screen{height:100vh}.max-h-80{max-height:20rem}.max-h-\[140px\]{max-height:140px}.max-h-\[150px\]{max-height:150px}.max-h-\[200px\]{max-height:200px}.max-h-\[220px\]{max-height:220px}.max-h-\[240px\]{max-height:240px}.max-h-\[280px\]{max-height:280px}.max-h-\[400px\]{max-height:400px}.max-h-\[60vh\]{max-height:60vh}.max-h-\[80vh\]{max-height:80vh}.max-h-\[90vh\]{max-height:90vh}.max-h-\[95vh\]{max-height:95vh}.max-h-\[98vh\]{max-height:98vh}.min-h-0{min-height:0px}.min-h-8{min-height:2rem}.min-h-\[100px\]{min-height:100px}.min-h-\[120px\]{min-height:120px}.min-h-\[180px\]{min-height:180px}.min-h-\[250px\]{min-height:250px}.min-h-\[42px\]{min-height:42px}.min-h-\[55vh\]{min-height:55vh}.min-h-\[60px\]{min-height:60px}.min-h-\[80px\]{min-height:80px}.w-0{width:0px}.w-0\.5{width:.125rem}.w-1\.5{width:.375rem}.w-10{width:2.5rem}.w-12{width:3rem}.w-14{width:3.5rem}.w-16{width:4rem}.w-2{width:.5rem}.w-20{width:5rem}.w-24{width:6rem}.w-3{width:.75rem}.w-32{width:8rem}.w-4{width:1rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-7{width:1.75rem}.w-8{width:2rem}.w-\[100px\]{width:100px}.w-\[120px\]{width:120px}.w-\[140px\]{width:140px}.w-\[15\%\]{width:15%}.w-\[18px\]{width:18px}.w-\[20\%\]{width:20%}.w-\[260px\]{width:260px}.w-\[26px\]{width:26px}.w-\[30\%\]{width:30%}.w-\[35\%\]{width:35%}.w-\[90\%\]{width:90%}.w-\[95\%\]{width:95%}.w-\[96\%\]{width:96%}.w-\[96vw\]{width:96vw}.w-\[min\(560px\,96vw\)\]{width:min(560px,96vw)}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.w-screen{width:100vw}.min-w-0{min-width:0px}.min-w-8{min-width:2rem}.min-w-\[120px\]{min-width:120px}.min-w-\[140px\]{min-width:140px}.min-w-\[150px\]{min-width:150px}.min-w-\[160px\]{min-width:160px}.min-w-\[18px\]{min-width:18px}.min-w-\[200px\]{min-width:200px}.min-w-\[220px\]{min-width:220px}.min-w-\[240px\]{min-width:240px}.min-w-\[260px\]{min-width:260px}.min-w-\[280px\]{min-width:280px}.min-w-\[300px\]{min-width:300px}.min-w-\[320px\]{min-width:320px}.min-w-\[40px\]{min-width:40px}.min-w-\[70px\]{min-width:70px}.min-w-max{min-width:-moz-max-content;min-width:max-content}.max-w-4xl{max-width:56rem}.max-w-\[1000px\]{max-width:1000px}.max-w-\[100px\]{max-width:100px}.max-w-\[1200px\]{max-width:1200px}.max-w-\[120px\]{max-width:120px}.max-w-\[1400px\]{max-width:1400px}.max-w-\[220px\]{max-width:220px}.max-w-\[340px\]{max-width:340px}.max-w-\[400px\]{max-width:400px}.max-w-\[420px\]{max-width:420px}.max-w-\[500px\]{max-width:500px}.max-w-\[560px\]{max-width:560px}.max-w-\[600px\]{max-width:600px}.max-w-\[60px\]{max-width:60px}.max-w-\[640px\]{max-width:640px}.max-w-\[700px\]{max-width:700px}.max-w-\[720px\]{max-width:720px}.max-w-\[800px\]{max-width:800px}.max-w-\[900px\]{max-width:900px}.max-w-\[960px\]{max-width:960px}.max-w-full{max-width:100%}.max-w-md{max-width:28rem}.flex-1{flex:1 1 0%}.flex-shrink{flex-shrink:1}.flex-shrink-0{flex-shrink:0}.table-auto{table-layout:auto}.table-fixed{table-layout:fixed}.border-collapse{border-collapse:collapse}.border-separate{border-collapse:separate}.border-spacing-0{--tw-border-spacing-x:0px;--tw-border-spacing-y:0px;border-spacing:var(--tw-border-spacing-x) var(--tw-border-spacing-y)}.border-spacing-y-1\.5{--tw-border-spacing-y:.375rem;border-spacing:var(--tw-border-spacing-x) var(--tw-border-spacing-y)}.-translate-x-1\/2{--tw-translate-x:-50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\.5{--tw-translate-y:-.375rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y:-50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-0{--tw-translate-x:0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-1\/2{--tw-translate-x:50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-full{--tw-translate-x:100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-0{--tw-translate-y:0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-1\/2{--tw-translate-y:50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-rotate-90{--tw-rotate:-90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-180{--tw-rotate:180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-105{--tw-scale-x:1.05;--tw-scale-y:1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-110{--tw-scale-x:1.1;--tw-scale-y:1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.animate-\[fadeInBg_0\.3s\]{animation:fadeInBg .3s}.animate-\[fadeInModal_0\.3s\]{animation:fadeInModal .3s}.animate-\[fadeIn_0\.2s_ease-out\]{animation:fadeIn .2s ease-out}.animate-\[fadeIn_0\.2s_ease\]{animation:fadeIn .2s ease}.animate-\[fadeIn_0\.3s_ease-out\]{animation:fadeIn .3s ease-out}.animate-\[slideUp_0\.3s_ease-out\]{animation:slideUp .3s ease-out}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.cursor-text{cursor:text}.cursor-wait{cursor:wait}.touch-manipulation{touch-action:manipulation}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize-none{resize:none}.resize-y{resize:vertical}.resize{resize:both}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.grid-cols-\[16px_1fr_auto\]{grid-template-columns:16px 1fr auto}.grid-cols-\[40px_1fr_auto\]{grid-template-columns:40px 1fr auto}.grid-cols-\[auto_1fr\]{grid-template-columns:auto 1fr}.grid-cols-\[repeat\(auto-fill\,minmax\(100px\,1fr\)\)\]{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}.grid-cols-\[repeat\(auto-fill\,minmax\(120px\,1fr\)\)\]{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.grid-cols-\[repeat\(auto-fill\,minmax\(260px\,1fr\)\)\]{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.grid-cols-\[repeat\(auto-fill\,minmax\(300px\,1fr\)\)\]{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.grid-cols-\[repeat\(auto-fill\,minmax\(340px\,1fr\)\)\]{grid-template-columns:repeat(auto-fill,minmax(340px,1fr))}.grid-cols-\[repeat\(auto-fill\,minmax\(40px\,1fr\)\)\]{grid-template-columns:repeat(auto-fill,minmax(40px,1fr))}.grid-cols-\[repeat\(auto-fill\,minmax\(70px\,1fr\)\)\]{grid-template-columns:repeat(auto-fill,minmax(70px,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-3\.5{gap:.875rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-x-3\.5{-moz-column-gap:.875rem;column-gap:.875rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-x-5{-moz-column-gap:1.25rem;column-gap:1.25rem}.gap-y-1\.5{row-gap:.375rem}.gap-y-3{row-gap:.75rem}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-2\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.625rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.625rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-ellipsis{text-overflow:ellipsis}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.break-words{overflow-wrap:break-word}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-\[10px\]{border-radius:10px}.rounded-\[14px\]{border-radius:14px}.rounded-\[18px\]{border-radius:18px}.rounded-\[26px\]{border-radius:26px}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.rounded-t-xl{border-top-left-radius:.75rem;border-top-right-radius:.75rem}.border{border-width:1px}.border-2{border-width:2px}.border-\[3px\]{border-width:3px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-l{border-left-width:1px}.border-l-4{border-left-width:4px}.border-t{border-top-width:1px}.border-t-2{border-top-width:2px}.border-dashed{border-style:dashed}.border-none{border-style:none}.border-\[\#0f4c5c\]{--tw-border-opacity:1;border-color:rgb(15 76 92 / var(--tw-border-opacity, 1))}.border-\[\#184F6B\]{--tw-border-opacity:1;border-color:rgb(24 79 107 / var(--tw-border-opacity, 1))}.border-amber-200{--tw-border-opacity:1;border-color:rgb(253 230 138 / var(--tw-border-opacity, 1))}.border-amber-300{--tw-border-opacity:1;border-color:rgb(252 211 77 / var(--tw-border-opacity, 1))}.border-amber-400{--tw-border-opacity:1;border-color:rgb(251 191 36 / var(--tw-border-opacity, 1))}.border-amber-500{--tw-border-opacity:1;border-color:rgb(245 158 11 / var(--tw-border-opacity, 1))}.border-amber-600{--tw-border-opacity:1;border-color:rgb(217 119 6 / var(--tw-border-opacity, 1))}.border-black\/5{border-color:#0000000d}.border-blue-200{--tw-border-opacity:1;border-color:rgb(191 219 254 / var(--tw-border-opacity, 1))}.border-blue-300{--tw-border-opacity:1;border-color:rgb(147 197 253 / var(--tw-border-opacity, 1))}.border-blue-500{--tw-border-opacity:1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.border-blue-600{--tw-border-opacity:1;border-color:rgb(37 99 235 / var(--tw-border-opacity, 1))}.border-cyan-200{--tw-border-opacity:1;border-color:rgb(165 243 252 / var(--tw-border-opacity, 1))}.border-cyan-300{--tw-border-opacity:1;border-color:rgb(103 232 249 / var(--tw-border-opacity, 1))}.border-gray-100{--tw-border-opacity:1;border-color:rgb(243 244 246 / var(--tw-border-opacity, 1))}.border-gray-200{--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.border-gray-300{--tw-border-opacity:1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.border-green-200{--tw-border-opacity:1;border-color:rgb(187 247 208 / var(--tw-border-opacity, 1))}.border-green-300{--tw-border-opacity:1;border-color:rgb(134 239 172 / var(--tw-border-opacity, 1))}.border-green-500{--tw-border-opacity:1;border-color:rgb(34 197 94 / var(--tw-border-opacity, 1))}.border-green-600{--tw-border-opacity:1;border-color:rgb(22 163 74 / var(--tw-border-opacity, 1))}.border-orange-200{--tw-border-opacity:1;border-color:rgb(254 215 170 / var(--tw-border-opacity, 1))}.border-orange-300{--tw-border-opacity:1;border-color:rgb(253 186 116 / var(--tw-border-opacity, 1))}.border-orange-600{--tw-border-opacity:1;border-color:rgb(234 88 12 / var(--tw-border-opacity, 1))}.border-primary{--tw-border-opacity:1;border-color:rgb(24 79 107 / var(--tw-border-opacity, 1))}.border-primary-dark{--tw-border-opacity:1;border-color:rgb(11 60 73 / var(--tw-border-opacity, 1))}.border-primary-light{--tw-border-opacity:1;border-color:rgb(15 76 92 / var(--tw-border-opacity, 1))}.border-primary\/20{border-color:#184f6b33}.border-primary\/30{border-color:#184f6b4d}.border-purple-200{--tw-border-opacity:1;border-color:rgb(233 213 255 / var(--tw-border-opacity, 1))}.border-purple-300{--tw-border-opacity:1;border-color:rgb(216 180 254 / var(--tw-border-opacity, 1))}.border-purple-400{--tw-border-opacity:1;border-color:rgb(192 132 252 / var(--tw-border-opacity, 1))}.border-purple-500{--tw-border-opacity:1;border-color:rgb(168 85 247 / var(--tw-border-opacity, 1))}.border-red-200{--tw-border-opacity:1;border-color:rgb(254 202 202 / var(--tw-border-opacity, 1))}.border-red-300{--tw-border-opacity:1;border-color:rgb(252 165 165 / var(--tw-border-opacity, 1))}.border-red-400{--tw-border-opacity:1;border-color:rgb(248 113 113 / var(--tw-border-opacity, 1))}.border-red-500{--tw-border-opacity:1;border-color:rgb(239 68 68 / var(--tw-border-opacity, 1))}.border-red-600{--tw-border-opacity:1;border-color:rgb(220 38 38 / var(--tw-border-opacity, 1))}.border-sky-200{--tw-border-opacity:1;border-color:rgb(186 230 253 / var(--tw-border-opacity, 1))}.border-sky-300{--tw-border-opacity:1;border-color:rgb(125 211 252 / var(--tw-border-opacity, 1))}.border-sky-500{--tw-border-opacity:1;border-color:rgb(14 165 233 / var(--tw-border-opacity, 1))}.border-slate-100{--tw-border-opacity:1;border-color:rgb(241 245 249 / var(--tw-border-opacity, 1))}.border-slate-200{--tw-border-opacity:1;border-color:rgb(226 232 240 / var(--tw-border-opacity, 1))}.border-slate-200\/50{border-color:#e2e8f080}.border-slate-200\/60{border-color:#e2e8f099}.border-slate-300{--tw-border-opacity:1;border-color:rgb(203 213 225 / var(--tw-border-opacity, 1))}.border-teal-800{--tw-border-opacity:1;border-color:rgb(17 94 89 / var(--tw-border-opacity, 1))}.border-transparent{border-color:transparent}.border-white{--tw-border-opacity:1;border-color:rgb(255 255 255 / var(--tw-border-opacity, 1))}.border-yellow-200{--tw-border-opacity:1;border-color:rgb(254 240 138 / var(--tw-border-opacity, 1))}.border-yellow-300{--tw-border-opacity:1;border-color:rgb(253 224 71 / var(--tw-border-opacity, 1))}.border-yellow-400{--tw-border-opacity:1;border-color:rgb(250 204 21 / var(--tw-border-opacity, 1))}.border-yellow-500{--tw-border-opacity:1;border-color:rgb(234 179 8 / var(--tw-border-opacity, 1))}.bg-\[\#0f4c5c\]{--tw-bg-opacity:1;background-color:rgb(15 76 92 / var(--tw-bg-opacity, 1))}.bg-\[\#184F6B\]{--tw-bg-opacity:1;background-color:rgb(24 79 107 / var(--tw-bg-opacity, 1))}.bg-\[rgba\(24\,79\,107\,0\.1\)\]{background-color:#184f6b1a}.bg-\[rgba\(255\,140\,0\,0\.1\)\]{background-color:#ff8c001a}.bg-\[rgba\(34\,139\,34\,0\.1\)\]{background-color:#228b221a}.bg-amber-100{--tw-bg-opacity:1;background-color:rgb(254 243 199 / var(--tw-bg-opacity, 1))}.bg-amber-50{--tw-bg-opacity:1;background-color:rgb(255 251 235 / var(--tw-bg-opacity, 1))}.bg-amber-500{--tw-bg-opacity:1;background-color:rgb(245 158 11 / var(--tw-bg-opacity, 1))}.bg-amber-600{--tw-bg-opacity:1;background-color:rgb(217 119 6 / var(--tw-bg-opacity, 1))}.bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1))}.bg-black\/25{background-color:#00000040}.bg-black\/35{background-color:#00000059}.bg-black\/40{background-color:#0006}.bg-black\/50{background-color:#00000080}.bg-black\/60{background-color:#0009}.bg-blue-100{--tw-bg-opacity:1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.bg-blue-200{--tw-bg-opacity:1;background-color:rgb(191 219 254 / var(--tw-bg-opacity, 1))}.bg-blue-50{--tw-bg-opacity:1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.bg-blue-500{--tw-bg-opacity:1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.bg-blue-600{--tw-bg-opacity:1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.bg-cyan-50{--tw-bg-opacity:1;background-color:rgb(236 254 255 / var(--tw-bg-opacity, 1))}.bg-gray-100{--tw-bg-opacity:1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.bg-gray-300{--tw-bg-opacity:1;background-color:rgb(209 213 219 / var(--tw-bg-opacity, 1))}.bg-gray-50{--tw-bg-opacity:1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.bg-green-100{--tw-bg-opacity:1;background-color:rgb(220 252 231 / var(--tw-bg-opacity, 1))}.bg-green-200{--tw-bg-opacity:1;background-color:rgb(187 247 208 / var(--tw-bg-opacity, 1))}.bg-green-50{--tw-bg-opacity:1;background-color:rgb(240 253 244 / var(--tw-bg-opacity, 1))}.bg-green-500{--tw-bg-opacity:1;background-color:rgb(34 197 94 / var(--tw-bg-opacity, 1))}.bg-green-600{--tw-bg-opacity:1;background-color:rgb(22 163 74 / var(--tw-bg-opacity, 1))}.bg-orange-100{--tw-bg-opacity:1;background-color:rgb(255 237 213 / var(--tw-bg-opacity, 1))}.bg-orange-50{--tw-bg-opacity:1;background-color:rgb(255 247 237 / var(--tw-bg-opacity, 1))}.bg-orange-600{--tw-bg-opacity:1;background-color:rgb(234 88 12 / var(--tw-bg-opacity, 1))}.bg-primary{--tw-bg-opacity:1;background-color:rgb(24 79 107 / var(--tw-bg-opacity, 1))}.bg-primary\/10{background-color:#184f6b1a}.bg-primary\/20{background-color:#184f6b33}.bg-primary\/5{background-color:#184f6b0d}.bg-purple-100{--tw-bg-opacity:1;background-color:rgb(243 232 255 / var(--tw-bg-opacity, 1))}.bg-purple-50{--tw-bg-opacity:1;background-color:rgb(250 245 255 / var(--tw-bg-opacity, 1))}.bg-purple-50\/30{background-color:#faf5ff4d}.bg-red-100{--tw-bg-opacity:1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1))}.bg-red-200{--tw-bg-opacity:1;background-color:rgb(254 202 202 / var(--tw-bg-opacity, 1))}.bg-red-400{--tw-bg-opacity:1;background-color:rgb(248 113 113 / var(--tw-bg-opacity, 1))}.bg-red-50{--tw-bg-opacity:1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.bg-red-500{--tw-bg-opacity:1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.bg-red-600{--tw-bg-opacity:1;background-color:rgb(220 38 38 / var(--tw-bg-opacity, 1))}.bg-red-700{--tw-bg-opacity:1;background-color:rgb(185 28 28 / var(--tw-bg-opacity, 1))}.bg-sky-50{--tw-bg-opacity:1;background-color:rgb(240 249 255 / var(--tw-bg-opacity, 1))}.bg-slate-100{--tw-bg-opacity:1;background-color:rgb(241 245 249 / var(--tw-bg-opacity, 1))}.bg-slate-200{--tw-bg-opacity:1;background-color:rgb(226 232 240 / var(--tw-bg-opacity, 1))}.bg-slate-300{--tw-bg-opacity:1;background-color:rgb(203 213 225 / var(--tw-bg-opacity, 1))}.bg-slate-50{--tw-bg-opacity:1;background-color:rgb(248 250 252 / var(--tw-bg-opacity, 1))}.bg-teal-800{--tw-bg-opacity:1;background-color:rgb(17 94 89 / var(--tw-bg-opacity, 1))}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-white\/20{background-color:#fff3}.bg-white\/80{background-color:#fffc}.bg-yellow-100{--tw-bg-opacity:1;background-color:rgb(254 249 195 / var(--tw-bg-opacity, 1))}.bg-yellow-50{--tw-bg-opacity:1;background-color:rgb(254 252 232 / var(--tw-bg-opacity, 1))}.bg-yellow-500{--tw-bg-opacity:1;background-color:rgb(234 179 8 / var(--tw-bg-opacity, 1))}.bg-opacity-50{--tw-bg-opacity:.5}.bg-gradient-to-b{background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.bg-none{background-image:none}.from-amber-400{--tw-gradient-from:#fbbf24 var(--tw-gradient-from-position);--tw-gradient-to:rgb(251 191 36 / 0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.from-amber-50{--tw-gradient-from:#fffbeb var(--tw-gradient-from-position);--tw-gradient-to:rgb(255 251 235 / 0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.from-black\/60{--tw-gradient-from:rgb(0 0 0 / .6) var(--tw-gradient-from-position);--tw-gradient-to:rgb(0 0 0 / 0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.from-blue-50{--tw-gradient-from:#eff6ff var(--tw-gradient-from-position);--tw-gradient-to:rgb(239 246 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.from-blue-500{--tw-gradient-from:#3b82f6 var(--tw-gradient-from-position);--tw-gradient-to:rgb(59 130 246 / 0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.from-cyan-50{--tw-gradient-from:#ecfeff var(--tw-gradient-from-position);--tw-gradient-to:rgb(236 254 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.from-green-50{--tw-gradient-from:#f0fdf4 var(--tw-gradient-from-position);--tw-gradient-to:rgb(240 253 244 / 0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.from-primary{--tw-gradient-from:#184F6B var(--tw-gradient-from-position);--tw-gradient-to:rgb(24 79 107 / 0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.from-primary-dark{--tw-gradient-from:#0b3c49 var(--tw-gradient-from-position);--tw-gradient-to:rgb(11 60 73 / 0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.from-primary\/10{--tw-gradient-from:rgb(24 79 107 / .1) var(--tw-gradient-from-position);--tw-gradient-to:rgb(24 79 107 / 0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.from-primary\/20{--tw-gradient-from:rgb(24 79 107 / .2) var(--tw-gradient-from-position);--tw-gradient-to:rgb(24 79 107 / 0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.from-primary\/30{--tw-gradient-from:rgb(24 79 107 / .3) var(--tw-gradient-from-position);--tw-gradient-to:rgb(24 79 107 / 0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.from-primary\/5{--tw-gradient-from:rgb(24 79 107 / .05) var(--tw-gradient-from-position);--tw-gradient-to:rgb(24 79 107 / 0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.from-purple-50{--tw-gradient-from:#faf5ff var(--tw-gradient-from-position);--tw-gradient-to:rgb(250 245 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.from-red-50{--tw-gradient-from:#fef2f2 var(--tw-gradient-from-position);--tw-gradient-to:rgb(254 242 242 / 0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.from-sky-50{--tw-gradient-from:#f0f9ff var(--tw-gradient-from-position);--tw-gradient-to:rgb(240 249 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.from-slate-50{--tw-gradient-from:#f8fafc var(--tw-gradient-from-position);--tw-gradient-to:rgb(248 250 252 / 0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.from-white{--tw-gradient-from:#fff var(--tw-gradient-from-position);--tw-gradient-to:rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.from-yellow-400{--tw-gradient-from:#facc15 var(--tw-gradient-from-position);--tw-gradient-to:rgb(250 204 21 / 0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.via-black\/50{--tw-gradient-to:rgb(0 0 0 / 0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), rgb(0 0 0 / .5) var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-primary\/5{--tw-gradient-to:rgb(24 79 107 / 0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), rgb(24 79 107 / .05) var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-white{--tw-gradient-to:rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), #fff var(--tw-gradient-via-position), var(--tw-gradient-to)}.to-amber-600{--tw-gradient-to:#d97706 var(--tw-gradient-to-position)}.to-black\/60{--tw-gradient-to:rgb(0 0 0 / .6) var(--tw-gradient-to-position)}.to-blue-50{--tw-gradient-to:#eff6ff var(--tw-gradient-to-position)}.to-blue-600{--tw-gradient-to:#2563eb var(--tw-gradient-to-position)}.to-cyan-50{--tw-gradient-to:#ecfeff var(--tw-gradient-to-position)}.to-emerald-50{--tw-gradient-to:#ecfdf5 var(--tw-gradient-to-position)}.to-green-500{--tw-gradient-to:#22c55e var(--tw-gradient-to-position)}.to-indigo-50{--tw-gradient-to:#eef2ff var(--tw-gradient-to-position)}.to-orange-50{--tw-gradient-to:#fff7ed var(--tw-gradient-to-position)}.to-pink-50{--tw-gradient-to:#fdf2f8 var(--tw-gradient-to-position)}.to-primary-light{--tw-gradient-to:#0f4c5c var(--tw-gradient-to-position)}.to-primary\/10{--tw-gradient-to:rgb(24 79 107 / .1) var(--tw-gradient-to-position)}.to-primary\/20{--tw-gradient-to:rgb(24 79 107 / .2) var(--tw-gradient-to-position)}.to-primary\/5{--tw-gradient-to:rgb(24 79 107 / .05) var(--tw-gradient-to-position)}.to-primary\/90{--tw-gradient-to:rgb(24 79 107 / .9) var(--tw-gradient-to-position)}.to-red-50\/50{--tw-gradient-to:rgb(254 242 242 / .5) var(--tw-gradient-to-position)}.to-slate-50{--tw-gradient-to:#f8fafc var(--tw-gradient-to-position)}.to-slate-50\/40{--tw-gradient-to:rgb(248 250 252 / .4) var(--tw-gradient-to-position)}.to-teal-50{--tw-gradient-to:#f0fdfa var(--tw-gradient-to-position)}.to-transparent{--tw-gradient-to:transparent var(--tw-gradient-to-position)}.to-white{--tw-gradient-to:#fff var(--tw-gradient-to-position)}.to-yellow-600{--tw-gradient-to:#ca8a04 var(--tw-gradient-to-position)}.p-0{padding:0}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-10{padding:2.5rem}.p-12{padding:3rem}.p-2{padding:.5rem}.p-2\.5{padding:.625rem}.p-3{padding:.75rem}.p-3\.5{padding:.875rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.p-\[60px\]{padding:60px}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-3\.5{padding-left:.875rem;padding-right:.875rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-7{padding-left:1.75rem;padding-right:1.75rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-7{padding-top:1.75rem;padding-bottom:1.75rem}.py-8{padding-top:2rem;padding-bottom:2rem}.py-\[60px\]{padding-top:60px;padding-bottom:60px}.pb-1{padding-bottom:.25rem}.pb-1\.5{padding-bottom:.375rem}.pb-2{padding-bottom:.5rem}.pb-2\.5{padding-bottom:.625rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pb-6{padding-bottom:1.5rem}.pl-2{padding-left:.5rem}.pl-4{padding-left:1rem}.pl-5{padding-left:1.25rem}.pl-\[50px\]{padding-left:50px}.pr-10{padding-right:2.5rem}.pr-2{padding-right:.5rem}.pr-3{padding-right:.75rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.pt-5{padding-top:1.25rem}.pt-6{padding-top:1.5rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.align-middle{vertical-align:middle}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-sans{font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji"}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-\[0\.85em\]{font-size:.85em}.text-\[0\.85rem\]{font-size:.85rem}.text-\[0\.8em\]{font-size:.8em}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[12px\]{font-size:12px}.text-\[13px\]{font-size:13px}.text-\[14px\]{font-size:14px}.text-\[15px\]{font-size:15px}.text-\[22px\]{font-size:22px}.text-\[28px\]{font-size:28px}.text-\[9px\]{font-size:9px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-5{line-height:1.25rem}.leading-\[1\.1\]{line-height:1.1}.leading-\[1\.35\]{line-height:1.35}.leading-\[1\.4\]{line-height:1.4}.leading-\[1\.8\]{line-height:1.8}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-wide{letter-spacing:.025em}.text-\[\#0E3A47\]{--tw-text-opacity:1;color:rgb(14 58 71 / var(--tw-text-opacity, 1))}.text-\[\#0f4c5c\]{--tw-text-opacity:1;color:rgb(15 76 92 / var(--tw-text-opacity, 1))}.text-\[\#184F6B\]{--tw-text-opacity:1;color:rgb(24 79 107 / var(--tw-text-opacity, 1))}.text-\[\#1e293b\]{--tw-text-opacity:1;color:rgb(30 41 59 / var(--tw-text-opacity, 1))}.text-\[\#228B22\]{--tw-text-opacity:1;color:rgb(34 139 34 / var(--tw-text-opacity, 1))}.text-\[\#FF8C00\]{--tw-text-opacity:1;color:rgb(255 140 0 / var(--tw-text-opacity, 1))}.text-\[\#b30000\]{--tw-text-opacity:1;color:rgb(179 0 0 / var(--tw-text-opacity, 1))}.text-amber-500{--tw-text-opacity:1;color:rgb(245 158 11 / var(--tw-text-opacity, 1))}.text-amber-600{--tw-text-opacity:1;color:rgb(217 119 6 / var(--tw-text-opacity, 1))}.text-amber-700{--tw-text-opacity:1;color:rgb(180 83 9 / var(--tw-text-opacity, 1))}.text-amber-800{--tw-text-opacity:1;color:rgb(146 64 14 / var(--tw-text-opacity, 1))}.text-amber-900{--tw-text-opacity:1;color:rgb(120 53 15 / var(--tw-text-opacity, 1))}.text-blue-500{--tw-text-opacity:1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.text-blue-600{--tw-text-opacity:1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.text-blue-700{--tw-text-opacity:1;color:rgb(29 78 216 / var(--tw-text-opacity, 1))}.text-blue-800{--tw-text-opacity:1;color:rgb(30 64 175 / var(--tw-text-opacity, 1))}.text-blue-900{--tw-text-opacity:1;color:rgb(30 58 138 / var(--tw-text-opacity, 1))}.text-cyan-600{--tw-text-opacity:1;color:rgb(8 145 178 / var(--tw-text-opacity, 1))}.text-cyan-700{--tw-text-opacity:1;color:rgb(14 116 144 / var(--tw-text-opacity, 1))}.text-cyan-900{--tw-text-opacity:1;color:rgb(22 78 99 / var(--tw-text-opacity, 1))}.text-emerald-600{--tw-text-opacity:1;color:rgb(5 150 105 / var(--tw-text-opacity, 1))}.text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.text-gray-700{--tw-text-opacity:1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.text-gray-800{--tw-text-opacity:1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.text-gray-900{--tw-text-opacity:1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.text-green-500{--tw-text-opacity:1;color:rgb(34 197 94 / var(--tw-text-opacity, 1))}.text-green-600{--tw-text-opacity:1;color:rgb(22 163 74 / var(--tw-text-opacity, 1))}.text-green-700{--tw-text-opacity:1;color:rgb(21 128 61 / var(--tw-text-opacity, 1))}.text-green-800{--tw-text-opacity:1;color:rgb(22 101 52 / var(--tw-text-opacity, 1))}.text-green-900{--tw-text-opacity:1;color:rgb(20 83 45 / var(--tw-text-opacity, 1))}.text-inherit{color:inherit}.text-orange-600{--tw-text-opacity:1;color:rgb(234 88 12 / var(--tw-text-opacity, 1))}.text-orange-700{--tw-text-opacity:1;color:rgb(194 65 12 / var(--tw-text-opacity, 1))}.text-orange-900{--tw-text-opacity:1;color:rgb(124 45 18 / var(--tw-text-opacity, 1))}.text-primary{--tw-text-opacity:1;color:rgb(24 79 107 / var(--tw-text-opacity, 1))}.text-purple-600{--tw-text-opacity:1;color:rgb(147 51 234 / var(--tw-text-opacity, 1))}.text-purple-700{--tw-text-opacity:1;color:rgb(126 34 206 / var(--tw-text-opacity, 1))}.text-purple-800{--tw-text-opacity:1;color:rgb(107 33 168 / var(--tw-text-opacity, 1))}.text-purple-900{--tw-text-opacity:1;color:rgb(88 28 135 / var(--tw-text-opacity, 1))}.text-red-500{--tw-text-opacity:1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.text-red-600{--tw-text-opacity:1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.text-red-700{--tw-text-opacity:1;color:rgb(185 28 28 / var(--tw-text-opacity, 1))}.text-red-800{--tw-text-opacity:1;color:rgb(153 27 27 / var(--tw-text-opacity, 1))}.text-red-900{--tw-text-opacity:1;color:rgb(127 29 29 / var(--tw-text-opacity, 1))}.text-sky-600{--tw-text-opacity:1;color:rgb(2 132 199 / var(--tw-text-opacity, 1))}.text-sky-700{--tw-text-opacity:1;color:rgb(3 105 161 / var(--tw-text-opacity, 1))}.text-sky-900{--tw-text-opacity:1;color:rgb(12 74 110 / var(--tw-text-opacity, 1))}.text-slate-300{--tw-text-opacity:1;color:rgb(203 213 225 / var(--tw-text-opacity, 1))}.text-slate-400{--tw-text-opacity:1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.text-slate-500{--tw-text-opacity:1;color:rgb(100 116 139 / var(--tw-text-opacity, 1))}.text-slate-600{--tw-text-opacity:1;color:rgb(71 85 105 / var(--tw-text-opacity, 1))}.text-slate-700{--tw-text-opacity:1;color:rgb(51 65 85 / var(--tw-text-opacity, 1))}.text-slate-800{--tw-text-opacity:1;color:rgb(30 41 59 / var(--tw-text-opacity, 1))}.text-slate-900{--tw-text-opacity:1;color:rgb(15 23 42 / var(--tw-text-opacity, 1))}.text-teal-700{--tw-text-opacity:1;color:rgb(15 118 110 / var(--tw-text-opacity, 1))}.text-teal-800{--tw-text-opacity:1;color:rgb(17 94 89 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-white\/70{color:#ffffffb3}.text-white\/90{color:#ffffffe6}.text-yellow-700{--tw-text-opacity:1;color:rgb(161 98 7 / var(--tw-text-opacity, 1))}.text-yellow-800{--tw-text-opacity:1;color:rgb(133 77 14 / var(--tw-text-opacity, 1))}.text-yellow-900{--tw-text-opacity:1;color:rgb(113 63 18 / var(--tw-text-opacity, 1))}.underline{text-decoration-line:underline}.line-through{text-decoration-line:line-through}.no-underline{text-decoration-line:none}.accent-blue-500{accent-color:#3b82f6}.accent-primary{accent-color:#184F6B}.accent-primary-dark{accent-color:#0b3c49}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-25{opacity:.25}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-75{opacity:.75}.opacity-80{opacity:.8}.opacity-85{opacity:.85}.opacity-90{opacity:.9}.shadow-2xl{--tw-shadow:0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[0_4px_32px_0_rgba\(0\,0\,0\,0\.12\)\]{--tw-shadow:0 4px 32px 0 rgba(0,0,0,.12);--tw-shadow-colored:0 4px 32px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.ring-2{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-primary{--tw-ring-opacity:1;--tw-ring-color:rgb(24 79 107 / var(--tw-ring-opacity, 1))}.ring-primary\/50{--tw-ring-color:rgb(24 79 107 / .5)}.blur{--tw-blur:blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.blur-2xl{--tw-blur:blur(40px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.blur-3xl{--tw-blur:blur(64px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.blur-xl{--tw-blur:blur(24px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow{--tw-drop-shadow:drop-shadow(0 1px 2px rgb(0 0 0 / .1)) drop-shadow(0 1px 1px rgb(0 0 0 / .06));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-sm{--tw-backdrop-blur:blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[background\,opacity\]{transition-property:background,opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[box-shadow\,transform\]{transition-property:box-shadow,transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[height\]{transition-property:height;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[margin-left\,padding\]{transition-property:margin-left,padding;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[padding\,height\]{transition-property:padding,height;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[padding-top\]{transition-property:padding-top;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[width\,transform\]{transition-property:width,transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[width\]{transition-property:width;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-shadow{transition-property:box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-100{transition-duration:.1s}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}html,body{margin:0;padding:0;width:100%;overflow-x:hidden}#root{width:100%;overflow-x:hidden}.page-head{display:flex;align-items:center;gap:12px;margin-bottom:12px}.grid{display:grid;grid-template-columns:1fr;gap:16px}@media (min-width: 1000px){.grid{grid-template-columns:1.2fr 1fr}.grid>.card.hero{grid-column:1/-1}}.personal-week{grid-column:1/-1}.card{background:#fff;border:1px solid #e8edf2;border-radius:14px;padding:16px;transition:box-shadow .2s ease,border-color .2s ease}.card:hover{box-shadow:0 2px 8px #0000000f;border-color:#d1d5db}.card.hero{display:flex;align-items:center;justify-content:space-between;gap:16px}.hero-left{display:flex;gap:14px;align-items:center}.avatar{width:56px;height:56px;border-radius:50%;background:#184F6B;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:22px}.title{font-size:20px;font-weight:700;margin-bottom:6px}.meta-line{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.pill{background:#f3f6f9;border:1px solid #e8edf2;border-radius:999px;padding:4px 10px;font-size:12px;color:#334155;display:inline-flex;align-items:center;gap:4px}.pill svg{display:inline-block;vertical-align:middle;flex-shrink:0}.pill.ok{background:#eefbf3;border-color:#d3f2df;color:#11663a}.pill.warn{background:#fff7ea;border-color:#fde8c3;color:#885400}.pill.info{background:#eef6ff;border-color:#d6e6ff;color:#0b4aa2}.badge{display:inline-block;border-radius:999px;padding:2px 8px;font-size:12px}.badge.ok{background:#eaf9ef;color:#126a3a}.badge.warn{background:#fff5e6;color:#8a5a00}.badge.danger{background:#ffeaea;color:#9d1b1b}.pay-flag{display:inline-block;padding:2px 6px;font-size:11px;border-radius:6px;font-weight:600;line-height:1}.pay-flag.paid{background:#eaf9ef;color:#126a3a;border:1px solid #bfeccf}.pay-flag.unpaid{background:#ffeaea;color:#9d1b1b;border:1px solid #f8c8c8}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-grid-full{grid-column:1/-1}@media (max-width: 780px){.form-grid{grid-template-columns:1fr}}.f{display:flex;flex-direction:column}.f>span{font-size:12px;color:#6b7280;margin-bottom:6px}.btn{border:1px solid #184F6B;background:#184F6B;color:#fff;border-radius:10px;padding:8px 14px;cursor:pointer;font-size:14px;font-weight:500;display:inline-flex;align-items:center;justify-content:center;transition:all .15s}.btn:hover{filter:brightness(.96)}.btn.ghost{background:#fff;color:#184f6b;border-color:#cfd8df}.btn.ghost.active{background:#184F6B;color:#fff;border-color:#184f6b;font-weight:600}.btn.danger{background:#c0392b;border-color:#c0392b}.btn.small{padding:6px 10px;font-size:12px}.btn.add{background:#184F6B;color:#fff;border-color:#184f6b;font-weight:600}.btn.add:hover{background:#0f3a4d;border-color:#0f3a4d}.table-wrap{overflow:auto}.tbl{width:100%;border-collapse:separate;border-spacing:0 8px}.tbl thead th{font-size:12px;color:#6b7280;text-align:left;padding:6px 8px}.tbl tbody tr{background:#f9fbfd}.tbl tbody td{padding:10px 8px;border-top:1px solid #e8edf2;border-bottom:1px solid #e8edf2}.tbl tbody tr td:first-child{border-left:1px solid #e8edf2;border-top-left-radius:8px;border-bottom-left-radius:8px}.tbl tbody tr td:last-child{border-right:1px solid #e8edf2;border-top-right-radius:8px;border-bottom-right-radius:8px}.actions{display:flex;gap:8px;align-items:center}.muted{color:#8b95a1}.flex-between{display:flex;align-items:center;justify-content:space-between}.row.gap{display:flex;gap:8px;align-items:center}.mini-week-grid{display:grid;grid-template-columns:repeat(7,minmax(200px,1fr));gap:8px;min-width:-moz-max-content;min-width:max-content}.mini-day{background:#fbfdff;border:1px solid #e2e8f0;border-radius:10px;display:flex;flex-direction:column;min-height:180px}.mini-day-head{padding:6px 8px;border-bottom:1px solid #e2e8f0;font-size:12px;font-weight:600;display:flex;justify-content:space-between;align-items:center}.half-badge{display:inline-block;margin-left:4px;background:#eef6ff;color:#0b4aa2;font-size:11px;line-height:1;padding:2px 4px;border-radius:4px;font-weight:600;vertical-align:middle}.card.kpis{display:flex;gap:12px;flex-wrap:wrap;padding:20px}.kpi{flex:1;min-width:120px;text-align:center;padding:16px;background:linear-gradient(135deg,#f8fafc 0%,#f1f5f9 100%);border:1px solid #e2e8f0;border-radius:12px;transition:all .2s ease}.kpi:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000014;border-color:#cbd5e1}.kpi .n{font-size:28px;font-weight:700;color:#0f172a;line-height:1.2;margin-bottom:6px}.kpi .t{font-size:13px;color:#64748b;font-weight:500;line-height:1.3}.conclusion-edit textarea.form-control{border:2px solid #3b82f6;border-radius:8px;padding:12px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;transition:border-color .2s ease}.conclusion-edit textarea.form-control:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #3b82f61a}.edit-actions{display:flex;gap:10px;margin-top:10px}.btn-secondary{background-color:#6b7280;border-color:#6b7280;color:#fff}.btn-secondary:hover:not(:disabled){background-color:#4b5563;border-color:#4b5563}.btn-secondary:disabled,.btn-primary:disabled{opacity:.5;cursor:not-allowed}.form-inline{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:16px}.form-inline input,.form-inline select,.form-inline textarea,.form-inline button{flex:0 1 auto;min-width:0;margin:0}.form-inline input[name=phone_main],.form-inline input[name=phone]{width:140px}.form-inline input[name=student_name],.form-inline input[name=name]{flex:1 1 180px;min-width:150px}.form-inline input[name=parent_name]{flex:1 1 150px;min-width:120px}.form-inline select{flex:0 1 auto;min-width:120px}.form-inline input[name=note],.form-inline input[name=email]{flex:1 1 150px;min-width:120px}.form-inline .btn{flex:0 0 auto;white-space:nowrap}@media (max-width: 768px){.form-inline{flex-direction:column;align-items:stretch}.form-inline input,.form-inline select,.form-inline textarea{width:100%!important;flex:1 1 auto}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.placeholder\:text-slate-400::-moz-placeholder{--tw-text-opacity:1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.placeholder\:text-slate-400::placeholder{--tw-text-opacity:1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.last\:mb-0:last-child{margin-bottom:0}.last\:border-b-0:last-child{border-bottom-width:0px}.last\:pb-0:last-child{padding-bottom:0}.hover\:-translate-y-0\.5:hover{--tw-translate-y:-.125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:-translate-y-1:hover{--tw-translate-y:-.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-105:hover{--tw-scale-x:1.05;--tw-scale-y:1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-110:hover{--tw-scale-x:1.1;--tw-scale-y:1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-\[\#5eb1bf\]:hover{--tw-border-opacity:1;border-color:rgb(94 177 191 / var(--tw-border-opacity, 1))}.hover\:border-amber-400:hover{--tw-border-opacity:1;border-color:rgb(251 191 36 / var(--tw-border-opacity, 1))}.hover\:border-blue-400:hover{--tw-border-opacity:1;border-color:rgb(96 165 250 / var(--tw-border-opacity, 1))}.hover\:border-blue-500:hover{--tw-border-opacity:1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.hover\:border-blue-600:hover{--tw-border-opacity:1;border-color:rgb(37 99 235 / var(--tw-border-opacity, 1))}.hover\:border-blue-700:hover{--tw-border-opacity:1;border-color:rgb(29 78 216 / var(--tw-border-opacity, 1))}.hover\:border-cyan-400:hover{--tw-border-opacity:1;border-color:rgb(34 211 238 / var(--tw-border-opacity, 1))}.hover\:border-gray-300:hover{--tw-border-opacity:1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.hover\:border-gray-400:hover{--tw-border-opacity:1;border-color:rgb(156 163 175 / var(--tw-border-opacity, 1))}.hover\:border-gray-500:hover{--tw-border-opacity:1;border-color:rgb(107 114 128 / var(--tw-border-opacity, 1))}.hover\:border-green-400:hover{--tw-border-opacity:1;border-color:rgb(74 222 128 / var(--tw-border-opacity, 1))}.hover\:border-orange-400:hover{--tw-border-opacity:1;border-color:rgb(251 146 60 / var(--tw-border-opacity, 1))}.hover\:border-primary-dark:hover{--tw-border-opacity:1;border-color:rgb(11 60 73 / var(--tw-border-opacity, 1))}.hover\:border-primary\/50:hover{border-color:#184f6b80}.hover\:border-purple-400:hover{--tw-border-opacity:1;border-color:rgb(192 132 252 / var(--tw-border-opacity, 1))}.hover\:border-red-300:hover{--tw-border-opacity:1;border-color:rgb(252 165 165 / var(--tw-border-opacity, 1))}.hover\:border-sky-400:hover{--tw-border-opacity:1;border-color:rgb(56 189 248 / var(--tw-border-opacity, 1))}.hover\:border-slate-200\/60:hover{border-color:#e2e8f099}.hover\:border-slate-300:hover{--tw-border-opacity:1;border-color:rgb(203 213 225 / var(--tw-border-opacity, 1))}.hover\:border-slate-400:hover{--tw-border-opacity:1;border-color:rgb(148 163 184 / var(--tw-border-opacity, 1))}.hover\:bg-amber-100:hover{--tw-bg-opacity:1;background-color:rgb(254 243 199 / var(--tw-bg-opacity, 1))}.hover\:bg-amber-600:hover{--tw-bg-opacity:1;background-color:rgb(217 119 6 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-100:hover{--tw-bg-opacity:1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-200:hover{--tw-bg-opacity:1;background-color:rgb(191 219 254 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-50:hover{--tw-bg-opacity:1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-600:hover{--tw-bg-opacity:1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-700:hover{--tw-bg-opacity:1;background-color:rgb(29 78 216 / var(--tw-bg-opacity, 1))}.hover\:bg-cyan-100:hover{--tw-bg-opacity:1;background-color:rgb(207 250 254 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-200:hover{--tw-bg-opacity:1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-50:hover{--tw-bg-opacity:1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.hover\:bg-green-100:hover{--tw-bg-opacity:1;background-color:rgb(220 252 231 / var(--tw-bg-opacity, 1))}.hover\:bg-green-600:hover{--tw-bg-opacity:1;background-color:rgb(22 163 74 / var(--tw-bg-opacity, 1))}.hover\:bg-orange-100:hover{--tw-bg-opacity:1;background-color:rgb(255 237 213 / var(--tw-bg-opacity, 1))}.hover\:bg-primary-dark:hover{--tw-bg-opacity:1;background-color:rgb(11 60 73 / var(--tw-bg-opacity, 1))}.hover\:bg-primary\/5:hover{background-color:#184f6b0d}.hover\:bg-purple-100:hover{--tw-bg-opacity:1;background-color:rgb(243 232 255 / var(--tw-bg-opacity, 1))}.hover\:bg-red-100:hover{--tw-bg-opacity:1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1))}.hover\:bg-red-50:hover{--tw-bg-opacity:1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.hover\:bg-red-600:hover{--tw-bg-opacity:1;background-color:rgb(220 38 38 / var(--tw-bg-opacity, 1))}.hover\:bg-red-700:hover{--tw-bg-opacity:1;background-color:rgb(185 28 28 / var(--tw-bg-opacity, 1))}.hover\:bg-red-800:hover{--tw-bg-opacity:1;background-color:rgb(153 27 27 / var(--tw-bg-opacity, 1))}.hover\:bg-sky-100:hover{--tw-bg-opacity:1;background-color:rgb(224 242 254 / var(--tw-bg-opacity, 1))}.hover\:bg-slate-100:hover{--tw-bg-opacity:1;background-color:rgb(241 245 249 / var(--tw-bg-opacity, 1))}.hover\:bg-slate-200:hover{--tw-bg-opacity:1;background-color:rgb(226 232 240 / var(--tw-bg-opacity, 1))}.hover\:bg-slate-50:hover{--tw-bg-opacity:1;background-color:rgb(248 250 252 / var(--tw-bg-opacity, 1))}.hover\:bg-teal-900:hover{--tw-bg-opacity:1;background-color:rgb(19 78 74 / var(--tw-bg-opacity, 1))}.hover\:bg-white\/10:hover{background-color:#ffffff1a}.hover\:bg-white\/30:hover{background-color:#ffffff4d}.hover\:bg-white\/80:hover{background-color:#fffc}.hover\:bg-yellow-100:hover{--tw-bg-opacity:1;background-color:rgb(254 249 195 / var(--tw-bg-opacity, 1))}.hover\:bg-gradient-to-br:hover{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.hover\:from-red-50:hover{--tw-gradient-from:#fef2f2 var(--tw-gradient-from-position);--tw-gradient-to:rgb(254 242 242 / 0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:from-sky-50:hover{--tw-gradient-from:#f0f9ff var(--tw-gradient-from-position);--tw-gradient-to:rgb(240 249 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:to-cyan-50:hover{--tw-gradient-to:#ecfeff var(--tw-gradient-to-position)}.hover\:to-red-100:hover{--tw-gradient-to:#fee2e2 var(--tw-gradient-to-position)}.hover\:text-\[\#5eb1bf\]:hover{--tw-text-opacity:1;color:rgb(94 177 191 / var(--tw-text-opacity, 1))}.hover\:text-gray-700:hover{--tw-text-opacity:1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.hover\:text-gray-900:hover{--tw-text-opacity:1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.hover\:text-primary-dark:hover{--tw-text-opacity:1;color:rgb(11 60 73 / var(--tw-text-opacity, 1))}.hover\:text-red-600:hover{--tw-text-opacity:1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.hover\:text-slate-600:hover{--tw-text-opacity:1;color:rgb(71 85 105 / var(--tw-text-opacity, 1))}.hover\:text-slate-700:hover{--tw-text-opacity:1;color:rgb(51 65 85 / var(--tw-text-opacity, 1))}.hover\:text-slate-800:hover{--tw-text-opacity:1;color:rgb(30 41 59 / var(--tw-text-opacity, 1))}.hover\:text-slate-900:hover{--tw-text-opacity:1;color:rgb(15 23 42 / var(--tw-text-opacity, 1))}.hover\:text-teal-900:hover{--tw-text-opacity:1;color:rgb(19 78 74 / var(--tw-text-opacity, 1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.hover\:opacity-70:hover{opacity:.7}.hover\:shadow-lg:hover{--tw-shadow:0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-md:hover{--tw-shadow:0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-xl:hover{--tw-shadow:0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-blue-500\/40:hover{--tw-shadow-color:rgb(59 130 246 / .4);--tw-shadow:var(--tw-shadow-colored)}.hover\:brightness-110:hover{--tw-brightness:brightness(1.1);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.hover\:brightness-95:hover{--tw-brightness:brightness(.95);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.focus\:border-blue-500:focus{--tw-border-opacity:1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.focus\:border-blue-600:focus{--tw-border-opacity:1;border-color:rgb(37 99 235 / var(--tw-border-opacity, 1))}.focus\:border-primary:focus{--tw-border-opacity:1;border-color:rgb(24 79 107 / var(--tw-border-opacity, 1))}.focus\:border-primary-dark:focus{--tw-border-opacity:1;border-color:rgb(11 60 73 / var(--tw-border-opacity, 1))}.focus\:border-teal-800:focus{--tw-border-opacity:1;border-color:rgb(17 94 89 / var(--tw-border-opacity, 1))}.focus\:border-transparent:focus{border-color:transparent}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-1:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-blue-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(59 130 246 / var(--tw-ring-opacity, 1))}.focus\:ring-blue-600\/10:focus{--tw-ring-color:rgb(37 99 235 / .1)}.focus\:ring-primary:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(24 79 107 / var(--tw-ring-opacity, 1))}.focus\:ring-primary-dark:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(11 60 73 / var(--tw-ring-opacity, 1))}.focus\:ring-primary\/50:focus{--tw-ring-color:rgb(24 79 107 / .5)}.focus\:ring-teal-800\/10:focus{--tw-ring-color:rgb(17 94 89 / .1)}.active\:translate-y-0:active{--tw-translate-y:0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.active\:scale-95:active{--tw-scale-x:.95;--tw-scale-y:.95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.active\:bg-white\/20:active{background-color:#fff3}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:bg-slate-50:disabled{--tw-bg-opacity:1;background-color:rgb(248 250 252 / var(--tw-bg-opacity, 1))}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:opacity-60:disabled{opacity:.6}.disabled\:opacity-70:disabled{opacity:.7}@media (min-width: 640px){.sm\:h-10{height:2.5rem}.sm\:min-w-\[40px\]{min-width:40px}.sm\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media (min-width: 768px){.md\:col-span-2{grid-column:span 2 / span 2}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width: 1024px){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-\[1fr_320px\]{grid-template-columns:1fr 320px}.lg\:grid-cols-\[1fr_350px\]{grid-template-columns:1fr 350px}}.page-head{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;gap:16px 24px;margin-bottom:20px;padding:20px 24px;background:#ffffff;border-radius:12px;box-shadow:0 2px 8px #0b3c4914;align-items:start}.schedule-nav-row{grid-column:1;grid-row:1;display:flex;gap:10px;align-items:center;flex-wrap:nowrap}.page-head h2{grid-column:2;grid-row:1;margin:0;font-size:20px;font-weight:600;color:#0f172a;white-space:nowrap;text-align:right;line-height:38px;min-height:38px;align-self:start}.schedule-filters{grid-column:1;grid-row:2;display:flex;gap:10px;align-items:center;flex-wrap:wrap;align-self:start}.schedule-add-btn{grid-column:2;grid-row:2;display:flex;align-items:flex-start;justify-content:flex-end;z-index:1}.page-head button.btn,.schedule-nav-row button.btn,.schedule-add-btn button.btn,.page-head .btn,.schedule-nav-row .btn,.schedule-add-btn .btn{border:1px solid #0f4c5c!important;background:#0f4c5c!important;color:#fff!important;border-radius:8px!important;padding:0 16px!important;margin:0!important;cursor:pointer!important;transition:all .15s!important;font-weight:500!important;font-size:14px!important;white-space:nowrap!important;height:38px!important;min-height:38px!important;max-height:38px!important;width:auto!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;line-height:1!important;box-sizing:border-box!important;flex-shrink:0!important;text-decoration:none!important;font-family:inherit!important;-webkit-appearance:none!important;-moz-appearance:none!important;appearance:none!important;outline:none!important}.page-head .btn:hover,.schedule-nav-row .btn:hover,.schedule-add-btn .btn:hover{background:#0d3f4d!important;border-color:#0d3f4d!important}.page-head .btn:active,.schedule-nav-row .btn:active,.schedule-add-btn .btn:active{transform:scale(.98)!important}.page-head button.btn.ghost,.schedule-nav-row button.btn.ghost,.schedule-add-btn button.btn.ghost,.page-head .btn.ghost,.schedule-nav-row .btn.ghost,.schedule-add-btn .btn.ghost{background:#fff!important;color:#0f4c5c!important;border-color:#cbd5e1!important}.page-head .btn.ghost:hover,.schedule-nav-row .btn.ghost:hover,.schedule-add-btn .btn.ghost:hover,.page-head button.btn.ghost:hover,.schedule-nav-row button.btn.ghost:hover,.schedule-add-btn button.btn.ghost:hover{background:#f8fafc!important;border-color:#0f4c5c!important}.page-head .btn.ghost.active,.schedule-nav-row .btn.ghost.active,.schedule-add-btn .btn.ghost.active,.page-head button.btn.ghost.active,.schedule-nav-row button.btn.ghost.active,.schedule-add-btn button.btn.ghost.active{background:#eff6ff!important;border-color:#3b82f6!important;color:#1e40af!important;font-weight:600!important}.page-head button.btn.add,.schedule-nav-row button.btn.add,.schedule-add-btn button.btn.add,.page-head .btn.add,.schedule-nav-row .btn.add,.schedule-add-btn .btn.add{background:#184F6B!important;color:#fff!important;border-color:#184f6b!important;font-weight:600!important;min-width:140px!important}.page-head .btn.add:hover,.schedule-nav-row .btn.add:hover,.schedule-add-btn .btn.add:hover,.page-head button.btn.add:hover,.schedule-nav-row button.btn.add:hover,.schedule-add-btn button.btn.add:hover{background:#0f3a4d!important;border-color:#0f3a4d!important}.btn.datepicker{min-width:110px;font-weight:600}.btn.datepicker.month{min-width:140px;text-transform:capitalize}.spacer{width:16px;height:1px;flex-shrink:0}.card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:20px;margin-bottom:16px;box-shadow:0 1px 3px #0000000d}.card.warn{background:#fef3c7;border-color:#fde68a;color:#92400e}.loading-state{text-align:center;padding:60px 20px;color:#6b7280;font-size:16px}.legend-month{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center!important;gap:20px!important;justify-content:center!important;margin-top:24px;padding:16px;background:white;border-radius:10px;box-shadow:0 2px 8px #0b3c4914}.legend-item{display:inline-flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;gap:8px;font-size:13px;color:#4b5563;white-space:nowrap;flex:0 0 auto!important;flex-shrink:0!important;padding:8px 16px;border:1px solid #e2e8f0;border-radius:8px;background:white}.legend-badge{width:24px;height:24px;border-radius:6px;flex-shrink:0}.legend-badge.done{background:#22c55e}.legend-badge.planned{background:#3b82f6}.legend-badge.missed{background:#f97316}.legend-badge.canceled{background:#ef4444}@media (max-width: 768px){.legend-month{flex-wrap:nowrap!important;gap:12px!important;padding:12px}.legend-item{font-size:11px;gap:6px}.legend-badge{width:20px;height:20px}}.board{display:grid;grid-template-columns:110px repeat(var(--cols),minmax(280px,1fr));overflow:auto;gap:0 20px!important;-moz-column-gap:20px!important;column-gap:20px!important;row-gap:0;min-width:0;width:100%}.col{display:grid;gap:8px;min-width:0;width:100%}.col.teacher{min-width:0;max-width:100%}.timecol{width:110px;min-width:110px;flex-shrink:0}.cell{border:1px solid #e8edf2;border-radius:10px;background:#fbfdff;padding:8px;position:relative;overflow:hidden;transition:border-color .2s ease,box-shadow .2s ease}.cell:hover{border-color:#cbd5e1;box-shadow:0 1px 3px #0000000d}.cell.head{background:linear-gradient(135deg,#f8fafc 0%,#f1f5f9 100%);font-weight:700;overflow:hidden;border-color:#cbd5e1;box-shadow:0 1px 2px #00000008;min-height:60px;display:flex;align-items:center}.cell.time{display:flex;align-items:center;justify-content:center;background:#fff;padding:20px 6px;min-height:60px;white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:600;color:#475569;border-color:#e2e8f0;flex-shrink:0}.tline{display:flex;align-items:center;gap:10px;width:100%}.tname{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;color:#1e293b;letter-spacing:-.01em}.avatar.small{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#184F6B 0%,#0f3a4d 100%);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;flex-shrink:0;box-shadow:0 2px 4px #184f6b33;transition:transform .2s ease,box-shadow .2s ease}.avatar.small:hover{transform:scale(1.05);box-shadow:0 3px 6px #184f6b4d}.cell.slot.white{background:#fff}.cell.slot.green{background:#fff;border-color:#e5e7eb}.cell.slot.yellow{background:#eff6ff;border-color:#93c5fd}.cell.slot.blocked{background:#000;color:#fff;opacity:.85}.cell.slot.has-lessons{padding:0;border-color:transparent;background:#fff}.cell.slot.has-lessons .cards{height:100%;overflow:visible;position:relative}.cell.slot.has-lessons .slot-card{width:100%;box-sizing:border-box;display:flex;flex-direction:column;justify-content:flex-start;gap:8px;border:1px solid #e2e8f0;border-left:4px solid transparent;border-radius:10px;padding:12px;color:#1e293b;overflow:visible;background:#ffffff;box-shadow:0 1px 3px #00000014;min-height:60px}.cell.slot.has-lessons{position:relative}.cell.slot.has-lessons .slot-card.lesson-span-multiple{position:absolute;top:0;left:0;right:0;z-index:1;overflow:visible!important}.cell.slot.part-of-long-lesson{padding:0;border:none;background:transparent}.cell.slot.part-of-long-lesson .cards{height:100%;overflow:visible;padding:0}.cell.slot.part-of-long-lesson{overflow:visible!important}.slot-card input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#184F6B;flex-shrink:0}.slot-card:has(input[type=checkbox]:checked){outline:2px solid #184F6B;outline-offset:2px}.cell.slot.blocked:not(.has-lessons){background:#000;color:#fff;opacity:.85}.cell.slot.blocked.has-lessons{background:#fff;color:inherit;opacity:1}.slot-card{border:1px solid #e2e8f0;border-left:4px solid transparent;border-radius:10px;padding:10px 12px;cursor:pointer;color:#1e293b;transition:all .2s ease;box-shadow:0 1px 3px #00000014;background:#ffffff;min-height:60px;display:flex;flex-direction:column;gap:6px}.slot-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001f;border-color:#cbd5e1}.slot-card.st-cancelled:hover,.slot-card.st-canceled:hover,.slot-card.st-burned:hover,.slot-card.st-отменён:hover,.slot-card.st-отменен:hover{border-color:#94a3b8!important;border-width:2px!important;transform:translateY(-1px);box-shadow:0 2px 6px #94a3b826!important}.slot-card.trial-lesson-card{border:2px solid #a855f7!important;background:rgba(250,245,255,.5)!important;box-shadow:0 2px 8px #a855f726}.slot-card.trial-lesson-card:hover{border-color:#9333ea!important;background:rgba(250,245,255,.7)!important;box-shadow:0 4px 12px #a855f740}.slot-main{display:flex;align-items:center;justify-content:space-between;font-weight:600;color:#0f172a;flex-wrap:wrap;gap:6px;min-height:auto;line-height:1.4}.slot-sub{margin-top:0;font-size:12px;color:#475569;padding-top:0;padding-left:0;overflow:visible;min-height:auto;line-height:1.5;display:flex;flex-wrap:wrap;gap:6px;align-items:center}.user-type-pill{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:6px;font-size:11px;line-height:1.2;color:#475569;white-space:nowrap;font-weight:500;box-shadow:0 1px 2px #0000000d}.user-type-pill .user-icon{flex-shrink:0;width:12px;height:12px}.class-pill{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;background:#eff6ff;border:1px solid #bfdbfe;border-radius:6px;font-size:11px;color:#1e40af;white-space:nowrap;font-weight:500;box-shadow:0 1px 2px #0000000d}.class-label{font-weight:500;opacity:.8}.class-value{font-weight:600}.dur-badge-new{display:inline-flex;align-items:center;background:#eff6ff;color:#1e40af;font-size:11px;line-height:1.2;padding:3px 8px;border-radius:6px;font-weight:600;border:1px solid #bfdbfe;box-shadow:0 1px 2px #0000000d}.location-badge{display:inline-flex;align-items:center;gap:3px}.location-icon{flex-shrink:0}.location-number{font-size:12px;color:#475569;font-weight:500}.user-pill{display:inline-flex;align-items:center;gap:5px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:4px 10px;font-size:12px;font-weight:500;color:#334155;max-width:160px;overflow:hidden;box-shadow:0 1px 2px #0000000d}.user-pill span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.user-pill .user-icon{flex-shrink:0;width:12px;height:12px;min-width:12px}.pill{border:1px solid #cfd8df;border-radius:999px;padding:2px 8px;font-size:12px}.badge{position:absolute;top:6px;right:6px;background:#184F6B;color:#fff;border-radius:999px;font-size:12px;padding:2px 8px}.half-badge{display:inline-flex;align-items:center;margin-left:4px;background:#fef3c7;color:#92400e;font-size:11px;line-height:1.2;padding:3px 7px;border-radius:6px;font-weight:600;vertical-align:middle;border:1px solid #fde68a;box-shadow:0 1px 2px #92400e1a}.full-badge{display:inline-flex;align-items:center;margin-left:4px;background:#dbeafe;color:#1e40af;font-size:11px;line-height:1.2;padding:3px 7px;border-radius:6px;font-weight:600;vertical-align:middle;border:1px solid #93c5fd;box-shadow:0 1px 2px #1e40af1a}.pay-flag{display:inline-flex;align-items:center;justify-content:center;margin-left:4px;padding:3px 8px;font-size:11px;border-radius:6px;font-weight:600;line-height:1.2;min-width:20px;box-shadow:0 1px 2px #00000014}.pay-flag.paid{background:#d1fae5;color:#065f46;border:1px solid #86efac;font-weight:600;box-shadow:0 1px 2px #055f461a}.pay-flag.unpaid{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5;font-weight:600;box-shadow:0 1px 2px #991b1b1a}.cell.slot.white.dragover,.cell.slot.green.dragover{outline:2px dashed #184F6B}.slot-card.st-done,.slot-card.st-completed,.slot-card.st-проведен,.slot-card.st-проведён,.lesson-box.st-done,.lesson-box.st-completed,.lesson-box.st-проведен,.lesson-box.st-проведён{background:#ecfdf5!important;border-color:#10b981!important;border-width:2px!important;border-left-width:4px!important;border-left-color:#10b981!important;box-shadow:0 2px 4px #10b9811a!important}.slot-card.st-planned:not(.st-cancelled):not(.st-canceled):not(.st-burned):not(.st-отменён):not(.st-отменен),.slot-card.st-назначен:not(.st-cancelled):not(.st-canceled):not(.st-burned):not(.st-отменён):not(.st-отменен),.slot-card.st-запланирован:not(.st-cancelled):not(.st-canceled):not(.st-burned):not(.st-отменён):not(.st-отменен),.lesson-box.st-planned:not(.st-cancelled):not(.st-canceled):not(.st-burned):not(.st-отменён):not(.st-отменен),.lesson-box.st-назначен:not(.st-cancelled):not(.st-canceled):not(.st-burned):not(.st-отменён):not(.st-отменен),.lesson-box.st-запланирован:not(.st-cancelled):not(.st-canceled):not(.st-burned):not(.st-отменён):not(.st-отменен){background:#eff6ff!important;border-color:#3b82f6!important;border-width:2px!important;border-left-width:4px!important;border-left-color:#3b82f6!important;box-shadow:0 2px 4px #3b82f61a!important}.slot-card.st-frozen,.slot-card.st-window,.slot-card.st-заморозка,.slot-card.st-окошко,.lesson-box.st-frozen,.lesson-box.st-window,.lesson-box.st-заморозка,.lesson-box.st-окошко{background:#d1fae5!important;border-color:#10b981!important;border-width:2px!important;border-left-width:4px!important;border-left-color:#0ea5e9!important}.slot-card.st-thinking,.slot-card.st-думает,.lesson-box.st-thinking,.lesson-box.st-думает{background:#fef3c7!important;border-color:#f59e0b!important;border-width:2px!important;border-left-width:4px!important;border-left-color:#3b82f6!important}.slot-card.st-missed,.slot-card.st-no_show,.slot-card.st-refused,.slot-card.st-пропущен,.slot-card.st-отказался,.lesson-box.st-missed,.lesson-box.st-no_show,.lesson-box.st-refused,.lesson-box.st-пропущен,.lesson-box.st-отказался{background:#fee2e2!important;border-color:#ef4444!important;border-width:2px!important;border-left-width:4px!important;border-left-color:#f97316!important}.slot-card.st-rescheduled,.slot-card.st-перенос,.slot-card.st-перенесён,.slot-card.st-перенесен,.lesson-box.st-rescheduled,.lesson-box.st-перенос,.lesson-box.st-перенесён,.lesson-box.st-перенесен{background:#e9d5ff!important;border-color:#8b5cf6!important;border-width:2px!important;border-left-width:4px!important;border-left-color:#a855f7!important}.slot-card.st-rescheduled_from,.slot-card.st-перенесён_с,.lesson-box.st-rescheduled_from,.lesson-box.st-перенесён_с{background:#cffafe!important;border-color:#06b6d4!important;border-width:2px!important;border-left-width:4px!important;border-left-color:#06b6d4!important}.slot-card.st-cancelled,.slot-card.st-canceled,.slot-card.st-burned,.slot-card.st-отменён,.slot-card.st-отменен,.lesson-box.st-cancelled,.lesson-box.st-canceled,.lesson-box.st-burned,.lesson-box.st-отменён,.lesson-box.st-отменен{background:#f8fafc!important;border-color:#94a3b8!important;border-width:2px!important;border-left-width:4px!important;border-left-color:#94a3b8!important;opacity:1!important;box-shadow:0 1px 3px #94a3b81a!important}.cell.slot.has-lessons .slot-card.st-cancelled,.cell.slot.has-lessons .slot-card.st-canceled,.cell.slot.has-lessons .slot-card.st-burned,.cell.slot.has-lessons .slot-card.st-отменён,.cell.slot.has-lessons .slot-card.st-отменен{border-left-color:#94a3b8!important}.teacher-mini-slot,.client-mini-slot{transition:transform .15s ease,box-shadow .15s ease}.teacher-mini-slot:hover,.client-mini-slot:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.teacher-mini-slot:active,.client-mini-slot:active{transform:translateY(0)}.lesson-box{position:relative;border-left:4px solid transparent;min-width:0;word-wrap:break-word}.lesson-box .topic{word-break:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.lesson-box.st-done,.lesson-box.st-проведен,.lesson-box.st-проведён,.lesson-box.st-completed{border-left-color:#10b981}.lesson-box.st-frozen,.lesson-box.st-заморозка,.lesson-box.st-window,.lesson-box.st-окошко{border-left-color:#0ea5e9}.lesson-box.st-planned,.lesson-box.st-назначен,.lesson-box.st-запланирован,.lesson-box.st-thinking,.lesson-box.st-думает{border-left-color:#3b82f6}.lesson-box.st-missed,.lesson-box.st-no_show,.lesson-box.st-пропущен,.lesson-box.st-refused,.lesson-box.st-отказался{border-left-color:#f97316}.lesson-box.st-rescheduled_from,.lesson-box.st-перенесён_с{border-left-color:#06b6d4}.lesson-box.st-rescheduled,.lesson-box.st-перенос,.lesson-box.st-перенесён,.lesson-box.st-перенесен{border-left-color:#a855f7}.slot-card.st-cancelled,.slot-card.st-canceled,.slot-card.st-burned,.slot-card.st-отменён,.slot-card.st-отменен,.lesson-box.st-cancelled,.lesson-box.st-canceled,.lesson-box.st-burned,.lesson-box.st-отменён,.lesson-box.st-отменен,.cell.slot.has-lessons .slot-card.st-cancelled,.cell.slot.has-lessons .slot-card.st-canceled,.cell.slot.has-lessons .slot-card.st-burned,.cell.slot.has-lessons .slot-card.st-отменён,.cell.slot.has-lessons .slot-card.st-отменен{border-left-color:#94a3b8!important}.mini-week-wrap{overflow-x:auto;padding-bottom:4px;margin-top:12px}.mini-week-wrap::-webkit-scrollbar{height:8px}.mini-week-wrap::-webkit-scrollbar-track{background:#f1f5f9;border-radius:4px}.mini-week-wrap::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.mini-week-wrap::-webkit-scrollbar-thumb:hover{background:#94a3b8}.mini-day{background:#fbfdff;border:1px solid #e2e8f0;border-radius:10px;display:flex;flex-direction:column;min-height:180px;transition:box-shadow .2s ease}.mini-day:hover{box-shadow:0 2px 8px #00000014}.mini-day-head{padding:6px 8px;border-bottom:1px solid #e2e8f0;font-size:12px;font-weight:600;display:flex;justify-content:space-between;align-items:center;background:#f8fafc}.mini-day-body{padding:8px;display:flex;flex-direction:column;gap:6px;flex:1}.slot-card.st-canceled,.slot-card.st-cancelled,.slot-card.st-burned,.slot-card.st-отменён,.slot-card.st-отменен,.cell.slot.has-lessons .slot-card.st-canceled,.cell.slot.has-lessons .slot-card.st-cancelled,.cell.slot.has-lessons .slot-card.st-burned,.cell.slot.has-lessons .slot-card.st-отменён,.cell.slot.has-lessons .slot-card.st-отменен{border-left-color:#94a3b8!important}@media (max-width: 1024px){.board{grid-template-columns:90px repeat(var(--cols),minmax(250px,1fr));-moz-column-gap:12px!important;column-gap:12px!important}.timecol{width:90px;min-width:90px}.cell.time{padding:15px 4px;min-height:50px;font-size:13px}.cell.head{min-height:50px;padding:8px 10px}.col.teacher{min-width:250px}}@media (max-width: 768px){.board{grid-template-columns:70px repeat(var(--cols),minmax(200px,1fr));-moz-column-gap:8px!important;column-gap:8px!important}.timecol{width:70px;min-width:70px}.cell.time{padding:12px 3px;min-height:45px;font-size:12px}.cell.head{min-height:45px;padding:6px 8px}.cell.head .tname{font-size:13px}.col.teacher{min-width:200px}.slot-card{padding:6px;font-size:12px}.slot-main{font-size:13px}.slot-sub{font-size:11px}}@media (max-width: 480px){.board{grid-template-columns:60px repeat(var(--cols),minmax(180px,1fr));-moz-column-gap:6px!important;column-gap:6px!important}.timecol{width:60px;min-width:60px}.cell.time{padding:10px 2px;min-height:40px;font-size:11px}.cell.head{min-height:40px;padding:5px 6px}.cell.head .tname{font-size:12px}.col.teacher{min-width:180px}.slot-card{padding:5px;font-size:11px}}.mobile-mode [class*="fixed inset-0"]>div[class*=bg-white][class*=rounded],.mobile-mode .modal-card,.mobile-mode .modal{max-width:98vw!important;width:98vw!important;min-width:unset!important;margin:0 1vw!important;padding:12px!important;max-height:95vh!important}.mobile-mode [class*="fixed inset-0"]>div[class*=bg-white]{padding:12px!important;border-radius:12px!important}.mobile-mode .modal-card h3,.mobile-mode .modal-head .title,.mobile-mode [class*=font-bold][class*=text-lg],.mobile-mode .modal-card .title,.mobile-mode [class*=font-extrabold]{font-size:16px!important}.mobile-mode .modal-card>div,.mobile-mode [class*=p-4],.mobile-mode [class*=p-5],.mobile-mode [class*=p-6]{padding:12px!important}.mobile-mode .modal-card [class*=px-4],.mobile-mode .modal-card [class*=px-5],.mobile-mode .modal-card [class*=px-6]{padding-left:12px!important;padding-right:12px!important}.mobile-mode .modal-card [class*=py-4],.mobile-mode .modal-card [class*=py-5],.mobile-mode .modal-card [class*=py-6]{padding-top:8px!important;padding-bottom:8px!important}@media (max-width: 768px){.fixed.inset-0>div.bg-white,div[class*=fixed][class*=inset-0]>div[class*=bg-white],div[class*=fixed][class*=inset-0]>div[class*=rounded],.modal-card,.modal>div,div.modal>div.modal-card{max-width:95vw!important;width:95vw!important;min-width:unset!important;margin:0 2.5vw!important;max-height:90vh!important;padding:12px!important;border-radius:12px!important}div[class*=fixed][class*=inset-0]>div[class*=bg-white][class*=rounded-xl]{max-height:90vh!important;overflow-y:auto!important}.fixed.inset-0>div.bg-white>div[class*=p-],div[class*=fixed][class*=inset-0]>div[class*=bg-white]>div[class*=p-],.modal-card>div[class*=p-]{padding:12px!important}.fixed.inset-0>div.bg-white h3,div[class*=fixed][class*=inset-0]>div[class*=bg-white] h3,.fixed.inset-0>div.bg-white .text-lg,div[class*=fixed][class*=inset-0]>div[class*=bg-white] .text-lg,.modal-card h3,.modal-head .title,.modal-head div[class*=font]{font-size:16px!important;line-height:1.4!important}.fixed.inset-0>div.bg-white button,div[class*=fixed][class*=inset-0]>div[class*=bg-white] button,.modal-card button{padding:8px 12px!important;font-size:14px!important;min-height:36px!important}.fixed.inset-0>div.bg-white input,div[class*=fixed][class*=inset-0]>div[class*=bg-white] input,.fixed.inset-0>div.bg-white textarea,div[class*=fixed][class*=inset-0]>div[class*=bg-white] textarea,.fixed.inset-0>div.bg-white select,div[class*=fixed][class*=inset-0]>div[class*=bg-white] select{padding:8px 10px!important;font-size:14px!important}.fixed.inset-0>div.bg-white div[class*=flex][class*=gap-2],div[class*=fixed][class*=inset-0]>div[class*=bg-white] div[class*=flex][class*=gap-2],.fixed.inset-0>div.bg-white div[class*=flex][class*=justify-end],div[class*=fixed][class*=inset-0]>div[class*=bg-white] div[class*=flex][class*=justify-end]{flex-wrap:wrap!important;gap:8px!important}.fixed.inset-0>div.bg-white div[class*=flex] button,div[class*=fixed][class*=inset-0]>div[class*=bg-white] div[class*=flex] button{flex:1 1 auto!important;min-width:calc(50% - 4px)!important;max-width:100%!important}.fixed.inset-0>div.bg-white[class*="max-w-[960px]"],.fixed.inset-0>div.bg-white[class*="max-w-[720px]"],.fixed.inset-0>div.bg-white[class*="max-w-[560px]"]{max-width:95vw!important;width:95vw!important}}.mobile-mode,.mobile-mode #root{overflow-x:hidden;width:100%;max-width:100vw}.mobile-mode .topbar{padding:12px 16px;height:56px;position:fixed;top:0;left:0;right:0;width:100%;z-index:100;transition:padding .3s ease,height .3s ease}.mobile-mode .mobile-menu-toggle{display:flex}.mobile-mode .brand img{height:32px;transition:height .3s ease}.mobile-mode .layout{padding-top:56px;display:block;grid-template-columns:unset;width:100%;max-width:100vw;overflow-x:hidden;transition:padding-top .3s ease}.mobile-mode .sidebar{position:fixed;top:56px;left:0;bottom:0;width:280px;max-width:80vw;transform:translate(-100%);z-index:1000;box-shadow:2px 0 10px #0000001a;overflow-y:auto;overflow-x:hidden;will-change:transform;transition:transform .3s cubic-bezier(.4,0,.2,1)}.mobile-mode .sidebar.mobile-open{transform:translate(0)}.mobile-mode .sidebar.collapsed{width:280px;transform:translate(-100%)}.mobile-mode .sidebar.collapsed.mobile-open{transform:translate(0)}.mobile-mode .sidebar-overlay{display:block;position:fixed;top:56px;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);z-index:999;opacity:0;pointer-events:none;transition:opacity .3s ease}.mobile-mode .sidebar-overlay.opacity-100{opacity:1;pointer-events:auto}.mobile-mode .content{margin-left:0;padding:16px;width:100%;max-width:100vw;overflow-x:hidden;box-sizing:border-box;transition:margin-left .3s ease,padding .3s ease}.mobile-mode .sidebar-toggle{display:none}.mobile-mode .card.hero{flex-direction:column;align-items:flex-start;gap:12px;width:100%}.mobile-mode .card.hero button,.mobile-mode .hero-left{width:100%}.mobile-mode .meta-line{flex-wrap:wrap}.mobile-mode .form-grid{grid-template-columns:1fr;width:100%}.mobile-mode .page-head,.mobile-mode .page-header{flex-direction:column;align-items:stretch;gap:10px;width:100%}.mobile-mode .page-head .row,.mobile-mode .page-head .row.gap{display:flex;flex-wrap:wrap;width:100%;gap:8px;align-items:center}.mobile-mode .page-head h1,.mobile-mode .page-head h2,.mobile-mode .page-head h3{width:100%;order:1;text-align:center;margin:0;font-size:18px;font-weight:600}.mobile-mode .page-head .row.gap>.btn:nth-child(1),.mobile-mode .page-head .row.gap>.btn:nth-child(2){order:0;flex:1 1 calc(50% - 4px);min-width:0;padding:10px 8px;font-size:14px}.mobile-mode .page-head .row.gap>.btn:not(:nth-child(1)):not(:nth-child(2)){order:3;flex:1 1 calc(33.333% - 6px);padding:10px 8px;font-size:12px;white-space:nowrap}.mobile-mode .page-head .row.gap>.btn:nth-last-child(1):nth-child(n+4),.mobile-mode .page-head .row.gap>.btn:nth-last-child(2):nth-child(n+4){flex:1 1 calc(50% - 4px)}.mobile-mode .page-head .react-datepicker-wrapper{order:2;flex:1 1 100%;width:100%;max-width:100%}.mobile-mode .page-head .react-datepicker__input-container{width:100%}.mobile-mode .page-head .react-datepicker__input-container input{width:100%;font-size:15px;padding:10px 12px;text-align:center;border:1px solid #dbe2ea;border-radius:10px}.mobile-mode .page-head .row>div[style*=width],.mobile-mode .page-head .row.gap>div[style*=width]{display:none}.mobile-mode .page-actions{width:100%;display:flex;flex-wrap:wrap;gap:8px}.mobile-mode .page-actions .btn{flex:1 1 auto;min-width:100px}.mobile-mode .teacher-stats-grid,.mobile-mode .quick-actions-grid{grid-template-columns:1fr;gap:12px;width:100%}.mobile-mode .stat-card,.mobile-mode .action-card{width:100%;max-width:100%}.mobile-mode .table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 -16px;padding:0 16px;width:calc(100% + 32px);max-width:calc(100vw - 32px)}.mobile-mode table{font-size:13px;width:100%}.mobile-mode table th,.mobile-mode table td{padding:8px 6px;white-space:nowrap}.mobile-mode .mini-week,.mobile-mode .mini-week-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;width:100%;max-width:100%}.mobile-mode .mini-week-grid{min-width:100%}.mobile-mode .btn-group{flex-direction:column;width:100%}.mobile-mode .btn-group .btn{width:100%}.mobile-mode .teacher-hero,.mobile-mode .client-hero{padding:16px;width:100%;max-width:100%}.mobile-mode h1{font-size:22px;line-height:1.2}.mobile-mode h2{font-size:18px;line-height:1.3}.mobile-mode h3{font-size:16px;line-height:1.3}.mobile-mode .card{padding:14px;width:100%;max-width:100%}.mobile-mode .grid,.mobile-mode .grid-2{grid-template-columns:1fr;width:100%;max-width:100%}.mobile-mode img{max-width:100%;height:auto}.mobile-mode .btn{padding:10px 14px;font-size:14px;white-space:nowrap;transition:all .2s ease}.mobile-mode .page-head .btn{padding:10px 12px;font-size:14px;font-weight:500}.mobile-mode input,.mobile-mode select,.mobile-mode textarea{width:100%;max-width:100%;font-size:16px}.react-datepicker__navigation-icon:before,.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{border-color:#ccc;border-style:solid;border-width:3px 3px 0 0;content:"";display:block;height:9px;position:absolute;top:6px;width:9px}.react-datepicker__sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.react-datepicker-wrapper{display:inline-block;padding:0;border:0}.react-datepicker{font-family:Helvetica Neue,helvetica,arial,sans-serif;font-size:.8rem;background-color:#fff;color:#000;border:1px solid #aeaeae;border-radius:.3rem;display:inline-block;position:relative;line-height:initial}.react-datepicker--time-only .react-datepicker__time-container{border-left:0}.react-datepicker--time-only .react-datepicker__time,.react-datepicker--time-only .react-datepicker__time-box{border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem}.react-datepicker-popper{z-index:1;line-height:0}.react-datepicker-popper .react-datepicker__triangle{stroke:#aeaeae}.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle{fill:#f0f0f0;color:#f0f0f0}.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle{fill:#fff;color:#fff}.react-datepicker__header{text-align:center;background-color:#f0f0f0;border-bottom:1px solid #aeaeae;border-top-left-radius:.3rem;padding:8px 0;position:relative}.react-datepicker__header--time{padding-bottom:8px;padding-left:5px;padding-right:5px}.react-datepicker__header--time:not(.react-datepicker__header--time--only){border-top-left-radius:0}.react-datepicker__header:not(.react-datepicker__header--has-time-select){border-top-right-radius:.3rem}.react-datepicker__year-dropdown-container--select,.react-datepicker__month-dropdown-container--select,.react-datepicker__month-year-dropdown-container--select,.react-datepicker__year-dropdown-container--scroll,.react-datepicker__month-dropdown-container--scroll,.react-datepicker__month-year-dropdown-container--scroll{display:inline-block;margin:0 15px}.react-datepicker__current-month,.react-datepicker-time__header,.react-datepicker-year-header{margin-top:0;color:#000;font-weight:700;font-size:.944rem}h2.react-datepicker__current-month{padding:0;margin:0}.react-datepicker-time__header{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.react-datepicker__navigation{align-items:center;background:none;display:flex;justify-content:center;text-align:center;cursor:pointer;position:absolute;top:2px;padding:0;border:none;z-index:1;height:32px;width:32px;text-indent:-999em;overflow:hidden}.react-datepicker__navigation--previous{left:2px}.react-datepicker__navigation--next{right:2px}.react-datepicker__navigation--next--with-time:not(.react-datepicker__navigation--next--with-today-button){right:85px}.react-datepicker__navigation--years{position:relative;top:0;display:block;margin-left:auto;margin-right:auto}.react-datepicker__navigation--years-previous{top:4px}.react-datepicker__navigation--years-upcoming{top:-4px}.react-datepicker__navigation:hover *:before{border-color:#a6a6a6}.react-datepicker__navigation-icon{position:relative;top:-1px;font-size:20px;width:0}.react-datepicker__navigation-icon--next{left:-2px}.react-datepicker__navigation-icon--next:before{transform:rotate(45deg);left:-7px}.react-datepicker__navigation-icon--previous{right:-2px}.react-datepicker__navigation-icon--previous:before{transform:rotate(225deg);right:-7px}.react-datepicker__month-container{float:left}.react-datepicker__year{margin:.4rem;text-align:center}.react-datepicker__year-wrapper{display:flex;flex-wrap:wrap;max-width:180px}.react-datepicker__year .react-datepicker__year-text{display:inline-block;width:4rem;margin:2px}.react-datepicker__month{margin:.4rem;text-align:center}.react-datepicker__month .react-datepicker__month-text,.react-datepicker__month .react-datepicker__quarter-text{display:inline-block;width:4rem;margin:2px}.react-datepicker__input-time-container{clear:both;width:100%;float:left;margin:5px 0 10px 15px;text-align:left}.react-datepicker__input-time-container .react-datepicker-time__caption,.react-datepicker__input-time-container .react-datepicker-time__input-container{display:inline-block}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input{display:inline-block;margin-left:10px}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input{width:auto}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-inner-spin-button,.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]{-moz-appearance:textfield}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__delimiter{margin-left:5px;display:inline-block}.react-datepicker__time-container{float:right;border-left:1px solid #aeaeae;width:85px}.react-datepicker__time-container--with-today-button{display:inline;border:1px solid #aeaeae;border-radius:.3rem;position:absolute;right:-87px;top:0}.react-datepicker__time-container .react-datepicker__time{position:relative;background:white;border-bottom-right-radius:.3rem}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box{width:85px;overflow-x:hidden;margin:0 auto;text-align:center;border-bottom-right-radius:.3rem}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list{list-style:none;margin:0;height:calc(195px + .85rem);overflow-y:scroll;padding-right:0;padding-left:0;width:100%;box-sizing:content-box}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item{height:30px;padding:5px 10px;white-space:nowrap}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item:hover{cursor:pointer;background-color:#f0f0f0}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected{background-color:#216ba5;color:#fff;font-weight:700}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected:hover{background-color:#216ba5}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled{color:#ccc}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled:hover{cursor:default;background-color:transparent}.react-datepicker__week-number{color:#ccc;display:inline-block;width:1.7rem;line-height:1.7rem;text-align:center;margin:.166rem}.react-datepicker__week-number.react-datepicker__week-number--clickable{cursor:pointer}.react-datepicker__week-number.react-datepicker__week-number--clickable:not(.react-datepicker__week-number--selected):hover{border-radius:.3rem;background-color:#f0f0f0}.react-datepicker__week-number--selected{border-radius:.3rem;background-color:#216ba5;color:#fff}.react-datepicker__week-number--selected:hover{background-color:#1d5d90}.react-datepicker__day-names{text-align:center;white-space:nowrap;margin-bottom:-8px}.react-datepicker__week{white-space:nowrap}.react-datepicker__day-name,.react-datepicker__day,.react-datepicker__time-name{color:#000;display:inline-block;width:1.7rem;line-height:1.7rem;text-align:center;margin:.166rem}.react-datepicker__day-name--disabled,.react-datepicker__day--disabled,.react-datepicker__time-name--disabled{cursor:default;color:#ccc}.react-datepicker__day,.react-datepicker__month-text,.react-datepicker__quarter-text,.react-datepicker__year-text{cursor:pointer}.react-datepicker__day:not([aria-disabled=true]):hover,.react-datepicker__month-text:not([aria-disabled=true]):hover,.react-datepicker__quarter-text:not([aria-disabled=true]):hover,.react-datepicker__year-text:not([aria-disabled=true]):hover{border-radius:.3rem;background-color:#f0f0f0}.react-datepicker__day--today,.react-datepicker__month-text--today,.react-datepicker__quarter-text--today,.react-datepicker__year-text--today{font-weight:700}.react-datepicker__day--highlighted,.react-datepicker__month-text--highlighted,.react-datepicker__quarter-text--highlighted,.react-datepicker__year-text--highlighted{border-radius:.3rem;background-color:#3dcc4a;color:#fff}.react-datepicker__day--highlighted:not([aria-disabled=true]):hover,.react-datepicker__month-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__year-text--highlighted:not([aria-disabled=true]):hover{background-color:#32be3f}.react-datepicker__day--highlighted-custom-1,.react-datepicker__month-text--highlighted-custom-1,.react-datepicker__quarter-text--highlighted-custom-1,.react-datepicker__year-text--highlighted-custom-1{color:#f0f}.react-datepicker__day--highlighted-custom-2,.react-datepicker__month-text--highlighted-custom-2,.react-datepicker__quarter-text--highlighted-custom-2,.react-datepicker__year-text--highlighted-custom-2{color:green}.react-datepicker__day--holidays,.react-datepicker__month-text--holidays,.react-datepicker__quarter-text--holidays,.react-datepicker__year-text--holidays{position:relative;border-radius:.3rem;background-color:#ff6803;color:#fff}.react-datepicker__day--holidays .overlay,.react-datepicker__month-text--holidays .overlay,.react-datepicker__quarter-text--holidays .overlay,.react-datepicker__year-text--holidays .overlay{position:absolute;bottom:100%;left:50%;transform:translate(-50%);background-color:#333;color:#fff;padding:4px;border-radius:4px;white-space:nowrap;visibility:hidden;opacity:0;transition:visibility 0s,opacity .3s ease-in-out}.react-datepicker__day--holidays:not([aria-disabled=true]):hover,.react-datepicker__month-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__year-text--holidays:not([aria-disabled=true]):hover{background-color:#cf5300}.react-datepicker__day--holidays:hover .overlay,.react-datepicker__month-text--holidays:hover .overlay,.react-datepicker__quarter-text--holidays:hover .overlay,.react-datepicker__year-text--holidays:hover .overlay{visibility:visible;opacity:1}.react-datepicker__day--selected,.react-datepicker__day--in-selecting-range,.react-datepicker__day--in-range,.react-datepicker__month-text--selected,.react-datepicker__month-text--in-selecting-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--selected,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--selected,.react-datepicker__year-text--in-selecting-range,.react-datepicker__year-text--in-range{border-radius:.3rem;background-color:#216ba5;color:#fff}.react-datepicker__day--selected:not([aria-disabled=true]):hover,.react-datepicker__day--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__day--in-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-range:not([aria-disabled=true]):hover{background-color:#1d5d90}.react-datepicker__day--keyboard-selected,.react-datepicker__month-text--keyboard-selected,.react-datepicker__quarter-text--keyboard-selected,.react-datepicker__year-text--keyboard-selected{border-radius:.3rem;background-color:#bad9f1;color:#000}.react-datepicker__day--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--keyboard-selected:not([aria-disabled=true]):hover{background-color:#1d5d90}.react-datepicker__day--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__month-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__quarter-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__year-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range){background-color:#216ba580}.react-datepicker__month--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range){background-color:#f0f0f0;color:#000}.react-datepicker__day--disabled,.react-datepicker__month-text--disabled,.react-datepicker__quarter-text--disabled,.react-datepicker__year-text--disabled{cursor:default;color:#ccc}.react-datepicker__day--disabled .overlay,.react-datepicker__month-text--disabled .overlay,.react-datepicker__quarter-text--disabled .overlay,.react-datepicker__year-text--disabled .overlay{position:absolute;bottom:70%;left:50%;transform:translate(-50%);background-color:#333;color:#fff;padding:4px;border-radius:4px;white-space:nowrap;visibility:hidden;opacity:0;transition:visibility 0s,opacity .3s ease-in-out}.react-datepicker__input-container{position:relative;display:inline-block;width:100%}.react-datepicker__input-container .react-datepicker__calendar-icon{position:absolute;padding:.5rem;box-sizing:content-box}.react-datepicker__view-calendar-icon input{padding:6px 10px 5px 25px}.react-datepicker__year-read-view,.react-datepicker__month-read-view,.react-datepicker__month-year-read-view{border:1px solid transparent;border-radius:.3rem;position:relative}.react-datepicker__year-read-view:hover,.react-datepicker__month-read-view:hover,.react-datepicker__month-year-read-view:hover{cursor:pointer}.react-datepicker__year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__year-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__month-read-view--down-arrow{border-top-color:#b3b3b3}.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{transform:rotate(135deg);right:-16px;top:0}.react-datepicker__year-dropdown,.react-datepicker__month-dropdown,.react-datepicker__month-year-dropdown{background-color:#f0f0f0;position:absolute;width:50%;left:25%;top:30px;z-index:1;text-align:center;border-radius:.3rem;border:1px solid #aeaeae}.react-datepicker__year-dropdown:hover,.react-datepicker__month-dropdown:hover,.react-datepicker__month-year-dropdown:hover{cursor:pointer}.react-datepicker__year-dropdown--scrollable,.react-datepicker__month-dropdown--scrollable,.react-datepicker__month-year-dropdown--scrollable{height:150px;overflow-y:scroll}.react-datepicker__year-option,.react-datepicker__month-option,.react-datepicker__month-year-option{line-height:20px;width:100%;display:block;margin-left:auto;margin-right:auto}.react-datepicker__year-option:first-of-type,.react-datepicker__month-option:first-of-type,.react-datepicker__month-year-option:first-of-type{border-top-left-radius:.3rem;border-top-right-radius:.3rem}.react-datepicker__year-option:last-of-type,.react-datepicker__month-option:last-of-type,.react-datepicker__month-year-option:last-of-type{-webkit-user-select:none;-moz-user-select:none;user-select:none;border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem}.react-datepicker__year-option:hover,.react-datepicker__month-option:hover,.react-datepicker__month-year-option:hover{background-color:#ccc}.react-datepicker__year-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-upcoming{border-bottom-color:#b3b3b3}.react-datepicker__year-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-previous{border-top-color:#b3b3b3}.react-datepicker__year-option--selected,.react-datepicker__month-option--selected,.react-datepicker__month-year-option--selected{position:absolute;left:15px}.react-datepicker__close-icon{cursor:pointer;background-color:transparent;border:0;outline:0;padding:0 6px 0 0;position:absolute;top:0;right:0;height:100%;display:table-cell;vertical-align:middle}.react-datepicker__close-icon:after{cursor:pointer;background-color:#216ba5;color:#fff;border-radius:50%;height:16px;width:16px;padding:2px;font-size:12px;line-height:1;text-align:center;display:table-cell;vertical-align:middle;content:"×"}.react-datepicker__close-icon--disabled{cursor:default}.react-datepicker__close-icon--disabled:after{cursor:default;background-color:#ccc}.react-datepicker__today-button{background:#f0f0f0;border-top:1px solid #aeaeae;cursor:pointer;text-align:center;font-weight:700;padding:5px 0;clear:left}.react-datepicker__portal{position:fixed;width:100vw;height:100vh;background-color:#000c;left:0;top:0;justify-content:center;align-items:center;display:flex;z-index:2147483647}.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__time-name{width:3rem;line-height:3rem}@media (max-width: 400px),(max-height: 550px){.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__time-name{width:2rem;line-height:2rem}}.react-datepicker__portal .react-datepicker__current-month,.react-datepicker__portal .react-datepicker-time__header{font-size:1.44rem}.react-datepicker__children-container{width:13.8rem;margin:.4rem;padding-right:.2rem;padding-left:.2rem;height:auto}.react-datepicker__aria-live{position:absolute;clip-path:circle(0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;width:1px;white-space:nowrap}.react-datepicker__calendar-icon{width:1em;height:1em;vertical-align:-.125em}*{box-sizing:border-box}._page-head_68jqt_6{display:flex;align-items:center;gap:12px;margin-bottom:12px;flex-wrap:wrap}._grid_68jqt_14{display:grid;grid-template-columns:1fr;gap:16px;width:100%;max-width:100%;overflow-x:hidden}@media (min-width: 1000px){._grid_68jqt_14{grid-template-columns:1.2fr 1fr}._grid_68jqt_14>._card_68jqt_27._hero_68jqt_27{grid-column:1 / -1}}._personal-week_68jqt_32{grid-column:1 / -1}._card_68jqt_27{background:#fff;border:1px solid #e8edf2;border-radius:14px;padding:16px;width:100%;max-width:100%;overflow-x:hidden}._card_68jqt_27._hero_68jqt_27{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}._hero-left_68jqt_54{display:flex;gap:14px;align-items:center;flex-wrap:wrap}._avatar_68jqt_61{width:56px;height:56px;border-radius:50%;background:#184F6B;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:22px;flex-shrink:0}._title_68jqt_75{font-size:20px;font-weight:700;margin-bottom:6px}._meta-line_68jqt_81{display:flex;flex-wrap:wrap;gap:8px}._pill_68jqt_87{background:#f3f6f9;border:1px solid #e8edf2;border-radius:999px;padding:4px 10px;font-size:12px;color:#334155;white-space:nowrap}._pill_68jqt_87._ok_68jqt_97{background:#eefbf3;border-color:#d3f2df;color:#11663a}._pill_68jqt_87._warn_68jqt_103{background:#fff7ea;border-color:#fde8c3;color:#885400}._pill_68jqt_87._info_68jqt_109{background:#eef6ff;border-color:#d6e6ff;color:#0b4aa2}._badge_68jqt_115{display:inline-block;border-radius:999px;padding:2px 8px;font-size:12px}._badge_68jqt_115._ok_68jqt_97{background:#eaf9ef;color:#126a3a}._badge_68jqt_115._warn_68jqt_103{background:#fff5e6;color:#8a5a00}._badge_68jqt_115._danger_68jqt_132{background:#ffeaea;color:#9d1b1b}._pay-flag_68jqt_137{display:inline-block;padding:2px 6px;font-size:11px;border-radius:6px;font-weight:600;line-height:1}._pay-flag_68jqt_137._paid_68jqt_146{background:#eaf9ef;color:#126a3a;border:1px solid #bfeccf}._pay-flag_68jqt_137._unpaid_68jqt_152{background:#ffeaea;color:#9d1b1b;border:1px solid #f8c8c8}._form-grid_68jqt_158{display:grid;grid-template-columns:1fr 1fr;gap:12px}._form-grid-full_68jqt_164{grid-column:1 / -1}@media (max-width: 780px){._form-grid_68jqt_158{grid-template-columns:1fr}}._f_68jqt_158{display:flex;flex-direction:column}._f_68jqt_158>span{font-size:12px;color:#6b7280;margin-bottom:6px}input,select,textarea{border:1px solid #dbe2ea;border-radius:10px;padding:10px 12px;font-size:14px;width:100%;max-width:100%}._btn_68jqt_198{border:1px solid #184F6B;background:#184F6B;color:#fff;border-radius:10px;padding:8px 14px;cursor:pointer;white-space:nowrap}._btn_68jqt_198:hover{filter:brightness(.96)}._btn_68jqt_198._ghost_68jqt_212{background:#fff;color:#184f6b;border-color:#cfd8df}._btn_68jqt_198._danger_68jqt_132{background:#c0392b;border-color:#c0392b}._btn_68jqt_198._small_68jqt_223{padding:6px 10px;font-size:12px}._table-wrap_68jqt_228{overflow-x:auto;width:100%;max-width:100%}._tbl_68jqt_234{width:100%;border-collapse:separate;border-spacing:0 8px;min-width:600px}._tbl_68jqt_234 thead th{font-size:12px;color:#6b7280;text-align:left;padding:6px 8px}._tbl_68jqt_234 tbody tr{background:#f9fbfd}._tbl_68jqt_234 tbody td{padding:10px 8px;border-top:1px solid #e8edf2;border-bottom:1px solid #e8edf2}._tbl_68jqt_234 tbody tr td:first-child{border-left:1px solid #e8edf2;border-top-left-radius:8px;border-bottom-left-radius:8px}._tbl_68jqt_234 tbody tr td:last-child{border-right:1px solid #e8edf2;border-top-right-radius:8px;border-bottom-right-radius:8px}._actions_68jqt_270{display:flex;gap:8px;align-items:center;flex-wrap:wrap}._muted_68jqt_277{color:#8b95a1}._flex-between_68jqt_281{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}._row_68jqt_289._gap_68jqt_289{display:flex;gap:8px;align-items:center;flex-wrap:wrap}._mini-week-wrap_68jqt_296{overflow-x:auto;padding-bottom:4px;margin-top:12px;width:100%;max-width:100%}._mini-week-grid_68jqt_304{display:grid;grid-template-columns:repeat(7,minmax(200px,1fr));gap:8px;min-width:-moz-max-content;min-width:max-content}._mini-day_68jqt_311{background:#fbfdff;border:1px solid #e2e8f0;border-radius:10px;display:flex;flex-direction:column;min-height:180px}._mini-day-head_68jqt_320{padding:6px 8px;border-bottom:1px solid #e2e8f0;font-size:12px;font-weight:600;display:flex;justify-content:space-between;align-items:center}._mini-day-body_68jqt_330{padding:8px;display:flex;flex-direction:column;gap:6px;flex:1}._half-badge_68jqt_338{display:inline-block;margin-left:4px;background:#eef6ff;color:#0b4aa2;font-size:11px;line-height:1;padding:2px 4px;border-radius:4px;font-weight:600;vertical-align:middle}._tabs_68jqt_352{display:flex;gap:8px;margin:20px 0 24px;background:#fff;padding:8px;border-radius:16px;box-shadow:0 1px 3px #00000014;border:1px solid #e8edf2;overflow-x:auto;-webkit-overflow-scrolling:touch}._tab_68jqt_228{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;background:transparent;border:none;border-radius:12px;font-size:15px;font-weight:600;color:#64748b;cursor:pointer;transition:all .2s ease;white-space:nowrap;min-width:-moz-fit-content;min-width:fit-content}._tab_68jqt_228:hover{background:#f8fafc;color:#334155}._tab_68jqt_228._active_68jqt_389{background:linear-gradient(135deg,#184F6B 0%,#0f3d4d 100%);color:#fff;box-shadow:0 2px 8px #184f6b40}._tabIcon_68jqt_395{transition:transform .2s ease;flex-shrink:0;display:flex;align-items:center;justify-content:center}._tabIcon_68jqt_395 svg{display:block}._tabLabel_68jqt_407{transition:color .2s ease}._tab_68jqt_228:hover ._tabIcon_68jqt_395{transform:scale(1.1)}._tabContent_68jqt_416{margin-top:0;animation:_fadeIn_68jqt_1 .3s ease-in-out}@keyframes _fadeIn_68jqt_1{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}._panelSection_68jqt_433{background:#fff;border:1px solid #e8edf2;border-radius:16px;padding:24px;box-shadow:0 1px 3px #0000000a;transition:all .2s ease}._panelSection_68jqt_433:hover{box-shadow:0 4px 12px #00000014;border-color:#d1dce5}._sectionHeader_68jqt_447{margin-bottom:20px;padding-bottom:16px;border-bottom:2px solid #f1f5f9}._sectionHeader_68jqt_447 h3{margin:0 0 6px;font-size:18px;font-weight:700;color:#1e293b;display:flex;align-items:center;gap:10px}._sectionHeader_68jqt_447 h3:before{content:"";width:4px;height:20px;background:linear-gradient(135deg,#184F6B 0%,#0f3d4d 100%);border-radius:999px}._sectionSubtitle_68jqt_471{font-size:14px;color:#64748b;font-weight:500;display:block}._scheduleTab_68jqt_479{width:100%}@media (max-width: 768px){._page-head_68jqt_6{flex-direction:column;align-items:flex-start}._page-head_68jqt_6 h2{font-size:18px}._card_68jqt_27{padding:12px}._card_68jqt_27._hero_68jqt_27{flex-direction:column;align-items:flex-start}._title_68jqt_75{font-size:18px}._mini-week-grid_68jqt_304{grid-template-columns:repeat(7,minmax(150px,1fr))}._mini-day_68jqt_311{min-height:150px}._tbl_68jqt_234{min-width:500px}input,select,textarea{font-size:16px}._tabs_68jqt_352{gap:4px;margin:16px 0;padding:6px}._tab_68jqt_228{padding:10px 14px;font-size:13px;gap:6px}._tabIcon_68jqt_395 svg{width:16px;height:16px}._tabLabel_68jqt_407{font-size:12px}._tabContent_68jqt_416{margin-top:16px}._panelSection_68jqt_433{padding:16px}._sectionHeader_68jqt_447 h3{font-size:16px}}@media (max-width: 480px){._tabLabel_68jqt_407{display:none}._tab_68jqt_228{padding:10px 16px}._tabIcon_68jqt_395 svg{width:20px;height:20px}}._teacherDetailPage_1uem5_4{max-width:100%;padding-bottom:24px}._tabs_1uem5_10{display:flex;gap:8px;margin:20px 0 24px;background:#fff;padding:8px;border-radius:16px;box-shadow:0 1px 3px #00000014;border:1px solid #e8edf2;overflow-x:auto;-webkit-overflow-scrolling:touch}._tab_1uem5_10{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;background:transparent;border:none;border-radius:12px;font-size:15px;font-weight:600;color:#64748b;cursor:pointer;transition:all .2s ease;white-space:nowrap;min-width:-moz-fit-content;min-width:fit-content}._tab_1uem5_10:hover{background:#f8fafc;color:#334155}._tab_1uem5_10._active_1uem5_47{background:linear-gradient(135deg,#184F6B 0%,#0f3d4d 100%);color:#fff;box-shadow:0 2px 8px #184f6b40}._tabIcon_1uem5_53{transition:transform .2s ease;flex-shrink:0;display:flex;align-items:center;justify-content:center}._tabIcon_1uem5_53 svg{display:block}._tabLabel_1uem5_65{transition:color .2s ease}._tab_1uem5_10:hover ._tabIcon_1uem5_53{transform:scale(1.1)}._tabContent_1uem5_74{margin-top:0;animation:_fadeIn_1uem5_1 .3s ease-in-out}@keyframes _fadeIn_1uem5_1{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}._panelSection_1uem5_91{background:#fff;border:1px solid #e8edf2;border-radius:16px;padding:24px;box-shadow:0 1px 3px #0000000a;transition:all .2s ease}._panelSection_1uem5_91:hover{box-shadow:0 4px 12px #00000014;border-color:#d1dce5}._sectionHeader_1uem5_105{margin-bottom:20px;padding-bottom:16px;border-bottom:2px solid #f1f5f9}._sectionHeader_1uem5_105 h3{margin:0 0 6px;font-size:18px;font-weight:700;color:#1e293b;display:flex;align-items:center;gap:10px}._sectionHeader_1uem5_105 h3:before{content:"";width:4px;height:20px;background:linear-gradient(135deg,#184F6B 0%,#0f3d4d 100%);border-radius:999px}._sectionSubtitle_1uem5_129{font-size:14px;color:#64748b;font-weight:500;display:block}._scheduleTab_1uem5_137{width:100%}@media (max-width: 768px){._tabs_1uem5_10{gap:4px;margin:16px 0;padding:6px}._tab_1uem5_10{padding:10px 14px;font-size:13px;gap:6px}._tabIcon_1uem5_53 svg{width:16px;height:16px}._tabLabel_1uem5_65{font-size:12px}._tabContent_1uem5_74{margin-top:16px}._panelSection_1uem5_91{padding:16px}._sectionHeader_1uem5_105 h3{font-size:16px}}@media (max-width: 480px){._tabLabel_1uem5_65{display:none}._tab_1uem5_10{padding:10px 16px}._tabIcon_1uem5_53 svg{width:20px;height:20px}}@media (min-width: 1100px){._grid_1uem5_194{grid-template-columns:1.2fr 1fr}}._list-filters_1uem5_206{margin:12px 0}._list-filters_1uem5_206 ._lf-form_1uem5_207{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:12px 14px;display:flex;flex-direction:column;gap:8px}._lf-row_1uem5_208{display:flex;flex-wrap:wrap;gap:8px;align-items:center}._lf-q_1uem5_209{flex:1;min-width:260px;padding:8px 12px;border:1px solid #dbe2ea;border-radius:10px;font-size:14px}._lf-sort_1uem5_210,._lf-dir_1uem5_210{padding:8px 10px;border:1px solid #dbe2ea;border-radius:10px;background:#fff;font-size:14px}._lf-total_1uem5_211{margin-left:auto;font-size:13px;color:#475569}@media (max-width:600px){._lf-total_1uem5_211{width:100%;order:10;margin-left:0;text-align:right}}._pagination_1uem5_213{display:flex;align-items:center;gap:6px;margin-top:4px;flex-wrap:wrap}._pagination_1uem5_213 ._btn_1uem5_214._small_1uem5_214{padding:4px 8px;font-size:12px}._pg-info_1uem5_215{font-size:13px;color:#334155;font-weight:500}._page-head_1uem5_216{display:flex;align-items:center;gap:12px;margin-bottom:12px}._grid_1uem5_194{display:grid;grid-template-columns:1fr;gap:16px}@media (min-width: 1100px){._grid_1uem5_194{grid-template-columns:1.2fr 1fr}._grid_1uem5_194>._card_1uem5_218._hero_1uem5_218{grid-column:1/-1}}._card_1uem5_218{background:#fff;border:1px solid #e8edf2;border-radius:14px;padding:16px}._card_1uem5_218._hero_1uem5_218{display:flex;align-items:center;justify-content:space-between;gap:16px}._hero-left_1uem5_221{display:flex;gap:14px;align-items:center}._avatar_1uem5_222{width:56px;height:56px;border-radius:50%;background:#184F6B;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:22px}._title_1uem5_223{font-size:20px;font-weight:700;margin-bottom:6px}._meta-line_1uem5_224{display:flex;flex-wrap:wrap;gap:8px}._pill_1uem5_225{background:#f3f6f9;border:1px solid #e8edf2;border-radius:999px;padding:4px 10px;font-size:12px;color:#334155}._pill_1uem5_225._ok_1uem5_226{background:#eefbf3;border-color:#d3f2df;color:#11663a}._pill_1uem5_225._warn_1uem5_227{background:#fff7ea;border-color:#fde8c3;color:#885400}._pill_1uem5_225._danger_1uem5_228{background:#ffefef;border-color:#ffd7d7;color:#a11a1a}._pill_1uem5_225._big_1uem5_229{font-size:14px}._badge_1uem5_230{display:inline-block;border-radius:999px;padding:2px 8px;font-size:12px}._badge_1uem5_230._ok_1uem5_226{background:#eaf9ef;color:#126a3a}._badge_1uem5_230._warn_1uem5_227{background:#fff5e6;color:#8a5a00}._badge_1uem5_230._danger_1uem5_228{background:#ffeaea;color:#9d1b1b}._form-grid_1uem5_234{display:grid;grid-template-columns:1fr 1fr;gap:12px}._form-grid_1uem5_234 ._form-grid-full_1uem5_235{grid-column:1/-1}@media (max-width: 780px){._form-grid_1uem5_234{grid-template-columns:1fr}}._f_1uem5_234{display:flex;flex-direction:column}._f_1uem5_234>span{font-size:12px;color:#6b7280;margin-bottom:6px}input,select,textarea{border:1px solid #dbe2ea;border-radius:10px;padding:10px 12px;font-size:14px}textarea{resize:vertical}._btn_1uem5_214{border:1px solid #184F6B;background:#184F6B;color:#fff;border-radius:10px;padding:8px 14px;cursor:pointer}._btn_1uem5_214:hover{filter:brightness(.96)}._btn_1uem5_214._ghost_1uem5_243{background:#fff;color:#184f6b;border-color:#cfd8df}._btn_1uem5_214._danger_1uem5_228{background:#c0392b;border-color:#c0392b}._btn_1uem5_214._small_1uem5_214{padding:6px 10px;font-size:12px}._work-grid_1uem5_246{display:grid;grid-template-columns:1fr;gap:16px}._work-row_1uem5_247{display:flex;align-items:center;justify-content:space-between;border:1px solid #e8edf2;border-radius:10px;padding:8px;background:#fbfdff}._wleft_1uem5_248{display:flex;align-items:center;gap:8px}._wd_1uem5_249{font-weight:600;color:#0f172a}._wright_1uem5_250{display:flex;align-items:center;gap:8px}._util-list_1uem5_251{display:flex;flex-direction:column;gap:10px;margin-top:8px}._util-row_1uem5_252{border:1px solid #e8edf2;border-radius:10px;padding:10px;background:#fbfdff}._util-head_1uem5_253{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px}._util-date_1uem5_254{font-weight:700}._bar_1uem5_255{width:100%;height:10px;background:#eef3f7;border-radius:999px;overflow:hidden}._bar-in_1uem5_256{height:100%;background:#184F6B}._util-total_1uem5_257{margin-top:10px}._table-wrap_1uem5_258{overflow:auto}._tbl_1uem5_259{width:100%;border-collapse:separate;border-spacing:0 8px}._tbl_1uem5_259 thead th{font-size:12px;color:#6b7280;text-align:left;padding:6px 8px}._tbl_1uem5_259 tbody tr{background:#f9fbfd}._tbl_1uem5_259 tbody td{padding:10px 8px;border-top:1px solid #e8edf2;border-bottom:1px solid #e8edf2}._tbl_1uem5_259 tbody tr td:first-child{border-left:1px solid #e8edf2;border-top-left-radius:8px;border-bottom-left-radius:8px}._tbl_1uem5_259 tbody tr td:last-child{border-right:1px solid #e8edf2;border-top-right-radius:8px;border-bottom-right-radius:8px}._actions_1uem5_265{display:flex;gap:8px;align-items:center}._muted_1uem5_266{color:#8b95a1}._flex-between_1uem5_267{display:flex;align-items:center;justify-content:space-between}._work-row_1uem5_247._active_1uem5_47{background:#eaf9ef;border-color:#bfe8cc}._work-row_1uem5_247._invalid_1uem5_269{background:#fff7ea;border-color:#fde1b9}._work-row_1uem5_247 ._time-hint_1uem5_270{font-size:12px;color:#6b7280}._work-row_1uem5_247._invalid_1uem5_269 ._time-hint_1uem5_270{color:#8a5a00}._btn_1uem5_214[disabled]{opacity:.6;cursor:not-allowed;filter:none}._clear-btn_1uem5_273{border:none;background:transparent;font-size:16px;line-height:1;color:#9ca3af;cursor:pointer;padding:2px 6px;border-radius:6px}._clear-btn_1uem5_273:hover{background:#f3f4f6;color:#111}@media (min-width:1100px){._calendar-card_1uem5_275{grid-column:1/-1}}._grid_1uem5_194{align-items:start}._notif-bell_1uem5_277{position:relative;background:#fff;border:1px solid var(--border);border-radius:10px;padding:6px 10px;cursor:pointer;font-size:18px;display:inline-flex;align-items:center;gap:4px;margin-right:10px}._nbadge_1uem5_278{position:absolute;top:-6px;right:-6px;background:#ef4444;color:#fff;font-size:11px;min-width:18px;height:18px;display:flex;align-items:center;justify-content:center;border-radius:999px;padding:0 4px;font-weight:600;box-shadow:0 0 0 2px #fff}._notif-panel_1uem5_279{position:fixed;top:70px;right:18px;width:380px;max-height:60vh;display:flex;flex-direction:column;background:#fff;border:1px solid var(--border);border-radius:14px;box-shadow:0 10px 30px -5px #00000026;z-index:200;padding:10px 0;overflow:hidden}._notif-panel_1uem5_279._hidden_1uem5_280{display:none}._notif-head_1uem5_281{display:flex;align-items:center;justify-content:space-between;padding:0 14px 6px;border-bottom:1px solid var(--border)}._notif-head_1uem5_281 h3{margin:0;font-size:16px;font-weight:600;color:var(--primary)}._notif-actions_1uem5_283{display:flex;gap:8px}._notif-actions_1uem5_283 button{background:#fff;border:1px solid var(--border);border-radius:8px;padding:4px 8px;font-size:12px;cursor:pointer}._notif-list_1uem5_285{list-style:none;margin:0;padding:0;overflow:auto}._notif-item_1uem5_286{padding:10px 14px;border-bottom:1px solid var(--border);display:grid;grid-template-columns:32px 1fr;gap:8px;position:relative}._notif-item_1uem5_286:last-child{border-bottom:none}._notif-icon_1uem5_288{width:32px;height:32px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:600}._notif-item_1uem5_286._unread_1uem5_289 ._notif-icon_1uem5_288{outline:2px solid #2563eb}._notif-body_1uem5_290{display:flex;flex-direction:column;gap:4px}._notif-title_1uem5_291{font-weight:600;font-size:14px}._notif-meta_1uem5_292{font-size:11px;color:#64748b;display:flex;align-items:center;gap:6px}._notif-msg_1uem5_293{font-size:13px;color:#334155;line-height:1.3;white-space:pre-wrap}._ni-type-info_1uem5_294{background:#e0f2fe;color:#075985}._ni-type-event_1uem5_295{background:#ede9fe;color:#5b21b6}._ni-type-success_1uem5_296{background:#dcfce7;color:#166534}._ni-type-warning_1uem5_297{background:#fef9c3;color:#854d0e}._ni-type-error_1uem5_298{background:#fee2e2;color:#b91c1c}._ni-importance-2_1uem5_299{box-shadow:0 0 0 2px #f97316 inset}._ni-importance-3_1uem5_300{box-shadow:0 0 0 2px #dc2626 inset}._notif-empty_1uem5_301{padding:14px;text-align:center;font-size:13px;color:#64748b}._container_bhcn1_5{padding:24px;background:linear-gradient(135deg,#f5f5f5 0%,#fafafa 100%);border-radius:8px;border:1px solid #e0e0e0}._container_bhcn1_5 h3{margin:0 0 20px;font-size:18px;font-weight:600;color:#333}._statusSection_bhcn1_20{margin-bottom:24px;padding:16px;background:white;border-radius:8px;border:1px solid #e0e0e0}._statusHeader_bhcn1_28{display:flex;align-items:center;gap:12px;margin-bottom:12px}._label_bhcn1_35{font-weight:600;color:#333}._statusBadge_bhcn1_40{display:inline-flex;align-items:center;padding:6px 12px;border-radius:20px;font-size:13px;font-weight:600;min-width:150px}._statusBadge_bhcn1_40._connected_bhcn1_50{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}._statusBadge_bhcn1_40._waiting_for_scan_bhcn1_56{background-color:#fff3cd;color:#856404;border:1px solid #ffeaa7}._statusBadge_bhcn1_40._disconnected_bhcn1_62,._statusBadge_bhcn1_40._error_bhcn1_68{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}._info_bhcn1_75{margin-top:12px;padding:12px;background-color:#f0f0f0;border-radius:6px}._info_bhcn1_75 p{margin:8px 0;font-size:13px;color:#555;strong {color: #333;}}._errorBox_bhcn1_93{margin-top:12px;padding:12px;background-color:#ffebee;border:1px solid #ef5350;border-radius:6px;color:#c62828;font-size:12px;p {margin: 0;}}._qrSection_bhcn1_108{margin-bottom:24px;padding:20px;background:white;border-radius:8px;border:2px dashed #25d366;text-align:center}._qrLabel_bhcn1_117{margin:0 0 12px;font-size:14px;font-weight:500;color:#333}._qrImage_bhcn1_124{width:200px;height:200px;border:2px solid #ddd;border-radius:8px;padding:8px;background:white;margin:0 auto 12px;box-shadow:0 2px 8px #25d3661a}._qrHint_bhcn1_135{margin:12px 0 0;font-size:12px;color:#666;line-height:1.6;text-align:left;background-color:#f0f0f0;padding:12px;border-radius:6px}._actions_bhcn1_147{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}._btn_bhcn1_154{padding:12px 24px;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;text-align:center}._btn_bhcn1_154:disabled{opacity:.6;cursor:not-allowed}._btn_bhcn1_154._primary_bhcn1_170{background-color:#25d366;color:#fff}._btn_bhcn1_154._primary_bhcn1_170:hover:not(:disabled){background-color:#20c047;box-shadow:0 2px 8px #25d3664d}._btn_bhcn1_154._primary_bhcn1_170:active:not(:disabled){transform:scale(.98)}._btn_bhcn1_154._danger_bhcn1_184{background-color:#f44336;color:#fff}._btn_bhcn1_154._danger_bhcn1_184:hover:not(:disabled){background-color:#d32f2f;box-shadow:0 2px 8px #f443364d}._btn_bhcn1_154._danger_bhcn1_184:active:not(:disabled){transform:scale(.98)}._connectedHint_bhcn1_198{margin:12px 0 0;font-size:13px;color:#155724;text-align:center;font-weight:500}._infoBox_bhcn1_207{padding:16px;background:white;border-radius:8px;border:1px solid #e0e0e0;h4 {margin: 0 0 12px 0; font-size: 14px; font-weight: 600; color: #333;} ul {margin: 0; padding-left: 20px; font-size: 13px; color: #555; line-height: 1.8; li {margin-bottom: 6px;}}}@media (max-width: 600px){._container_bhcn1_5{padding:16px}._qrImage_bhcn1_124{width:160px;height:160px}._btn_bhcn1_154{padding:10px 16px;font-size:13px}}@media (prefers-color-scheme: dark){._container_bhcn1_5{background:linear-gradient(135deg,#1a1a1a 0%,#262626 100%);border-color:#333}._container_bhcn1_5 h3{color:#e0e0e0}._statusSection_bhcn1_20,._qrSection_bhcn1_108,._infoBox_bhcn1_207{background:#2a2a2a;border-color:#333}._label_bhcn1_35{color:#e0e0e0}._info_bhcn1_75{background-color:#333;color:#b0b0b0}._info_bhcn1_75 p strong,._qrLabel_bhcn1_117{color:#e0e0e0}._qrImage_bhcn1_124{border-color:#555;background:#1a1a1a}._qrHint_bhcn1_135{background-color:#333;color:#999}._infoBox_bhcn1_207 h4{color:#e0e0e0}._infoBox_bhcn1_207 ul{color:#b0b0b0}._infoBox_bhcn1_207 li{color:#999}}._container_1i8zc_5{padding:24px;max-width:1200px;margin:0 auto;background-color:#f5f5f5;min-height:100vh}._header_1i8zc_13{margin-bottom:32px;h1 {margin: 0 0 8px 0; font-size: 28px; font-weight: 700; color: #333;} p {margin: 0; font-size: 14px; color: #666;}}._tabs_1i8zc_31{display:flex;gap:8px;margin-bottom:24px;border-bottom:2px solid #e0e0e0;background:white;border-radius:8px 8px 0 0;padding:0 16px}._tab_1i8zc_31{padding:12px 20px;border:none;background:transparent;font-size:14px;font-weight:600;color:#666;cursor:pointer;border-bottom:3px solid transparent;transition:all .2s ease;margin-bottom:-2px}._tab_1i8zc_31:hover{color:#333}._tab_1i8zc_31._active_1i8zc_57{color:#25d366;border-bottom-color:#25d366}._content_1i8zc_64{background:white;border-radius:0 8px 8px;box-shadow:0 2px 8px #0000001a;min-height:400px}._section_1i8zc_71{padding:24px}._card_1i8zc_76{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:24px}._field_1i8zc_82{label {display: block; font-size: 12px; font-weight: 600; color: #999; text-transform: uppercase; letter-spacing: .5px; margin-bottom: 8px;} p {margin: 0; font-size: 14px; color: #333; padding: 12px; background-color: #f5f5f5; border-radius: 6px; border-left: 3px solid #25d366;}}._badge_1i8zc_104{display:inline-block;padding:6px 12px!important;background-color:#d4edda!important;color:#155724!important;border-radius:20px!important;border-left:none!important;font-size:12px!important;font-weight:600}@media (max-width: 768px){._container_1i8zc_5{padding:16px}._header_1i8zc_13{margin-bottom:24px;h1 {font-size: 20px;}}._tabs_1i8zc_31{padding:0 12px}._tab_1i8zc_31{padding:10px 16px;font-size:13px}._section_1i8zc_71{padding:16px}._card_1i8zc_76{grid-template-columns:1fr;gap:16px}}@media (prefers-color-scheme: dark){._container_1i8zc_5{background-color:#1a1a1a}._header_1i8zc_13 h1{color:#e0e0e0}._header_1i8zc_13 p{color:#999}._tabs_1i8zc_31{background:#262626;border-bottom-color:#333}._tab_1i8zc_31{color:#999}._tab_1i8zc_31:hover{color:#e0e0e0}._tab_1i8zc_31._active_1i8zc_57{color:#25d366}._content_1i8zc_64{background:#262626;box-shadow:0 2px 8px #0000004d}._field_1i8zc_82 p{background-color:#333;color:#e0e0e0}._badge_1i8zc_104{background-color:#1e5631!important;color:#a8d5ba!important}}
