/* ═══════════════════════════════════════════════════════════
   Vista Perfil — solo lo que .profile-card (css/base.css) no cubre.
   Cero valores de marca/gimnasio: todo sale de --variables de base.css,
   salvo los semánticos fijos de apto médico (ok/vencido) que el motor ya
   usa igual en base.css (#22c55e / #ef4444) — no son color de marca.
   ═══════════════════════════════════════════════════════════ */
.profile-row-val{color:var(--text);font-weight:700;text-align:right}
.profile-row-sub{color:var(--muted);font-size:.78rem;font-weight:400}
.profile-muted{color:var(--muted);font-weight:400}

.profile-qr{text-align:center;margin-bottom:16px}
.profile-qr-label{color:var(--muted);font-size:12px;margin:0 0 8px}
.profile-qr-code{display:inline-block;background:var(--surface);border:1px solid var(--line);color:var(--text);padding:8px 16px;font-size:13px;word-break:break-all}

.profile-apto{text-align:center;margin-bottom:16px;font-size:13px}
.profile-apto-ok{color:#4ade80;border-color:#22c55e}
.profile-apto-expired{color:#f87171;border-color:#ef4444}

.profile-logout{margin-top:18px;max-width:420px}

/* v9: tarjetas en grilla */
.pf-area{max-width:1080px}
.pf-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;align-items:start}
.pf-card .profile-card{margin-bottom:14px}
.pf-card-title{margin:8px 0 12px;font:800 28px/1.02 var(--heading);text-transform:uppercase}
.pf-muted{margin:0 0 14px;color:var(--muted);font-size:12px;line-height:1.6}
.pf-more{display:inline-block;margin-top:10px;text-decoration:none;color:var(--brand)}
.pf-pwd{margin-top:4px}
.pf-links{display:grid;gap:8px}
/* Dónde tenés la web abierta (GET api/sessions). */
.pf-sessions{list-style:none;margin:0 0 14px;padding:0;display:grid;gap:8px}
.pf-sessions li{padding:10px 12px;border-radius:var(--radius-sm);background:var(--field)}
.pf-sessions b{font-size:13px}
.pf-sessions small{display:block;margin-top:3px;color:var(--muted);font-size:11px;overflow-wrap:anywhere}
.pf-tag{display:inline-block;margin-left:6px;padding:1px 8px;border:1px solid var(--brand-line);border-radius:20px;color:var(--brand);font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
