:root {
    --negro: #0a0a0a;
    --negro-suave: #161616;
    --dorado: #D4AF37;
    --dorado-claro: #f0d878;
    --blanco: #ffffff;
    --gris: #999999;
    --borde: #2a2a2a;
}

* { box-sizing: border-box; }

body {
    margin: 0;
    font-family: 'Segoe UI', Arial, sans-serif;
    background: var(--negro);
    color: var(--blanco);
    min-height: 100vh;
}

a { color: var(--dorado); text-decoration: none; }

.contenedor {
    max-width: 480px;
    margin: 0 auto;
    padding: 24px 20px 60px;
}

.contenedor-ancho {
    max-width: 1100px;
    margin: 0 auto;
    padding: 24px 20px 60px;
}

.logo-marca {
    text-align: center;
    font-size: 22px;
    font-weight: 700;
    letter-spacing: 2px;
    margin-bottom: 24px;
    color: var(--dorado);
}

.tarjeta {
    background: linear-gradient(145deg, #1a1a1a, #0a0a0a);
    border: 1px solid var(--dorado);
    border-radius: 18px;
    padding: 26px;
    box-shadow: 0 10px 30px rgba(212,175,55,0.15);
    transition: box-shadow 0.25s ease;
}

.tarjeta:hover {
    box-shadow: 0 14px 36px rgba(212,175,55,0.22);
}

.tarjeta-digital {
    background: linear-gradient(145deg, #1c1c1c, #050505);
    border: 1.5px solid var(--dorado);
    border-radius: 20px;
    padding: 28px;
    position: relative;
    overflow: hidden;
}

.tarjeta-digital::before {
    content: '';
    position: absolute;
    top: -40%;
    right: -20%;
    width: 220px;
    height: 220px;
    background: radial-gradient(circle, rgba(212,175,55,0.15), transparent 70%);
}

.tarjeta-digital .negocio-nombre {
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    color: var(--gris);
    margin-bottom: 18px;
}

.tarjeta-digital .cliente-nombre {
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 16px;
}

.nivel-badge {
    display: inline-block;
    background: var(--dorado);
    color: var(--negro);
    font-weight: 700;
    font-size: 12px;
    letter-spacing: 1px;
    padding: 5px 14px;
    border-radius: 20px;
    margin-bottom: 18px;
}

.tarjeta-stats {
    display: flex;
    justify-content: space-between;
    margin-top: 18px;
}

.tarjeta-stats div { text-align: left; }

.tarjeta-stats .valor {
    font-size: 20px;
    font-weight: 700;
    color: var(--dorado-claro);
}

.tarjeta-stats .etiqueta {
    font-size: 11px;
    color: var(--gris);
    text-transform: uppercase;
    letter-spacing: 1px;
}

.titulo {
    font-size: 24px;
    font-weight: 700;
    text-align: center;
    margin-bottom: 6px;
}

.subtitulo {
    text-align: center;
    color: var(--gris);
    margin-bottom: 26px;
    font-size: 14px;
}

.beneficios-lista {
    list-style: none;
    padding: 0;
    margin: 20px 0;
}

.beneficios-lista li {
    padding: 8px 0;
    font-size: 15px;
}

label {
    display: block;
    font-size: 13px;
    color: var(--gris);
    margin: 16px 0 6px;
}

input[type=text], input[type=tel], input[type=email], input[type=number], input[type=password], select {
    width: 100%;
    padding: 13px 14px;
    background: var(--negro-suave);
    border: 1px solid var(--borde);
    border-radius: 10px;
    color: var(--blanco);
    font-size: 15px;
    transition: border-color 0.2s ease;
}

input:focus, select:focus {
    outline: none;
    border-color: var(--dorado);
}

.btn {
    display: block;
    width: 100%;
    padding: 15px;
    margin-top: 22px;
    background: var(--dorado);
    color: var(--negro);
    border: none;
    border-radius: 10px;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 0.5px;
    cursor: pointer;
    text-align: center;
    transition: background 0.2s ease, transform 0.1s ease;
}

.btn:active { transform: scale(0.98); }

.btn:hover { background: var(--dorado-claro); }

.btn-secundario {
    background: transparent;
    border: 1px solid var(--dorado);
    color: var(--dorado);
}

.checkbox-linea {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 16px;
    font-size: 13px;
    color: var(--gris);
}

.checkbox-linea input { width: auto; }

.mensaje-error {
    background: rgba(200,50,50,0.15);
    border: 1px solid #c83232;
    color: #ff9c9c;
    padding: 12px 14px;
    border-radius: 8px;
    font-size: 14px;
    margin-bottom: 16px;
}

.mensaje-exito {
    background: rgba(50,180,100,0.15);
    border: 1px solid #32b464;
    color: #9cffbe;
    padding: 12px 14px;
    border-radius: 8px;
    font-size: 14px;
    margin-bottom: 16px;
}

/* --- Panel de negocio --- */
.topbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 24px;
    border-bottom: 1px solid var(--borde);
}

.topbar .marca { color: var(--dorado); font-weight: 700; letter-spacing: 1px; }

.topbar nav a {
    color: var(--gris);
    margin-left: 20px;
    font-size: 14px;
}

.topbar nav a.activo, .topbar nav a:hover { color: var(--dorado); }

.stats-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 16px;
    margin: 24px 0;
}

.stat-card {
    background: var(--negro-suave);
    border: 1px solid var(--borde);
    border-radius: 14px;
    padding: 20px;
    transition: border-color 0.2s ease, transform 0.2s ease;
}

.stat-card:hover {
    border-color: var(--dorado);
    transform: translateY(-2px);
}

.stat-card .num {
    font-size: 28px;
    font-weight: 700;
    color: var(--dorado);
}

.stat-card .lbl {
    font-size: 12px;
    color: var(--gris);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-top: 4px;
}

table {
    width: 100%;
    border-collapse: collapse;
    margin-top: 10px;
}

th, td {
    text-align: left;
    padding: 12px 10px;
    border-bottom: 1px solid var(--borde);
    font-size: 14px;
}

th { color: var(--gris); text-transform: uppercase; font-size: 11px; letter-spacing: 0.5px; }

.badge {
    display: inline-block;
    padding: 3px 10px;
    border-radius: 12px;
    font-size: 11px;
    font-weight: 700;
    background: rgba(212,175,55,0.15);
    color: var(--dorado);
}

.qr-box {
    background: white;
    padding: 18px;
    border-radius: 14px;
    text-align: center;
    margin: 20px 0;
}

.qr-box img { max-width: 220px; }

.form-inline {
    display: flex;
    gap: 10px;
    align-items: flex-end;
    flex-wrap: wrap;
}

.form-inline > div { flex: 1; min-width: 160px; }

@media (max-width: 700px) {
    .topbar { flex-direction: column; gap: 10px; }
    .topbar nav a { margin: 0 10px; }
}

/* =========================================================
   CARD BLACK V7 - Branding / onboarding / customer club
   ========================================================= */
.brand-lockup,
.powered-brand {
    display:flex;
    justify-content:center;
    align-items:center;
    margin: 0 auto 18px;
}
.brand-lockup img { width:min(310px, 88%); height:auto; display:block; }
.powered-brand img { width:min(220px, 72%); height:auto; display:block; opacity:.95; }
.marca-img img { display:block; width:170px; max-height:48px; object-fit:contain; }
.marca-img { display:flex; align-items:center; }
.install-pill { color:#0a0a0a !important; background:#D4AF37; padding:5px 12px; border-radius:999px; font-weight:700; }

.paso-kicker {
    font-size:11px;
    font-weight:800;
    letter-spacing:1.6px;
    color:var(--dorado);
    text-transform:uppercase;
    margin-bottom:8px;
}
.texto-dorado { color:var(--dorado); letter-spacing:2px; }
.texto-centro-muted, .powered-by { text-align:center; color:#777; font-size:12px; margin-top:18px; }
.secure-link { font-size:12px; color:#8f8f8f; word-break:break-all; }
.muted { color:#999; }

.onboarding-wrap { max-width:760px; }
.onboarding-progress { height:5px; background:#202020; border-radius:99px; overflow:hidden; margin:0 0 24px; }
.onboarding-progress span { display:block; width:100%; height:100%; background:linear-gradient(90deg,#8a6d1a,#D4AF37,#f0d878); }
.onboarding-form { display:grid; gap:18px; }
.onboarding-step { position:relative; padding-top:34px; }
.onboarding-step h2, .section-block h2, .qr-membership h2 { margin:0 0 12px; font-size:21px; }
.paso-num { position:absolute; right:22px; top:18px; font-size:28px; font-weight:900; color:rgba(212,175,55,.22); }
.grid-2 { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.choice-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.choice-card { margin:0; padding:16px; border:1px solid var(--borde); border-radius:14px; background:#111; color:#fff; cursor:pointer; }
.choice-card input { margin-right:8px; }
.choice-card strong { display:block; color:var(--dorado-claro); margin:6px 0; }
.choice-card span { display:block; color:#999; font-size:12px; line-height:1.4; }
.btn-grande { font-size:16px; padding:18px; }

input[type=color] {
    width:100%; height:48px; padding:4px; border:1px solid var(--borde); border-radius:10px; background:#161616;
}
input[type=file] {
    width:100%; padding:12px; background:#161616; border:1px solid var(--borde); border-radius:10px; color:#ddd;
}

.customer-public { background:radial-gradient(circle at 50% -20%, rgba(212,175,55,.12), transparent 38%), #050505; }
.public-club-card { position:relative; overflow:hidden; }
.business-logo { width:74px; height:74px; object-fit:contain; border-radius:16px; margin:0 auto 14px; display:block; background:rgba(255,255,255,.04); padding:6px; }
.business-logo-lg { width:96px; height:96px; }
.landing-benefits { text-align:left; max-width:320px; margin:20px auto; color:#ddd; }

.membership-card { box-shadow:0 20px 50px rgba(0,0,0,.45), 0 0 35px rgba(212,175,55,.10); }
.membership-topline { display:flex; align-items:center; gap:10px; color:#b7b7b7; text-transform:uppercase; letter-spacing:1.4px; font-size:11px; margin-bottom:22px; }
.membership-logo { width:40px; height:40px; object-fit:contain; border-radius:10px; background:rgba(255,255,255,.05); padding:4px; }
.membership-progress { margin:10px 0 0; font-size:13px; color:#d7c98a; }
.membership-progress.success { color:#9cffbe; }
.action-row { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.action-row .btn { margin-top:14px; }
.section-block { margin-top:28px; }
.section-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:15px; margin-bottom:12px; }
.section-heading h2 { margin:0; }
.section-heading > span { color:#d9c56f; font-weight:700; font-size:13px; }
.reward-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.reward-card { background:#121212; border:1px solid #292929; border-radius:16px; padding:16px; min-height:175px; display:flex; flex-direction:column; }
.reward-card h3 { margin:8px 0 6px; font-size:16px; }
.reward-card p { margin:0 0 8px; color:#aaa; font-size:12px; line-height:1.45; }
.reward-card small { color:#777; }
.reward-points { color:#D4AF37; font-weight:800; font-size:12px; letter-spacing:.4px; }
.reward-btn { margin-top:auto; padding:11px; font-size:12px; }
.reward-btn:disabled { opacity:.45; cursor:not-allowed; }
.qr-membership { margin-top:26px; text-align:center; }
.qr-membership img { width:220px; max-width:90%; border-radius:14px; background:#fff; padding:10px; }
.qr-membership p { color:#D4AF37; letter-spacing:2px; font-weight:700; }

.redemption-ticket { text-align:center; }
.redemption-ticket h1 { margin:8px 0 4px; }
.redemption-ticket > p { color:#999; }
.redemption-code { font-size:28px; font-weight:900; letter-spacing:4px; color:#D4AF37; padding:18px 8px; margin:20px 0; border:1px dashed #6b5a1f; border-radius:12px; background:#0d0d0d; }
.btn-inline { display:inline-block; width:auto; margin:3px; padding:8px 10px; font-size:12px; }

@media (max-width:900px){
    .topbar { align-items:flex-start; }
    .topbar nav { display:flex; gap:10px; overflow-x:auto; width:100%; padding-bottom:6px; }
    .topbar nav a { margin:0; white-space:nowrap; }
}
@media (max-width:600px){
    .grid-2,.choice-grid,.reward-grid,.action-row { grid-template-columns:1fr; }
    .brand-lockup img { width:min(290px,94%); }
    .membership-card { padding:22px; }
    .tarjeta-stats { gap:12px; }
    .tarjeta-stats .valor { font-size:18px; }
}

/* V7 business dashboard */
.dashboard-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin:12px 0 22px}.dashboard-head h1{margin:0 0 6px;font-size:30px}.dashboard-head p{margin:0;color:#999}.dashboard-actions{display:flex;gap:8px;flex-wrap:wrap}.dashboard-stats .stat-card{min-height:124px}.stat-kicker{font-size:11px;color:#8a8a8a;text-transform:uppercase;letter-spacing:.7px;margin-bottom:10px}.stat-card.attention{border-color:#5b4816}.dashboard-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:18px}.dashboard-side{display:grid;gap:18px;align-content:start}.health-score{font-size:46px;font-weight:900;color:#D4AF37}.health-card p{color:#aaa;font-size:13px;line-height:1.5}.health-bar{height:8px;background:#202020;border-radius:99px;overflow:hidden}.health-bar span{display:block;height:100%;background:linear-gradient(90deg,#8a6d1a,#D4AF37)}.action-card h3{font-size:18px;line-height:1.35}.responsive-table{overflow-x:auto}

/* V7 scanner + sales */
.input-action{display:flex;gap:8px;align-items:center}.input-action input{flex:1}.search-results{display:grid;gap:6px;margin-top:8px}.search-result{display:flex;justify-content:space-between;gap:12px;width:100%;padding:11px 12px;border:1px solid #2b2b2b;border-radius:10px;background:#121212;color:#fff;text-align:left;cursor:pointer}.search-result:hover{border-color:#D4AF37}.search-result span{color:#999;font-size:12px}.selected-customer{margin-top:10px;color:#D4AF37;font-size:14px;min-height:18px}.sale-preview{margin-top:16px;padding:14px;border:1px solid #2b2b2b;border-radius:12px;background:#101010}.sale-preview span{display:block;color:#777;font-size:11px;text-transform:uppercase}.sale-preview strong{display:block;color:#D4AF37;margin:4px 0}.sale-preview div{font-size:13px;color:#bbb}.scanner-card{position:relative;padding:12px;overflow:hidden}.scanner-card video{width:100%;display:block;border-radius:12px;background:#000;min-height:280px;object-fit:cover}.scanner-frame{position:absolute;inset:17% 16%;border:2px solid #D4AF37;border-radius:18px;box-shadow:0 0 0 9999px rgba(0,0,0,.18);pointer-events:none}.scanner-status{padding:12px;text-align:center;color:#aaa;font-size:13px}.found-customer{margin-top:14px;display:flex;justify-content:space-between;align-items:center;gap:10px}.found-customer strong,.found-customer span{display:block}.found-customer span{color:#999;font-size:12px;margin-top:3px}

/* V7 settings/rewards */
.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.settings-grid h2{margin-top:0;font-size:20px}.settings-submit{grid-column:1/-1}.reward-admin-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:20px}.reward-admin-card h2{margin:4px 0;font-size:18px}.reward-admin-meta{display:flex;justify-content:space-between;color:#999;font-size:12px;margin:18px 0 4px}

@media(max-width:900px){.dashboard-grid,.settings-grid{grid-template-columns:1fr}.reward-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-head{align-items:flex-start;flex-direction:column}}
@media(max-width:600px){.reward-admin-grid{grid-template-columns:1fr}.input-action{align-items:stretch;flex-direction:column}.dashboard-actions{width:100%}.dashboard-actions .btn{flex:1}.found-customer{align-items:stretch;flex-direction:column}}

/* V7 home / app entry */
.home-v7{background:radial-gradient(circle at 50% 0,rgba(212,175,55,.13),transparent 38%),#050505}.home-shell{max-width:680px;padding-top:22px}.home-logo img{width:min(330px,78%);max-height:360px;object-fit:contain}.home-copy{text-align:center;margin:0 auto 24px;max-width:560px}.home-copy h1{font-size:clamp(28px,5.8vw,46px);line-height:1.06;margin:8px 0 14px}.home-copy p{color:#aaa;font-size:15px;line-height:1.6}.persona-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:22px 0}.persona-card{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:18px;border:1px solid #2a2a2a;border-radius:16px;background:linear-gradient(145deg,#151515,#0d0d0d);color:#fff}.persona-card:hover{border-color:#D4AF37}.persona-icon{width:42px;height:42px;border-radius:12px;background:#D4AF37;color:#050505;font-weight:900;display:flex;align-items:center;justify-content:center}.persona-card strong,.persona-card span{display:block}.persona-card span{color:#8d8d8d;font-size:12px;margin-top:4px;line-height:1.35}.persona-card b{color:#D4AF37;font-size:22px}.home-links{display:flex;justify-content:center;gap:10px;font-size:12px;color:#666;margin-top:18px}.home-links a{color:#777}
@media(max-width:600px){.persona-grid{grid-template-columns:1fr}.home-logo img{width:min(300px,88%)}}

/* CARD BLACK V7.2 - QR local sin servicios externos */
.qr-local{width:min(320px,100%);aspect-ratio:1/1;margin:16px auto;background:#fff;padding:10px;border-radius:18px;box-sizing:border-box}
.qr-local svg{border-radius:8px}
.qr-membership-code{width:min(240px,100%)}
.redemption-qr{width:min(260px,100%)}

/* CARD BLACK V7.2 - wallet local del cliente */
.wallet-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}
.wallet-card{position:relative;min-height:140px;border:1px solid color-mix(in srgb,var(--wallet-accent) 62%,#222);border-radius:20px;background:linear-gradient(145deg,#111,#050505);overflow:hidden;box-shadow:0 16px 40px rgba(0,0,0,.22)}
.wallet-card:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:var(--wallet-accent)}
.wallet-card a{display:flex;min-height:140px;box-sizing:border-box;padding:22px;flex-direction:column;text-decoration:none;color:#fff}
.wallet-card strong{font-size:19px;margin:5px 0}.wallet-card span{color:#aaa;font-size:13px}.wallet-card small{color:var(--wallet-accent);margin-top:auto;font-weight:700}.wallet-card-kicker{font-size:10px;letter-spacing:2px;color:var(--wallet-accent)}
.wallet-remove{position:absolute;right:10px;top:9px;border:0;background:#1b1b1b;color:#999;border-radius:50%;width:28px;height:28px;cursor:pointer;font-size:18px;line-height:28px}.wallet-remove:hover{color:#fff}

/* =========================================================
   CARD BLACK V7.3 - roles, employee access and mobile shell
   ========================================================= */
.business-topbar{position:sticky;top:0;z-index:60;background:rgba(5,5,5,.96);backdrop-filter:blur(16px);border-bottom:1px solid #1f1f1f}
.actor-pill{display:flex;flex-direction:column;align-items:flex-end;gap:2px;min-width:110px;padding-left:12px;border-left:1px solid #2a2a2a}.actor-pill span{font-size:12px;color:#eee;max-width:150px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.actor-pill strong{font-size:9px;letter-spacing:1.1px;text-transform:uppercase;color:#D4AF37}
.login-alt{display:flex;justify-content:center;gap:8px;margin-top:16px;font-size:12px;color:#666}.login-alt a{color:#bfa84b}
.business-code-card{min-width:180px;padding:12px 16px;border:1px solid #4c411f;border-radius:14px;background:#10100d}.business-code-card span,.business-code-card strong{display:block}.business-code-card span{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:#888}.business-code-card strong{margin-top:5px;color:#D4AF37;letter-spacing:1.5px;font-size:17px}
.warning-text{color:#e7c968}.inline-actions{display:inline-block}.reset-details{display:inline-block;margin-left:6px;vertical-align:top}.reset-details summary{cursor:pointer;color:#c8b45e;font-size:12px}.reset-details form{margin-top:8px;min-width:210px}.reset-details input{margin:0 0 6px;padding:8px;font-size:12px}.role-guide{margin-top:18px;padding-top:16px;border-top:1px solid #292929;color:#999;font-size:12px;line-height:1.5}.role-guide strong{color:#D4AF37}.role-guide p{margin:8px 0}.account-chip{display:flex;justify-content:space-between;align-items:center;margin:14px 0 22px;padding:12px 14px;border:1px solid #2a2a2a;border-radius:12px;background:#111}.account-chip span{color:#eee}.account-chip strong{color:#D4AF37;font-size:10px;letter-spacing:1px}
.mobile-business-nav,.mobile-more-sheet{display:none}

@media(max-width:900px){
  body{padding-bottom:76px}
  .business-topbar{position:sticky;top:0;flex-direction:row;align-items:center;padding:10px 14px}.business-topbar .desktop-business-nav{display:none}.business-topbar .marca-img img{width:145px}.actor-pill{margin-left:auto}
  .mobile-business-nav{position:fixed;left:0;right:0;bottom:0;z-index:80;display:grid;grid-template-columns:repeat(auto-fit,minmax(58px,1fr));min-height:66px;background:rgba(7,7,7,.98);border-top:1px solid #2c2c2c;padding:max(5px,env(safe-area-inset-bottom)) 8px max(5px,env(safe-area-inset-bottom));box-shadow:0 -12px 35px rgba(0,0,0,.45)}
  .mobile-business-nav a,.mobile-business-nav button{appearance:none;border:0;background:transparent;color:#8e8e8e;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;text-decoration:none;font-size:10px;min-width:0;padding:5px 2px}.mobile-business-nav b{font-size:19px;font-weight:500;line-height:1}.mobile-business-nav a.activo{color:#D4AF37}.mobile-business-nav button{font-family:inherit;cursor:pointer}
  .mobile-more-sheet{position:fixed;inset:0;z-index:100;background:rgba(0,0,0,.7);align-items:flex-end}.mobile-more-sheet:not([hidden]){display:flex}.mobile-more-panel{width:100%;max-height:78vh;overflow:auto;background:#0c0c0c;border-top:1px solid #3d3418;border-radius:22px 22px 0 0;padding:16px 16px calc(24px + env(safe-area-inset-bottom));box-shadow:0 -20px 60px rgba(0,0,0,.55)}.mobile-more-head{display:flex;justify-content:space-between;align-items:center;color:#D4AF37}.mobile-more-head button{border:0;background:#1c1c1c;color:#fff;width:34px;height:34px;border-radius:50%;font-size:24px}.mobile-more-user{padding:14px 0;border-bottom:1px solid #252525}.mobile-more-user span,.mobile-more-user small{display:block}.mobile-more-user span{color:#fff;font-weight:700}.mobile-more-user small{margin-top:3px;color:#8d8d8d}.mobile-more-links{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding-top:14px}.mobile-more-links a{padding:13px;border:1px solid #272727;border-radius:12px;background:#111;color:#ddd;text-decoration:none;font-size:13px}.mobile-more-links a.activo{border-color:#6a571d;color:#D4AF37}.sheet-open{overflow:hidden}
  .business-code-card{width:100%;box-sizing:border-box}.dashboard-head .business-code-card{margin-top:4px}
}
@media(max-width:520px){.actor-pill span{max-width:100px}.actor-pill{min-width:88px}.mobile-more-links{grid-template-columns:1fr}.business-topbar .marca-img img{width:128px}}
.home-employee-link{display:block;text-align:center;margin-top:12px;color:#a89449;font-size:12px;text-decoration:none}.home-employee-link:hover{color:#D4AF37}

/* =========================================================
   CARD BLACK V7.4 - global customer wallet / account
   ========================================================= */
.consumer-auth-shell,.consumer-account-shell{max-width:620px}.consumer-wallet-shell{max-width:980px}.consumer-auth-card{margin-top:10px}.sync-context{margin:0 0 16px;padding:12px 14px;border:1px solid #4d421f;border-radius:12px;background:#10100d;color:#c7bb8b;font-size:13px}.sync-account-card{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:18px 0}.sync-account-card strong{font-size:17px}.sync-account-card p{margin:5px 0 0;color:#949494;font-size:12px}.sync-account-actions{display:flex;gap:8px;flex-wrap:wrap}.action-form{display:flex}.action-form .btn{width:100%;margin-top:14px}.compact-message{margin-top:12px}.consumer-wallet-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:18px 0 24px}.consumer-wallet-head h1{margin:4px 0 6px;font-size:32px}.consumer-wallet-head p{margin:0;color:#999}.consumer-avatar{width:46px;height:46px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#D4AF37;color:#050505;font-weight:900;font-size:18px;text-decoration:none;box-shadow:0 8px 25px rgba(212,175,55,.16)}.global-wallet-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.global-wallet-card{position:relative;min-height:220px;border:1px solid color-mix(in srgb,var(--wallet-accent) 58%,#222);border-radius:22px;overflow:hidden;background:radial-gradient(circle at 110% -10%,color-mix(in srgb,var(--wallet-accent) 26%,transparent),transparent 42%),linear-gradient(145deg,#141414,#070707);box-shadow:0 18px 45px rgba(0,0,0,.3)}.global-wallet-card:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:var(--wallet-accent)}.global-wallet-card a{display:flex;flex-direction:column;min-height:220px;padding:20px;box-sizing:border-box;color:#fff;text-decoration:none}.global-wallet-brand{display:flex;align-items:center;gap:10px;margin-bottom:20px;color:#aaa;font-size:12px}.global-wallet-brand img{width:38px;height:38px;object-fit:contain;border-radius:10px;background:rgba(255,255,255,.05);padding:3px}.global-wallet-card h2{margin:5px 0 6px;font-size:20px}.global-wallet-card strong{color:var(--wallet-accent);font-size:11px;letter-spacing:1px}.global-wallet-balance{margin:22px 0 6px;font-size:21px;font-weight:800}.global-wallet-card small{margin-top:auto;color:var(--wallet-accent);font-weight:700}.consumer-wallet-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.consumer-wallet-actions .btn{margin-top:0;flex:1;min-width:180px}.empty-wallet{text-align:center;padding:34px}.empty-wallet p{color:#999;line-height:1.55}.danger-zone{margin-top:18px;border-color:#5e2929}.danger-zone p{color:#b7a2a2;line-height:1.55}.btn-danger{background:#7b2525;color:#fff}.btn-danger:hover{background:#932d2d}.privacy-card p,.privacy-card li{font-size:14px;color:#ccc;line-height:1.7}.privacy-card h3{color:#D4AF37;margin-top:24px}.privacy-steps{padding-left:20px;color:#ccc}
@media(max-width:650px){.sync-account-card,.consumer-wallet-head{align-items:flex-start;flex-direction:column}.sync-account-actions{width:100%}.sync-account-actions .btn{flex:1}.consumer-avatar{position:absolute;right:18px;top:18px}.consumer-wallet-head{position:relative;padding-right:60px}.global-wallet-grid{grid-template-columns:1fr}.consumer-wallet-actions{flex-direction:column}.consumer-wallet-actions .btn{min-width:0;width:100%}}

/* =========================================================
   CARD BLACK V7.6 - Growth Admin, campaigns, integrations, GeoPush
   ========================================================= */
.admin-master-bar .marca-img img{width:170px}.admin-greeting{color:#999;font-size:12px}.admin-control-shell{padding-bottom:52px}.admin-kpis{grid-template-columns:repeat(auto-fit,minmax(185px,1fr))}.admin-section-title{color:#D4AF37;margin-top:32px}.admin-grid{gap:18px}.funnel-row{display:grid;grid-template-columns:minmax(150px,1.2fr) minmax(120px,2fr) 74px;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid #202020}.funnel-row:last-child{border-bottom:0}.funnel-row div:first-child{display:flex;justify-content:space-between;gap:12px}.funnel-row div:first-child span,.funnel-row b{color:#D4AF37}.funnel-row b{text-align:right;font-size:11px}.funnel-track{height:8px;border-radius:99px;background:#1e1e1e;overflow:hidden}.funnel-track i{display:block;height:100%;background:linear-gradient(90deg,#8e741e,#D4AF37);border-radius:inherit}.plan-stack{display:grid;gap:9px}.plan-stack>div{display:flex;justify-content:space-between;padding:12px 14px;border:1px solid #292929;border-radius:12px;background:#111}.plan-stack strong{color:#D4AF37}.admin-note{margin-top:18px;padding:14px;border:1px solid #3f3517;background:#100f0b;border-radius:12px;color:#aaa;font-size:12px;line-height:1.55}.admin-note strong{color:#D4AF37}.activity-feed{padding:8px 18px}.activity-item{display:grid;grid-template-columns:14px 1fr auto;gap:10px;align-items:start;padding:12px 0;border-bottom:1px solid #202020}.activity-item:last-child{border-bottom:0}.activity-dot{width:8px;height:8px;margin-top:6px;border-radius:50%;background:#D4AF37;box-shadow:0 0 14px rgba(212,175,55,.4)}.activity-item strong{font-size:13px}.activity-item p{margin:4px 0 0;color:#888;font-size:12px}.activity-item time{color:#666;font-size:11px;white-space:nowrap}.approval-card{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:10px}.approval-card strong,.approval-card span{display:block}.approval-card span{margin-top:4px;color:#888;font-size:12px}.approval-actions{display:flex;gap:7px}.approval-actions form{margin:0}.admin-access-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:16px}.gift-card-admin{border-color:#5a4916;background:radial-gradient(circle at 110% -10%,rgba(212,175,55,.15),transparent 38%),#111}.gift-link-message{word-break:break-word}.copy-field{min-width:260px;margin:0}.inline-state-form{display:flex;gap:5px;align-items:center}.inline-state-form select,.inline-state-form .btn{margin:0}.inline-state-form .btn{padding:8px 10px}.campaign-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.campaign-summary>div{padding:15px;border:1px solid #292929;border-radius:14px;background:#111}.campaign-summary strong,.campaign-summary span{display:block}.campaign-summary strong{font-size:22px;color:#D4AF37}.campaign-summary span{font-size:11px;color:#888;margin-top:3px}.feature-list p{padding:10px 0;margin:0;border-bottom:1px solid #222;color:#aaa;line-height:1.5}.feature-list p:last-child{border-bottom:0}.feature-list strong{color:#D4AF37}.integration-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.badge-success{color:#9cffbe;border-color:#29563a}.toggle-box{display:flex;align-items:end;padding-bottom:12px}.privacy-note{margin-top:18px;padding:13px;border:1px solid #3b331b;background:#0f0e0b;border-radius:12px;color:#aaa;font-size:12px;line-height:1.55}.geo-status{display:flex;justify-content:space-between;gap:14px;padding:13px 15px;border-radius:13px;border:1px solid #2b2b2b;background:#101010}.geo-status strong{color:#D4AF37}.geo-status span{color:#888;font-size:12px}.geo-status.warning{border-color:#603838}.geopush-public-banner{background:rgba(212,175,55,.14);border:1px solid #D4AF37;border-radius:12px;padding:13px 14px;margin-bottom:10px;font-size:13px;cursor:pointer}.geopush-public-banner strong{color:#D4AF37}.geopush-optin-btn{display:block;width:100%;margin:0 0 14px;padding:11px 13px;border:1px solid #3f3519;border-radius:11px;background:#0e0e0c;color:#d7c36e;font-weight:700;cursor:pointer}.preference-card{margin-top:18px}.preference-card form .btn{margin-bottom:0}.btn-whatsapp{display:inline-block;background:#25D366;color:#07140b!important;border-radius:8px;padding:8px 12px;text-decoration:none;font-weight:800;font-size:12px}
@media(max-width:980px){.admin-access-grid{grid-template-columns:1fr}.campaign-summary{grid-template-columns:1fr 1fr}.funnel-row{grid-template-columns:1fr}.funnel-row b{text-align:left}.approval-card{align-items:flex-start;flex-direction:column}.approval-actions{width:100%}.approval-actions form{flex:1}.approval-actions .btn{width:100%}}
@media(max-width:560px){.campaign-summary{grid-template-columns:1fr}.activity-item{grid-template-columns:12px 1fr}.activity-item time{grid-column:2}.admin-master-bar{align-items:flex-start}.admin-master-bar nav{gap:8px}.admin-greeting{display:none}}
.customer-funnel-mini{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:10px;align-items:center;margin:12px 0 16px}.customer-funnel-mini.two{grid-template-columns:1fr auto 1fr}.customer-funnel-mini>div{text-align:center;padding:14px 8px;border:1px solid #2b2b2b;border-radius:13px;background:#111}.customer-funnel-mini strong,.customer-funnel-mini span{display:block}.customer-funnel-mini strong{font-size:26px;color:#D4AF37}.customer-funnel-mini span{font-size:11px;color:#888;margin-top:4px}.customer-funnel-mini b{color:#5f5229}@media(max-width:560px){.customer-funnel-mini,.customer-funnel-mini.two{grid-template-columns:1fr}.customer-funnel-mini b{transform:rotate(90deg);text-align:center}}
.table-actions{display:flex;gap:8px;align-items:center}.table-actions form{margin:0}.table-actions button{border:0;background:transparent;color:#9cffbe;cursor:pointer;font-size:12px;padding:4px}.table-actions .danger-link{color:#ff9c9c}

/* CARD BLACK V7.7 · GeoPush customer disclosure */
.geo-client-notice{margin:10px 0 18px;padding:12px 14px;border:1px solid rgba(212,175,55,.28);border-radius:14px;background:rgba(212,175,55,.07);display:grid;gap:5px;font-size:13px;line-height:1.45}
.geo-client-notice strong{color:#e5c65f}.geo-client-notice span{color:#e8e8e8}.geo-client-notice small{color:#9f9f9f}
