:root{--bg-main:#f8fafc;--bg-sidebar:#fff;--bg-card:#fff;--bg-card-hover:#fcfdfe;--bg-input:#fff;--bg-subtle:#f1f5f9;--bg-alt:#f8fafc;--border-color:#e2e8f0;--border-light:#f1f5f9;--border-focus:#00c853;--border-hover:#cbd5e1;--primary:#00c853;--primary-hover:#00a844;--primary-light:#e8fbf0;--primary-border:#a9edc6;--primary-glow:#00c85329;--secondary:#00d1ff;--secondary-hover:#00a8cc;--secondary-light:#e6faff;--secondary-border:#a9eeff;--success:#10b981;--success-hover:#059669;--success-light:#ecfdf5;--success-border:#a7f3d0;--success-text:#065f46;--warning:#f59e0b;--warning-hover:#d97706;--warning-light:#fffbeb;--warning-border:#fde68a;--warning-text:#92400e;--danger:#ef4444;--danger-hover:#dc2626;--danger-light:#fef2f2;--danger-border:#fecaca;--danger-text:#991b1b;--info:#00a8cc;--info-light:#e6faff;--info-border:#a9eeff;--info-text:#0369a1;--text-main:#0f172a;--text-secondary:#475569;--text-muted:#64748b;--text-subtle:#94a3b8;--font-family:"Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--radius-xs:6px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-full:9999px;--shadow-xs:0 1px 2px #0000000a;--shadow-sm:0 1px 3px #0000000f, 0 1px 2px #0000000a;--shadow-md:0 4px 6px -1px #0000000f, 0 2px 4px -2px #00000008;--shadow-lg:0 10px 15px -3px #00000012, 0 4px 6px -4px #00000008;--shadow-xl:0 20px 25px -5px #00000014, 0 8px 10px -6px #0000000a;--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-normal:.22s cubic-bezier(.4, 0, .2, 1);--transition-smooth:.3s cubic-bezier(.16, 1, .3, 1);--sidebar-width:196px;--header-height:64px}.offline-status{color:#fff;background:#b91c1c;border-radius:6px;padding:7px 10px;font-size:12px;font-weight:800;box-shadow:0 2px 8px #b91c1c47}.offline-issues-status{color:#1f2937;cursor:pointer;background:#f59e0b;border:0;border-radius:6px;padding:7px 10px;font-size:12px;font-weight:800;animation:1.2s ease-in-out infinite offline-issue-pulse}@keyframes offline-issue-pulse{50%{box-shadow:0 0 0 5px #f59e0b40}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;width:100%;overflow-x:hidden}body{font-family:var(--font-family);background-color:var(--bg-main);color:var(--text-main);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;width:100%;max-width:100vw;font-size:13.5px;line-height:1.5;overflow-x:hidden}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:#f1f5f9}::-webkit-scrollbar-thumb{border-radius:var(--radius-full);background:#cbd5e1}::-webkit-scrollbar-thumb:hover{background:#94a3b8}h1,h2,h3,h4,h5,h6{letter-spacing:-.02em;color:var(--text-main);font-weight:700}h1{font-size:1.45rem}h2{font-size:1.2rem}h3{font-size:1.05rem}h4{font-size:.92rem}a{color:var(--primary);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--primary-hover)}.hidden{display:none!important}.screen{display:none}.screen:not(.active){display:none!important}.screen.active{display:flex!important}.grid-2{grid-template-columns:repeat(2,1fr);gap:18px;display:grid}.grid-3{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.grid-4{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.flex-1{flex:1;min-width:0}.gap-8{gap:8px}.gap-12{gap:12px}.gap-16{gap:16px}.mt-8{margin-top:8px}.mt-12{margin-top:12px}.mt-16{margin-top:16px}.mt-20{margin-top:20px}.mb-12{margin-bottom:12px}.mb-16{margin-bottom:16px}.app-container{background:var(--bg-main);width:100vw;min-height:100vh;display:flex}.sidebar{width:var(--sidebar-width);background:var(--bg-sidebar);border-right:1px solid var(--border-color);z-index:100;transition:transform var(--transition-smooth);flex-direction:column;display:flex;position:fixed;top:0;bottom:0;left:0}.sidebar-header{height:var(--header-height);border-bottom:1px solid var(--border-color);align-items:center;gap:10px;padding:0 14px;display:flex}.brand-logo{border-radius:var(--radius-sm);color:#fff;background:linear-gradient(135deg,#00c853 0%,#00d1ff 100%);flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:1rem;font-weight:800;line-height:1;display:flex;box-shadow:0 2px 6px #00c85338}.brand-title{flex-direction:column;display:flex}.brand-name{letter-spacing:-.01em;color:var(--text-main);font-size:1.1rem;font-weight:800;line-height:1.2}.brand-sub{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.68rem;font-weight:600}.sidebar-nav{flex-direction:column;flex:1;gap:2px;padding:10px 8px;display:flex;overflow-y:auto}.nav-section-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-subtle);padding:10px 8px 4px;font-size:.68rem;font-weight:700}.nav-item{width:100%;color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);transition:var(--transition-fast);text-align:left;background:0 0;border:none;align-items:center;gap:8px;padding:8px 10px;font-family:inherit;font-size:13px;font-weight:500;display:flex;position:relative}.nav-item:hover{background:var(--bg-subtle);color:var(--text-main)}.nav-item.active{background:var(--primary-light);color:var(--primary);font-weight:600}.nav-item.active:before{content:"";background:var(--primary);border-radius:0 3px 3px 0;width:3px;position:absolute;top:6px;bottom:6px;left:0}.nav-icon{flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;display:flex}.nav-icon svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.nav-badge{background:var(--danger);color:#fff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;min-width:18px;height:18px;margin-left:auto;padding:0 5px;font-size:10px;font-weight:700;line-height:1;display:inline-flex}@keyframes badgePulse{0%{transform:scale(1);box-shadow:0 0 #ef444480}50%{transform:scale(1.1);box-shadow:0 0 0 4px #ef444400}to{transform:scale(1);box-shadow:0 0 #ef444400}}.nav-badge-pulse{animation:1.8s ease-in-out infinite badgePulse}.waiting-entry{cursor:pointer;transition:box-shadow .18s,transform .18s}.waiting-entry-summary{min-height:44px}.waiting-entry-details{border-top:1px solid var(--border-color);margin-top:8px;padding-top:10px}.waiting-entry-match{animation:1.35s ease-in-out infinite waitingEntryPulse}.waiting-match-hint{color:#b45309;margin:8px 0;font-weight:700}.waiting-tab-attention{animation:1.2s ease-in-out infinite waitingTabPulse;color:#b45309!important;background:#fff3cd!important}@keyframes waitingEntryPulse{0%,to{box-shadow:0 0 #f59e0b73}50%{box-shadow:0 0 0 6px #f59e0b00}}@keyframes waitingTabPulse{0%,to{box-shadow:0 0 #f59e0b73}50%{box-shadow:0 0 0 5px #f59e0b00}}.conflict-group{border:1px solid #dc3545;border-radius:8px;margin-bottom:16px;overflow:hidden}.conflict-group-header{color:#842029;background:#f8d7da;justify-content:space-between;align-items:center;padding:10px 14px;font-weight:600;display:flex}.conflict-group-body{padding:0}.conflict-booking{border-bottom:1px solid #f0f0f0;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;transition:background .15s;display:flex}.conflict-booking:last-child{border-bottom:none}.conflict-booking.selected{background:#d4edda}.conflict-booking.unselected{background:#fff}.conflict-booking-info{flex:1}.conflict-booking-client{font-size:14px;font-weight:600}.conflict-booking-details{color:#666;margin-top:4px;font-size:12px}.conflict-booking-reason{color:#dc3545;margin-top:4px;font-size:12px;font-style:italic}.conflict-booking-manual{color:#fff;background:#28a745;border-radius:4px;margin-left:6px;padding:2px 6px;font-size:10px;font-weight:600;display:inline-block}.conflict-booking-actions{flex-shrink:0;gap:6px;display:flex}.conflict-tab-attention{animation:1.2s ease-in-out infinite conflictTabPulse;color:#dc3545!important;background:#f8d7da!important}@keyframes conflictTabPulse{0%,to{box-shadow:0 0 #dc354573}50%{box-shadow:0 0 0 5px #dc354500}}.booking-tab.applications-tab-attention,.booking-tab.applications-tab-attention.active{animation:1.2s ease-in-out infinite applicationsTabPulse;color:#92400e!important;background:#fff3cd!important}@keyframes applicationsTabPulse{0%,to{box-shadow:0 0 #f59e0b8c}50%{box-shadow:0 0 0 6px #f59e0b00}}.sidebar-footer{border-top:1px solid var(--border-color);background:var(--bg-sidebar);padding:10px 12px}.system-status{color:var(--text-muted);align-items:center;gap:8px;font-size:.76rem;display:flex}.status-dot{background:var(--success);width:7px;height:7px;box-shadow:0 0 0 2px var(--success-border);border-radius:50%}.main-wrapper{margin-left:var(--sidebar-width);min-height:100vh;max-width:calc(100vw - var(--sidebar-width));background:var(--bg-main);flex-direction:column;flex:1;display:flex;overflow-x:hidden}.top-header{height:var(--header-height);border-bottom:1px solid var(--border-color);z-index:40;background:#fff;justify-content:space-between;align-items:center;padding:0 24px;display:flex;position:sticky;top:0}.header-left{align-items:center;gap:12px;display:flex}.mobile-toggle{border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;width:34px;height:34px;color:var(--text-main);background:0 0;justify-content:center;align-items:center;font-size:16px;display:none}.page-title{letter-spacing:-.01em;color:var(--text-main);font-size:1.15rem;font-weight:700}.header-right{align-items:center;gap:12px;display:flex}.search-box{width:240px;position:relative}.search-input{border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-subtle);width:100%;height:36px;color:var(--text-main);transition:var(--transition-fast);outline:none;padding:0 12px 0 34px;font-size:.82rem}.search-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow);background:#fff}.search-icon{color:var(--text-subtle);pointer-events:none;font-size:12px;position:absolute;top:50%;left:11px;transform:translateY(-50%)}.header-btn{border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;width:36px;height:36px;transition:var(--transition-fast);color:var(--text-secondary);background:#fff;justify-content:center;align-items:center;font-size:15px;display:flex;position:relative}.header-btn:hover{background:var(--bg-subtle);color:var(--text-main);border-color:var(--border-hover)}.badge-dot{background:var(--danger);border-radius:50%;width:7px;height:7px;position:absolute;top:6px;right:6px}.user-profile{border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition-fast);align-items:center;gap:8px;padding:4px 8px 4px 4px;display:flex}.user-profile:hover{background:var(--bg-subtle)}.user-profile .avatar{border-radius:var(--radius-sm);color:#fff;background:linear-gradient(135deg,#00e676 0%,#00a844 100%);justify-content:center;align-items:center;width:32px;height:32px;font-size:.72rem;font-weight:700;display:flex}.user-info{flex-direction:column;display:flex}.user-name{color:var(--text-main);font-size:.82rem;font-weight:600;line-height:1.2}.user-role{color:var(--text-muted);font-size:.68rem}.page-content{flex:1;padding:20px 24px}.page{animation:.2s cubic-bezier(.4,0,.2,1) pageFadeIn;display:none}.page.active{display:block}@keyframes pageFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);transition:var(--transition-fast);margin-bottom:18px;padding:18px 20px}.card:hover{border-color:var(--border-hover)}.card-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px;display:flex}.card-title{color:var(--text-main);letter-spacing:-.01em;font-size:.98rem;font-weight:700}.stat-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);transition:var(--transition-fast);flex-direction:column;justify-content:space-between;padding:16px 18px;display:flex;position:relative;overflow:hidden}.stat-card:hover{box-shadow:var(--shadow-md);border-color:var(--border-hover);transform:translateY(-2px)}.stat-header{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.stat-title{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:.74rem;font-weight:600}.stat-icon{border-radius:var(--radius-sm);background:var(--bg-subtle);width:32px;height:32px;color:var(--primary);justify-content:center;align-items:center;font-size:.95rem;font-weight:700;display:flex}.stat-value{color:var(--text-main);letter-spacing:-.03em;font-variant-numeric:tabular-nums;margin-bottom:2px;font-size:1.55rem;font-weight:800}.stat-trend{color:var(--text-muted);align-items:center;gap:4px;font-size:.74rem;font-weight:600;display:inline-flex}.stat-trend.up{color:var(--success)}.stat-trend.down{color:var(--danger)}.stat-card.revenue{border-left:4px solid var(--success)}.stat-card.revenue .stat-value{color:var(--success)}.stat-card.revenue .stat-icon{background:var(--success-light);color:var(--success)}.stat-card.danger{border-left:4px solid var(--danger)}.stat-card.danger .stat-value{color:var(--danger)}.stat-card.danger .stat-icon{background:var(--danger-light);color:var(--danger)}.stat-card.primary{border-left:4px solid var(--primary)}.analytics-section-heading{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:12px;display:flex}.analytics-section-heading h2{margin:0 0 3px;font-size:1.15rem}.analytics-section-heading p{color:var(--text-muted);margin:0;font-size:.82rem}.analytics-source-period-heading{justify-content:space-between;align-items:center;gap:12px;margin:0 2px 9px;display:flex}.analytics-source-period-heading strong{color:var(--text-main);font-size:.82rem}.analytics-source-period-heading span{color:var(--text-muted);font-size:.72rem;font-weight:700}.analytics-channel-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:20px;display:grid}.analytics-channel-card{border-left:4px solid var(--primary);min-height:142px}.analytics-channel-card.telegram{border-left-color:#229ed9}.analytics-channel-card.telegram .stat-icon{color:#168ac2;background:#e7f6fc}.analytics-channel-card.mobile{border-left-color:#7c3aed}.analytics-channel-card.mobile .stat-icon{color:#7c3aed;background:#f2eafe}.analytics-channel-card.manual{border-left-color:#f59e0b}.analytics-channel-card.manual .stat-icon{color:#b76e00;background:#fff5d9}.analytics-channel-track{background:var(--bg-subtle);border-radius:999px;height:6px;margin-top:12px;overflow:hidden}.analytics-channel-track span{border-radius:inherit;height:100%;transition:width .35s;display:block}.analytics-channel-card.telegram .analytics-channel-track span{background:#229ed9}.analytics-channel-card.mobile .analytics-channel-track span{background:#7c3aed}.analytics-channel-card.manual .analytics-channel-track span{background:#f59e0b}.analytics-client-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:20px;display:grid}.analytics-client-card{min-height:132px}.analytics-client-card.average{border-left:4px solid #0f766e}.analytics-client-card.average .stat-icon{color:#0f766e;background:#ccfbf1}.analytics-client-card.maximum{border-left:4px solid #d97706}.analytics-client-card.maximum .stat-icon{color:#b45309;background:#fef3c7}.analytics-gender-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:20px;display:grid}.analytics-gender-card{min-height:142px}.analytics-gender-card.male{border-left:4px solid #4c8dff}.analytics-gender-card.male .stat-icon{color:#4c8dff;background:#eaf1ff}.analytics-gender-card.male .analytics-channel-track span{background:#4c8dff}.analytics-gender-card.female{border-left:4px solid #db2777}.analytics-gender-card.female .stat-icon{color:#db2777;background:#fce7f3}.analytics-gender-card.female .analytics-channel-track span{background:#db2777}.analytics-revenue-card{margin-bottom:20px;overflow:hidden}.analytics-revenue-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.analytics-revenue-header p{color:var(--text-muted);margin:5px 0 0;font-size:.78rem}.analytics-period-switch{border-radius:var(--radius-full);background:var(--bg-subtle);border:1px solid var(--border-color);gap:3px;padding:3px;display:inline-flex}.analytics-period-switch button{border-radius:var(--radius-full);min-width:42px;color:var(--text-muted);font:inherit;cursor:pointer;background:0 0;border:0;padding:6px 10px;font-size:.75rem;font-weight:700}.analytics-period-switch button.active{color:#fff;background:var(--primary);box-shadow:var(--shadow-xs)}.analytics-revenue-summary{align-items:baseline;gap:12px;margin-top:16px;display:flex}.analytics-revenue-summary strong{color:var(--success);letter-spacing:-.03em;font-size:1.65rem}.analytics-revenue-summary span{color:var(--text-muted);font-size:.72rem}.analytics-revenue-chart{min-height:340px;margin-top:8px;overflow:hidden}.analytics-revenue-chart svg{width:100%;height:auto;min-height:280px;display:block}.analytics-chart-grid{stroke:var(--border-color);stroke-width:1px;stroke-dasharray:4 5}.analytics-chart-grid-vertical{opacity:.5}.analytics-chart-label{fill:var(--text-muted);font-family:inherit;font-size:11px}.analytics-chart-area{fill:url(#analyticsRevenueGradient)}.analytics-chart-line{fill:none;stroke:#1e293b;stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round}.analytics-chart-point{fill:#fff;stroke-width:2px;transition:r .15s}.analytics-chart-point:hover{r:6px}.analytics-chart-point.up{stroke:#10b981}.analytics-chart-point.down{stroke:#ef4444}.analytics-volume-bar{opacity:.55}.analytics-volume-bar.up{fill:#10b981}.analytics-volume-bar.down{fill:#ef4444}.profitability-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.profitability-title{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px;font-size:.72rem;font-weight:800}.profitability-list{flex-direction:column;gap:8px;display:flex}.profitability-item{border-radius:var(--radius-sm);background:var(--bg-subtle);justify-content:space-between;align-items:center;gap:10px;padding:10px;display:flex}.profitability-rank{width:24px;height:24px;color:var(--primary);background:var(--primary-light);border-radius:50%;justify-content:center;align-items:center;margin-right:7px;font-size:.72rem;font-weight:800;display:inline-flex}.profitability-item-label{color:var(--text-main);font-size:.78rem;font-weight:700}.profitability-item-value{text-align:right;white-space:nowrap}.profitability-item-value strong{color:var(--success);font-size:.78rem;display:block}.profitability-item-value small{color:var(--text-muted);font-size:.65rem}@media (width<=760px){.analytics-channel-grid,.analytics-client-grid,.analytics-gender-grid{grid-template-columns:1fr}.analytics-section-heading{flex-direction:column;align-items:flex-start;gap:8px}.analytics-revenue-header{flex-direction:column}.analytics-period-switch{width:100%}.analytics-period-switch button{flex:1;min-width:0}.analytics-revenue-summary{flex-direction:column;align-items:flex-start;gap:2px}.analytics-revenue-chart{min-height:280px;margin-left:-8px;margin-right:-8px}.analytics-revenue-chart svg{min-height:240px}.profitability-grid{grid-template-columns:1fr}}.secondary-stats-bar{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:18px;display:grid}.mini-stat-card{border:1px solid var(--border-color);border-radius:var(--radius-sm);box-shadow:var(--shadow-xs);background:#fff;padding:10px 12px}.mini-stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:2px;font-size:.7rem;font-weight:600}.mini-stat-value{color:var(--text-main);letter-spacing:-.02em;font-size:1.15rem;font-weight:800}.btn{border-radius:var(--radius-sm);cursor:pointer;height:36px;transition:var(--transition-fast);white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-family:inherit;font-size:.82rem;font-weight:600;line-height:1;text-decoration:none;display:inline-flex}.btn:active{transform:scale(.98)}.btn-primary{background:var(--primary);color:#04220f;border-color:var(--primary);box-shadow:0 1px 2px #00c85333}.btn-primary:hover{background:var(--primary-hover);border-color:var(--primary-hover);color:#04220f;box-shadow:0 2px 6px #00c85340}.btn-secondary{background:var(--secondary);color:#fff;border-color:var(--secondary)}.btn-secondary:hover{background:var(--secondary-hover);border-color:var(--secondary-hover)}.btn-success{background:var(--success);color:#fff;border-color:var(--success)}.btn-success:hover{background:var(--success-hover);border-color:var(--success-hover)}.btn-danger{background:var(--danger);color:#fff;border-color:var(--danger)}.btn-danger:hover{background:var(--danger-hover);border-color:var(--danger-hover)}.btn-outline{color:var(--text-main);border-color:var(--border-color);background:#fff}.btn-outline:hover{background:var(--bg-subtle);border-color:var(--border-hover)}.btn-outline-danger{color:var(--danger);border-color:var(--danger-border);background:#fff}.btn-outline-danger:hover{background:var(--danger-light);border-color:var(--danger)}.btn-sm{border-radius:var(--radius-xs);height:30px;padding:0 10px;font-size:.75rem}.btn-icon{border-radius:var(--radius-xs);justify-content:center;align-items:center;width:32px;height:32px;padding:0;display:inline-flex}.btn-lg{height:42px;padding:0 18px;font-size:.9rem}.btn-full{width:100%}.form-row{flex-wrap:wrap;gap:12px;margin-bottom:12px;display:flex}.form-group{margin-bottom:12px}.form-group label{color:var(--text-main);margin-bottom:4px;font-size:.78rem;font-weight:600;display:block}.form-group input,.form-group select,.form-group textarea,.form-control{border-radius:var(--radius-sm);border:1px solid var(--border-color);width:100%;height:36px;color:var(--text-main);transition:var(--transition-fast);background:#fff;outline:none;padding:0 11px;font-family:inherit;font-size:.84rem}.form-group textarea{resize:vertical;height:auto;min-height:70px;padding:8px 11px}.form-group input:focus,.form-group select:focus,.form-group textarea:focus,.form-control:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow)}.filter-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:16px;display:flex}.tabs-group{background:var(--bg-subtle);border-radius:var(--radius-sm);border:1px solid var(--border-color);gap:2px;padding:3px;display:flex}.tab-btn,.booking-tab{height:30px;color:var(--text-muted);border-radius:var(--radius-xs);cursor:pointer;transition:var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:0 12px;font-family:inherit;font-size:.8rem;font-weight:600;display:inline-flex}.tab-btn:hover,.booking-tab:hover{color:var(--text-main)}.tab-btn.active,.booking-tab.active{color:var(--primary);box-shadow:var(--shadow-xs);background:#fff}.booking-sound-toggle{border-radius:var(--radius-xs);width:32px;height:30px;color:var(--text-muted);cursor:pointer;transition:var(--transition-fast);background:0 0;border:0;flex:0 0 32px;padding:0;font-size:15px;line-height:1}.booking-sound-toggle:hover,.booking-sound-toggle:focus-visible{color:var(--text-main);box-shadow:var(--shadow-xs);background:#fff;outline:none}.table-container{border-radius:var(--radius-sm);border:1px solid var(--border-color);background:#fff;overflow-x:auto}.data-table{border-collapse:collapse;text-align:left;width:100%;min-width:640px;font-size:.82rem}.data-table th{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);border-bottom:1px solid var(--border-color);white-space:nowrap;background:#f8fafc;padding:10px 12px;font-size:.7rem;font-weight:700}.data-table td{border-bottom:1px solid var(--border-color);vertical-align:middle;color:var(--text-main);padding:10px 12px}.data-table tr:last-child td{border-bottom:none}.data-table tr:hover td{background:#f8fafc}.data-table tr.pending-delete td{background:var(--danger-light)!important}#bookings-table{table-layout:fixed;min-width:0}#bookings-table th,#bookings-table td{padding:9px 8px}#bookings-table td{text-align:center;vertical-align:middle}#bookings-table th{text-align:center}#bookings-table th:first-child,#bookings-table td:first-child{white-space:nowrap;width:10%}#bookings-table th:nth-child(2),#bookings-table td:nth-child(2){white-space:nowrap;width:8%}#bookings-table th:nth-child(3),#bookings-table td:nth-child(3){width:13%}#bookings-table th:nth-child(4),#bookings-table td:nth-child(4){width:10%}#bookings-table th:nth-child(5),#bookings-table td:nth-child(5){white-space:nowrap;width:6%}#bookings-table th:nth-child(6),#bookings-table td:nth-child(6){width:8%}#bookings-table th:nth-child(7),#bookings-table td:nth-child(7){width:10%}#bookings-table th:nth-child(8),#bookings-table td:nth-child(8){white-space:nowrap;width:11%}#bookings-table th:nth-child(9),#bookings-table td:nth-child(9){white-space:nowrap;width:9%}#bookings-table th:nth-child(10),#bookings-table td:nth-child(10){white-space:normal;width:15%}#bookings-table td:nth-child(10)>div{justify-content:center;max-width:100%;display:flex;flex-wrap:wrap!important}#bookings-table th small{letter-spacing:0;text-transform:none;font-size:.68rem;font-weight:600}.payment-method{white-space:nowrap;color:var(--success);align-items:center;font-size:.76rem;font-weight:700;line-height:1.2;display:inline-flex}.fleet-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));align-items:stretch;gap:18px;display:grid}.fleet-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);min-width:0;transition:transform var(--transition-fast), box-shadow var(--transition-fast), border-color var(--transition-fast);flex-direction:column;padding:18px;display:flex}.fleet-card:hover{border-color:var(--border-hover);box-shadow:var(--shadow-md);transform:translateY(-1px)}.fleet-card-header,.fleet-card-actions,.fleet-edit-actions{justify-content:space-between;align-items:center;gap:10px;display:flex}.fleet-card-header{flex-wrap:wrap}.fleet-card-header>div:first-child{align-items:center;gap:8px;min-width:0;display:flex}.fleet-card-header>div:last-child{min-width:0;margin-left:auto}.fleet-card-header strong{overflow-wrap:anywhere}.fleet-card-actions{border-top:1px solid var(--border-light);grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:16px;padding-top:14px;display:grid}.fleet-card-actions .btn{width:100%;min-width:0;height:34px;padding:0 8px}.fleet-card-actions .btn:last-child{grid-column:1/-1}.fleet-icon{margin-right:0}.fleet-transmission{border-radius:var(--radius-full);padding:4px 9px;font-size:.75rem;font-weight:700}.fleet-manual{color:#92400e;background:#fef3c7}.fleet-automatic{color:#007a33;background:#e8fbf0}.fleet-usage{color:#075985;background:#e0f2fe}.fleet-edit-panel{border-top:1px solid var(--border-color);margin-top:16px;padding-top:14px}.fleet-edit-panel .form-group{margin-bottom:12px}.fleet-edit-actions{justify-content:flex-start}@media (width<=440px){.fleet-card-actions{grid-template-columns:1fr}.fleet-card-actions .btn:last-child{grid-column:auto}}#bookings-table td:nth-child(8) .badge{white-space:normal;text-align:center;justify-content:center;max-width:100%;line-height:1.2}.booking-time-cell{white-space:normal}.booking-time-cell .booking-countdown{white-space:nowrap;margin-top:2px;font-size:.72rem;display:block}.mobile-cards{display:none!important}.badge{border-radius:var(--radius-full);white-space:nowrap;align-items:center;gap:4px;padding:2px 7px;font-size:.72rem;font-weight:600;line-height:1.3;display:inline-flex}.badge-planned,.badge-primary{background:var(--primary-light);color:var(--primary);border:1px solid var(--primary-border)}.badge-confirmed,.badge-success{background:var(--success-light);color:var(--success-text);border:1px solid var(--success-border)}.badge-completed{color:#15803d;background:#f0fdf4;border:1px solid #bbf7d0}.badge-cancelled,.badge-danger{background:var(--danger-light);color:var(--danger-text);border:1px solid var(--danger-border)}.badge-no_show,.badge-warning{background:var(--warning-light);color:var(--warning-text);border:1px solid var(--warning-border)}.badge-info,.badge-secondary{background:var(--info-light);color:var(--info-text);border:1px solid var(--info-border)}.instructor-card,.inst-card{border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);transition:var(--transition-fast);background:#fff;flex-direction:column;justify-content:space-between;gap:12px;padding:16px;display:flex;position:relative}.instructor-card:hover,.inst-card:hover{border-color:var(--border-hover);box-shadow:var(--shadow-md)}.inst-header{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.inst-profile{align-items:center;gap:10px;display:flex}.inst-avatar{border-radius:var(--radius-sm);color:#fff;background:linear-gradient(135deg,#00c853 0%,#5ce1ff 100%);flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:.92rem;font-weight:700;display:flex;box-shadow:0 2px 4px #00c8532e}.inst-name-block{flex-direction:column;display:flex}.inst-name{color:var(--text-main);font-size:.95rem;font-weight:700;line-height:1.2}.inst-status-badge{align-items:center;gap:4px;margin-top:2px;font-size:.72rem;font-weight:600;display:inline-flex}.inst-status-active{color:var(--success)}.inst-status-inactive{color:var(--text-subtle)}.inst-rating-badge{border-radius:var(--radius-full);background:var(--warning-light);color:var(--warning-text);border:1px solid var(--warning-border);flex-shrink:0;align-items:center;gap:4px;padding:3px 8px;font-size:.76rem;font-weight:700;display:inline-flex}.inst-specs-grid{background:var(--bg-subtle);border-radius:var(--radius-sm);grid-template-columns:repeat(2,1fr);gap:6px;padding:8px 10px;display:grid}.inst-spec-item{color:var(--text-secondary);align-items:center;gap:6px;font-size:.76rem;display:flex}.inst-quote{color:var(--text-muted);background:#fdfdfd;border-left:2px solid #cbd5e1;border-radius:0 4px 4px 0;padding:4px 8px;font-size:.76rem;font-style:italic;line-height:1.35}.inst-actions-toolbar{border-top:1px solid var(--border-color);grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:6px;padding-top:10px;display:grid}.inst-actions-toolbar .btn{width:100%;min-width:0}.instructors-workload-layout{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:18px;display:grid}.instructor-week-panel{border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-md);top:calc(var(--header-height) + 14px);max-height:calc(100vh - var(--header-height) - 28px);background:#fff;padding:16px;position:sticky;overflow-y:auto}.week-panel-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:flex-start;margin-bottom:12px;padding-bottom:8px;display:flex}.week-day{border-top:1px solid var(--border-color);margin-top:8px;padding-top:8px}.week-day:first-child{border-top:none;margin-top:0;padding-top:0}.week-day h4{color:var(--text-main);margin-bottom:4px;font-size:.78rem}.week-booking{background:var(--bg-subtle);border-radius:var(--radius-xs);grid-template-columns:60px 1fr;gap:6px;margin-bottom:3px;padding:5px 7px;font-size:.75rem;display:grid}.week-booking-time{color:var(--primary);font-weight:700}.slots-list{grid-template-columns:repeat(2,1fr);gap:6px;max-height:240px;display:grid;overflow-y:auto}.slot-item{border:1.5px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition-fast);background:#fff;padding:6px 8px;position:relative;overflow:hidden}.slot-item:before{content:"";width:3px;position:absolute;top:0;bottom:0;left:0}.slot-item:hover:not(.slot-busy){border-color:var(--primary);background:#f8fafc}.slot-free:before{background:var(--success)}.slot-busy{opacity:.55;cursor:not-allowed;background:var(--bg-subtle)}.slot-busy:before{background:var(--danger)}.slot-selected{background:var(--primary-light)!important;border-color:var(--primary)!important}.slot-selected:before{background:var(--primary)!important}.slot-header{justify-content:space-between;align-items:center;display:flex}.slot-time{color:var(--text-main);font-size:.8rem;font-weight:700}.slot-status{text-transform:uppercase;color:var(--text-muted);font-size:.65rem;font-weight:600}.calendar-wrapper{grid-template-columns:130px minmax(0,1fr);align-items:start;gap:12px;display:grid}.calendar-sidebar,.calendar-main,.daily-schedule-editor{min-width:0}.calendar-months-list{flex-direction:column;gap:5px;display:flex}.calendar-month-btn,.calendar-day-btn,.schedule-mode-btn{border:1px solid var(--border-color);border-radius:var(--radius-xs);color:var(--text-secondary);cursor:pointer;transition:var(--transition-fast);background:#fff;font-family:inherit;font-size:.75rem;font-weight:600}.calendar-month-btn{text-align:left;min-height:28px;padding:5px 8px}.calendar-month-btn:hover,.calendar-day-btn:hover:not(:disabled),.schedule-mode-btn:hover{border-color:var(--primary-border);background:var(--primary-light);color:var(--primary)}.calendar-month-btn.active,.schedule-mode-btn.active{border-color:var(--primary);background:var(--primary);color:#fff}.calendar-header{color:var(--text-main);margin-bottom:8px;font-size:.88rem;font-weight:800}.calendar-weekdays,.calendar-days-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.calendar-weekdays{margin-bottom:4px}.calendar-weekdays div{color:var(--text-muted);text-align:center;font-size:.68rem;font-weight:700}.calendar-day-btn{aspect-ratio:1;justify-content:center;align-items:center;min-height:30px;padding:0;display:inline-flex}.calendar-day-btn.empty{visibility:hidden;pointer-events:none}.calendar-day-btn.today{border-color:var(--primary);color:var(--primary);box-shadow:inset 0 0 0 1px var(--primary)}.calendar-day-btn.past{opacity:.35;cursor:not-allowed}.calendar-day-btn.day-off{border-color:var(--danger-border);background:var(--danger-light);color:var(--danger)}.calendar-day-btn.custom-schedule{border-color:var(--warning-border);background:var(--warning-light);color:var(--warning-text)}.daily-schedule-editor{border-top:1px solid var(--border-color);margin-top:10px;padding-top:10px}.schedule-mode-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.schedule-mode-btn{min-height:30px;padding:5px 8px}.client-list-item{border-radius:var(--radius-sm);border-bottom:1px solid var(--border-color);cursor:pointer;transition:var(--transition-fast);align-items:center;gap:10px;padding:9px 12px;display:flex}.client-list-item:hover{background:var(--bg-subtle)}.client-list-item.active{background:var(--primary-light);border-left:3px solid var(--primary)}.client-list-avatar{color:#fff;background:linear-gradient(135deg,#00e676 0%,#00a844 100%);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:.75rem;font-weight:700;display:flex}.client-list-info{flex:1;min-width:0}.client-list-name{color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;font-size:.82rem;font-weight:600;overflow:hidden}.client-list-phone{color:var(--text-muted);font-size:.72rem}.client-list-bookings{background:var(--bg-subtle);color:var(--text-secondary);border-radius:10px;padding:1px 6px;font-size:.72rem;font-weight:700}.client-mini-header{border-bottom:1px solid var(--border-color);align-items:center;gap:12px;margin-bottom:12px;padding-bottom:12px;display:flex}.client-mini-avatar{color:#fff;background:linear-gradient(135deg,#00c853 0%,#00d1ff 100%);border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-size:1rem;font-weight:800;display:flex}.client-mini-details{flex-direction:column;gap:6px;margin-bottom:14px;display:flex}.client-mini-row{border-bottom:1px dashed var(--border-light);justify-content:space-between;padding:4px 0;font-size:.8rem;display:flex}.client-mini-label{color:var(--text-muted);font-weight:500}.client-mini-actions{border-top:1px solid var(--border-color);gap:8px;padding-top:10px;display:flex}.heatmap-grid{grid-template-columns:repeat(7,1fr);gap:6px;margin-top:12px;display:grid}.heatmap-cell{aspect-ratio:1;border-radius:var(--radius-xs);transition:var(--transition-fast);justify-content:center;align-items:center;font-size:.7rem;font-weight:700;display:flex}.heatmap-cell:hover{z-index:2;transform:scale(1.08)}.load-bar-container{margin-bottom:12px}.load-bar-label{justify-content:space-between;margin-bottom:4px;font-size:.8rem;font-weight:600;display:flex}.load-bar{background:var(--bg-subtle);border-radius:var(--radius-xs);border:1px solid var(--border-color);height:18px;overflow:hidden}.load-bar-fill{border-radius:var(--radius-xs);color:#fff;background:linear-gradient(90deg,#00e676 0%,#00c853 100%);align-items:center;height:100%;padding-left:6px;font-size:.7rem;font-weight:700;transition:width .6s cubic-bezier(.4,0,.2,1);display:flex}.cert-preview-card{border-radius:var(--radius-md);color:#fff;box-shadow:var(--shadow-lg);background:linear-gradient(135deg,#1e293b 0%,#0f172a 100%);flex-direction:column;justify-content:space-between;min-height:180px;padding:20px;display:flex}.chat-layout{height:calc(100vh - var(--header-height) - 90px);grid-template-columns:280px 1fr;gap:14px;min-height:440px;display:grid}.support-tabs{background:var(--bg-subtle);border-radius:var(--radius-sm);gap:4px;width:fit-content;margin-bottom:10px;padding:3px;display:flex}.support-tab{height:30px;color:var(--text-muted);border-radius:var(--radius-xs);cursor:pointer;transition:var(--transition-fast);background:0 0;border:none;align-items:center;padding:0 12px;font-size:.8rem;font-weight:600;display:inline-flex}.support-tab.active{color:var(--primary);box-shadow:var(--shadow-xs);background:#fff}.chat-dialogs{border:1px solid var(--border-color);border-radius:var(--radius-md);background:#fff;flex-direction:column;display:flex;overflow-y:auto}.chat-dialog-item{border-bottom:1px solid var(--border-color);cursor:pointer;transition:var(--transition-fast);align-items:center;gap:8px;padding:10px 12px;display:flex}.chat-dialog-item:hover{background:var(--bg-subtle)}.chat-dialog-item.active{background:var(--primary-light);border-left:3px solid var(--primary)}.chat-main{border:1px solid var(--border-color);border-radius:var(--radius-md);background:#fff;flex-direction:column;display:flex;overflow:hidden}.chat-messages-box{background:#f8fafc;flex-direction:column;flex:1;gap:8px;padding:14px;display:flex;overflow-y:auto}.chat-bubble{border-radius:var(--radius-md);max-width:70%;box-shadow:var(--shadow-xs);padding:8px 12px;font-size:.82rem;line-height:1.4}.chat-bubble.user{border:1px solid var(--border-color);background:#fff;align-self:flex-start}.chat-bubble.admin{background:var(--primary);color:#fff;align-self:flex-end}.chat-input-bar{border-top:1px solid var(--border-color);background:#fff;gap:8px;padding:10px 12px;display:flex}.modal-backdrop,.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#0f172a66;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal-dialog,.modal-box{border-radius:var(--radius-lg);border:1px solid var(--border-color);box-shadow:var(--shadow-xl);background:#fff;flex-direction:column;width:100%;max-width:500px;max-height:88vh;animation:.18s cubic-bezier(.16,1,.3,1) modalIn;display:flex;overflow:hidden}@keyframes modalIn{0%{opacity:0;transform:scale(.96)translateY(6px)}to{opacity:1;transform:scale(1)translateY(0)}}.modal-header{border-bottom:1px solid var(--border-color);background:#f8fafc;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.modal-body{flex:1;padding:16px;overflow-y:auto}.modal-footer{border-top:1px solid var(--border-color);background:#f8fafc;justify-content:flex-end;gap:8px;padding:10px 16px;display:flex}.toast{border-radius:var(--radius-sm);color:#fff;z-index:9999;box-shadow:var(--shadow-lg);align-items:center;gap:6px;padding:10px 16px;font-size:.82rem;font-weight:600;display:flex;position:fixed;bottom:20px;right:20px}.toast.success{background:var(--success)}.toast.error{background:var(--danger)}@media (width<=1024px){.grid-4,.grid-3{grid-template-columns:repeat(2,1fr)}.instructors-workload-layout{grid-template-columns:1fr}.instructor-week-panel{max-height:none;position:static}}@media (width<=768px){.sidebar{width:250px;box-shadow:var(--shadow-xl);transform:translate(-100%)}.sidebar.open{transform:translate(0)}.main-wrapper{max-width:100vw;margin-left:0}.mobile-toggle{display:flex}.top-header{padding:0 14px}.page-content{padding:14px}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.chat-layout{grid-template-columns:1fr;height:auto}.table-container{display:none}.mobile-cards{flex-direction:column;gap:10px;margin-top:10px;display:flex!important}.mobile-card{border:1px solid var(--border-color);border-radius:var(--radius-sm);box-shadow:var(--shadow-xs);background:#fff;padding:12px 14px}}.inst-card-duty{border-left:3px solid #f59e0b!important}.mobile-card{border:1px solid var(--border-color);border-radius:var(--radius-sm);box-shadow:var(--shadow-xs);background:#fff;padding:12px 14px}.mobile-card-header{border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:10px;padding-bottom:8px;display:flex}.mobile-card-title{color:var(--text-main);font-size:.88rem;font-weight:700}.mobile-card-row{border-bottom:1px dashed var(--border-light);justify-content:space-between;align-items:baseline;gap:8px;padding:4px 0;font-size:.8rem;display:flex}.mobile-card-row:last-child{border-bottom:none}.mobile-card-label{color:var(--text-muted);white-space:nowrap;flex-shrink:0;font-weight:500}.mobile-card-value{color:var(--text-main);text-align:right}#instructors-list{grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:16px;display:grid}.cert-card{border:1px solid var(--border-color);border-radius:var(--radius-sm);box-shadow:var(--shadow-xs);transition:var(--transition-fast);background:#fff;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.cert-card:hover{border-color:var(--border-hover)}.assignment-line{color:var(--text-secondary);overflow-wrap:anywhere;margin-top:6px;font-size:.8rem}.assignment-line strong{color:var(--text-main)}@media (width<=700px){.inst-card,.package-card,.cert-card,.faq-admin-item{flex-wrap:wrap;align-items:flex-start}.inst-card>div:last-child,.cert-card>button,.package-card>button{width:100%}.inst-card .btn,.package-card .btn{flex:auto}.inst-info{width:100%;min-width:0}.inst-info h3,.inst-info p{overflow-wrap:anywhere}}.faq-admin-item{border:1px solid var(--border-color);border-radius:var(--radius-sm);box-shadow:var(--shadow-xs);background:#fff;align-items:flex-start;gap:12px;margin-bottom:8px;padding:12px 14px;display:flex}.faq-admin-item h4{margin-bottom:4px;font-size:.88rem}.faq-admin-item p{color:var(--text-secondary);font-size:.8rem;line-height:1.4}.faq-actions{flex-shrink:0;gap:6px;display:flex}.notif-item{border-bottom:1px solid var(--border-color);background:#fff;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.notif-item:last-child{border-bottom:none}.notif-icon{background:var(--bg-subtle);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:.9rem;display:flex}.notif-body h4{margin-bottom:2px;font-size:.82rem}.notif-body p{color:var(--text-muted);font-size:.72rem}.support-dialog-item{border-bottom:1px solid var(--border-color);cursor:pointer;transition:var(--transition-fast);align-items:center;gap:8px;padding:10px 12px;display:flex;position:relative}.support-dialog-item:hover{background:var(--bg-subtle)}.support-dialog-item.active{background:var(--primary-light);border-left:3px solid var(--primary)}.support-dialog-item.has-new{background:#fffbeb}.dialog-avatar{color:#fff;background:linear-gradient(135deg,#00e676 0%,#00a844 100%);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:.78rem;font-weight:700;display:flex}.dialog-info{flex:1;min-width:0}.dialog-header{justify-content:space-between;align-items:baseline;gap:4px;display:flex}.dialog-name{font-size:.82rem;font-weight:600}.dialog-time{color:var(--text-muted);white-space:nowrap;font-size:.7rem}.dialog-preview{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.76rem;overflow:hidden}.dialog-unread-badge{background:var(--danger);color:#fff;border-radius:10px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:10px;font-weight:700;display:inline-flex}.dialog-delete-btn{cursor:pointer;opacity:0;transition:opacity var(--transition-fast);color:var(--text-muted);background:0 0;border:none;padding:2px;font-size:12px}.support-dialog-item:hover .dialog-delete-btn{opacity:1}.chat-message{flex-direction:column;max-width:72%;display:flex}.chat-message-user{align-self:flex-start}.chat-message-admin{align-self:flex-end}.chat-message-text{border-radius:var(--radius-md);padding:8px 12px;font-size:.82rem;line-height:1.4}.chat-message-user .chat-message-text{border:1px solid var(--border-color);color:var(--text-main);background:#fff}.chat-message-admin .chat-message-text{background:var(--primary);color:#fff}.chat-message-time{color:var(--text-muted);margin-top:2px;padding:0 4px;font-size:.68rem}.chat-message-admin .chat-message-time{text-align:right}.week-empty{color:var(--text-muted);padding:6px 0;font-size:.8rem;font-style:italic}.alert{border-radius:var(--radius-sm);margin-bottom:10px;padding:10px 14px;font-size:.82rem}.alert-success{background:var(--success-light);border:1px solid var(--success-border);color:var(--success-text)}.alert-error{background:var(--danger-light);border:1px solid var(--danger-border);color:var(--danger-text)}.settings-section{border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);background:#fff;margin-bottom:16px;padding:18px 20px}.settings-section h3{border-bottom:1px solid var(--border-light);margin-bottom:14px;padding-bottom:8px;font-size:.92rem}.login-screen{background:linear-gradient(135deg,#f0f4ff 0%,#e8f4fd 100%);justify-content:center;align-items:center;min-height:100vh;display:flex}.login-card{border:1px solid var(--border-color);border-radius:var(--radius-lg);width:100%;max-width:380px;box-shadow:var(--shadow-xl);background:#fff;padding:36px 32px}.login-logo{text-align:center;margin-bottom:24px}.login-logo-icon{border-radius:var(--radius-md);color:#fff;background:linear-gradient(135deg,#00c853 0%,#00d1ff 100%);justify-content:center;align-items:center;width:56px;height:56px;margin-bottom:12px;font-size:1.5rem;font-weight:800;display:inline-flex;box-shadow:0 4px 12px #00c85340}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:18px;display:flex}.page-header h2{font-size:1.15rem;font-weight:800}@media (width<=768px){#instructors-list{grid-template-columns:1fr}.inst-specs-grid{grid-template-columns:1fr 1fr}html,body{min-width:0;overflow-x:hidden}.screen.active{width:100%}#login-screen{overflow-y:auto;padding:16px!important}#login-screen .card{border-radius:var(--radius-md)!important;width:min(100%,420px)!important;padding:26px 20px!important}.app-container{width:100%}.sidebar{width:min(86vw,300px)}body.sidebar-open{overflow:hidden}body.sidebar-open:after{content:"";z-index:90;background:#0f172a52;position:fixed;inset:0}.top-header{height:auto;min-height:var(--header-height);flex-wrap:wrap;align-items:flex-start;gap:8px;padding-top:10px;padding-bottom:10px}.header-left,.header-right{width:100%;min-width:0}.header-right{gap:8px}.page-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.search-box{flex:1;width:auto;min-width:0}.user-profile{padding-right:4px}.user-info{display:none}.page-content{padding:12px}.card{border-radius:var(--radius-sm);margin-bottom:12px;padding:14px}.filter-bar{align-items:stretch}.filter-bar>div,.filter-bar>h2,.filter-bar>button{width:100%}.filter-bar .form-control,.filter-bar .btn{width:100%!important}.tabs-group,.support-tabs{-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}.tab-btn,.booking-tab,.support-tab{flex:1 0 max-content}.form-row{gap:8px}.form-row>.form-group,.form-row>.flex-1{flex-basis:100%}.btn{white-space:normal;min-width:0;height:auto;min-height:36px;padding:9px 12px;line-height:1.2}.btn-icon{width:34px;min-width:34px;height:34px;padding:0}.table-container{display:block}.table-container.table-wrapper{display:none}.data-table{min-width:620px}#page-clients .grid-3>.card{grid-column:auto!important}.client-mini-header,.client-mini-row,.client-mini-actions,.inst-header,.inst-profile,.inst-actions-toolbar,.faq-admin-item,.cert-card{min-width:0}.client-mini-row,.client-mini-actions,.inst-actions-toolbar,.faq-admin-item,.cert-card{flex-wrap:wrap}.client-mini-row span:last-child,.mobile-card-value,.notif-body,.faq-admin-item>div:first-child,.inst-name-block{overflow-wrap:anywhere;min-width:0}.client-mini-actions .btn,.inst-actions-toolbar .btn{flex:calc(50% - 4px)}.slots-list{grid-template-columns:1fr;max-height:280px}.mobile-card-row{align-items:flex-start}.mobile-card-label{white-space:normal}.chat-layout{height:auto;min-height:0}.chat-dialogs{max-height:320px}.chat-main{min-height:420px}.chat-input-bar{flex-wrap:wrap}.chat-input-bar .btn{width:100%}.chat-message,.chat-bubble{max-width:92%}.calendar-wrapper{grid-template-columns:1fr;gap:12px;display:grid}.calendar-months-list{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.calendar-month-btn,.calendar-day-btn,.schedule-mode-btn{min-width:0}.calendar-weekdays,.calendar-days-grid,.schedule-mode-grid{grid-template-columns:repeat(7,minmax(0,1fr))}.modal-backdrop,.modal-overlay{align-items:flex-start;padding:10px;overflow-y:auto}.modal-dialog,.modal-box{border-radius:var(--radius-md);max-height:calc(100vh - 20px)}.modal-footer{flex-wrap:wrap}.modal-footer .btn{flex:140px}.toast{text-align:center;justify-content:center;bottom:12px;left:12px;right:12px}}.booking-reminder-flash td{box-shadow:inset 0 0 0 2px #f59e0b;background:#fff3a3!important}.support-mode-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}#page-support.broadcast-on{background:linear-gradient(#f59e0b1a,#f59e0b00 220px);border-radius:14px}.broadcast-switch{cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--text-secondary);border:1px solid var(--border-color);border-radius:var(--radius-full);background:var(--bg-card);align-items:center;gap:9px;padding:6px 10px;font-size:.84rem;font-weight:700;display:inline-flex}.broadcast-switch input,.broadcast-status input{opacity:0;width:0;height:0;position:absolute}.broadcast-switch-track,.broadcast-status-track{border-radius:var(--radius-full);background:#cbd5e1;flex:none;width:42px;height:22px;transition:background .18s;position:relative}.broadcast-switch-thumb,.broadcast-status-thumb{background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .18s;position:absolute;top:3px;left:3px;box-shadow:0 1px 2px #0f172a40}.broadcast-switch input:checked+.broadcast-switch-track{background:var(--primary)}.broadcast-switch input:checked+.broadcast-switch-track .broadcast-switch-thumb{transform:translate(20px)}.broadcast-switch input:focus-visible+.broadcast-switch-track,.broadcast-status input:focus-visible+.broadcast-status-track{box-shadow:0 0 0 3px var(--primary-glow)}.broadcast-banner{background:var(--warning-light);border:1px solid var(--warning-border);color:var(--warning-text);border-radius:10px;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:12px;padding:10px 14px;font-size:.88rem;font-weight:700;display:flex}.broadcast-progress{font-variant-numeric:tabular-nums;margin-left:auto}.broadcast-panel{background:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-xs);border-radius:12px;margin-bottom:14px;padding:14px}.broadcast-panel-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:8px;display:flex}.broadcast-panel-title{font-size:.9rem;font-weight:700}.broadcast-saved-at{color:var(--text-secondary);font-size:.75rem}.broadcast-panel-actions{justify-content:flex-end;margin-top:8px;display:flex}.broadcast-channel{color:#fff;border-radius:3px;margin-left:5px;padding:1px 5px;font-size:10px;font-weight:700}.broadcast-channel-tg{background:#08c}.broadcast-channel-wa{color:#04361a;background:#25d366}.broadcast-sent-badge{color:var(--success-text);background:var(--success-light);border:1px solid var(--success-border);border-radius:var(--radius-full);white-space:nowrap;margin-left:6px;padding:1px 8px;font-size:.68rem;font-weight:700}.support-dialog-item.broadcast-item.is-sent{background:var(--success-light)}.support-dialog-item.broadcast-item.is-sent .dialog-preview{color:var(--success-text)}.broadcast-chat-bar{background:var(--warning-light);border-bottom:1px solid var(--warning-border);flex-wrap:wrap;align-items:center;gap:14px;padding:10px 16px;display:flex}.broadcast-status{cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--text-secondary);align-items:center;gap:9px;font-size:.82rem;font-weight:700;display:inline-flex}.broadcast-status input:checked+.broadcast-status-track{background:var(--success)}.broadcast-status input:checked+.broadcast-status-track .broadcast-status-thumb{transform:translate(20px)}.broadcast-status-text.is-sent{color:var(--success-text)}.broadcast-status-wide{border:1px solid var(--border-color);border-radius:var(--radius-full);background:var(--bg-subtle);margin-top:18px;padding:8px 12px}.broadcast-whatsapp{flex:1;justify-content:center;align-items:center;padding:24px;display:flex}.broadcast-whatsapp-card{text-align:center;background:var(--bg-card);border:1px solid var(--border-color);width:100%;max-width:440px;box-shadow:var(--shadow-sm);border-radius:16px;padding:28px 24px}.broadcast-whatsapp-icon{font-size:34px;line-height:1}.broadcast-whatsapp-name{margin:10px 0 2px;font-size:1.05rem}.broadcast-whatsapp-phone{color:var(--text-secondary);margin:0 0 18px;font-size:.9rem}.broadcast-whatsapp-hint{color:var(--text-secondary);margin:16px 0 0;font-size:.78rem;line-height:1.45}@media (width<=720px){.support-mode-bar{align-items:flex-start}.broadcast-progress{margin-left:0}.broadcast-chat-bar{gap:8px;padding:10px 12px}}#broadcast-text{resize:vertical;height:auto;min-height:152px;padding:10px 12px;font-family:inherit;font-size:.86rem;line-height:1.5}.broadcast-cooldown{font-variant-numeric:tabular-nums;border-radius:var(--radius-full);background:var(--danger-light);color:var(--danger-text);border:1px solid var(--danger-border);padding:3px 10px;font-weight:700}.broadcast-channel-stats{flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}.broadcast-stat{font-variant-numeric:tabular-nums;border-radius:var(--radius-full);white-space:nowrap;border:1px solid #0000;padding:3px 10px;font-weight:700}.broadcast-stat-tg{color:#075985;background:#0088cc1f;border-color:#0088cc59}.broadcast-stat-wa{color:#065f46;background:#25d36629;border-color:#25d36673}.chart-hint{color:var(--text-secondary);margin:4px 0 0;font-size:.75rem}.row-inline{flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}.finance-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.finance-months{grid-template-columns:1fr 1fr;gap:14px;display:grid}.finance-month{border:1px solid var(--border-color);border-radius:var(--radius-md);background:#fff;padding:14px 16px}.finance-month.past{background:linear-gradient(180deg, var(--bg-subtle), #fff 90px)}.finance-month.current{border-color:var(--primary-border);background:linear-gradient(180deg, var(--primary-light), #fff 90px)}.finance-month.wide{grid-column:1/-1}.finance-month-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;display:flex}.finance-month-name{font-size:.86rem;font-weight:700}.finance-kv{border-bottom:1px dashed var(--border-light);color:var(--text-secondary);justify-content:space-between;align-items:baseline;gap:10px;padding:6px 0;font-size:.82rem;display:flex}.finance-kv:last-child{border-bottom:none}.finance-kv strong{color:var(--text-main);font-variant-numeric:tabular-nums}.finance-kv strong.big{font-size:1.05rem}.finance-legend{color:var(--text-secondary);flex-wrap:wrap;gap:14px;margin:14px 0 0;font-size:.75rem;display:flex}.finance-legend i{border-radius:3px;width:10px;height:10px;margin-right:5px;display:inline-block}.finance-legend .legend-past{background:#cbd5e1}.finance-legend .legend-current{background:var(--primary)}.finance-chart{border-bottom:1px solid var(--border-color);align-items:flex-end;gap:2px;height:130px;margin-top:8px;padding-top:8px;display:flex}.finance-bar-group{flex:1;justify-content:center;align-items:flex-end;gap:1px;min-width:0;height:100%;display:flex}.finance-bar{border-radius:3px 3px 0 0;width:50%;max-width:8px;min-height:2px}.finance-bar.past{background:#cbd5e1}.finance-bar.current{background:var(--primary)}.finance-chart-labels{color:var(--text-muted);gap:2px;margin-top:4px;font-size:.62rem;display:flex}.finance-chart-labels span{text-align:center;flex:1}@media (width<=720px){.finance-months{grid-template-columns:1fr}.finance-chart{height:96px}}.visit-count{color:#17633f;vertical-align:middle;white-space:nowrap;background:#e7f6ed;border-radius:999px;align-items:center;gap:3px;margin-left:6px;padding:2px 7px;font-size:11px;font-weight:700;line-height:1.4;display:inline-flex}
