.login-container{display:flex;justify-content:center;align-items:center;height:100vh;background:radial-gradient(circle at top left,#1e293b,var(--bg-color))}.login-card{background:var(--glass-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--glass-border);padding:2rem 3rem;border-radius:1rem;box-shadow:0 4px 30px rgba(0,0,0,.5);text-align:center;max-width:400px;width:100%}.login-card h1{margin-bottom:2rem;font-size:2rem;background:var(--primary-gradient);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.admin-page{overflow-y:auto;background:radial-gradient(circle at top right,#1e293b,var(--bg-color))}.admin-container{max-width:1000px;margin:1rem auto;padding:0 1rem;display:flex;flex-direction:column;gap:1.5rem}.admin-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:rgba(15,23,42,.45);backdrop-filter:blur(25px) saturate(200%);-webkit-backdrop-filter:blur(25px) saturate(200%);border:1px solid rgba(255,255,255,.08);border-radius:1rem;margin-bottom:.5rem;position:relative;z-index:1000;box-shadow:0 8px 32px 0 rgba(0,0,0,.2)}.header-branding h1{margin:0;font-size:1.5rem;background:var(--primary-gradient);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.header-subtitle{font-size:.9rem;color:var(--secondary-color);margin-top:2px}.admin-card{background:var(--glass-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--glass-border);padding:2rem;border-radius:1rem;box-shadow:0 4px 30px rgba(0,0,0,.3);margin-bottom:2rem}.admin-card h2{margin-top:0;margin-bottom:1.5rem;color:var(--accent-color);font-size:1.5rem}.admin-form{display:flex;flex-wrap:wrap;gap:1.5rem;align-items:flex-end}.admin-form .form-group{flex:1 1 250px;margin-bottom:0}.admin-form .btn{flex:0 0 auto;width:auto;padding:.75rem 2.5rem;height:48px}.admin-form-grid{display:flex;flex-direction:column;gap:1.5rem}.admin-form-grid .form-row{display:flex;gap:1.5rem;flex-wrap:wrap}.admin-form-grid .form-row .form-group{flex:1 1 200px}.admin-form-grid .form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;background:rgba(255,255,255,.03);padding:1.25rem;border-radius:.75rem;border:1px solid var(--glass-border)}.admin-form-grid .btn{align-self:flex-start;margin-top:.5rem}.table-container{overflow-x:auto}#coachesTable,#plansTable{width:100%;border-collapse:collapse;margin-top:1rem}#coachesTable td,#coachesTable th,#plansTable td,#plansTable th{padding:1rem;text-align:left;border-bottom:1px solid var(--glass-border)}#coachesTable th,#plansTable th{color:var(--secondary-color);font-weight:600}.coach-admin-container{display:flex;flex-direction:column;height:100vh;overflow:hidden;background:radial-gradient(circle at top right,#1e293b,var(--bg-color))}.coach-admin-content-wrapper{display:flex;flex:1;overflow:hidden;height:calc(100vh - 160px)}.upcoming-sessions-sidebar{width:300px;background:rgba(15,23,42,.95);border-right:1px solid var(--glass-border);padding:1.5rem;display:flex;flex-direction:column;overflow-y:auto;position:relative;z-index:10}.upcoming-sessions-sidebar h2{font-size:1.1rem;margin-bottom:1rem;color:var(--accent-color)}.upcoming-sessions-container{flex:1;overflow-y:auto;padding-top:4px}.upcoming-session-item{background:rgba(255,255,255,.05);border-radius:.75rem;padding:1rem;margin-bottom:.75rem;cursor:pointer;transition:background .2s,transform .2s;border:1px solid transparent}.upcoming-session-item:hover{background:rgba(255,255,255,.1);border-color:var(--primary-color);transform:translateY(-2px)}.upcoming-session-item .session-client{font-size:.8rem;color:var(--secondary-color);margin-bottom:.25rem}.upcoming-session-item .session-title{font-weight:600;margin-bottom:.5rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.upcoming-session-item .session-time{font-size:.85rem;color:var(--accent-color)}.upcoming-session-item .visibility-toggle{margin-top:.75rem;display:flex;justify-content:space-between;align-items:center;font-size:.75rem}.pagination-controls{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--glass-border)}.pagination-controls span{font-size:.85rem;color:var(--secondary-color);font-weight:500}.pagination-buttons{display:flex;justify-content:center;align-items:center;gap:1rem;width:100%}.pagination-buttons .btn{background:rgba(255,255,255,.05);border:1px solid var(--glass-border);color:var(--text-color);border-radius:.5rem;transition:all .2s ease}.pagination-buttons .btn:hover:not(:disabled){background:var(--primary-gradient);border-color:transparent;color:#fff;box-shadow:0 4px 12px rgba(59,130,246,.3);transform:translateY(-1px);opacity:1}.pagination-buttons .btn:disabled{background:rgba(255,255,255,.02)!important;border-color:rgba(255,255,255,.08)!important;color:rgba(255,255,255,.15)!important;opacity:.5!important;cursor:not-allowed;transform:none}.client-list-section{flex:1;overflow-y:auto;padding:1.5rem;display:flex;flex-direction:column;align-items:center}.client-list-header{width:100%;max-width:800px;display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;gap:1rem;flex-wrap:wrap}.search-container{display:flex;align-items:center;gap:.75rem;flex:1;max-width:400px}.search-input{width:100%;padding:.5rem 1rem;border-radius:.75rem;border:1px solid var(--glass-border);background:rgba(255,255,255,.03);color:var(--text-color);font-size:.9rem;outline:0;transition:all .2s ease}.search-input:focus{background:rgba(255,255,255,.08);border-color:var(--accent-color,#06b6d4);box-shadow:0 0 10px rgba(6,182,212,.2)}.reset-search-btn{white-space:nowrap;padding:.5rem 1rem!important;font-size:.85rem!important;border-radius:.75rem!important;height:auto!important;width:auto!important;line-height:normal!important;background:rgba(255,255,255,.05)!important;border:1px solid var(--glass-border)!important;color:var(--text-color)!important;transition:all .2s ease!important}.reset-search-btn:hover{background:var(--primary-gradient)!important;border-color:transparent!important;color:#fff!important;box-shadow:0 4px 12px rgba(59,130,246,.3)!important;transform:translateY(-1px)!important}.reset-search-btn:active{transform:translateY(0)!important}.sort-clients-btn{display:flex;align-items:center;justify-content:center;padding:.5rem!important;border-radius:.75rem!important;height:38px!important;width:38px!important;min-width:38px!important;background:rgba(255,255,255,.05)!important;border:1px solid var(--glass-border)!important;color:var(--text-color)!important;cursor:pointer;transition:all .2s ease!important}.sort-clients-btn:hover{background:rgba(255,255,255,.1)!important;border-color:rgba(255,255,255,.2)!important;transform:translateY(-1px)!important}.sort-clients-btn:active{transform:translateY(0)!important}.sort-clients-btn.active{background:var(--glass-bg)!important;border-color:var(--accent-color,#06b6d4)!important;color:var(--accent-color,#06b6d4)!important;box-shadow:0 2px 10px rgba(0,0,0,.2)!important}.sort-clients-btn svg{transition:transform .2s ease,fill .2s ease,stroke .2s ease}.sort-clients-btn:hover svg{transform:scale(1.1)}.org-badge{display:inline-flex;align-items:center;gap:.25rem}.org-icon{display:inline-block;width:14px;height:14px;background-color:currentColor;-webkit-mask:url("../assets/company.svg") no-repeat center/contain;mask:url("../assets/company.svg") no-repeat center/contain}.filter-btn-group{display:flex;gap:.75rem;background:rgba(255,255,255,.03);padding:.4rem;border-radius:.75rem;border:1px solid var(--glass-border)}.filter-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:.5rem;border:1px solid transparent;background:0 0;color:var(--secondary-color);font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s ease}.filter-btn:hover{background:rgba(255,255,255,.05);color:var(--text-color)}.filter-btn.active{background:var(--glass-bg);border-color:var(--glass-border);color:var(--accent-color);box-shadow:0 2px 10px rgba(0,0,0,.2)}.filter-btn img{width:16px;height:16px;opacity:.6;transition:opacity .2s}.filter-btn.active img{opacity:1;filter:drop-shadow(0 0 2px var(--accent-color))}.client-list-container{width:100%;max-width:800px;display:flex;flex-direction:column;gap:1rem;padding-bottom:80px}.client-item{display:flex;justify-content:space-between;align-items:center;background:rgba(255,255,255,.05);border:1px solid var(--glass-border);padding:1rem 1.5rem;border-radius:.75rem;transition:transform .2s,background .2s}.client-item:hover{transform:translateY(-2px);background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.3)}.client-info span{font-size:1.1rem;font-weight:500}.client-actions{display:flex;gap:.75rem;align-items:center}.client-actions .btn{height:34px;padding:0 .8rem;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box}.client-actions .btn-admin-action{width:34px;height:34px;padding:0;flex-shrink:0}.status-actions{display:flex;gap:.5rem;margin-right:.5rem}.status-icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:.5rem;cursor:pointer;transition:all .2s ease;background:rgba(255,255,255,.03);border:1px solid transparent}.status-icon:hover{background:rgba(255,255,255,.08);transform:scale(1.1)}.status-icon img{width:18px;height:18px;opacity:.4;transition:opacity .2s,filter .2s}.status-icon.active img{opacity:1}.status-icon.starred.active img{filter:drop-shadow(0 0 4px #fbbf24)}.status-icon.archived.active img{filter:drop-shadow(0 0 4px #94a3b8)}.admin-tabs{display:flex;gap:0;margin:0 2rem;border-bottom:1px solid var(--glass-border)}.tab-btn{padding:.75rem 1.5rem;background:0 0;border:none;border-bottom:2px solid transparent;color:var(--secondary-color);font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s ease}.tab-btn:hover{color:var(--text-color)}.tab-btn.active{color:var(--accent-color);border-bottom-color:var(--accent-color)}.tab-content{display:none}.tab-content.active{display:block}.form-hint{display:block;color:var(--secondary-color);font-size:.8rem;margin-top:.25rem}.fixed-bottom-action{position:fixed;bottom:0;left:0;width:100%;padding:1.5rem;display:flex;justify-content:center;background:linear-gradient(to top,rgba(15,23,42,.95),transparent);pointer-events:none}.create-client-btn{pointer-events:auto;max-width:300px;box-shadow:0 4px 20px rgba(59,130,246,.4)}@media (max-width:600px){.coach-admin-header{padding:1rem}.client-list-section{padding:1rem}.admin-tabs{margin:0 1rem}.tab-btn{padding:.6rem 1rem;font-size:.85rem}}.admin-card .table-container{background:rgba(15,23,42,.4);border-radius:.75rem;padding:.5rem;border:1px solid var(--glass-border)}#coachesTable,#plansTable{border-collapse:separate;border-spacing:0 0.5rem;margin-top:0}#coachesTable th,#plansTable th{border-bottom:none;padding-bottom:1rem;font-size:.8rem;text-transform:uppercase;letter-spacing:1px;color:var(--secondary-color)}#coachesTable tbody tr,#plansTable tbody tr{background:rgba(255,255,255,.03);border-radius:.5rem;transition:transform .2s,background .2s}#coachesTable tbody tr:hover,#plansTable tbody tr:hover{background:rgba(255,255,255,.06);transform:scale(1.002)}#coachesTable td,#plansTable td{border-bottom:none;padding:1.25rem 1rem}#coachesTable td:first-child,#plansTable td:first-child{border-top-left-radius:.5rem;border-bottom-left-radius:.5rem}#coachesTable td:last-child,#plansTable td:last-child{border-top-right-radius:.5rem;border-bottom-right-radius:.5rem}.coach-identity{display:flex;align-items:center;gap:1rem}.coach-avatar{width:36px;height:36px;background:var(--primary-gradient);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.9rem;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.2)}.coach-info-stack{display:flex;flex-direction:column}.coach-name{font-weight:600;font-size:.95rem;color:var(--text-color)}.coach-username{font-size:.8rem;color:var(--secondary-color)}.badge{padding:.25rem .75rem;border-radius:2rem;font-size:.75rem;font-weight:600;display:inline-flex;align-items:center;gap:.4rem;border:1px solid transparent}.badge-credits{background:rgba(16,185,129,.1);color:#10b981;border-color:rgba(16,185,129,.2)}.badge-limits{background:rgba(59,130,246,.1);color:#3b82f6;border-color:rgba(59,130,246,.2)}.badge-prepaid{background:rgba(245,158,11,.1);color:#f59e0b;border-color:rgba(245,158,11,.2)}.badge-outline{background:0 0;color:var(--secondary-color);border-color:var(--glass-border);font-weight:500}.usage-metric{display:flex;flex-direction:column;gap:.25rem}.usage-label{font-size:.75rem;color:var(--secondary-color);display:flex;justify-content:space-between}.usage-bar-bg{height:6px;background:rgba(255,255,255,.1);border-radius:10px;overflow:hidden;width:100px}.usage-bar-fill{height:100%;background:var(--accent-color);border-radius:10px}.usage-bar-fill.warning{background:#f59e0b}.usage-bar-fill.danger{background:#ef4444}.action-group{display:flex;gap:.5rem;justify-content:flex-end}.btn-admin-action{background:rgba(255,255,255,.05);border:1px solid var(--glass-border);transition:all .2s}.btn-admin-action:hover{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.3);transform:translateY(-2px)}.btn-admin-action.btn-danger{background:#ef4444;border-color:transparent}.btn-admin-action.btn-danger:hover:not(:disabled){background:#dc2626;border-color:transparent;box-shadow:0 0 15px rgba(239,68,68,.4)}.extend-btn-group{display:flex;gap:.35rem;margin-top:.5rem}.btn-extend{padding:.2rem .5rem;font-size:.7rem;font-weight:600;text-transform:uppercase;background:rgba(255,255,255,.05);border:1px solid var(--glass-border);border-radius:4px;color:var(--secondary-color);cursor:pointer;transition:all .2s ease;min-width:32px;text-align:center}.btn-extend:hover{background:var(--primary-gradient);border-color:transparent;color:#fff;transform:translateY(-1px);box-shadow:0 2px 8px rgba(59,130,246,.3)}.btn-extend:active{transform:translateY(0)}.credit-actions-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;margin-top:1rem}.credit-actions-grid .btn{width:100%!important;margin:0}.admin-announcement-list{display:flex;flex-direction:column;gap:1.25rem}.announcement-item-card{background:rgba(255,255,255,.03);border:1px solid var(--glass-border);border-radius:1rem;padding:1.5rem;transition:all .2s ease}.announcement-item-card:hover{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.2);transform:translateY(-2px)}.announcement-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.announcement-card-title-group{display:flex;flex-direction:column;gap:.5rem}.announcement-card-title-group h3{margin:0;font-size:1.1rem;font-weight:600;color:var(--text-color)}.announcement-card-date{font-size:.85rem;color:var(--text-secondary);font-weight:500}.announcement-card-body{color:var(--secondary-color);font-size:.95rem;line-height:1.6;margin-bottom:1.5rem;white-space:pre-wrap}.announcement-card-actions{display:flex;gap:.75rem}.announcement-card-actions .btn{width:110px;padding:.4rem 0;font-size:.75rem;justify-content:center;text-align:center}.announcement-lang-tabs{display:flex;gap:.5rem;margin-bottom:1rem}.lang-tab-btn{background:rgba(255,255,255,.05);border:1px solid var(--glass-border);color:var(--secondary-color);padding:.5rem 1rem;border-radius:.5rem;cursor:pointer;font-size:.85rem;transition:all .2s}.lang-tab-btn.active{background:var(--primary-gradient);color:#fff;border-color:transparent}.lang-content{display:none;flex-direction:column;gap:1.5rem}.lang-content.active{display:flex}.system-dashboard{display:flex;flex-direction:column;gap:2rem;padding:1rem 0}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(450px,1fr));gap:1.5rem}.chart-card{margin-bottom:0!important;padding:1.5rem!important}.chart-card h2{font-size:1.1rem!important;margin-bottom:1.5rem!important;color:var(--secondary-color)!important}.chart-container{position:relative;height:300px;width:100%}.log-card{display:flex;flex-direction:column;gap:1rem}.log-viewer{background:rgba(0,0,0,.3);border-radius:.75rem;padding:1.25rem;border:1px solid var(--glass-border);max-height:500px;overflow-y:auto;font-family:'JetBrains Mono','Fira Code',monospace;font-size:.85rem;line-height:1.5;color:#e2e8f0}.log-viewer pre{margin:0;white-space:pre-wrap;word-break:break-all}.health-card{border-left:4px solid #10b981;margin-bottom:2rem!important;transition:border-color .3s ease}.health-card.error{border-left-color:#ef4444}.health-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.health-header h2{margin:0!important}.health-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem}.health-item{display:flex;flex-direction:column;gap:.5rem}.health-item .label{font-size:.8rem;color:var(--secondary-color);text-transform:uppercase;letter-spacing:1px;font-weight:600}.health-item .value{font-size:1.1rem;font-weight:600;color:var(--text-color)}.status-ok{color:#10b981!important}.status-error{color:#ef4444!important}@media (max-width:1000px){.stats-grid{grid-template-columns:1fr}}.active-users-counter{display:flex;align-items:center;gap:.5rem;background:rgba(255,255,255,.05);border:1px solid var(--glass-border);padding:.4rem .8rem;border-radius:2rem;font-size:.85rem;margin-right:.5rem}.active-users-counter .active-dot{width:8px;height:8px;background-color:#10b981;border-radius:50%;display:inline-block;box-shadow:0 0 8px #10b981;animation:activeUsersPulse 2s infinite}.active-users-counter .active-label{color:var(--secondary-color);font-weight:500}@keyframes activeUsersPulse{0%{transform:scale(.95);box-shadow:0 0 0 0 rgba(16,185,129,.7)}70%{transform:scale(1);box-shadow:0 0 0 6px rgba(16,185,129,0)}100%{transform:scale(.95);box-shadow:0 0 0 0 rgba(16,185,129,0)}}.health-grid+.health-grid{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--glass-border)}