.login-page{min-height:var(--app-vh, 100vh);background-color:#f5f7f5;display:flex;align-items:center;justify-content:center;padding:calc(28px + env(safe-area-inset-top,0px)) calc(28px + env(safe-area-inset-right,0px)) calc(28px + env(safe-area-inset-bottom,0px)) calc(28px + env(safe-area-inset-left,0px))}.login-card{background:#fff;width:100%;max-width:540px;padding:48px 42px;border-radius:24px;border:1px solid #e8eeea;box-shadow:0 20px 40px #0f172a0f;text-align:center}.login-logo{width:72px;height:72px;margin:0 auto 24px;border-radius:50%;background:#1b8f5a;display:grid;place-items:center}.login-logo svg{width:34px;height:34px}.login-title{margin:0;font-size:2.15rem;font-weight:700;color:#1b8f5a;letter-spacing:-.03em}.login-subtitle{margin:12px auto 36px;max-width:360px;font-size:1rem;color:#6b7280;line-height:1.7}.login-form{text-align:left}.login-form label{display:block;margin-bottom:8px;font-size:.95rem;color:#334155;font-weight:600}.login-form input{width:100%;padding:16px;margin-bottom:22px;border-radius:14px;border:1px solid #d9e2da;font-size:.98rem;color:#111827;background:#fafafa}.password-field{position:relative;margin-bottom:22px}.password-field input{margin-bottom:0;padding-right:92px}.password-toggle{position:absolute;top:50%;right:12px;transform:translateY(-50%);border:none;background:transparent;color:#1b8f5a;font-size:.9rem;font-weight:700;cursor:pointer;padding:6px 8px}.password-toggle:hover{color:#167349}.login-form input:focus{outline:2px solid rgba(27,143,90,.16);border-color:#1b8f5a}.btn-primary{width:100%;padding:16px 18px;border-radius:14px;border:none;background:#1b8f5a;color:#fff;font-size:1rem;font-weight:700;cursor:pointer;transition:background-color .2s ease}.btn-primary:hover{background:#167349}.login-demo{margin-top:26px;padding:20px;background:#edf6ef;border-radius:18px;border:1px solid #e6efe8}.demo-title{margin:0 0 14px;font-size:.95rem;font-weight:700;color:#0f172a}.demo-row{display:flex;justify-content:space-between;gap:16px;margin-bottom:10px;font-size:.96rem;color:#334155}.demo-row strong{color:#0f172a}.demo-note{margin-top:10px;font-size:.92rem;color:#475569}.login-error{margin-top:24px;color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:14px;padding:14px 16px;font-size:.95rem}.login-success{margin-top:8px;margin-bottom:8px;color:#15803d;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:14px;padding:14px 16px;font-size:.95rem}.btn-link{display:block;width:100%;margin-top:18px;background:none;border:none;color:#1b8f5a;font-size:.93rem;font-weight:600;cursor:pointer;text-align:center;padding:4px 0}.btn-link:hover{color:#167349;text-decoration:underline}@media (max-width: 540px){.login-card{padding:32px 24px}}.dashboard-page{--brand-primary: #1b8f5a;--brand-primary-strong: #166b43;--brand-page-bg: #f5f7f5;--brand-header-bg: #ffffff;--brand-header-border: #e8eeea;--brand-soft: #e6f4ec;--brand-secondary-bg: #f2fbf4;--brand-secondary-hover-bg: #e7f7ea;--brand-secondary-border: rgba(27, 143, 90, .2);--brand-secondary-text: #166b43;display:flex;flex-direction:column;min-height:var(--app-vh, 100vh);background:var(--brand-page-bg)}.dashboard-header{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:calc(24px + env(safe-area-inset-top,0px)) calc(32px + env(safe-area-inset-right,0px)) 24px calc(32px + env(safe-area-inset-left,0px));background:var(--brand-header-bg);border-bottom:1px solid var(--brand-header-border);position:sticky;top:0;z-index:10}.dashboard-brand{display:flex;align-items:center;gap:16px;background:none;border:none;padding:0;cursor:pointer;text-align:left;border-radius:12px}.dashboard-brand:hover .brand-name{color:var(--brand-primary)}.brand-mark-wrap{display:flex;align-items:center;gap:10px}.brand-mark{width:58px;height:58px;border-radius:18px;background:var(--brand-soft);display:grid;place-items:center}.brand-mark svg{width:26px;height:26px;color:var(--brand-primary)}.brand-partner-mark{width:42px;height:42px;border-radius:14px;border:1px solid var(--brand-header-border);background:#fff;display:grid;place-items:center;overflow:hidden;color:var(--brand-primary);font-weight:800;font-size:.8rem;letter-spacing:.04em}.brand-partner-mark img{width:100%;height:100%;object-fit:contain}.brand-school-label{margin:0;font-size:.78rem;color:var(--brand-primary);font-weight:700;letter-spacing:.02em}.brand-copy{display:grid;gap:4px}.brand-name{margin:0;font-size:1.2rem;font-weight:700;color:#111827}.brand-subtitle{margin:0;font-size:.96rem;color:#4b5563}.dashboard-actions{display:flex;align-items:center;gap:12px}.header-user{min-width:120px;padding:10px 14px;border-radius:999px;border:1px solid #e5e7eb;background:#fff;color:#111827;font-size:.95rem;text-align:center}.btn-secondary,.btn-ghost{border-radius:999px;padding:12px 18px;font-size:.95rem;font-weight:600;cursor:pointer;transition:background-color .2s ease,border-color .2s ease}.btn-secondary{border:1px solid var(--brand-secondary-border);background:var(--brand-secondary-bg);color:var(--brand-secondary-text)}.btn-secondary:hover{background:var(--brand-secondary-hover-bg)}.btn-ghost{border:1px solid #d1d5db;background:#fff;color:#334155}.btn-ghost:hover{background:#f8faf8}.dashboard-main{flex:1;padding:32px;max-width:1180px;margin:0 auto}.dashboard-footer{border-top:1px solid #e2e8f0;background:#f8fbf8;padding:14px calc(32px + env(safe-area-inset-right,0px)) calc(14px + env(safe-area-inset-bottom,0px)) calc(32px + env(safe-area-inset-left,0px))}.dashboard-footer-content{max-width:1180px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:12px;color:#475569;font-size:.86rem}.dashboard-footer-brand{display:inline-flex;align-items:center;gap:8px}.dashboard-footer-logo{width:22px;height:22px;display:inline-grid;place-items:center;color:var(--brand-primary)}.dashboard-footer-logo svg{width:100%;height:100%}.dashboard-footer-name,.dashboard-footer-copy{margin:0;line-height:1}.dashboard-footer-name{font-weight:700;color:#1f2937}.dashboard-footer-copy{color:#64748b}.panel-card{background:#fff;border:1px solid #e8eeea;border-radius:28px;box-shadow:0 18px 40px #0f172a0d;padding:28px}.upload-panel{position:relative}@media (max-width: 768px){.dashboard-footer{padding:12px 16px}.dashboard-footer-content{justify-content:center;gap:10px}.dashboard-footer-logo{width:18px;height:18px}.dashboard-footer-name,.dashboard-footer-copy{font-size:.8rem}}.upload-panel-highlighted{border-color:color-mix(in srgb,var(--brand-primary, #1b8f5a) 22%,transparent);background:radial-gradient(circle at top right,color-mix(in srgb,var(--brand-primary, #1b8f5a) 14%,transparent),transparent 36%),linear-gradient(180deg,#fff,#f7fcf8);box-shadow:0 20px 44px color-mix(in srgb,var(--brand-primary, #1b8f5a) 12%,transparent)}.upload-panel-highlighted:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;padding:1px;background:linear-gradient(135deg,color-mix(in srgb,var(--brand-primary, #1b8f5a) 40%,transparent),color-mix(in srgb,var(--brand-primary, #1b8f5a) 18%,transparent));mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}.upload-panel-toggle{width:100%;padding:0;text-align:left}.upload-panel-header{margin-bottom:0}.upload-panel-cta{display:grid;justify-items:end;gap:8px;flex-shrink:0}.upload-panel-badge{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;background:color-mix(in srgb,var(--brand-primary, #1b8f5a) 12%,transparent);color:var(--brand-primary-strong, #166b43);font-size:.8rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.upload-panel-action{font-size:.92rem;font-weight:700;color:#14532d}.upload-panel-chevron{width:40px;height:40px;border-radius:999px;border:1px solid color-mix(in srgb,var(--brand-primary, #1b8f5a) 18%,transparent);background:#ffffffd1;display:grid;place-items:center;font-size:1.2rem;color:var(--brand-primary-strong, #166b43);transition:transform .2s ease,background-color .2s ease}.upload-panel-chevron-open{transform:rotate(180deg)}.upload-panel-toggle:hover .upload-panel-chevron{background:#fff}.upload-panel-form{margin-top:22px;padding-top:22px;border-top:1px solid color-mix(in srgb,var(--brand-primary, #1b8f5a) 12%,transparent)}.panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:24px}.panel-header-compact{margin-bottom:18px}.panel-eyebrow{margin:0 0 10px;font-size:.85rem;font-weight:700;color:var(--brand-primary, #1b8f5a);text-transform:uppercase;letter-spacing:.14em}.panel-card h2{margin:0;font-size:1.7rem;color:#111827;line-height:1.15}.panel-caption{margin:10px 0 0;font-size:.96rem;color:#475569;line-height:1.7}.student-page,.coach-page{padding-bottom:40px}.student-grid{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(0,1fr);gap:24px}.student-secondary-stack{display:grid;gap:18px;align-content:start}.history-panel{display:flex;flex-direction:column}.history-panel-collapsible{border-color:#e5ece7;box-shadow:0 12px 30px #0f172a0a}.history-panel-toggle{width:100%;padding:0;text-align:left}.history-panel-header{margin-bottom:0}.history-panel-cta{display:flex;align-items:center;gap:8px;flex-shrink:0}.card-icon{display:grid;place-items:center;color:#64748b;opacity:.7}.history-panel-toggle:hover .card-icon,.student-calendar-toggle:hover .card-icon,.payments-toggle:hover .card-icon{opacity:1;color:#334155}.history-panel-chevron{width:36px;height:36px;border-radius:999px;border:1px solid #d9e4dc;background:#f8fbf9;color:#334155;display:grid;place-items:center;transition:transform .2s ease,background-color .2s ease}.history-panel-chevron-open{transform:rotate(180deg)}.history-panel-toggle:hover .history-panel-chevron{background:#f1f7f3}.history-panel .tab-list{margin-top:18px}.student-calendar-panel{border-color:#e5ece7;box-shadow:0 10px 24px #0f172a0a}.student-calendar-toggle{width:100%;padding:0;text-align:left}.student-calendar-header{margin-bottom:0}.student-calendar-summary-day{text-transform:capitalize}.student-calendar-summary-classes{margin-top:6px}.student-calendar-body{margin-top:18px;padding-top:18px;border-top:1px solid #e9f0eb}.payments-panel{border-color:#e5ece7;box-shadow:0 10px 24px #0f172a0a}.payments-toggle{width:100%;padding:0;text-align:left}.payments-header{margin-bottom:0}.payments-body{margin-top:18px;padding-top:18px;border-top:1px solid #e9f0eb;display:grid;gap:14px}.payments-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.payments-stat-card{border:1px solid #e5ece7;border-radius:12px;background:#f8fbf9;padding:12px 16px;display:grid;gap:4px}.payments-stat-label{margin:0;color:#64748b;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.payments-stat-value{margin:0;color:#0f172a;font-size:1.05rem;font-weight:700}.payments-stat-value-compact{font-size:.9rem;line-height:1.4}.payments-empty{margin:0;color:#64748b}.payments-list{display:grid;gap:10px}.payments-item{border:1px solid #e6eee8;border-radius:14px;background:#fff;padding:14px 20px;display:flex;align-items:center;justify-content:space-between;gap:14px}.payments-item-main{min-width:0}.payments-item-concept{margin:0;color:#111827;font-weight:700}.payments-item-meta{margin:4px 0 0;color:#64748b;font-size:.86rem}.payments-item-amount{margin:0;font-weight:800;color:var(--brand-primary-strong, #166b43);white-space:nowrap}.history-panel .tab-list,.coach-topbar{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:24px}.tab-pill{padding:12px 18px;border-radius:999px;border:1px solid transparent;background:#f4f8f6;color:#334155;cursor:pointer;font-size:.95rem;transition:background-color .2s ease,border-color .2s ease}.tab-pill:hover{background:#eef5ef}.tab-active{background:#fff;border-color:#d1e7d1;color:#0f172a;box-shadow:0 4px 18px #0f172a0f}.history-card,.stat-card,.coach-student-row{border-radius:22px;border:1px solid #eef2f2;background:#fff}.history-card{padding:22px}.history-card-top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}.history-date{font-size:.95rem;color:#475569}.status-pill{display:inline-flex;align-items:center;justify-content:center;padding:8px 14px;border-radius:999px;font-size:.82rem;font-weight:700}.status-success{color:#105a32;background:#dceddb}.status-pending{color:#6b4226;background:#f8efe3}.status-pending-light{color:#5d7a5b;background:#eef3ec}.history-tags{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:24px}.tag-pill{display:inline-flex;align-items:center;padding:8px 14px;border-radius:999px;background:#f2f7f2;color:#334155;font-size:.9rem}.btn-secondary,.btn-ghost,.btn-primary{font-family:inherit}.btn-secondary{width:100%;padding:14px 16px;border-radius:16px;border:1px solid #d1e7d1;background:#f4fbf4;color:#14432f;font-weight:700}.btn-secondary:hover{background:#e8f5e8}.btn-full{width:100%}.video-form{display:grid;gap:20px}.form-label{display:block;margin-bottom:10px;font-size:.95rem;color:#334155;font-weight:600}.file-field,.form-group select,.form-group input{width:100%}.file-field{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:60px;padding:16px 18px;background:#f8faf8;border:1px solid #d9e5de;border-radius:16px;cursor:pointer;color:#334155}.file-field input{position:absolute;opacity:0;pointer-events:none}.file-field span{color:#334155}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:18px}.form-group{display:grid;gap:10px}.form-group select{width:100%;padding:16px 18px;border-radius:14px;border:1px solid #d9e2da;background:#fafafa;color:#111827;font-size:.95rem}.form-group select:focus,.file-field:focus-within{outline:2px solid color-mix(in srgb,var(--brand-primary, #1b8f5a) 16%,transparent);border-color:var(--brand-primary, #1b8f5a)}.stat-card{padding:24px}.stat-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.stat-icon{width:44px;height:44px;border-radius:16px;background:#e8f5ec;display:grid;place-items:center;color:var(--brand-primary-strong, #166b43);font-size:1.1rem}.stat-label{font-size:.95rem;color:#475569;font-weight:700}.stat-value{margin:0;font-size:2.2rem;font-weight:700;color:#111827}.stat-description{margin-top:6px;color:#64748b;font-size:.96rem}.coach-page{display:grid;gap:28px}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px}.coach-panel{display:grid;gap:20px}.coach-topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.coach-analysis-layout{display:grid;grid-template-columns:minmax(300px,1fr) minmax(0,2fr);gap:24px;align-items:start}.coach-analysis-main{display:grid;gap:20px}.coach-students-sidebar,.coach-composer-panel,.coach-requests-panel,.coach-calendar-panel,.coach-empty-state,.coach-stat-card{display:grid;gap:16px}.coach-inbox-back{display:none}.coach-sidebar-refresh{width:100%}.coach-inbox-filters{display:flex;flex-wrap:wrap;gap:8px}.coach-students-search{position:relative;display:flex;align-items:center}.coach-students-search-icon{position:absolute;left:14px;width:16px;height:16px;color:#6b8678;pointer-events:none}.coach-students-search input{width:100%;border:1px solid #d7e4db;background:#f5f9f6;border-radius:999px;padding:10px 16px 10px 38px;font-family:inherit;font-size:.9rem;color:#1f3a2c;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease;outline:none}.coach-students-search input::placeholder{color:#8aa298}.coach-students-search input:hover{border-color:#bfd7c5;background:#fff}.coach-students-search input:focus{border-color:var(--brand-primary, #1b8f5a);background:#fff;box-shadow:0 0 0 3px color-mix(in srgb,var(--brand-primary, #1b8f5a) 18%,transparent)}.coach-students-search input::-webkit-search-cancel-button{-moz-appearance:none;appearance:none;-webkit-appearance:none}.coach-filter-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.coach-filter-group{display:inline-flex;align-items:center;flex-wrap:wrap;gap:6px;padding:4px 6px 4px 12px;border:1px solid #d7e4db;border-radius:999px;background:#f5f9f6}.coach-filter-group-label{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#486156;margin-right:2px}.coach-filter-group-remove{border:none;background:transparent;color:#6b8678;font-size:1rem;line-height:1;width:22px;height:22px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s ease,color .15s ease}.coach-filter-group-remove:hover{background:color-mix(in srgb,var(--brand-primary, #1b8f5a) 12%,transparent);color:var(--brand-primary, #1b8f5a)}.coach-filter-add{position:relative;display:inline-flex}.coach-filter-add-button{border:1px dashed #bfd7c5;background:#fff;border-radius:999px;padding:6px 14px;font-family:inherit;font-size:.85rem;font-weight:600;color:var(--brand-primary, #1b8f5a);cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.coach-filter-add-button:hover{background:#f0f7f3;border-color:var(--brand-primary, #1b8f5a)}.coach-filter-add-menu{position:absolute;top:calc(100% + 6px);left:0;z-index:20;min-width:180px;margin:0;padding:6px;list-style:none;background:#fff;border:1px solid #e6eee8;border-radius:12px;box-shadow:0 12px 28px #1f3a2c1f}.coach-filter-add-menu-item{display:block;width:100%;text-align:left;background:transparent;border:none;padding:8px 10px;border-radius:8px;font-family:inherit;font-size:.9rem;color:#1f3a2c;cursor:pointer;transition:background .12s ease,color .12s ease}.coach-filter-add-menu-item:hover{background:#f0f7f3;color:var(--brand-primary, #1b8f5a)}.coach-filter-chip{border:1px solid #d7e4db;background:#fff;border-radius:999px;padding:6px 14px;font-family:inherit;font-size:.85rem;font-weight:600;color:#486156;cursor:pointer;display:inline-flex;align-items:center;gap:4px;transition:background .15s ease,border-color .15s ease,color .15s ease}.coach-filter-chip:hover{border-color:#bfd7c5;color:var(--brand-primary, #1b8f5a)}.coach-filter-chip-active{background:var(--brand-primary, #1b8f5a);border-color:var(--brand-primary, #1b8f5a);color:#fff}.coach-filter-chip-active:hover{background:#167447;border-color:#167447;color:#fff}.coach-filter-chip-active .tab-unseen-badge{background:#fff;color:var(--brand-primary, #1b8f5a)}.coach-thread-stack{display:grid;gap:14px}.coach-thread-card{border:1px solid #e6eee8;border-radius:18px;background:#fff;overflow:hidden}.coach-thread-toggle{width:100%;border:none;background:transparent;text-align:left;cursor:pointer;padding:16px 18px;font-family:inherit}.coach-thread-toggle:hover{background:#f7faf8}.coach-thread-summary{display:flex;align-items:center;justify-content:space-between;gap:14px}.coach-thread-summary .video-request-title{margin:0;font-weight:600;color:#1f2d24}.coach-thread-summary .video-request-meta{margin:4px 0 0;color:#6c8076;font-size:.88rem}.coach-thread-body{border-top:1px solid #edf2ee;padding:16px 18px;display:grid;gap:14px}.coach-thread-cta{width:100%;justify-self:stretch}.coach-students-list,.coach-request-stack{display:grid;gap:12px}.coach-student-card,.coach-request-card{width:100%;text-align:left;cursor:pointer}.coach-student-card{border:1px solid #e6eee8;border-radius:18px;background:#fff;padding:16px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.coach-student-card:hover,.coach-request-card:hover{border-color:#bfd7c5}.coach-student-card-active,.coach-request-card-active{border-color:var(--brand-primary, #1b8f5a);box-shadow:0 0 0 1px color-mix(in srgb,var(--brand-primary, #1b8f5a) 14%,transparent)}.coach-student-card-active{transform:translateY(-1px)}.coach-student-copy{display:grid;min-width:0}.coach-composer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.coach-composer-actions{display:grid;gap:10px;justify-items:start}.coach-textarea{width:100%;min-height:140px;border-radius:14px;border:1px solid #d7e4db;padding:12px 14px;background:#fff;font-family:inherit;font-size:.95rem;resize:vertical}.coach-textarea:focus{outline:2px solid color-mix(in srgb,var(--brand-primary, #1b8f5a) 16%,transparent);border-color:var(--brand-primary, #1b8f5a)}.coach-analysis-date-input{width:100%;border-radius:14px;border:1px solid #d7e4db;padding:10px 14px;background:#fff;font-family:inherit;font-size:.95rem;margin-bottom:12px}.coach-analysis-date-input:focus{outline:2px solid color-mix(in srgb,var(--brand-primary, #1b8f5a) 16%,transparent);border-color:var(--brand-primary, #1b8f5a)}.video-unseen-dot{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--brand-primary, #1b8f5a);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand-primary, #1b8f5a) 18%,transparent);margin-right:8px;vertical-align:middle}.video-request-card-unseen{border-color:#bfd7c5;box-shadow:0 1px 6px color-mix(in srgb,var(--brand-primary, #1b8f5a) 8%,transparent)}.tab-unseen-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;margin-left:8px;border-radius:999px;background:var(--brand-primary, #1b8f5a);color:#fff;font-size:.72rem;font-weight:700;line-height:1}.coach-request-header{display:flex;align-items:center;justify-content:space-between;gap:14px}.coach-request-detail{border-top:1px solid #edf2ee;padding-top:18px;display:grid;gap:14px}.coach-static-media-body{display:grid;gap:10px;padding:12px}.search-field{display:inline-flex;align-items:center;width:100%;max-width:420px;gap:12px;padding:14px 16px;border-radius:16px;background:#f8faf8;border:1px solid #dde7e2}.search-icon{color:#4b5563}.search-field input{width:100%;border:none;outline:none;background:transparent;font-size:.95rem;color:#111827}.coach-list,.student-videos{display:grid;gap:16px}.video-list,.student-videos .coach-list{margin-bottom:8px}.video-item{border:1px solid #e6eee8;border-radius:16px;padding:16px;background:#fff;display:grid;gap:10px}.video-month-section{display:grid;gap:12px}.video-month-header{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:12px}.video-month-nav{width:44px;height:44px;border-radius:999px;border:1px solid #dbe5de;background:#fff;color:#1f2937;display:grid;place-items:center;font-size:1.1rem;transition:background-color .2s ease,border-color .2s ease,opacity .2s ease}.video-month-nav:hover:not(:disabled){background:#f5faf6;border-color:#bfd7c5}.video-month-nav:disabled{opacity:.42;cursor:not-allowed}.video-month-title-block{text-align:center}.video-month-label{margin:0;font-size:1rem;font-weight:700;color:#111827;text-transform:capitalize}.video-month-subtitle,.video-month-caption{margin:0;font-size:.88rem;color:#64748b}.video-month-caption{text-align:center}.video-month-dots{display:flex;justify-content:center;gap:8px}.video-month-dot{width:8px;height:8px;border-radius:999px;background:#d6e3d9}.video-month-dot-active{width:20px;background:var(--brand-primary, #1b8f5a)}.video-request-card{padding:0;gap:0;overflow:hidden}.video-request-toggle,.video-nested-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left}.video-request-toggle{padding:16px}.video-request-summary{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px}.video-request-title,.video-feedback-title{margin:0;font-weight:700;color:#111827}.video-request-meta{margin:4px 0 0;font-size:.88rem;color:#64748b}.video-request-tags{display:flex;align-items:center;gap:10px;flex-shrink:0}.video-request-chip{display:inline-flex;align-items:center;padding:7px 10px;border-radius:999px;background:#eef6f0;color:var(--brand-primary-strong, #166b43);font-size:.8rem;font-weight:700}.video-request-chevron{width:28px;height:28px;border-radius:999px;border:1px solid #dce8df;display:grid;place-items:center;color:#334155;font-size:1rem}.video-request-body{border-top:1px solid #edf2ee;padding:14px 16px 16px;display:grid;gap:12px}.video-request-data-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px 12px;font-size:.93rem;color:#334155}.video-request-data-grid p{margin:0}.video-nested-panel,.video-feedback-box{border:1px solid #e8efea;border-radius:14px;background:#fbfdfb}.video-nested-toggle{padding:12px 14px;font-weight:600;color:#1f2937}.video-nested-body{padding:0 12px 12px}.video-feedback-box{padding:12px;display:grid;gap:10px}.video-feedback-text{margin:0;color:#334155;line-height:1.6}.video-correction-player{width:100%;display:block;border-radius:12px;background:#000}.coach-voice-note-player{width:100%;display:block}.file-field-group{display:grid;gap:10px}.video-source-actions{display:flex;flex-wrap:wrap;gap:8px}.video-source-hidden-input{display:none}.annotated-video{display:grid;gap:10px}.annotated-video-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.annotated-video-color-picker,.annotated-video-range{display:inline-flex;align-items:center;gap:8px;font-size:.85rem;color:#334155}.annotated-video-color-picker input{width:36px;height:28px;border:none;background:transparent;padding:0}.annotated-video-range input{width:90px}.annotated-video-stage{position:relative;border-radius:12px;overflow:hidden;border:1px solid #dbe8de;background:#f5f8f5}.annotated-video-element{width:100%;display:block;max-height:360px;background:#000}.annotated-video-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;touch-action:none}.video-controls{background:#f5f9f6;border:1px solid #dbe8de;border-radius:16px;padding:12px 14px;display:grid;gap:10px}.video-scrubber-wrap{padding:4px 2px}.video-scrubber{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:block;width:100%;height:4px;border-radius:2px;outline:none;cursor:pointer;background:linear-gradient(to right,#1b8f5a var(--pct, 0%),#cde0d4 var(--pct, 0%))}.video-scrubber::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:14px;height:14px;border-radius:50%;background:#1b8f5a;border:2px solid #ffffff;box-shadow:0 1px 6px #1b8f5a59;cursor:grab;transition:transform .15s}.video-scrubber::-webkit-slider-thumb:active{transform:scale(1.25);cursor:grabbing}.video-scrubber::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:#1b8f5a;border:2px solid #ffffff;box-shadow:0 1px 6px #1b8f5a59;cursor:grab}.video-controls-row{display:flex;align-items:center;gap:2px}.video-ctrl-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;border:none;background:transparent;color:#475569;cursor:pointer;transition:background .15s,color .15s;flex-shrink:0}.video-ctrl-btn svg{width:18px;height:18px;display:block}.video-ctrl-btn:hover{background:#e4f0e9;color:#1b8f5a}.video-ctrl-btn:active{background:#d0e8d9}.video-ctrl-play{width:44px;height:44px;border-radius:50%;background:#1b8f5a;color:#fff;margin:0 6px;box-shadow:0 4px 14px #1b8f5a52;transition:background .15s,box-shadow .15s,transform .1s}.video-ctrl-play svg{width:20px;height:20px}.video-ctrl-play:hover{background:#167447;color:#fff;box-shadow:0 6px 18px #1b8f5a66;transform:scale(1.05)}.video-ctrl-play:active{transform:scale(.96);background:#14532d;color:#fff}.video-time-display{margin-left:auto;display:inline-flex;align-items:center;gap:3px;font-size:.8rem;font-variant-numeric:tabular-nums;letter-spacing:.01em}.video-time-current{color:#0f172a;font-weight:700}.video-time-sep{color:#94a3b8;font-weight:400}.video-time-total{color:#64748b;font-weight:500}.video-jog-bar{position:relative;height:52px;border-radius:8px;overflow:hidden;cursor:grab;user-select:none;-webkit-user-select:none;display:flex;align-items:center;justify-content:center;background-color:#0a0a0a;background-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='40' height='52'><rect x='4' y='3' width='10' height='8' rx='1.5' fill='rgba(255,255,255,0.22)'/><rect x='24' y='3' width='10' height='8' rx='1.5' fill='rgba(255,255,255,0.22)'/><rect x='4' y='41' width='10' height='8' rx='1.5' fill='rgba(255,255,255,0.22)'/><rect x='24' y='41' width='10' height='8' rx='1.5' fill='rgba(255,255,255,0.22)'/><line x1='0' y1='11' x2='0' y2='41' stroke='rgba(255,255,255,0.60)' stroke-width='1.5'/><line x1='20' y1='16' x2='20' y2='36' stroke='rgba(255,255,255,0.28)' stroke-width='1'/><line x1='10' y1='21' x2='10' y2='31' stroke='rgba(255,255,255,0.13)' stroke-width='1'/><line x1='30' y1='21' x2='30' y2='31' stroke='rgba(255,255,255,0.13)' stroke-width='1'/></svg>");background-size:40px 52px;background-position:calc(0px - var(--film-offset, 0px)) 0;background-repeat:repeat-x;border:1px solid rgba(255,255,255,.08);box-shadow:inset 0 0 24px #0009,0 2px 8px #0003}.video-jog-bar:active{cursor:grabbing}.video-jog-bar:before{content:"";position:absolute;left:50%;top:10px;bottom:10px;width:2px;border-radius:1px;background:#fff;box-shadow:0 0 8px #ffffffb3,0 0 2px #fff;transform:translate(-50%);pointer-events:none;z-index:2}.video-jog-bar:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 60px 100% at 50% 50%,rgba(255,255,255,.07) 0%,transparent 100%);pointer-events:none;z-index:1}.coach-response-form{border-top:1px solid #edf2ee;padding-top:12px;margin-top:6px;display:grid;gap:10px}.coach-response-form textarea,.coach-response-form input[type=file]{width:100%;border-radius:12px;border:1px solid #d7e4db;padding:10px 12px;background:#fff;font-family:inherit;font-size:.95rem}.coach-response-form textarea:focus,.coach-response-form input[type=file]:focus{outline:2px solid color-mix(in srgb,var(--brand-primary, #1b8f5a) 16%,transparent);border-color:var(--brand-primary, #1b8f5a)}.coach-student-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 22px}.student-identity{display:flex;align-items:center;gap:16px}.student-avatar{width:52px;height:52px;border-radius:18px;background:color-mix(in srgb,var(--brand-primary, #1b8f5a) 12%,white);color:var(--brand-primary, #1b8f5a);display:grid;place-items:center;font-size:1rem;font-weight:700}.student-name{margin:0;font-size:1rem;font-weight:700;color:#111827}.student-detail{margin:4px 0 0;font-size:.92rem;color:#64748b}.student-actions{display:flex;align-items:center;gap:14px}.admin-panel{display:grid;gap:18px;min-width:0;overflow:hidden}.admin-add-users-box{border:1px solid var(--brand-secondary-border, rgba(27,143,90,.2));background:var(--brand-secondary-bg, #f2fbf4);border-radius:18px;padding:20px;display:grid;gap:16px}.admin-add-users-toggle{display:flex;gap:0;background:#e9eeea;border-radius:10px;padding:3px;width:fit-content}.admin-toggle-option{padding:8px 20px;border:none;border-radius:8px;background:transparent;font-size:.88rem;font-weight:600;color:#6b7280;cursor:pointer;transition:all .15s}.admin-toggle-option:hover{color:#374151}.admin-toggle-active{background:#fff;color:#1f2937;box-shadow:0 1px 3px #00000014}.admin-create-form{display:grid;gap:14px}.admin-create-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px}.admin-create-form .form-group input,.admin-create-form .form-group select{width:100%;padding:12px 14px;border-radius:12px;border:1px solid #d7e4db;background:#fff}.admin-create-form .form-group input:focus,.admin-create-form .form-group select:focus{outline:2px solid color-mix(in srgb,var(--brand-primary, #1b8f5a) 16%,transparent);border-color:var(--brand-primary, #1b8f5a)}.admin-create-btn{width:fit-content;min-width:170px}.admin-csv-form{display:grid;gap:12px}.admin-csv-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.admin-csv-actions input[type=file]{max-width:320px}.admin-csv-report{background:#fff;border:1px solid #d7e4db;border-radius:12px;padding:12px}.admin-csv-errors ul{margin:8px 0 0;padding-left:18px}.dashboard-page.school-theme-finca{--brand-primary: #b7006a;--brand-primary-strong: #8f0053;--brand-page-bg: #ffffff;--brand-header-bg: #ffffff;--brand-header-border: #f3d9e8;--brand-soft: #fdeef6;--brand-secondary-bg: #fff0f8;--brand-secondary-hover-bg: #ffe3f2;--brand-secondary-border: rgba(183, 0, 106, .24);--brand-secondary-text: #8f0053}.dashboard-page[class*=school-theme-] .btn-primary{background:var(--brand-primary);border-color:var(--brand-primary)}.dashboard-page[class*=school-theme-] .btn-primary:hover{background:var(--brand-primary-strong);border-color:var(--brand-primary-strong)}.dashboard-page[class*=school-theme-] .upload-panel-badge,.dashboard-page[class*=school-theme-] .panel-eyebrow,.dashboard-page[class*=school-theme-] .video-feedback-title{color:var(--brand-primary)}.dashboard-page.school-theme-finca .tab-unseen-badge{background:#b7006a;color:#fff}.dashboard-page.school-theme-finca .upload-panel-badge{background:#fff0f8;border-color:#b7006a38}.dashboard-page.school-theme-finca .panel-eyebrow,.dashboard-page.school-theme-finca .video-feedback-title,.dashboard-page.school-theme-finca .coach-section-label,.dashboard-page.school-theme-finca .panel-caption a,.dashboard-page.school-theme-finca .stat-label,.dashboard-page.school-theme-finca .admin-tab-active,.dashboard-page.school-theme-finca .admin-tab-btn:hover,.dashboard-page.school-theme-finca .header-dropdown-item-active,.dashboard-page.school-theme-finca .header-dropdown-check,.dashboard-page.school-theme-finca .coach-student-name,.dashboard-page.school-theme-finca .coach-select-student:focus,.dashboard-page.school-theme-finca .upload-panel-action,.dashboard-page.school-theme-finca .success-message,.dashboard-page.school-theme-finca .btn-secondary{color:#b7006a}.dashboard-page.school-theme-finca .admin-tab-active,.dashboard-page.school-theme-finca input:focus,.dashboard-page.school-theme-finca select:focus,.dashboard-page.school-theme-finca textarea:focus,.dashboard-page.school-theme-finca .coach-analysis-date-input:focus,.dashboard-page.school-theme-finca .header-dropdown-item-active,.dashboard-page.school-theme-finca .submit-success-card,.dashboard-page.school-theme-finca .video-feedback-card-active{border-color:#b7006a}.dashboard-page.school-theme-finca .admin-tab-active{border-bottom-color:#b7006a}.dashboard-page.school-theme-finca .upload-panel-badge,.dashboard-page.school-theme-finca .header-dropdown-item-active{background:#fff0f8}.dashboard-page.school-theme-finca .success-message{color:#8f0053;background:#fff0f8;border-color:#f3d9e8}.dashboard-page.school-theme-finca .btn-primary{background:#b7006a;border-color:#b7006a;color:#fff}.dashboard-page.school-theme-finca .btn-primary:hover{background:#8f0053;border-color:#8f0053}.dashboard-page.school-theme-finca .btn-secondary{background:#fff0f8;border-color:#b7006a3d;color:#8f0053}.dashboard-page.school-theme-finca .btn-secondary:hover{background:#ffe3f2}.dashboard-page.school-theme-finca input[type=range],.dashboard-page.school-theme-finca input[type=checkbox]{accent-color:#b7006a}.dashboard-page.school-theme-finca input[type=checkbox]:checked,.dashboard-page.school-theme-finca .coach-camera-toggle input[type=checkbox]:checked{background:#b7006a}.dashboard-page.school-theme-finca .upload-panel-highlighted{border-color:#b7006a38;background:radial-gradient(circle at top right,rgba(183,0,106,.1),transparent 36%),linear-gradient(180deg,#fff,#fff0f8);box-shadow:0 20px 44px #b7006a1a}.dashboard-page.school-theme-finca .upload-panel-highlighted:before{background:linear-gradient(135deg,#b7006a66,#b7006a1f)}.dashboard-page.school-theme-finca .admin-assignment-tabs,.dashboard-page.school-theme-finca .coach-tabs{border-bottom-color:#f3d9e8}.dashboard-page.school-theme-finca input:focus,.dashboard-page.school-theme-finca select:focus,.dashboard-page.school-theme-finca textarea:focus{outline:2px solid rgba(183,0,106,.2);border-color:#b7006a}.dashboard-page.school-theme-finca .submit-success-icon{background:#fff0f8;color:#b7006a;border-color:#f3d9e8}.dashboard-page.school-theme-finca [style*="background: #1b8f5a"],.dashboard-page.school-theme-finca [style*="background:#1b8f5a"]{background:#b7006a!important}.dashboard-page.school-theme-finca .panel-caption,.dashboard-page.school-theme-finca .brand-subtitle,.dashboard-page.school-theme-finca .video-feedback-text,.dashboard-page.school-theme-finca .admin-section-title,.dashboard-page.school-theme-finca h2,.dashboard-page.school-theme-finca h3,.dashboard-page.school-theme-finca h4{color:#4e5054}.dashboard-page.school-theme-finca .dashboard-header{background:#fff;border-bottom:2px solid #b7006a}.dashboard-page.school-theme-finca .dashboard-footer{background:#fff;border-top-color:#f3d9e8}.dashboard-page.school-theme-finca .dashboard-footer-name{color:#4e5054}.dashboard-page.school-theme-finca .panel-card{border-color:#f3d9e8}.dashboard-page.school-theme-finca .video-card-active,.dashboard-page.school-theme-finca .video-source-btn-active{border-color:#b7006a;color:#b7006a}.dashboard-page.school-theme-finca .tag-chip,.dashboard-page.school-theme-finca .coach-analysis-class-category,.dashboard-page.school-theme-finca .inbox-badge{background:#fff0f8;color:#b7006a;border-color:#b7006a38}.dashboard-page.school-theme-finca .dashboard-loading{color:#b7006a}.dashboard-page.school-theme-finca .coach-student-role,.dashboard-page.school-theme-finca .panel-label,.dashboard-page.school-theme-finca .form-label{color:#4e5054}.dashboard-page.school-theme-finca .brand-mark{background:#fff0f8}.dashboard-page.school-theme-finca .brand-mark svg,.dashboard-page.school-theme-finca .dashboard-footer-logo{color:#b7006a}.dashboard-page.school-theme-finca .header-menu-btn:hover,.dashboard-page.school-theme-finca .header-menu-btn-open{background:#fff0f8;border-color:#b7006a59;color:#b7006a}.dashboard-page.school-theme-finca .header-section-label{color:#b7006a}.dashboard-page.school-theme-finca .header-dropdown-icon{background:#fff0f8;color:#b7006a}.dashboard-page.school-theme-finca .header-dropdown-item-active .header-dropdown-icon{background:#ffe3f2}.dashboard-page.school-theme-finca .header-dropdown-item-active{background:#fff0f8;color:#b7006a}.dashboard-page.school-theme-finca .header-dropdown-check{color:#b7006a}.dashboard-page.school-theme-finca .coach-filter-chip:hover{border-color:#b7006a59;color:#b7006a}.dashboard-page.school-theme-finca .coach-filter-chip-active{background:#b7006a;border-color:#b7006a;color:#fff}.dashboard-page.school-theme-finca .coach-filter-chip-active:hover{background:#8f0053;border-color:#8f0053}.dashboard-page.school-theme-finca .coach-filter-chip-active .tab-unseen-badge{background:#fff;color:#b7006a}.dashboard-page.school-theme-finca .coach-filter-add-button{border-color:#b7006a59;color:#b7006a}.dashboard-page.school-theme-finca .coach-filter-add-button:hover{background:#fff0f8;border-color:#b7006a}.dashboard-page.school-theme-finca .coach-filter-add-menu-item:hover{background:#fff0f8;color:#b7006a}.dashboard-page.school-theme-finca .coach-filter-group-remove:hover{background:#b7006a1a;color:#b7006a}.dashboard-page.school-theme-finca .coach-stat-chip-value{background:#b7006a}.dashboard-page.school-theme-finca .coach-stat-chip:hover{border-color:#b7006a59}.dashboard-page.school-theme-finca .perfil-nav-item:hover,.dashboard-page.school-theme-finca .perfil-nav-item-active,.dashboard-page.school-theme-finca .perfil-avatar{background:#fff0f8;color:#b7006a}.dashboard-page.school-theme-finca .perfil-edit-btn:hover{border-color:#b7006a;color:#b7006a}.dashboard-page.school-theme-finca .perfil-sub-badge{background:#b7006a}.dashboard-page.school-theme-finca .perfil-sub-active{background:#fff0f8;border-color:#b7006a59}.dashboard-page.school-theme-finca .comprar-prime{color:#b7006a}.dashboard-page.school-theme-finca .comprar-card:hover{border-color:#b7006a;box-shadow:0 4px 16px #b7006a1f}.dashboard-page.school-theme-finca .checkout-add-card:hover{border-color:#b7006a;color:#b7006a}.dashboard-page.school-theme-finca .checkout-terms input[type=checkbox],.dashboard-page.school-theme-finca .checkout-card-radio{accent-color:#b7006a}.dashboard-page.school-theme-finca .checkout-saved-card-selected{border-color:#b7006a;background:#fff0f8}.dashboard-page.school-theme-finca .checkout-input:focus{border-color:#b7006a}.dashboard-page.school-theme-finca .checkout-success-icon{background:#fff0f8;color:#b7006a}.dashboard-page.school-theme-finca .header-credits-badge:hover{border-color:#b7006a}.dashboard-page.school-theme-finca .credits-popover-profile:hover,.dashboard-page.school-theme-finca .credits-popover-buy:hover{color:#b7006a}.dashboard-page.school-theme-finca .header-qr-btn:hover{background:#fff0f8;border-color:#b7006a59;color:#b7006a}.dashboard-page.school-theme-finca .qr-modal-close{background:#b7006a}.dashboard-page.school-theme-finca .qr-modal-close:hover{background:#8f0053}.dashboard-page.school-theme-finca .tab-pill{background:#fdf5fb}.dashboard-page.school-theme-finca .club-type-pill{border-color:#b7006a33}.dashboard-page.school-theme-finca .club-type-pill:hover{background:#fff0f8;border-color:#b7006a59}.dashboard-page.school-theme-finca .club-type-pill-active{background:#b7006a;border-color:#b7006a;color:#fff}.dashboard-page.school-theme-finca .tab-pill:hover{background:#fff0f8}.dashboard-page.school-theme-finca .tab-active{border-color:#b7006a4d}.dashboard-page.school-theme-finca .coach-directory-stat-value{color:#b7006a}.dashboard-page.school-theme-finca .coach-directory-card-button:hover{border-color:#b7006a;box-shadow:0 4px 12px #b7006a1a}.dashboard-page.school-theme-finca .class-archive-card-unseen{border-color:#b7006a;box-shadow:0 0 0 1px #b7006a2e}.dashboard-page.school-theme-finca .calendar-class-time{color:#b7006a}.dashboard-page.school-theme-finca .calendar-day:hover{border-color:#b7006a59}.dashboard-page.school-theme-finca .calendar-day-selected{background:#fff0f8;border-color:#b7006a;box-shadow:0 0 0 1px #b7006a29}.dashboard-page.school-theme-finca .calendar-dot{background:#b7006a}.dashboard-page.school-theme-finca .calendar-dot-more{color:#b7006a}.dashboard-page.school-theme-finca .vs-thread-heading-icon{background:#fff0f8;color:#b7006a}.dashboard-page.school-theme-finca .coach-camera-toggle input[type=checkbox]:checked{background:#b7006a}.dashboard-page.school-theme-finca .coach-register-form input:not([type=checkbox]),.dashboard-page.school-theme-finca .coach-register-form textarea{border-color:#f3d9e8}.dashboard-page.school-theme-finca .admin-name-cell input:focus{outline:2px solid rgba(183,0,106,.16);border-color:#b7006a}.admin-refresh-btn{width:fit-content;min-width:150px;white-space:nowrap}.admin-table-wrapper{overflow-x:auto}.admin-table{width:100%;border-collapse:collapse}.admin-table th,.admin-table td{text-align:left;padding:12px 10px;border-bottom:1px solid #edf2ee}.admin-table th{font-size:.84rem;color:#4b5563;text-transform:uppercase;letter-spacing:.06em}.admin-table td{color:#1f2937;font-size:.94rem}.admin-table td select,.admin-table td input[type=text],.admin-table td input[type=email]{min-width:110px;padding:8px 10px;border-radius:10px;border:1px solid #d9e2da;background:#fff}.admin-table td input[type=text]:focus,.admin-table td input[type=email]:focus{outline:2px solid color-mix(in srgb,var(--brand-primary, #1b8f5a) 16%,transparent);border-color:var(--brand-primary, #1b8f5a)}.admin-name-cell{display:flex;align-items:center;gap:8px;min-width:240px}.admin-name-cell input{width:100%;min-width:160px;padding:9px 10px;border-radius:10px;border:1px solid #d9e2da;background:#fff}.admin-name-cell input:focus{outline:2px solid color-mix(in srgb,var(--brand-primary, #1b8f5a) 16%,transparent);border-color:var(--brand-primary, #1b8f5a)}.admin-inline-btn{min-width:90px;padding:9px 12px;border-radius:10px}.admin-actions-cell{display:flex;gap:6px;align-items:center}.admin-save-btn{width:fit-content;min-width:90px}.admin-save-btn:disabled{opacity:.4;cursor:default}.admin-danger-btn{width:fit-content;min-width:90px;background:#fff4f4;border-color:#f5d3d3;color:#8a2d2d}.admin-danger-btn:hover{background:#ffe9e9}.admin-danger-icon-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;border:none;background:transparent;color:#b91c1c;font-size:1rem;cursor:pointer;transition:background .15s}.admin-danger-icon-btn:hover{background:#fee2e2}.admin-danger-icon-btn:disabled{opacity:.35;cursor:default}.error-message,.success-message{margin:0;padding:12px 14px;border-radius:12px;font-size:.93rem}.error-message{color:#7a1f1f;background:#ffeaea;border:1px solid #ffcaca}.success-message{color:#0f5132;background:#e9f8ef;border:1px solid #c6ebd1}.admin-assignment-box{border:1px solid var(--brand-secondary-border, rgba(27,143,90,.2));background:var(--brand-secondary-bg, #f2fbf4);border-radius:18px;padding:16px;display:grid;gap:14px}.admin-assignment-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.admin-toggle-btn{width:fit-content;min-width:100px;white-space:nowrap}.admin-assignment-tabs{display:flex;gap:8px;border-bottom:1px solid #d9e2da;margin-bottom:12px;overflow-x:auto;-webkit-overflow-scrolling:touch}.admin-tab-btn{padding:10px 14px;border:none;background:transparent;color:#4b5563;cursor:pointer;font-size:.95rem;font-weight:500;border-bottom:2px solid transparent;transition:all .2s ease;white-space:nowrap;flex-shrink:0}.admin-tab-btn:hover{color:var(--brand-primary, #1b8f5a)}.admin-tab-active{color:var(--brand-primary, #1b8f5a);border-bottom-color:var(--brand-primary, #1b8f5a)}.admin-section-title{margin:0;font-size:1.05rem;color:#111827}.admin-assignment-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;align-items:end}.admin-assignment-form select{width:100%;padding:12px 14px;border-radius:12px;border:1px solid #d7e4db;background:#fff}.admin-assignment-form select:focus{outline:2px solid color-mix(in srgb,var(--brand-primary, #1b8f5a) 16%,transparent);border-color:var(--brand-primary, #1b8f5a)}.admin-relationship-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.admin-relationship-column h4,.admin-detail-card h4{margin:0 0 8px;color:#111827}.admin-entity-list{display:grid;gap:8px}.admin-entity-btn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;border-radius:12px;border:1px solid #d9e6dc;background:#fff;color:#1f2937}.admin-entity-btn-active{border-color:#a8d4ba;background:#edf9f1}.admin-entity-count{color:#4b5563;font-size:.85rem;white-space:nowrap}.admin-detail-card{border:1px solid #e3ece6;border-radius:14px;background:#fff;padding:14px}.admin-detail-subtitle{margin:0 0 12px;color:#4b5563}.admin-detail-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.admin-detail-list li{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid #edf2ee;border-radius:12px;padding:10px 12px}.assign-search-wrapper{position:relative}.assign-search-input{width:100%;padding:10px 14px;border-radius:12px;border:1px solid #d7e4db;background:#fff;font-size:.95rem;color:#1f2937}.assign-search-input:focus{outline:2px solid color-mix(in srgb,var(--brand-primary, #1b8f5a) 16%,transparent);border-color:var(--brand-primary, #1b8f5a)}.assign-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border:1px solid #d9e6dc;border-radius:12px;box-shadow:0 4px 16px #0000001a;max-height:280px;overflow-y:auto;z-index:20;padding:6px 0}.assign-dropdown-empty{padding:12px 14px;color:#9ca3af;font-size:.9rem;margin:0}.assign-dropdown-section+.assign-dropdown-section{border-top:1px solid #edf2ee}.assign-dropdown-label{padding:8px 14px 4px;margin:0;font-size:.78rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.04em}.assign-dropdown-item{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 14px;border:none;background:transparent;color:#1f2937;cursor:pointer;font-size:.9rem;text-align:left;transition:background .12s}.assign-dropdown-item:hover{background:#f3faf5}.assign-dropdown-item-active{background:#edf9f1;font-weight:500}.assign-dropdown-count{color:#6b7280;font-size:.82rem;white-space:nowrap}.admin-expand-btn{background:none;border:none;color:#4b5563;cursor:pointer;padding:4px 8px;font-size:1rem;line-height:1}.admin-expand-btn:disabled{opacity:.5;cursor:not-allowed}.admin-table-expanded-row{background:#f9fdfb}.admin-table-expanded-content{padding:12px 16px!important}.admin-inline-assignments{display:grid;gap:8px}.admin-inline-assignments strong{display:block;color:#1f2937;font-size:.9rem}.admin-inline-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}.admin-inline-list li{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;background:#fff;border:1px solid #dde7e2;border-radius:10px}.admin-small-btn{min-width:auto;width:auto;padding:4px 6px;font-size:.8rem}.calendar-container{background:#fff;border:1px solid #e8eeea;border-radius:18px;padding:14px;display:grid;gap:12px;max-width:760px;margin:0 auto}.calendar-container-with-detail{max-width:980px;grid-template-columns:minmax(0,1fr) 300px;align-items:start}.calendar-container-with-detail .calendar-header{grid-column:1 / -1}.calendar-container-with-detail .calendar-grid{grid-column:1}.calendar-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.calendar-title{margin:0;color:#111827;font-size:1rem}.calendar-nav-btn{padding:6px 10px;border-radius:8px;font-size:1rem}.calendar-grid{display:grid;gap:8px}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;margin-bottom:4px}.calendar-weekday{text-align:center;font-weight:700;color:#4b5563;font-size:.76rem;padding:5px}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.calendar-day{aspect-ratio:1;border:1px solid #e3ece6;border-radius:10px;padding:4px;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:space-between;background:#fff;transition:all .2s ease;font-size:.78rem;min-height:54px}.calendar-day:hover{border-color:var(--brand-primary, #1b8f5a);background:#f9fcfa}.calendar-day-empty{pointer-events:none;background:transparent;border:none}.calendar-day-number{font-weight:600;color:#111827}.calendar-day-with-classes{background:#eef9f3;border-color:#a8d4ba}.calendar-day-today{background:#fff4e6;border-color:orange;font-weight:700}.calendar-day-selected{background:#e6f7f1;border-color:var(--brand-primary, #1b8f5a);box-shadow:0 0 0 1px color-mix(in srgb,var(--brand-primary, #1b8f5a) 16%,transparent)}.calendar-dots{display:flex;gap:2px;justify-content:center;margin-top:2px}.calendar-dot{width:3px;height:3px;border-radius:50%;background:var(--brand-primary, #1b8f5a)}.calendar-dot-more{font-size:.7rem;color:var(--brand-primary, #1b8f5a)}.calendar-selected-day{border-top:1px solid #e3ece6;padding-top:12px}.calendar-container-with-detail .calendar-selected-day{grid-column:2;border-top:none;border-left:1px solid #e3ece6;padding-top:0;padding-left:12px;margin-top:2px}.calendar-selected-day h4{margin:0 0 12px;color:#111827;text-transform:capitalize}.calendar-day-classes{list-style:none;margin:0;padding:0;display:grid;gap:10px}.calendar-class-item{display:grid;grid-template-columns:60px 1fr;gap:12px;padding:12px;border:1px solid #dde7e2;border-radius:10px;background:#f9fdfb}.calendar-class-time{font-weight:700;color:var(--brand-primary, #1b8f5a);font-size:.9rem}.calendar-class-info{display:grid;gap:4px}.calendar-class-title{margin:0;color:#111827;font-weight:600;font-size:.95rem}.calendar-class-people{margin:0;color:#4b5563;font-size:.85rem}.calendar-class-notes{margin:0;color:#64748b;font-size:.8rem;font-style:italic}.calendar-list-container{max-width:760px}.calendar-list-classes{gap:8px}.calendar-list-classes .calendar-class-item{grid-template-columns:56px 1fr;padding:10px}.chevron{font-size:1.2rem;color:#94a3b8}.header-menu-wrap{position:relative;display:flex;align-items:center;gap:8px}.header-section-label{font-size:.86rem;font-weight:600;color:var(--brand-primary-strong, #166b43);white-space:nowrap}.header-menu-btn{width:42px;height:42px;border-radius:12px;border:1px solid #e2e8f0;background:#fff;color:#475569;display:grid;place-items:center;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease;flex-shrink:0}.header-menu-btn:hover,.header-menu-btn-open{background:#f0faf4;border-color:color-mix(in srgb,var(--brand-primary, #1b8f5a) 35%,transparent);color:var(--brand-primary, #1b8f5a)}.header-qr-btn{width:42px;height:42px;border-radius:12px;border:1px solid #e2e8f0;background:#fff;color:#475569;display:grid;place-items:center;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease;flex-shrink:0;-webkit-appearance:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.header-qr-btn:hover{background:#f0faf4;border-color:color-mix(in srgb,var(--brand-primary, #1b8f5a) 35%,transparent);color:var(--brand-primary, #1b8f5a)}.qr-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a8c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:24px;overflow-y:auto;-webkit-overflow-scrolling:touch}.qr-modal{background:#fff;border-radius:20px;padding:32px 28px 24px;display:flex;flex-direction:column;align-items:center;gap:12px;max-width:320px;width:100%;box-shadow:0 16px 48px #0f172a2e}.qr-modal-title{font-size:1.1rem;font-weight:700;color:#0f172a;margin:0;text-align:center}.qr-modal-subtitle{font-size:.85rem;color:#64748b;margin:0;text-align:center;line-height:1.4}.qr-code-wrap{border:3px solid #e2e8f0;border-radius:12px;padding:12px;background:#fff}.qr-modal-url-row{display:flex;align-items:center;gap:8px;width:100%;justify-content:center}.qr-modal-url{font-size:.75rem;color:#94a3b8;margin:0;word-break:break-all;text-align:center;flex:1}.qr-copy-btn{display:inline-flex;align-items:center;gap:4px;flex-shrink:0;padding:5px 10px;border-radius:999px;border:1.5px solid #cbd5e1;background:#fff;color:#475569;font-size:.75rem;font-weight:600;cursor:pointer;transition:border-color .15s,color .15s,background .15s;-webkit-tap-highlight-color:transparent;touch-action:manipulation;font-family:inherit;white-space:nowrap}.qr-copy-btn:hover{border-color:#1b8f5a;color:#1b8f5a}.qr-copy-btn.qr-copy-btn-ok{border-color:#1b8f5a;background:#f0fdf4;color:#1b8f5a}.qr-modal-close{margin-top:4px;padding:10px 28px;border-radius:999px;border:none;background:var(--brand-primary, #1b8f5a);color:#fff;font-size:.9rem;font-weight:600;cursor:pointer;transition:background .15s;-webkit-appearance:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation;font-family:inherit}.qr-modal-close:hover{background:#166b43}.header-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:200px;background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 8px 32px #0f172a1f;padding:6px;z-index:200}.header-dropdown-item{width:100%;display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;border:none;background:transparent;color:#334155;font-size:.93rem;font-weight:500;text-align:left;cursor:pointer;font-family:inherit;transition:background-color .12s ease}.header-dropdown-item:hover{background:#f5f8f6}.header-dropdown-item-active{background:#eef8f3;color:var(--brand-primary-strong, #166b43);font-weight:700}.header-dropdown-icon{width:30px;height:30px;border-radius:8px;background:#f0f7f3;display:grid;place-items:center;color:var(--brand-primary, #1b8f5a);flex-shrink:0;transition:background-color .12s ease}.header-dropdown-item-active .header-dropdown-icon{background:#d8f0e4}.header-dropdown-check{margin-left:auto;color:var(--brand-primary, #1b8f5a);font-size:.88rem;font-weight:700}.student-home{display:grid;gap:24px;position:relative;isolation:isolate}.club-type-filter{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.club-type-pill{padding:5px 14px;border-radius:20px;border:1.5px solid #d1d5db;background:#fff;color:#374151;font-size:.82rem;font-weight:500;cursor:pointer;transition:background .15s,border-color .15s,color .15s;white-space:nowrap}.club-type-pill:hover{border-color:#9ca3af;background:#f9fafb}.club-type-pill-active{background:var(--primary, #e11d48);border-color:var(--primary, #e11d48);color:#fff}.student-section{display:grid;gap:20px;width:100%;min-width:0}.student-section-head h2{margin:0;font-size:1.6rem;color:#111827;line-height:1.15}.student-section-head .panel-caption{margin-top:8px}.student-section>.panel-card{width:100%;min-width:0}.payments-body-plain{display:grid;gap:16px;margin-top:0;padding-top:0;border-top:none}@media (max-width: 1100px){.dashboard-main{max-width:100%}.student-grid,.metrics-grid,.coach-analysis-layout{grid-template-columns:1fr}.coach-analysis-layout.has-selection .coach-students-sidebar{display:none}.coach-analysis-layout:not(.has-selection) .coach-analysis-main{display:none}.coach-inbox-back{display:block}}@media (max-width: 960px){.dashboard-main{padding:22px}.student-page .panel-card,.coach-page .panel-card,.admin-panel{padding:20px;border-radius:22px}.admin-panel>.coach-analysis-layout{margin:0 -20px -20px}.student-page .panel-card h2,.coach-page .panel-card h2{font-size:1.45rem}.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.stat-card{padding:18px}.stat-value{font-size:1.7rem}.history-panel .tab-list,.coach-tabs{display:flex;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;gap:8px;padding-bottom:2px}.history-panel .tab-list .tab-pill,.coach-tabs .tab-pill{flex:0 0 auto}.coach-student-row{padding:16px}.coach-composer-grid{grid-template-columns:1fr}.student-avatar{width:46px;height:46px;border-radius:14px}.student-name{font-size:.95rem}.student-detail{font-size:.86rem}}@media (max-width: 720px){.dashboard-header,.dashboard-main{padding-left:16px;padding-right:16px}.dashboard-header{gap:10px;padding-top:calc(12px + env(safe-area-inset-top,0px));padding-bottom:12px}.dashboard-brand{min-width:0;flex:1;gap:10px}.brand-mark{width:48px;height:48px;border-radius:14px}.brand-partner-mark{width:34px;height:34px;border-radius:10px}.brand-copy{min-width:0}.brand-name{font-size:1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand-school-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-main{padding-top:20px;padding-bottom:24px}.brand-subtitle{display:none}.dashboard-actions{flex-wrap:nowrap;gap:8px}.header-user,.dashboard-actions .btn-secondary{display:none}.btn-ghost{padding:9px 14px;font-size:.88rem}.search-field{max-width:100%}.student-grid{gap:16px}.metrics-grid{grid-template-columns:1fr;gap:12px}.student-page .panel-card,.student-section>.panel-card,.coach-page .panel-card{padding:16px;border-radius:18px}.student-section-head h2{font-size:1.35rem}.history-panel .tab-list,.coach-topbar{margin-bottom:16px}.coach-student-card{padding:14px}.tab-pill{font-size:.88rem;padding:10px 14px}.student-page button,.student-section button,.coach-page button,.student-page .tab-pill,.coach-page .tab-pill,.calendar-nav-btn{min-height:44px}.video-form{gap:14px}.video-form .btn-primary.btn-full{width:100%;min-height:46px;border-radius:14px}.payments-summary-grid{grid-template-columns:1fr}.payments-item{align-items:flex-start;flex-direction:column}.form-grid{grid-template-columns:1fr;gap:12px}.file-field{min-height:52px;padding:12px 14px;border-radius:12px}.coach-student-row{padding:14px;gap:12px}.video-request-toggle{padding:14px}.video-month-header{grid-template-columns:40px minmax(0,1fr) 40px;gap:10px}.video-month-nav{width:40px;height:40px}.video-month-label{font-size:.95rem}.video-month-subtitle,.video-month-caption{font-size:.83rem}.video-request-summary{align-items:flex-start;gap:10px}.video-request-tags{flex-direction:column;align-items:flex-end;gap:8px}.video-request-chip{max-width:110px;justify-content:center;text-align:center}.video-request-body{padding:12px 14px 14px}.video-request-data-grid{grid-template-columns:1fr;gap:6px}.video-nested-toggle{padding:12px;font-size:.92rem}.video-nested-body{padding:0 10px 10px}.student-identity{min-width:0;gap:12px}.student-identity>div:last-child{min-width:0}.student-name,.student-detail{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-container{max-width:100%;width:100%;padding:10px;box-sizing:border-box}.calendar-weekdays,.calendar-days{gap:3px}.calendar-day{aspect-ratio:auto;min-height:46px;font-size:.74rem}.calendar-class-item{grid-template-columns:50px 1fr;gap:8px;padding:10px}.calendar-container-with-detail{max-width:760px;grid-template-columns:1fr}.calendar-container-with-detail .calendar-header,.calendar-container-with-detail .calendar-grid,.calendar-container-with-detail .calendar-selected-day{grid-column:1}.calendar-container-with-detail .calendar-selected-day{border-left:none;border-top:1px solid #e3ece6;padding-left:0;padding-top:12px}}@media (max-width: 480px){.dashboard-header{padding:10px 12px;gap:8px}.dashboard-main{padding:12px 12px 24px}.brand-mark{width:40px;height:40px;border-radius:10px}.brand-mark svg{width:18px;height:18px}.brand-name{font-size:.95rem}.brand-subtitle{display:none}.dashboard-actions{gap:6px}.student-page .panel-card,.student-section>.panel-card,.coach-page .panel-card,.admin-panel{padding:14px;border-radius:16px}.admin-panel>.coach-analysis-layout{margin:0 -14px -14px}.student-section-head h2{font-size:1.2rem}.student-page button,.coach-page button,.calendar-nav-btn{min-height:44px}.panel-eyebrow{font-size:.74rem;margin-bottom:8px}.student-page .panel-card h2,.student-section-head h2,.coach-page .panel-card h2{font-size:1.2rem}.panel-caption{font-size:.88rem;line-height:1.45}.stat-card{padding:14px}.stat-value{font-size:1.4rem}.student-avatar{width:40px;height:40px;font-size:.88rem}.student-actions{gap:8px}.status-pill{padding:6px 10px;font-size:.74rem}.calendar-weekday{font-size:.65rem;padding:3px 2px}.calendar-day{aspect-ratio:auto;min-height:40px;border-radius:8px}.calendar-selected-day h4{font-size:.95rem}}.coach-home-analysis{display:grid;gap:24px;padding:0}.coach-stats-bar{display:flex;flex-wrap:wrap;gap:8px;padding:10px 14px;background:#fff;border:1px solid #e6eee8;border-radius:14px;box-shadow:0 1px 2px #0f172a0a}.coach-stat-chip{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border:1px solid transparent;border-radius:999px;background:#f3f7f4;color:#1f2937;font-family:inherit;font-size:.85rem;line-height:1;cursor:pointer;transition:background .2s ease,border-color .2s ease,transform .2s ease}.coach-stat-chip:hover{background:#e8f1ec;border-color:#bfd7c5}.coach-stat-chip:active{transform:translateY(1px)}.coach-stat-chip--primary{background:var(--brand-primary, #1b8f5a);color:#fff;border-color:transparent;font-weight:700;padding:8px 18px;font-size:.9rem}.coach-stat-chip--primary .coach-stat-chip-label{color:#fff}.coach-stat-chip--primary:hover{background:var(--brand-primary-strong, #166b43);border-color:transparent}.coach-stat-chip-icon{font-size:1rem;line-height:1}.coach-stat-chip-label{font-weight:600;letter-spacing:.02em;color:#475569}.coach-stat-chip-value{display:inline-flex;align-items:center;justify-content:center;min-width:22px;padding:2px 8px;border-radius:999px;background:var(--brand-primary, #1b8f5a);color:#fff;font-weight:700;font-size:.8rem}@media (max-width: 640px){.coach-stats-bar{padding:8px 10px;gap:6px}.coach-stat-chip{padding:5px 10px;font-size:.8rem}}.coach-stat-card-clickable{border:2px solid transparent;cursor:pointer;transition:all .3s ease;position:relative}.coach-stat-card-clickable:hover{border-color:var(--brand-primary, #1b8f5a);box-shadow:0 4px 12px color-mix(in srgb,var(--brand-primary, #1b8f5a) 8%,transparent);transform:translateY(-2px)}.coach-stat-card-clickable:active{transform:translateY(0)}.coach-stat-icon{font-size:2.5rem;margin:8px 0;opacity:.8;transition:opacity .2s ease}.coach-stat-card-clickable:hover .coach-stat-icon{opacity:1}.coach-select-student{width:100%;padding:12px 14px;border:1px solid #d7e4db;border-radius:12px;background:#fff;font-size:.95rem;font-family:inherit;color:#374151;transition:border-color .2s ease}.coach-select-student:hover{border-color:#bfd7c5}.coach-select-student:focus{outline:2px solid color-mix(in srgb,var(--brand-primary, #1b8f5a) 16%,transparent);border-color:var(--brand-primary, #1b8f5a)}.comprar-header{display:flex;flex-direction:column;align-items:center;gap:16px;margin-bottom:20px}.comprar-title{margin:0;font-size:1.5rem;font-weight:800;color:#111827;text-align:center}.comprar-tabs{display:inline-flex;background:#111827;border-radius:999px;padding:4px;gap:2px}.comprar-tab{padding:7px 20px;border-radius:999px;border:none;font-size:.9rem;font-weight:600;cursor:pointer;background:transparent;color:#9ca3af;transition:background .15s,color .15s}.comprar-tab-active{background:#fff;color:#111827}.comprar-coach-selector{text-align:center;margin-bottom:20px}.comprar-coach-label{font-size:.8rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.03em;margin:0 0 8px}.comprar-tabs-sm .comprar-tab{padding:5px 14px;font-size:.8rem}.comprar-tab-disabled{opacity:.4;cursor:not-allowed}.comprar-description{max-width:520px;margin:0 auto 28px;text-align:center;color:#4b5563;font-size:.93rem;line-height:1.55}.comprar-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;max-width:640px;margin:0 auto}.comprar-card{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px;padding:28px 16px 24px;min-height:160px;border:1.5px solid #e5ece7;border-radius:20px;background:#fff;cursor:pointer;transition:border-color .15s,box-shadow .15s;text-align:center}.comprar-card:hover{border-color:var(--brand-primary, #1b8f5a);box-shadow:0 4px 16px color-mix(in srgb,var(--brand-primary, #1b8f5a) 10%,transparent)}.comprar-badge{position:absolute;top:-13px;left:50%;transform:translate(-50%);white-space:nowrap;background:#111827;color:#fff;font-size:.72rem;font-weight:700;letter-spacing:.05em;padding:4px 12px;border-radius:999px}.comprar-count{font-size:3rem;font-weight:800;color:#111827;line-height:1;margin-top:4px}.comprar-unit{font-size:.7rem;font-weight:700;letter-spacing:.1em;color:#6b7280;text-transform:uppercase}.comprar-price{font-size:1.15rem;font-weight:700;color:#111827;margin-top:6px}.comprar-prime{font-size:.75rem;color:var(--brand-primary, #1b8f5a);font-weight:600;line-height:1.3}.comprar-prime-original{text-decoration:line-through;color:#9ca3af;font-weight:400}.comprar-expire{font-size:.75rem;color:#9ca3af;margin-top:2px}.suscripcion-card{max-width:420px;margin:0 auto;background:#fff;border:1.5px solid #e5ece7;border-radius:20px;padding:32px 32px 28px;display:flex;flex-direction:column;gap:0}.suscripcion-label{margin:0 0 16px;font-size:.72rem;font-weight:700;letter-spacing:.08em;color:var(--brand-primary, #1b8f5a);text-transform:uppercase}.suscripcion-heading{margin:0 0 16px;font-size:2.4rem;font-weight:800;color:#111827;line-height:1.1;text-transform:lowercase}.suscripcion-price{margin:0 0 24px;font-size:1.25rem;font-weight:700;color:#111827}.suscripcion-features{list-style:none;padding:0;margin:0 0 28px;display:grid;gap:10px}.suscripcion-features li{padding-left:24px;position:relative;font-size:.93rem;color:#374151;line-height:1.4}.suscripcion-features li:before{content:"✓";position:absolute;left:0;color:var(--brand-primary, #1b8f5a);font-weight:700}.suscripcion-btn{width:100%;padding:16px;background:#111827;color:#fff;border:none;border-radius:12px;font-size:.95rem;font-weight:700;letter-spacing:.06em;cursor:pointer;transition:background .15s}.suscripcion-btn:hover{background:#1f2937}.suscripcion-tc{margin:12px 0 0;text-align:center;font-size:.78rem;color:#9ca3af}@media (max-width: 600px){.comprar-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.perfil-layout{display:grid;grid-template-columns:240px 1fr;gap:32px;max-width:860px;margin:0 auto;padding:32px 24px;align-items:start}.perfil-sidebar{background:#fff;border:1.5px solid #e5ece7;border-radius:20px;padding:24px;display:flex;flex-direction:column;gap:8px}.perfil-user{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding-bottom:16px;border-bottom:1px solid #f0f4f1;margin-bottom:8px}.perfil-avatar{width:44px;height:44px;border-radius:50%;background:#e6f4ec;color:var(--brand-primary, #1b8f5a);font-size:1.2rem;font-weight:800;display:grid;place-items:center;flex-shrink:0}.perfil-name{margin:0;font-size:1.2rem;font-weight:800;color:#111827}.perfil-email{margin:0;font-size:.8rem;color:#6b7280}.perfil-nav{display:flex;flex-direction:column;gap:2px}.perfil-nav-item{display:flex;align-items:center;width:100%;padding:10px 12px;border:none;border-radius:10px;background:none;font-size:.93rem;color:#374151;cursor:pointer;text-align:left;transition:background .12s,color .12s}.perfil-nav-item:hover{background:#f0f9f4;color:var(--brand-primary, #1b8f5a)}.perfil-nav-item-active{background:#e6f4ec;color:var(--brand-primary, #1b8f5a);font-weight:700}.perfil-signout{margin-top:8px;padding-top:12px;border-top:1px solid #f0f4f1;color:#ef4444}.perfil-signout:hover{background:#fef2f2;color:#dc2626}.perfil-content{background:#fff;border:1.5px solid #e5ece7;border-radius:20px;padding:28px}.perfil-panel-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.perfil-panel-title{margin:0;font-size:1.2rem;font-weight:800;color:#111827}.perfil-edit-btn{width:40px;height:40px;display:grid;place-items:center;border:1.5px solid #e5ece7;border-radius:8px;background:none;color:#6b7280;cursor:pointer;flex-shrink:0}.perfil-edit-btn:hover{border-color:var(--brand-primary, #1b8f5a);color:var(--brand-primary, #1b8f5a)}.perfil-panel-caption{margin:0 0 16px;color:#6b7280;font-size:.93rem}.perfil-info-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 0;border-bottom:1px solid #f0f4f1}.perfil-info-row-tall{align-items:flex-start}.perfil-info-label{font-size:.85rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.perfil-info-value{font-size:.95rem;font-weight:600;color:#111827;text-align:right}.perfil-info-value-injuries{white-space:pre-wrap;text-align:right;line-height:1.5}.perfil-input{padding:7px 12px;border:1.5px solid #e5ece7;border-radius:8px;font-size:.9rem;color:#111827;background:#fff;outline:none;width:55%;box-sizing:border-box}.perfil-input:focus{border-color:var(--brand-primary, #1b8f5a)}.perfil-textarea{resize:vertical;min-height:80px;width:55%;font-family:inherit;line-height:1.5}.perfil-edit-actions{display:flex;justify-content:flex-end;align-items:center;gap:10px;padding-top:20px;flex-wrap:wrap}.perfil-save-error{margin:0;font-size:.82rem;color:#ef4444;flex:1}.perfil-cancel-edit-btn{padding:9px 20px;border:1.5px solid #e5ece7;border-radius:8px;background:none;font-size:.88rem;color:#6b7280;cursor:pointer}.perfil-save-btn{padding:9px 24px;border:none;border-radius:8px;background:#111827;color:#fff;font-size:.88rem;font-weight:600;cursor:pointer}.perfil-save-btn:hover:not(:disabled){background:#1f2937}.perfil-save-btn:disabled{opacity:.5;cursor:not-allowed}.perfil-buy-btn{padding:12px 24px;background:#111827;color:#fff;border:none;border-radius:10px;font-size:.9rem;font-weight:600;cursor:pointer}.perfil-buy-btn:hover{background:#1f2937}.perfil-sub-active{display:grid;gap:6px;margin-bottom:20px;padding:16px;background:#f0f9f4;border-radius:12px;border:1.5px solid var(--brand-primary, #1b8f5a)}.perfil-sub-badge{display:inline-block;background:var(--brand-primary, #1b8f5a);color:#fff;font-size:.72rem;font-weight:700;letter-spacing:.08em;padding:3px 10px;border-radius:999px;width:fit-content}.perfil-sub-name{margin:0;font-size:1rem;font-weight:700;color:#111827}.perfil-sub-renew{margin:0;font-size:.85rem;color:#6b7280}.perfil-cancel-btn{padding:10px 20px;border:1.5px solid #e5ece7;border-radius:10px;background:none;font-size:.85rem;color:#ef4444;cursor:pointer}.perfil-cancel-btn:hover{background:#fef2f2;border-color:#ef4444}@media (max-width: 640px){.perfil-layout{grid-template-columns:1fr;padding:16px}.perfil-content,.perfil-sidebar{padding:16px}.perfil-info-row,.perfil-info-row-tall{flex-direction:column;align-items:flex-start;gap:8px}.perfil-info-value,.perfil-info-value-injuries{text-align:left;width:100%}.perfil-input,.perfil-textarea{width:100%}}.checkout-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:100}.checkout-drawer{position:fixed;top:0;right:0;bottom:0;width:360px;max-width:100vw;background:#fff;z-index:101;display:flex;flex-direction:column;gap:0;overflow-y:auto;min-height:var(--app-vh, 100vh);animation:drawer-slide-in .22s ease}@keyframes drawer-slide-in{0%{transform:translate(100%)}to{transform:translate(0)}}.checkout-drawer-header{display:flex;align-items:center;justify-content:space-between;padding:calc(24px + env(safe-area-inset-top,0px)) calc(24px + env(safe-area-inset-right,0px)) 16px calc(24px + env(safe-area-inset-left,0px));border-bottom:1px solid #f0f4f1}.checkout-drawer-title{margin:0;font-size:1.2rem;font-weight:800;color:#111827}.checkout-drawer-close{background:none;border:none;cursor:pointer;color:#6b7280;padding:4px;display:flex;align-items:center}.checkout-drawer-close:hover{color:#111827}.checkout-package-summary{margin:20px 24px;border:1.5px solid #e5ece7;border-radius:14px;padding:16px 20px;display:grid;gap:4px}.checkout-package-name{margin:0;font-size:1rem;font-weight:700;color:#111827}.checkout-package-price{margin:0;font-size:1.4rem;font-weight:800;color:#111827}.checkout-package-expire{margin:0;font-size:.72rem;font-weight:700;letter-spacing:.06em;color:#9ca3af;text-transform:uppercase}.checkout-payment-section{padding:0 24px;display:grid;gap:10px}.checkout-payment-label{margin:0;font-size:.9rem;font-weight:600;color:#111827}.checkout-saved-card{display:flex;align-items:center;justify-content:space-between;border:1.5px solid #e5ece7;border-radius:12px;padding:12px 16px;background:#f8fbf9}.checkout-card-info{display:flex;align-items:center;gap:8px;font-size:.9rem;color:#374151}.checkout-card-brand{font-weight:700;font-size:.78rem;letter-spacing:.05em;color:#1a3a8f}.checkout-card-remove{background:none;border:none;cursor:pointer;color:#9ca3af;display:flex;align-items:center;padding:2px}.checkout-card-remove:hover{color:#ef4444}.checkout-add-card{display:flex;align-items:center;justify-content:space-between;width:100%;border:1.5px dashed #d1d5db;border-radius:12px;padding:12px 16px;background:none;font-size:.9rem;color:#374151;cursor:pointer}.checkout-add-card:hover{border-color:var(--brand-primary, #1b8f5a);color:var(--brand-primary, #1b8f5a)}.checkout-total-row{display:flex;flex-direction:column;gap:2px;padding:20px 24px 0}.checkout-total-label{font-size:.72rem;font-weight:700;letter-spacing:.08em;color:#9ca3af;text-transform:uppercase}.checkout-total-amount{font-size:1.5rem;font-weight:800;color:#111827}.checkout-terms{display:flex;align-items:center;gap:10px;padding:16px 24px 0;font-size:.9rem;color:#374151;cursor:pointer}.checkout-terms input[type=checkbox]{accent-color:var(--brand-primary, #1b8f5a);width:16px;height:16px;flex-shrink:0;cursor:pointer}.checkout-confirm-btn{margin:20px 24px 32px;padding:16px;background:#111827;color:#fff;border:none;border-radius:12px;font-size:.9rem;font-weight:700;letter-spacing:.06em;cursor:pointer;transition:background .15s,opacity .15s}.checkout-confirm-btn:hover:not(:disabled){background:#1f2937}.checkout-confirm-btn:disabled{opacity:.4;cursor:not-allowed}.checkout-saved-card{cursor:pointer}.checkout-saved-card-selected{border-color:var(--brand-primary, #1b8f5a);background:#f0f9f4}.checkout-card-radio{accent-color:var(--brand-primary, #1b8f5a);cursor:pointer}.checkout-add-form{display:grid;gap:10px;padding:14px;border:1.5px dashed #d1d5db;border-radius:12px}.checkout-input{width:100%;padding:10px 14px;border:1.5px solid #e5ece7;border-radius:10px;font-size:.9rem;color:#111827;background:#fff;outline:none;box-sizing:border-box}.checkout-input:focus{border-color:var(--brand-primary, #1b8f5a)}.checkout-input-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.checkout-form-error{margin:0;font-size:.8rem;color:#ef4444}.checkout-form-cancel{padding:10px;border:1.5px solid #e5ece7;border-radius:10px;background:none;font-size:.85rem;color:#6b7280;cursor:pointer}.checkout-form-cancel:hover{background:#f5f5f5}.checkout-form-save{padding:10px;border:none;border-radius:10px;background:#111827;color:#fff;font-size:.85rem;font-weight:600;cursor:pointer}.checkout-form-save:hover{background:#1f2937}.checkout-success{display:flex;flex-direction:column;align-items:center;gap:8px;padding:24px 24px 32px;text-align:center}.checkout-success-icon{width:48px;height:48px;border-radius:50%;background:#dceddb;color:var(--brand-primary, #1b8f5a);font-size:1.4rem;font-weight:700;display:grid;place-items:center}.checkout-success-title{margin:4px 0 0;font-size:1.1rem;font-weight:800;color:#111827}.checkout-success-sub{margin:0 0 12px;font-size:.9rem;color:#4b5563}.header-credits-wrap{position:relative}.header-credits-badge{display:flex;align-items:center;gap:8px;background:#fff;border:1.5px solid #e5ece7;border-radius:999px;padding:6px 14px 6px 10px;box-shadow:0 1px 4px #0000000f;cursor:pointer;transition:border-color .15s}.header-credits-badge:hover{border-color:var(--brand-primary, #1b8f5a)}.header-credits-initial{font-size:.95rem;font-weight:800;color:#111827}.header-credits-count{font-size:.95rem;font-weight:700;color:#111827}.credits-popover{position:absolute;top:calc(100% + 10px);right:0;width:260px;background:#fff;border-radius:16px;box-shadow:0 8px 32px #0000001f;padding:20px;z-index:50;display:grid;gap:8px}.credits-popover-title{margin:0;font-size:1rem;font-weight:800;color:#111827}.credits-popover-empty{margin:0;font-size:1rem;font-weight:700;color:#111827;line-height:1.3}.credits-popover-count{margin:0;font-size:1rem;font-weight:700;color:#111827}.credits-popover-renew{margin:0;font-size:.82rem;color:#6b7280}.credits-popover-profile{display:flex;align-items:center;gap:4px;background:none;border:none;border-top:1px solid #f0f4f1;padding:10px 0 0;margin-top:4px;font-size:.8rem;font-weight:700;letter-spacing:.05em;color:#6b7280;cursor:pointer;text-align:left;width:100%}.credits-popover-profile:hover{color:var(--brand-primary, #1b8f5a)}.credits-popover-buy{display:flex;align-items:center;gap:4px;background:none;border:none;padding:0;font-size:.8rem;font-weight:700;letter-spacing:.05em;color:#111827;cursor:pointer;text-align:left}.credits-popover-buy:hover{color:var(--brand-primary, #1b8f5a)}.submit-success-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:1000;animation:overlay-in .2s ease}@keyframes overlay-in{0%{opacity:0}to{opacity:1}}.submit-success-card{position:relative;background:#fff;border-radius:20px;padding:52px 48px 44px;text-align:center;max-width:380px;width:calc(100% - 48px);box-shadow:0 20px 60px #0000002e;animation:card-in .25s ease}@keyframes card-in{0%{opacity:0;transform:scale(.94) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}.submit-success-close{position:absolute;top:16px;right:16px;background:none;border:none;font-size:1.6rem;line-height:1;color:#9ca3af;cursor:pointer;padding:4px 8px;border-radius:8px}.submit-success-close:hover{background:#f3f4f6;color:#374151}.submit-success-icon{display:flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:50%;background:#d1fae5;color:#059669;font-size:1.8rem;font-weight:700;margin:0 auto 20px}.submit-success-title{font-size:1.5rem;font-weight:700;color:#111827;margin:0 0 10px}.submit-success-text{font-size:.95rem;color:#6b7280;margin:0;line-height:1.5}.submit-success-credits{display:flex;flex-direction:column;align-items:center;gap:4px;margin-top:24px;padding-top:20px;border-top:1px solid #f3f4f6}.submit-success-credits-value{font-size:2rem;font-weight:800;color:#059669;line-height:1}.submit-success-credits-label{font-size:.8rem;color:#9ca3af;text-transform:uppercase;letter-spacing:.04em}.upload-credit-row{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;background:#f0faf5;border:1.5px solid #6ee7b7;border-radius:12px;margin-bottom:12px}.upload-credit-left{display:flex;align-items:center;gap:12px}.upload-credit-badge{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:#059669;color:#fff;font-size:1.25rem;font-weight:800;flex-shrink:0}.upload-credit-label{font-size:.9rem;font-weight:600;color:#374151}.upload-credit-right{display:flex;flex-direction:column;align-items:flex-end;gap:1px}.upload-credit-balance-value{font-size:1.3rem;font-weight:800;line-height:1}.upload-credit-balance-label{font-size:.75rem;color:#6b7280}.upload-credit-ok{color:#059669}.upload-credit-empty{color:#dc2626}.upload-no-credits-hint{font-size:.82rem;color:#dc2626;text-align:center;margin-top:6px}.coach-students-directory{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;margin-top:16px}.coach-directory-card{display:flex;flex-direction:column;gap:14px;padding:18px;border:1px solid #e6eee8;border-radius:14px;background:#fff;box-shadow:0 1px 2px #0f172a0a}.coach-directory-card-head{display:flex;align-items:center;gap:12px}.coach-directory-name{margin:0;font-weight:700;color:#0f172a}.coach-directory-subtitle{margin:2px 0 0;font-size:.8rem;color:#64748b}.coach-directory-profile{display:grid;grid-template-columns:1fr 1fr;gap:8px 12px;margin:0}.coach-directory-profile div{display:flex;flex-direction:column;gap:2px}.coach-directory-profile dt{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:#64748b;font-weight:600}.coach-directory-profile dd{margin:0;font-size:.9rem;color:#1f2937}.coach-directory-profile-wide{grid-column:1 / -1}.coach-directory-stats{display:flex;gap:10px;margin-top:auto}.coach-directory-stat{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 8px;background:#f3f7f4;border-radius:10px}.coach-directory-stat-value{font-size:1.4rem;font-weight:800;color:var(--brand-primary, #1b8f5a);line-height:1}.coach-directory-stat-label{font-size:.72rem;text-align:center;color:#475569;font-weight:600}.coach-directory-cta{align-self:flex-start}.coach-directory-card-button{font-family:inherit;text-align:left;cursor:pointer;transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease}.coach-directory-card-button:hover{border-color:var(--brand-primary, #1b8f5a);box-shadow:0 4px 12px color-mix(in srgb,var(--brand-primary, #1b8f5a) 8%,transparent);transform:translateY(-1px)}.coach-directory-card-button:active{transform:translateY(0)}.coach-directory-card-button .chevron{margin-left:auto;font-size:1.4rem;color:#94a3b8}.coach-student-profile-head{display:flex;align-items:center;gap:16px;margin:16px 0;flex-wrap:wrap}.coach-student-profile-avatar{width:56px;height:56px;font-size:1.2rem}.coach-student-profile-stats{display:flex;gap:10px;flex:1;min-width:220px}.coach-student-profile-section{border-top:1px solid #e6eee8;padding-top:16px;margin-top:8px}.coach-student-profile-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.coach-student-profile-section h3{margin:0;font-size:1rem;color:#0f172a}.coach-student-profile-placeholder{background:#f8fbf9;border-radius:12px;padding:14px;border:1px dashed #bfd7c5}.coach-student-profile-actions{margin-top:16px;display:flex;gap:10px;flex-wrap:wrap}.class-archive{display:grid;gap:18px}.class-archive-month{display:grid;gap:10px}.class-archive-month-header{position:sticky;top:0;z-index:2;display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:8px 4px;margin:0 -4px;background:linear-gradient(to bottom,#fff 70%,#fff0);text-transform:capitalize}.class-archive-month-label{margin:0;font-size:.95rem;font-weight:700;color:#111827;letter-spacing:.01em}.class-archive-month-count{font-size:.8rem;color:#64748b}.class-archive-list{display:grid;gap:10px}.class-archive-card{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;background:#fff;border:1px solid #e6ede8;border-radius:14px;text-align:left;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,transform .05s ease}.class-archive-card:hover{border-color:#b7d6c2;box-shadow:0 4px 14px #0f34210f}.class-archive-card:active{transform:scale(.997)}.class-archive-card-unseen{border-color:var(--brand-primary, #1b8f5a);box-shadow:0 0 0 1px color-mix(in srgb,var(--brand-primary, #1b8f5a) 18%,transparent)}.class-archive-card-main{display:grid;gap:4px;min-width:0}.class-archive-card-date{margin:0;font-size:1rem;font-weight:700;color:#0f3421;display:flex;align-items:center;gap:8px}.class-archive-card-coach{margin:0;font-size:.86rem;color:#475569}.class-archive-card-tags{display:flex;align-items:center;gap:8px;flex-shrink:0}.class-archive-card-chevron{font-size:1.4rem;color:#94a3b8;line-height:1}.class-detail-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a8c;display:flex;align-items:center;justify-content:center;padding:16px;z-index:1000;animation:classDetailFadeIn .15s ease-out}@keyframes classDetailFadeIn{0%{opacity:0}to{opacity:1}}.class-detail-modal{background:#fff;border-radius:18px;width:min(720px,100%);max-height:calc(var(--app-vh, 100vh) - 32px);display:flex;flex-direction:column;overflow:hidden;box-shadow:0 30px 80px #0f172a40}.class-detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:18px 20px;border-bottom:1px solid #edf2ee}.class-detail-date{margin:0;font-size:1.1rem;font-weight:700;color:#0f3421}.class-detail-coach{margin:4px 0 0;font-size:.9rem;color:#475569}.class-detail-close{width:36px;height:36px;border-radius:999px;border:1px solid #dce8df;background:#fff;color:#334155;font-size:1.4rem;line-height:1;cursor:pointer;flex-shrink:0}.class-detail-close:hover{background:#f3f6f4}.class-detail-body{padding:18px 20px 22px;overflow-y:auto;display:grid;gap:12px}@media (max-width: 600px){.class-detail-overlay{padding:0}.class-detail-modal{width:100%;max-height:var(--app-vh, 100vh);height:var(--app-vh, 100vh);border-radius:0}.class-detail-header{padding-top:calc(18px + env(safe-area-inset-top,0px))}.class-detail-body{padding-bottom:calc(22px + env(safe-area-inset-bottom,0px))}}.vs-pending-section{display:grid;gap:10px;margin-bottom:20px;padding:14px;background:#fffaf0;border:1px solid #f6e0b8;border-radius:14px}.vs-answered-section{display:grid;gap:10px}.vs-pending-header{display:flex;align-items:center;gap:10px}.vs-pending-header-toggle{width:100%;justify-content:space-between;padding:0;background:transparent;border:none;cursor:pointer;text-align:left}.vs-pending-title-group{display:flex;align-items:center;gap:10px}.vs-pending-chevron{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:999px;color:#475569;font-size:.85rem;transition:transform .15s ease}.vs-pending-chevron-open{transform:rotate(180deg)}.vs-pending-title{margin:0;font-size:.95rem;font-weight:700;color:#111827}.vs-pending-count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 7px;border-radius:999px;background:#d97706;color:#fff;font-size:.75rem;font-weight:700}.vs-card-pending{background:#fff;border-color:#f0d8a4}.vs-status-chip{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;font-size:.75rem;font-weight:700;white-space:nowrap}.vs-status-pending{background:#fef3c7;color:#92400e}.vs-status-answered{background:#dcfce7;color:#166534}.vs-thread{display:grid;gap:12px}.vs-thread-half{display:grid;gap:10px}.vs-thread-heading{display:flex;align-items:center;gap:8px;margin:0;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#475569}.vs-thread-heading-icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:999px;background:#eef6f0;color:var(--brand-primary-strong, #166b43);font-size:.85rem;font-weight:700}.vs-thread-divider{height:1px;background:#edf2ee;margin:4px 0}.vs-thread-empty-reply{margin:0;padding:14px;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:12px;color:#475569;font-size:.92rem;text-align:center}.vs-thread-delete{justify-self:start;margin-top:4px}.coach-camera-toggle{display:flex;align-items:center;gap:12px;cursor:pointer;font-weight:600;font-size:.95rem;color:#334155;padding:8px 0;-webkit-user-select:none;user-select:none}.coach-camera-toggle input[type=checkbox]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:44px;height:24px;background:#d1d5db;border-radius:12px;position:relative;cursor:pointer;transition:background .2s ease;flex-shrink:0}.coach-camera-toggle input[type=checkbox]:after{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;background:#fff;border-radius:50%;transition:transform .2s ease;box-shadow:0 1px 3px #00000026}.coach-camera-toggle input[type=checkbox]:checked{background:var(--brand-primary, #1b8f5a)}.coach-camera-toggle input[type=checkbox]:checked:after{transform:translate(20px)}.coach-register-form{padding:16px 18px;display:flex;flex-direction:column;gap:8px}.coach-register-form input:not([type=checkbox]),.coach-register-form textarea,.coach-register-form select{width:100%;padding:10px 12px;border:1px solid #d1e7d1;border-radius:10px;font-size:.95rem;font-family:inherit;margin-top:4px}.coach-register-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px 16px}@media (max-width: 600px){.coach-register-grid{grid-template-columns:1fr}}.admin-notifications-list{display:flex;flex-direction:column;gap:8px;padding:0 18px 18px}.admin-notification{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:12px 16px;border-radius:10px;background:var(--brand-page-bg, #f5f7f5);border:1px solid #e5e7eb}.admin-notification-unread{background:var(--brand-secondary-bg, #f2fbf4);border-color:var(--brand-secondary-border, rgba(27,143,90,.2))}.perfil-password-section{padding-top:8px;border-top:1px solid #e5e7eb;margin-top:16px}.kpi-dashboard{display:flex;flex-direction:column;gap:20px;padding-top:8px}.kpi-stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}@media (max-width: 900px){.kpi-stats-row{grid-template-columns:repeat(2,1fr)}}@media (max-width: 500px){.kpi-stats-row{grid-template-columns:1fr 1fr}}.kpi-stat-card{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;background:#f8f9ff;border:1px solid #e5e7eb;border-radius:14px;padding:18px 20px;gap:4px}.kpi-stat-card--accent{background:var(--brand-color, #6366f1);border-color:transparent;color:#fff}.kpi-stat-card--accent .kpi-stat-value,.kpi-stat-card--accent .kpi-stat-label{color:#fff}.kpi-stat-value{font-size:1.9rem;font-weight:700;line-height:1.1;color:#111827}.kpi-stat-label{font-size:.78rem;color:#6b7280;font-weight:500}.kpi-trend-up{color:#10b981;font-size:.85rem;font-weight:600}.kpi-trend-down{color:#ef4444;font-size:.85rem;font-weight:600}.kpi-stat-card--accent .kpi-trend-up,.kpi-stat-card--accent .kpi-trend-down{color:#ffffffd9}.kpi-chart-block{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:20px 20px 16px}.kpi-block-title{font-size:.78rem;font-weight:700;color:#6b7280;margin:0 0 14px;text-transform:uppercase;letter-spacing:.06em}.kpi-stats-row--coach{grid-template-columns:repeat(2,1fr)}@media (max-width: 500px){.kpi-stats-row--coach{grid-template-columns:1fr}}.kpi-coach-header{display:flex;align-items:center;gap:14px;padding:16px 20px;background:#f8f9ff;border:1px solid #e5e7eb;border-radius:14px}.kpi-coach-avatar{width:48px;height:48px;border-radius:50%;background:var(--brand-color, #6366f1);color:#fff;font-size:1.3rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.kpi-coach-label{font-size:.74rem;color:#6b7280;font-weight:500;text-transform:uppercase;letter-spacing:.05em;margin:0}.kpi-coach-name{font-size:1.1rem;font-weight:700;color:#111827;margin:2px 0 0}.kpi-two-col{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media (max-width: 700px){.kpi-two-col{grid-template-columns:1fr}}.trim-timeline-wrapper{padding:20px 0 6px;-webkit-user-select:none;user-select:none}.trim-timeline{position:relative;height:56px;cursor:crosshair;margin:0 12px;touch-action:none}.trim-track-bg{position:absolute;top:50%;left:0;right:0;height:8px;transform:translateY(-50%);background:#e5e7eb;border-radius:4px}.trim-excluded-zone{position:absolute;top:50%;height:8px;transform:translateY(-50%);background:#0000004d;border-radius:4px;pointer-events:none}.trim-selection{position:absolute;top:0;bottom:0;border-top:3px solid #16a34a;border-bottom:3px solid #16a34a;background:#16a34a1a;pointer-events:none}.trim-playhead{position:absolute;top:4px;bottom:4px;width:2px;background:#2563eb;border-radius:1px;transform:translate(-1px);pointer-events:none;z-index:5}.trim-handle{position:absolute;top:0;bottom:0;width:44px;cursor:ew-resize;z-index:10;display:flex;align-items:center;justify-content:center;touch-action:none}.trim-handle--start{transform:translate(-75%)}.trim-handle--end{transform:translate(-25%)}.trim-handle-pill{width:6px;height:32px;background:#16a34a;border-radius:3px;pointer-events:none}.trim-handle-label{position:absolute;bottom:calc(100% + 4px);background:#16a34a;color:#fff;font-size:11px;font-weight:600;padding:2px 6px;border-radius:4px;white-space:nowrap;pointer-events:none}.trim-timeline-labels{display:flex;justify-content:space-between;font-size:11px;color:#9ca3af;margin-top:6px;padding:0 12px}.trim-duration-label{font-weight:600;color:#16a34a}.trim-loading{padding:12px 0;font-size:13px;color:#9ca3af;text-align:center}.kpi-filter-trigger{font-size:.88rem;padding:7px 12px;border:1.5px solid var(--brand-secondary-border, rgba(27,143,90,.2));border-radius:10px;background:#fff;color:#1f2937;cursor:pointer;white-space:nowrap;line-height:1.4;font-family:inherit}.kpi-filter-trigger:hover{border-color:var(--brand-primary, #1b8f5a)}.kpi-filter-trigger:focus{outline:none;border-color:var(--brand-primary, #1b8f5a)}.kpi-filter-menu{position:absolute;top:100%;left:0;z-index:20;margin-top:4px;min-width:200px;max-height:260px;overflow-y:auto;background:#fff;border:1.5px solid var(--brand-secondary-border, rgba(27,143,90,.2));border-radius:12px;box-shadow:0 6px 16px #0f172a14;padding:6px 0}.kpi-filter-option{display:flex;align-items:center;gap:8px;padding:7px 12px;cursor:pointer;font-size:.88rem;color:#1f2937;white-space:nowrap}.kpi-filter-option:hover{background:var(--brand-secondary-bg, #f2fbf4)}.admin-videos-filters{padding:0 16px;display:grid;gap:8px}.admin-videos-filters-title{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:#64748b;font-weight:600;margin:0}.admin-panel>.coach-analysis-layout{margin:0 -28px -28px}.admin-panel>.coach-analysis-layout>.coach-students-sidebar{border-radius:0 0 0 28px}.admin-panel>.coach-analysis-layout>.coach-analysis-main>.coach-requests-panel,.admin-panel>.coach-analysis-layout>.coach-analysis-main>.coach-empty-state{border:none;box-shadow:none;border-radius:0 0 28px}@media (max-width: 1100px){.admin-panel>.coach-analysis-layout>.coach-students-sidebar,.admin-panel>.coach-analysis-layout>.coach-analysis-main>.coach-requests-panel,.admin-panel>.coach-analysis-layout>.coach-analysis-main>.coach-empty-state{border-radius:0 0 28px 28px}}#root{width:100%;min-height:var(--app-vh, 100vh)}body{margin:0;min-height:var(--app-vh, 100vh);background:#f5f7f5;color:#0f172a;font-family:Inter,Poppins,system-ui,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}img{display:block;max-width:100%}*{box-sizing:border-box}:root{font-family:Inter,Poppins,system-ui,sans-serif;--app-vh: 100vh;line-height:1.6;font-weight:400;color:#0f172a;background-color:#f5f7f5;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@supports (height: 100dvh){:root{--app-vh: 100dvh}}*{margin:0;padding:0;box-sizing:border-box}html{width:100%;overflow-x:hidden}body{min-height:var(--app-vh);min-width:320px;background:#f5f7f5;color:#0f172a}#root{width:100%;min-height:var(--app-vh)}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{border:none;background:none}input,select{font:inherit}img{max-width:100%;display:block}@media (min-width: 768px){h1{font-size:2.2rem}}.admin-page{padding:24px 0}.admin-panel{max-width:1200px;margin:0 auto}.admin-table-wrapper{overflow-x:auto;margin-top:18px}.admin-table{width:100%;border-collapse:collapse;min-width:720px}.admin-table th,.admin-table td{padding:14px 12px;border-bottom:1px solid #e5e7eb;text-align:left;vertical-align:middle}.admin-table th{font-weight:700;color:#374151}.admin-table td{color:#1f2937}.admin-table .id-cell{font-size:.85rem;color:#6b7280;word-break:break-all}.admin-table select{min-width:140px;padding:8px 10px;border:1px solid #d1d5db;border-radius:8px;background:#fff}.admin-table button{padding:8px 12px}.btn-secondary{border-radius:999px;background-color:#1b8f5a;color:#fff;padding:8px 12px;cursor:pointer}.btn-secondary:disabled{opacity:.55;cursor:not-allowed}.error-message{color:#b91c1c;margin-top:12px}.progress-bar{width:100%;height:20px;background-color:#e0e0e0;border-radius:10px;margin:10px 0;position:relative}.progress-fill{height:100%;background-color:#1b8f5a;border-radius:10px;transition:width .3s ease}.progress-bar span{position:absolute;top:0;left:50%;transform:translate(-50%);color:#fff;font-weight:700}
