@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Montserrat:wght@700;800&display=swap";.navbar[data-v-5bcf3c50]{display:flex;align-items:center;justify-content:space-between;min-height:68px;padding:calc(12px + env(safe-area-inset-top)) 28px 12px 28px;background:color-mix(in srgb,var(--color-surface) 94%,transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--color-border);position:sticky;top:0;z-index:100;transition:background .3s,border-color .3s}.nav-logo[data-v-5bcf3c50]{color:var(--color-text);display:flex;align-items:center;gap:10px;min-width:0}.nav-wordmark-wrap[data-v-5bcf3c50]{display:inline-flex;align-items:center;justify-content:center;width:166px;height:34px;overflow:hidden;border-radius:6px;background:#fff;box-shadow:0 8px 20px #0f172a0f;flex-shrink:0}.nav-wordmark[data-v-5bcf3c50]{width:100%;height:100%;object-fit:contain;display:block}.gym-badge[data-v-5bcf3c50]{font-size:12px;font-weight:700;background:var(--color-surface-2);color:var(--color-muted);padding:5px 9px;border-radius:8px;max-width:min(28vw,220px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-links[data-v-5bcf3c50]{display:flex;gap:8px;align-items:center;min-width:0}.nav-links a[data-v-5bcf3c50],.btn-logout[data-v-5bcf3c50]{font-size:15px;font-weight:700;color:var(--color-muted);padding:9px 12px;border-radius:8px;transition:all .2s;text-decoration:none;cursor:pointer;background:transparent;border:none}.nav-links a[data-v-5bcf3c50]:hover,.nav-links a.router-link-active[data-v-5bcf3c50],.btn-logout[data-v-5bcf3c50]:hover{color:var(--color-text);background:var(--color-surface-2)}.btn-logout[data-v-5bcf3c50]{color:var(--system-error)}.btn-logout[data-v-5bcf3c50]:hover{background:#ef44441a}.root-link[data-v-5bcf3c50]{color:#fbbf24!important}.root-link.router-link-active[data-v-5bcf3c50]{background:#f59e0b26!important}@media (max-width: 768px){.navbar[data-v-5bcf3c50]{min-height:auto;padding:calc(10px + env(safe-area-inset-top)) 12px 10px 12px;flex-wrap:wrap;gap:10px}.nav-wordmark-wrap[data-v-5bcf3c50]{width:132px;height:28px}.gym-badge[data-v-5bcf3c50]{max-width:calc(100vw - 176px)}.nav-links[data-v-5bcf3c50]{width:100%;justify-content:flex-start;gap:8px;overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch;padding-bottom:4px}.nav-links[data-v-5bcf3c50]::-webkit-scrollbar{display:none}.nav-links a[data-v-5bcf3c50],.btn-logout[data-v-5bcf3c50]{padding:8px 10px;font-size:13px;flex:0 0 auto;text-align:center}}@media (orientation: landscape) and (max-height: 560px){.navbar-display[data-v-5bcf3c50]{display:none}}.tv-card[data-v-829f3ebb]{position:relative;container-type:inline-size;min-height:0;background:linear-gradient(145deg,#4ade8024,#ffffff0b 32%,#0206171f 70%),#0f172a;border:1px solid color-mix(in srgb,var(--zone-color) 38%,transparent);border-radius:var(--radius-panel);box-shadow:0 0 0 var(--zone-glow),0 18px 44px #00000047;overflow:hidden;transition:border-color .3s,box-shadow .3s,opacity .3s,filter .3s}.tv-card[data-v-829f3ebb]:before{content:"";position:absolute;inset:0 0 auto 0;height:4px;background:linear-gradient(90deg,var(--zone-color),transparent);opacity:.95}.tv-card.is-offline[data-v-829f3ebb],.tv-card.is-inactive[data-v-829f3ebb]{opacity:.55;filter:grayscale(80%)}.tv-card.is-danger[data-v-829f3ebb]:not(.is-offline):not(.is-inactive){border-color:#ef4444e6;animation:dangerPulse-829f3ebb 1s infinite alternate}@keyframes dangerPulse-829f3ebb{0%{box-shadow:0 0 10px #ef444433}to{box-shadow:0 0 30px #ef4444bf}}.tv-card-content[data-v-829f3ebb]{height:100%;min-height:clamp(168px,24vh,310px);display:flex;flex-direction:column;padding:clamp(9px,1.35vmin,16px);position:relative;z-index:1}.tv-card-header[data-v-829f3ebb],.name-row[data-v-829f3ebb],.footer-row[data-v-829f3ebb],.header-right[data-v-829f3ebb],.battery[data-v-829f3ebb],.hr-line[data-v-829f3ebb]{display:flex;align-items:center}.tv-card-header[data-v-829f3ebb],.footer-row[data-v-829f3ebb]{justify-content:space-between;gap:12px}.slot-number[data-v-829f3ebb]{color:var(--zone-color);font-size:clamp(14px,2vmin,22px);line-height:1;font-weight:800}.header-right[data-v-829f3ebb]{gap:10px;min-width:0}.battery[data-v-829f3ebb]{gap:4px;color:#9ca3af;font-size:clamp(10px,1.4vmin,14px);line-height:1;white-space:nowrap}.battery.low[data-v-829f3ebb]{color:#fca5a5}.battery svg[data-v-829f3ebb]{width:clamp(12px,1.7vmin,18px);height:clamp(8px,1.1vmin,12px);fill:none;stroke:currentColor;stroke-width:2}.name-row[data-v-829f3ebb]{gap:6px;margin-top:clamp(4px,.6vmin,8px);min-width:0}.member-name[data-v-829f3ebb]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#e2e8f0;font-size:clamp(14px,2vmin,22px);line-height:1.1;font-weight:800}.apple-watch-badge[data-v-829f3ebb]{flex-shrink:0;color:#e5e7eb;background:#475569b8;border:1px solid rgba(226,232,240,.12);border-radius:8px;padding:2px 5px;font-size:clamp(8px,1vmin,11px);line-height:1.2;font-weight:600}.stats-row[data-v-829f3ebb]{flex:1;min-height:0;display:flex;align-items:center;gap:clamp(8px,1.5vmin,22px)}.percent-group[data-v-829f3ebb]{display:flex;align-items:flex-start;color:var(--zone-color);min-width:0}.percent-value[data-v-829f3ebb]{font-family:Montserrat,Inter,sans-serif;font-size:clamp(58px,24cqw,180px);line-height:.88;font-weight:800}.percent-sign[data-v-829f3ebb]{margin-top:.14em;font-size:clamp(22px,7cqw,54px);line-height:1;font-weight:800}.hr-group[data-v-829f3ebb]{margin-left:auto;display:flex;flex-direction:column;align-items:flex-end;color:var(--zone-color)}.hr-line[data-v-829f3ebb]{gap:clamp(6px,.8vmin,12px)}.heart-icon[data-v-829f3ebb]{width:clamp(22px,7.8cqw,52px);height:clamp(22px,7.8cqw,52px);fill:currentColor;stroke:currentColor;stroke-width:1.5}.hr-value[data-v-829f3ebb]{font-size:clamp(36px,15cqw,118px);line-height:1;font-weight:800}.bpm-label[data-v-829f3ebb]{color:#94a3b8;font-size:clamp(14px,5cqw,34px);line-height:1;font-weight:700}.calories[data-v-829f3ebb]{display:inline-flex;align-items:center;gap:4px;color:var(--zone-color);font-size:clamp(10px,1.45vmin,15px);line-height:1;font-weight:700;white-space:nowrap}.calories svg[data-v-829f3ebb]{width:clamp(12px,1.55vmin,17px);height:clamp(12px,1.55vmin,17px);fill:none;stroke:currentColor;stroke-width:2}.zone-bars[data-v-829f3ebb]{display:flex;gap:2px;height:clamp(4px,1vmin,10px);padding:0 2px;border-radius:999px;background:#020617c7;border:1px solid rgba(226,232,240,.08);overflow:hidden}.zone-bar[data-v-829f3ebb]{width:clamp(12px,2.1vmin,24px);height:100%;opacity:.25}.zone-bar.active[data-v-829f3ebb]{opacity:1}.toggle-switch[data-v-829f3ebb]{position:relative;display:inline-block;width:44px;height:24px;flex-shrink:0}.toggle-switch input[data-v-829f3ebb]{opacity:0;width:0;height:0}.slider[data-v-829f3ebb]{position:absolute;cursor:pointer;top:0;right:0;bottom:0;left:0;background-color:#172033;transition:.3s;border-radius:24px;border:1px solid #334155}.slider[data-v-829f3ebb]:before{position:absolute;content:"";height:18px;width:18px;left:2px;bottom:2px;background-color:#94a3b8;transition:.3s;border-radius:50%}input:checked+.slider[data-v-829f3ebb]{background:linear-gradient(135deg,var(--brand-gradient-start),var(--brand-gradient-end));border-color:#22c55e}input:checked+.slider[data-v-829f3ebb]:before{transform:translate(20px);background-color:#fff}@media (max-width: 768px){.tv-card-content[data-v-829f3ebb]{min-height:180px}}@media (orientation: landscape) and (max-height: 560px){.tv-card-content[data-v-829f3ebb]{min-height:0;padding:7px}.tv-card[data-v-829f3ebb]:before{height:3px}.tv-card-header[data-v-829f3ebb],.footer-row[data-v-829f3ebb]{gap:6px}.name-row[data-v-829f3ebb]{margin-top:3px}.battery[data-v-829f3ebb]{gap:3px}.toggle-switch[data-v-829f3ebb]{width:34px;height:20px}.slider[data-v-829f3ebb]:before{width:14px;height:14px}input:checked+.slider[data-v-829f3ebb]:before{transform:translate(14px)}}.dashboard[data-v-94a1b864]{padding:clamp(12px,2vw,28px);min-height:calc(100svh - 69px);display:flex;flex-direction:column}.status-bar[data-v-94a1b864]{display:flex;justify-content:space-between;align-items:center;font-size:14px;color:var(--color-muted);margin-bottom:clamp(10px,1.4vw,20px);flex-shrink:0;background:#0f172ac2;border:1px solid rgba(226,232,240,.08);border-radius:var(--radius-panel);padding:10px 12px;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.status-left[data-v-94a1b864]{display:flex;align-items:center;gap:10px}.readiness-text[data-v-94a1b864]{color:var(--color-muted)}.session-controls[data-v-94a1b864]{display:flex;align-items:center;gap:16px}.session-timer[data-v-94a1b864]{display:flex;align-items:center;gap:8px;font-weight:600;color:var(--color-text);background:var(--color-surface);padding:8px 16px;border-radius:8px;border:1px solid var(--color-border)}.pulse-dot[data-v-94a1b864]{width:8px;height:8px;border-radius:50%;background:#ef4444;box-shadow:0 0 #ef4444b3;animation:pulse-94a1b864 1.5s infinite}@keyframes pulse-94a1b864{0%{transform:scale(.95);box-shadow:0 0 #ef4444b3}70%{transform:scale(1);box-shadow:0 0 0 10px #ef444400}to{transform:scale(.95);box-shadow:0 0 #ef444400}}.btn[data-v-94a1b864]{padding:8px 24px;border-radius:8px;font-weight:600;cursor:pointer;border:none;transition:opacity .2s}.btn[data-v-94a1b864]:hover{opacity:.9}.btn-primary[data-v-94a1b864]{background:linear-gradient(135deg,var(--brand-gradient-start),var(--brand-gradient-end));color:#fff}.btn-danger[data-v-94a1b864]{background:#ef4444;color:#fff}.modal-overlay[data-v-94a1b864]{position:fixed;top:0;right:0;bottom:0;left:0;background:#000c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:100}.modal-content[data-v-94a1b864]{background:var(--color-surface);border:1px solid var(--color-border);padding:32px;border-radius:var(--radius-panel);width:90%;max-width:800px;max-height:90vh;overflow-y:auto}.modal-content h2[data-v-94a1b864]{font-size:24px;margin-bottom:24px;color:var(--color-text);text-align:center}.report-grid[data-v-94a1b864]{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;margin-bottom:32px}.report-card[data-v-94a1b864]{background:var(--color-bg);padding:16px;border-radius:var(--radius-panel);border:1px solid var(--color-border)}.report-card h4[data-v-94a1b864]{font-size:18px;margin-bottom:12px;color:var(--color-text)}.report-stats p[data-v-94a1b864]{display:flex;justify-content:space-between;margin-bottom:8px;font-size:14px;color:var(--color-muted)}.modal-actions[data-v-94a1b864]{display:flex;justify-content:center}.dot[data-v-94a1b864]{width:8px;height:8px;border-radius:50%;flex-shrink:0}.dot-green[data-v-94a1b864]{background:#22c55e;box-shadow:0 0 6px #22c55e}.dot-red[data-v-94a1b864]{background:#ef4444}.empty-state[data-v-94a1b864]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;flex-grow:1;color:var(--color-muted);background:#0f172a85;border:1px solid rgba(226,232,240,.08);border-radius:var(--radius-panel)}.empty-icon[data-v-94a1b864]{font-size:60px}.empty-state p[data-v-94a1b864]{font-size:20px;font-weight:600}.empty-state .sub[data-v-94a1b864]{font-size:14px;font-weight:400}.grid[data-v-94a1b864]{display:grid;gap:clamp(10px,1.35vw,20px);flex-grow:1;min-height:0}.grid-1[data-v-94a1b864]{grid-template-columns:1fr;grid-template-rows:1fr}.grid-2[data-v-94a1b864]{grid-template-columns:repeat(2,1fr);grid-template-rows:1fr}.grid-3[data-v-94a1b864]{grid-template-columns:repeat(3,1fr);grid-template-rows:1fr}.grid-4[data-v-94a1b864]{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,1fr)}.grid-6[data-v-94a1b864]{grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(2,1fr)}.grid-auto[data-v-94a1b864]{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}@media (max-aspect-ratio: 1/1){.grid-2[data-v-94a1b864]{grid-template-columns:1fr;grid-template-rows:repeat(2,1fr)}.grid-3[data-v-94a1b864]{grid-template-columns:1fr;grid-template-rows:repeat(3,1fr)}.grid-4[data-v-94a1b864]{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,1fr)}.grid-6[data-v-94a1b864]{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(3,1fr)}.dashboard[data-v-94a1b864]{padding:16px}}@media (max-width: 768px) and (orientation: portrait){.dashboard[data-v-94a1b864]{padding:12px}.status-bar[data-v-94a1b864]{align-items:stretch;flex-direction:column;gap:10px}.status-left[data-v-94a1b864],.session-controls[data-v-94a1b864]{justify-content:center}.grid[data-v-94a1b864]{grid-template-columns:1fr!important;grid-auto-rows:minmax(178px,auto)}}@media (orientation: landscape) and (max-height: 560px){body.display-theme{height:100svh;min-height:0;overflow:hidden;padding:max(8px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left))}.status-bar[data-v-94a1b864]{margin-bottom:8px;padding:6px 8px;font-size:12px}.status-left[data-v-94a1b864]{gap:7px}.readiness-text[data-v-94a1b864]{display:none}.session-timer[data-v-94a1b864]{padding:5px 8px}.grid[data-v-94a1b864]{gap:8px}}.admin-page[data-v-c1fb452f]{padding:clamp(16px,3vw,32px);display:flex;flex-direction:column;gap:20px;max-width:1220px;margin:0 auto}.entitlement-card[data-v-c1fb452f]{display:flex;justify-content:space-between;gap:16px;align-items:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-panel);padding:16px 18px;box-shadow:var(--shadow-soft)}.entitlement-card.active[data-v-c1fb452f]{border-color:#22c55e73}.entitlement-card.inactive[data-v-c1fb452f]{border-color:#ef444473}.entitlement-card strong[data-v-c1fb452f]{display:block;font-size:16px;margin-bottom:4px}.entitlement-card span[data-v-c1fb452f],.muted-paragraph[data-v-c1fb452f]{color:var(--color-muted);line-height:1.6}.entitlement-meta[data-v-c1fb452f]{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.entitlement-meta span[data-v-c1fb452f]{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:8px;padding:5px 9px;font-size:12px;font-weight:700;color:var(--color-text)}.coach-tag[data-v-c1fb452f]{display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:var(--color-surface-2);padding:4px 8px;border-radius:8px;font-size:12px;color:var(--color-text);border:1px solid var(--color-border)}.admin-header[data-v-c1fb452f]{display:flex;justify-content:space-between;align-items:flex-end}.admin-header h2[data-v-c1fb452f]{font-size:24px;font-weight:800}.tabs[data-v-c1fb452f]{display:flex;gap:8px;border-bottom:1px solid var(--color-border);padding-bottom:12px;margin-bottom:16px}.tabs button[data-v-c1fb452f]{background:transparent;border:none;padding:8px 16px;font-size:15px;font-weight:600;color:var(--color-muted);cursor:pointer;border-radius:8px}.tabs button[data-v-c1fb452f]:hover{background:var(--color-surface-2)}.tabs button.active[data-v-c1fb452f]{color:#fff;background:linear-gradient(135deg,var(--brand-gradient-start),var(--brand-gradient-end))}.admin-header p[data-v-c1fb452f]{font-size:14px;color:var(--color-muted);margin-top:4px}.gym-banner[data-v-c1fb452f]{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(135deg,#0f172a,#14532d);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-panel);padding:16px 24px;margin-bottom:4px;box-shadow:0 22px 50px #0f172a2e}.gym-info[data-v-c1fb452f]{display:flex;align-items:center;gap:16px}.gym-icon[data-v-c1fb452f]{width:48px;height:48px;border-radius:8px;overflow:hidden;background:#fff;box-shadow:0 12px 26px #0000002e;flex-shrink:0}.gym-icon img[data-v-c1fb452f]{width:100%;height:100%;object-fit:cover}.gym-name[data-v-c1fb452f]{font-family:Montserrat,sans-serif;font-size:18px;font-weight:800;color:#fff;display:flex;align-items:center;gap:8px}.gym-name-edit[data-v-c1fb452f]{display:flex;gap:8px;align-items:center}.gym-name-edit input[data-v-c1fb452f]{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:8px;padding:4px 10px;color:#fff;font-size:16px}.gym-name-edit button[data-v-c1fb452f]{padding:4px 12px;border-radius:8px;background:#ffffff26;color:#fff;font-size:13px}.btn-rename[data-v-c1fb452f]{background:#ffffff26;border:1px solid rgba(255,255,255,.2);border-radius:8px;cursor:pointer;font-size:12px;font-weight:600;color:#fff;padding:4px 10px;margin-left:8px;transition:all .2s}.btn-rename[data-v-c1fb452f]:hover{background:#ffffff40}.gym-email[data-v-c1fb452f]{font-size:12px;color:#ffffff73;margin-top:2px;display:block}.header-actions[data-v-c1fb452f]{display:flex;gap:10px}.binding-actions[data-v-c1fb452f]{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.btn-dashboard[data-v-c1fb452f]{background:#ffffff1f;color:#fff;padding:8px 16px;border-radius:8px;font-size:13px;font-weight:600}.btn-dashboard[data-v-c1fb452f]:hover{background:#fff3}.btn-refresh[data-v-c1fb452f]{background:var(--color-surface-2);color:var(--color-text);border:1px solid var(--color-border)}.btn-logout[data-v-c1fb452f]{background:#ff505033;color:#ff6b6b;padding:8px 16px;border-radius:8px;font-size:13px;font-weight:600}.btn-logout[data-v-c1fb452f]:hover{background:#ff505059}.btn-add[data-v-c1fb452f]{background:linear-gradient(135deg,var(--brand-gradient-start),var(--brand-gradient-end));color:#fff;padding:10px 20px;border-radius:8px;font-weight:700;font-size:14px;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;white-space:nowrap;transition:opacity .2s}.btn-add[data-v-c1fb452f]:hover{opacity:.85}.btn-add.active[data-v-c1fb452f]{box-shadow:0 0 0 4px #22c55e29}.btn-add-watch[data-v-c1fb452f]{background:linear-gradient(135deg,#0ea5e9,#2563eb)}.btn-add-watch.active[data-v-c1fb452f]{box-shadow:0 0 0 4px #2563eb29}.btn-add[data-v-c1fb452f]:disabled{opacity:.45;cursor:not-allowed}.btn-icon[data-v-c1fb452f]{width:18px;height:18px;display:inline-flex;flex:0 0 18px}.btn-icon svg[data-v-c1fb452f]{width:100%;height:100%}.form-card[data-v-c1fb452f]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-panel);padding:24px;display:flex;flex-direction:column;gap:16px;animation:slideDown-c1fb452f .2s ease;box-shadow:var(--shadow-soft)}@keyframes slideDown-c1fb452f{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.form-card h3[data-v-c1fb452f]{font-size:16px;font-weight:700}.form-title-row[data-v-c1fb452f]{display:flex;justify-content:space-between;align-items:center;gap:16px}.form-title-actions[data-v-c1fb452f]{display:flex;align-items:center;gap:10px}.form-mode-label[data-v-c1fb452f]{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:8px;color:var(--color-muted);font-size:12px;font-weight:700;padding:6px 10px}.btn-form-close[data-v-c1fb452f]{background:transparent;border:1px solid var(--color-border);border-radius:8px;color:var(--color-muted);font-size:13px;font-weight:700;padding:7px 12px}.form-row[data-v-c1fb452f]{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}.form-group[data-v-c1fb452f]{display:flex;flex-direction:column;gap:6px}.form-group label[data-v-c1fb452f]{font-size:13px;color:var(--color-muted);font-weight:600}.form-group input[data-v-c1fb452f],.form-group select[data-v-c1fb452f]{background:var(--color-bg);border:1px solid var(--color-border);color:var(--color-text);padding:10px 14px;border-radius:8px;font-size:14px;transition:border .2s}.form-group input[data-v-c1fb452f]:focus,.form-group select[data-v-c1fb452f]:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 4px #22c55e1f}.form-group input[data-v-c1fb452f]:disabled,.form-group select[data-v-c1fb452f]:disabled{opacity:.5}.form-group input.tv-code-input[data-v-c1fb452f]{font-family:Montserrat,monospace;font-size:22px;font-weight:800;letter-spacing:0}.calculated-hr[data-v-c1fb452f]{min-height:41px;background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:8px;color:var(--color-text);display:flex;align-items:baseline;gap:6px;padding:9px 14px}.calculated-hr strong[data-v-c1fb452f]{font-size:18px}.calculated-hr span[data-v-c1fb452f]{color:var(--color-muted);font-size:12px;font-weight:700}.form-footer[data-v-c1fb452f]{display:flex;align-items:center;justify-content:space-between}.form-footer small[data-v-c1fb452f]{color:var(--color-muted);font-size:12px}.form-footer small.success[data-v-c1fb452f]{color:#4ade80}.btn-save[data-v-c1fb452f]{background:linear-gradient(135deg,var(--brand-gradient-start),var(--brand-gradient-end));color:#fff;padding:10px 24px;border-radius:8px;font-weight:700;font-size:14px}.table-card[data-v-c1fb452f]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-panel);overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;box-shadow:var(--shadow-soft)}.table-card[data-v-c1fb452f]::-webkit-scrollbar{height:8px}.table-card[data-v-c1fb452f]::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:999px}.admin-table[data-v-c1fb452f]{width:100%;border-collapse:collapse;table-layout:fixed}.device-table[data-v-c1fb452f]{min-width:1040px}.staff-table[data-v-c1fb452f]{min-width:940px}.device-table .col-status[data-v-c1fb452f]{width:92px}.device-table .col-member[data-v-c1fb452f]{width:130px}.device-table .col-device-id[data-v-c1fb452f]{width:260px}.device-table .col-platform[data-v-c1fb452f]{width:150px}.device-table .col-coach[data-v-c1fb452f]{width:180px}.device-table .col-hr[data-v-c1fb452f]{width:132px}.device-table .col-seen[data-v-c1fb452f]{width:150px}.staff-table .col-email[data-v-c1fb452f]{width:260px}.staff-table .col-staff-name[data-v-c1fb452f]{width:128px}.staff-table .col-staff-meta[data-v-c1fb452f]{width:104px}.staff-table .col-role[data-v-c1fb452f]{width:88px}.col-actions[data-v-c1fb452f]{width:150px}thead tr[data-v-c1fb452f]{background:var(--color-surface-2)}th[data-v-c1fb452f]{text-align:left;padding:14px 20px;font-size:12px;font-weight:700;color:var(--color-muted);text-transform:uppercase}td[data-v-c1fb452f]{padding:16px 20px;font-size:14px;border-top:1px solid var(--color-border);vertical-align:middle}td code[data-v-c1fb452f]{background:var(--color-surface-2);padding:3px 8px;border-radius:6px;font-size:13px;color:var(--color-accent)}.member-cell[data-v-c1fb452f],.email-cell[data-v-c1fb452f],.time-cell[data-v-c1fb452f]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.device-id-cell[data-v-c1fb452f],.platform-cell[data-v-c1fb452f],.coach-cell[data-v-c1fb452f]{min-width:0}.device-id-stack[data-v-c1fb452f],.platform-stack[data-v-c1fb452f]{min-width:0;display:flex;flex-direction:column;gap:6px}.field-caption[data-v-c1fb452f],.muted-inline[data-v-c1fb452f]{color:var(--color-muted);font-size:11px;font-weight:600}.code-chip[data-v-c1fb452f]{display:inline-block;max-width:100%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle}.sn-chip[data-v-c1fb452f]{color:var(--color-accent)}.numeric-cell[data-v-c1fb452f]{white-space:nowrap}.hr-stack[data-v-c1fb452f]{display:flex;flex-direction:column;gap:4px}.hr-stack strong[data-v-c1fb452f]{color:var(--color-text)}.hr-stack span[data-v-c1fb452f]{color:var(--color-muted);font-size:11px;font-weight:700}.action-buttons[data-v-c1fb452f]{display:flex;gap:10px;align-items:center;justify-content:flex-start;white-space:nowrap}.actions-col[data-v-c1fb452f],.actions-sticky[data-v-c1fb452f]{position:sticky;right:0}.actions-col[data-v-c1fb452f]{z-index:3;background:var(--color-surface-2)}.actions-sticky[data-v-c1fb452f]{z-index:2;background:var(--color-surface);box-shadow:-12px 0 18px #0f172a14}.row-online td.actions-sticky[data-v-c1fb452f]{background:#f7fef9}.row-offline td.actions-sticky[data-v-c1fb452f]{background:var(--color-surface)}.btn-edit[data-v-c1fb452f]{background:var(--color-surface-2);color:var(--color-text);padding:6px 14px;border-radius:8px;font-size:13px;font-weight:600;border:1px solid var(--color-border)}.btn-del[data-v-c1fb452f]{background:transparent;color:#ef4444;padding:6px 14px;border-radius:8px;font-size:13px;font-weight:600;border:1px solid #EF4444}.btn-del[data-v-c1fb452f]:hover{background:#ef444411}.loading[data-v-c1fb452f],.empty[data-v-c1fb452f]{padding:40px;text-align:center;color:var(--color-muted)}.badge[data-v-c1fb452f]{padding:4px 10px;border-radius:6px;font-size:12px;font-weight:700;display:inline-block}.badge-online[data-v-c1fb452f]{background:#22c55e33;color:#4ade80}.badge-offline[data-v-c1fb452f]{background:#f59e0b33;color:#fbbf24}.badge-unknown[data-v-c1fb452f]{background:#9ca3af1a;color:#9ca3af}.inline-input[data-v-c1fb452f],.inline-select[data-v-c1fb452f]{width:100%;padding:6px 8px;background:var(--color-surface-hover);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text);font-size:13px}.inline-input[data-v-c1fb452f]:focus,.inline-select[data-v-c1fb452f]:focus{border-color:var(--color-primary);box-shadow:0 0 0 4px #22c55e1f;outline:none}.btn-sm[data-v-c1fb452f]{padding:4px 10px;font-size:12px;margin-right:4px}.btn-edit[data-v-c1fb452f]{background:transparent;color:var(--color-text);border:1px solid var(--color-border);border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s}.btn-edit[data-v-c1fb452f]:hover{background:var(--color-surface-hover);border-color:var(--color-muted)}.row-online td[data-v-c1fb452f]{background-color:#22c55e08}.row-offline td[data-v-c1fb452f]{opacity:.8}@media (max-width: 768px){.admin-page[data-v-c1fb452f]{padding:12px;gap:14px}.gym-banner[data-v-c1fb452f]{flex-direction:column;align-items:flex-start;gap:16px;padding:16px}.header-actions[data-v-c1fb452f]{width:100%}.btn-dashboard[data-v-c1fb452f]{width:100%;display:inline-flex;justify-content:center}.entitlement-card[data-v-c1fb452f]{flex-direction:column;align-items:flex-start}.entitlement-meta[data-v-c1fb452f]{justify-content:flex-start}.tabs[data-v-c1fb452f]{overflow-x:auto;white-space:nowrap;padding-bottom:8px;-webkit-overflow-scrolling:touch}.tabs[data-v-c1fb452f]::-webkit-scrollbar{display:none}.admin-header[data-v-c1fb452f]{flex-direction:column;align-items:flex-start;gap:12px}.admin-header h2[data-v-c1fb452f]{font-size:20px}.header-actions-mobile[data-v-c1fb452f]{width:100%;flex-direction:column;align-items:stretch!important}.binding-actions[data-v-c1fb452f]{align-items:stretch}.btn-refresh[data-v-c1fb452f],.btn-add[data-v-c1fb452f]{width:100%}.form-title-row[data-v-c1fb452f],.form-title-actions[data-v-c1fb452f]{align-items:stretch;flex-direction:column}.form-row[data-v-c1fb452f]{grid-template-columns:1fr;gap:16px}.form-card[data-v-c1fb452f]{padding:16px}.form-footer[data-v-c1fb452f]{align-items:stretch;flex-direction:column;gap:12px}.form-footer .btn-save[data-v-c1fb452f]{width:100%}.table-card[data-v-c1fb452f]{overflow:visible;border-radius:var(--radius-panel)}.admin-table[data-v-c1fb452f],.device-table[data-v-c1fb452f],.staff-table[data-v-c1fb452f]{min-width:0}.admin-table colgroup[data-v-c1fb452f],.admin-table thead[data-v-c1fb452f]{display:none}.admin-table[data-v-c1fb452f],.admin-table tbody[data-v-c1fb452f],.admin-table tr[data-v-c1fb452f],.admin-table td[data-v-c1fb452f]{display:block;width:100%}.admin-table tbody[data-v-c1fb452f]{padding:8px}.admin-table tr[data-v-c1fb452f]{padding:12px 14px;border-top:1px solid var(--color-border);background:var(--color-surface)}.admin-table tr[data-v-c1fb452f]:first-child{border-top:none}.admin-table td[data-v-c1fb452f]{display:grid;grid-template-columns:92px minmax(0,1fr);align-items:center;gap:12px;padding:8px 0;border-top:none}.admin-table td[data-v-c1fb452f]:before{content:attr(data-label);color:var(--color-muted);font-size:12px;font-weight:700}.admin-table td.actions-sticky[data-v-c1fb452f]{position:static;display:block;background:transparent;box-shadow:none;padding-top:12px;padding-bottom:4px}.admin-table td.actions-sticky[data-v-c1fb452f]:before{content:none}.row-online td[data-v-c1fb452f],.row-offline td[data-v-c1fb452f]{background:transparent}td.actions-sticky[data-v-c1fb452f]{padding-left:10px;padding-right:8px}.action-buttons[data-v-c1fb452f]{width:100%;gap:6px;justify-content:flex-start;flex-wrap:wrap}.btn-edit[data-v-c1fb452f],.btn-del[data-v-c1fb452f],.btn-save[data-v-c1fb452f]{padding-left:10px;padding-right:10px}}.login-page[data-v-af5b095e]{display:grid;grid-template-columns:minmax(320px,.95fr) minmax(360px,420px);gap:24px;align-items:center;justify-content:center;min-height:100vh;padding:calc(32px + env(safe-area-inset-top)) 24px 32px}.brand-panel[data-v-af5b095e]{min-height:min(620px,calc(100vh - 64px));border-radius:var(--radius-panel);background:linear-gradient(135deg,#0f172afa,#14532df0);border:1px solid rgba(255,255,255,.08);box-shadow:var(--shadow-card);padding:28px;color:#fff;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}.brand-wordmark[data-v-af5b095e],.login-wordmark[data-v-af5b095e]{display:block;object-fit:contain;background:#fff;border-radius:6px}.brand-wordmark[data-v-af5b095e]{width:230px;height:40px}.brand-panel-main[data-v-af5b095e]{display:grid;grid-template-columns:112px minmax(0,1fr);align-items:center;gap:22px;max-width:560px}.brand-icon[data-v-af5b095e]{width:112px;aspect-ratio:1;object-fit:cover;border-radius:8px;box-shadow:0 18px 42px #00000038}.system-label[data-v-af5b095e]{display:block;color:var(--brand-soft-green);font-size:12px;font-weight:800;margin-bottom:10px}.brand-panel h1[data-v-af5b095e]{font-family:Montserrat,sans-serif;font-size:34px;line-height:1.12;font-weight:800}.brand-panel p[data-v-af5b095e]{color:#e2e8f0c7;margin-top:12px;line-height:1.7}.brand-strip[data-v-af5b095e]{display:flex;gap:8px;flex-wrap:wrap}.brand-strip span[data-v-af5b095e]{border:1px solid rgba(187,247,208,.28);background:#ffffff14;border-radius:8px;color:var(--brand-light-green);font-size:12px;font-weight:800;padding:7px 10px}.login-card[data-v-af5b095e]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-panel);padding:34px 30px;width:100%;max-width:420px;display:flex;flex-direction:column;align-items:center;gap:12px;box-shadow:var(--shadow-card)}.login-wordmark[data-v-af5b095e]{width:176px;height:32px;margin-bottom:8px}h2[data-v-af5b095e]{font-family:Montserrat,sans-serif;font-size:24px;font-weight:800;color:var(--color-text)}.subtitle[data-v-af5b095e]{font-size:14px;color:var(--color-muted);margin-bottom:12px}form[data-v-af5b095e]{width:100%;display:flex;flex-direction:column;gap:14px}.input-group input[data-v-af5b095e]{width:100%;background:#fff;border:1px solid var(--color-border);color:var(--color-text);padding:14px 18px;border-radius:var(--radius-control);font-size:16px;transition:border .2s,box-shadow .2s}.input-group input[data-v-af5b095e]:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 4px #22c55e1f}.verification-group[data-v-af5b095e]{display:flex;gap:8px}.verification-group input[data-v-af5b095e]{flex:1}.btn-send-code[data-v-af5b095e]{background:var(--color-surface-2);border:1px solid var(--color-border);color:var(--color-text);padding:0 16px;border-radius:var(--radius-control);font-size:14px;white-space:nowrap;transition:all .2s}.btn-send-code[data-v-af5b095e]:hover:not(:disabled){background:var(--color-surface-hover);border-color:var(--color-accent)}.error-msg[data-v-af5b095e]{color:#ef4444;font-size:14px;text-align:center}.success-msg[data-v-af5b095e]{color:#22c55e;font-size:14px;text-align:center}.btn-login[data-v-af5b095e]{background:linear-gradient(135deg,var(--brand-gradient-start),var(--brand-gradient-end));color:#fff;padding:14px;border-radius:var(--radius-control);font-size:16px;font-weight:700;width:100%;box-shadow:0 12px 24px #22c55e38;transition:opacity .2s,transform .1s,box-shadow .2s}.btn-login[data-v-af5b095e]:hover:not(:disabled){opacity:.9;transform:translateY(-1px);box-shadow:0 16px 28px #22c55e47}.btn-login[data-v-af5b095e]:disabled{opacity:.5;cursor:not-allowed}.mode-links[data-v-af5b095e]{display:flex;justify-content:space-between;margin-top:8px}.mode-links a[data-v-af5b095e]{font-size:13px;color:var(--color-muted);cursor:pointer;text-decoration:underline;transition:color .2s}.mode-links a[data-v-af5b095e]:hover{color:var(--color-text)}@media (max-width: 768px){.login-page[data-v-af5b095e]{grid-template-columns:1fr;padding:calc(14px + env(safe-area-inset-top)) 14px 18px;align-items:stretch}.brand-panel[data-v-af5b095e]{min-height:auto;padding:16px;gap:16px}.brand-wordmark[data-v-af5b095e]{width:170px;height:32px}.brand-panel-main[data-v-af5b095e]{grid-template-columns:64px minmax(0,1fr);gap:14px}.brand-icon[data-v-af5b095e]{width:64px}.brand-panel h1[data-v-af5b095e]{font-size:22px}.brand-panel p[data-v-af5b095e],.brand-strip[data-v-af5b095e]{display:none}.login-card[data-v-af5b095e]{padding:26px 18px;border-radius:var(--radius-panel);max-width:none;align-self:start}.verification-group[data-v-af5b095e]{flex-direction:column}.btn-send-code[data-v-af5b095e]{min-height:46px}}.dashboard[data-v-82c32958]{padding:clamp(12px,2vw,28px);min-height:calc(100svh - 69px);display:flex;flex-direction:column}.status-bar[data-v-82c32958]{display:flex;justify-content:space-between;align-items:center;font-size:14px;color:var(--color-muted);margin-bottom:clamp(10px,1.4vw,20px);flex-shrink:0;background:#0f172ac2;border:1px solid rgba(226,232,240,.08);border-radius:var(--radius-panel);padding:10px 12px;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.status-left[data-v-82c32958]{display:flex;align-items:center;gap:10px}.readiness-text[data-v-82c32958]{color:var(--color-muted)}.session-controls[data-v-82c32958]{display:flex;align-items:center;gap:16px}.session-timer[data-v-82c32958]{display:flex;align-items:center;gap:8px;font-weight:600;color:var(--color-text);background:var(--color-surface);padding:8px 16px;border-radius:8px;border:1px solid var(--color-border)}.pulse-dot[data-v-82c32958]{width:8px;height:8px;border-radius:50%;background:#ef4444;box-shadow:0 0 #ef4444b3;animation:pulse-82c32958 1.5s infinite}@keyframes pulse-82c32958{0%{transform:scale(.95);box-shadow:0 0 #ef4444b3}70%{transform:scale(1);box-shadow:0 0 0 10px #ef444400}to{transform:scale(.95);box-shadow:0 0 #ef444400}}.btn[data-v-82c32958]{padding:8px 24px;border-radius:8px;font-weight:600;cursor:pointer;border:none;transition:opacity .2s}.btn[data-v-82c32958]:hover{opacity:.9}.btn-primary[data-v-82c32958]{background:linear-gradient(135deg,var(--brand-gradient-start),var(--brand-gradient-end));color:#fff}.btn-danger[data-v-82c32958]{background:#ef4444;color:#fff}.modal-overlay[data-v-82c32958]{position:fixed;top:0;right:0;bottom:0;left:0;background:#000c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:100}.modal-content[data-v-82c32958]{background:var(--color-surface);border:1px solid var(--color-border);padding:32px;border-radius:var(--radius-panel);width:90%;max-width:800px;max-height:90vh;overflow-y:auto}.modal-content h2[data-v-82c32958]{font-size:24px;margin-bottom:24px;color:var(--color-text);text-align:center}.report-grid[data-v-82c32958]{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;margin-bottom:32px}.report-card[data-v-82c32958]{background:var(--color-bg);padding:16px;border-radius:var(--radius-panel);border:1px solid var(--color-border)}.report-card h4[data-v-82c32958]{font-size:18px;margin-bottom:12px;color:var(--color-text)}.report-stats p[data-v-82c32958]{display:flex;justify-content:space-between;margin-bottom:8px;font-size:14px;color:var(--color-muted)}.modal-actions[data-v-82c32958]{display:flex;justify-content:center}.dot[data-v-82c32958]{width:8px;height:8px;border-radius:50%;flex-shrink:0}.dot-green[data-v-82c32958]{background:#22c55e;box-shadow:0 0 6px #22c55e}.dot-red[data-v-82c32958]{background:#ef4444}.empty-state[data-v-82c32958]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;flex-grow:1;color:var(--color-muted);background:#0f172a85;border:1px solid rgba(226,232,240,.08);border-radius:var(--radius-panel)}.empty-icon[data-v-82c32958]{font-size:60px}.empty-state p[data-v-82c32958]{font-size:20px;font-weight:600}.empty-state .sub[data-v-82c32958]{font-size:14px;font-weight:400}.grid[data-v-82c32958]{display:grid;gap:clamp(10px,1.35vw,20px);flex-grow:1;min-height:0}.grid-1[data-v-82c32958]{grid-template-columns:1fr;grid-template-rows:1fr}.grid-2[data-v-82c32958]{grid-template-columns:repeat(2,1fr);grid-template-rows:1fr}.grid-3[data-v-82c32958]{grid-template-columns:repeat(3,1fr);grid-template-rows:1fr}.grid-4[data-v-82c32958]{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,1fr)}.grid-6[data-v-82c32958]{grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(2,1fr)}.grid-auto[data-v-82c32958]{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}@media (max-aspect-ratio: 1/1){.grid-2[data-v-82c32958]{grid-template-columns:1fr;grid-template-rows:repeat(2,1fr)}.grid-3[data-v-82c32958]{grid-template-columns:1fr;grid-template-rows:repeat(3,1fr)}.grid-4[data-v-82c32958]{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,1fr)}.grid-6[data-v-82c32958]{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(3,1fr)}.dashboard[data-v-82c32958]{padding:16px}}.alerts-container[data-v-82c32958]{display:flex;flex-direction:column;gap:8px;margin-bottom:16px;flex-shrink:0}.alert-item[data-v-82c32958]{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:var(--radius-panel);font-size:14px}.alert-item.danger[data-v-82c32958]{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#ef4444}.alert-item.offline[data-v-82c32958]{background:#9ca3af1a;border:1px solid rgba(156,163,175,.3);color:#9ca3af}@media (max-width: 768px){.dashboard[data-v-82c32958]{padding:12px}.status-bar[data-v-82c32958]{flex-direction:column;align-items:stretch;gap:16px}.status-left[data-v-82c32958]{justify-content:center}.session-controls[data-v-82c32958]{width:100%;justify-content:space-between}.session-timer[data-v-82c32958]{flex-grow:1;justify-content:center}.grid[data-v-82c32958]{grid-template-columns:1fr!important;grid-auto-rows:minmax(178px,auto)}.modal-overlay[data-v-82c32958]{align-items:flex-start;padding:calc(12px + env(safe-area-inset-top)) 12px 12px}.modal-content[data-v-82c32958]{width:100%;max-height:calc(100vh - 24px - env(safe-area-inset-top));padding:16px}.report-grid[data-v-82c32958]{grid-template-columns:1fr}}@media (orientation: landscape) and (max-height: 560px){body.display-theme{height:100svh;min-height:0;overflow:hidden;padding:max(8px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left))}.status-bar[data-v-82c32958]{margin-bottom:8px;padding:6px 8px;font-size:12px;gap:8px}.status-left[data-v-82c32958]{gap:7px}.readiness-text[data-v-82c32958]{display:none}.session-controls[data-v-82c32958]{gap:8px}.session-timer[data-v-82c32958],.btn[data-v-82c32958]{padding:5px 8px}.alerts-container[data-v-82c32958]{display:none}.grid[data-v-82c32958]{gap:8px}}.history-page[data-v-f037a4b4]{padding:clamp(16px,3vw,32px);max-width:1120px;margin:0 auto;display:flex;flex-direction:column;gap:20px}.header h2[data-v-f037a4b4]{font-size:24px;font-weight:800}.header p[data-v-f037a4b4]{color:var(--color-muted);margin-top:4px}.filters[data-v-f037a4b4]{display:flex;gap:12px;margin-bottom:16px}.filter-input[data-v-f037a4b4]{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text);padding:10px 12px;border-radius:8px}.filter-input[data-v-f037a4b4]:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 4px #22c55e1f}.btn[data-v-f037a4b4]{padding:8px 16px;border-radius:8px;font-weight:600;cursor:pointer;border:none}.btn-primary[data-v-f037a4b4]{background:linear-gradient(135deg,var(--brand-gradient-start),var(--brand-gradient-end));color:#fff}.btn-secondary[data-v-f037a4b4]{background:var(--color-surface-2);color:var(--color-text);border:1px solid var(--color-border)}.btn[data-v-f037a4b4]:disabled{opacity:.5;cursor:not-allowed}.sessions-grid[data-v-f037a4b4]{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.session-card[data-v-f037a4b4]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-panel);padding:20px;cursor:pointer;transition:transform .2s,box-shadow .2s;box-shadow:var(--shadow-soft)}.session-card[data-v-f037a4b4]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a;border-color:var(--color-accent)}.session-header[data-v-f037a4b4]{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.session-header h3[data-v-f037a4b4]{font-size:16px;font-weight:700;margin:0}.status-badge[data-v-f037a4b4]{padding:4px 8px;border-radius:6px;font-size:12px;font-weight:600}.status-badge.active[data-v-f037a4b4]{background:#22c55e33;color:#4ade80}.status-badge.completed[data-v-f037a4b4]{background:var(--color-surface-2);color:var(--color-muted)}.session-meta[data-v-f037a4b4]{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--color-muted)}.modal-overlay[data-v-f037a4b4]{position:fixed;top:0;right:0;bottom:0;left:0;background:#000c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:100}.modal-content[data-v-f037a4b4]{background:var(--color-surface);border:1px solid var(--color-border);padding:32px;border-radius:var(--radius-panel);width:90%;max-width:900px;max-height:90vh;overflow-y:auto}.modal-header[data-v-f037a4b4]{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.modal-header h2[data-v-f037a4b4]{margin:0;font-size:22px}.report-meta[data-v-f037a4b4]{margin-bottom:24px;color:var(--color-muted);font-size:14px}.report-grid[data-v-f037a4b4]{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px;margin-bottom:32px}.report-card[data-v-f037a4b4]{background:var(--color-bg);padding:16px;border-radius:var(--radius-panel);border:1px solid var(--color-border)}.report-card h4[data-v-f037a4b4]{font-size:16px;margin-bottom:12px;color:var(--color-text);display:flex;justify-content:space-between;align-items:center}.mac-text[data-v-f037a4b4]{font-size:12px;color:var(--color-muted);font-weight:400}.report-stats p[data-v-f037a4b4]{display:flex;justify-content:space-between;margin-bottom:8px;font-size:14px;color:var(--color-muted)}.zone-bars[data-v-f037a4b4]{margin-top:16px;display:flex;flex-direction:column;gap:6px}.zone-row[data-v-f037a4b4]{display:flex;align-items:center;gap:8px;font-size:12px}.z-label[data-v-f037a4b4]{width:20px;color:var(--color-muted);font-weight:600}.z-bar-bg[data-v-f037a4b4]{flex-grow:1;height:6px;background:var(--color-surface-2);border-radius:3px;overflow:hidden}.z-bar-fill[data-v-f037a4b4]{height:100%;border-radius:3px;transition:width .3s}.z-val[data-v-f037a4b4]{width:35px;text-align:right;color:var(--color-text);font-weight:500;font-variant-numeric:tabular-nums}.modal-actions[data-v-f037a4b4]{display:flex;justify-content:center}.text-red-500[data-v-f037a4b4]{color:#ef4444}.text-orange-500[data-v-f037a4b4]{color:#f97316}@media (max-width: 768px){.history-page[data-v-f037a4b4]{padding:16px 12px;gap:14px}.filters[data-v-f037a4b4]{flex-direction:column;margin-bottom:4px}.filter-input[data-v-f037a4b4],.btn[data-v-f037a4b4]{width:100%}.sessions-grid[data-v-f037a4b4]{grid-template-columns:1fr}.session-card[data-v-f037a4b4]{padding:16px}.session-header[data-v-f037a4b4]{align-items:flex-start;gap:10px}.modal-overlay[data-v-f037a4b4]{align-items:flex-start;padding:calc(12px + env(safe-area-inset-top)) 12px 12px}.modal-content[data-v-f037a4b4]{width:100%;max-height:calc(100vh - 24px - env(safe-area-inset-top));padding:16px}.modal-header[data-v-f037a4b4]{flex-direction:column;align-items:stretch;gap:12px}.report-grid[data-v-f037a4b4]{grid-template-columns:1fr}}.root-page[data-v-7a77a051]{padding:clamp(16px,3vw,32px);max-width:1220px;margin:0 auto;display:flex;flex-direction:column;gap:20px}.header h2[data-v-7a77a051]{font-size:24px;font-weight:800}.header p[data-v-7a77a051]{color:var(--color-muted);margin-top:4px}.health-grid[data-v-7a77a051]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:12px}.health-card[data-v-7a77a051]{background:var(--color-surface);border:1px solid var(--color-border);padding:20px;border-radius:var(--radius-panel);box-shadow:var(--shadow-soft)}.health-card h4[data-v-7a77a051]{font-size:13px;color:var(--color-muted);margin-bottom:8px}.status[data-v-7a77a051]{font-size:20px;font-weight:800}.status.ok[data-v-7a77a051]{color:#22c55e}.status.err[data-v-7a77a051]{color:#ef4444}.status.num[data-v-7a77a051]{color:var(--color-text)}.tabs[data-v-7a77a051]{display:flex;gap:8px;border-bottom:1px solid var(--color-border);padding-bottom:12px}.tabs button[data-v-7a77a051]{background:transparent;border:none;padding:8px 16px;font-size:15px;font-weight:600;color:var(--color-muted);cursor:pointer;border-radius:8px}.tabs button[data-v-7a77a051]:hover{background:var(--color-surface-2)}.tabs button.active[data-v-7a77a051]{color:#fff;background:linear-gradient(135deg,var(--brand-gradient-start),var(--brand-gradient-end))}.tabs button span[data-v-7a77a051]{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;margin-left:6px;padding:0 7px;border-radius:999px;background:var(--color-surface-2);color:var(--color-muted);font-size:12px;font-weight:800}.tabs button.active span[data-v-7a77a051]{background:#ffffff38;color:#fff}.table-card[data-v-7a77a051]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-panel);overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;box-shadow:var(--shadow-soft)}.table-card[data-v-7a77a051]::-webkit-scrollbar{height:8px}.table-card[data-v-7a77a051]::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:999px}.root-table[data-v-7a77a051]{width:100%;border-collapse:collapse;table-layout:fixed}.tenants-table[data-v-7a77a051]{min-width:820px}.accounts-table[data-v-7a77a051]{min-width:1040px}.root-devices-table[data-v-7a77a051]{min-width:900px}.col-status[data-v-7a77a051]{width:92px}.col-tenant-id[data-v-7a77a051]{width:190px}.col-tenant-name[data-v-7a77a051]{width:260px}.col-email[data-v-7a77a051]{width:280px}.col-member[data-v-7a77a051]{width:140px}.col-device-id[data-v-7a77a051]{width:280px}.col-platform[data-v-7a77a051]{width:96px}.col-hr[data-v-7a77a051]{width:90px}.col-role[data-v-7a77a051]{width:128px}.col-plan[data-v-7a77a051]{width:170px}.col-expires[data-v-7a77a051]{width:130px}.col-created[data-v-7a77a051],.col-seen[data-v-7a77a051]{width:160px}.col-actions[data-v-7a77a051]{width:180px}thead tr[data-v-7a77a051]{background:var(--color-surface-2)}th[data-v-7a77a051]{text-align:left;padding:14px 20px;font-size:13px;font-weight:700;color:var(--color-muted)}td[data-v-7a77a051]{padding:16px 20px;font-size:14px;border-top:1px solid var(--color-border);vertical-align:middle}td code[data-v-7a77a051]{background:var(--color-bg);padding:4px 8px;border-radius:6px;font-size:13px;color:var(--color-accent)}.truncate-cell[data-v-7a77a051],.time-cell[data-v-7a77a051]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.device-id-stack[data-v-7a77a051]{min-width:0;display:flex;flex-direction:column;gap:6px}.field-caption[data-v-7a77a051]{color:var(--color-muted);font-size:11px;font-weight:600}.code-chip[data-v-7a77a051]{display:inline-block;max-width:100%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle}.numeric-cell[data-v-7a77a051]{white-space:nowrap}.badge[data-v-7a77a051]{background:#ffffff1a;padding:4px 10px;border-radius:6px;font-size:12px;font-weight:600}.btn-secondary[data-v-7a77a051]{background:var(--color-surface-2);border:1px solid var(--color-border);padding:6px 12px;border-radius:8px;color:var(--color-text);cursor:pointer}.btn-secondary[data-v-7a77a051]:disabled{cursor:not-allowed;opacity:.5}.btn-del[data-v-7a77a051]{background:transparent;border:1px solid var(--system-error);color:var(--system-error);padding:6px 12px;border-radius:8px;cursor:pointer}.btn-del[data-v-7a77a051]:disabled{opacity:.3;cursor:not-allowed}.btn-edit[data-v-7a77a051]{background:var(--color-surface-2);border:1px solid var(--color-border);color:var(--color-text);padding:6px 12px;border-radius:8px;cursor:pointer}.btn-edit[data-v-7a77a051]:disabled{opacity:.45;cursor:not-allowed}.btn-save[data-v-7a77a051]{background:linear-gradient(135deg,var(--brand-gradient-start),var(--brand-gradient-end));border:none;color:#fff;padding:10px 16px;border-radius:8px;font-weight:700;cursor:pointer}.btn-save[data-v-7a77a051]:disabled{opacity:.55;cursor:not-allowed}.inline-select[data-v-7a77a051]{width:100%;min-width:0;background:var(--color-bg);color:var(--color-text);border:1px solid var(--color-border);border-radius:8px;padding:7px 8px}.plan-stack[data-v-7a77a051]{display:flex;flex-direction:column;align-items:flex-start;gap:6px}.modal-overlay[data-v-7a77a051]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#0f172a8c;display:flex;align-items:center;justify-content:center;padding:24px}.modal-card[data-v-7a77a051]{width:min(760px,100%);max-height:calc(100vh - 48px);overflow:auto;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-panel);padding:22px;box-shadow:0 20px 50px #00000047}.modal-header[data-v-7a77a051]{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:18px}.modal-header h3[data-v-7a77a051]{font-size:20px;font-weight:800}.modal-header p[data-v-7a77a051]{color:var(--color-muted);margin-top:4px}.form-grid[data-v-7a77a051]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.form-grid label[data-v-7a77a051]{display:flex;flex-direction:column;gap:8px;color:var(--color-muted);font-size:13px;font-weight:700}.form-grid input[data-v-7a77a051],.form-grid select[data-v-7a77a051],.form-grid textarea[data-v-7a77a051]{width:100%;background:var(--color-bg);color:var(--color-text);border:1px solid var(--color-border);border-radius:8px;padding:10px 12px;font-size:14px}.form-grid input[data-v-7a77a051]:focus,.form-grid select[data-v-7a77a051]:focus,.form-grid textarea[data-v-7a77a051]:focus,.inline-select[data-v-7a77a051]:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 4px #22c55e1f}.form-wide[data-v-7a77a051]{grid-column:1 / -1}.quota-preview[data-v-7a77a051]{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.quota-preview span[data-v-7a77a051]{background:var(--color-surface-2);border:1px solid var(--color-border);color:var(--color-text);border-radius:8px;padding:6px 10px;font-size:12px;font-weight:700}.modal-actions[data-v-7a77a051]{display:flex;justify-content:flex-end;margin-top:18px}.account-groups[data-v-7a77a051]{display:flex;flex-direction:column;gap:12px}.ops-toolbar[data-v-7a77a051]{display:flex;justify-content:space-between;gap:16px;align-items:flex-end}.ops-toolbar h3[data-v-7a77a051]{font-size:18px;font-weight:800}.ops-toolbar p[data-v-7a77a051]{color:var(--color-muted);margin-top:4px;font-size:13px}.ops-toolbar-actions[data-v-7a77a051]{display:flex;gap:8px;align-items:flex-end;flex-wrap:wrap;justify-content:flex-end}.search-control[data-v-7a77a051]{min-width:min(360px,100%);display:flex;flex-direction:column;gap:6px;color:var(--color-muted);font-size:12px;font-weight:800}.search-control input[data-v-7a77a051]{width:100%;background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-control);padding:9px 12px;font-size:14px}.search-control input[data-v-7a77a051]:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 4px #22c55e1f}.ops-summary-grid[data-v-7a77a051]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.ops-summary-card[data-v-7a77a051]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-panel);padding:14px 16px;box-shadow:var(--shadow-soft)}.ops-summary-card span[data-v-7a77a051]{display:block;color:var(--color-muted);font-size:12px;font-weight:800}.ops-summary-card strong[data-v-7a77a051]{display:block;margin-top:6px;font-size:22px;font-weight:900}.device-groups[data-v-7a77a051]{display:flex;flex-direction:column;gap:12px}.device-toolbar[data-v-7a77a051]{display:flex;justify-content:space-between;gap:16px;align-items:center}.device-toolbar h3[data-v-7a77a051]{font-size:18px;font-weight:800}.device-toolbar p[data-v-7a77a051]{color:var(--color-muted);margin-top:4px;font-size:13px}.device-toolbar-actions[data-v-7a77a051]{display:flex;gap:8px;white-space:nowrap}.empty-devices[data-v-7a77a051]{padding:24px;color:var(--color-muted)}.account-group[data-v-7a77a051],.device-group[data-v-7a77a051]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-panel);overflow:hidden;box-shadow:var(--shadow-soft)}.tenant-group-header[data-v-7a77a051],.device-group-header[data-v-7a77a051]{width:100%;display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:12px;border:none;background:var(--color-surface-2);color:var(--color-text);cursor:pointer;padding:14px 18px;text-align:left}.group-chevron[data-v-7a77a051]{font-size:20px;line-height:1;color:var(--color-muted)}.tenant-title[data-v-7a77a051]{min-width:0;display:flex;align-items:center;gap:10px}.tenant-title strong[data-v-7a77a051]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tenant-stats[data-v-7a77a051]{display:flex;gap:8px;color:var(--color-muted);font-size:12px;font-weight:700}.tenant-stats span[data-v-7a77a051]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;padding:4px 8px}.tenant-group-body[data-v-7a77a051],.device-group-body[data-v-7a77a051]{overflow-x:auto;-webkit-overflow-scrolling:touch}.action-buttons[data-v-7a77a051]{display:flex;align-items:center;justify-content:flex-start;gap:10px;white-space:nowrap}.actions-col[data-v-7a77a051],.actions-sticky[data-v-7a77a051]{position:sticky;right:0}.actions-col[data-v-7a77a051]{z-index:3;background:var(--color-surface-2)}.actions-sticky[data-v-7a77a051]{z-index:2;background:var(--color-surface);box-shadow:-12px 0 18px #0f172a14}.badge-online[data-v-7a77a051]{background:#22c55e33;color:#4ade80}.badge-offline[data-v-7a77a051]{background:#f59e0b33;color:#fbbf24}.badge-unknown[data-v-7a77a051]{background:#9ca3af1a;color:#9ca3af}@media (max-width: 768px){.root-page[data-v-7a77a051]{padding:16px;gap:14px}.health-grid[data-v-7a77a051]{grid-template-columns:1fr}.tabs[data-v-7a77a051]{overflow-x:auto;white-space:nowrap;padding-bottom:8px;-webkit-overflow-scrolling:touch}.tabs[data-v-7a77a051]::-webkit-scrollbar{display:none}.table-card[data-v-7a77a051]{overflow:visible}.modal-overlay[data-v-7a77a051]{align-items:flex-start;padding:calc(12px + env(safe-area-inset-top)) 12px 12px}.modal-card[data-v-7a77a051]{max-height:calc(100vh - 24px - env(safe-area-inset-top));padding:16px}.modal-header[data-v-7a77a051]{flex-direction:column}.ops-toolbar[data-v-7a77a051]{align-items:stretch;flex-direction:column}.ops-toolbar-actions[data-v-7a77a051]{width:100%;display:grid;grid-template-columns:1fr}.search-control[data-v-7a77a051]{width:100%;grid-column:1 / -1}.ops-toolbar-actions .btn-edit[data-v-7a77a051]{width:100%;padding-left:8px;padding-right:8px}.ops-summary-grid[data-v-7a77a051]{grid-template-columns:repeat(2,minmax(0,1fr))}.device-toolbar[data-v-7a77a051]{align-items:flex-start;flex-direction:column}.device-toolbar-actions[data-v-7a77a051]{width:100%;flex-wrap:wrap}.tenant-group-header[data-v-7a77a051],.device-group-header[data-v-7a77a051]{grid-template-columns:24px minmax(0,1fr)}.tenant-title[data-v-7a77a051]{align-items:flex-start;flex-direction:column;gap:6px}.tenant-stats[data-v-7a77a051]{grid-column:2;flex-wrap:wrap}.tenant-group-body[data-v-7a77a051],.device-group-body[data-v-7a77a051]{overflow:visible}.root-table[data-v-7a77a051],.tenants-table[data-v-7a77a051],.accounts-table[data-v-7a77a051],.root-devices-table[data-v-7a77a051]{min-width:0}.root-table colgroup[data-v-7a77a051],.root-table thead[data-v-7a77a051]{display:none}.root-table[data-v-7a77a051],.root-table tbody[data-v-7a77a051],.root-table tr[data-v-7a77a051],.root-table td[data-v-7a77a051]{display:block;width:100%}.root-table tbody[data-v-7a77a051]{padding:8px}.root-table tr[data-v-7a77a051]{padding:12px 14px;border-top:1px solid var(--color-border);background:var(--color-surface)}.root-table tr[data-v-7a77a051]:first-child{border-top:none}.root-table td[data-v-7a77a051]{display:grid;grid-template-columns:92px minmax(0,1fr);align-items:center;gap:12px;padding:8px 0;border-top:none}.root-table td[data-v-7a77a051]:before{content:attr(data-label);color:var(--color-muted);font-size:12px;font-weight:700}.root-table td.actions-sticky[data-v-7a77a051]{position:static;display:block;background:transparent;box-shadow:none;padding-top:12px;padding-bottom:4px}.root-table td.actions-sticky[data-v-7a77a051]:before{content:none}td.actions-sticky[data-v-7a77a051]{padding-left:10px;padding-right:8px}.action-buttons[data-v-7a77a051]{width:100%;gap:6px;justify-content:flex-start;flex-wrap:wrap}.btn-del[data-v-7a77a051],.btn-secondary[data-v-7a77a051],.btn-edit[data-v-7a77a051]{padding-left:10px;padding-right:10px}.form-grid[data-v-7a77a051]{grid-template-columns:1fr}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,sans-serif;background:linear-gradient(180deg,#bbf7d057,#f8fafc00 260px),var(--color-bg);color:var(--color-text);min-height:100vh;transition:background-color .3s ease,color .3s ease;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}:root{--brand-green: #22C55E;--brand-gradient-start: #4ADE80;--brand-gradient-end: #16A34A;--brand-light-green: #BBF7D0;--brand-soft-green: #86EFAC;--brand-deep-green: #15803D;--brand-dark-green: #14532D;--system-warning: #F59E0B;--system-error: #EF4444;--system-info: #3B82F6;--color-bg: #F8FAFC;--color-surface: #FFFFFF;--color-surface-2: #F1F5F9;--color-surface-hover: #F1F5F9;--color-border: #E2E8F0;--color-accent: var(--brand-green);--color-primary: var(--brand-green);--color-text: #0F172A;--color-muted: #475569;--color-tertiary: #94A3B8;--shadow-card: 0 18px 45px rgba(15, 23, 42, .08);--shadow-soft: 0 10px 30px rgba(15, 23, 42, .06);--radius-panel: 8px;--radius-control: 8px}.dark-theme{--color-bg: #020617;--color-surface: #0F172A;--color-surface-2: #111827;--color-surface-hover: #172033;--color-border: #1F2A3B;--color-accent: var(--brand-green);--color-primary: var(--brand-green);--color-text: #E2E8F0;--color-muted: #94A3B8;--color-tertiary: #94A3B8;--shadow-card: 0 24px 70px rgba(0, 0, 0, .36);background:linear-gradient(180deg,#14532d57,#02061700 320px),var(--color-bg)}a{text-decoration:none;color:inherit}button{cursor:pointer;border:none;outline:none;font-family:inherit}input,select,textarea{font-family:inherit}input,select,textarea,button{font-size:16px}input,select,textarea{color:var(--color-text)}::selection{background:#22c55e38}#app{min-height:100vh}@media (max-width: 768px){body{background:linear-gradient(180deg,#bbf7d047,#f8fafc00 210px),var(--color-bg)}.dark-theme{background:linear-gradient(180deg,#14532d47,#02061700 240px),var(--color-bg)}}@media (orientation: landscape) and (max-height: 560px){html.display-theme-root,body.display-theme{overflow:hidden}body.display-theme .dashboard{height:100svh;min-height:0;overflow:hidden;padding:max(8px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left))}}
