.admin-modal-backdrop{z-index:200;background:#0f172a73;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.admin-modal{background:#fff;border-radius:20px;width:100%;max-width:440px;max-height:90vh;padding:24px;overflow-y:auto;box-shadow:0 20px 40px #00000026}.admin-modal-title{color:#1e3a5f;margin:0 0 20px;font-size:20px;font-weight:800}.admin-form{flex-direction:column;gap:14px;display:flex}.admin-form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.admin-field{color:#64748b;flex-direction:column;gap:6px;font-size:12px;font-weight:600;display:flex}.admin-field input,.admin-field select,.admin-field textarea{color:#1e3a5f;border:1px solid #e2e8f0;border-radius:10px;padding:10px 12px;font-family:inherit;font-size:15px}.admin-field input:focus,.admin-field select:focus,.admin-field textarea:focus{border-color:#2563eb;outline:none;box-shadow:0 0 0 3px #2563eb26}.admin-checkbox{color:#1e3a5f;cursor:pointer;align-items:center;gap:8px;font-size:14px;display:flex}.admin-hint{color:#64748b;margin:-4px 0 12px;font-size:12px;line-height:1.4}.admin-form-error{color:#dc2626;margin:0;font-size:13px}.admin-form-actions{gap:10px;margin-top:4px;display:flex}.admin-btn{cursor:pointer;border:none;border-radius:10px;flex:1;padding:10px 12px;font-size:13px;font-weight:700}.admin-btn.cancel{color:#64748b;background:#f1f5f9}.admin-btn.save{background:var(--brand,#2563eb);color:#fff}.admin-btn.save.outline{color:var(--brand,#2563eb);border:1px solid var(--brand-border,#bfdbfe);background:#fff}.admin-btn.danger{color:#dc2626;background:#fef2f2;flex:none;padding:10px 14px}.allocate-member-name{color:#64748b;margin:-8px 0 12px;font-size:15px;font-weight:700}.allocate-pkg-preview{background:#eff6ff;border-radius:10px;justify-content:space-between;padding:10px 12px;font-size:13px;display:flex}.allocate-pkg-price{color:#2563eb;font-weight:800}.allocate-pkg-limit{color:#64748b}.admin-field-hint{color:#94a3b8;margin:-6px 0 4px;font-size:12px;line-height:1.45}.admin-billing-fieldset{border:none;margin:0;padding:0}.admin-billing-fieldset .admin-field{margin-bottom:10px}.admin-billing-option{cursor:pointer;color:#475569;border:1px solid #e2e8f0;border-radius:12px;align-items:flex-start;gap:10px;margin-bottom:8px;padding:12px;font-size:13px;display:flex}.admin-billing-option strong{color:#1e3a5f;margin-bottom:2px;display:block}.admin-billing-option small{color:#64748b;font-size:12px;line-height:1.4;display:block}.billing-role-badge{letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;border-radius:8px;padding:3px 8px;font-size:10px;font-weight:800;display:inline-block}.billing-role-self{color:#64748b;background:#f1f5f9}.billing-role-dependent{color:#b45309;background:#fef3c7}.billing-role-payer,.billing-role-payer_and_dependents{color:#2563eb;background:#eff6ff}.billing-rel-compact{color:#64748b;font-size:11px;line-height:1.35;display:inline}.billing-rel-compact strong{color:#1e3a5f;font-weight:700}.billing-rel-dependent strong{color:#b45309}.billing-rel-payer strong{color:#2563eb}.billing-rel-panel{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;margin-bottom:14px;padding:12px 14px}.billing-rel-panel-simple{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.billing-rel-panel-simple .billing-rel-subtitle{margin:0}.billing-rel-header{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;display:flex}.billing-rel-subtitle{color:#64748b;font-size:12px;line-height:1.35}.billing-rel-fact,.billing-rel-fact-list{padding-top:2px}.billing-rel-fact-label{letter-spacing:.05em;text-transform:uppercase;color:#94a3b8;margin-bottom:6px;font-size:10px;font-weight:800;display:block}.billing-rel-fact strong{color:#1e3a5f;font-size:14px;display:block}.billing-rel-fact-meta{color:#64748b;margin-top:2px;font-size:12px;display:block}.billing-rel-people{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.billing-rel-people li{background:#fff;border:1px solid #e2e8f0;border-radius:10px;flex-direction:column;gap:1px;padding:8px 10px;display:flex}.billing-rel-people strong{color:#1e3a5f;font-size:13px}.billing-rel-people span{color:#64748b;font-size:11px}.billing-member-summary{margin-bottom:12px}.billing-member-role{margin-bottom:10px}.billing-member-block{color:#475569;border-radius:12px;padding:12px 14px;font-size:13px;line-height:1.5}.billing-member-dependent{background:#fffbeb;border:1px solid #fde68a}.billing-member-payer{background:#eff6ff;border:1px solid #bfdbfe}.billing-member-lead{color:#1e3a5f;margin:0 0 8px}.billing-member-label{text-transform:uppercase;letter-spacing:.04em;color:#64748b;margin-bottom:4px;font-size:11px;font-weight:700;display:block}.billing-member-block p{margin:0 0 6px}.billing-member-block p:last-child{margin-bottom:0}.billing-member-note{font-size:12px;color:#64748b!important}.billing-member-dep-list{margin:0;padding:0 0 0 4px;list-style:none}.billing-member-dep-list li{border-top:1px solid #bfdbfe99;padding:6px 0;font-size:13px}.billing-member-dep-list li:first-child{border-top:none;padding-top:0}.billing-member-dep-list span{color:#64748b}.member-billing-line{flex-wrap:wrap;align-items:center;gap:6px;margin-top:4px;display:flex}.billing-modal{max-width:420px}.billing-modal:has(.bulk-invoice-list){max-width:520px}.bulk-invoice-list{border:1px solid #e2e8f0;border-radius:12px;max-height:240px;margin:0 0 12px;padding:0;list-style:none;overflow-y:auto}.bulk-invoice-row{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.bulk-invoice-row:last-child{border-bottom:none}.bulk-invoice-row.disabled{opacity:.55}.bulk-invoice-row .admin-checkbox{flex:1;align-items:flex-start;min-width:0}.bulk-invoice-row .admin-checkbox span{flex-direction:column;gap:2px;display:flex}.bulk-invoice-row .admin-checkbox strong{color:#0f172a;font-size:13px}.bulk-invoice-row .admin-checkbox small{color:#64748b;font-size:11px;font-weight:500}.bulk-invoice-amount{color:#0f172a;white-space:nowrap;font-size:13px;font-weight:700}.billing-statement-email{color:#64748b;margin:0 0 12px;font-size:13px}.billing-statement-preview{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;margin-bottom:12px;padding:12px 14px}.billing-statement-row{color:#475569;justify-content:space-between;padding:6px 0;font-size:13px;display:flex}.billing-owing{color:#dc2626}.billing-paid{color:#059669}.member-detail.account-detail{flex-direction:column;max-width:440px;max-height:90vh;padding:0;display:flex;overflow:hidden}.account-header{flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:12px;padding:18px 18px 0;display:flex}.account-header .member-detail-name{margin:0;font-size:20px}.account-body{flex:1;min-height:0;padding:12px 18px 20px;overflow-y:auto}.account-billed-via-note{color:#9a3412;background:#fff7ed;border:1px solid #fed7aa;border-radius:10px;margin:0 0 4px;padding:8px 10px;font-size:12px;font-weight:600}.account-member-email{color:#64748b;margin:4px 0 0;font-size:13px}.account-balance-card{text-align:left;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;padding:12px 14px;display:flex}.account-balance-card.owing{background:#fef2f2;border:1px solid #fecaca}.account-balance-card.credit{background:#ecfdf5;border:1px solid #a7f3d0}.account-balance-card.clear{background:#f8fafc;border:1px solid #e2e8f0}.account-balance-copy{min-width:0}.account-balance-label{letter-spacing:.04em;text-transform:uppercase;color:#64748b;font-size:11px;font-weight:700;display:block}.account-balance-value{color:#1e3a5f;white-space:nowrap;font-size:22px;font-weight:800;display:block}.account-balance-card.owing .account-balance-value{color:#dc2626}.account-balance-hint{color:#64748b;margin-top:2px;font-size:12px;display:block}.account-actions{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:18px;display:grid}.account-billing-block{flex-direction:column;align-items:flex-start;gap:8px;margin-bottom:14px;display:flex}.account-billing-block .billing-rel-panel{width:100%;margin-bottom:0}.account-section-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.account-section-head h3{margin:0}.account-action-btn{color:#1e3a5f;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:10px;flex:1;padding:10px 8px;font-size:13px;font-weight:700}.account-action-btn:hover{border-color:var(--brand-border,#bfdbfe);color:var(--brand,#2563eb);background:var(--brand-light,#eff6ff)}.account-open-invoices,.account-transactions,.account-statements{margin-bottom:16px}.account-open-invoices h3,.account-transactions h3,.account-statements h3,.account-payment-summary h3{letter-spacing:.04em;text-transform:uppercase;color:#94a3b8;margin:0 0 8px;font-size:12px;font-weight:800}.account-open-invoices ul,.account-transactions ul,.account-statements ul{margin:0;padding:0;list-style:none}.account-invoice-row{border-bottom:1px solid #f1f5f9;justify-content:space-between;gap:12px;padding:12px 0;font-size:13px;display:flex}.account-invoice-main{flex:1;min-width:0}.account-invoice-top{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:4px;display:flex}.account-invoice-num{color:#1e3a5f;font-weight:700}.account-invoice-desc{color:#64748b;line-height:1.4;display:block}.account-invoice-for{color:#b45309;margin-top:4px;font-size:11px;font-weight:600;display:block}.account-invoice-status{text-transform:uppercase;letter-spacing:.03em;border-radius:999px;padding:2px 8px;font-size:10px;font-weight:700;display:inline-block}.account-invoice-status.status-overdue{color:#dc2626;background:#fef2f2}.account-invoice-status.status-partial{color:#d97706;background:#fffbeb}.account-invoice-status.status-sent,.account-invoice-status.status-draft{background:var(--brand-light,#eff6ff);color:var(--brand,#2563eb)}.account-invoice-actions{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:4px;display:flex}.account-invoice-amount{color:#1e3a5f;font-weight:700}.billing-link-btn{color:var(--brand,#2563eb);cursor:pointer;background:0 0;border:none;padding:0;font-size:12px;font-weight:600}.billing-link-btn.danger{color:#dc2626}.account-tx{border-bottom:1px solid #f1f5f9;justify-content:space-between;gap:12px;padding:10px 0;font-size:13px;display:flex}.account-tx-desc{color:#334155;font-weight:600;display:block}.account-tx-date,.account-tx-ref{color:#94a3b8;margin-top:2px;font-size:12px;display:block}.account-tx-amount{white-space:nowrap;font-weight:700}.account-tx-amount.debit{color:#dc2626}.account-tx-amount.credit{color:#059669}.account-statement-row{color:#64748b;border-bottom:1px solid #f1f5f9;justify-content:space-between;padding:6px 0;font-size:12px;display:flex}.account-empty{color:#94a3b8;margin:0;font-size:13px}.member-balance-badge{white-space:nowrap;border-radius:8px;padding:4px 8px;font-size:12px;font-weight:700}.member-balance-badge.owing{color:#dc2626;background:#fef2f2}.member-balance-badge.clear{color:#059669;background:#ecfdf5}.member-balance-badge.zero{color:#64748b;background:#f1f5f9}.billing-payer-note{color:#1e40af;background:#eff6ff;border-radius:10px;margin:0 0 14px;padding:10px 12px;font-size:13px;line-height:1.45}.billing-payer-note-self{color:#475569;background:#f8fafc}.account-payment-summary{margin-bottom:14px}.account-payment-row{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;justify-content:space-between;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.account-payment-row strong{color:#1e3a5f;font-size:14px;display:block}.account-payment-row span{color:#64748b;margin-top:2px;font-size:12px;display:block}.account-debit-badge{color:#059669;text-transform:uppercase;background:#ecfdf5;border-radius:8px;flex-shrink:0;padding:3px 8px;font-size:10px;font-weight:700}.admin-screen{background:#fff;height:100%;padding-bottom:24px;overflow-y:auto}.admin-screen--hub-open{overscroll-behavior:none;overflow:hidden}.admin-screen--hub-open .admin-screen-header,.admin-screen--hub-open .admin-stats,.admin-screen--hub-open .admin-tabs,.admin-screen--hub-open .admin-section{pointer-events:none;visibility:hidden}.admin-screen-header{justify-content:space-between;align-items:flex-start;gap:12px;padding:12px 20px 8px;display:flex}.admin-screen-header-actions{flex-shrink:0;align-items:flex-start;gap:12px;margin-left:auto;display:flex}.admin-screen-header-actions .notif-bell{border-radius:9px;width:32px;height:32px;margin-top:2px}.admin-customize-btn{margin-top:2px}.admin-screen .settings-btn{color:#64748b;cursor:pointer;background:#f1f5f9;border:none;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;padding:0;display:flex}.admin-screen .settings-btn:hover{color:#2563eb;background:#e2e8f0}.admin-screen-header-left{align-items:flex-start;gap:10px;display:flex}.admin-screen-icon{color:#2563eb;display:flex}.admin-screen-label{color:#2563eb;letter-spacing:1.2px;font-size:11px;font-weight:600}.admin-screen-gym{color:#1e3a5f;font-size:22px;font-style:italic;font-weight:800;line-height:1.1}.admin-stats{flex-wrap:wrap;gap:8px;padding:0 20px 12px;display:flex}.admin-stat{white-space:nowrap;color:#64748b;background:#f1f5f9e6;border:1px solid #94a3b82e;border-radius:999px;flex:none;padding:6px 10px;font-size:12px;font-weight:600}.admin-stat-warn{color:#b45309;background:#fffbeb;border-color:#fde68a}.admin-filter-chips{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.admin-chip{color:#64748b;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:20px;padding:6px 12px;font-size:12px;font-weight:600}.admin-chip.active{background:var(--brand-light,#eff6ff);border-color:var(--brand-border,#bfdbfe);color:var(--brand,#2563eb)}.admin-chip-warn.active{color:#b45309;background:#fffbeb;border-color:#fde68a}.admin-chip-more{align-items:center;gap:4px;max-width:180px;display:inline-flex}.admin-chip-more.active{color:#334155;background:#f8fafc;border-color:#cbd5e1}.admin-add-menu,.admin-more-filter{flex-shrink:0;position:relative}.admin-add-caret{opacity:.75;margin-left:2px;font-size:10px}.admin-menu-popover{z-index:40;background:#fff;border:1px solid #e2e8f0;border-radius:14px;flex-direction:column;gap:2px;min-width:220px;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 12px 32px #0f172a24}.admin-menu-popover-wide{min-width:240px;max-height:min(70vh,420px);left:0;right:auto;overflow-y:auto}.admin-menu-popover button{text-align:left;cursor:pointer;width:100%;font:inherit;background:0 0;border:none;border-radius:10px;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 12px;display:flex}.admin-menu-popover button:hover,.admin-menu-popover button.selected{background:#f1f5f9}.admin-menu-popover button.selected{background:#eff6ff}.admin-menu-popover strong{color:#1e3a5f;font-size:13px}.admin-menu-popover span{color:#64748b;font-size:11px}.admin-menu-label{letter-spacing:.06em;text-transform:uppercase;color:#94a3b8;margin:8px 8px 2px;font-size:10px;font-weight:800}.admin-menu-label:first-child{margin-top:4px}.admin-menu-action{margin-top:4px;color:#2563eb!important;border-top:1px solid #e2e8f0!important;border-radius:0 0 10px 10px!important;font-size:12px!important;font-weight:700!important}.member-pkg-missing{color:#b45309;background:#fef3c7}.admin-tabs{-webkit-overflow-scrolling:touch;scrollbar-width:none;background:#f1f5f9;border-radius:12px;flex-wrap:nowrap;gap:2px;margin:0 16px 12px;padding:4px;display:flex;overflow-x:auto}.admin-tabs::-webkit-scrollbar{display:none}.admin-tab{color:#64748b;cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:10px;flex:1 0 auto;padding:10px 14px;font-size:13px;font-weight:700;transition:background .15s,color .15s}.admin-tab.active{color:var(--brand,#2563eb);background:#fff;box-shadow:0 1px 3px #0f172a14}.admin-section{padding:0 16px}.admin-toolbar{align-items:center;gap:10px;margin-bottom:12px;display:flex}.admin-toolbar-end{justify-content:flex-end}.admin-activity-header{justify-content:space-between;align-items:flex-start;gap:12px;margin:0 0 14px;display:flex}.admin-activity-title{color:#1e3a5f;margin:0 0 4px;font-size:18px;font-weight:800}.admin-activity-lead{color:#64748b;margin:0;font-size:13px;line-height:1.4}.admin-activity-export{flex-shrink:0;position:relative}.admin-activity-export .admin-report-btn{align-items:center;gap:6px;display:inline-flex}.admin-activity-export-menu{min-width:220px;left:auto;right:0}.admin-report-row{flex-wrap:wrap;gap:8px;margin:0 0 12px;display:flex}.admin-report-btn{color:#1e3a5f;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:8px 12px;font-size:12px;font-weight:700}.admin-report-btn.primary{background:var(--brand,#2563eb);border-color:var(--brand,#2563eb);color:#fff}.admin-activity-filters{background:#f8fafcb3;border:1px solid #e2e8f0;border-radius:14px;flex-direction:column;gap:10px;margin:0 0 12px;padding:12px;display:flex}.admin-activity-search{box-sizing:border-box;width:100%}.admin-activity-dates{grid-template-columns:1fr 1fr;gap:10px;display:grid}.admin-activity-members,.admin-activity-members select{width:100%;min-width:0}.admin-date-field{color:#64748b;flex-direction:column;gap:4px;font-size:11px;font-weight:700;display:flex}.admin-date-field input,.admin-date-field select{color:#1e3a5f;box-sizing:border-box;background:#fff;border:1px solid #e2e8f0;border-radius:10px;width:100%;min-width:0;padding:8px 10px;font-size:13px}.activity-member-chips{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.activity-member-chip{color:#2563eb;cursor:pointer;background:#eff6ff;border:1px solid #bfdbfe;border-radius:20px;align-items:center;gap:6px;padding:6px 10px;font-size:12px;font-weight:700;display:inline-flex}.activity-member-chip span{opacity:.7;font-size:14px;line-height:1}.activity-member-clear{color:#64748b;cursor:pointer;background:0 0;border:none;padding:6px 4px;font-size:12px;font-weight:700}.activity-member-clear:hover{color:#1e3a5f}.admin-activity-cats{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap;gap:8px;margin-bottom:12px;display:flex;overflow-x:auto}.admin-activity-cats::-webkit-scrollbar{display:none}.admin-activity-cats .admin-chip{white-space:nowrap;flex:none}.admin-activity-empty{color:#94a3b8;margin:8px 0 24px;font-size:14px}.activity-list{flex-direction:column;gap:8px;margin:0 0 24px;padding:0;list-style:none;display:flex}.activity-row{background:#fff;border:1px solid #e2e8f0;border-radius:12px;justify-content:space-between;align-items:flex-start;gap:12px;padding:12px 14px;display:flex}button.activity-row-button{text-align:left;width:100%;font:inherit;cursor:pointer;color:inherit}button.activity-row-button:hover{background:#f8fbff;border-color:#bfdbfe}.activity-main{flex-direction:column;gap:4px;min-width:0;display:flex}.activity-type{color:#2563eb;letter-spacing:.03em;text-transform:uppercase;background:#eff6ff;border-radius:999px;align-self:flex-start;padding:2px 8px;font-size:10px;font-weight:800}.activity-type-invoice_created,.activity-type-invoice_sent,.activity-type-payment_received,.activity-type-statement_sent{color:#047857;background:#ecfdf5}.activity-type-booking_created,.activity-type-coach_checked_in,.activity-type-member_checked_in{color:#6d28d9;background:#f5f3ff}.activity-type-invoice_voided,.activity-type-package_removed,.activity-type-booking_cancelled{color:#dc2626;background:#fef2f2}.activity-summary{color:#1e3a5f;font-size:14px;font-weight:600}.activity-member{color:#64748b;font-size:12px}.activity-when{color:#94a3b8;white-space:nowrap;flex-shrink:0;font-size:12px;font-weight:600}.admin-search{color:#1e3a5f;border:1px solid #e2e8f0;border-radius:12px;flex:1;padding:10px 14px;font-size:14px}.admin-search:focus{border-color:var(--brand,#2563eb);outline:none;box-shadow:0 0 0 3px #2563eb26}.member-list{flex-direction:column;gap:8px;display:flex}.member-row{cursor:pointer;text-align:left;width:100%;font:inherit;background:#fff;border:1px solid #e2e8f0;border-radius:14px;align-items:center;gap:12px;padding:14px 16px;transition:box-shadow .15s;display:flex;box-shadow:0 1px 3px #0f172a0a}.member-row:hover{box-shadow:0 4px 12px #0f172a0f}.member-avatar{color:#94a3b8;background:#f1f5f9;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.member-summary{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.member-name{color:#1e3a5f;font-size:15px;font-weight:700}.member-email{color:#64748b;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.member-badges{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:4px;max-width:min(52%,240px);display:flex}.member-pkg-badge{color:#2563eb;text-align:right;text-overflow:ellipsis;white-space:nowrap;background:#eff6ff;border-radius:20px;max-width:100%;padding:3px 9px;font-size:11px;font-weight:700;line-height:1.3;overflow:hidden}.member-pkg-credits{color:#64748b;margin-left:4px;font-size:10px;font-weight:600}.member-status{text-transform:uppercase;letter-spacing:.04em;border-radius:20px;padding:2px 8px;font-size:10px;font-weight:700;display:inline-block}.member-status-active{color:#059669;background:#ecfdf5}.member-status-inactive{color:#2563eb;background:#eff6ff}.member-status-blocked{color:#b91c1c;background:#fef2f2}.member-rejoin-badge{color:#b45309;background:#fef3c7;border-radius:20px;padding:2px 8px;font-size:10px;font-weight:700;display:inline-block}@media (width<=380px){.member-row{flex-wrap:wrap;align-items:flex-start;gap:10px}.member-summary{flex:calc(100% - 52px)}.member-badges{border-top:1px solid #f1f5f9;flex-flow:wrap;flex:100%;justify-content:flex-start;align-items:center;max-width:none;margin-top:2px;padding-top:10px}.admin-stats{gap:8px}.admin-filter-chips{flex-wrap:wrap}}.member-rejoin-panel{background:#fffbeb;border:1px solid #fcd34d;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.member-rejoin-panel p{color:#92400e;margin:0;font-size:13px}.member-detail{background:#fff;border-radius:20px;flex-direction:column;width:100%;max-width:420px;max-height:min(90vh,720px);display:flex;overflow:hidden;box-shadow:0 20px 40px #00000026}.member-detail-header{align-items:flex-start;gap:10px;padding:20px 20px 0;display:flex}.member-detail-heading{flex:1;min-width:0}.member-detail-name{color:#1e3a5f;margin:0 0 8px;font-size:22px;font-weight:800;line-height:1.15}.member-detail-badges{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.member-detail-back,.member-detail-close{color:#64748b;cursor:pointer;background:#f1f5f9;border:none;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;margin-top:2px;padding:0;font-size:22px;line-height:1;display:flex}.member-detail-back:hover,.member-detail-close:hover{color:#1e3a5f;background:#e2e8f0}.member-hub-tabs-wrap{background:#f1f5f9;border-radius:12px;margin:12px 16px 0;position:relative}.member-hub-tabs-wrap:before,.member-hub-tabs-wrap:after{content:"";pointer-events:none;opacity:0;z-index:2;border-radius:12px;width:40px;transition:opacity .15s;position:absolute;top:0;bottom:0}.member-hub-tabs-wrap:before{background:linear-gradient(90deg,#f1f5f9 55%,#f1f5f900);left:0}.member-hub-tabs-wrap:after{background:linear-gradient(270deg,#f1f5f9 55%,#f1f5f900);right:0}.member-hub-tabs-wrap.can-scroll-left:before,.member-hub-tabs-wrap.can-scroll-right:after{opacity:1}.member-hub-tabs-cue{z-index:3;color:#2563eb;cursor:pointer;background:#fff;border:none;border-radius:999px;justify-content:center;align-items:center;width:24px;height:24px;padding:0;display:flex;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 1px 4px #0f172a2e}.member-hub-tabs-cue.left{left:4px}.member-hub-tabs-cue.right{right:4px}.member-hub-tabs-cue:hover{background:#eff6ff}.member-hub-tabs{-webkit-overflow-scrolling:touch;scrollbar-width:none;background:0 0;border-radius:12px;flex-wrap:nowrap;gap:2px;margin:0;padding:4px;display:flex;overflow-x:auto}.member-hub-tabs-wrap.can-scroll-left .member-hub-tabs{padding-left:28px}.member-hub-tabs-wrap.can-scroll-right .member-hub-tabs{padding-right:28px}.member-hub-tabs::-webkit-scrollbar{display:none}.member-hub-tab{color:#64748b;cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:10px;flex:1 0 auto;padding:8px 10px;font-size:12px;font-weight:700;transition:background .15s,color .15s}.member-hub-tab.active{color:var(--brand,#2563eb);background:#fff;box-shadow:0 1px 3px #0f172a14}.member-hub-tab-count{opacity:.75;margin-left:4px;font-size:11px}.member-hub-workout-tabs{background:#f1f5f9;border-radius:10px;gap:4px;margin-bottom:12px;padding:4px;display:flex}.member-hub-workout-tabs .member-hub-tab{flex:1}.member-hub-comms-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.member-hub-comms-row{text-align:left;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;align-items:flex-start;gap:4px;width:100%;padding:12px 14px;display:flex}.member-hub-comms-row-subject{color:#1e3a5f;align-items:center;gap:8px;font-size:14px;font-weight:700;display:flex}.member-hub-comms-row-meta{color:#64748b;font-size:12px}.member-hub-unread{text-transform:uppercase;letter-spacing:.04em;color:#1d4ed8;background:#dbeafe;border-radius:999px;padding:2px 6px;font-size:10px;font-weight:800}.member-hub-comms-subject{color:#1e3a5f;margin:10px 0 12px;font-size:16px;font-weight:800}.member-hub-comms-messages{flex-direction:column;gap:10px;margin:0 0 12px;padding:0;list-style:none;display:flex}.member-hub-comms-msg{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:10px 12px}.member-hub-comms-msg.staff{background:#eff6ff;border-color:#bfdbfe}.member-hub-comms-msg-meta{color:#64748b;justify-content:space-between;gap:8px;margin-bottom:4px;font-size:12px;display:flex}.member-hub-comms-msg p{color:#334155;white-space:pre-wrap;margin:0;font-size:14px}.member-hub-comms-reply,.member-hub-comms-compose{flex-direction:column;gap:10px;display:flex}.member-hub-comms-reply textarea,.member-hub-comms-compose textarea,.member-hub-comms-compose input{box-sizing:border-box;width:100%;font:inherit;resize:vertical;border:1px solid #e2e8f0;border-radius:10px;padding:10px 12px}.member-hub-history-list,.member-hub-pb-list,.member-hub-activity-list{margin:0;padding:0}.member-hub-activity-list .activity-row{align-items:flex-start}.member-hub .account-body{flex-direction:column;flex:none;gap:12px;min-height:auto;padding:0;display:flex;overflow:visible}.member-hub .account-actions{grid-template-columns:1fr 1fr}.member-detail-body{-webkit-overflow-scrolling:touch;flex-direction:column;flex:1;gap:14px;min-height:0;padding:16px 20px;display:flex;overflow-y:auto}.member-detail-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;padding:14px 16px}.member-detail-section h3{color:#94a3b8;text-transform:uppercase;letter-spacing:.06em;margin:0;font-size:11px;font-weight:700}.member-detail-section-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.member-detail-section-head h3{margin:0}.member-detail-lead{color:#1e3a5f;margin:0;font-size:17px;font-weight:800}.member-detail-meta{color:#64748b;margin:4px 0 0;font-size:13px;line-height:1.45}.member-detail-empty,.member-detail-warn{color:#64748b;margin:0;font-size:13px}.member-detail-warn{color:#dc2626;margin-top:8px;font-weight:600}.member-detail-voucher{border-top:1px solid #e2e8f0;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;padding-top:10px;display:flex}.member-admin-caps{border-top:1px solid #e2e8f0;flex-direction:column;gap:8px;margin-top:12px;padding-top:12px;display:flex}.member-admin-cap{color:#334155;cursor:pointer;align-items:flex-start;gap:8px;font-size:13px;display:flex}.member-admin-cap input{margin-top:2px}.member-detail-link-btn{color:#2563eb;cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:0;font-size:12px;font-weight:700}.member-detail-link-btn.primary{background:var(--brand,#2563eb);color:#fff;border-radius:8px;padding:6px 12px}.member-detail-contact h3{margin-bottom:4px}.member-detail-list{flex-direction:column;margin:0;display:flex}.member-detail-list .detail-item{border-bottom:1px solid #e8edf3;grid-template-columns:112px minmax(0,1fr);align-items:baseline;gap:10px 14px;margin:0;padding:11px 0;display:grid}.member-detail-list .detail-item:last-child{border-bottom:none;padding-bottom:2px}.member-detail-list .detail-item dt{letter-spacing:.04em;text-transform:uppercase;color:#94a3b8;margin:0;font-size:11px;font-weight:700}.member-detail-list .detail-item dd{color:#1e3a5f;word-break:break-word;margin:0;font-size:14px;font-weight:600;line-height:1.4}.member-detail-list .detail-item-block{align-items:start}.member-detail-facility-chips{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.member-detail-facility-chips li{color:#1e3a5f;background:#e8eef5;border-radius:8px;margin:0;padding:4px 9px;font-size:12px;font-weight:700;line-height:1.3}@media (width<=420px){.member-detail-list .detail-item{grid-template-columns:1fr;gap:4px}}.member-detail-notes{color:#475569;border-top:1px solid #e2e8f0;margin:12px 0 0;padding-top:12px;font-size:13px;line-height:1.45}.member-detail-notes-label{text-transform:uppercase;letter-spacing:.06em;color:#94a3b8;margin-bottom:4px;font-size:10px;font-weight:700;display:block}.member-detail-field{color:#94a3b8;text-transform:uppercase;letter-spacing:.04em;flex-direction:column;gap:6px;margin-top:10px;font-size:11px;font-weight:700;display:flex}.member-detail-field textarea,.member-detail-field input[type=date],.member-detail-field select{box-sizing:border-box;width:100%;font:inherit;text-transform:none;letter-spacing:normal;color:#1e3a5f;resize:vertical;background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:10px 12px;font-size:13px;font-weight:500}.member-reminder-meta{color:#b45309;text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:11px;display:block;overflow:hidden}.member-detail-footer{background:#fff;border-top:1px solid #e2e8f0;flex-shrink:0;grid-template-columns:1fr;gap:8px;padding:12px 20px 20px;display:grid}.member-detail-action{cursor:pointer;background:var(--brand,#2563eb);color:#fff;border:none;border-radius:10px;padding:11px 8px;font-size:13px;font-weight:700}.member-detail-action.outline{color:#2563eb;background:#fff;border:1px solid #bfdbfe}.member-detail-body .billing-rel-panel{margin-bottom:0}.member-rejoin-panel{background:#fffbeb;border:1px solid #fcd34d;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;margin:0;padding:12px 14px;display:flex}.detail-item dt{color:#94a3b8;text-transform:uppercase;letter-spacing:.06em;margin-bottom:2px;font-size:10px;font-weight:700}.detail-item dd{color:#1e3a5f;margin:0;font-size:14px}.member-allocation{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;margin:16px 0 4px;padding:14px}.member-allocation-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.member-allocation-header h3{color:#64748b;text-transform:uppercase;letter-spacing:.06em;margin:0;font-size:12px;font-weight:700}.allocate-btn{background:var(--brand,#2563eb);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:6px 12px;font-size:11px;font-weight:700}.allocation-card{flex-direction:column;gap:6px;display:flex}.allocation-card-top{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.allocation-pkg-name{color:#1e3a5f;font-size:16px;font-weight:800}.allocation-pkg-price{color:#2563eb;font-size:14px;font-weight:700}.allocation-dates{color:#64748b;flex-direction:column;gap:2px;font-size:12px;display:flex}.allocation-empty,.allocation-expired{color:#64748b;margin:0;font-size:13px}.allocation-expired{color:#dc2626;font-weight:600}.allocation-voucher{color:#64748b;border-top:1px solid #e2e8f0;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;padding-top:10px;font-size:13px;display:flex}.voucher-status{text-transform:uppercase;border-radius:10px;padding:2px 8px;font-size:10px;font-weight:700}.voucher-status-active{color:#059669;background:#ecfdf5}.voucher-status-exhausted,.voucher-status-expired{color:#78716c;background:#f5f5f4}.admin-facility-scope{color:#64748b;margin:0 16px 10px;font-size:13px;font-weight:600}.admin-facility-fieldset{border:1px solid #e2e8f0;border-radius:12px;margin:0;padding:12px 14px}.admin-facility-options{flex-direction:column;gap:8px;margin-top:8px;display:flex}.admin-facility-option{margin:0}.admin-screen .admin-btn{cursor:pointer;border:none;border-radius:10px;flex:1;padding:12px;font-size:13px;font-weight:700}.admin-screen .admin-btn.cancel{color:#64748b;background:#f1f5f9}.admin-screen .admin-btn.save{background:var(--brand,#2563eb);color:#fff}.admin-packages-toolbar{flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.admin-packages-toolbar>.admin-add-btn,.admin-packages-toolbar>button.admin-add{flex-shrink:0}.admin-packages-filters{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap;flex:1;gap:8px;min-width:0;margin-bottom:0;display:flex;overflow-x:auto}.admin-packages-filters::-webkit-scrollbar{display:none}.admin-packages-filters .admin-chip{white-space:nowrap;flex:none}.package-list{flex-direction:column;gap:12px;display:flex}.package-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;flex-direction:column;gap:12px;min-height:168px;padding:16px;display:flex;box-shadow:0 1px 3px #0f172a0a}.package-card-body{flex-direction:column;flex:1;gap:10px;min-width:0;display:flex}.package-kind-badge{color:#2563eb;text-transform:uppercase;letter-spacing:.04em;background:#eff6ff;border-radius:6px;flex-shrink:0;align-items:center;padding:2px 8px;font-size:10px;font-weight:800;display:inline-flex}.package-kind-badge.kind-class_pack{color:#6d28d9;background:#f5f3ff}.package-kind-badge.kind-fee{color:#c2410c;background:#fff7ed}.member-voucher-list{flex-direction:column;gap:8px;margin:10px 0 0;padding:0;list-style:none;display:flex}.member-voucher-row{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;font-size:13px;display:flex}.member-detail-section-actions{gap:8px;display:flex}.admin-class-type-picks,.admin-facility-picks{flex-direction:column;gap:6px;display:flex}.admin-field-hint{color:#64748b;font-size:12px;font-weight:600}.package-card.inactive{opacity:.65;border-style:dashed}.package-card-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.package-card-copy{flex:1;min-width:0}.package-name{color:#1e3a5f;margin:0;font-size:17px;font-weight:800;line-height:1.25}.package-desc{color:#64748b;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:4px 0 0;font-size:13px;line-height:1.4;display:-webkit-box;overflow:hidden}.package-price{color:#2563eb;white-space:nowrap;flex-shrink:0;font-size:15px;font-weight:800}.package-meta{color:#64748b;flex-wrap:wrap;align-items:center;gap:6px 8px;min-height:24px;font-size:12px;display:flex}.package-meta-detail{min-width:0}.package-member-count{color:#2563eb;white-space:nowrap;background:#eff6ff;border-radius:20px;margin-left:auto;padding:2px 8px;font-size:11px;font-weight:700}.package-inactive-badge{color:#dc2626;background:#fef2f2;border-radius:20px;padding:2px 8px;font-size:10px;font-weight:700}.package-actions{grid-template-columns:1fr 1fr 1fr;gap:8px;margin-top:auto;display:grid}.pkg-btn{cursor:pointer;white-space:nowrap;border:none;border-radius:10px;padding:8px 6px;font-size:11px;font-weight:700}.pkg-btn-spacer{visibility:hidden;pointer-events:none;display:block}.pkg-btn.edit{color:#2563eb;background:#eff6ff;border:1px solid #bfdbfe}.pkg-btn.toggle{color:#64748b;background:#f1f5f9;border:1px solid #e2e8f0}.pkg-btn.members{color:#059669;background:#f0fdf4;border:1px solid #bbf7d0}.package-member-list{border-top:1px solid #e2e8f0;flex-direction:column;gap:6px;margin-top:0;padding-top:12px;display:flex}.package-member-empty{color:#94a3b8;margin:0;font-size:13px}.package-member-row{width:100%;font:inherit;color:#1e3a5f;cursor:pointer;text-align:left;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;justify-content:space-between;align-items:center;padding:10px 12px;font-size:13px;font-weight:600;display:flex}.package-member-since{color:#94a3b8;font-size:11px;font-weight:500}.package-member-meta{flex-shrink:0;align-items:center;gap:8px;display:flex}.admin-screen .toast{color:#fff;z-index:300;background:#1e3a5f;border-radius:10px;padding:12px 20px;font-size:14px;position:fixed;bottom:80px;left:50%;transform:translate(-50%);box-shadow:0 4px 12px #00000026}.admin-screen .admin-modal-backdrop{z-index:200;background:#0f172a73;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.member-hub-popup-backdrop{touch-action:auto;pointer-events:auto}.member-hub-popup-backdrop .member-hub-popup{width:min(560px,100%);max-width:560px;max-height:min(90vh,820px);overflow:hidden}.member-hub-fullscreen{z-index:200;background:var(--surface,#fff);touch-action:auto;pointer-events:auto;padding:env(safe-area-inset-top,0) env(safe-area-inset-right,0) env(safe-area-inset-bottom,0) env(safe-area-inset-left,0);flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden}.member-hub-fullscreen>.member-hub{width:100%;max-width:none;height:100%;min-height:0;max-height:none;box-shadow:none;background:var(--surface,#fff);border-radius:0;flex:1;overflow:hidden}.member-detail-body .member-injury-list{flex-direction:column;gap:8px;margin:10px 0 0;padding:0;list-style:none;display:flex}.member-injuries h3{color:#1e3a5f;text-transform:uppercase;letter-spacing:.04em;margin:0 0 10px;font-size:13px;font-weight:800}.member-injury-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.member-injury-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:10px 12px}.member-injury-item.injury-status-active{background:#fef2f2;border-color:#fecaca}.member-injury-top{justify-content:space-between;gap:8px;margin-bottom:4px;display:flex}.member-injury-top strong{color:#1e3a5f;font-size:14px}.member-injury-top span{text-transform:uppercase;color:#64748b;font-size:10px;font-weight:700}.member-injury-item p{color:#475569;margin:0;font-size:13px}.member-injury-item small{color:#94a3b8;margin-top:4px;font-size:11px;display:block}.admin-members-primary{min-width:0}.member-row.selected{border-color:var(--brand,#2563eb);background:#eff6ff;box-shadow:0 0 0 1px #2563eb33}@media (width>=900px){.admin-tabs{max-width:none}.package-list{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));align-items:stretch;gap:14px;display:grid}.package-card{max-width:none;height:100%}.admin-packages-toolbar{max-width:none}}.history-screen{background:#fff;height:100%;padding-bottom:24px;overflow-y:auto}.history-screen--embedded{background:0 0;height:auto;padding-bottom:0;overflow:visible}.history-header{align-items:flex-start;gap:8px;padding:12px 16px 8px;display:flex}.history-back{color:#64748b;cursor:pointer;background:#f1f5f9;border:none;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.history-label{color:#2563eb;letter-spacing:1.2px;font-size:11px;font-weight:600}.history-gym{color:#1e3a5f;font-size:22px;font-style:italic;font-weight:800;line-height:1.1}.history-tabs{background:0 0;border-bottom:1px solid #e2e8f0;border-radius:0;gap:4px;margin:0 20px 16px;padding:0;display:flex}.history-tab{color:#64748b;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;flex:0 auto;justify-content:center;align-items:center;gap:6px;margin-bottom:-1px;padding:8px 12px 10px;font-size:13px;font-weight:600;display:inline-flex}.history-tab.active{color:var(--brand,#2563eb);border-bottom-color:var(--brand,#2563eb);box-shadow:none;background:0 0}.history-tab-count{color:#64748b;background:#f1f5f9;border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:10px;font-weight:800;display:inline-flex}.history-tab.active .history-tab-count{background:var(--brand-light,#eff6ff);color:var(--brand,#2563eb)}.history-screen--embedded .history-tabs{margin-top:-4px}.history-section{padding:0 20px}.history-toolbar{justify-content:flex-end;margin-bottom:12px;display:flex}.history-empty{text-align:center;color:#64748b;padding:48px 24px}.history-empty-hint{margin-top:8px;font-size:13px}.history-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.history-row{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:14px 16px;box-shadow:0 1px 3px #0f172a0a}.history-row-top{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:6px;display:flex}.history-workout{color:#1e3a5f;font-size:16px;font-weight:800}.history-score{color:#2563eb;font-variant-numeric:tabular-nums;font-size:16px;font-weight:800}.history-row-meta{color:#64748b;flex-wrap:wrap;align-items:center;gap:8px;font-size:12px;display:flex}.history-pb-badge{color:#b45309;background:#fef3c7;border-radius:10px;padding:1px 6px;font-size:10px;font-weight:800}.history-notes{font-style:italic}.pb-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.pb-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:16px;box-shadow:0 1px 3px #0f172a0a}.pb-card-top{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px;display:flex}.pb-name{color:#1e3a5f;font-size:18px;font-weight:800}.pb-score{color:#2563eb;font-size:20px;font-weight:800}.pb-meta{color:#64748b;flex-wrap:wrap;gap:8px;margin-bottom:12px;font-size:12px;display:flex}.pb-actions{gap:8px;display:flex}.pb-btn{cursor:pointer;border:none;border-radius:10px;flex:1;padding:8px;font-size:11px;font-weight:700}.pb-btn.edit{color:#2563eb;background:#eff6ff;border:1px solid #bfdbfe}.pb-btn.delete{color:#dc2626;background:#fef2f2;border:1px solid #fecaca}.history-toast{color:#fff;z-index:300;background:#1e3a5f;border-radius:10px;padding:12px 20px;font-size:14px;position:fixed;bottom:80px;left:50%;transform:translate(-50%);box-shadow:0 4px 12px #00000026}.comms-screen{background:#fff;flex-direction:column;height:100%;display:flex;overflow:hidden}.comms-header{flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:12px;padding:12px 20px 8px;display:flex}.comms-icon{color:var(--brand,#2563eb);display:flex}.comms-header-actions{flex-shrink:0;align-items:center;gap:8px;margin-left:auto;display:flex}.comms-header-actions .notif-bell{border-radius:9px;width:32px;height:32px}.comms-broadcast-btn{color:#2563eb;cursor:pointer;white-space:nowrap;background:#eff6ff;border:1px solid #bfdbfe;border-radius:10px;padding:8px 12px;font-size:12px;font-weight:700}.comms-compose-btn{background:var(--brand,#2563eb);color:#fff;cursor:pointer;border:none;border-radius:10px;align-items:center;gap:4px;padding:8px 12px;font-size:12px;font-weight:700;display:inline-flex}.comms-tabs{background:#f1f5f9;border-radius:12px;flex-shrink:0;gap:4px;margin:0 16px 10px;padding:4px;display:flex}.comms-tab{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:6px;padding:10px;font-size:13px;font-weight:700;display:inline-flex}.comms-tab.active{color:var(--brand,#2563eb);background:#fff;box-shadow:0 1px 3px #0f172a14}.comms-tab-badge{background:var(--brand,#2563eb);color:#fff;border-radius:999px;min-width:18px;height:18px;padding:0 5px;font-size:10px;line-height:18px}.comms-layout{flex-direction:column;flex:1;min-height:0;padding:0 16px 16px;display:flex}.comms-list-panel{background:#fff;border:1px solid #e2e8f0;border-radius:14px;flex:0 auto;min-height:0;max-height:100%;overflow-y:auto}.comms-detail-panel{background:#fff;border:1px solid #e2e8f0;border-radius:14px;flex-direction:column;flex:1;min-height:0;display:none;overflow:hidden}.comms-layout.show-detail .comms-list-panel{display:none}.comms-layout.show-detail .comms-detail-panel{display:flex}.comms-back-btn{color:#64748b;cursor:pointer;background:#f1f5f9;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;padding:0;display:flex}.comms-back-btn:hover{color:#2563eb;background:#e2e8f0}.comms-detail-heading{min-width:0}.comms-open-member{font:inherit;color:#2563eb;cursor:pointer;text-align:left;background:0 0;border:none;margin:0;padding:0;font-weight:600}.comms-open-member:hover{text-decoration:underline}.comms-empty-state{flex-direction:column;align-items:center;gap:12px;padding:40px 16px;display:flex}.comms-empty-cta{background:var(--brand,#2563eb);color:#fff;cursor:pointer;border:none;border-radius:10px;padding:10px 14px;font-size:13px;font-weight:700}.comms-empty-desktop{display:none}.comms-list-item{text-align:left;width:100%;font:inherit;cursor:pointer;background:0 0;border:none;border-bottom:1px solid #e2e8f0;flex-direction:column;align-items:flex-start;gap:2px;padding:14px;display:flex}.comms-list-item:last-child{border-bottom:none}.comms-list-item.active{background:#eff6ff}.comms-list-item.unread .comms-list-title{color:#1e3a5f;font-weight:800}.comms-list-title{color:#334155;font-size:14px;font-weight:700}.comms-list-meta{color:#94a3b8;font-size:12px}.comms-list-preview{color:#64748b;text-overflow:ellipsis;white-space:nowrap;max-width:100%;margin-top:2px;font-size:13px;overflow:hidden}.comms-empty{text-align:center;color:#94a3b8;margin:0;padding:24px 16px;font-size:13px}.comms-detail-header{border-bottom:1px solid #e2e8f0;flex-shrink:0;align-items:flex-start;gap:10px;padding:12px 14px;display:flex}.comms-detail-header h2{color:#1e3a5f;margin:0 0 4px;font-size:15px}.comms-detail-header p{color:#64748b;margin:0;font-size:12px}.comms-broadcast-header{border-bottom:none;align-items:center;padding-bottom:0}.comms-message-list{flex-direction:column;flex:1;gap:8px;padding:12px;display:flex;overflow-y:auto}.comms-bubble{border-radius:14px;max-width:88%;padding:10px 12px}.comms-bubble.mine{background:#eff6ff;border:1px solid #bfdbfe;align-self:flex-end}.comms-bubble.theirs{background:#f8fafc;border:1px solid #e2e8f0;align-self:flex-start}.comms-bubble-meta{color:#94a3b8;margin-bottom:4px;font-size:10px;font-weight:700;display:block}.comms-bubble p{color:#1e3a5f;margin:0;font-size:13px;line-height:1.4}.comms-reply-form{border-top:1px solid #e2e8f0;flex-shrink:0;gap:8px;padding:10px 12px;display:flex}.comms-reply-form textarea{min-width:0;font:inherit;resize:none;border:1px solid #e2e8f0;border-radius:10px;flex:1;padding:10px 12px;font-size:13px}.comms-reply-form button{background:var(--brand,#2563eb);color:#fff;cursor:pointer;border:none;border-radius:10px;padding:0 14px;font-size:12px;font-weight:700}.comms-reply-form button:disabled{opacity:.45;cursor:default}.comms-broadcast-detail{flex-direction:column;flex:1;min-height:0;padding:0 16px 16px;display:flex;overflow-y:auto}.comms-broadcast-tag{letter-spacing:.05em;text-transform:uppercase;color:#2563eb;background:#eff6ff;border-radius:999px;padding:3px 8px;font-size:10px;font-weight:800;display:inline-block}.comms-broadcast-detail h2{color:#1e3a5f;margin:8px 0 6px;font-size:18px}.comms-broadcast-meta{color:#64748b;margin:0 0 14px;font-size:12px}.comms-broadcast-body{color:#334155;white-space:pre-wrap;margin:0;font-size:14px;line-height:1.55}.comms-modal-backdrop{z-index:80;background:#0f172a73;justify-content:center;align-items:flex-end;padding:16px;display:flex;position:fixed;inset:0}.comms-modal{background:#fff;border-radius:16px;width:100%;max-width:440px;padding:18px;box-shadow:0 20px 50px #0f172a33}.comms-modal h2{color:#1e3a5f;margin:0 0 8px;font-size:18px}.comms-modal-hint{color:#64748b;margin:0 0 14px;font-size:12px;line-height:1.45}.comms-form{flex-direction:column;gap:12px;display:flex}.comms-field{color:#64748b;flex-direction:column;gap:6px;font-size:12px;font-weight:700;display:flex}.comms-field input,.comms-field select,.comms-field textarea{font:inherit;color:#1e3a5f;border:1px solid #e2e8f0;border-radius:10px;padding:10px 12px;font-size:14px;font-weight:500}.comms-form-error{color:#b91c1c;margin:0;font-size:12px}.comms-form-actions{justify-content:flex-end;gap:8px;display:flex}.comms-btn{cursor:pointer;border:none;border-radius:10px;padding:10px 14px;font-size:13px;font-weight:700}.comms-btn.cancel{color:#475569;background:#f1f5f9}.comms-btn.save{background:var(--brand,#2563eb);color:#fff}.comms-screen .toast{color:#fff;z-index:100;background:#1e3a5f;border-radius:10px;padding:12px 20px;font-size:14px;position:fixed;bottom:80px;left:50%;transform:translate(-50%)}@media (width>=720px){.comms-tabs{max-width:360px}.comms-layout{border:1px solid #e2e8f0;border-radius:14px;flex-direction:row;margin:0 16px 16px;padding:0;overflow:hidden}.comms-layout.show-detail .comms-list-panel{display:block}.comms-list-panel{border:none;border-right:1px solid #e2e8f0;border-radius:0;flex:0 0 300px;align-self:stretch;max-height:none}.comms-detail-panel{border:none;border-radius:0;flex:auto;min-width:0;display:flex}.comms-back-btn{display:none}.comms-empty-desktop{display:block}.comms-broadcast-detail{padding:16px}.comms-broadcast-header{margin-bottom:8px;padding:0}}@media (width>=900px){.comms-list-panel{flex:0 0 340px}.comms-detail-panel{flex:auto;min-width:0}}.terms-modal.wide{max-width:520px}.terms-content-input{resize:vertical;min-height:200px;font-family:inherit;font-size:14px;line-height:1.5}.terms-accept-backdrop{z-index:300}.terms-accept-modal{flex-direction:column;max-height:85vh;display:flex}.terms-accept-header{margin-bottom:12px}.terms-accept-label{letter-spacing:1.2px;color:var(--brand,#2563eb);font-size:11px;font-weight:600;display:block}.terms-accept-header h2{color:#1e3a5f;margin:4px 0;font-size:20px;font-weight:800}.terms-accept-version{color:#64748b;font-size:13px}.terms-accept-body{color:#334155;white-space:pre-wrap;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;flex:1;margin-bottom:16px;padding:14px;font-size:14px;line-height:1.6;overflow-y:auto}.terms-accept-checkbox{color:#334155;cursor:pointer;align-items:flex-start;gap:10px;margin-bottom:16px;font-size:14px;font-weight:500;display:flex}.terms-accept-checkbox input{margin-top:3px}.terms-active-card{background:var(--brand-light,#eff6ff);border:1px solid var(--brand-border,#bfdbfe);border-radius:14px;margin:0 20px 16px;padding:16px}.terms-active-card h3{color:#1e3a5f;margin:0 0 4px;font-size:16px;font-weight:800}.terms-active-meta{color:#64748b;margin-bottom:12px;font-size:13px}.terms-active-actions{flex-wrap:wrap;gap:8px;display:flex}.terms-version-list{margin:0;padding:0 20px;list-style:none}.terms-version-row{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:flex-start;gap:12px;padding:14px 0;display:flex}.terms-version-info{flex:1}.terms-version-num{color:#1e3a5f;margin-right:8px;font-weight:800}.terms-version-title{color:#475569;font-size:14px}.terms-version-date{color:#94a3b8;margin-top:4px;font-size:12px;display:block}.terms-version-badge{white-space:nowrap;border-radius:10px;padding:3px 8px;font-size:11px;font-weight:600}.terms-version-badge.active{color:#059669;background:#ecfdf5}.terms-version-badge.draft{color:#d97706;background:#fffbeb}.terms-version-badge.archived{color:#64748b;background:#f1f5f9}.terms-version-actions{gap:6px;display:flex}.terms-acceptance-section{padding:0 20px 24px}.terms-acceptance-section h3{color:#1e3a5f;margin:20px 0 12px;font-size:15px;font-weight:800}.terms-acceptance-list{margin:0;padding:0;list-style:none}.terms-acceptance-row{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;font-size:14px;display:flex}.terms-acceptance-open{width:100%;font:inherit;text-align:left;cursor:pointer;color:inherit;background:0 0;border:none;justify-content:space-between;align-items:center;gap:12px;padding:0;display:flex}.terms-acceptance-open:hover .terms-acceptance-name{color:#2563eb}.terms-acceptance-name{color:#334155;font-weight:600}.terms-acceptance-detail{color:#94a3b8;margin-top:2px;font-size:12px;display:block}.terms-status{white-space:nowrap;border-radius:10px;padding:4px 10px;font-size:11px;font-weight:600}.terms-status.current{color:#059669;background:#ecfdf5}.terms-status.outdated{color:#d97706;background:#fffbeb}.terms-status.pending{color:#dc2626;background:#fef2f2}.terms-link-btn{color:var(--brand,#2563eb);cursor:pointer;background:0 0;border:none;padding:0;font-size:13px;font-weight:600}.terms-home-status{color:#64748b;margin:0;font-size:13px}.terms-home-status.warn{color:#d97706}.terms-home-status.ok{color:#059669}.payment-modal-backdrop{z-index:200;background:#0f172a73;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.payment-modal{background:#fff;border-radius:20px;width:100%;max-width:440px;max-height:90vh;padding:24px;overflow-y:auto;box-shadow:0 20px 40px #00000026}.payment-modal-title{color:#1e3a5f;margin:0 0 8px;font-size:20px;font-weight:800}.payment-modal-lead{color:#64748b;margin:0 0 16px;font-size:13px;line-height:1.5}.payment-form{flex-direction:column;gap:12px;display:flex}.payment-form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.payment-field{color:#64748b;flex-direction:column;gap:6px;font-size:12px;font-weight:600;display:flex}.payment-field input,.payment-field select{color:#1e3a5f;border:1px solid #e2e8f0;border-radius:10px;padding:10px 12px;font-family:inherit;font-size:15px}.payment-checkbox{color:#475569;cursor:pointer;align-items:flex-start;gap:8px;font-size:13px;display:flex}.payment-form-error{color:#dc2626;margin:0;font-size:13px}.payment-form-actions{gap:10px;margin-top:4px;display:flex}.payment-btn{cursor:pointer;border:none;border-radius:10px;flex:1;padding:11px;font-size:14px;font-weight:700}.payment-btn.cancel{color:#64748b;background:#f1f5f9}.payment-btn.save{background:var(--brand,#2563eb);color:#fff}.payment-btn.full{width:100%;margin-top:8px}.payment-readonly{margin:0 0 8px}.payment-readonly div{border-bottom:1px solid #f1f5f9;justify-content:space-between;gap:12px;padding:10px 0;display:flex}.payment-readonly dt{color:#64748b;font-size:12px;font-weight:600}.payment-readonly dd{color:#1e3a5f;text-align:right;margin:0;font-size:14px}.onboarding-stages-modal{background:#fff;border-radius:16px;flex-direction:column;width:100%;max-width:520px;max-height:min(90vh,720px);margin:24px auto;display:flex;overflow:hidden;box-shadow:0 20px 50px #0f172a2e}.onboarding-stages-header{border-bottom:1px solid #e2e8f0;justify-content:space-between;gap:12px;padding:16px 18px 12px;display:flex}.onboarding-stages-header h2{color:#1e3a5f;margin:0 0 4px;font-size:18px}.onboarding-stages-header p{color:#64748b;margin:0;font-size:12px}.onboarding-stages-list{flex-direction:column;flex:1;gap:10px;margin:0;padding:12px;list-style:none;display:flex;overflow-y:auto}.onboarding-stage-row{background:#fff;border:1px solid #e2e8f0;border-radius:12px;align-items:flex-start;gap:10px;padding:12px;display:flex}.onboarding-stage-row.disabled{opacity:.55;background:#f8fafc}.onboarding-stage-order{flex-direction:column;gap:4px;display:flex}.onboarding-icon-btn{cursor:pointer;color:#475569;background:#fff;border:1px solid #e2e8f0;border-radius:8px;width:28px;height:28px}.onboarding-icon-btn:disabled{opacity:.35;cursor:default}.onboarding-stage-fields{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.onboarding-stage-name{color:#1e3a5f;border:1px solid #e2e8f0;border-radius:8px;width:100%;padding:8px 10px;font-size:14px;font-weight:700}.onboarding-stage-hint{color:#475569;border:1px solid #e2e8f0;border-radius:8px;width:100%;padding:7px 10px;font-size:12px}.onboarding-stage-check{color:#64748b;align-items:center;gap:6px;font-size:11px;display:flex}.onboarding-stage-side{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:6px;display:flex}.onboarding-stage-count{color:#b45309;background:#fffbeb;border-radius:999px;padding:2px 8px;font-size:10px;font-weight:700}.onboarding-toggle-btn{color:#475569;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:6px 10px;font-size:11px;font-weight:700}.onboarding-toggle-btn.off{color:#2563eb;background:#eff6ff;border-color:#bfdbfe}.onboarding-stages-add{gap:8px;padding:0 12px 12px;display:flex}.onboarding-stages-add input{border:1px solid #e2e8f0;border-radius:10px;flex:1;padding:10px 12px;font-size:14px}.onboarding-stages-footer{border-top:1px solid #e2e8f0;justify-content:space-between;gap:10px;padding:12px 16px 16px;display:flex}.onboarding-board{-webkit-overflow-scrolling:touch;gap:10px;min-height:280px;padding-bottom:8px;display:flex;overflow-x:auto}.onboarding-column{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;flex-direction:column;flex:0 0 220px;max-width:220px;min-height:260px;display:flex}.onboarding-column-header{border-bottom:1px solid #e2e8f0;padding:12px 12px 8px}.onboarding-column-title{color:#1e3a5f;justify-content:space-between;align-items:center;gap:8px;margin:0;font-size:13px;font-weight:800;display:flex}.onboarding-column-count{color:#64748b;background:#fff;border:1px solid #e2e8f0;border-radius:999px;padding:1px 7px;font-size:11px;font-weight:700}.onboarding-column-hint{color:#64748b;margin:6px 0 0;font-size:11px;line-height:1.35}.onboarding-column-cards{flex-direction:column;flex:1;gap:8px;padding:10px;display:flex}.onboarding-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:10px;box-shadow:0 1px 2px #0f172a0a}.onboarding-card-main{text-align:left;width:100%;font:inherit;cursor:pointer;background:0 0;border:none;padding:0}.onboarding-card-main:hover .onboarding-card-name{color:#2563eb}.onboarding-card-name{color:#1e3a5f;font-size:13px;font-weight:700;display:block}.onboarding-card-email{color:#64748b;text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:11px;display:block;overflow:hidden}.onboarding-card-meta{color:#94a3b8;margin-top:6px;font-size:11px;display:block}.onboarding-card-actions{gap:6px;margin-top:8px;display:flex}.onboarding-card-actions button{color:var(--brand,#2563eb);cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;flex:1;padding:5px 6px;font-size:11px;font-weight:700}.onboarding-card-actions button.primary{background:var(--brand-light,#eff6ff);border-color:var(--brand-border,#bfdbfe)}.onboarding-card-actions select{color:#475569;background:#fff;border:1px solid #e2e8f0;border-radius:8px;flex:1;min-width:0;padding:5px 4px;font-size:10px;font-weight:600}.onboarding-empty-col{color:#94a3b8;text-align:center;padding:8px 4px;font-size:11px}.onboarding-toolbar-note{color:#64748b;flex:1;min-width:160px;margin:0 0 10px;font-size:12px}.onboarding-toolbar{flex-wrap:wrap;align-items:flex-start}.onboarding-toolbar-actions{align-items:center;gap:12px;margin-left:auto;display:flex}.member-onboarding-meta{color:#b45309;margin-top:2px;font-size:11px}.member-detail-onboarding{background:#fffbeb;border:1px solid #fde68a;border-radius:12px;margin-bottom:14px;padding:12px 14px}.member-detail-onboarding p{color:#92400e;margin:0 0 8px;font-size:13px}.member-detail-onboarding-actions{flex-wrap:wrap;gap:8px;display:flex}.notif-prefs{flex-direction:column;gap:12px;display:flex}.notif-prefs-header h3{color:var(--text,#1e3a5f);margin:0;font-size:14px;font-weight:800}.notif-prefs-header p{color:var(--text-muted,#64748b);margin:4px 0 0;font-size:12px}.notif-prefs-empty{color:var(--text-muted,#64748b);margin:0;padding:12px 0;font-size:13px}.notif-prefs-table{border-top:1px solid var(--border-strong,#e2e8f0);flex-direction:column;gap:0;display:flex}.notif-prefs-head,.notif-prefs-row{border-bottom:1px solid var(--border-strong,#e2e8f0);grid-template-columns:minmax(0,1.4fr) repeat(3,52px);align-items:center;gap:4px;padding:10px 0;display:grid}.notif-prefs-head{border-bottom-color:#0000;padding-top:4px;padding-bottom:6px}.notif-prefs-head .notif-prefs-channel-col,.notif-prefs-head .notif-prefs-kind-col{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted,#94a3b8);font-size:10px;font-weight:800}.notif-prefs-kind-col{flex-direction:column;gap:2px;min-width:0;display:flex}.notif-prefs-kind-col strong{color:var(--text,#1e3a5f);font-size:13px;font-weight:700}.notif-prefs-kind-col span{color:var(--text-muted,#64748b);font-size:11px;line-height:1.35}.notif-prefs-channel-col{cursor:pointer;justify-content:center;align-items:center;margin:0;display:flex}.notif-prefs-channel-col input{width:16px;height:16px;accent-color:var(--brand,#2563eb);cursor:pointer}.notif-prefs-reset{color:var(--brand,#2563eb);cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:0;font-size:12px;font-weight:700}.notif-prefs.is-compact .notif-prefs-head,.notif-prefs.is-compact .notif-prefs-row{grid-template-columns:minmax(0,1fr) repeat(3,44px);padding:8px 0}.notif-prefs.is-compact .notif-prefs-kind-col strong{font-size:12px}.notif-prefs.is-compact .notif-prefs-header h3{font-size:13px}.notif-center{z-index:1;flex-shrink:0;position:relative}.notif-bell{background:var(--surface-muted,#f1f5f9);width:40px;height:40px;color:var(--text-muted,#64748b);cursor:pointer;pointer-events:auto;border:none;border-radius:12px;justify-content:center;align-items:center;padding:0;display:flex;position:relative}.notif-bell:hover,.notif-bell.has-unread{color:var(--brand,#2563eb);background:var(--brand-light,#eff6ff)}.notif-badge{background:var(--brand,#2563eb);color:#fff;text-align:center;border-radius:999px;min-width:16px;height:16px;padding:0 4px;font-size:10px;font-weight:800;line-height:16px;position:absolute;top:4px;right:4px}.notif-panel{top:calc(56px + env(safe-area-inset-top,0px));background:var(--surface,#fff);border:1px solid var(--border-strong,#e2e8f0);z-index:400;border-radius:16px;flex-direction:column;width:min(360px,100vw - 24px);max-height:min(70vh,520px);display:flex;position:fixed;right:12px;overflow:hidden;box-shadow:0 16px 40px #0f172a2e}.notif-panel-header{border-bottom:1px solid var(--border-strong,#e2e8f0);justify-content:space-between;align-items:flex-start;gap:12px;padding:14px 16px 10px;display:flex}.notif-panel-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.notif-gear-btn{width:32px;height:32px;color:var(--text-muted,#64748b);cursor:pointer;background:0 0;border:none;border-radius:10px;justify-content:center;align-items:center;padding:0;display:flex}.notif-gear-btn:hover,.notif-gear-btn.active{color:var(--brand,#2563eb);background:var(--brand-light,#eff6ff)}.notif-prefs-pane{flex:1;min-height:0;padding:10px 14px 14px;overflow-y:auto}.notif-panel-header h2{color:var(--text,#1e3a5f);margin:0;font-size:16px;font-weight:800}.notif-panel-header p{color:var(--text-muted,#64748b);margin:2px 0 0;font-size:12px}.notif-link-btn{color:var(--brand,#2563eb);cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:0;font-size:12px;font-weight:700}.notif-opt-in{background:var(--brand-light,#eff6ff);border-bottom:1px solid var(--brand-border,#bfdbfe);align-items:center;gap:10px;padding:10px 14px;display:flex}.notif-opt-in p{color:var(--text,#1e3a5f);flex:1;margin:0;font-size:12px}.notif-opt-in-btn{background:var(--brand,#2563eb);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:6px 10px;font-size:12px;font-weight:700}.notif-hint{color:var(--text-muted,#64748b);border-bottom:1px solid var(--border-strong,#e2e8f0);margin:0;padding:8px 14px;font-size:12px}.notif-empty{text-align:center;color:var(--text-muted,#64748b);margin:0;padding:28px 16px;font-size:13px}.notif-list{flex:1;margin:0;padding:0;list-style:none;overflow-y:auto}.notif-item{border-bottom:1px solid var(--border-strong,#f1f5f9);grid-template-columns:1fr auto;gap:4px;display:grid}.notif-item.unread{background:color-mix(in srgb, var(--brand,#2563eb) 6%, transparent)}.notif-item-main{text-align:left;cursor:pointer;width:100%;color:inherit;font:inherit;background:0 0;border:none;flex-direction:column;align-items:flex-start;gap:2px;padding:12px 8px 12px 14px;display:flex}.notif-kind{letter-spacing:.06em;text-transform:uppercase;color:var(--brand,#2563eb);font-size:10px;font-weight:800}.notif-title{color:var(--text,#1e3a5f);font-size:13px;font-weight:700}.notif-body{color:var(--text-muted,#64748b);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12px;display:-webkit-box;overflow:hidden}.notif-when{color:var(--text-muted,#94a3b8);margin-top:2px;font-size:11px}.notif-dismiss{color:#94a3b8;cursor:pointer;background:0 0;border:none;align-self:start;padding:10px 12px;font-size:18px;line-height:1}.notif-dismiss:hover{color:#ef4444}@media (width<=899px){.notif-panel{width:auto;left:12px;right:12px}}[data-theme=dark] .notif-panel{box-shadow:0 16px 40px #00000073}[data-theme=dark] .notif-bell{background:var(--surface-muted)}[data-theme=dark] .notif-opt-in{background:color-mix(in srgb, var(--brand,#2563eb) 18%, transparent);border-bottom-color:var(--border-strong)}.gym-brand{align-items:flex-start;gap:10px;display:flex}.gym-brand-text{min-width:0}.gym-brand-subtle{justify-content:space-between;align-items:center;width:100%}.gym-brand-subtle:not(.gym-brand-has-logo){justify-content:flex-start}.gym-brand-logo{object-fit:cover;border:1px solid var(--brand-border,#bfdbfe);border-radius:10px;flex-shrink:0;width:40px;height:40px}.gym-brand-logo-subtle{object-fit:contain;opacity:.88;background:#ffffff8c;border-color:#94a3b838;border-radius:9px;width:34px;height:34px;padding:3px}.gym-brand-name-quiet{color:#64748b;font-size:14px;font-style:normal;font-weight:600}.gym-brand-icon{color:var(--brand,#2563eb);display:flex}.gym-brand-initial{background:var(--brand-light,#eff6ff);width:40px;height:40px;color:var(--brand,#2563eb);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;font-size:18px;font-weight:800;display:flex}.gym-brand-label{color:var(--brand,#2563eb);letter-spacing:1.2px;font-size:11px;font-weight:600}.gym-brand-name{color:var(--brand-dark,#1e3a5f);font-size:22px;font-style:italic;font-weight:800;line-height:1.1}button.gym-brand-name.gym-brand-name-action{letter-spacing:normal;text-align:left;max-width:100%;color:var(--brand-dark,#1e3a5f);cursor:pointer;appearance:none;background:0 0;border:none;align-items:baseline;gap:6px;margin:0;padding:0;font-family:inherit;font-size:22px;font-style:italic;font-weight:800;line-height:1.1;display:inline-flex}button.gym-brand-name.gym-brand-name-action .gym-brand-name-text{font:inherit;font-style:italic;font-weight:800}button.gym-brand-name.gym-brand-name-action:hover,button.gym-brand-name.gym-brand-name-action:focus-visible{color:var(--brand,#2563eb);outline:none}button.gym-brand-name.gym-brand-name-action:focus-visible{text-underline-offset:3px;text-decoration:underline}.gym-brand-name-caret{opacity:.45;flex-shrink:0;font-size:12px;font-style:normal;font-weight:700;line-height:1;transform:translateY(-1px)}.attendee-section{margin-top:14px}.capacity-bar.clickable{cursor:pointer;text-align:left;width:100%;font:inherit;transition:box-shadow .15s}.capacity-bar.clickable:hover{box-shadow:0 2px 8px color-mix(in srgb, var(--brand,#2563eb) 12%, transparent)}.capacity-bar.full.clickable:hover{box-shadow:0 2px 8px #dc262624}.capacity-bar.clickable:disabled{cursor:default}.capacity-bar .capacity-text{flex:1}.capacity-toggle{z-index:1;color:var(--brand,#2563eb);white-space:nowrap;align-items:center;gap:4px;padding-right:12px;font-size:11px;font-weight:600;display:flex;position:relative}.attendee-empty{color:#64748b;margin:8px 0 0;padding:10px 4px;font-size:13px;font-weight:500}.attendee-list{margin:0;padding:8px 0 0;list-style:none}.attendee-row{border-bottom:1px solid #f1f5f9;align-items:center;gap:12px;padding:10px 4px;display:flex}.attendee-row:last-child{border-bottom:none}.attendee-avatar{color:#94a3b8;background:#f1f5f9;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.attendee-info{flex:1;min-width:0}.attendee-name-row{align-items:center;gap:6px;display:flex}.attendee-name{color:#1e3a5f;font-size:14px;font-weight:600}.attendee-sync{color:#2563eb;flex-shrink:0}.attendee-status{color:#2563eb;text-transform:lowercase;font-size:11px;font-weight:600}.attendee-status.checked-in{color:#047857}.attendee-status.no-show{color:#dc2626;font-weight:700}.attendee-status.waiting{color:#b45309}.attendee-row.is-checked-in{background:#f0fdf4;border-color:#bbf7d0}.attendee-row.is-no-show{background:#fef2f2}.attendee-row.is-waiting{background:#fffbeb}.attendee-action-btn.is-no-show-active{color:#dc2626;background:#fee2e2;border-color:#dc2626}.attendee-actions{flex-shrink:0;gap:8px;display:flex}.attendee-action-btn{color:#64748b;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;transition:border-color .15s,color .15s,background .15s;display:flex}.attendee-action-btn:hover{color:#2563eb;border-color:#2563eb}.attendee-action-btn.is-active{color:#047857;background:#ecfdf5;border-color:#047857}.attendee-injury-badge{color:#dc2626;letter-spacing:.04em;text-transform:uppercase;background:#fef2f2;border-radius:6px;flex-shrink:0;padding:2px 6px;font-size:9px;font-weight:800}.class-form-backdrop{z-index:200;background:#0f172a73;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.class-form-modal{background:#fff;border-radius:20px;width:100%;max-width:400px;padding:24px;box-shadow:0 20px 40px #00000026}.class-form-title{color:#1e3a5f;margin:0 0 20px;font-size:20px;font-weight:800}.class-form{flex-direction:column;gap:14px;display:flex}.class-form-field{color:#64748b;flex-direction:column;gap:6px;font-size:12px;font-weight:600;display:flex}.class-form-field input,.class-form-field select{color:#1e3a5f;background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:10px 12px;font-size:15px}.class-form-field input:focus,.class-form-field select:focus{border-color:var(--brand,#2563eb);outline:none;box-shadow:0 0 0 3px #2563eb26}.class-form-check{color:#334155;align-items:center;gap:8px;margin:4px 0 12px;font-size:13px;font-weight:600;display:flex}.class-form-error{color:#dc2626;margin:0;font-size:13px}.class-form-actions{gap:10px;margin-top:4px;display:flex}.class-form-btn{cursor:pointer;border:none;border-radius:10px;flex:1;padding:10px 12px;font-size:13px;font-weight:700}.class-form-btn-cancel{color:#64748b;background:#f1f5f9}.class-form-btn-save{background:var(--brand,#2563eb);color:#fff}.class-form-btn-danger-outline{color:#dc2626;background:0 0;border:1px solid #fecaca;flex:none}.class-form-btn-danger{color:#fff;background:#dc2626}.topup-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:300;background:#0f172a59;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.topup-modal{background:#fff;border-radius:20px;width:100%;max-width:400px;padding:24px;box-shadow:0 20px 40px #0f172a26}.topup-title{color:#1e3a5f;margin:0 0 8px;font-size:20px;font-weight:800}.topup-intro{color:#64748b;margin:0 0 16px;font-size:14px;line-height:1.45}.topup-status{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;gap:4px;margin-bottom:16px;padding:12px 14px;font-size:13px;display:flex}.topup-status span:first-child{color:#1e3a5f;font-weight:700}.topup-status span:last-child{color:#64748b}.topup-label{color:#64748b;text-transform:uppercase;letter-spacing:.05em;margin:0 0 8px;font-size:12px;font-weight:700}.topup-options{flex-direction:column;gap:8px;margin:0 0 20px;padding:0;list-style:none;display:flex}.topup-option{cursor:pointer;text-align:left;background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:12px 14px;display:flex}.topup-option.selected{border-color:var(--brand,#2563eb);background:var(--brand-light,#eff6ff)}.topup-option-name{color:#1e3a5f;font-size:15px;font-weight:700}.topup-option-meta{color:#64748b;font-size:12px}.topup-actions{gap:10px;display:flex}.topup-btn{cursor:pointer;border:none;border-radius:12px;flex:1;padding:12px;font-size:14px;font-weight:700}.topup-btn.cancel{color:#64748b;background:#f1f5f9}.topup-btn.confirm{background:var(--brand,#2563eb);color:#fff}.topup-btn.confirm:disabled{opacity:.5;cursor:not-allowed}.topup-note{color:#94a3b8;text-align:center;margin:14px 0 0;font-size:11px}.help-tip{vertical-align:middle;flex-shrink:0;display:inline-flex;position:relative}.help-tip-trigger{cursor:pointer;min-width:28px;min-height:28px;font:inherit;background:0 0;border:none;justify-content:center;align-items:center;margin:-6px;padding:0;display:inline-flex}.help-tip-icon{color:#64748b;background:#e2e8f0;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;font-size:11px;font-weight:700;line-height:1;display:inline-flex}.help-tip-trigger:hover .help-tip-icon,.help-tip-trigger:focus-visible .help-tip-icon{color:#475569;background:#cbd5e1}.help-tip-trigger:focus-visible{outline:none}.help-tip-trigger:focus-visible .help-tip-icon{box-shadow:0 0 0 2px #fff,0 0 0 4px #2563eb59}.help-tip-popover{z-index:60;box-sizing:border-box;color:#475569;text-align:left;white-space:normal;overflow-wrap:break-word;cursor:default;background:#fff;border:1px solid #e2e8f0;border-radius:12px;width:min(280px,100vw - 16px);padding:10px 12px;font-size:12px;font-weight:500;line-height:1.45;display:block;position:fixed;box-shadow:0 8px 24px #0f172a1f}.voucher-credits-badge{letter-spacing:-.01em;white-space:nowrap;border-radius:999px;align-items:center;font-weight:800;display:inline-flex}.voucher-credits-sm{padding:2px 8px;font-size:10px}.voucher-credits-md{padding:4px 10px;font-size:12px}.voucher-credits-lg{padding:6px 12px;font-size:13px}.voucher-credits-active{color:#047857;background:#ecfdf5;border:1px solid #a7f3d0}.voucher-credits-exhausted{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.voucher-credits-expired{color:#64748b;background:#f8fafc;border:1px solid #e2e8f0}.voucher-credits-label-compact{display:none}@media (width<=380px){.voucher-credits-responsive .voucher-credits-label-full{display:none}.voucher-credits-responsive .voucher-credits-label-compact{display:inline}}.booking-screen{height:100%;padding-bottom:16px;overflow-y:auto}.booking-header{justify-content:space-between;align-items:flex-start;gap:12px;padding:12px 20px 8px;display:flex}.booking-header-actions{flex-shrink:0;align-items:center;gap:8px;margin-left:auto;display:flex}.booking-header-actions .notif-bell{border-radius:9px;width:32px;height:32px}.booking-header-left{align-items:flex-start;gap:10px;display:flex}.calendar-icon{color:#2563eb;justify-content:center;align-items:center;line-height:1;display:flex}.book-at{color:#2563eb;letter-spacing:1.2px;font-size:11px;font-weight:600}.gym-name{color:#1e3a5f;font-size:22px;font-style:italic;font-weight:800;line-height:1.1}.settings-btn{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;transition:color .15s,background .15s;display:flex}.settings-btn:hover{color:#64748b;background:#f1f5f9}.settings-btn.active{color:#2563eb;background:#eff6ff}.admin-banner{color:#334155;background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;flex-direction:column;align-items:stretch;gap:12px;margin:8px 20px 14px;padding:14px 16px;font-size:14px;font-weight:600;line-height:1.35;display:flex}.admin-banner-actions{flex-wrap:wrap;align-items:center;gap:10px;width:100%;display:flex}.admin-banner-actions-end{align-items:center;gap:10px;margin-left:auto;display:flex}.admin-settings-toggle{color:#475569;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:10px 14px;font-size:13px;font-weight:700}.admin-settings-toggle:hover{color:#1e293b;border-color:#cbd5e1}.admin-settings-toggle.active{color:#fff;background:#1e293b;border-color:#1e293b}.admin-override-check{color:#475569;cursor:pointer;white-space:nowrap;background:#fff;border:none;border-radius:10px;align-items:center;gap:6px;margin:0;padding:8px 12px;font-size:13px;font-weight:600;display:inline-flex}.admin-override-check:has(input:checked){color:#1e40af;background:#eff6ff}.admin-override-check input{accent-color:var(--brand,#2563eb);margin:0}.admin-add-btn{background:var(--brand,#2563eb);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:10px;align-items:center;gap:6px;padding:10px 14px;font-size:13px;font-weight:700;display:inline-flex}.booking-settings-panel{background:#fff;border:1px solid #e2e8f0;border-radius:14px;flex-direction:column;gap:14px;margin:0 20px 14px;padding:16px;display:flex}.booking-settings-title{color:#1e3a5f;margin:0;font-size:15px;font-weight:800}.booking-settings-summary{color:#64748b;margin:0;font-size:12px;font-weight:600}.booking-settings-field{color:#64748b;flex-direction:column;gap:6px;font-size:12px;font-weight:700;display:flex}.booking-settings-field input{color:#1e3a5f;background:#fff;border:1px solid #e2e8f0;border-radius:10px;max-width:140px;padding:10px 12px;font-size:15px}.booking-settings-field input:focus{border-color:var(--brand,#2563eb);outline:none;box-shadow:0 0 0 3px #2563eb26}.booking-settings-hint{color:#94a3b8;font-size:12px;font-weight:500;line-height:1.4}.booking-settings-check{color:#1e3a5f;cursor:pointer;align-items:center;gap:8px;margin-top:12px;font-size:14px;font-weight:600;display:flex}.booking-settings-reset{color:#64748b;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;align-self:flex-start;padding:8px 12px;font-size:12px;font-weight:700}.class-card.is-hidden{opacity:.6;border-style:dashed}.tag-hidden{color:#64748b;background:#f1f5f9}.admin-card-actions{flex-direction:row;align-items:center;gap:8px;display:flex}.admin-inline-btn{cursor:pointer;white-space:nowrap;border:none;border-radius:10px;padding:8px 14px;font-size:11px;font-weight:700}.admin-inline-btn.edit{color:#2563eb;background:#eff6ff;border:1px solid #bfdbfe}.admin-inline-btn.hide{color:#78716c;background:#f5f5f4;border:1px solid #d6d3d1}.admin-card-summary{color:#64748b;margin-top:10px;font-size:12px}.date-picker{align-items:center;padding:8px;display:flex}.chevron{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;transition:background .15s,color .15s;display:flex}.chevron:hover{color:#64748b;background:#f1f5f9}.date-picker-days{flex:1;justify-content:space-evenly;display:flex}.day-cell{cursor:pointer;background:0 0;border:none;flex-direction:column;align-items:center;gap:6px;width:36px;padding:0;transition:transform .15s;display:flex}.day-cell:active{transform:scale(.95)}.day-letter{color:#94a3b8;font-size:12px;font-weight:600}.day-cell.selected .day-letter{color:#2563eb}.day-number{color:#64748b;justify-content:center;align-items:center;width:36px;height:36px;font-size:15px;font-weight:700;display:flex}.booking-screen .day-number{border-radius:10px}.booking-screen .day-cell.selected .day-number{background:var(--brand,#2563eb);color:#fff;box-shadow:0 4px 12px var(--brand-shadow,#2563eb59);border-radius:10px}.day-cell.outside-window{opacity:.35;cursor:not-allowed}.day-cell.outside-window:active{transform:none}.chevron:disabled{opacity:.35;cursor:not-allowed}.date-summary{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px 12px;display:flex}.date-label{color:#1e3a5f;font-size:16px;font-weight:700}.badges{flex-wrap:wrap;gap:8px;display:flex}.badge{letter-spacing:.4px;border:1px solid;border-radius:20px;padding:6px 14px;font-size:10px;font-weight:700}.badge-bookings{color:#2563eb;background:#eff6ff;border-color:#bfdbfe}.badge-waitlist{color:#78716c;background:#f5f5f4;border-color:#d6d3d1}.book-for-bar{z-index:1;background:0 0;border:none;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:0 20px 12px;padding:0;display:flex;position:relative}.book-for-bar.is-open{z-index:50}.book-for-link{color:#2563eb;cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;padding:0;font-size:13px;font-weight:700;text-decoration:underline;display:inline-flex}.book-for-link:hover{color:#1d4ed8}.usage-strip{color:#1e3a5f;letter-spacing:.01em;white-space:nowrap;width:fit-content;box-shadow:none;background:#eff6ff;border:0;border-radius:999px;outline:none;flex-shrink:0;padding:6px 10px;font-size:13px;font-weight:700}.booking-screen .book-for-bar .usage-strip{box-shadow:none;border:0;outline:none}.book-for-vouchers,.book-for-bar>.voucher-credits-badge{margin-left:auto}.book-for-bar:not(:has(.book-for-vouchers,>.voucher-credits-badge))>.usage-strip{margin-left:auto}.book-for-vouchers{flex-wrap:wrap;justify-content:flex-end;gap:6px;max-width:100%;display:flex}.book-for-menu{z-index:100;background:#fff;border:1px solid #e2e8f0;border-radius:12px;min-width:220px;max-width:min(320px,100vw - 40px);max-height:220px;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 6px);left:0;overflow-y:auto;box-shadow:0 8px 24px #0f172a1f}.book-for-menu button{color:#334155;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:space-between;align-items:center;width:100%;padding:10px 12px;font-size:14px;font-weight:500;display:flex}.book-for-menu button:hover,.book-for-menu button.active{background:var(--brand-light,#eff6ff);color:var(--brand,#2563eb)}.book-for-you-tag{color:var(--brand,#2563eb);background:var(--brand-light,#eff6ff);border-radius:10px;padding:2px 8px;font-size:11px;font-weight:600}.booking-topup-banner{color:#57534e;background:#f5f5f4;border:1px solid #d6d3d1;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;margin:0 20px 12px;padding:12px 14px;font-size:13px;font-weight:600;display:flex}.booking-topup-banner button{background:var(--brand,#2563eb);color:#fff;cursor:pointer;border:none;border-radius:10px;flex-shrink:0;padding:8px 12px;font-size:12px;font-weight:700}.class-list{flex-direction:column;gap:12px;padding:0 16px;display:flex}.class-card{background:#fff;border:1px solid #e2e8f0;border-radius:20px;padding:16px;transform:translateZ(0);box-shadow:0 1px 3px #0f172a0a}.class-card.on-waitlist{border-width:1.5px;border-color:#d6d3d1}.class-card-top{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.class-time-row{align-items:baseline;gap:8px;display:flex}.class-time{color:#1e3a5f;font-size:28px;font-weight:800;line-height:1}.class-relative{color:#64748b;font-size:14px}.class-countdown{color:#475569;font-size:13px;font-weight:700}.class-countdown.is-past,.class-card.is-past .class-time,.class-card.is-past .class-countdown{color:#94a3b8}.class-card.is-past{opacity:.72}.class-tags{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.tag{letter-spacing:.5px;border-radius:20px;padding:4px 12px;font-size:11px;font-weight:700}.tag-class{color:#1e3a5f;background:#eff6ff}.tag-full{color:#71717a;background:#f4f4f5}.tag-free{color:#047857;background:#ecfdf5}.action-btn{letter-spacing:.2px;cursor:pointer;white-space:nowrap;color:#fff;border:none;border-radius:12px;min-width:72px;padding:10px 12px;font-size:10px;font-weight:800;line-height:1.25;transition:opacity .15s,transform .15s}.action-btn:active{transform:scale(.97)}.action-book{background:var(--brand,#2563eb)}.action-booked{background:#94a3b8}.action-joinWaitlist{background:#78716c}.action-onWaitlist{color:#78716c;background:#f5f5f4;border:1px solid #d6d3d1}.action-closed{color:#94a3b8;cursor:default;background:#e2e8f0}.checkin-row{gap:10px;margin-top:14px;display:flex}.checkin-btn{border:1px solid var(--brand,#2563eb);background:var(--brand-light,#eff6ff);color:var(--brand-dark,#1e3a5f);cursor:not-allowed;border-radius:12px;flex:1;justify-content:center;align-items:center;gap:6px;padding:10px 8px;font-size:11px;font-weight:600;display:inline-flex}.class-card.is-past .checkin-btn:not(.checked){color:#94a3b8;background:#f8fafc;border-color:#e2e8f0}.checkin-btn.enabled{color:#2563eb;cursor:pointer;background:#eff6ff;border-color:#bfdbfe}.checkin-btn.allocated{cursor:default}.checkin-btn.checked{color:#047857;cursor:pointer;background:#ecfdf5;border-color:#86efac}.checkin-btn.checked:disabled{cursor:default}.coach-session-tools{flex-direction:column;gap:10px;margin-top:12px;display:flex}.coach-session-btn{flex:none;width:100%}.tag-coach-in{color:#047857;background:#ecfdf5}.capacity-bar{background:var(--brand-light,#eff6ff);border:none;border-left:4px solid var(--brand,#2563eb);border-radius:10px;align-items:center;height:36px;margin-top:0;padding:0;display:flex;position:relative;overflow:hidden}.capacity-bar.full{background:var(--danger-bg,#fef2f2);border-left-color:var(--danger,#dc2626)}.capacity-fill{background:var(--brand-border,#bfdbfe);max-width:100%;position:absolute;inset:0 auto 0 0}.capacity-bar.full .capacity-fill{background:var(--danger-border,#fecaca)}.capacity-text{z-index:1;height:100%;color:var(--brand-dark,#1e3a5f);align-items:center;gap:6px;padding:0 12px;font-size:12px;font-weight:600;display:flex;position:relative}.capacity-bar.full .capacity-text{color:#991b1b}.waitlist-bar{color:#78716c;background:#f5f5f4;border:1px solid #d6d3d1;border-radius:10px;margin-top:10px;padding:10px 12px;font-size:11px;font-weight:600}.toast{color:#fff;text-align:center;z-index:100;background:#1e3a5f;border-radius:10px;max-width:90%;padding:12px 20px;font-size:14px;position:fixed;bottom:80px;left:50%;transform:translate(-50%);box-shadow:0 4px 12px #00000026}.empty-classes{text-align:center;color:#64748b;padding:40px 20px;font-size:14px}@media (width>=900px){.admin-banner{flex-direction:row;justify-content:space-between;align-items:center;max-width:none}.admin-banner-actions{flex:1;min-width:0}.book-for-bar{max-width:640px}.class-list{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;display:grid}}.picker-bar{background:var(--brand-light,#eff6ff);z-index:1;border:none;border-radius:12px;align-items:center;gap:10px;margin:0 20px 12px;padding:10px 14px;display:flex;position:relative;overflow:visible}.picker-bar:has(.picker-bar-menu){z-index:50}.picker-bar-label{color:#64748b;white-space:nowrap;font-size:12px;font-weight:600}.picker-bar-select{color:#1e3a5f;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:10px;flex:1;justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;font-size:14px;font-weight:600;display:flex}.picker-bar-menu{z-index:100;background:#fff;border:1px solid #e2e8f0;border-radius:12px;max-height:260px;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 8px 24px #0f172a1f}.picker-bar-menu li.divider{border-top:1px solid #f1f5f9;margin-top:4px;padding-top:4px}.picker-bar-menu button,.picker-bar-menu .picker-bar-action{color:#334155;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:space-between;align-items:center;width:100%;padding:10px 12px;font-size:14px;font-weight:500;display:flex}.picker-bar-menu .picker-bar-action{color:var(--brand,#2563eb);font-size:13px;font-weight:600}.picker-bar-menu button:hover,.picker-bar-menu button.active{background:var(--brand-light,#eff6ff);color:var(--brand,#2563eb)}.picker-bar-tag{color:var(--brand,#2563eb);background:var(--brand-light,#eff6ff);border-radius:10px;padding:2px 8px;font-size:11px;font-weight:600}.picker-bar-item-left{align-items:flex-start;gap:8px;display:flex}.picker-bar-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-top:5px}.picker-bar-item-text{flex-direction:column;display:flex}.picker-bar-sub{color:#94a3b8;font-size:11px;font-weight:500}@media (width>=900px){.picker-bar{width:fit-content;min-width:240px;max-width:320px}.picker-bar-select{flex:0 auto;min-width:160px}.picker-bar-menu{width:max-content;min-width:100%;max-width:360px;left:0;right:auto}}.image-crop-backdrop{z-index:260;background:#0f172a8c;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.image-crop-modal{background:#fff;border-radius:20px;width:100%;max-width:360px;padding:22px;box-shadow:0 20px 40px #0003}.image-crop-title{color:#1e3a5f;margin:0 0 6px;font-size:18px;font-weight:800}.image-crop-hint{color:#94a3b8;margin:0 0 16px;font-size:12px;font-weight:600}.image-crop-viewport{touch-action:none;cursor:grab;-webkit-user-select:none;user-select:none;background:#0f172a;margin:0 auto 16px;position:relative;overflow:hidden;box-shadow:0 0 0 1px #e2e8f0}.image-crop-viewport.shape-circle{border-radius:50%}.image-crop-viewport.shape-square{border-radius:16px}.image-crop-viewport:active{cursor:grabbing}.image-crop-image{pointer-events:none;max-width:none;position:absolute}.image-crop-mask{pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 0 0 2px #ffffff8c}.image-crop-mask.shape-circle{border-radius:50%}.image-crop-mask.shape-square{border-radius:16px}.image-crop-zoom{color:#64748b;flex-direction:column;gap:8px;margin-bottom:14px;font-size:12px;font-weight:700;display:flex}.image-crop-zoom input[type=range]{accent-color:#2563eb;width:100%}.image-crop-error{color:#dc2626;margin:0 0 12px;font-size:13px}.image-crop-actions{gap:10px;display:flex}.image-crop-btn{cursor:pointer;border:none;border-radius:10px;flex:1;padding:12px;font-size:13px;font-weight:700}.image-crop-btn:disabled{opacity:.5;cursor:not-allowed}.image-crop-btn.cancel{color:#64748b;background:#f1f5f9}.image-crop-btn.apply{background:var(--brand,#2563eb);color:#fff}.customize-screen{background:#fff;height:100%;padding-bottom:32px;overflow-y:auto}.customize-header{align-items:flex-start;gap:8px;padding:12px 16px 8px;display:flex}.customize-back{color:#64748b;cursor:pointer;background:#f1f5f9;border:none;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.customize-label{color:var(--brand,#2563eb);letter-spacing:1.2px;font-size:11px;font-weight:600}.customize-title{color:var(--brand-dark,#1e3a5f);font-size:22px;font-weight:800}.customize-section{border:1px solid #e2e8f0;border-radius:16px;margin:0 16px 20px;padding:16px}.customize-section h2{color:#64748b;text-transform:uppercase;letter-spacing:.06em;margin:0 0 14px;font-size:13px;font-weight:700}.customize-hint{color:#64748b;margin:-8px 0 12px;font-size:13px}.customize-field{color:#64748b;flex-direction:column;gap:6px;margin-bottom:14px;font-size:12px;font-weight:600;display:flex}.customize-field input,.customize-field select{color:#1e3a5f;background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:10px 12px;font-size:15px}.customize-field select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%2364748b' d='M1 1l5 5 5-5'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:36px}.customize-field-label{color:#64748b;margin-bottom:8px;font-size:12px;font-weight:600;display:block}.customize-logo-row{align-items:center;gap:14px;display:flex}.customize-logo-preview{object-fit:cover;border:1px solid #e2e8f0;border-radius:12px;width:56px;height:56px}.customize-logo-placeholder{background:var(--brand-light,#eff6ff);width:56px;height:56px;color:var(--brand,#2563eb);border-radius:12px;justify-content:center;align-items:center;font-size:24px;font-weight:800;display:flex}.customize-logo-actions{flex-flow:wrap;align-items:center;gap:8px;display:flex}.customize-file-input{display:none}.customize-logo-hint{color:#94a3b8;margin:8px 0 0;font-size:11px;font-weight:600}.customize-color-row{gap:10px;margin-bottom:12px;display:flex}.customize-color-input{cursor:pointer;border:1px solid #e2e8f0;border-radius:10px;width:48px;height:40px;padding:2px}.customize-color-text{border:1px solid #e2e8f0;border-radius:10px;flex:1;padding:10px 12px;font-family:monospace;font-size:15px}.customize-presets{flex-wrap:wrap;gap:8px;display:flex}.customize-preset{cursor:pointer;border:2px solid #0000;border-radius:50%;width:32px;height:32px;padding:0}.customize-preset.active{border-color:#1e3a5f;box-shadow:0 0 0 2px #fff,0 0 0 4px #1e3a5f}.customize-features{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.customize-feature-row{cursor:pointer;border:none;border-radius:0;justify-content:space-between;align-items:center;gap:12px;padding:10px 4px;display:flex}.customize-feature-name{color:#1e3a5f;font-size:14px;font-weight:700;display:block}.customize-feature-desc{color:#64748b;margin-top:2px;font-size:12px;display:block}.customize-feature-row input{width:18px;height:18px;accent-color:var(--brand,#2563eb)}.customize-preview{margin:0 16px 16px}.customize-preview-label{color:#94a3b8;text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px;font-size:11px;font-weight:700;display:block}.customize-preview-card{background:#f8fafc;border:2px solid;border-radius:16px;align-items:center;gap:12px;padding:16px;display:flex}.customize-preview-logo{object-fit:cover;border-radius:10px;width:48px;height:48px}.customize-preview-initial{color:#fff;border-radius:10px;justify-content:center;align-items:center;width:48px;height:48px;font-size:20px;font-weight:800;display:flex}.customize-preview-gym{font-size:18px;font-style:italic;font-weight:800}.customize-preview-sub{color:#64748b;font-size:12px}.customize-actions{flex-direction:column;gap:8px;padding:0 16px;display:flex}.customize-btn,.customize-save,.customize-reset{cursor:pointer;border:none;border-radius:10px;padding:10px 14px;font-size:13px;font-weight:700}.customize-btn{background:var(--brand,#2563eb);color:#fff}.customize-btn.ghost{color:#64748b;background:#f1f5f9}.customize-save{background:var(--brand,#2563eb);color:#fff;padding:14px}.customize-reset{color:#64748b;background:0 0}.customize-toast{color:#fff;z-index:300;background:#1e3a5f;border-radius:10px;padding:12px 20px;font-size:14px;position:fixed;bottom:80px;left:50%;transform:translate(-50%)}.theme-toggle-row{gap:8px;display:flex}.theme-toggle-btn{color:#64748b;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:10px;flex:1;padding:10px 8px;font-size:13px;font-weight:700}.theme-toggle-btn.active{border-color:var(--brand-border,#bfdbfe);background:var(--brand-light,#eff6ff);color:var(--brand,#2563eb)}.history-modal-backdrop{z-index:200;background:#0f172a73;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.history-modal{background:#fff;border-radius:20px;width:100%;max-width:440px;max-height:90vh;padding:24px;overflow-y:auto;box-shadow:0 20px 40px #00000026}.history-modal-title{color:#1e3a5f;margin:0 0 20px;font-size:20px;font-weight:800}.history-form{flex-direction:column;gap:14px;display:flex}.history-form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.history-field{color:#64748b;flex-direction:column;gap:6px;font-size:12px;font-weight:600;display:flex}.history-field input,.history-field select{color:#1e3a5f;border:1px solid #e2e8f0;border-radius:10px;padding:10px 12px;font-family:inherit;font-size:15px}.history-field input:focus,.history-field select:focus{border-color:var(--brand,#2563eb);outline:none;box-shadow:0 0 0 3px #2563eb26}.history-form-error{color:#dc2626;margin:0;font-size:13px}.history-form-actions{gap:10px;margin-top:4px;display:flex}.history-btn{cursor:pointer;border:none;border-radius:10px;flex:1;padding:12px;font-size:13px;font-weight:700}.history-btn.cancel{color:#64748b;background:#f1f5f9}.history-btn.save{background:var(--brand,#2563eb);color:#fff}.history-add-btn{background:var(--brand,#2563eb);color:#fff;cursor:pointer;border:none;border-radius:10px;align-items:center;gap:6px;padding:8px 12px;font-size:12px;font-weight:700;display:inline-flex}.profile-modal-backdrop{z-index:200;background:#0f172a73;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.profile-modal{background:#fff;border-radius:20px;width:100%;max-width:440px;max-height:90vh;padding:24px;overflow-y:auto;box-shadow:0 20px 40px #00000026}.profile-modal-title{color:#1e3a5f;margin:0 0 20px;font-size:20px;font-weight:800}.profile-form{flex-direction:column;gap:14px;display:flex}.profile-form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.profile-field{color:#64748b;flex-direction:column;gap:6px;font-size:12px;font-weight:600;display:flex}.profile-field input,.profile-field textarea{color:#1e3a5f;resize:vertical;border:1px solid #e2e8f0;border-radius:10px;padding:10px 12px;font-family:inherit;font-size:15px}.profile-field input:focus,.profile-field textarea:focus{border-color:var(--brand,#2563eb);outline:none;box-shadow:0 0 0 3px #2563eb26}.profile-photo-section{flex-direction:column;align-items:center;gap:8px;margin-bottom:4px;display:flex}.profile-photo-btn{cursor:pointer;background:var(--brand,#2563eb);width:88px;height:88px;box-shadow:0 2px 8px color-mix(in srgb, var(--brand,#2563eb) 30%, transparent);border:none;border-radius:50%;padding:0;position:relative;overflow:hidden}.profile-photo-preview{object-fit:cover;width:100%;height:100%}.profile-photo-initials{color:#fff;justify-content:center;align-items:center;width:100%;height:100%;font-size:28px;font-weight:800;display:flex}.profile-photo-overlay{color:#fff;text-transform:uppercase;letter-spacing:.04em;opacity:0;background:linear-gradient(#0000 40%,#0f172a8c);justify-content:center;align-items:flex-end;padding-bottom:6px;font-size:9px;font-weight:700;transition:opacity .15s;display:flex;position:absolute;inset:0}.profile-photo-btn:hover .profile-photo-overlay{opacity:1}.profile-photo-input{display:none}.profile-photo-hint{color:#94a3b8;margin:0;font-size:11px;font-weight:600}.profile-remove-photo{color:#64748b;cursor:pointer;background:0 0;border:none;font-size:12px;font-weight:600}.profile-form-error{color:#dc2626;margin:0;font-size:13px}.profile-form-actions{gap:10px;margin-top:4px;display:flex}.profile-btn{cursor:pointer;border:none;border-radius:10px;flex:1;padding:12px;font-size:13px;font-weight:700}.profile-btn.full{width:100%}.profile-btn.cancel{color:#64748b;background:#f1f5f9}.profile-btn.save{background:var(--brand,#2563eb);color:#fff}.profile-btn.danger{color:#fff;background:#dc2626}.account-manage-email{color:#64748b;margin:-8px 0 18px;font-size:13px}.account-manage-section{flex-direction:column;gap:12px;padding-top:4px;display:flex}.account-manage-section+.account-manage-section{border-top:1px solid #e2e8f0;margin-top:20px;padding-top:20px}.account-manage-section h3{color:#1e3a5f;margin:0;font-size:14px;font-weight:800}.account-manage-section p{color:#64748b;margin:0;font-size:13px;line-height:1.45}.account-manage-success{color:#059669;margin:0;font-size:13px;font-weight:600}.account-delete-confirm{flex-direction:column;gap:12px;display:flex}.contact-owner-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;margin-bottom:16px;padding:14px}.contact-owner-name{color:#1e3a5f;margin:0 0 6px;font-size:16px;font-weight:800}.contact-owner-link{color:#2563eb;margin-top:4px;font-size:13px;text-decoration:none;display:block}.contact-from{color:#64748b;margin:0;font-size:12px}.contact-sent-text{color:#64748b;margin:0 0 20px;font-size:15px;line-height:1.5}.injury-modal-lead{color:#64748b;margin:0 0 16px;font-size:13px;line-height:1.5}.injury-list{flex-direction:column;gap:10px;margin:0 0 16px;padding:0;list-style:none;display:flex}.injury-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:12px 14px}.injury-item.injury-status-active{background:#fef2f2;border-color:#fecaca}.injury-item-top{justify-content:space-between;align-items:center;gap:8px;margin-bottom:4px;display:flex}.injury-item-top strong{color:#1e3a5f;font-size:14px}.injury-status-badge{text-transform:uppercase;letter-spacing:.04em;color:#64748b;font-size:10px;font-weight:700}.injury-item-desc{color:#475569;margin:0;font-size:13px;line-height:1.45}.injury-item-date{color:#94a3b8;margin:6px 0 0;font-size:11px}.injury-item-actions{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.injury-action-btn{color:#64748b;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:6px 10px;font-size:11px;font-weight:700}.injury-action-btn.primary{border-color:var(--brand,#2563eb);color:var(--brand,#2563eb)}.injury-form{margin-top:4px}.home-screen{background:#fff;height:100%;padding-bottom:24px;overflow-y:auto}.home-header{flex-direction:column;align-items:stretch;gap:4px;padding:12px 20px 8px;display:flex;position:relative}.home-header-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.home-header-greeting{align-items:center;gap:8px;min-width:0;display:flex}.home-header-actions{flex-shrink:0;align-items:center;gap:8px;margin-left:auto;display:flex}.home-header-actions .notif-bell{border-radius:9px;width:32px;height:32px}.home-header-logo{object-fit:contain;opacity:.88;border-radius:9px;flex-shrink:0;width:34px;height:34px}.home-gym-action{cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:6px;padding:0;display:inline-flex}.home-facility-menu{z-index:30;background:#fff;border:1px solid #e2e8f0;border-radius:14px;flex-direction:column;gap:4px;padding:8px;display:flex;position:absolute;top:calc(100% - 4px);left:20px;right:20px;box-shadow:0 12px 28px #0f172a1f}.home-facility-option{text-align:left;cursor:pointer;background:0 0;border:none;border-radius:10px;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:10px 12px;display:flex}.home-facility-option strong{color:#0f172a;font-size:14px}.home-facility-option span{color:#64748b;font-size:12px}.home-facility-option:hover,.home-facility-option.selected{background:#f1f5f9}.home-facility-option.selected strong{color:var(--brand,#2563eb)}.home-header-left{align-items:flex-start;gap:10px;display:flex}.home-icon{color:#2563eb;display:flex}.home-label{color:#2563eb;letter-spacing:1.2px;font-size:11px;font-weight:600}.home-gym{color:#1e3a5f;font-size:22px;font-style:italic;font-weight:800;line-height:1.1}.role-switch{background:#f1f5f9e6;border:1px solid #94a3b82e;border-radius:10px;flex-shrink:0;gap:4px;padding:3px;display:flex}.role-switch-btn{color:#64748b;cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:8px;flex:1;padding:7px 12px;font-size:12px;font-weight:700}.role-switch-btn.active{color:var(--brand,#2563eb);background:#fff;box-shadow:0 1px 3px #0f172a0f}.home-session-bar{background:#ffffff8c;border:none;border-radius:12px;align-items:center;gap:10px;margin:0 16px 12px;padding:8px 12px;display:flex}.home-session-bar-split{padding:6px 10px 6px 6px}.home-session-bar .role-switch{max-width:none;margin:0}@media (width<=520px){.home-session-bar-split{flex-wrap:wrap}.home-session-bar-split .role-switch{flex:100%}.home-session-bar-split .role-switch-btn{flex:1}}.home-role-badge{text-transform:uppercase;letter-spacing:.04em;border-radius:8px;flex-shrink:0;padding:3px 8px;font-size:10px;font-weight:700}.home-role-member{color:#2563eb;background:#eff6ff}.home-role-coach{color:#57534e;background:#f5f5f4}.home-role-manager{color:#059669;background:#ecfdf5}.home-role-admin{color:#047857;background:#ecfdf5}.home-role-drop_in{color:#c2410c;background:#fff7ed}.home-role-superuser{color:#6d28d9;background:#f5f3ff}.home-session-email{color:#64748b;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:12px;overflow:hidden}.home-signout-btn{color:#64748b;cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:4px 0;font-size:12px;font-weight:600}.home-signout-btn:hover{color:#1e3a5f}.home-theme-btn{color:#64748b;cursor:pointer;background:#ffffff8c;border:1px solid #94a3b859;border-radius:8px;flex-shrink:0;padding:5px 9px;font-size:11px;font-weight:700}.home-theme-btn:hover{color:var(--brand,#2563eb);border-color:var(--brand-border,#bfdbfe)}.role-chip{color:#64748b;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex:1;justify-content:center;align-items:center;gap:4px;min-width:0;padding:10px 6px;font-size:11px;font-weight:700;display:inline-flex}.role-chip.active{color:#2563eb;background:#eff6ff;border-color:#bfdbfe}.home-hero{padding:4px 20px 16px}.home-hero-title{color:#1e3a5f;margin:0;font-size:24px;font-weight:800}.home-hero-sub{color:#64748b;margin:6px 0 0;font-size:14px}.metric-grid{grid-template-columns:1fr 1fr;gap:10px;padding:0 16px 16px;display:grid}.metric-card{text-align:left;font:inherit;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:16px;flex-direction:column;align-items:flex-start;gap:4px;padding:14px;transition:box-shadow .15s;display:flex;box-shadow:0 1px 3px #0f172a0a}.metric-card:hover{box-shadow:0 4px 12px #0f172a0f}.metric-label{color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;font-size:11px;font-weight:700}.metric-value{color:#1e3a5f;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:22px;font-weight:800;line-height:1.1;overflow:hidden}.metric-hint{color:#64748b;font-size:11px}.home-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;margin:0 16px 12px;padding:16px;box-shadow:0 1px 3px #0f172a0a}.home-card-header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;display:flex}.home-card-header h2{color:#64748b;text-transform:uppercase;letter-spacing:.05em;margin:0;font-size:13px;font-weight:700}.home-card-badges{flex-shrink:0;align-items:center;gap:6px;display:flex}.home-card-badge{border-radius:20px;padding:2px 8px;font-size:10px;font-weight:700}.home-card-badge.active{color:#059669;background:#ecfdf5}.home-card-badge.warn{color:#78716c;background:#f5f5f4}.home-card-warn{border-color:#d6d3d1}.home-voucher-list{flex-direction:column;gap:6px;margin:8px 0 0;padding:0;list-style:none;display:flex}.home-voucher-row{align-items:center;display:flex}.home-topup-btn{background:var(--brand,#2563eb);color:#fff;cursor:pointer;border:none;border-radius:12px;width:100%;margin-top:12px;padding:10px 14px;font-size:13px;font-weight:700}.home-card-title{color:#1e3a5f;margin:0;font-size:18px;font-weight:800}.home-card-meta{color:#64748b;margin:4px 0 0;font-size:13px}.home-spotlight{color:#1e3a5f;font-style:italic}.home-announcement-body{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.home-announcement-unread{border-color:color-mix(in srgb, var(--brand,#2563eb) 35%, #e2e8f0)}.home-link{color:#2563eb;cursor:pointer;background:0 0;border:none;font-size:12px;font-weight:700}.home-icon-btn{color:#64748b;cursor:pointer;background:#f1f5f9;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;padding:0;display:flex}.home-icon-btn:hover{color:#2563eb;background:#e2e8f0}.home-alert{border-radius:12px;flex-direction:column;align-items:stretch;gap:8px;margin:0 16px 12px;padding:12px 14px;font-size:13px;display:flex}.home-alert strong{font-size:14px}.home-alert p{margin:0;line-height:1.45}.home-alert-info{color:#1e40af;background:#eff6ff;border:1px solid #bfdbfe}.home-alert-warn{color:#92400e;background:#fef3c7;border:1px solid #fcd34d}.home-alert-btn{color:#b45309;cursor:pointer;white-space:nowrap;background:#fff;border:none;border-radius:8px;padding:6px 10px;font-size:11px;font-weight:700}.home-package-list,.home-class-list,.home-member-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.home-package-row,.home-class-row,.home-member-row{color:#1e3a5f;justify-content:space-between;align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex}.home-package-count{color:#2563eb;background:#eff6ff;border-radius:20px;padding:2px 8px;font-size:12px;font-weight:800}.home-class-time{font-variant-numeric:tabular-nums}.home-class-fill{color:#64748b;font-size:12px}.home-class-full{color:#dc2626;background:#fef2f2;border-radius:6px;padding:2px 6px;font-size:10px;font-weight:700}.home-member-pkg{color:#64748b;font-size:11px;font-weight:600}.home-retention-ago{color:#b45309;white-space:nowrap;font-size:12px;font-weight:700}.home-retention-ago.is-stale{color:#dc2626}.home-retention-empty{margin:4px 0 0}.home-hero.compact{padding-top:0;padding-bottom:12px}.home-profile-card{background:linear-gradient(#eff6ff 0%,#fff 60%);border:1px solid #e2e8f0;border-radius:20px;flex-direction:column;align-items:center;margin:0 16px 8px;padding:20px 16px;display:flex;box-shadow:0 1px 3px #0f172a0a}.home-profile-avatar{background:var(--brand,#2563eb);width:72px;height:72px;box-shadow:0 4px 12px color-mix(in srgb, var(--brand,#2563eb) 35%, transparent);cursor:pointer;border:3px solid #fff;border-radius:50%;margin-bottom:12px;padding:0;overflow:hidden}.home-profile-avatar img{object-fit:cover;width:100%;height:100%}.home-profile-avatar span{color:#fff;justify-content:center;align-items:center;width:100%;height:100%;font-size:24px;font-weight:800;display:flex}.home-profile-info{text-align:center;margin-bottom:14px}.home-profile-name{color:#1e3a5f;margin:0;font-size:22px;font-weight:800}.home-profile-email,.home-profile-phone{color:#64748b;margin:4px 0 0;font-size:13px}.home-profile-facilities{color:#94a3b8;margin:4px 0 0;font-size:12px}.home-profile-actions{flex-wrap:wrap;gap:8px;width:100%;display:flex}.home-profile-btn{background:var(--brand,#2563eb);color:#fff;cursor:pointer;border:none;border-radius:10px;flex:calc(50% - 4px);min-width:120px;padding:10px;font-size:12px;font-weight:700}.home-profile-btn.outline{color:#2563eb;background:#fff;border:1px solid #bfdbfe}.home-unread-badge{background:var(--brand,#2563eb);color:#fff;border-radius:20px;padding:2px 8px;font-size:10px;font-weight:700}.home-message-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.home-message-row{text-align:left;width:100%;font:inherit;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;align-items:flex-start;gap:2px;padding:12px;display:flex}.home-message-row.unread{background:#eff6ff;border-color:#bfdbfe}.home-message-subject{color:#1e3a5f;font-size:14px;font-weight:700}.home-message-from{color:#2563eb;font-size:11px;font-weight:600}.home-message-preview{color:#64748b;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:12px;overflow:hidden}.home-toast{color:#fff;z-index:300;background:#1e3a5f;border-radius:10px;padding:12px 20px;font-size:14px;position:fixed;bottom:80px;left:50%;transform:translate(-50%);box-shadow:0 4px 12px #00000026}.home-card-clickable{cursor:pointer;transition:box-shadow .15s}.home-card-clickable:hover{box-shadow:0 4px 12px #0f172a0f}.home-history-stats{color:#1e3a5f;gap:16px;font-size:14px;font-weight:700;display:flex}.home-quick-nav{gap:8px;padding:8px 16px 0;display:flex}.home-quick-nav button{color:#2563eb;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;flex:1;justify-content:center;align-items:center;gap:6px;padding:10px;font-size:12px;font-weight:700;display:inline-flex}.home-staff-label{color:#64748b;text-transform:uppercase;letter-spacing:.06em;margin:0 16px 12px;font-size:12px;font-weight:700}.home-staff-section{margin-top:4px}.home-injury-summary{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.home-injury-summary li{background:#fef2f2;border:1px solid #fecaca;border-radius:10px;padding:10px 12px}.home-injury-summary strong{color:#1e3a5f;font-size:14px;display:block}.home-injury-summary span{text-transform:uppercase;color:#dc2626;font-size:10px;font-weight:700}.home-injury-summary p{color:#64748b;margin:4px 0 0;font-size:12px}.home-staff-injury-list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.home-staff-injury-row strong{color:#1e3a5f;margin-bottom:6px;font-size:14px;display:block}.home-staff-injury-detail{background:#ffffffb3;border-radius:8px;margin-bottom:6px;padding:8px 10px}.home-staff-injury-detail span:first-child{color:#991b1b;font-size:13px;font-weight:700}.home-staff-injury-status{text-transform:uppercase;color:#64748b;margin-left:8px;font-size:10px;font-weight:700}.home-staff-injury-detail p{color:#475569;margin:4px 0 0;font-size:12px}.home-balance-owing{color:#dc2626;margin-top:8px}.home-desktop-layout{flex-direction:column;gap:0;display:flex}.home-desktop-aside,.home-desktop-main{display:contents}@media (width>=900px){.home-session-bar{width:auto;max-width:none;margin-right:16px}.home-session-bar .role-switch-btn{flex:0 auto;min-width:88px}.home-desktop-layout{grid-template-columns:minmax(280px,360px) minmax(0,1fr);align-items:start;gap:20px;padding:0 16px 8px;display:grid}.home-desktop-aside,.home-desktop-main{flex-direction:column;gap:12px;min-width:0;display:flex}.home-desktop-aside .home-profile-card,.home-desktop-aside .home-hero,.home-desktop-aside .metric-grid,.home-desktop-aside .home-alert,.home-desktop-aside .home-card{margin-left:0;margin-right:0}.home-desktop-main .home-card{width:100%;max-width:none;margin-left:0;margin-right:0}.home-profile-actions{flex-wrap:wrap}.home-profile-btn{flex:auto;min-width:120px}.home-quick-nav{max-width:480px}.home-quick-nav button{flex:0 auto;min-width:120px;padding-inline:16px}.metric-grid{grid-template-columns:1fr 1fr}.home-topup-btn,.home-alert-btn{align-self:flex-start;width:auto;padding-inline:18px}}.program-form-backdrop{z-index:200;background:#0f172a73;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.program-form-modal{background:#fff;border-radius:20px;width:100%;max-width:480px;max-height:90vh;padding:24px;overflow:hidden auto;box-shadow:0 20px 40px #00000026}.program-form-title{color:#1e3a5f;margin:0 0 20px;font-size:20px;font-weight:800}.program-form{flex-direction:column;gap:14px;display:flex}.program-form-row{grid-template-columns:1fr;gap:10px;display:grid}.program-form-field{color:#64748b;flex-direction:column;gap:6px;min-width:0;font-size:12px;font-weight:600;display:flex}.program-form-field input,.program-form-field select{box-sizing:border-box;color:#1e3a5f;background:#fff;border:1px solid #e2e8f0;border-radius:10px;width:100%;min-width:0;padding:10px 12px;font-size:15px}.program-form-field select{padding-right:28px}.program-form-field input:focus,.program-form-field select:focus{border-color:var(--brand,#2563eb);outline:none;box-shadow:0 0 0 3px #2563eb26}.program-form-exercises{flex-direction:column;gap:14px;display:flex}.program-form-hint{color:#64748b;margin:0;font-size:12px;line-height:1.4}.program-form-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;gap:8px;padding:12px;display:flex}.program-form-section.is-main{background:#f8fbff;border-color:#bfdbfe}.program-form-section-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.program-form-section-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.program-ai-btn{color:#2563eb;cursor:pointer;background:#eff6ff;border:1px dashed #bfdbfe;border-radius:8px;padding:6px 10px;font-size:11px;font-weight:600}.program-ai-btn:disabled{opacity:.6;cursor:wait}.program-form-ai-note{color:#1e40af;background:#eff6ff;border-radius:8px;margin:0;padding:8px 10px;font-size:12px;line-height:1.4}.program-form-textarea{box-sizing:border-box;color:#1e3a5f;resize:vertical;background:#fff;border:1px solid #e2e8f0;border-radius:10px;width:100%;min-width:0;padding:10px 12px;font-family:inherit;font-size:15px;line-height:1.45}.program-form-textarea:focus{border-color:var(--brand,#2563eb);outline:none;box-shadow:0 0 0 3px #2563eb26}.program-workout-remove{color:#dc2626;cursor:pointer;background:#fef2f2;border:none;border-radius:8px;padding:6px 10px;font-size:11px;font-weight:600}.program-form-add-roles{flex-wrap:wrap;gap:8px;display:flex}.program-form-label{color:#1e3a5f;letter-spacing:.02em;text-transform:uppercase;font-size:12px;font-weight:700}.program-form-section-empty{color:#94a3b8;margin:0;font-size:12px}.program-exercise-row{grid-template-columns:1fr 1fr auto;align-items:center;gap:8px;display:grid}.program-exercise-row input{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:10px 12px;font-size:14px}.program-exercise-remove{color:#dc2626;cursor:pointer;background:#fef2f2;border:none;border-radius:8px;width:32px;height:32px;font-size:18px}.program-add-exercise{color:#2563eb;cursor:pointer;background:#eff6ff;border:1px dashed #bfdbfe;border-radius:8px;align-items:center;gap:4px;padding:6px 10px;font-size:11px;font-weight:600;display:inline-flex}.program-form-error{color:#dc2626;margin:0;font-size:13px}.program-form-actions{gap:10px;margin-top:4px;display:flex}.program-form-btn{cursor:pointer;border:none;border-radius:10px;flex:1;padding:10px 12px;font-size:13px;font-weight:700}.program-form-btn.cancel{color:#64748b;background:#f1f5f9}.program-form-btn.save{background:var(--brand,#2563eb);color:#fff}.track-subscribe-modal{max-width:440px}.track-subscribe-hint{color:#64748b;margin:-8px 0 16px;font-size:13px;line-height:1.5}.track-subscribe-list{margin:0 0 16px;padding:0;list-style:none}.track-subscribe-row{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;gap:12px;padding:14px 0;display:flex}.track-subscribe-name{color:#1e3a5f;align-items:center;gap:8px;font-size:15px;font-weight:700;display:flex}.track-subscribe-desc{color:#94a3b8;margin-top:4px;padding-left:16px;font-size:12px;display:block}.track-subscribe-btn{border:1px solid var(--brand-border,#bfdbfe);color:var(--brand,#2563eb);cursor:pointer;background:#fff;border-radius:20px;flex-shrink:0;padding:8px 14px;font-size:12px;font-weight:700}.track-subscribe-btn.subscribed{background:var(--brand-light,#eff6ff)}.track-subscribe-btn:disabled{opacity:.5;cursor:not-allowed}.program-subscribe-prompt{text-align:center;padding:24px 20px}.program-subscribe-prompt p{color:#64748b;margin:0 0 12px;font-size:14px}.program-subscribe-prompt button{background:var(--brand,#2563eb);color:#fff;cursor:pointer;border:none;border-radius:12px;padding:10px 18px;font-size:13px;font-weight:700}.fo-mark{object-fit:contain;object-position:left center;flex-shrink:0;display:block}.fo-mark-wordmark.fo-mark-sm{width:auto;max-width:min(180px,58vw);height:24px}.fo-mark-wordmark.fo-mark-md{width:auto;max-width:min(220px,68vw);height:32px}.fo-mark-wordmark.fo-mark-lg{width:auto;max-width:min(280px,78vw);height:40px}.fo-mark-icon.fo-mark-sm{width:22px;height:22px}.fo-mark-icon.fo-mark-md{width:32px;height:32px}.fo-mark-icon.fo-mark-lg{width:44px;height:44px}.mkt-page{--mkt-blue:#1563f0;--mkt-blue-deep:#0b4bc4;--mkt-ink:#0c1222;--mkt-muted:#667085;--mkt-line:#e4e7ec;--mkt-soft:#f4f6f9;--mkt-night:#07111f;--mkt-chaos:#1c2433;--mkt-font:"Satoshi", "Avenir Next", "Segoe UI", sans-serif;min-height:100%;color:var(--mkt-ink);font-family:var(--mkt-font);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;background:radial-gradient(1200px 480px at 10% -10%,#1563f00f,#0000 60%),#fff;overflow:hidden auto}.mkt-wrap{width:min(1120px,100% - 40px);margin-inline:auto}.mkt-progress{transform-origin:0;background:var(--mkt-blue);z-index:60;pointer-events:none;height:2px;position:fixed;top:0;left:0;right:0}.mkt-nav{z-index:50;-webkit-backdrop-filter:blur(18px)saturate(160%);backdrop-filter:blur(18px)saturate(160%);background:#ffffffc7;border-bottom:1px solid #e4e7eccc;position:sticky;top:0}.mkt-nav-inner{justify-content:space-between;align-items:center;gap:16px;width:min(1120px,100% - 40px);min-height:76px;margin:0 auto;display:flex}.mkt-nav-brand{cursor:pointer;background:0 0;border:none;padding:0}.mkt-nav-logo.fo-mark-wordmark{max-width:min(320px,72vw);height:48px}.mkt-nav-links{align-items:center;gap:4px;display:none}@media (width>=980px){.mkt-nav-links{display:flex}.mkt-nav-burger{display:none!important}}.mkt-nav-links>button{color:var(--mkt-muted);cursor:pointer;z-index:1;background:0 0;border:none;padding:10px 14px;font-family:inherit;font-size:13px;font-weight:550;position:relative}.mkt-nav-links>button.is-active,.mkt-nav-links>button:hover{color:var(--mkt-ink)}.mkt-nav-pill{z-index:-1;background:#1563f014;border-radius:999px;position:absolute;inset:0}.mkt-nav-signup{border:1px solid var(--mkt-ink)!important;color:var(--mkt-ink)!important;border-radius:999px!important;margin-left:6px!important;font-weight:650!important}.mkt-nav-signup:hover{background:var(--mkt-ink)!important;color:#fff!important}.mkt-nav-burger{border:1px solid var(--mkt-line);cursor:pointer;background:#fff;border-radius:12px;place-content:center;gap:5px;width:42px;height:42px;display:grid}.mkt-nav-burger span{background:var(--mkt-ink);width:16px;height:1.5px;display:block}.mkt-nav-drawer{border-top:1px solid var(--mkt-line);background:#fffffff5;gap:4px;padding:8px 20px 20px;display:grid}.mkt-nav-drawer button{text-align:left;color:var(--mkt-ink);cursor:pointer;background:0 0;border:none;padding:12px 4px;font-family:inherit;font-size:15px;font-weight:550}.mkt-hero{color:#fff;align-items:end;min-height:min(78vh,700px);display:grid;position:relative;overflow:hidden}.mkt-hero-visual{position:absolute;inset:0}.mkt-hero-visual img{object-fit:cover;object-position:center 30%;width:100%;height:100%}.mkt-hero-scrim{background:linear-gradient(#07111f38 0%,#07111f85 40%,#07111fe6 100%),linear-gradient(90deg,#07111f9e 0%,#07111f2e 55%,#0000 100%);position:absolute;inset:0}.mkt-hero-content{z-index:1;width:min(1120px,100% - 40px);margin:0 auto;padding:88px 0 44px;position:relative}.mkt-kicker-dark,.mkt-kicker-light{letter-spacing:.16em;text-transform:uppercase;margin:0 0 14px;font-size:12px;font-weight:650}.mkt-kicker-dark{color:var(--mkt-blue)}.mkt-kicker-light{color:#93c5fd}.mkt-brand-title{letter-spacing:-.045em;margin:0 0 18px;font-size:clamp(3.2rem,9vw,6.5rem);font-weight:900;line-height:.95}.mkt-hero-line{color:#fff;letter-spacing:-.03em;max-width:18ch;margin:0 0 12px;font-size:clamp(1.35rem,3vw,2rem);font-weight:650;line-height:1.2}.mkt-hero-sub{color:#ffffffb8;max-width:32rem;margin:0 0 28px;font-size:clamp(1rem,1.8vw,1.15rem);font-weight:450;line-height:1.5}.mkt-hero-actions,.mkt-store-row,.mkt-cta-actions{flex-wrap:wrap;gap:10px;display:flex}.mkt-hero-meta{color:#ffffff9e;margin:18px 0 0;font-size:13px}.mkt-hero-meta button,.mkt-download-note button,.mkt-footer-demo button{font:inherit;color:#bfdbfe;cursor:pointer;background:0 0;border:none;padding:0;font-weight:650}.mkt-hero-meta button:hover,.mkt-download-note button:hover,.mkt-footer-demo button:hover{text-underline-offset:3px;text-decoration:underline}.mkt-btn-primary,.mkt-btn-secondary,.mkt-btn-glass{cursor:pointer;border-radius:999px;justify-content:center;align-items:center;min-height:46px;padding:0 20px;font-family:inherit;font-size:14px;font-weight:650;transition:background .2s,border-color .2s,color .2s;display:inline-flex}.mkt-btn-primary{background:var(--mkt-blue);color:#fff;border:none}.mkt-btn-primary:hover{background:var(--mkt-blue-deep)}.mkt-btn-secondary{border:1px solid var(--mkt-line);color:var(--mkt-ink);background:#fff}.mkt-btn-secondary:hover{background:var(--mkt-soft)}.mkt-btn-glass{color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff14;border:1px solid #ffffff47}.mkt-btn-glass:hover{background:#ffffff24;border-color:#ffffff6b}.mkt-escape,.mkt-booking,.mkt-extras,.mkt-pricing,.mkt-quote-section,.mkt-contact{padding:40px 0 28px}@media (width>=860px){.mkt-escape,.mkt-booking,.mkt-extras,.mkt-pricing,.mkt-contact{padding:64px 0 40px}}.mkt-section-head{max-width:38rem;margin-bottom:18px}.mkt-section-head-center{text-align:center;margin-inline:auto}.mkt-section-head h2,.mkt-download-copy h2,.mkt-contact h2,.mkt-cta h2,.mkt-quote-wrap blockquote{letter-spacing:-.035em;margin:0;font-weight:750;line-height:1.08}.mkt-section-head h2,.mkt-download-copy h2,.mkt-contact h2,.mkt-cta h2{font-size:clamp(1.9rem,3.6vw,3rem)}.mkt-section-head p,.mkt-download-copy>p,.mkt-contact>.mkt-wrap>div>p{color:var(--mkt-muted);margin:14px 0 0;font-size:1.02rem;line-height:1.6}.mkt-escape{background:linear-gradient(#eef2f8 0%,#f7f8fb 48%,#fff 100%)}.mkt-escape-stage{gap:14px;display:grid}@media (width>=700px){.mkt-escape-stage{grid-template-columns:1fr 1fr;align-items:stretch;gap:20px}}.mkt-escape-panel{flex-direction:column;gap:10px;min-height:0;display:flex}.mkt-escape-label{letter-spacing:.14em;text-transform:uppercase;color:var(--mkt-muted);margin:0;font-size:12px;font-weight:650}.mkt-escape-panel.is-control .mkt-escape-label{color:var(--mkt-blue)}.mkt-chat,.mkt-board{border-radius:22px;flex:1;min-height:0;overflow:hidden}.mkt-chat{background:radial-gradient(500px 220px at 80% 0%, #ffffff14, transparent 50%), var(--mkt-chaos);color:#fff;flex-direction:column;display:flex;box-shadow:inset 0 0 0 1px #ffffff0f}.mkt-chat-bar{background:#00000038;border-bottom:1px solid #ffffff14;flex-direction:column;gap:2px;padding:16px 18px;display:flex}.mkt-chat-bar strong{font-size:14px;font-weight:650}.mkt-chat-bar span{color:#ffffff80;font-size:12px}.mkt-chat-stream{background:repeating-linear-gradient(-12deg,#0000,#0000 10px,#ffffff04 10px 11px);flex-direction:column;flex:1;gap:8px;padding:14px;display:flex}.mkt-bubble{border-radius:16px;max-width:82%;margin:0;padding:11px 14px;font-size:13px;font-weight:500;line-height:1.4}.mkt-bubble.is-them{color:#ffffffe0;background:#ffffff1a;border-bottom-left-radius:4px;align-self:flex-start}.mkt-bubble.is-me{color:#062612;background:#25d366;border-bottom-right-radius:4px;align-self:flex-end}.mkt-board{border:1px solid var(--mkt-line);background:#fff;flex-direction:column;display:flex;box-shadow:0 24px 60px #0c12221a}.mkt-board-bar{border-bottom:1px solid var(--mkt-line);background:linear-gradient(#fbfcfe,#f4f6f9);align-items:center;gap:8px;padding:14px 16px;display:flex}.mkt-board-dot{background:#d0d5dd;border-radius:50%;width:8px;height:8px}.mkt-board-dot:first-child{background:#f97066}.mkt-board-dot:nth-child(2){background:#fdb022}.mkt-board-dot:nth-child(3){background:#32d583}.mkt-board-bar strong{margin-left:6px;font-size:13px;font-weight:700}.mkt-board-bar em{letter-spacing:.08em;text-transform:uppercase;color:var(--mkt-blue);margin-left:auto;font-size:11px;font-style:normal;font-weight:650}.mkt-board-list{flex:1;gap:6px;margin:0;padding:8px;list-style:none;display:grid}.mkt-board-list li{background:var(--mkt-soft);border-radius:14px;grid-template-columns:52px 1fr auto;align-items:center;gap:12px;padding:10px 12px;display:grid}.mkt-board-list time{letter-spacing:-.02em;color:var(--mkt-ink);font-size:13px;font-weight:750}.mkt-board-list div{gap:2px;min-width:0;display:grid}.mkt-board-list strong{letter-spacing:-.02em;font-size:14px;font-weight:650}.mkt-board-list span{color:var(--mkt-muted);font-size:12px}.mkt-board-list b{letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:5px 8px;font-size:11px;font-weight:700}.mkt-board-list b.is-open{color:#067647;background:#ecfdf3}.mkt-board-list b.is-full{color:#b42318;background:#fef3f2}.mkt-board-list b.is-waitlist{color:#b54708;background:#fffaeb}.mkt-booking{background:#fff}.mkt-booking-stage{gap:18px;display:grid}@media (width>=960px){.mkt-booking-stage{grid-template-columns:1.25fr .9fr;align-items:center;gap:36px}}.mkt-booking-visual{background:#12233d;border-radius:28px;min-height:360px;position:relative;overflow:hidden}.mkt-booking-visual>img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.mkt-booking-visual-scrim{background:linear-gradient(#07111f26 0%,#07111f8c 100%),linear-gradient(90deg,#07111f59,#0000 55%);position:absolute;inset:0}.mkt-booking-float{z-index:1;width:min(340px,88%);position:absolute;bottom:8%;right:6%}.mkt-booking-float .mkt-board{min-height:0;box-shadow:0 28px 70px #00000061}.mkt-booking-float .mkt-board-list{gap:6px;padding:8px}.mkt-booking-float .mkt-board-list li{padding:10px}.mkt-booking-beats{gap:8px;display:grid}.mkt-booking-beats button{text-align:left;cursor:pointer;width:100%;color:inherit;background:0 0;border:none;border-left:2px solid #0000;grid-template-columns:42px 1fr;align-items:start;gap:14px;padding:12px 10px 12px 12px;font-family:inherit;transition:background .2s,border-color .2s;display:grid}.mkt-booking-beats button.is-active{border-left-color:var(--mkt-blue);background:linear-gradient(90deg,#1563f00f,#0000 70%)}.mkt-beat-index{letter-spacing:.08em;color:var(--mkt-muted);padding-top:3px;font-size:12px;font-weight:750}.mkt-booking-beats button.is-active .mkt-beat-index{color:var(--mkt-blue)}.mkt-booking-beats strong{letter-spacing:-.02em;margin-bottom:6px;font-size:1.05rem;font-weight:700;display:block}.mkt-booking-beats em{color:var(--mkt-muted);font-size:14px;font-style:normal;line-height:1.5;display:block}.mkt-extras{background:linear-gradient(#fff 0%,#f5f7fb 100%)}.mkt-extras-rail{gap:18px;display:grid}@media (width>=800px){.mkt-extras-rail{grid-template-columns:1fr 1fr;gap:22px}}.mkt-extra h3{letter-spacing:-.025em;margin:18px 0 8px;font-size:1.25rem;font-weight:700}.mkt-extra p{max-width:34rem;color:var(--mkt-muted);margin:0;font-size:.98rem;line-height:1.55}.mkt-extra-media{aspect-ratio:16/10;background:#12233d;border-radius:20px;overflow:hidden}.mkt-extra-media img{object-fit:cover;width:100%;height:100%;transition:transform .8s cubic-bezier(.22,1,.36,1);display:block}.mkt-extra:hover .mkt-extra-media img{transform:scale(1.03)}.mkt-quote-section{background:var(--mkt-soft);padding:48px 0}.mkt-quote-wrap{max-width:760px}.mkt-quote-wrap blockquote{color:var(--mkt-ink);margin:0 0 28px;font-size:clamp(1.35rem,2.8vw,1.9rem);font-weight:550}.mkt-quote-wrap figcaption{align-items:center;gap:12px;display:flex}.mkt-quote-wrap figcaption img{object-fit:cover;border-radius:50%;width:44px;height:44px}.mkt-quote-wrap figcaption span{color:var(--mkt-muted);gap:2px;font-size:13px;display:grid}.mkt-quote-wrap figcaption strong{color:var(--mkt-ink)}.mkt-download{background:radial-gradient(700px 320px at 85% 20%, #1563f038, transparent 55%), var(--mkt-night);color:#fff;padding:56px 0}@media (width>=860px){.mkt-download{padding:72px 0}}.mkt-download-grid,.mkt-contact-grid{align-items:center;gap:22px;display:grid}@media (width>=860px){.mkt-download-grid{grid-template-columns:1.05fr .95fr;gap:48px}.mkt-contact-grid{grid-template-columns:.9fr 1.1fr;align-items:start;gap:40px}}.mkt-download-copy{flex-direction:column;align-items:flex-start;max-width:36rem;display:flex}.mkt-download-copy>.mkt-kicker-light{margin:0 0 12px}.mkt-download-copy>h2{margin:0}.mkt-download-copy>p{max-width:34rem;color:#ffffffa3!important;margin:20px 0 0!important}.mkt-download-copy>.mkt-store-row{justify-content:flex-start;gap:10px;width:100%;margin-top:20px}.mkt-store-link{color:inherit;text-decoration:none}.mkt-store-badge{color:#fff;background:#ffffff0a;border:1px solid #ffffff24;border-radius:14px;align-items:center;gap:12px;min-width:178px;padding:12px 16px;display:inline-flex}.mkt-store-badge span{gap:2px;display:grid}.mkt-store-badge small{letter-spacing:.05em;text-transform:uppercase;opacity:.7;font-size:10px}.mkt-store-badge strong{font-size:15px;font-weight:700}.mkt-download-note{max-width:28rem;margin:22px 0 0!important;font-size:13px!important;line-height:1.5!important}.mkt-download-media{aspect-ratio:5/4;background:#12233d;border-radius:20px;overflow:hidden}.mkt-download-media img{object-fit:cover;width:100%;height:100%;display:block}.mkt-price-region{background:var(--mkt-soft);border:1px solid var(--mkt-line);border-radius:999px;gap:4px;margin:0 0 28px;padding:4px;display:inline-flex}.mkt-price-region button{cursor:pointer;min-width:132px;color:var(--mkt-muted);background:0 0;border:none;border-radius:999px;gap:1px;padding:10px 18px;font-family:inherit;transition:background .2s,color .2s;display:grid}.mkt-price-region button strong{letter-spacing:-.01em;font-size:13px;font-weight:700}.mkt-price-region button span{letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:550}.mkt-price-region button.is-active{background:var(--mkt-ink);color:#fff}.mkt-price-footnote{color:var(--mkt-muted);margin:22px 0 0;font-size:13px}.mkt-price-footnote button{font:inherit;color:var(--mkt-blue);cursor:pointer;background:0 0;border:none;padding:0;font-weight:650}.mkt-price-footnote button:hover{text-underline-offset:3px;text-decoration:underline}.mkt-price-grid{gap:12px;display:grid}@media (width>=560px){.mkt-price-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1100px){.mkt-price-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.mkt-price-card{border:1px solid var(--mkt-line);background:#fff;border-radius:18px;flex-direction:column;gap:10px;height:100%;padding:20px 18px 18px;display:flex}.mkt-price-card.is-featured{border-color:color-mix(in srgb, var(--mkt-blue) 45%, var(--mkt-line));background:linear-gradient(#f5f8ff 0%,#fff 42%)}.mkt-price-card h3{letter-spacing:-.03em;color:var(--mkt-ink);text-transform:none;margin:0;font-size:1.35rem;font-weight:750}.mkt-price-tagline{letter-spacing:.1em;text-transform:uppercase;color:var(--mkt-blue);margin:0;font-size:11px;font-weight:700}.mkt-price{letter-spacing:-.04em;margin:0;font-size:2rem;font-weight:800}.mkt-price span{letter-spacing:0;color:var(--mkt-muted);margin-top:4px;font-size:13px;font-weight:500;display:block}.mkt-price-detail{min-height:0;color:var(--mkt-muted);margin:0;font-size:13px;line-height:1.45}.mkt-price-card ul{flex:1;gap:8px;margin:4px 0 8px;padding:0;list-style:none;display:grid}.mkt-price-card li{color:var(--mkt-muted);padding-left:14px;font-size:14px;position:relative}.mkt-price-card li:before{content:"";background:var(--mkt-blue);width:6px;height:1px;position:absolute;top:.55em;left:0}.mkt-price-card .mkt-btn-primary{width:100%}.mkt-contact{background:var(--mkt-soft)}.mkt-contact-channels{border:1px solid var(--mkt-line);background:#fff;border-radius:999px;gap:4px;margin-bottom:14px;padding:4px;display:inline-flex}.mkt-contact-channels button{letter-spacing:.04em;text-transform:uppercase;color:var(--mkt-muted);cursor:pointer;background:0 0;border:none;border-radius:999px;padding:8px 14px;font-family:inherit;font-size:12px;font-weight:650}.mkt-contact-channels button.is-active{background:var(--mkt-ink);color:#fff}.mkt-contact-form{gap:10px;display:grid}.mkt-contact-form input{box-sizing:border-box;border:1px solid var(--mkt-line);width:100%;font:inherit;background:#fff;border-radius:12px;padding:14px 16px;font-size:14px}.mkt-contact-form input:focus{border-color:#b2ccff;outline:none}.mkt-contact-thanks{color:#067647;margin:0;font-size:13px}.mkt-cta{color:#fff;background:#0b1b33;padding:40px 0}.mkt-cta-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;display:flex}.mkt-cta p{color:#ffffff94;margin:8px 0 0}.mkt-footer{border-top:1px solid var(--mkt-line);padding:48px 0 64px}.mkt-footer-copy{color:var(--mkt-muted);margin:0 0 28px;font-size:13px}.mkt-footer-cols{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}@media (width>=720px){.mkt-footer-cols{grid-template-columns:repeat(4,minmax(0,1fr))}}.mkt-footer-cols strong{letter-spacing:.08em;text-transform:uppercase;margin-bottom:12px;font-size:12px;display:block}.mkt-footer-cols button,.mkt-footer-cols span{text-align:left;color:var(--mkt-muted);cursor:default;background:0 0;border:none;margin:6px 0;padding:0;font-family:inherit;font-size:13px;display:block}.mkt-footer-cols button{cursor:pointer}.mkt-footer-cols button:hover{color:var(--mkt-ink)}.mkt-footer-demo{color:var(--mkt-muted);margin:28px 0 0;font-size:13px}.mkt-footer-demo button{color:var(--mkt-blue)}@media (width<=720px){.mkt-booking-visual{min-height:280px}.mkt-booking-float{display:none}.mkt-extra h3{margin:12px 0 6px}.mkt-extras-rail{gap:22px}.mkt-chat .mkt-bubble:nth-child(n+4){display:none}}.app-landing{color:#0c1222;-webkit-font-smoothing:antialiased;background:#07111f;min-height:100%;font-family:Satoshi,Avenir Next,Segoe UI,sans-serif;position:relative;overflow-y:auto}.app-landing-hero{height:42vh;min-height:220px;max-height:360px;position:absolute;inset:0 0 auto;overflow:hidden}.app-landing-hero img{object-fit:cover;object-position:center 28%;width:100%;height:100%}.app-landing-scrim{background:linear-gradient(#07111f40,#07111feb);position:absolute;inset:0}.app-landing-sheet{z-index:1;background:#fff;border-radius:28px 28px 0 0;min-height:calc(100% - min(34vh,280px));margin-top:min(34vh,280px);padding:28px 20px 40px;position:relative}.app-landing-back{color:#667085;cursor:pointer;background:0 0;border:none;margin-bottom:18px;padding:0;font-family:inherit;font-size:13px;font-weight:600}.app-landing-brand{text-align:center;margin-bottom:24px}.app-landing-brand img{margin:0 auto 14px}.app-landing-brand h1{letter-spacing:-.03em;margin:0 0 8px;font-size:1.65rem}.app-landing-brand p{color:#667085;max-width:34ch;margin:0 auto;font-size:15px;line-height:1.5}.app-landing-paths{gap:12px;margin-bottom:12px;display:grid}.app-landing-path{text-align:left;background:#fff;border:1px solid #e4e7ec;border-radius:16px;gap:8px;padding:14px;display:grid}.app-landing-path.is-owner{background:#f8fafc;border-color:#d0d5dd}.app-landing-path-label{letter-spacing:.1em;text-transform:uppercase;color:#667085;margin:0;font-size:11px;font-weight:800}.app-landing-path-copy{color:#475467;margin:0 0 4px;font-size:13px;line-height:1.4}.app-landing-actions{gap:10px;margin-bottom:20px;display:grid}.app-landing-primary,.app-landing-secondary,.app-landing-owner,.app-landing-tertiary{cursor:pointer;border-radius:14px;min-height:48px;font-family:inherit;font-size:15px;font-weight:700}.app-landing-primary{color:#fff;background:#1563f0;border:none}.app-landing-secondary{color:#0c1222;background:#fff;border:1px solid #d0d5dd}.app-landing-owner{color:#fff;background:#0c1222;border:none}.app-landing-tertiary{color:#1563f0;background:0 0;border:none;width:100%;min-height:40px;margin-bottom:16px;font-weight:650}.app-landing-points{color:#667085;background:#f7f8fa;border-radius:14px;margin:0 0 22px;padding:14px 14px 14px 32px;font-size:13px;line-height:1.45}.app-landing-points li{margin:6px 0}.app-landing-legal{color:#98a2b3;justify-content:center;align-items:center;gap:8px;margin-bottom:10px;font-size:13px;display:flex}.app-landing-legal button{font:inherit;color:#1563f0;cursor:pointer;background:0 0;border:none;padding:0;font-weight:650}.app-landing-age,.app-landing-stores{text-align:center;color:#98a2b3;max-width:42ch;margin:0 auto 8px;font-size:12px;line-height:1.45}.app-landing-stores a{color:#1563f0;font-weight:650}.app-landing-modal{z-index:80;background:#07111f73;place-items:end center;padding:16px;display:grid;position:fixed;inset:0}.app-landing-modal-card{background:#fff;border-radius:18px;flex-direction:column;width:min(520px,100%);max-height:min(78vh,640px);display:flex;overflow:hidden}.app-landing-modal-head{border-bottom:1px solid #e4e7ec;justify-content:space-between;align-items:center;gap:12px;padding:16px 16px 12px;display:flex}.app-landing-modal-head h2{margin:0;font-size:16px}.app-landing-modal-head button{cursor:pointer;background:#f2f4f7;border:none;border-radius:999px;padding:8px 12px;font-family:inherit;font-size:13px;font-weight:650}.app-landing-modal-body{white-space:pre-wrap;color:#475467;margin:0;padding:16px;font-family:inherit;font-size:13px;line-height:1.55;overflow:auto}.dev-launch{color:#0c1222;-webkit-font-smoothing:antialiased;background:#f7f8fa;min-height:100%;font-family:Satoshi,Avenir Next,Segoe UI,sans-serif;overflow-y:auto}.dev-launch-inner{width:min(920px,100% - 32px);margin:0 auto;padding:28px 0 56px}.dev-launch-header{gap:18px;margin-bottom:28px;display:grid}.dev-launch-eyebrow{letter-spacing:.12em;text-transform:uppercase;color:#1563f0;margin:0 0 6px;font-size:12px;font-weight:700}.dev-launch-header h1{letter-spacing:-.03em;margin:0 0 8px;font-size:clamp(1.8rem,4vw,2.4rem)}.dev-launch-lead{color:#667085;max-width:52ch;margin:0;font-size:15px;line-height:1.55}.dev-launch-lead code{color:#0b4bc4;background:#eef2ff;border-radius:6px;padding:1px 6px;font-size:.92em}.dev-launch-section{margin-bottom:28px}.dev-launch-section h2{letter-spacing:.08em;text-transform:uppercase;color:#667085;margin:0 0 12px;font-size:13px;font-weight:700}.dev-launch-hint{color:#667085;margin:-4px 0 12px;font-size:13px}.dev-launch-paths{gap:10px;display:grid}@media (width>=720px){.dev-launch-paths{grid-template-columns:repeat(2,minmax(0,1fr))}}.dev-path-card{text-align:left;cursor:pointer;color:inherit;background:#fff;border:1px solid #e4e7ec;border-radius:16px;gap:4px;padding:18px 16px;font-family:inherit;transition:border-color .15s,transform .15s;display:grid}.dev-path-card:hover{border-color:#b2ccff;transform:translateY(-1px)}.dev-path-label{letter-spacing:.08em;text-transform:uppercase;color:#1563f0;font-size:11px;font-weight:700}.dev-path-card strong{letter-spacing:-.02em;font-size:16px}.dev-path-card>span:last-child{color:#667085;font-size:13px;line-height:1.4}.dev-demo-groups{gap:14px;display:grid}.dev-demo-group{background:#fff;border:1px solid #e4e7ec;border-radius:16px;padding:14px}.dev-demo-group h3{letter-spacing:.08em;text-transform:uppercase;color:#667085;margin:0 0 10px;font-size:12px;font-weight:700}.dev-demo-group ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.dev-demo-group button{text-align:left;cursor:pointer;width:100%;color:inherit;background:#f9fafb;border:1px solid #eef0f3;border-radius:12px;gap:2px;padding:12px;font-family:inherit;display:grid}.dev-demo-group button:hover{background:#f5f8ff;border-color:#b2ccff}.dev-demo-name{font-size:14px;font-weight:700}.dev-demo-meta,.dev-demo-email{color:#667085;font-size:12px}.dev-demo-email{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.ai-program-modal{max-width:480px}.ai-program-hint{color:#64748b;margin:-8px 0 16px;font-size:13px;line-height:1.5}.ai-prompt-input{resize:vertical;min-height:72px;font-family:inherit}.ai-generate-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#2563eb,#7c3aed);border:none;border-radius:12px;width:100%;margin-bottom:12px;padding:12px 16px;font-size:15px;font-weight:700}.ai-generate-btn:disabled{opacity:.6;cursor:wait}.ai-preview{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;margin-bottom:16px;padding:14px}.ai-preview h3{color:#1e3a5f;margin:0 0 4px;font-size:16px}.ai-preview-sub{color:#64748b;margin:0 0 10px;font-size:13px}.ai-preview ul{color:#334155;margin:0;padding-left:18px;font-size:14px;line-height:1.6}.ai-preview>ul{flex-direction:column;gap:10px;padding-left:0;list-style:none;display:flex}.ai-preview-section{list-style:none}.ai-preview-section-label{letter-spacing:.06em;text-transform:uppercase;color:#64748b;margin-bottom:2px;font-size:10px;font-weight:800;display:block}.ai-preview-section ul{margin:0;padding-left:16px}.track-tabs{gap:8px;padding:0 20px 12px;display:flex;overflow-x:auto}.track-tab{color:#64748b;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:20px;flex-shrink:0;padding:8px 14px;font-size:13px;font-weight:600}.track-tab.active{color:#fff;border-color:#0000}.track-tab-kind{opacity:.85;margin-top:2px;font-size:10px;font-weight:500;display:block}.track-manager-list{margin:0;padding:0;list-style:none}.track-manager-row{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.track-manager-name{color:#1e3a5f;font-weight:700}.track-manager-desc{color:#94a3b8;font-size:12px;display:block}.track-color-dot{border-radius:50%;width:10px;height:10px;margin-right:6px;display:inline-block}.admin-banner-actions{flex-wrap:wrap;gap:8px;display:flex}.admin-banner-actions .admin-add-btn.secondary{color:var(--brand,#2563eb);border:1px solid var(--brand-border,#bfdbfe);background:#fff}.program-form-row-inline{grid-template-columns:1fr 1fr;gap:12px;display:grid}.benchmark-picker-modal{max-width:460px}.benchmark-picker-lead{color:#64748b;margin:-8px 0 14px;font-size:14px;line-height:1.4}.benchmark-picker-list{flex-direction:column;gap:6px;max-height:min(52vh,360px);margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.benchmark-picker-empty{color:#94a3b8;text-align:center;padding:16px 12px;font-size:13px}.benchmark-picker-item{text-align:left;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;align-items:flex-start;gap:4px;width:100%;padding:12px 14px;display:flex}.benchmark-picker-item:hover{background:#eff6ff;border-color:#bfdbfe}.benchmark-picker-item-top{flex-wrap:wrap;align-items:baseline;gap:6px 10px;width:100%;display:flex}.benchmark-picker-item-top strong{color:#1e3a5f;font-size:15px}.benchmark-picker-meta{color:#64748b;font-size:11px;font-weight:700}.benchmark-picker-desc{color:#94a3b8;font-size:12px;line-height:1.35}.program-build-chooser{max-width:440px}.program-build-lead{color:#64748b;margin:-8px 0 16px;font-size:14px;line-height:1.4}.program-build-options{flex-direction:column;gap:10px;display:flex}.program-build-option{text-align:left;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;flex-direction:column;align-items:flex-start;gap:4px;width:100%;padding:14px 16px;display:flex}.program-build-option:hover{background:#eff6ff;border-color:#bfdbfe}.program-build-option strong{color:#1e3a5f;font-size:15px}.program-build-option span{color:#64748b;font-size:13px;line-height:1.35}.program-build-ai:hover{background:#f5f3ff;border-color:#c4b5fd}.score-capture-backdrop{z-index:80;background:#0f172a8c;justify-content:center;align-items:flex-end;padding:12px;display:flex;position:fixed;inset:0}.score-capture-modal{background:#fff;border-radius:18px 18px 14px 14px;width:min(440px,100%);max-height:min(90vh,720px);padding:18px 18px 16px;overflow-y:auto;box-shadow:0 20px 50px #0f172a47}.score-capture-header{justify-content:space-between;gap:12px;margin-bottom:14px;display:flex}.score-capture-header h2{color:#0f172a;margin:0;font-size:18px;font-weight:800}.score-capture-header p{color:#64748b;margin:4px 0 0;font-size:13px}.score-capture-close{color:#64748b;cursor:pointer;background:#f1f5f9;border:none;border-radius:10px;width:32px;height:32px;font-size:20px;line-height:1}.score-capture-form{flex-direction:column;gap:12px;display:flex}.score-capture-levels{gap:8px;display:flex}.score-level-chip{color:#64748b;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;flex:1;padding:10px 8px;font-size:13px;font-weight:700}.score-level-chip.active{background:var(--brand-light,#eff6ff);border-color:var(--brand-border,#bfdbfe);color:var(--brand,#2563eb)}.score-capture-time,.score-capture-rounds{align-items:flex-end;gap:10px;display:flex}.score-capture-time label,.score-capture-rounds label,.score-capture-field{color:#64748b;flex-direction:column;flex:1;gap:6px;font-size:12px;font-weight:600;display:flex}.score-capture-time input,.score-capture-rounds input,.score-capture-field input,.score-capture-field textarea{color:#0f172a;background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:10px 12px;font-family:inherit;font-size:16px;font-weight:700}.score-capture-field textarea{resize:vertical;font-size:14px;font-weight:500}.score-capture-check{color:#334155;align-items:center;gap:10px;font-size:13px;font-weight:600;display:flex}.score-capture-error{color:#dc2626;margin:0;font-size:13px;font-weight:600}.score-capture-actions{gap:10px;margin-top:4px;display:flex}.score-capture-cancel,.score-capture-submit{cursor:pointer;border:none;border-radius:12px;flex:1;padding:12px;font-size:14px;font-weight:700}.score-capture-cancel{color:#b91c1c;background:#fee2e2}.score-capture-submit{background:var(--brand,#2563eb);color:#fff}@media (width>=640px){.score-capture-backdrop{align-items:center}.score-capture-modal{border-radius:16px}}.pb-celebration{z-index:120;cursor:pointer;background:#0f172ab8;justify-content:center;align-items:center;animation:.25s ease-out pb-fade-in;display:flex;position:fixed;inset:0}.pb-celebration-burst{pointer-events:none;background:radial-gradient(circle at 30% 30%,#facc158c,#0000 45%),radial-gradient(circle at 70% 40%,#3b82f673,#0000 50%),radial-gradient(circle at 50% 70%,#f472b666,#0000 50%);border-radius:50%;width:280px;height:280px;animation:1.1s ease-out pb-burst;position:absolute}.pb-celebration-card{color:#fff;text-align:center;background:#0f172a;border-radius:20px;flex-direction:column;align-items:center;gap:8px;min-width:220px;padding:28px 32px;animation:.55s cubic-bezier(.2,1.4,.3,1) pb-pop;display:flex;position:relative;box-shadow:0 24px 60px #00000073}.pb-celebration-badge{letter-spacing:1.6px;color:#fbbf24;font-size:11px;font-weight:800}.pb-celebration-title{font-size:18px;font-weight:800}.pb-celebration-score{font-variant-numeric:tabular-nums;color:#93c5fd;font-size:32px;font-weight:800}@keyframes pb-fade-in{0%{opacity:0}to{opacity:1}}@keyframes pb-pop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}@keyframes pb-burst{0%{opacity:0;transform:scale(.2)}40%{opacity:1}to{opacity:0;transform:scale(1.35)}}.program-screen{height:100%;padding-bottom:16px;overflow-y:auto}.program-header{justify-content:space-between;align-items:flex-start;padding:12px 20px 8px;display:flex}.program-header-left{align-items:flex-start;gap:10px;display:flex}.program-icon{color:#2563eb;justify-content:center;align-items:center;display:flex}.program-label{color:#2563eb;letter-spacing:1.2px;font-size:11px;font-weight:600}.program-gym{color:#1e3a5f;font-size:22px;font-style:italic;font-weight:800;line-height:1.1}.program-header-actions{flex-shrink:0;align-items:center;gap:8px;margin-left:auto;display:flex}.program-header-actions .notif-bell{border-radius:9px;width:32px;height:32px}.program-main-tabs{background:#f1f5f9;border-radius:12px;margin:0 20px 12px;padding:4px;display:flex}.program-main-tab{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:10px;flex:1;padding:10px;font-size:13px;font-weight:700}.program-main-tab.active{color:var(--brand,#2563eb);background:#fff;box-shadow:0 1px 3px #0f172a14}.history-link-btn{color:#2563eb;cursor:pointer;background:#eff6ff;border:1px solid #bfdbfe;border-radius:10px;padding:8px 12px;font-size:12px;font-weight:700}.program-screen .settings-btn{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;transition:color .15s,background .15s;display:flex}.program-screen .settings-btn:hover{color:#64748b;background:#f1f5f9}.program-screen .settings-btn.active{color:#2563eb;background:#eff6ff}.program-screen .admin-banner{color:#334155;background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;flex-direction:column;align-items:stretch;gap:12px;margin:8px 20px 14px;padding:14px 16px;font-size:14px;font-weight:600;line-height:1.35;display:flex}.program-screen .admin-banner-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.program-screen .admin-add-btn{background:var(--brand,#2563eb);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:10px;align-items:center;gap:6px;padding:10px 14px;font-size:13px;font-weight:700;display:inline-flex}.program-screen .admin-add-btn.secondary{color:#475569;background:#fff;border:1px solid #e2e8f0}.program-screen .admin-add-btn.secondary:hover{color:#1e293b;border-color:#cbd5e1}.program-screen .date-picker{align-items:center;padding:8px;display:flex}.program-screen .chevron{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;transition:background .15s,color .15s;display:flex}.program-screen .chevron:hover{color:#64748b;background:#f1f5f9}.program-screen .date-picker-days{flex:1;justify-content:space-evenly;display:flex}.program-screen .day-cell{cursor:pointer;background:0 0;border:none;flex-direction:column;align-items:center;gap:6px;width:36px;padding:0;display:flex;position:relative}.program-screen .day-cell.has-program:not(.selected) .day-number{box-shadow:inset 0 0 0 2px #bfdbfe}.program-screen .day-letter{color:#94a3b8;font-size:12px;font-weight:600}.program-screen .day-cell.selected .day-letter{color:#2563eb}.program-screen .day-number{color:#64748b;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:15px;font-weight:700;display:flex}.program-screen .day-cell.selected .day-number{background:var(--brand,#2563eb);color:#fff;box-shadow:0 3px 8px #2563eb59}.calendar-mode-row{background:#f1f5f9;border-radius:10px;gap:6px;width:fit-content;margin:0 20px 12px;padding:3px;display:flex}.calendar-mode-btn{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:6px 14px;font-size:12px;font-weight:700}.calendar-mode-btn.active{color:var(--brand,#2563eb);background:#fff;box-shadow:0 1px 2px #0f172a14}.week-board{margin:0 0 16px}.week-board-nav{justify-content:space-between;align-items:center;gap:12px;padding:0 20px 10px;display:flex}.week-board-range{color:#334155;font-size:13px;font-weight:700}.week-board-scroll{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;align-items:stretch;gap:12px;padding:4px 20px 16px;display:flex;overflow-x:auto}.week-day-column{scroll-snap-align:start;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:14px;flex-direction:column;flex:0 0 min(280px,82vw);min-height:420px;max-height:min(70vh,640px);display:flex;overflow-y:auto}.week-day-column.selected{border-color:var(--brand-border,#bfdbfe);box-shadow:0 0 0 2px var(--brand-light,#eff6ff)}.week-day-column-header{z-index:1;background:#f8fafc;border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:flex-start;gap:8px;padding:12px 12px 10px;display:flex;position:sticky;top:0}.week-day-column-dow{letter-spacing:.6px;text-transform:uppercase;color:#94a3b8;font-size:11px;font-weight:800;display:block}.week-day-column-date{color:#0f172a;margin-top:2px;font-size:15px;font-weight:800;display:block}.week-day-column-action{background:var(--brand,#2563eb);color:#fff;cursor:pointer;border:none;border-radius:8px;flex-shrink:0;padding:6px 10px;font-size:12px;font-weight:700}.week-day-column-body{flex-direction:column;gap:10px;padding:12px;display:flex}.week-day-column-title{color:#0f172a;margin:0;font-size:16px;font-weight:800}.week-day-column-sub{color:#64748b;margin:0;font-size:12px}.week-day-column-tags{flex-wrap:wrap;gap:6px;display:flex}.week-day-column-tags span{color:var(--brand,#2563eb);background:var(--brand-light,#eff6ff);border:1px solid var(--brand-border,#bfdbfe);border-radius:999px;padding:2px 8px;font-size:10px;font-weight:700}.week-day-section{border-top:1px solid #f1f5f9;padding-top:8px}.week-day-section-label{letter-spacing:.8px;text-transform:uppercase;color:#94a3b8;margin:0 0 6px;font-size:10px;font-weight:800}.week-day-body-text{color:#475569;white-space:pre-wrap;word-break:break-word;margin:6px 0 0;padding:0;font-family:inherit;font-size:12px;line-height:1.4}.week-day-section-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.week-day-section-list li{flex-direction:column;gap:2px;display:flex}.week-day-section-list strong{color:#1e293b;font-size:13px;font-weight:700}.week-day-section-list span{color:#64748b;white-space:pre-wrap;font-size:12px}.week-day-column-empty{color:#94a3b8;text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:10px;padding:24px 12px;display:flex}.week-day-column-empty p{margin:0;font-size:13px;font-weight:600}.week-day-column-empty button{border:1px solid var(--brand-border,#bfdbfe);background:var(--brand-light,#eff6ff);color:var(--brand,#2563eb);cursor:pointer;border-radius:10px;padding:8px 12px;font-size:12px;font-weight:700}.program-screen .date-summary{justify-content:space-between;align-items:center;gap:12px;padding:16px 20px 12px;display:flex}.program-screen .date-label{color:#1e3a5f;font-size:16px;font-weight:700}.badge-program{letter-spacing:.4px;color:#2563eb;background:#eff6ff;border:1px solid #bfdbfe;border-radius:20px;padding:6px 14px;font-size:10px;font-weight:700}.program-empty{text-align:center;color:#64748b;padding:48px 24px}.program-empty-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:12px;display:flex}.program-empty-btn.ai{background:linear-gradient(135deg,#2563eb,#7c3aed)}.program-empty-btn{background:var(--brand,#2563eb);color:#fff;cursor:pointer;border:none;border-radius:12px;margin-top:16px;padding:10px 20px;font-size:13px;font-weight:700}.program-empty-actions .program-empty-btn{margin-top:0}.program-content{flex-direction:column;gap:16px;padding:0 16px;display:flex}.program-card{background:#fff;border:1px solid #e2e8f0;border-radius:20px;padding:20px;box-shadow:0 1px 3px #0f172a0a}.program-card-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.program-title{color:#1e3a5f;margin:0;font-size:26px;font-weight:800;line-height:1.1}.program-subtitle{color:#64748b;margin:4px 0 0;font-size:14px}.program-card .tag-class{letter-spacing:.5px;color:#1e3a5f;white-space:nowrap;background:#eff6ff;border-radius:20px;padding:4px 12px;font-size:11px;font-weight:700}.program-card-tags{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.program-card .tag-measure{letter-spacing:.5px;color:#475569;white-space:nowrap;background:#f1f5f9;border-radius:20px;padding:4px 12px;font-size:11px;font-weight:700}.exercise-list{flex-direction:column;gap:16px;margin:0;padding:0;list-style:none;display:flex}.exercise-block{list-style:none}.exercise-block-header{justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:8px;display:flex}.exercise-block-title{letter-spacing:.06em;text-transform:uppercase;color:#64748b;margin:0;font-size:11px;font-weight:800}.workout-body-text{color:#334155;white-space:pre-wrap;word-break:break-word;margin:0;padding:0;font-family:inherit;font-size:14px;line-height:1.5}.exercise-row{background:#f8fafc;border:1px solid #f1f5f9;border-radius:12px;align-items:flex-start;gap:12px;padding:12px 14px;display:flex}.exercise-index{color:#2563eb;background:#eff6ff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:11px;font-weight:700;display:flex}.exercise-details{flex-direction:column;gap:2px;display:flex}.exercise-name{color:#1e3a5f;font-size:15px;font-weight:700}.exercise-rx{color:#64748b;font-size:13px}.section-title{color:#1e3a5f;letter-spacing:.02em;margin:0 0 8px;font-size:14px;font-weight:700}.score-section,.leaderboard-section{background:#fff;border:1px solid #e2e8f0;border-radius:20px;padding:16px 14px;box-shadow:0 1px 3px #0f172a0a}.my-score{background:#eff6ff;border:1px solid #bfdbfe;border-radius:12px;flex-wrap:wrap;align-items:baseline;gap:8px;margin-bottom:14px;padding:12px 14px;display:flex}.my-score-label{color:#2563eb;text-transform:uppercase;letter-spacing:.06em;font-size:11px;font-weight:700}.my-score-value{color:#1e3a5f;font-size:20px;font-weight:800}.my-score-level{color:var(--brand,#2563eb);background:var(--brand-light,#eff6ff);border-radius:999px;width:fit-content;padding:2px 8px;font-size:11px;font-weight:800}.my-score-notes{color:#64748b;width:100%;font-size:12px}.score-form{flex-direction:column;gap:12px;display:flex}.score-field{color:#64748b;flex-direction:column;gap:6px;font-size:12px;font-weight:600;display:flex}.score-field input{color:#1e3a5f;border:1px solid #e2e8f0;border-radius:12px;padding:10px 12px;font-size:15px}.score-field input:focus{border-color:var(--brand,#2563eb);outline:none;box-shadow:0 0 0 3px #2563eb26}.score-submit{background:var(--brand,#2563eb);color:#fff;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;border:none;border-radius:12px;padding:12px;font-size:12px;font-weight:800;transition:opacity .15s}.score-submit:hover{opacity:.92}.leaderboard{margin:0;padding:0;list-style:none}.leaderboard-row{border-bottom:1px solid #f1f5f9;grid-template-columns:28px minmax(0,1fr) auto;align-items:start;column-gap:12px;padding:12px 10px;display:grid}.leaderboard-row:last-child{border-bottom:none}.leaderboard-row.is-me{background:#eff6ff;border-bottom-color:#0000;border-radius:10px}.leaderboard-rank{color:#94a3b8;width:auto;padding-top:1px;font-size:13px;font-weight:700;line-height:1.4}.leaderboard-info{flex-direction:column;gap:2px;min-width:0;display:flex}.leaderboard-name{color:#1e3a5f;font-size:14px;font-weight:600;line-height:1.4;display:block}.leaderboard-notes{color:#64748b;font-size:11px;font-weight:600;line-height:1.3;display:block}.leaderboard-level{color:var(--brand,#2563eb);margin-left:6px;font-size:10px;font-weight:800;display:inline-block}.leaderboard-score{color:#2563eb;font-variant-numeric:tabular-nums;padding-top:1px;padding-left:8px;font-size:15px;font-weight:800;line-height:1.4}.admin-program-hint{color:#64748b;text-align:center;padding:8px 16px 16px;font-size:13px}.program-screen .toast{color:#fff;text-align:center;z-index:100;background:#1e3a5f;border-radius:10px;max-width:90%;padding:12px 20px;font-size:14px;position:fixed;bottom:80px;left:50%;transform:translate(-50%);box-shadow:0 4px 12px #00000026}@media (width>=900px){.program-screen .admin-banner{flex-direction:row;justify-content:space-between;align-items:center}.program-content{grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);align-items:start;gap:16px;display:grid}.program-content>.program-card{grid-column:1/-1}.program-content>.score-section,.program-content>.leaderboard-section{width:100%;min-width:0}}.social-modal-backdrop{z-index:200;background:#0f172a73;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.social-modal{background:#fff;border-radius:20px;width:100%;max-width:420px;max-height:90vh;padding:24px;overflow-y:auto;box-shadow:0 20px 40px #00000026}.social-modal-title{color:#1e3a5f;margin:0 0 20px;font-size:20px;font-weight:800}.social-form{flex-direction:column;gap:14px;display:flex}.social-field{color:#64748b;flex-direction:column;gap:6px;font-size:12px;font-weight:600;display:flex}.social-field input,.social-field textarea,.social-field select{color:#1e3a5f;resize:vertical;border:1px solid #e2e8f0;border-radius:10px;padding:10px 12px;font-family:inherit;font-size:15px}.social-field input:focus,.social-field textarea:focus,.social-field select:focus{border-color:var(--brand,#2563eb);outline:none;box-shadow:0 0 0 3px #2563eb26}.social-form-error{color:#dc2626;margin:0;font-size:13px}.social-form-actions{gap:10px;margin-top:4px;display:flex}.social-btn{cursor:pointer;border:none;border-radius:10px;flex:1;padding:10px 12px;font-size:13px;font-weight:700}.social-btn.cancel{color:#64748b;background:#f1f5f9}.social-btn.save{background:var(--brand,#2563eb);color:#fff}.social-btn.secondary{color:#2563eb;background:#eff6ff;border:1px solid #bfdbfe;flex:none}.social-btn.ghost{color:#64748b;background:0 0;flex:none}.social-file-input{display:none}.social-image-preview{object-fit:cover;border:1px solid #e2e8f0;border-radius:12px;width:100%;max-height:180px}.social-image-empty{text-align:center;color:#94a3b8;background:#f8fafc;border:1px dashed #e2e8f0;border-radius:12px;margin:0;padding:20px;font-size:13px}.social-image-actions{flex-wrap:wrap;gap:8px;display:flex}.social-image-hint{color:#94a3b8;font-size:11px;font-weight:600}.social-modal-wide{max-width:520px}.social-modal-lead{color:#64748b;margin:-8px 0 16px;font-size:13px;line-height:1.45}.social-modal-lead strong{color:#1e3a5f}.social-empty-hint{color:#94a3b8;margin:0 0 16px;font-size:13px}.social-mod-list{flex-direction:column;gap:10px;margin:0 0 16px;padding:0;list-style:none;display:flex}.social-mod-row{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.social-mod-row strong{color:#1e3a5f;font-size:14px}.social-report-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;flex-direction:column;gap:8px;padding:14px;display:flex}.social-report-meta{color:#64748b;align-items:center;gap:8px;font-size:12px;font-weight:600;display:flex}.social-report-pill{color:#2563eb;letter-spacing:.04em;text-transform:uppercase;background:#eff6ff;border-radius:999px;padding:2px 8px;font-size:10px;font-weight:800}.social-report-authors{color:#334155;margin:0;font-size:13px}.social-report-snippet{color:#475569;background:#fff;border-left:3px solid #cbd5e1;border-radius:0 10px 10px 0;margin:0;padding:10px 12px;font-size:13px;line-height:1.4}.social-report-details{color:#64748b;margin:0;font-size:12px}.social-report-actions{gap:8px;margin-top:4px;display:flex}.social-btn.danger{color:#dc2626;background:#fef2f2;border:1px solid #fecaca}.social-screen{height:100%;padding-bottom:24px;overflow-y:auto}.social-header{justify-content:space-between;align-items:flex-start;gap:12px;padding:12px 20px 8px;display:flex}.social-header-actions{flex-shrink:0;align-items:center;gap:8px;margin-left:auto;display:flex}.social-header-actions .notif-bell{border-radius:9px;width:32px;height:32px}.social-header-left{align-items:flex-start;gap:10px;display:flex}.social-icon{color:#2563eb;align-items:center;line-height:1;display:flex}.social-label{color:#2563eb;letter-spacing:1.2px;font-size:11px;font-weight:600}.social-gym{color:#1e3a5f;font-size:22px;font-style:italic;font-weight:800;line-height:1.1}.social-screen .settings-btn{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;transition:color .15s,background .15s;display:flex}.social-screen .settings-btn.active{color:#2563eb;background:#eff6ff}.social-screen .admin-banner{color:#334155;background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;flex-direction:row;justify-content:space-between;align-items:center;gap:12px;margin:8px 20px 14px;padding:14px 16px;font-size:14px;font-weight:600;line-height:1.35;display:flex}.social-screen .admin-add-btn{background:var(--brand,#2563eb);color:#fff;cursor:pointer;border:none;border-radius:10px;flex-shrink:0;align-items:center;gap:6px;padding:8px 12px;font-size:12px;font-weight:700;display:inline-flex}.social-screen .admin-add-btn.secondary{color:#1e3a5f;background:#fff;border:1px solid #cbd5e1}.social-screen .admin-banner-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.social-moderation-nudge{color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;margin:0 20px 12px;padding:12px 14px;font-size:13px;font-weight:600;display:flex}.social-moderation-nudge button{color:#fff;cursor:pointer;background:#b45309;border:none;border-radius:8px;padding:7px 12px;font-size:12px;font-weight:700}.spotlight-section{flex-direction:column;gap:12px;margin:0 16px 16px;display:flex}.spotlight-message,.spotlight-pic{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:14px 16px;box-shadow:0 1px 3px #0f172a0a}.spotlight-tag{letter-spacing:.08em;text-transform:uppercase;color:#2563eb;margin-bottom:8px;font-size:10px;font-weight:700;display:inline-block}.spotlight-text{color:#1e3a5f;margin:0;font-size:15px;font-style:italic;font-weight:500;line-height:1.5}.spotlight-image{object-fit:cover;border-radius:12px;width:100%;max-height:200px;margin-top:4px}.spotlight-caption{color:#64748b;margin:8px 0 0;font-size:13px}.feed-toolbar{justify-content:space-between;align-items:center;gap:12px;padding:0 20px 12px;display:flex}.feed-toolbar-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.feed-link-btn{color:#64748b;cursor:pointer;background:0 0;border:none;padding:8px 6px;font-size:12px;font-weight:700}.feed-link-btn:hover{color:#2563eb}.feed-title{color:#1e3a5f;margin:0;font-size:16px;font-weight:700}.feed-new-btn{background:var(--brand,#2563eb);color:#fff;cursor:pointer;border:none;border-radius:10px;align-items:center;gap:4px;padding:8px 14px;font-size:12px;font-weight:700;display:inline-flex}.feed-safety{flex-shrink:0;margin-left:4px;position:relative}.feed-safety-btn{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:8px;width:28px;height:28px;font-size:18px;line-height:1}.feed-safety-btn:hover,.feed-safety-btn[aria-expanded=true]{color:#475569;background:#f1f5f9}.feed-safety-menu{z-index:20;background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;gap:2px;min-width:140px;padding:6px;display:flex;position:absolute;top:100%;right:0;box-shadow:0 8px 24px #0f172a1f}.feed-safety-menu button{text-align:left;color:#334155;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:9px 10px;font-size:13px;font-weight:600}.feed-safety-menu button:hover{color:#be123c;background:#f8fafc}.feed-action-btn:disabled{opacity:.45;cursor:default}.feed-list{flex-direction:column;gap:12px;padding:0 16px;display:flex}.feed-empty{text-align:center;color:#64748b;padding:32px 16px}.feed-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:14px 16px;box-shadow:0 1px 3px #0f172a0a}.feed-card-header{align-items:center;gap:10px;margin-bottom:10px;display:flex}.feed-avatar{color:#94a3b8;background:#f1f5f9;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.feed-meta{flex-direction:column;flex:1;min-width:0;display:flex}.feed-author{color:#1e3a5f;font-size:14px;font-weight:700}.feed-time{color:#94a3b8;font-size:11px}.feed-badge{letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;border-radius:20px;padding:3px 8px;font-size:9px;font-weight:700}.feed-badge-score{color:#2563eb;background:#eff6ff}.feed-badge-pb{color:#b45309;background:#fef3c7}.feed-badge-birthday{color:#db2777;background:#fce7f3}.feed-badge-photo{color:#059669;background:#f0fdf4}.feed-badge-post{color:#64748b;background:#f1f5f9}.feed-delete{color:#dc2626;cursor:pointer;background:#fef2f2;border:none;border-radius:8px;flex-shrink:0;width:28px;height:28px;font-size:16px}.feed-birthday-banner{color:#db2777;margin-bottom:8px;font-size:18px;font-weight:800}.feed-content{color:#3d4559;margin:0 0 10px;font-size:14px;line-height:1.45}.feed-highlight{background:#eff6ff;border:1px solid #bfdbfe;border-radius:12px;align-items:center;gap:10px;padding:10px 14px;display:flex}.feed-highlight-pb{background:#fffbeb;border-color:#fcd34d}.feed-highlight-label{color:#64748b;font-size:13px;font-weight:600}.feed-highlight-value{color:#1e3a5f;font-variant-numeric:tabular-nums;font-size:18px;font-weight:800}.feed-pb-tag{color:#fff;background:#b45309;border-radius:6px;margin-left:auto;padding:2px 8px;font-size:10px;font-weight:800}.feed-image{object-fit:cover;border-radius:12px;width:100%;max-height:240px;margin-top:4px}.feed-actions{border-top:1px solid #f1f5f9;gap:8px;margin-top:12px;padding-top:10px;display:flex}.feed-action-btn{color:#475569;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;align-items:center;gap:6px;padding:7px 12px;font-size:12px;font-weight:700;display:inline-flex}.feed-action-btn.active,.feed-action-btn.liked{color:#2563eb;background:#eff6ff;border-color:#bfdbfe}.feed-action-btn.liked{color:#be123c;background:#fef2f2;border-color:#fecaca}.feed-like-icon{border:1.5px solid;border-radius:50%;width:12px;height:12px}.feed-like-icon.on{background:currentColor}.feed-comments{margin-top:12px;padding-top:4px}.feed-comments-empty{color:#94a3b8;margin:0 0 10px;font-size:12px}.feed-comment-list{flex-direction:column;gap:8px;margin:0 0 10px;padding:0;list-style:none;display:flex}.feed-comment{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:10px 12px}.feed-comment-head{align-items:center;gap:8px;margin-bottom:4px;display:flex}.feed-comment-head strong{color:#1e3a5f;font-size:12px}.feed-comment-head span{color:#94a3b8;font-size:11px}.feed-comment-delete{color:#94a3b8;cursor:pointer;background:0 0;border:none;margin-left:auto;padding:0 2px;font-size:16px;line-height:1}.feed-comment p{color:#334155;margin:0;font-size:13px;line-height:1.4}.feed-comment-form{gap:8px;display:flex}.feed-comment-form input{min-width:0;font:inherit;color:#1e3a5f;border:1px solid #e2e8f0;border-radius:10px;flex:1;padding:9px 12px;font-size:13px}.feed-comment-form button{background:var(--brand,#2563eb);color:#fff;cursor:pointer;border:none;border-radius:10px;padding:0 14px;font-size:12px;font-weight:700}.feed-comment-form button:disabled{opacity:.45;cursor:default}.feed-card-birthday{border-color:#fbcfe8}.social-screen .toast{color:#fff;z-index:100;background:#1e3a5f;border-radius:10px;padding:12px 20px;font-size:14px;position:fixed;bottom:80px;left:50%;transform:translate(-50%);box-shadow:0 4px 12px #00000026}.social-desktop-layout{flex-direction:column;display:flex}.social-desktop-main{display:contents}@media (width>=900px){.social-desktop-layout{grid-template-columns:minmax(280px,360px) minmax(0,1fr);align-items:start;gap:20px;padding:0 16px 16px;display:grid}.social-desktop-main{flex-direction:column;min-width:0;display:flex}.spotlight-section{flex-direction:column;gap:12px;margin:0;display:flex;position:sticky;top:12px}.spotlight-message,.spotlight-pic{margin:0}.feed-toolbar{margin-left:0;margin-right:0}.feed-list{padding-left:0;padding-right:0}.feed-card{width:100%;max-width:none}}.signin-screen{justify-content:center;align-items:center;width:100%;min-height:100dvh;padding:24px 20px;display:flex}.signin-card{-webkit-backdrop-filter:saturate(160%)blur(18px);background:#ffffffc7;border:1px solid #ffffffb8;border-radius:24px;width:100%;max-width:400px;padding:28px 24px;box-shadow:0 8px 32px #0f172a14}.signin-back-btn{font:inherit;color:#64748b;cursor:pointer;background:0 0;border:none;margin:0 0 12px;padding:0;font-size:13px;font-weight:650;display:inline-flex}.signin-brand{text-align:center;flex-direction:column;align-items:center;gap:10px;margin-bottom:24px;display:flex}.signin-tagline{color:#64748b;margin:4px 0 0;font-size:14px}.signin-facility-hint{color:#94a3b8;margin:0;font-size:12px;font-weight:600}.signin-form{flex-direction:column;gap:14px;display:flex}.signin-field{color:#64748b;flex-direction:column;gap:6px;font-size:12px;font-weight:600;display:flex}.signin-field input{color:#1e3a5f;background:#ffffffd9;border:1px solid #e2e8f0;border-radius:12px;padding:12px 14px;font-size:15px}.signin-field input:focus{border-color:var(--brand,#2563eb);outline:none;box-shadow:0 0 0 3px #2563eb1f}.signin-error{color:#78716c;text-align:center;margin:0;font-size:13px;font-weight:600}.signin-submit{background:var(--brand,#2563eb);color:#fff;cursor:pointer;border:none;border-radius:12px;margin-top:4px;padding:13px;font-size:15px;font-weight:700}.signin-submit:disabled{opacity:.7;cursor:wait}.signin-divider{color:#94a3b8;text-transform:uppercase;letter-spacing:.06em;align-items:center;gap:12px;margin:22px 0 14px;font-size:11px;font-weight:600;display:flex}.signin-divider:before,.signin-divider:after{content:"";background:#e2e8f0;flex:1;height:1px}.signin-quick{flex-direction:column;gap:8px;display:flex}.signin-quick-btn{color:#1e3a5f;cursor:pointer;text-align:left;background:#ffffffb3;border:1px solid #e2e8f0;border-radius:12px;align-items:center;gap:12px;width:100%;padding:12px 14px;transition:border-color .15s,background .15s;display:flex}.signin-quick-btn:hover:not(:disabled){border-color:var(--brand-border,#bfdbfe);background:var(--brand-light,#eff6ff)}.signin-quick-btn:disabled{opacity:.6;cursor:wait}.signin-quick-text{flex-direction:column;gap:1px;display:flex}.signin-quick-text strong{font-size:14px}.signin-quick-text small{color:#64748b;font-size:12px;font-weight:500}.signin-footnote{color:#94a3b8;text-align:center;margin:18px 0 0;font-size:11px;line-height:1.4}.signin-footnote code{color:#64748b;background:#f1f5f9;border-radius:4px;padding:1px 5px;font-size:11px}.signin-browse-btn{color:#64748b;cursor:pointer;background:0 0;border:none;width:100%;margin-top:14px;padding:10px;font-size:13px;font-weight:600;display:block}.signin-browse-btn:hover{color:#1e3a5f}.signin-owner-hint{color:#1e40af;background:#eff6ff;border-radius:10px;margin:0 0 14px;padding:10px 12px;font-size:12px;font-weight:600;line-height:1.4}.auth-gate-backdrop{z-index:450;-webkit-backdrop-filter:blur(8px);background:#0f172a73;justify-content:center;align-items:flex-end;padding:0;animation:.22s ease-out auth-gate-fade;display:flex;position:fixed;inset:0}@keyframes auth-gate-fade{0%{opacity:0}to{opacity:1}}@media (width>=560px){.auth-gate-backdrop{align-items:center;padding:24px}}.auth-gate-sheet{width:100%;max-width:440px;max-height:min(92dvh,720px);padding:10px 22px calc(20px + env(safe-area-inset-bottom,0px));background:#fff;border-radius:24px 24px 0 0;animation:.28s cubic-bezier(.22,1,.36,1) auth-gate-rise;position:relative;overflow-y:auto;box-shadow:0 -12px 40px #0f172a2e}@keyframes auth-gate-rise{0%{opacity:.85;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@media (width>=560px){.auth-gate-sheet{border-radius:24px;padding:28px 28px 24px;animation:.22s ease-out auth-gate-fade;box-shadow:0 24px 48px #0f172a33}.auth-gate-handle{display:none}}.auth-gate-handle{background:#d1d5db;border-radius:999px;width:36px;height:4px;margin:4px auto 14px}.auth-gate-close{color:#64748b;cursor:pointer;background:#f1f5f9;border:none;border-radius:12px;width:36px;height:36px;font-size:22px;line-height:1;position:absolute;top:14px;right:14px}.auth-gate-header{flex-direction:column;align-items:flex-start;gap:8px;margin-bottom:20px;padding-right:36px;display:flex}.auth-gate-facility-chip{background:color-mix(in srgb, var(--brand,#2563eb) 10%, white);color:var(--brand,#2563eb);letter-spacing:.02em;text-overflow:ellipsis;white-space:nowrap;border-radius:999px;max-width:100%;margin:2px 0 0;padding:4px 10px;font-size:11px;font-weight:700;overflow:hidden}.auth-gate-title{letter-spacing:-.02em;color:#0f172a;margin:4px 0 0;font-size:26px;font-weight:800;line-height:1.15}.auth-gate-subtitle{color:#64748b;margin:0;font-size:14px;line-height:1.45}.auth-gate-form{flex-direction:column;gap:14px;display:flex}.auth-gate-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.auth-gate-field{color:#64748b;flex-direction:column;gap:7px;font-size:12px;font-weight:600;display:flex}.auth-gate-field input{color:#0f172a;background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;padding:13px 14px;font-size:16px;transition:border-color .15s,box-shadow .15s,background .15s}.auth-gate-field input:focus{border-color:var(--brand,#2563eb);background:#fff;outline:none;box-shadow:0 0 0 4px #2563eb1f}.auth-gate-field input[readonly]{color:#475569;background:#f1f5f9}.auth-gate-check{color:#475569;align-items:flex-start;gap:10px;font-size:13px;line-height:1.4;display:flex}.auth-gate-check input{accent-color:var(--brand,#2563eb);margin-top:2px}.auth-gate-primary{background:var(--brand,#2563eb);color:#fff;letter-spacing:-.01em;cursor:pointer;width:100%;box-shadow:0 8px 20px color-mix(in srgb, var(--brand,#2563eb) 28%, transparent);border:none;border-radius:14px;margin-top:4px;padding:15px 16px;font-size:15px;font-weight:700}.auth-gate-primary:disabled{opacity:.7;cursor:wait;box-shadow:none}.auth-gate-error{color:#b45309;margin:0;font-size:13px;font-weight:600}.auth-gate-info{color:var(--brand,#2563eb);margin:0;font-size:13px;font-weight:600}.auth-gate-links{flex-direction:column;align-items:flex-start;gap:10px;padding-top:4px;display:flex}.auth-gate-link{color:var(--brand,#2563eb);cursor:pointer;background:0 0;border:none;padding:0;font-size:13px;font-weight:700}.auth-gate-divider{color:#94a3b8;align-items:center;gap:12px;margin:4px 0;font-size:12px;font-weight:600;display:flex}.auth-gate-divider:before,.auth-gate-divider:after{content:"";background:#e2e8f0;flex:1;height:1px}.auth-gate-providers{flex-direction:column;gap:10px;display:flex}.auth-gate-provider{color:#0f172a;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:14px;width:100%;padding:13px 14px;font-size:14px;font-weight:700;transition:background .15s,border-color .15s}.auth-gate-provider:hover{background:#f8fafc;border-color:#cbd5e1}.auth-gate-provider.ghost{color:#475569;border-style:dashed;font-weight:600}.auth-gate-demo{color:#94a3b8;cursor:pointer;text-underline-offset:2px;background:0 0;border:none;width:100%;margin-top:18px;padding:10px;font-size:12px;font-weight:600;text-decoration:underline;display:block}.auth-gate-magic{color:#475569;margin:0;font-size:14px;line-height:1.5}.owner-signup-sheet{max-width:480px;max-height:min(94dvh,820px)}.owner-signup-form{gap:12px}.owner-signup-section-label{letter-spacing:.1em;text-transform:uppercase;color:#64748b;margin:8px 0 0;font-size:11px;font-weight:800}.owner-signup-hint{color:#64748b;margin:-4px 0 0;font-size:13px;line-height:1.45}.owner-signup-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}@media (width<=420px){.owner-signup-row{grid-template-columns:1fr}}.owner-signup-modules{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.owner-signup-module{cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:12px;align-items:flex-start;gap:12px;padding:12px 14px;display:flex}.owner-signup-module.is-on{border-color:var(--brand,#2563eb);background:color-mix(in srgb, var(--brand,#2563eb) 8%, white)}.owner-signup-module input{width:18px;height:18px;accent-color:var(--brand,#2563eb);margin-top:3px}.owner-signup-module span{flex-direction:column;gap:2px;display:flex}.owner-signup-module strong{color:#0f172a;font-size:14px}.owner-signup-module small{color:#64748b;font-size:12px;line-height:1.4}.auth-gate-field em{color:#94a3b8;text-transform:none;letter-spacing:0;font-style:normal;font-weight:500}.owner-signup-form .auth-gate-links{align-items:center;width:100%;padding-top:8px}.owner-signup-form .auth-gate-link{color:#64748b;font-weight:600}.owner-signup-form .auth-gate-link:hover{color:var(--brand,#2563eb)}.facility-switcher{background:#ffffffb8;border:1px solid #94a3b840;border-radius:12px;align-items:center;gap:10px;margin:0 16px 10px;padding:10px 12px;display:flex}.facility-switcher-label{text-transform:uppercase;letter-spacing:.05em;color:#64748b;white-space:nowrap;font-size:11px;font-weight:700}.facility-switcher-select{min-width:0;font:inherit;color:#1e3a5f;background:#fff;border:1px solid #e2e8f0;border-radius:10px;flex:1;padding:8px 10px;font-size:13px;font-weight:600}.facility-switcher-select:focus{border-color:var(--brand,#2563eb);outline:none;box-shadow:0 0 0 3px #2563eb1f}.admin-screen .facility-switcher{margin:0 0 12px}.public-screen{box-sizing:border-box;--fo-blue:#1a6bff;height:100dvh;padding:20px 18px 40px;overflow-y:auto}.public-screen-inner{width:100%;max-width:560px;margin-inline:auto}.public-directory .public-screen-inner{max-width:560px}.public-topbar{justify-content:space-between;align-items:center;gap:12px;margin-bottom:28px;display:flex}.public-directory-hero{margin-bottom:20px}.public-directory-brand{margin:0 0 12px}.public-topbar-brand{flex-direction:column;gap:10px;min-width:0;display:flex}.public-topbar-label{color:var(--fo-blue,#1a6bff);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:11px;font-weight:700}.public-topbar-title{letter-spacing:-.03em;color:#0f172a;margin:0 0 8px;font-size:28px;font-weight:800;line-height:1.15}.public-link-btn{border:1px solid color-mix(in srgb, var(--fo-blue,#1a6bff) 28%, transparent);color:var(--fo-blue,#1a6bff);cursor:pointer;background:#ffffffe6;border-radius:999px;flex-shrink:0;padding:9px 14px;font-size:13px;font-weight:700}.public-lead{color:#64748b;max-width:36em;margin:0;font-size:15px;line-height:1.5}.public-search-wrap{align-items:center;gap:8px;margin-bottom:16px;display:flex}.public-search{color:#0f172a;-webkit-backdrop-filter:saturate(160%)blur(12px);backdrop-filter:saturate(160%)blur(12px);background:#ffffffe6;border:1px solid #94a3b847;border-radius:16px;flex:1;padding:14px 16px;font-size:16px;box-shadow:0 1px 2px #0f172a0a}.public-search::placeholder{color:#94a3b8}.public-search:focus{border-color:var(--fo-blue,#1a6bff);outline:none;box-shadow:0 0 0 3px #1a6bff24}.public-search-clear{color:var(--fo-blue,#1a6bff);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:8px 4px;font-size:13px;font-weight:700}.public-search-meta{color:#94a3b8;margin:0 0 12px;font-size:12px;font-weight:600}.public-empty{text-align:center;background:#ffffff8c;border:1px dashed #94a3b859;border-radius:16px;padding:32px 16px}.public-empty p{color:#64748b;margin:0;font-size:14px}.public-empty-action{color:var(--fo-blue,#1a6bff);cursor:pointer;text-underline-offset:2px;background:0 0;border:none;margin-top:12px;font-size:13px;font-weight:700;text-decoration:underline}.public-facility-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}@media (width>=900px){.public-screen{padding:32px 40px 56px}.public-directory .public-screen-inner{max-width:640px}.public-topbar-title{font-size:34px}.public-facility-list{flex-direction:column;gap:12px;display:flex}.public-facility-card{height:auto}}.public-facility-card{-webkit-backdrop-filter:saturate(160%)blur(16px);backdrop-filter:saturate(160%)blur(16px);cursor:pointer;text-align:left;background:#ffffffe0;border:1px solid #94a3b82e;border-radius:18px;align-items:center;gap:14px;width:100%;padding:16px;transition:transform .15s,box-shadow .15s;display:flex;box-shadow:0 2px 10px #0f172a0a}.public-facility-card:active{transform:scale(.985)}.public-facility-mark{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;font-size:20px;font-weight:800;display:flex}.public-facility-mark img{object-fit:contain;border-radius:10px;width:100%;height:100%}.public-facility-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.public-facility-info strong{color:#1e3a5f;font-size:16px}.public-facility-info small{color:#64748b;font-size:12px}.public-facility-tagline{color:#94a3b8;margin-top:2px;font-size:12px}.public-facility-arrow{color:#cbd5e1;font-size:22px}.public-owner-hint{color:#64748b;cursor:pointer;text-underline-offset:3px;background:0 0;border:none;width:100%;margin-top:28px;padding:14px;font-size:13px;font-weight:600;text-decoration:underline;display:block}.public-facility-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.public-back-btn{color:var(--text-muted,#64748b);cursor:pointer;background:0 0;border:none;padding:4px 0;font-size:14px;font-weight:600}.public-facility-hero{text-align:center;margin-bottom:18px}.public-facility-logo{background:color-mix(in srgb, var(--facility-color,#2563eb) 14%, var(--surface,#fff));width:72px;height:72px;color:var(--facility-color,#2563eb);box-shadow:0 8px 24px color-mix(in srgb, var(--facility-color,#2563eb) 16%, transparent);border-radius:20px;justify-content:center;align-items:center;margin-bottom:12px;font-size:30px;font-weight:800;display:inline-flex}.public-facility-logo img{object-fit:contain;width:100%;height:100%;padding:8px}.public-facility-hero h1{letter-spacing:-.03em;color:var(--text,#0f172a);margin:0;font-size:26px;font-weight:800;line-height:1.15}.public-facility-location{color:var(--text-muted,#64748b);margin:6px 0 0;font-size:14px;font-weight:600}.public-facility-address{color:var(--text-muted,#94a3b8);margin:2px 0 0;font-size:12px}.public-facility-blurb{max-width:36em;color:var(--text-muted,#64748b);margin:12px auto 0;font-size:14px;line-height:1.5}.public-facility-dropin-badge{letter-spacing:.02em;color:var(--facility-color,var(--brand,#2563eb));background:color-mix(in srgb, var(--facility-color,#2563eb) 12%, var(--surface,#fff));border:1px solid color-mix(in srgb, var(--facility-color,#2563eb) 22%, transparent);border-radius:999px;margin-top:12px;padding:5px 12px;font-size:11px;font-weight:700;display:inline-block}.public-facility-blocked{color:#9a3412;background:#fff7ed;border:1px solid #fed7aa;border-radius:12px;margin:0 0 12px;padding:12px 14px;font-size:13px;font-weight:600;line-height:1.4}.public-facility-strip{z-index:20;background:var(--surface-muted,#ffffffb8);-webkit-backdrop-filter:saturate(160%)blur(14px);backdrop-filter:saturate(160%)blur(14px);border:1px solid #94a3b833;border-radius:16px;gap:6px;margin:0 0 16px;padding:6px;display:flex;position:sticky;top:0}.public-strip-btn{color:var(--text-muted,#64748b);cursor:pointer;background:0 0;border:none;border-radius:12px;flex:1;padding:11px 8px;font-size:13px;font-weight:700}.public-strip-btn.active{background:var(--surface,#fff);color:var(--facility-color,var(--brand,#2563eb));box-shadow:0 1px 4px #0f172a14}.public-strip-btn.public-strip-join{color:#fff;background:var(--facility-color,var(--brand,#2563eb));box-shadow:0 6px 16px color-mix(in srgb, var(--facility-color,#2563eb) 28%, transparent)}.public-strip-btn.public-strip-join:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.public-tab-panel{min-height:200px}.public-panel-empty{text-align:center;background:var(--surface-muted,#ffffff8c);color:var(--text-muted,#64748b);border:1px dashed #94a3b859;border-radius:16px;padding:28px 16px;font-size:14px;list-style:none}.public-package-list,.public-schedule-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.public-package-card{background:var(--surface,#ffffffe0);border:1px solid #94a3b82e;border-radius:16px;padding:16px;box-shadow:0 2px 10px #0f172a0a}.public-package-top{justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:6px;display:flex}.public-package-top strong{color:var(--text,#0f172a);font-size:16px}.public-pkg-badge{vertical-align:middle;border-radius:8px;margin-left:6px;padding:2px 7px;font-size:10px;font-weight:700;display:inline-block}.public-pkg-badge.dropin{color:#2563eb;background:#eff6ff}.public-pkg-badge.voucher{color:#78716c;background:#f5f5f4}.public-package-price{color:var(--facility-color,var(--brand,#2563eb));white-space:nowrap;font-size:14px;font-weight:800}.public-package-card p{color:var(--text-muted,#64748b);margin:0;font-size:13px}.public-package-meta{margin-top:4px!important;font-size:12px!important}.public-package-buy{background:var(--facility-color,var(--brand,#2563eb));color:#fff;cursor:pointer;border:none;border-radius:12px;width:100%;margin-top:12px;padding:12px;font-size:13px;font-weight:700}.public-package-buy:disabled,.public-schedule-book:disabled{opacity:.55;cursor:not-allowed}.public-schedule-date{color:var(--text,#0f172a);margin:0 0 6px;font-size:14px;font-weight:700}.public-schedule-note{color:var(--text-muted,#94a3b8);margin:0 0 12px;font-size:12px}.public-schedule-row{background:var(--surface,#ffffffe0);border:1px solid #94a3b82e;border-radius:14px;justify-content:space-between;align-items:center;gap:10px;padding:14px 16px;display:flex}.public-schedule-time{color:var(--text,#0f172a);font-size:20px;font-weight:800;display:block}.public-schedule-type{color:var(--text-muted,#64748b);letter-spacing:.04em;font-size:11px;font-weight:700}.public-schedule-right{flex-direction:column;align-items:flex-end;gap:6px;display:flex}.public-schedule-spots{color:var(--text-muted,#64748b);font-size:12px;font-weight:600}.public-schedule-book{background:var(--facility-color,var(--brand,#2563eb));color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:10px;padding:8px 12px;font-size:12px;font-weight:700}.public-toast{color:#fff;text-align:center;z-index:500;background:#1e3a5f;border-radius:10px;max-width:90%;padding:12px 20px;font-size:14px;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 4px 12px #00000026}.public-modal-backdrop{z-index:400;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a59;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.public-modal{background:#fff;border-radius:20px;width:100%;max-width:420px;max-height:90vh;padding:24px;overflow-y:auto;box-shadow:0 20px 40px #0f172a26}.public-modal-title{color:#1e3a5f;margin:0 0 12px;font-size:20px;font-weight:800}.public-modal-intro{color:#64748b;margin:0 0 16px;font-size:14px;line-height:1.45}.public-modal-form{flex-direction:column;gap:12px;display:flex}.public-form-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.public-field{color:#64748b;flex-direction:column;gap:6px;font-size:12px;font-weight:600;display:flex}.public-field input{color:#1e3a5f;border:1px solid #e2e8f0;border-radius:10px;padding:10px 12px;font-size:15px}.public-field input:focus{border-color:var(--brand,#2563eb);outline:none;box-shadow:0 0 0 3px #2563eb1f}.public-form-error{color:#78716c;margin:0;font-size:13px;font-weight:600}.public-modal-actions{gap:10px;margin-top:4px;display:flex}.public-btn{cursor:pointer;border:none;border-radius:12px;flex:1;padding:12px;font-size:14px;font-weight:700}.public-btn.ghost{color:#64748b;background:#f1f5f9}.public-btn.primary{background:var(--brand,#2563eb);color:#fff}.public-btn.primary:disabled{opacity:.7;cursor:wait}.public-checkout-summary{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;gap:4px;margin-bottom:16px;padding:14px;display:flex}.public-checkout-facility{color:#64748b;font-size:12px;font-weight:600}.public-checkout-pkg{color:#1e3a5f;font-size:16px;font-weight:800}.public-checkout-class{color:#64748b;font-size:13px}.public-checkout-price{color:var(--brand,#2563eb);margin-top:4px;font-size:15px;font-weight:700}.public-checkout-note{color:#94a3b8;text-align:center;margin:0;font-size:11px}.superuser-screen{background:#fff;height:100%;padding-bottom:40px;overflow-y:auto}.superuser-header{align-items:flex-start;gap:8px;padding:12px 16px 8px;display:flex}.superuser-back{color:#64748b;cursor:pointer;background:#f1f5f9;border:none;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.superuser-label{color:#0f766e;letter-spacing:1.2px;font-size:11px;font-weight:600}.superuser-title{color:#134e4a;font-size:22px;font-weight:800}.superuser-tabs{gap:8px;padding:0 16px 12px;display:flex}.superuser-tabs button{color:#64748b;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;padding:8px 14px;font-size:13px;font-weight:700}.superuser-tabs button.active{color:#fff;background:#0f766e;border-color:#0f766e}.superuser-section{padding:0 16px 24px}.superuser-section-bar{flex-direction:column;gap:10px;margin-bottom:14px;display:flex}.superuser-section-actions{flex-wrap:wrap;gap:8px;display:flex}.superuser-hint{color:#64748b;margin:0;font-size:13px;line-height:1.4}.superuser-hint code{background:#f1f5f9;border-radius:4px;padding:1px 6px;font-size:12px}.superuser-btn{cursor:pointer;color:#0f766e;background:#ccfbf1;border:none;border-radius:10px;padding:8px 12px;font-size:13px;font-weight:700}.superuser-btn.primary{color:#fff;background:#0f766e}.superuser-btn.ghost{color:#64748b;background:#f1f5f9}.superuser-btn.danger{color:#dc2626;background:#fef2f2}.superuser-facility-list,.superuser-account-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.superuser-facility-card,.superuser-account-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:14px}.superuser-facility-main{align-items:flex-start;gap:12px;display:flex}.superuser-facility-swatch{border-radius:6px;flex-shrink:0;width:12px;height:40px}.superuser-facility-main strong,.superuser-account-main strong{color:#0f172a;font-size:15px;display:block}.superuser-facility-main p,.superuser-account-main p{color:#64748b;margin:2px 0 0;font-size:13px}.superuser-facility-meta{color:#94a3b8!important;font-size:12px!important}.superuser-facility-actions{gap:8px;margin-top:12px;display:flex}.superuser-form-shell{background:#f0fdfa;border:1px solid #99f6e4;border-radius:16px;margin-top:16px;padding:16px}.superuser-form-shell h2{color:#134e4a;margin:0 0 12px;font-size:16px}.superuser-form{flex-direction:column;gap:12px;display:flex}.superuser-form-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.superuser-field{color:#64748b;flex-direction:column;gap:6px;font-size:12px;font-weight:600;display:flex}.superuser-field input,.superuser-field textarea,.superuser-field select,.superuser-password-row input{color:#0f172a;background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:10px 12px;font-size:15px}.superuser-checkbox{color:#334155;align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.superuser-error{color:#dc2626;margin:0;font-size:13px}.superuser-form-actions{justify-content:flex-end;gap:8px;display:flex}.superuser-password-row{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.superuser-password-row input{flex:140px;min-width:0}.superuser-toast{color:#fff;z-index:50;background:#134e4a;border-radius:999px;max-width:calc(100% - 32px);padding:10px 16px;font-size:13px;font-weight:600;position:fixed;bottom:88px;left:50%;transform:translate(-50%)}:root{--desktop-bp:900px;--side-nav-width:220px;--content-pad-x:16px}.app-shell{flex-direction:column;width:100%;height:100dvh;display:flex}.app-toast{color:#fff;text-align:center;z-index:500;background:#1e3a5f;border-radius:10px;max-width:90%;padding:12px 20px;font-size:14px;position:fixed;bottom:88px;left:50%;transform:translate(-50%);box-shadow:0 4px 12px #00000026}.app-main{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex;position:relative}.app-content{flex:1;min-height:0;overflow:hidden}.app-main-top{z-index:60;pointer-events:none;justify-content:flex-end;align-items:center;gap:8px;padding:0;display:flex;position:absolute;top:10px;right:16px}.app-main-top>*{pointer-events:auto}.bottom-nav{padding-bottom:env(safe-area-inset-bottom,0);border-top:1px solid #ffffffa6;flex-shrink:0;display:flex}.bottom-nav .nav-item{color:#64748b;cursor:pointer;background:0 0;border:none;flex-direction:column;flex:1;align-items:center;gap:2px;min-width:0;padding:6px 0 8px;font-size:9px;font-weight:600;transition:color .15s;display:flex}.bottom-nav .nav-item span:last-child{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.bottom-nav .nav-item.active{color:var(--brand,#2563eb)}.nav-icon{line-height:1;display:inline-flex;position:relative}.nav-badge{pointer-events:none;background:#ef4444;border-radius:50%;width:8px;height:8px;position:absolute;top:-3px;right:-5px;box-shadow:0 0 0 2px #fff}.side-nav{display:none}.side-nav-brand{border-top:1px solid #94a3b833;flex-direction:column;gap:8px;margin-top:auto;padding:16px 18px 20px;display:flex}.side-nav-brand-name{color:#1e3a5f;word-break:break-word;margin:0;font-size:15px;font-style:italic;font-weight:800;line-height:1.2}.side-nav-items{flex-direction:column;flex:1;gap:4px;min-height:0;padding:16px 10px 12px;display:flex;overflow-y:auto}.side-nav .nav-item{color:#64748b;cursor:pointer;text-align:left;background:0 0;border:none;border-radius:10px;flex-direction:row;align-items:center;gap:10px;width:100%;padding:10px 12px;font-size:13px;font-weight:600;transition:background .15s,color .15s;display:flex}.side-nav .nav-item:hover{color:#334155;background:#ffffff8c}.side-nav .nav-item.active{color:var(--brand,#2563eb);background:#ffffffd9;box-shadow:0 1px 3px #0f172a0f}.desktop-split{flex-direction:column;flex:1;gap:0;min-height:0;display:flex}.desktop-split-list,.desktop-split-detail{min-height:0}.desktop-grid-2{flex-direction:column;gap:12px;display:flex}@media (width>=900px){.app-shell{flex-direction:row}.side-nav{width:var(--side-nav-width);-webkit-backdrop-filter:saturate(160%)blur(16px);background:#ffffff8c;border-right:1px solid #94a3b838;flex-direction:column;flex-shrink:0;height:100dvh;display:flex}.bottom-nav{display:none}.app-main{flex:1}.app-content{padding-inline:28px}.app-main-top{right:40px}.desktop-split{flex-direction:row;align-items:stretch;gap:20px}.desktop-split-list{flex:0 0 340px;max-width:380px}.desktop-split-detail{flex:1;min-width:0}.desktop-grid-2{grid-template-columns:minmax(280px,360px) minmax(0,1fr);align-items:start;gap:20px;display:grid}}.nav-item.active,.home-icon,.program-icon,.admin-screen-icon,.social-icon,.calendar-icon,.comms-icon,.history-back,.home-label,.program-label,.admin-screen-label,.social-label,.book-at,.history-label{color:var(--brand,#2563eb)}.home-gym,.program-gym,.admin-screen-gym,.social-gym,.gym-name,.history-gym,.home-profile-name,.program-title{color:var(--brand-dark,#1e3a5f)}.role-chip.active,.admin-tab.active,.program-view-tab.active,.history-tab.active,.comms-tab.active,.member-hub-tab.active,.admin-chip.active{background:var(--brand-light,#eff6ff);border-color:var(--brand-border,#bfdbfe);color:var(--brand,#2563eb)}.admin-tab.active,.comms-tab.active,.history-tab.active,.member-hub-tab.active,.program-view-tab.active{color:var(--brand,#2563eb)!important}.history-tab.active .history-tab-count,.program-view-tab.active .program-view-tab-count,.comms-tab.active .comms-tab-badge{background:var(--brand,#2563eb);color:#fff}.member-hub-tabs-cue{color:var(--brand,#2563eb)}.admin-add-btn,.score-submit,.program-empty-btn,.home-profile-btn:not(.outline),.history-add-btn,.history-btn.save,.profile-btn.save,.allocate-btn,.admin-screen .admin-btn.save,.social-post-btn,.program-screen .admin-add-btn,.booking-screen .admin-add-btn,.admin-report-btn.primary,.member-detail-link-btn.primary,.member-detail-action:not(.outline),.account-action-btn,.superuser-btn.primary,.public-btn.primary,.onboarding-card-actions button.primary,.pb-btn.edit,.pkg-btn.edit,.book-btn,.countdown-book-btn,.home-alert-btn,.comms-compose-btn,.comms-broadcast-btn,.comms-empty-cta,.comms-reply-form button[type=submit],.comms-form-actions .admin-btn.save{background:var(--brand,#2563eb);border-color:var(--brand,#2563eb);color:#fff}.home-profile-btn.outline,.history-link-btn,.member-detail-action.outline,.injury-action-btn.primary{color:var(--brand,#2563eb);border-color:var(--brand-border,#bfdbfe);background:0 0}.home-link,.view-leaderboard-link,.social-spotlight-edit,.member-pkg-badge,.package-member-count,.home-package-count,.badge-program,.package-price,.metric-value,.history-score,.leaderboard-score,.my-score-value,.allocation-pkg-price,.pb-score,.exercise-index{color:var(--brand,#2563eb)}.member-pkg-badge,.badge-program,.package-member-count,.home-package-count,.program-view-tab-count,.history-tab-count,.exercise-index{background:var(--brand-light,#eff6ff)}.badge-program,.member-pkg-badge,.pkg-btn.edit,.pb-btn.edit{border-color:var(--brand-border,#bfdbfe)}.program-screen .day-cell.selected .day-number,.home-screen .day-cell.selected .day-number{background:var(--brand,#2563eb);box-shadow:0 3px 8px var(--brand-shadow,#2563eb59)}.booking-screen .day-cell.selected .day-number{background:var(--brand,#2563eb);box-shadow:0 4px 12px var(--brand-shadow,#2563eb59);border-radius:10px}.program-screen .day-cell.selected .day-letter,.booking-screen .day-cell.selected .day-letter{color:var(--brand,#2563eb)}.program-screen .settings-btn.active,.booking-screen .settings-btn.active{color:var(--brand,#2563eb);background:var(--brand-light,#eff6ff)}.my-score,.allocation-card,.member-allocation,.home-card-badge.active{background:var(--brand-light,#eff6ff);border-color:var(--brand-border,#bfdbfe)}.my-score-label,.my-score-value{color:var(--brand,#2563eb)}.book-btn{background:var(--brand,#2563eb)}.book-btn.booked{background:var(--brand-dark,#1e3a5f)}.program-screen .admin-add-btn:not(.secondary),.booking-screen .admin-add-btn,.social-screen .admin-add-btn{background:var(--brand,#2563eb)}:root{--app-bg:linear-gradient(165deg, #e4ecf7 0%, #f0f4f8 38%, #eef2f7 72%, #e8edf4 100%);--glass-bg:#ffffff85;--glass-bg-elevated:#ffffffb8;--glass-bg-solid:#ffffffd1;--glass-border:#ffffffb3;--glass-border-muted:#94a3b838;--glass-shadow:0 4px 24px #0f172a0f;--glass-blur:saturate(160%) blur(16px)}body{background:var(--app-bg);background-attachment:fixed}.app-shell,.home-screen,.booking-screen,.program-screen,.admin-screen,.social-screen,.history-screen,.customize-screen,.comms-screen,.public-screen{background:0 0}.bottom-nav{background:var(--glass-bg-solid);-webkit-backdrop-filter:var(--glass-blur);border-top-color:var(--glass-border);box-shadow:0 -4px 20px #0f172a0a}.side-nav{-webkit-backdrop-filter:var(--glass-blur);background:#ffffff8c}.home-card,.home-profile-card,.metric-card,.admin-banner,.allocation-card,.terms-active-card,.customize-section{background:var(--glass-bg-elevated);-webkit-backdrop-filter:var(--glass-blur);border-color:var(--glass-border-muted);box-shadow:var(--glass-shadow)}.class-card,.member-row,.package-card,.feed-card,.history-row{background:var(--glass-bg-solid);-webkit-backdrop-filter:none;border-color:var(--glass-border-muted);box-shadow:var(--glass-shadow)}.program-card,.score-section,.leaderboard-section{background:#fff;border-color:#e2e8f0;box-shadow:0 1px 3px #0f172a0a}.picker-bar{background:var(--brand-light,#eff6ff);border:none;overflow:visible}.picker-bar-select{background:#fff}.picker-bar-menu,.book-for-menu{z-index:100;background:#fff;border:1px solid #e2e8f0;box-shadow:0 8px 24px #0f172a24}.admin-modal-backdrop,.program-form-backdrop{-webkit-backdrop-filter:blur(6px);background:#0f172a47}.admin-modal,.program-form-modal{-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);background:#ffffffe6}:root{--text:#1e3a5f;--text-muted:#64748b;--text-faint:#94a3b8;--surface:#fff;--surface-muted:#f8fafc;--surface-input:#fff;--border-strong:#e2e8f0;--danger:#dc2626;--danger-bg:#fef2f2;--danger-border:#fecaca;--warn-bg:#fffbeb;--warn-border:#fde68a;--warn-text:#b45309;--ok-bg:#ecfdf5;--ok-text:#059669}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--app-bg:linear-gradient(165deg, #0b1220 0%, #111827 40%, #0f172a 72%, #0b1220 100%);--glass-bg:#0f172a8c;--glass-bg-elevated:#1e293bc7;--glass-bg-solid:#0f172aeb;--glass-border:#94a3b82e;--glass-border-muted:#94a3b838;--glass-shadow:0 4px 24px #00000059;--glass-blur:saturate(140%) blur(18px);--text:#e2e8f0;--text-muted:#94a3b8;--text-faint:#64748b;--surface:#1e293b;--surface-muted:#0f172a;--surface-input:#0f172a;--border-strong:#334155;--danger:#f87171;--danger-bg:#7f1d1d59;--danger-border:#f8717159;--warn-bg:#78350f59;--warn-border:#fbbf2459;--warn-text:#fbbf24;--ok-bg:#064e3b66;--ok-text:#34d399;--brand-light:color-mix(in srgb, var(--brand,#2563eb) 22%, #0f172a);--brand-border:color-mix(in srgb, var(--brand,#2563eb) 40%, #334155);--brand-dark:#93c5fd}[data-theme=dark] body{color:var(--text)}[data-theme=dark] .side-nav{border-right-color:var(--border-strong);background:#0f172ad9}[data-theme=dark] .side-nav-brand-name,[data-theme=dark] .home-gym,[data-theme=dark] .program-gym,[data-theme=dark] .admin-screen-gym,[data-theme=dark] .social-gym,[data-theme=dark] .gym-name,[data-theme=dark] .history-gym,[data-theme=dark] .home-profile-name,[data-theme=dark] .program-title,[data-theme=dark] .member-detail-name,[data-theme=dark] .customize-title,[data-theme=dark] .comms-header h1,[data-theme=dark] .public-topbar-title{color:var(--text)}[data-theme=dark] .public-link-btn{background:var(--surface);border-color:color-mix(in srgb, var(--fo-blue,#1a6bff) 40%, transparent);color:#60a5fa}[data-theme=dark] .public-lead,[data-theme=dark] .public-owner-hint,[data-theme=dark] .public-search-meta{color:var(--text-muted)}[data-theme=dark] .public-search{background:var(--surface);border-color:var(--border-strong);color:var(--text)}[data-theme=dark] .side-nav .nav-item{color:var(--text-muted)}[data-theme=dark] .side-nav .nav-item:hover{color:var(--text);background:#3341558c}[data-theme=dark] .side-nav .nav-item.active{color:var(--brand,#60a5fa);background:#334155d9}[data-theme=dark] .bottom-nav .nav-item{color:var(--text-muted)}[data-theme=dark] .bottom-nav .nav-item.active{color:var(--brand,#60a5fa)}[data-theme=dark] .nav-badge{box-shadow:0 0 0 2px #0f172a}[data-theme=dark] .program-card,[data-theme=dark] .score-section,[data-theme=dark] .leaderboard-section,[data-theme=dark] .picker-bar-select,[data-theme=dark] .picker-bar-menu,[data-theme=dark] .book-for-menu,[data-theme=dark] .admin-modal,[data-theme=dark] .program-form-modal,[data-theme=dark] .member-detail,[data-theme=dark] .admin-menu-popover,[data-theme=dark] .signin-card,[data-theme=dark] .public-facility-card,[data-theme=dark] .comms-list-panel,[data-theme=dark] .comms-detail-panel,[data-theme=dark] .comms-layout{background:var(--surface);border-color:var(--border-strong);color:var(--text)}[data-theme=dark] .admin-tabs,[data-theme=dark] .comms-tabs,[data-theme=dark] .role-switch,[data-theme=dark] .admin-search,[data-theme=dark] input,[data-theme=dark] textarea,[data-theme=dark] select{background:var(--surface-muted);border-color:var(--border-strong);color:var(--text)}[data-theme=dark] .home-session-bar{background:var(--surface-muted);color:var(--text);border:none}[data-theme=dark] .admin-tab,[data-theme=dark] .comms-tab,[data-theme=dark] .role-switch-btn{color:var(--text-muted)}[data-theme=dark] .admin-tab.active,[data-theme=dark] .comms-tab.active,[data-theme=dark] .role-switch-btn.active{background:var(--surface);color:var(--brand,#60a5fa)}[data-theme=dark] .admin-chip{background:var(--surface);border-color:var(--border-strong);color:var(--text-muted)}[data-theme=dark] .admin-activity-title,[data-theme=dark] .activity-summary{color:var(--text)}[data-theme=dark] .admin-activity-lead,[data-theme=dark] .activity-member,[data-theme=dark] .activity-when,[data-theme=dark] .admin-activity-empty{color:var(--text-muted)}[data-theme=dark] .admin-activity-filters{background:var(--surface-muted);border-color:var(--border-strong)}[data-theme=dark] .activity-row,[data-theme=dark] .admin-report-btn{background:var(--surface);border-color:var(--border-strong);color:var(--text)}[data-theme=dark] .admin-report-btn.primary{background:var(--brand,#3b82f6);border-color:var(--brand,#3b82f6);color:#fff}[data-theme=dark] .admin-date-field input{background:var(--surface-input);border-color:var(--border-strong);color:var(--text)}[data-theme=dark] .member-name,[data-theme=dark] .feed-author,[data-theme=dark] .package-name,[data-theme=dark] .home-card-title,[data-theme=dark] .home-card h2,[data-theme=dark] .feed-title,[data-theme=dark] .section-title{color:var(--text)}[data-theme=dark] .member-email,[data-theme=dark] .home-card-meta,[data-theme=dark] .feed-time,[data-theme=dark] .feed-content,[data-theme=dark] .package-desc,[data-theme=dark] .home-session-email,[data-theme=dark] .home-profile-email,[data-theme=dark] .home-profile-phone,[data-theme=dark] .admin-stat,[data-theme=dark] .customize-hint,[data-theme=dark] .customize-field,[data-theme=dark] .customize-section h2{color:var(--text-muted)}[data-theme=dark] .admin-stat{background:var(--surface-muted);border-color:var(--border-strong)}[data-theme=dark] .admin-stat-warn{color:#fbbf24;background:#fbbf241f;border-color:#fbbf2447}[data-theme=dark] .home-package-row,[data-theme=dark] .home-class-row,[data-theme=dark] .home-member-row{color:var(--text)}[data-theme=dark] .home-alert-warn{color:#fbbf24;background:#f59e0b1f;border-color:#f59e0b59}[data-theme=dark] .home-alert-warn .home-alert-btn{color:#fbbf24;background:#ffffff14}[data-theme=dark] .member-detail-section,[data-theme=dark] .billing-rel-panel,[data-theme=dark] .billing-rel-people li,[data-theme=dark] .account-payment-row,[data-theme=dark] .account-action-btn{background:var(--surface-muted);border-color:var(--border-strong);color:var(--text)}[data-theme=dark] .member-detail-section h3,[data-theme=dark] .account-open-invoices h3,[data-theme=dark] .account-transactions h3,[data-theme=dark] .account-payment-summary h3{color:var(--text-faint)}[data-theme=dark] .account-balance-card.clear{background:var(--surface-muted);border-color:var(--border-strong)}[data-theme=dark] .account-balance-card.owing{background:var(--danger-bg);border-color:var(--danger-border)}[data-theme=dark] .account-balance-value,[data-theme=dark] .account-invoice-num,[data-theme=dark] .account-invoice-amount{color:var(--text)}[data-theme=dark] .account-balance-card.owing .account-balance-value{color:var(--danger)}[data-theme=dark] .customize-back,[data-theme=dark] .member-detail-close,[data-theme=dark] .settings-btn,[data-theme=dark] .chevron{background:var(--surface-muted);color:var(--text-muted)}[data-theme=dark] .customize-section,[data-theme=dark] .customize-preview-card{border-color:var(--border-strong)}[data-theme=dark] .customize-field input,[data-theme=dark] .customize-color-text,[data-theme=dark] .public-search{background:var(--surface-input);border-color:var(--border-strong);color:var(--text)}[data-theme=dark] .home-quick-nav button,[data-theme=dark] .account-action-btn{background:var(--surface);border-color:var(--border-strong);color:var(--brand,#60a5fa)}[data-theme=dark] .admin-menu-popover button:hover,[data-theme=dark] .admin-menu-popover button.selected,[data-theme=dark] .picker-bar-menu button:hover,[data-theme=dark] .picker-bar-menu button.active,[data-theme=dark] .book-for-menu button:hover,[data-theme=dark] .book-for-menu button.active{background:var(--brand-light);color:var(--brand,#60a5fa)}[data-theme=dark] .day-letter{color:var(--text-faint)}[data-theme=dark] .day-number,[data-theme=dark] .comms-thread-item,[data-theme=dark] .comms-message{color:var(--text)}[data-theme=dark] .toast,[data-theme=dark] .home-toast,[data-theme=dark] .customize-toast{color:#0f172a;background:#e2e8f0}[data-theme=dark] .home-theme-btn{background:var(--surface-muted);border-color:var(--border-strong);color:var(--text-muted)}[data-theme=dark] .home-theme-btn:hover{color:var(--brand,#60a5fa);border-color:var(--brand-border)}[data-theme=dark] .home-signout-btn:hover{color:var(--text)}[data-theme=dark] .admin-modal-backdrop,[data-theme=dark] .program-form-backdrop,[data-theme=dark] .profile-modal-backdrop,[data-theme=dark] .image-crop-backdrop,[data-theme=dark] .photo-crop-backdrop,[data-theme=dark] .payment-modal-backdrop,[data-theme=dark] .history-modal-backdrop,[data-theme=dark] .social-modal-backdrop,[data-theme=dark] .public-modal-backdrop,[data-theme=dark] .class-form-backdrop,[data-theme=dark] .topup-backdrop,[data-theme=dark] .terms-accept-backdrop,[data-theme=dark] .comms-modal-backdrop{background:#020617b8}[data-theme=dark] .admin-modal,[data-theme=dark] .program-form-modal,[data-theme=dark] .profile-modal,[data-theme=dark] .image-crop-modal,[data-theme=dark] .photo-crop-modal,[data-theme=dark] .payment-modal,[data-theme=dark] .history-modal,[data-theme=dark] .social-modal,[data-theme=dark] .public-modal,[data-theme=dark] .class-form-modal,[data-theme=dark] .topup-modal,[data-theme=dark] .terms-accept-modal,[data-theme=dark] .comms-modal,[data-theme=dark] .onboarding-stages-modal,[data-theme=dark] .member-detail,[data-theme=dark] .track-subscribe-modal,[data-theme=dark] .ai-program-modal,[data-theme=dark] .signin-card{background:var(--surface);border:1px solid var(--border-strong);color:var(--text);box-shadow:0 24px 48px #00000073}[data-theme=dark] .admin-modal-title,[data-theme=dark] .program-form-title,[data-theme=dark] .profile-modal-title,[data-theme=dark] .payment-modal-title,[data-theme=dark] .history-modal-title,[data-theme=dark] .social-modal-title,[data-theme=dark] .public-modal-title,[data-theme=dark] .class-form-title,[data-theme=dark] .topup-title,[data-theme=dark] .terms-accept-header h2,[data-theme=dark] .comms-modal h2,[data-theme=dark] .onboarding-stages-header h2,[data-theme=dark] .member-detail-name,[data-theme=dark] .contact-owner-name,[data-theme=dark] .track-subscribe-name,[data-theme=dark] .track-manager-name,[data-theme=dark] .allocate-member-name,[data-theme=dark] .topup-option-name,[data-theme=dark] .public-checkout-pkg,[data-theme=dark] .ai-preview strong,[data-theme=dark] .onboarding-card-name,[data-theme=dark] .onboarding-column-title,[data-theme=dark] .terms-version-num,[data-theme=dark] .terms-acceptance-name,[data-theme=dark] .terms-active-card strong{color:var(--text)}[data-theme=dark] .admin-field,[data-theme=dark] .program-form-field,[data-theme=dark] .profile-field,[data-theme=dark] .payment-field,[data-theme=dark] .history-field,[data-theme=dark] .social-field,[data-theme=dark] .public-field,[data-theme=dark] .class-form-field,[data-theme=dark] .topup-intro,[data-theme=dark] .topup-label,[data-theme=dark] .topup-note,[data-theme=dark] .payment-modal-lead,[data-theme=dark] .public-modal-intro,[data-theme=dark] .comms-modal-hint,[data-theme=dark] .track-subscribe-hint,[data-theme=dark] .track-subscribe-desc,[data-theme=dark] .track-manager-desc,[data-theme=dark] .ai-program-hint,[data-theme=dark] .injury-modal-lead,[data-theme=dark] .onboarding-column-hint,[data-theme=dark] .onboarding-card-email,[data-theme=dark] .terms-accept-version,[data-theme=dark] .terms-version-date,[data-theme=dark] .terms-acceptance-detail,[data-theme=dark] .admin-field-hint,[data-theme=dark] .allocate-pkg-limit{color:var(--text-muted)}[data-theme=dark] .admin-field input,[data-theme=dark] .admin-field select,[data-theme=dark] .admin-field textarea,[data-theme=dark] .program-form-field input,[data-theme=dark] .program-form-field select,[data-theme=dark] .program-form-field textarea,[data-theme=dark] .profile-field input,[data-theme=dark] .profile-field select,[data-theme=dark] .profile-field textarea,[data-theme=dark] .payment-field input,[data-theme=dark] .payment-field select,[data-theme=dark] .payment-field textarea,[data-theme=dark] .history-field input,[data-theme=dark] .history-field select,[data-theme=dark] .history-field textarea,[data-theme=dark] .social-field input,[data-theme=dark] .social-field select,[data-theme=dark] .social-field textarea,[data-theme=dark] .public-field input,[data-theme=dark] .public-field select,[data-theme=dark] .public-field textarea,[data-theme=dark] .class-form-field input,[data-theme=dark] .class-form-field select,[data-theme=dark] .class-form-field textarea,[data-theme=dark] .comms-modal input,[data-theme=dark] .comms-modal textarea,[data-theme=dark] .comms-modal select,[data-theme=dark] .onboarding-stage-name,[data-theme=dark] .onboarding-stage-hint,[data-theme=dark] .member-detail-field textarea,[data-theme=dark] .member-detail-field input,[data-theme=dark] .member-detail-onboarding-actions select,[data-theme=dark] .ai-prompt-input,[data-theme=dark] .terms-content-input{background:var(--surface-input);border-color:var(--border-strong);color:var(--text)}[data-theme=dark] .admin-btn.cancel,[data-theme=dark] .profile-btn.cancel,[data-theme=dark] .payment-btn.cancel,[data-theme=dark] .history-btn.cancel,[data-theme=dark] .social-btn.cancel,[data-theme=dark] .public-btn.cancel,[data-theme=dark] .class-form-btn-cancel,[data-theme=dark] .program-form-btn.cancel,[data-theme=dark] .topup-btn.cancel,[data-theme=dark] .comms-btn.cancel,[data-theme=dark] .injury-action-btn,[data-theme=dark] .onboarding-icon-btn,[data-theme=dark] .onboarding-toggle-btn,[data-theme=dark] .onboarding-card-actions button,[data-theme=dark] .track-subscribe-btn,[data-theme=dark] .track-tab,[data-theme=dark] .admin-banner-actions button{background:var(--surface-muted);border-color:var(--border-strong);color:var(--text-muted)}[data-theme=dark] .admin-checkbox,[data-theme=dark] .payment-checkbox,[data-theme=dark] .terms-accept-checkbox,[data-theme=dark] .onboarding-stage-check{color:var(--text)}[data-theme=dark] .admin-menu-popover,[data-theme=dark] .picker-bar-menu,[data-theme=dark] .book-for-menu,[data-theme=dark] .help-tip-popover{background:var(--surface);border-color:var(--border-strong);box-shadow:0 12px 32px #00000073}[data-theme=dark] .help-tip-popover{color:var(--text-muted)}[data-theme=dark] .help-tip-icon{background:var(--surface-elevated,#334155);color:var(--text-muted)}[data-theme=dark] .admin-menu-popover strong,[data-theme=dark] .picker-bar-item-text{color:var(--text)}[data-theme=dark] .admin-menu-popover span,[data-theme=dark] .picker-bar-sub,[data-theme=dark] .admin-menu-label{color:var(--text-muted)}[data-theme=dark] .admin-billing-fieldset,[data-theme=dark] .admin-billing-option,[data-theme=dark] .allocate-pkg-preview,[data-theme=dark] .topup-status,[data-theme=dark] .topup-option,[data-theme=dark] .public-checkout-summary,[data-theme=dark] .contact-owner-card,[data-theme=dark] .injury-item,[data-theme=dark] .ai-preview,[data-theme=dark] .billing-statement-preview,[data-theme=dark] .payment-readonly,[data-theme=dark] .terms-accept-body,[data-theme=dark] .terms-active-card,[data-theme=dark] .onboarding-stage-row,[data-theme=dark] .onboarding-column,[data-theme=dark] .onboarding-card,[data-theme=dark] .program-exercise-row,[data-theme=dark] .track-subscribe-row,[data-theme=dark] .track-manager-row{background:var(--surface-muted);border-color:var(--border-strong);color:var(--text)}[data-theme=dark] .topup-option:hover,[data-theme=dark] .topup-option.selected,[data-theme=dark] .track-tab.active{background:var(--brand-light);border-color:var(--brand-border);color:var(--brand,#60a5fa)}[data-theme=dark] .admin-billing-option:has(input:checked){background:var(--brand-light);border-color:var(--brand-border);color:var(--brand,#60a5fa)}[data-theme=dark] .member-detail-section,[data-theme=dark] .member-detail-footer,[data-theme=dark] .member-detail-header{border-color:var(--border-strong)}[data-theme=dark] .member-detail-footer{background:var(--surface)}[data-theme=dark] .member-detail-action{background:var(--brand,#2563eb);color:#fff}[data-theme=dark] .member-detail-action.outline{background:var(--surface-muted);border:1px solid var(--border-strong);color:var(--text)}[data-theme=dark] .member-detail-close{background:var(--surface-muted);color:var(--text-muted)}[data-theme=dark] .member-detail-lead,[data-theme=dark] .detail-item dd,[data-theme=dark] .account-tx-desc{color:var(--text)}[data-theme=dark] .member-detail-meta,[data-theme=dark] .member-detail-empty,[data-theme=dark] .detail-item dt,[data-theme=dark] .account-tx-date,[data-theme=dark] .account-tx-ref{color:var(--text-muted)}[data-theme=dark] .member-detail-list .detail-item{border-bottom-color:var(--border-strong)}[data-theme=dark] .member-detail-facility-chips li{background:var(--surface-muted);color:var(--text)}[data-theme=dark] .member-detail-warn,[data-theme=dark] .member-detail-onboarding{background:var(--warn-bg);border-color:var(--warn-border);color:var(--warn-text)}[data-theme=dark] .billing-statement-preview,[data-theme=dark] .billing-payer-note,[data-theme=dark] .billing-payer-note-self{background:var(--surface-muted);color:var(--text-muted)}[data-theme=dark] .onboarding-stages-header,[data-theme=dark] .onboarding-stages-footer,[data-theme=dark] .onboarding-column-header,[data-theme=dark] .onboarding-stages-add{border-color:var(--border-strong);background:var(--surface)}[data-theme=dark] .onboarding-stage-row.is-disabled{background:var(--surface-muted);opacity:.7}[data-theme=dark] .onboarding-column-count{background:var(--surface);border-color:var(--border-strong);color:var(--text-muted)}[data-theme=dark] .comms-modal .comms-btn.cancel{background:var(--surface-muted);color:var(--text-muted)}[data-theme=dark] .comms-compose-form label,[data-theme=dark] .comms-broadcast-meta,[data-theme=dark] .comms-broadcast-body{color:var(--text-muted)}[data-theme=dark] .comms-broadcast-detail h2{color:var(--text)}[data-theme=dark] .terms-version-row,[data-theme=dark] .terms-acceptance-row{border-color:var(--border-strong)}[data-theme=dark] .injury-item.injury-status-active{background:var(--danger-bg);border-color:var(--danger-border)}[data-theme=dark] .program-exercise-remove{background:var(--danger-bg);color:var(--danger)}[data-theme=dark] .signin-screen input,[data-theme=dark] .signin-demo-list button{background:var(--surface-muted);border-color:var(--border-strong);color:var(--text)}[data-theme=dark] .facility-switcher{background:var(--glass-bg-elevated);border-color:var(--border-strong);color:var(--text)}[data-theme=dark] .facility-switcher-select{background:var(--surface);border-color:var(--border-strong);color:var(--text)}[data-theme=dark] .home-facility-menu{background:var(--glass-bg-elevated);border-color:var(--border-strong);box-shadow:0 12px 28px #00000059}[data-theme=dark] .home-facility-option strong{color:var(--text)}[data-theme=dark] .home-facility-option span{color:var(--text-muted)}[data-theme=dark] .home-facility-option:hover,[data-theme=dark] .home-facility-option.selected{background:var(--surface)}[data-theme=dark] .booking-screen,[data-theme=dark] .program-screen,[data-theme=dark] .social-screen,[data-theme=dark] .gym-name,[data-theme=dark] .program-gym,[data-theme=dark] .social-gym,[data-theme=dark] .date-label,[data-theme=dark] .class-time,[data-theme=dark] .class-spots,[data-theme=dark] .program-title,[data-theme=dark] .exercise-name,[data-theme=dark] .section-title,[data-theme=dark] .my-score-value,[data-theme=dark] .leaderboard-name,[data-theme=dark] .leaderboard-score,[data-theme=dark] .spotlight-text,[data-theme=dark] .feed-author,[data-theme=dark] .feed-content,[data-theme=dark] .feed-title,[data-theme=dark] .feed-highlight-value,[data-theme=dark] .attendee-name{color:var(--text)}[data-theme=dark] .book-at,[data-theme=dark] .program-label,[data-theme=dark] .social-label,[data-theme=dark] .calendar-icon,[data-theme=dark] .program-icon,[data-theme=dark] .social-icon,[data-theme=dark] .comms-icon{color:var(--brand,#60a5fa)}[data-theme=dark] .settings-btn,[data-theme=dark] .program-screen .settings-btn,[data-theme=dark] .social-screen .settings-btn,[data-theme=dark] .chevron,[data-theme=dark] .program-screen .chevron{color:var(--text-faint)}[data-theme=dark] .settings-btn:hover,[data-theme=dark] .program-screen .settings-btn:hover,[data-theme=dark] .social-screen .settings-btn:hover,[data-theme=dark] .chevron:hover,[data-theme=dark] .program-screen .chevron:hover{background:var(--surface-muted);color:var(--text-muted)}[data-theme=dark] .settings-btn.active,[data-theme=dark] .program-screen .settings-btn.active,[data-theme=dark] .social-screen .settings-btn.active{background:var(--brand-light);color:var(--brand,#60a5fa)}[data-theme=dark] .admin-banner,[data-theme=dark] .program-screen .admin-banner,[data-theme=dark] .social-screen .admin-banner,[data-theme=dark] .booking-screen .admin-banner{background:var(--surface-2,#1e293b);border-color:var(--border,#334155);color:var(--text,#e2e8f0)}[data-theme=dark] .booking-screen .admin-settings-toggle{background:var(--surface,#0f172a);border-color:var(--border,#334155);color:var(--text-muted,#94a3b8)}[data-theme=dark] .booking-screen .admin-settings-toggle.active{color:#0f172a;background:#e2e8f0;border-color:#e2e8f0}[data-theme=dark] .history-link-btn{background:var(--brand-light);border-color:var(--brand-border);color:var(--brand,#60a5fa)}[data-theme=dark] .calendar-mode-row{background:var(--surface-2,#1e293b)}[data-theme=dark] .calendar-mode-btn{color:var(--text-muted,#94a3b8)}[data-theme=dark] .calendar-mode-btn.active{background:var(--surface,#0f172a);color:var(--brand,#60a5fa)}[data-theme=dark] .week-board-range{color:var(--text,#e2e8f0)}[data-theme=dark] .week-day-column{background:var(--surface,#0f172a);border-color:var(--border,#334155)}[data-theme=dark] .week-day-column.selected{border-color:var(--brand-border);box-shadow:0 0 0 2px var(--brand-light)}[data-theme=dark] .week-day-column-header{background:var(--surface-2,#1e293b);border-bottom-color:var(--border,#334155)}[data-theme=dark] .week-day-column-date,[data-theme=dark] .week-day-column-title,[data-theme=dark] .week-day-section-list strong{color:var(--text,#e2e8f0)}[data-theme=dark] .week-day-section{border-top-color:var(--border,#334155)}[data-theme=dark] .score-capture-modal{background:var(--surface,#0f172a)}[data-theme=dark] .score-capture-header h2{color:var(--text,#e2e8f0)}[data-theme=dark] .score-level-chip{background:var(--surface-2,#1e293b);border-color:var(--border,#334155);color:var(--text-muted,#94a3b8)}[data-theme=dark] .score-level-chip.active{background:var(--brand-light);border-color:var(--brand-border);color:var(--brand,#60a5fa)}[data-theme=dark] .score-capture-time input,[data-theme=dark] .score-capture-rounds input,[data-theme=dark] .score-capture-field input,[data-theme=dark] .score-capture-field textarea{background:var(--surface-2,#1e293b);border-color:var(--border,#334155);color:var(--text,#e2e8f0)}[data-theme=dark] .program-main-tab{color:var(--text-muted,#94a3b8)}[data-theme=dark] .program-main-tab.active{background:var(--surface,#0f172a);color:var(--brand,#60a5fa);box-shadow:0 1px 3px #00000059}[data-theme=dark] .history-tabs{border-bottom-color:var(--border,#334155);background:0 0}[data-theme=dark] .history-tab{color:var(--text-muted,#94a3b8)}[data-theme=dark] .history-tab.active{color:var(--brand,#60a5fa);border-bottom-color:var(--brand,#60a5fa);box-shadow:none;background:0 0}[data-theme=dark] .history-tab-count{background:var(--surface-2,#1e293b);color:var(--text-muted,#94a3b8)}[data-theme=dark] .history-tab.active .history-tab-count{background:var(--brand-light);color:var(--brand,#60a5fa)}[data-theme=dark] .date-summary,[data-theme=dark] .program-screen .date-summary{color:var(--text)}[data-theme=dark] .date-summary-meta,[data-theme=dark] .class-coach,[data-theme=dark] .class-duration,[data-theme=dark] .program-subtitle,[data-theme=dark] .exercise-rx,[data-theme=dark] .score-field,[data-theme=dark] .my-score-notes,[data-theme=dark] .leaderboard-notes,[data-theme=dark] .spotlight-caption,[data-theme=dark] .feed-time,[data-theme=dark] .feed-empty,[data-theme=dark] .empty-classes,[data-theme=dark] .program-empty p,[data-theme=dark] .admin-program-hint,[data-theme=dark] .attendee-meta{color:var(--text-muted)}[data-theme=dark] .day-letter,[data-theme=dark] .program-screen .day-letter{color:var(--text-faint)}[data-theme=dark] .day-number,[data-theme=dark] .program-screen .day-number{color:var(--text);background:0 0}[data-theme=dark] .day-cell.has-program:not(.selected) .day-number,[data-theme=dark] .program-screen .day-cell.has-program:not(.selected) .day-number{background:var(--brand-light);color:var(--brand,#60a5fa)}[data-theme=dark] .class-card,[data-theme=dark] .program-card,[data-theme=dark] .score-section,[data-theme=dark] .leaderboard-section,[data-theme=dark] .spotlight-message,[data-theme=dark] .spotlight-pic,[data-theme=dark] .feed-card{background:var(--surface);border-color:var(--border-strong);box-shadow:var(--glass-shadow);color:var(--text)}[data-theme=dark] .class-card:hover{box-shadow:0 4px 16px #00000059}[data-theme=dark] .class-card.on-waitlist{border-color:#57534e}[data-theme=dark] .tag,[data-theme=dark] .tag-hidden,[data-theme=dark] .tag-class{background:var(--surface-muted);color:var(--text-muted);border-color:var(--border-strong)}[data-theme=dark] .admin-inline-btn,[data-theme=dark] .admin-inline-btn.danger{background:var(--surface-muted);color:var(--text-muted)}[data-theme=dark] .admin-inline-btn.danger{background:var(--danger-bg);color:var(--danger)}[data-theme=dark] .waitlist-banner,[data-theme=dark] .topup-banner,[data-theme=dark] .booking-topup-banner{background:var(--surface-muted);border-color:var(--border-strong);color:var(--text)}[data-theme=dark] .booking-topup-banner button{background:var(--brand,#3b82f6);color:#fff}[data-theme=dark] .book-for-link{color:var(--brand,#60a5fa)}[data-theme=dark] .booking-screen .book-for-bar .usage-strip{box-shadow:none;border:0;outline:none}[data-theme=dark] .book-btn.cancel-btn,[data-theme=dark] .waitlist-btn,[data-theme=dark] .attendee-toggle{background:var(--surface-muted);border-color:var(--border-strong);color:var(--text-muted)}[data-theme=dark] .attendee-list,[data-theme=dark] .attendee-row{background:var(--surface-muted);border-color:var(--border-strong);color:var(--text)}[data-theme=dark] .spots-bar,[data-theme=dark] .spots-bar-track{background:var(--surface-muted)}[data-theme=dark] .exercise-row,[data-theme=dark] .my-score{background:var(--surface-muted);border-color:var(--border-strong)}[data-theme=dark] .exercise-block-title,[data-theme=dark] .ai-preview-section-label{color:var(--text-muted)}[data-theme=dark] .program-form-section{background:var(--surface-muted);border-color:var(--border-strong)}[data-theme=dark] .program-build-lead,[data-theme=dark] .benchmark-picker-lead{color:var(--text-muted)}[data-theme=dark] .program-build-option,[data-theme=dark] .benchmark-picker-item{background:var(--surface-muted);border-color:var(--border-strong)}[data-theme=dark] .program-build-option:hover,[data-theme=dark] .benchmark-picker-item:hover{background:var(--surface);border-color:var(--brand-border,#3b82f6)}[data-theme=dark] .program-build-option strong,[data-theme=dark] .benchmark-picker-item-top strong{color:var(--text)}[data-theme=dark] .program-build-option span,[data-theme=dark] .benchmark-picker-meta,[data-theme=dark] .benchmark-picker-desc,[data-theme=dark] .benchmark-picker-empty{color:var(--text-muted)}[data-theme=dark] .program-form-label{color:var(--text)}[data-theme=dark] .exercise-index{background:var(--brand-light);color:var(--brand,#60a5fa)}[data-theme=dark] .score-field input,[data-theme=dark] .feed-comment-form input{background:var(--surface-input);border-color:var(--border-strong);color:var(--text)}[data-theme=dark] .leaderboard-row{background:0 0;border-bottom-color:#94a3b829}[data-theme=dark] .leaderboard-row.is-me{background:var(--brand-light);border-bottom-color:#0000}[data-theme=dark] .program-empty,[data-theme=dark] .program-subscribe-prompt{color:var(--text-muted)}[data-theme=dark] .program-empty-btn{background:var(--brand,#2563eb);color:#fff}[data-theme=dark] .spotlight-tag{color:var(--brand,#60a5fa)}[data-theme=dark] .feed-avatar,[data-theme=dark] .feed-badge-post{background:var(--surface-muted);color:var(--text-muted)}[data-theme=dark] .feed-badge-pb{background:var(--warn-bg);color:var(--warn-text)}[data-theme=dark] .feed-badge-birthday{color:#f9a8d4;background:#9d174d59}[data-theme=dark] .feed-badge-photo{background:var(--ok-bg);color:var(--ok-text)}[data-theme=dark] .feed-badge-score{background:var(--brand-light);color:var(--brand,#60a5fa)}[data-theme=dark] .feed-highlight,[data-theme=dark] .feed-highlight-pb{background:var(--surface-muted);border-color:var(--border-strong)}[data-theme=dark] .feed-highlight-label{color:var(--text-muted)}[data-theme=dark] .feed-birthday-banner{color:#f9a8d4;background:#9d174d4d}[data-theme=dark] .feed-delete{background:var(--danger-bg);color:var(--danger)}[data-theme=dark] .feed-actions button,[data-theme=dark] .feed-like,[data-theme=dark] .feed-comment-toggle,[data-theme=dark] .feed-action-btn{color:var(--text-muted);background:0 0}[data-theme=dark] .feed-like.liked,[data-theme=dark] .feed-action-btn.active,[data-theme=dark] .feed-action-btn.liked{color:var(--brand,#60a5fa)}[data-theme=dark] .feed-action-btn.liked{background:var(--danger-bg);color:var(--danger)}[data-theme=dark] .class-relative,[data-theme=dark] .waitlist-bar,[data-theme=dark] .feed-comments-empty,[data-theme=dark] .feed-comment-head span,[data-theme=dark] .feed-comment p{color:var(--text-muted)}[data-theme=dark] .feed-comment-head strong{color:var(--text)}[data-theme=dark] .feed-comment-delete{color:var(--danger)}[data-theme=dark] .feed-comment-form button{background:var(--brand,#2563eb);color:#fff}[data-theme=dark] .spots-fill,[data-theme=dark] .spots-bar-fill{background:var(--brand,#2563eb)}[data-theme=dark] .book-btn.full,[data-theme=dark] .book-btn:disabled{background:var(--surface-muted);color:var(--text-faint)}[data-theme=dark] .feed-comments,[data-theme=dark] .feed-comment{background:var(--surface-muted);border-color:var(--border-strong);color:var(--text)}[data-theme=dark] .feed-comment-author{color:var(--text)}[data-theme=dark] .feed-comment-body,[data-theme=dark] .feed-comment-time{color:var(--text-muted)}[data-theme=dark] .feed-new-btn{background:var(--brand,#2563eb);color:#fff}[data-theme=dark] .feed-toolbar{color:var(--text)}[data-theme=dark] .class-card.is-hidden{opacity:.55}[data-theme=dark] .capacity-bar{background:var(--brand-light);border-left-color:var(--brand,#2563eb)}[data-theme=dark] .capacity-bar.full{background:var(--danger-bg);border-left-color:var(--danger)}[data-theme=dark] .capacity-bar.full .capacity-fill{background:color-mix(in srgb, var(--danger) 45%, transparent)}[data-theme=dark] .capacity-bar.full .capacity-text{color:#fca5a5}[data-theme=dark] .capacity-fill{background:color-mix(in srgb, var(--brand,#2563eb) 45%, transparent)}[data-theme=dark] .capacity-text,[data-theme=dark] .capacity-toggle{color:var(--text)}[data-theme=dark] .capacity-toggle{color:var(--brand,#60a5fa)}[data-theme=dark] .checkin-btn{background:var(--brand-light);border-color:var(--brand,#60a5fa);color:var(--brand-dark,#93c5fd)}[data-theme=dark] .class-card.is-past .checkin-btn:not(.checked){background:var(--surface-muted);border-color:var(--border-strong);color:var(--text-faint)}[data-theme=dark] .checkin-btn.enabled{background:var(--brand-light);border-color:var(--brand-border);color:var(--brand,#60a5fa)}[data-theme=dark] .action-onWaitlist,[data-theme=dark] .waitlist-bar{background:var(--surface-muted);border-color:var(--border-strong);color:var(--text-muted)}[data-theme=dark] .attendee-avatar{background:var(--surface-muted);color:var(--text-faint)}[data-theme=dark] .attendee-row{border-bottom-color:var(--border-strong)}[data-theme=dark] .picker-bar{background:var(--brand-light);border:none}[data-theme=dark] .picker-bar-select,[data-theme=dark] .picker-bar-menu,[data-theme=dark] .book-for-menu{border-color:var(--border-strong);color:var(--text);background:var(--surface)!important}[data-theme=dark] .auth-gate-sheet{background:var(--surface)}[data-theme=dark] .auth-gate-title{color:var(--text)}[data-theme=dark] .auth-gate-subtitle,[data-theme=dark] .auth-gate-demo,[data-theme=dark] .auth-gate-field{color:var(--text-muted)}[data-theme=dark] .auth-gate-field input{background:var(--surface-muted);border-color:var(--border-strong);color:var(--text)}[data-theme=dark] .auth-gate-field input:focus{background:var(--surface)}[data-theme=dark] .auth-gate-provider{background:var(--surface-muted);border-color:var(--border-strong);color:var(--text)}[data-theme=dark] .auth-gate-close{background:var(--surface-muted);color:var(--text-muted)}[data-theme=dark] .auth-gate-handle{background:var(--border-strong)}[data-theme=dark] .auth-gate-facility-chip{background:color-mix(in srgb, var(--brand,#2563eb) 22%, transparent)}[data-theme=dark] .public-facility-strip{background:var(--surface);border-color:var(--border-strong)}[data-theme=dark] .public-strip-btn.active{background:var(--surface-muted);color:var(--facility-color,var(--brand,#60a5fa))}[data-theme=dark] .public-package-card,[data-theme=dark] .public-schedule-row{background:var(--surface);border-color:var(--border-strong)}[data-theme=dark] .public-package-top strong,[data-theme=dark] .public-schedule-time,[data-theme=dark] .public-schedule-date,[data-theme=dark] .public-facility-hero h1{color:var(--text)}[data-theme=dark] .public-facility-blurb,[data-theme=dark] .public-facility-location,[data-theme=dark] .public-facility-address,[data-theme=dark] .public-package-card p,[data-theme=dark] .public-schedule-type,[data-theme=dark] .public-schedule-spots,[data-theme=dark] .public-schedule-note{color:var(--text-muted)}[data-theme=dark] .public-facility-dropin-badge{background:color-mix(in srgb, var(--facility-color,#2563eb) 22%, transparent);border-color:color-mix(in srgb, var(--facility-color,#2563eb) 35%, transparent)}:root{--fo-ease-out:cubic-bezier(.22, 1, .36, 1);--fo-ease-soft:cubic-bezier(.4, 0, .2, 1);--fo-dur-fast:.16s;--fo-dur:.28s;--fo-dur-slow:.38s}@keyframes fo-screen-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fo-fade-in{0%{opacity:0}to{opacity:1}}@keyframes fo-modal-in{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes fo-rise-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fo-toast-in{0%{opacity:0;transform:translate(-50%)translateY(14px)}to{opacity:1;transform:translate(-50%)translateY(0)}}@keyframes fo-pop-in{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.app-content>*,.signin-screen,.public-screen{animation:fo-screen-in var(--fo-dur) var(--fo-ease-out) both}.admin-modal-backdrop,.class-form-backdrop,.member-detail-backdrop,.terms-modal-backdrop,.image-crop-backdrop{animation:fo-fade-in var(--fo-dur-fast) var(--fo-ease-soft) both}.admin-modal,.class-form-modal,.member-detail,.account-detail,.terms-modal,.image-crop-modal,.signin-card{animation:fo-modal-in var(--fo-dur) var(--fo-ease-out) both}.class-list .class-card,.member-list .member-row,.package-list .package-card,.home-desktop-aside>.home-card,.home-desktop-aside>.home-profile-card,.metric-grid>.metric-card,.feed-list>.feed-card,.comms-list-panel .comms-list-item,.superuser-facility-list>.superuser-facility-card,.superuser-account-list>.superuser-account-card{animation:fo-rise-in var(--fo-dur-slow) var(--fo-ease-out) both}.class-list .class-card:first-child,.member-list .member-row:first-child,.package-list .package-card:first-child,.home-desktop-aside>:first-child,.metric-grid>:first-child,.feed-list>:first-child,.comms-list-panel .comms-list-item:first-child,.superuser-facility-list>:first-child,.superuser-account-list>:first-child{animation-delay:20ms}.class-list .class-card:nth-child(2),.member-list .member-row:nth-child(2),.package-list .package-card:nth-child(2),.home-desktop-aside>:nth-child(2),.metric-grid>:nth-child(2),.feed-list>:nth-child(2),.comms-list-panel .comms-list-item:nth-child(2),.superuser-facility-list>:nth-child(2),.superuser-account-list>:nth-child(2){animation-delay:45ms}.class-list .class-card:nth-child(3),.member-list .member-row:nth-child(3),.package-list .package-card:nth-child(3),.home-desktop-aside>:nth-child(3),.metric-grid>:nth-child(3),.feed-list>:nth-child(3),.comms-list-panel .comms-list-item:nth-child(3),.superuser-facility-list>:nth-child(3),.superuser-account-list>:nth-child(3){animation-delay:70ms}.class-list .class-card:nth-child(4),.member-list .member-row:nth-child(4),.package-list .package-card:nth-child(4),.home-desktop-aside>:nth-child(4),.metric-grid>:nth-child(4),.feed-list>:nth-child(4),.comms-list-panel .comms-list-item:nth-child(4),.superuser-facility-list>:nth-child(4),.superuser-account-list>:nth-child(4){animation-delay:95ms}.class-list .class-card:nth-child(5),.member-list .member-row:nth-child(5),.package-list .package-card:nth-child(5),.home-desktop-aside>:nth-child(5),.metric-grid>:nth-child(5),.feed-list>:nth-child(5),.comms-list-panel .comms-list-item:nth-child(5),.superuser-facility-list>:nth-child(5),.superuser-account-list>:nth-child(5){animation-delay:.12s}.class-list .class-card:nth-child(6),.member-list .member-row:nth-child(6),.package-list .package-card:nth-child(6),.home-desktop-aside>:nth-child(6),.metric-grid>:nth-child(6),.feed-list>:nth-child(6),.comms-list-panel .comms-list-item:nth-child(6),.superuser-facility-list>:nth-child(6),.superuser-account-list>:nth-child(6){animation-delay:.145s}.class-list .class-card:nth-child(n+7),.member-list .member-row:nth-child(n+7),.package-list .package-card:nth-child(n+7),.home-desktop-aside>:nth-child(n+7),.metric-grid>:nth-child(n+7),.feed-list>:nth-child(n+7),.comms-list-panel .comms-list-item:nth-child(n+7),.superuser-facility-list>:nth-child(n+7),.superuser-account-list>:nth-child(n+7){animation-delay:.16s}.class-list .class-card{will-change:transform, opacity;animation-fill-mode:both}.toast,.home-toast,.customize-toast,.history-toast,.public-toast,.superuser-toast,.admin-screen .toast,.booking-screen .toast,.program-screen .toast,.social-screen .toast,.comms-screen .toast{animation:fo-toast-in var(--fo-dur) var(--fo-ease-out) both}.bottom-nav .nav-item,.side-nav .nav-item,.admin-tab,.admin-chip,.role-switch-btn,.settings-btn,.home-icon-btn,.admin-add-btn,.account-action-btn{transition:color var(--fo-dur-fast) var(--fo-ease-soft), background var(--fo-dur-fast) var(--fo-ease-soft), border-color var(--fo-dur-fast) var(--fo-ease-soft), box-shadow var(--fo-dur-fast) var(--fo-ease-soft), transform var(--fo-dur-fast) var(--fo-ease-soft)}.bottom-nav .nav-item:active,.side-nav .nav-item:active,.admin-tab:active,.admin-chip:active,.role-switch-btn:active,.settings-btn:active,.home-icon-btn:active,.admin-add-btn:active,.account-action-btn:active,.member-row:active,.class-book-btn:active,.signin-submit:active,.signin-quick-btn:active{transform:scale(.97)}.nav-badge{animation:fo-pop-in var(--fo-dur) var(--fo-ease-out) both}@media (hover:hover) and (pointer:fine){.class-card,.member-row,.package-card,.metric-card,.home-card,.feed-card{transition:transform var(--fo-dur-fast) var(--fo-ease-soft), box-shadow var(--fo-dur-fast) var(--fo-ease-soft), border-color var(--fo-dur-fast) var(--fo-ease-soft)}.class-card:hover,.package-card:hover,.metric-card:hover,.home-card:hover{transform:translateY(-1px);box-shadow:0 8px 20px #0f172a14}.member-row:hover{transform:translateY(-1px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;transition-delay:0s!important;animation:none!important}}*,:before,:after{box-sizing:border-box}html,body,#root{-webkit-font-smoothing:antialiased;min-height:100%;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}*{scrollbar-width:none;-ms-overflow-style:none}::-webkit-scrollbar{width:0;height:0;display:none}button{font-family:inherit}
