:root{
  --bg:#f5f5f7;--surface:rgba(255,255,255,.78);--surface-solid:#fff;--text:#1d1d1f;--muted:#6e6e73;--line:rgba(0,0,0,.10);--line-soft:rgba(0,0,0,.06);--accent:#0071e3;--accent-dark:#005bb5;--danger:#d70015;--radius:24px;--shadow:0 18px 60px rgba(0,0,0,.08)
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text",Inter,Segoe UI,Roboto,Arial,sans-serif;background:radial-gradient(circle at 50% -10%,#fff 0,#f5f5f7 42%,#eeeeef 100%);color:var(--text);-webkit-font-smoothing:antialiased}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.top{position:sticky;top:0;z-index:10;background:rgba(255,255,255,.78);backdrop-filter:saturate(180%) blur(22px);-webkit-backdrop-filter:saturate(180%) blur(22px);border-bottom:1px solid var(--line-soft);height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(18px,4vw,48px)}.brand{display:flex;align-items:center;gap:14px;font-weight:700;letter-spacing:-.02em}.brand img{height:34px;width:auto;display:block}.brand span{font-size:15px;color:var(--muted);font-weight:600}.top-actions{display:flex;gap:10px;align-items:center}.wrap{width:min(1180px,calc(100% - 32px));margin:0 auto;padding:36px 0 70px}.hero{min-height:calc(100vh - 72px);display:grid;place-items:center;padding:32px 0}.hero-inner{width:min(1120px,100%);text-align:center}.hero-logo{width:min(420px,84vw);height:auto;margin:0 auto 26px;display:block}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:800;color:var(--muted);margin-bottom:10px}.hero h1{font-size:clamp(42px,7vw,84px);line-height:.95;letter-spacing:-.07em;margin:0 auto 18px;max-width:900px}.hero p{font-size:clamp(18px,2.2vw,24px);line-height:1.35;color:var(--muted);max-width:720px;margin:0 auto 32px}.login-wrap{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:stretch;margin:0 auto;max-width:1040px}.card{background:var(--surface);border:1px solid rgba(255,255,255,.7);border-radius:var(--radius);padding:clamp(22px,3vw,34px);margin:18px 0;box-shadow:var(--shadow);backdrop-filter:saturate(180%) blur(18px);-webkit-backdrop-filter:saturate(180%) blur(18px)}.card.flat{box-shadow:none;border:1px solid var(--line);background:var(--surface-solid)}.card h1,.card h2,.card h3,h1,h2,h3{letter-spacing:-.04em;margin-top:0}h1{font-size:clamp(34px,4vw,56px);line-height:1.02;margin-bottom:14px}h2{font-size:clamp(24px,2.4vw,34px);line-height:1.1;margin-bottom:12px}h3{font-size:20px}.muted{color:var(--muted)}.section-kicker{display:inline-flex;align-items:center;gap:8px;background:#f2f2f4;border:1px solid var(--line-soft);border-radius:999px;padding:7px 11px;font-size:12px;font-weight:700;color:var(--muted);margin-bottom:12px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}label{display:block;font-weight:700;font-size:13px;color:#2b2b2d}input,textarea,select{width:100%;padding:14px 15px;border:1px solid var(--line);border-radius:14px;margin-top:8px;font-size:16px;background:rgba(255,255,255,.9);color:var(--text);outline:none;transition:border-color .18s,box-shadow .18s,background .18s}input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 4px rgba(0,113,227,.12);background:#fff}textarea{min-height:116px;resize:vertical}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#1d1d1f;color:#fff;padding:12px 18px;border-radius:999px;text-decoration:none;border:0;cursor:pointer;font-weight:750;font-size:14px;line-height:1;transition:transform .18s,background .18s,box-shadow .18s;box-shadow:0 8px 20px rgba(0,0,0,.12)}.btn:hover{text-decoration:none;transform:translateY(-1px)}.btn.red,.btn.primary{background:var(--accent)}.btn.red:hover,.btn.primary:hover{background:var(--accent-dark)}.btn.light{background:#f5f5f7;color:#1d1d1f;border:1px solid var(--line);box-shadow:none}.btn.danger{background:var(--danger)}.table-wrap{overflow:auto;border-radius:18px;border:1px solid var(--line-soft)}.table{width:100%;border-collapse:collapse;background:rgba(255,255,255,.78)}.table th,.table td{padding:15px 14px;border-bottom:1px solid var(--line-soft);text-align:left;vertical-align:top}.table th{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.table tr:last-child td{border-bottom:0}.pill{display:inline-flex;align-items:center;padding:7px 11px;border-radius:999px;background:#f2f2f4;border:1px solid var(--line-soft);font-size:12px;font-weight:800;color:#3a3a3c}.song{display:grid;grid-template-columns:1.1fr 1fr 1fr auto;gap:12px;align-items:end;margin:16px 0;padding:18px;background:#fbfbfd;border:1px solid var(--line-soft);border-radius:22px}.song-list-item{padding:14px 0;border-bottom:1px solid var(--line-soft);display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.song-list-item:last-child{border-bottom:0}.spotify-results{display:flex;gap:12px;flex-wrap:wrap;margin-top:8px}.track{border:1px solid var(--line);border-radius:18px;padding:12px;width:190px;background:#fff;box-shadow:0 8px 22px rgba(0,0,0,.05)}.track img{width:54px;height:54px;object-fit:cover;border-radius:12px;margin-bottom:8px}.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:20px 0}.stat{background:#fff;border:1px solid var(--line-soft);border-radius:20px;padding:18px}.stat b{display:block;font-size:28px;letter-spacing:-.04em}.login-card{text-align:left}.login-card h2{margin-bottom:8px}.login-card p{font-size:15px;line-height:1.45}.demo-pill{display:inline-flex;margin-top:14px;background:#f5f5f7;border:1px solid var(--line);border-radius:999px;padding:9px 12px;font-size:13px;color:var(--muted)}.print-only{display:none}.error{color:var(--danger);font-weight:700;background:rgba(215,0,21,.08);padding:10px 12px;border-radius:14px}.page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:22px}.page-head p{margin:6px 0 0}.logo-mark{height:42px;width:auto}.admin-fab{position:fixed;right:18px;bottom:18px;z-index:20}
@media(max-width:900px){.login-wrap,.grid,.grid3,.song,.stat-grid{grid-template-columns:1fr}.hero{display:block;min-height:0;padding-top:30px}.hero h1{text-align:left;font-size:46px}.hero p{text-align:left}.hero-logo{margin-left:0;width:280px}.top{height:64px}.brand img{height:28px}.brand span{display:none}.wrap{width:min(100% - 24px,1180px);padding-top:22px}.page-head{display:block}.song-list-item{display:block}.table{font-size:13px}}@media print{.no-print,.top,.admin-fab{display:none!important}.print-only{display:block}body{background:white}.wrap{width:100%;padding:0}.card{box-shadow:none;border:1px solid #ccc;break-inside:avoid;background:white}}
.rich-song{align-items:stretch}.song-main{width:100%}.spotify-player{margin-top:12px;max-width:520px}.chosen-card{margin-top:12px;padding:16px;border:1px solid var(--line);border-radius:20px;background:#fff;display:grid;grid-template-columns:1fr minmax(260px,420px);gap:16px;align-items:center}.track iframe{margin:8px 0}.track .btn{width:100%;margin-top:8px}.top-actions{display:flex;gap:10px;flex-wrap:wrap}.selected-track:empty{display:none}
@media(max-width:900px){.chosen-card{grid-template-columns:1fr}.spotify-player{max-width:100%}}
@media print{.spotify-player iframe,.selected-track,.spotify-results{display:none!important}a{color:#000;text-decoration:underline}}


.spotify-player iframe, .chosen-card iframe, .track iframe{
  margin-top:12px;
  box-shadow:0 14px 35px rgba(0,0,0,.10);
}
.spotify-player{
  margin-top:12px;
}
.chosen-card{
  margin-top:14px;
  padding:16px;
  border:1px solid rgba(0,0,0,.08);
  border-radius:22px;
  background:linear-gradient(180deg,#fff,rgba(245,245,247,.75));
}
.track{
  padding:14px;
  border:1px solid rgba(0,0,0,.08);
  border-radius:18px;
  background:#fff;
  margin-top:10px;
}
.track img{
  width:54px;
  height:54px;
  border-radius:12px;
  object-fit:cover;
  float:left;
  margin-right:12px;
}

/* v6: selección real de versiones Spotify */
.spotify-results{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
  margin-top:14px;
}
.result-header,.search-status,.spotify-results .error{
  grid-column:1/-1;
}
.search-status{
  padding:14px 16px;
  border-radius:16px;
  background:#f5f5f7;
  border:1px solid var(--line-soft);
  font-weight:800;
  color:var(--muted);
}
.result-header{
  display:flex;
  justify-content:space-between;
  gap:16px;
  align-items:center;
  padding:14px 16px;
  border-radius:18px;
  background:#fff;
  border:1px solid var(--line-soft);
}
.track-option{
  background:#fff;
  border:1px solid var(--line-soft);
  border-radius:22px;
  padding:16px;
  box-shadow:0 14px 34px rgba(0,0,0,.06);
}
.track-option-head{
  display:grid;
  grid-template-columns:70px 1fr;
  gap:13px;
  align-items:center;
  min-height:70px;
}
.track-option-head img{
  width:70px;
  height:70px;
  border-radius:16px;
  object-fit:cover;
  background:#f5f5f7;
}
.track-option-head small{
  display:block;
  margin-top:3px;
  line-height:1.25;
}
.track-player{margin-top:14px;}
.spotify-embed{
  border-radius:14px;
  box-shadow:0 12px 26px rgba(0,0,0,.08);
}
.track-actions{
  display:flex;
  gap:10px;
  margin-top:12px;
  flex-wrap:wrap;
}
.track-actions .btn{box-shadow:none;}
.small{font-size:13px;}
@media(max-width:900px){
  .spotify-results{grid-template-columns:1fr;}
  .result-header{display:block;}
  .track-option-head{grid-template-columns:56px 1fr;}
  .track-option-head img{width:56px;height:56px;}
}

.calendar-toolbar{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:18px;}
.calendar-toolbar h2{margin:0;text-transform:capitalize;font-size:24px;}
.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;background:#e5e5e7;padding:1px;overflow:hidden;}
.calendar-weekday{background:#f5f5f7;padding:12px;text-align:center;font-weight:700;color:#555;font-size:13px;}
.calendar-day{min-height:132px;background:#fff;padding:10px;display:flex;flex-direction:column;gap:7px;}
.calendar-day.muted-day{background:#fbfbfd;}
.calendar-number{font-weight:700;color:#111;margin-bottom:4px;}
.calendar-event{display:block;border-radius:12px;background:#f5f5f7;padding:8px 9px;text-decoration:none;color:#111;border:1px solid #ededed;}
.calendar-event:hover{background:#eaf3ff;border-color:#b9dcff;}
.calendar-event b{display:block;font-size:12px;color:#0071e3;}
.calendar-event span{display:block;font-size:13px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.calendar-event small{display:block;font-size:11px;color:#666;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.calendar-event.done{opacity:.62;background:#f2f2f2;}
@media(max-width:800px){.calendar-grid{display:block;background:transparent;padding:0}.calendar-weekday{display:none}.calendar-day{min-height:auto;border-bottom:1px solid #eee}.calendar-day.muted-day{display:none}.calendar-toolbar{flex-direction:column;align-items:stretch;text-align:center}}

.portal-menu{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:18px 0 24px}
.portal-menu-item{display:block;text-decoration:none;background:#fff;border:1px solid #e8e8ed;border-radius:22px;padding:18px 20px;box-shadow:0 10px 30px rgba(0,0,0,.05);color:#111}
.portal-menu-item span{display:block;font-weight:800;font-size:17px;margin-bottom:4px}.portal-menu-item small{color:#777}.portal-menu-item.active{border-color:#111;box-shadow:0 16px 45px rgba(0,0,0,.10)}
.file-box{border:1px solid #e8e8ed;border-radius:22px;padding:20px;background:#fbfbfd}.file-box form{margin-top:14px;display:grid;gap:10px}.file-box input[type=file]{padding:13px;border:1px dashed #c7c7cc;border-radius:14px;background:#fff}.btn.danger{background:#fff;color:#b00020;border:1px solid #ffd4dc}.infographic-preview{width:100%;max-height:260px;object-fit:contain;border-radius:18px;background:#fff;border:1px solid #eee;margin:10px 0}.infographic-full{width:100%;border-radius:24px;background:#fff;border:1px solid #eee}.pdf-viewer{width:100%;height:75vh;border:1px solid #e8e8ed;border-radius:22px;background:#fff}.page-head.compact{margin-bottom:6px}
@media(max-width:760px){.portal-menu{grid-template-columns:1fr}.pdf-viewer{height:65vh}}


/* V15.1 PREMIUM UX/UI · Marquee Apple-like */
:root{
  --premium-bg:#f5f5f7;
  --premium-card:rgba(255,255,255,.82);
  --premium-card-solid:#fff;
  --premium-text:#1d1d1f;
  --premium-muted:#6e6e73;
  --premium-blue:#0071e3;
  --premium-blue-2:#2997ff;
  --premium-border:rgba(0,0,0,.08);
  --premium-shadow:0 24px 70px rgba(0,0,0,.09);
  --premium-soft-shadow:0 12px 34px rgba(0,0,0,.055);
}
body{
  font-family:Inter,-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text",Segoe UI,Roboto,Arial,sans-serif;
  background:
    radial-gradient(circle at 18% 0%, rgba(0,113,227,.10), transparent 30%),
    radial-gradient(circle at 86% 10%, rgba(0,0,0,.055), transparent 28%),
    linear-gradient(180deg,#fbfbfd 0%,#f5f5f7 52%,#eeeeef 100%);
}
.top{height:68px;padding:0 clamp(18px,4vw,54px);background:rgba(251,251,253,.74);border-bottom:1px solid rgba(0,0,0,.06)}
.brand img{height:30px}.brand span{font-size:13px;letter-spacing:.04em;text-transform:uppercase;color:#1d1d1f}
.wrap{width:min(1240px,calc(100% - 34px));padding-top:28px}.card{border:1px solid rgba(255,255,255,.86);background:var(--premium-card);box-shadow:var(--premium-shadow)}
.btn{min-height:42px;padding:0 18px}.btn.primary,.btn.red{background:linear-gradient(180deg,#0077ed,#006edb)}.btn.light{background:rgba(255,255,255,.86);border-color:var(--premium-border)}
.btn:hover{filter:saturate(1.08)}
.section-kicker{background:rgba(0,113,227,.08);color:#006edb;border-color:rgba(0,113,227,.12)}
.premium-hero{position:relative;overflow:hidden;border-radius:36px;padding:clamp(26px,5vw,58px);background:linear-gradient(135deg,rgba(255,255,255,.95),rgba(255,255,255,.62)),radial-gradient(circle at 85% 18%,rgba(0,113,227,.18),transparent 32%),radial-gradient(circle at 12% 92%,rgba(0,0,0,.08),transparent 28%);border:1px solid rgba(255,255,255,.92);box-shadow:var(--premium-shadow);margin-bottom:22px}.premium-hero:after{content:"";position:absolute;inset:auto -80px -120px auto;width:320px;height:320px;border-radius:50%;background:rgba(0,113,227,.11);filter:blur(28px)}.premium-hero-content{position:relative;z-index:1;display:grid;grid-template-columns:1.35fr .65fr;gap:28px;align-items:end}.premium-hero h1{font-size:clamp(42px,6vw,82px);letter-spacing:-.075em;line-height:.92;margin:8px 0 14px}.premium-subtitle{font-size:18px;color:var(--premium-muted);line-height:1.45;margin:0;max-width:760px}.hero-meta{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.meta-chip{display:inline-flex;align-items:center;gap:8px;padding:10px 13px;border-radius:999px;background:rgba(255,255,255,.84);border:1px solid rgba(0,0,0,.06);font-weight:750;font-size:13px;color:#333}.countdown-card{background:#1d1d1f;color:#fff;border-radius:28px;padding:24px;box-shadow:0 22px 50px rgba(0,0,0,.18)}.countdown-card small{display:block;color:rgba(255,255,255,.62);font-weight:800;text-transform:uppercase;letter-spacing:.1em}.countdown-card b{display:block;font-size:44px;line-height:1;letter-spacing:-.06em;margin:10px 0}.progress-wrap{margin-top:18px}.progress-label{display:flex;justify-content:space-between;gap:12px;color:rgba(255,255,255,.78);font-size:13px;font-weight:700}.progress-track{height:10px;border-radius:999px;background:rgba(255,255,255,.16);overflow:hidden;margin-top:9px}.progress-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,#2997ff,#fff)}
.portal-menu{position:sticky;top:82px;z-index:8;display:flex;gap:10px;flex-wrap:wrap;background:rgba(245,245,247,.72);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.8);border-radius:24px;padding:10px;margin:0 0 22px;box-shadow:0 12px 32px rgba(0,0,0,.055)}.portal-menu-item{flex:1;min-width:170px;border-radius:18px;padding:14px 16px;background:rgba(255,255,255,.62);border:1px solid transparent;color:#1d1d1f;transition:all .18s}.portal-menu-item span{display:block;font-weight:850}.portal-menu-item small{color:var(--premium-muted)}.portal-menu-item.active,.portal-menu-item:hover{background:#fff;border-color:rgba(0,113,227,.14);box-shadow:0 10px 28px rgba(0,113,227,.08);text-decoration:none;transform:translateY(-1px)}
.quick-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0}.quick-card{background:#fff;border:1px solid var(--premium-border);border-radius:24px;padding:18px;box-shadow:var(--premium-soft-shadow)}.quick-card .icon{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;background:#f5f5f7;font-size:22px;margin-bottom:12px}.quick-card b{display:block;font-size:18px;letter-spacing:-.03em}.quick-card small{color:var(--premium-muted);display:block;margin-top:4px}.data-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.data-tile{background:#fff;border:1px solid var(--premium-border);border-radius:20px;padding:16px}.data-tile span{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--premium-muted);font-weight:850;margin-bottom:6px}.data-tile b{font-size:17px;letter-spacing:-.02em}.music-card{padding:0;overflow:hidden}.music-card-header{padding:26px 28px;background:linear-gradient(180deg,#fff,rgba(255,255,255,.70));border-bottom:1px solid rgba(0,0,0,.06);display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.music-card-header h2{margin:6px 0 0}.music-card-body{padding:24px 28px}.step-badge{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:14px;background:#1d1d1f;color:#fff;font-weight:900}.playlist-zone{background:linear-gradient(180deg,#fbfbfd,#fff);border:1px solid rgba(0,0,0,.06);border-radius:26px;padding:22px;margin-bottom:22px}.chosen-card{border-radius:26px;box-shadow:var(--premium-soft-shadow);border-color:rgba(0,0,0,.06);background:#fff}.playlist-cover{width:82px;height:82px;border-radius:18px;object-fit:cover;display:block;margin-bottom:12px;box-shadow:0 12px 24px rgba(0,0,0,.12)}.song{border-radius:24px;background:#fff;box-shadow:var(--premium-soft-shadow);border-color:rgba(0,0,0,.06)}.song-list-item{background:#fff;border:1px solid rgba(0,0,0,.06);border-radius:22px;padding:18px;margin-bottom:14px;box-shadow:0 8px 22px rgba(0,0,0,.04)}.spotify-results{grid-template-columns:repeat(2,minmax(0,1fr))}.track-option{border-radius:26px;box-shadow:var(--premium-soft-shadow)}.track-option-head img{border-radius:18px}.spotify-embed{box-shadow:0 16px 36px rgba(0,0,0,.09)}.admin-dashboard-hero{border-radius:34px;padding:34px;background:linear-gradient(135deg,#1d1d1f,#343438);color:#fff;box-shadow:var(--premium-shadow);margin-bottom:18px}.admin-dashboard-hero h1{color:#fff}.admin-dashboard-hero .muted{color:rgba(255,255,255,.68)}.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0}.kpi-card{background:#fff;border:1px solid rgba(0,0,0,.06);border-radius:26px;padding:22px;box-shadow:var(--premium-soft-shadow);position:relative;overflow:hidden}.kpi-card:after{content:"";position:absolute;right:-30px;top:-30px;width:96px;height:96px;border-radius:50%;background:rgba(0,113,227,.08)}.kpi-card span{font-size:12px;color:var(--premium-muted);font-weight:850;text-transform:uppercase;letter-spacing:.08em}.kpi-card b{display:block;font-size:42px;letter-spacing:-.07em;line-height:1.05;margin-top:10px}.premium-table .table{background:#fff}.premium-table .table th{background:#f5f5f7}.premium-table .table td{vertical-align:middle}.event-title-cell b{font-size:17px}.event-actions{display:flex;gap:8px;flex-wrap:wrap}.dj-hero{background:linear-gradient(135deg,#1d1d1f,#0b0b0c);color:#fff;border-radius:34px;padding:34px;box-shadow:var(--premium-shadow);margin-bottom:20px}.dj-hero h1,.dj-hero h2{color:#fff}.dj-hero .muted{color:rgba(255,255,255,.70)}.file-box{background:#fff;border:1px solid rgba(0,0,0,.06);border-radius:26px;padding:22px;box-shadow:var(--premium-soft-shadow)}.pdf-viewer{width:100%;height:72vh;border:1px solid var(--premium-border);border-radius:24px;background:#fff}.infographic-full,.infographic-preview{max-width:100%;border-radius:24px;box-shadow:var(--premium-soft-shadow);border:1px solid var(--premium-border)}
@media(max-width:980px){.premium-hero-content{grid-template-columns:1fr}.quick-grid,.data-strip,.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.music-card-header{display:block}.portal-menu{position:static}.spotify-results{grid-template-columns:1fr}}
@media(max-width:640px){.wrap{width:min(100% - 22px,1240px)}.premium-hero{border-radius:28px;padding:26px}.premium-hero h1{font-size:44px}.quick-grid,.data-strip,.kpi-grid{grid-template-columns:1fr}.countdown-card b{font-size:36px}.music-card-body,.music-card-header{padding:20px}.portal-menu-item{min-width:100%}.top-actions{gap:7px}.btn{padding:0 14px}.table-wrap{border-radius:22px}.chosen-card{grid-template-columns:1fr!important}}

/* V15.2 bloqueo automático de ficha completada */
.lock-card{border:1px solid rgba(0,113,227,.16)!important;background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(235,246,255,.86))!important;box-shadow:0 20px 55px rgba(0,113,227,.10)!important;}
.locked-note{border:1px solid rgba(0,113,227,.18);background:rgba(0,113,227,.07);color:#1d1d1f;border-radius:18px;padding:14px 16px;margin:12px 0;font-weight:750;}
.danger-pill{background:rgba(176,0,32,.10)!important;color:#b00020!important;border-color:rgba(176,0,32,.16)!important;}
.workflow-actions form{display:inline-block;margin:0 8px 8px 0;}

/* v15.3 — Marquee premium logo + login polish */
.top .brand img{
  height:42px;
  max-width:210px;
  object-fit:contain;
}
.hero-logo,
.logo-mark{
  display:block;
  height:auto;
  object-fit:contain;
  background:transparent!important;
  filter:none!important;
  mix-blend-mode:normal!important;
}
.hero-logo{
  width:min(520px,88vw);
  max-height:160px;
  margin:0 auto 28px;
}
.logo-mark{
  width:min(360px,82vw);
  max-height:120px;
  margin:0 auto 18px;
}
.hero{
  background:
    radial-gradient(circle at 50% 0%, rgba(255,255,255,.94), rgba(245,245,247,.82) 40%, rgba(238,238,240,.88) 100%);
  border-radius:32px;
}
.login-wrap .login-card,
.login-card{
  background:rgba(255,255,255,.92)!important;
  border:1px solid rgba(0,0,0,.06)!important;
  box-shadow:0 24px 70px rgba(0,0,0,.10)!important;
}
.login-card form{
  margin-top:18px;
}
.login-card .btn.primary{
  width:100%;
  min-height:48px;
  margin-top:8px;
}
.hero .login-card{
  text-align:left;
}
.hero .login-card h2{
  font-size:28px;
}
.hero-inner > .eyebrow{
  color:#86868b;
}
@media(max-width:900px){
  .top .brand img{height:34px;max-width:170px;}
  .hero-logo{width:min(390px,92vw);margin-left:auto;margin-right:auto;}
  .logo-mark{width:min(310px,86vw);}
  .hero h1{text-align:center;font-size:42px;}
  .hero p{text-align:center;}
}

/* v15.4 — FullCalendar real, dashboard charts, DJ móvil */
.charts-grid{display:grid;grid-template-columns:1.25fr .9fr;gap:18px;margin:22px 0;}
.chart-card{min-height:310px;}
.chart-card canvas{width:100%!important;max-height:260px;}
.pro-kpi-grid{grid-template-columns:repeat(6,minmax(0,1fr));}
.kpi-card small{display:block;margin-top:6px;font-size:12px;}
.fullcalendar-card{padding:18px;overflow:hidden;}
#marqueeCalendar{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;}
.fc .fc-toolbar-title{font-size:28px;font-weight:850;text-transform:capitalize;color:#1d1d1f;}
.fc .fc-button-primary{background:#111;border-color:#111;border-radius:999px;padding:8px 14px;font-weight:700;box-shadow:none;}
.fc .fc-button-primary:hover,.fc .fc-button-primary:focus{background:#0071e3;border-color:#0071e3;box-shadow:none;}
.fc .fc-button-primary:disabled{background:#d2d2d7;border-color:#d2d2d7;color:#666;}
.fc .fc-daygrid-day{background:#fff;}
.fc .fc-day-today{background:#f2f8ff!important;}
.fc .fc-col-header-cell{padding:10px 0;background:#f5f5f7;}
.fc .fc-col-header-cell-cushion{color:#555;text-decoration:none;font-weight:800;text-transform:capitalize;}
.fc .fc-daygrid-day-number{color:#1d1d1f;text-decoration:none;font-weight:750;padding:8px;}
.fc-marquee-event{border:0!important;border-radius:12px!important;padding:2px 4px!important;box-shadow:0 6px 18px rgba(0,0,0,.08);}
.fc-event-pending{background:#f5f5f7!important;color:#1d1d1f!important;}
.fc-event-progress{background:#eaf3ff!important;color:#004a91!important;}
.fc-event-ready{background:#e9f8ef!important;color:#116329!important;}
.fc-event-done{background:#ececec!important;color:#666!important;opacity:.78;}
.fc-marquee-inner{display:flex;flex-direction:column;gap:1px;line-height:1.15;padding:3px 4px;}
.fc-marquee-inner b{font-size:11px;color:inherit;}
.fc-marquee-inner span{font-size:12px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.fc-marquee-inner small{font-size:10px;opacity:.75;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.calendar-legend{display:flex;gap:18px;flex-wrap:wrap;align-items:center;margin-bottom:16px;padding:14px 18px;}
.calendar-legend span{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:13px;color:#424245;}
.legend-dot{width:12px;height:12px;border-radius:50%;display:inline-block;}
.legend-dot.pending{background:#d2d2d7}.legend-dot.progress{background:#0071e3}.legend-dot.ready{background:#34c759}.legend-dot.done{background:#8e8e93}
.dj-mobile-shell{max-width:980px;margin:0 auto;}
.dj-mobile-toolbar{position:sticky;top:72px;z-index:20;display:flex;justify-content:flex-end;gap:10px;padding:10px 0;background:rgba(245,245,247,.82);backdrop-filter:blur(14px);}
.dj-mobile-hero{border-radius:34px;padding:34px;background:linear-gradient(145deg,#fff,#f5f5f7);box-shadow:0 24px 70px rgba(0,0,0,.08);}
.dj-mobile-hero h1{font-size:clamp(38px,6vw,74px);letter-spacing:-.05em;margin:4px 0 10px;}
.dj-quick-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:22px;}
.dj-quick-grid div{background:#fff;border:1px solid #ececf0;border-radius:20px;padding:16px;min-height:112px;}
.dj-quick-grid span{display:block;color:#86868b;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;}
.dj-quick-grid b{display:block;font-size:22px;margin:6px 0;color:#1d1d1f;}
.dj-quick-grid small{color:#666;line-height:1.35;}
.dj-jump-nav{position:sticky;top:132px;z-index:19;display:flex;gap:8px;overflow:auto;padding:10px 0;margin:10px 0 18px;background:rgba(245,245,247,.86);backdrop-filter:blur(14px);}
.dj-jump-nav a{white-space:nowrap;text-decoration:none;color:#1d1d1f;background:#fff;border:1px solid #ececf0;border-radius:999px;padding:10px 14px;font-weight:800;box-shadow:0 8px 25px rgba(0,0,0,.05);}
.dj-mobile-section{margin-bottom:18px;scroll-margin-top:150px;}
.dj-track-card{border:1px solid #ececf0;border-radius:24px;background:#fff;padding:18px;margin:14px 0;box-shadow:0 12px 35px rgba(0,0,0,.05);}
.dj-track-meta h3{margin:3px 0 6px;font-size:22px;letter-spacing:-.02em;}
.dj-track-meta a{font-weight:800;color:#0071e3;word-break:break-word;}
.dj-timeline-list{position:relative;}
.timeline-item{display:grid;grid-template-columns:46px 1fr;gap:14px;align-items:start;}
.timeline-item .spotify-player{grid-column:1/-1;}
.timeline-index{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#111;color:#fff;font-weight:900;box-shadow:0 10px 26px rgba(0,0,0,.12);}
.dj-restrictions-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
.dj-restrictions-grid p{background:#f5f5f7;border-radius:18px;padding:14px;margin:0;}
.dj-restrictions-grid .wide{grid-column:1/-1;}
@media(max-width:1100px){.pro-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr));}.charts-grid{grid-template-columns:1fr;}}
@media(max-width:760px){
 .pro-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
 .fc .fc-toolbar{display:grid;grid-template-columns:1fr;gap:10px;text-align:center;}
 .fc .fc-toolbar-chunk{display:flex;justify-content:center;flex-wrap:wrap;}
 .fullcalendar-card{padding:10px;border-radius:20px;}
 .fc .fc-toolbar-title{font-size:22px;}
 .dj-mobile-toolbar{top:58px;justify-content:space-between;overflow:auto;}
 .dj-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
 .dj-mobile-hero{padding:24px;border-radius:28px;}
 .dj-jump-nav{top:114px;}
 .timeline-item{grid-template-columns:38px 1fr;}
 .timeline-index{width:34px;height:34px;font-size:13px;}
 .dj-restrictions-grid{grid-template-columns:1fr;}
 .dj-track-card{padding:14px;border-radius:20px;}
}
@media print{.dj-mobile-toolbar,.dj-jump-nav,.top{display:none!important}.dj-mobile-shell{max-width:none}.card,.dj-mobile-hero,.dj-track-card{box-shadow:none!important;border:1px solid #ddd!important}.spotify-player{display:none!important}}


/* v15.5 Portal DJs */
.login-wrap{grid-template-columns:repeat(3,minmax(0,1fr));}
.single-login{grid-template-columns:minmax(0,520px);justify-content:center;}
.checkline{display:flex;align-items:center;gap:10px;font-size:15px}.checkline input{width:auto;margin:0}
.dj-readonly-badge{display:inline-flex;padding:8px 12px;border-radius:999px;background:rgba(0,113,227,.08);border:1px solid rgba(0,113,227,.14);font-weight:800;color:#006edb}
@media(max-width:1100px){.login-wrap{grid-template-columns:1fr}.single-login{grid-template-columns:1fr}}


.fullcalendar-card{padding:18px;overflow:hidden;}
.calendar-pro-shell{max-width:1380px;margin:0 auto;}
.calendar-pro-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:18px;}
.calendar-title-block h1{font-size:48px;letter-spacing:-.06em;margin:8px 0 8px;}
.calendar-control-card{background:rgba(255,255,255,.78);border:1px solid rgba(0,0,0,.06);box-shadow:0 18px 50px rgba(0,0,0,.08);backdrop-filter:blur(18px);border-radius:26px;padding:16px 18px;margin-bottom:18px;display:flex;justify-content:space-between;gap:16px;align-items:center;}
.calendar-legend-pro{display:flex;gap:8px;flex-wrap:wrap;align-items:center;}
.legend-chip{appearance:none;border:1px solid rgba(0,0,0,.08);background:#fff;border-radius:16px;padding:11px 14px;font-weight:850;color:#1d1d1f;display:inline-flex;gap:8px;align-items:center;cursor:pointer;box-shadow:0 8px 18px rgba(0,0,0,.04);transition:.18s ease;}
.legend-chip:hover{transform:translateY(-1px);box-shadow:0 12px 24px rgba(0,0,0,.08);}
.legend-chip.active{background:#1d1d1f;color:#fff;border-color:#1d1d1f;}
.legend-dot{width:12px;height:12px;border-radius:999px;display:inline-block;box-shadow:0 0 0 4px rgba(0,0,0,.04);}
.legend-dot.all{background:linear-gradient(135deg,#f59e0b,#2563eb,#16a34a,#6b7280);}
.legend-dot.pending{background:#f59e0b;}.legend-dot.progress{background:#2563eb;}.legend-dot.ready{background:#16a34a;}.legend-dot.done{background:#6b7280;}
.calendar-mini-help{color:#6e6e73;font-size:13px;font-weight:700;}
.calendar-productivity-tools{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap;min-width:min(100%,520px);}
.calendar-search-input{min-width:240px;max-width:310px;margin:0;}
.calendar-copy-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.calendar-copy-status{min-width:120px;color:#166534;font-size:12px;font-weight:900;text-align:right;}
.dj-track-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:10px;}
.dj-copy-status,.wp-event-copy-status{color:#166534;font-size:12px;font-weight:900;}
.wp-event-copybar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:14px 0 18px;padding:12px 14px;border:1px solid rgba(17,24,39,.08);border-radius:18px;background:#fff;box-shadow:0 10px 30px rgba(17,24,39,.06);}
.presence-row.is-stale td{background:rgba(245,158,11,.08);}
.presence-row:has(.presence-select:checked) td{background:rgba(17,24,39,.055)!important;}
.calendar-layout-pro{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:18px;align-items:start;}
.pro-calendar-card{border-radius:30px;box-shadow:0 20px 60px rgba(0,0,0,.10);border:1px solid rgba(0,0,0,.06);background:#fff;}
.calendar-side-panel{display:flex;flex-direction:column;gap:16px;}
.side-card{background:#fff;border:1px solid rgba(0,0,0,.06);border-radius:28px;padding:20px;box-shadow:0 16px 44px rgba(0,0,0,.08);}
.side-card h3{margin:8px 0 14px;font-size:22px;letter-spacing:-.04em;}
.calendar-stat-row{display:flex;align-items:center;justify-content:space-between;border-top:1px solid rgba(0,0,0,.07);padding:13px 0;gap:10px;}
.calendar-stat-row b{font-size:25px;letter-spacing:-.04em;}.calendar-stat-row span{font-size:13px;color:#6e6e73;font-weight:750;text-align:right;}
.next-events-list{display:flex;flex-direction:column;gap:10px;}
.next-event-item{text-decoration:none;color:#1d1d1f;display:grid;grid-template-columns:24px 1fr;gap:8px;border:1px solid rgba(0,0,0,.07);border-left-width:5px;border-radius:18px;padding:11px;background:#fff;transition:.18s ease;}
.next-event-item:hover{transform:translateY(-1px);box-shadow:0 12px 26px rgba(0,0,0,.08);}
.next-event-item strong{font-size:14px;line-height:1.2;}.next-event-item small{grid-column:2;color:#6e6e73;font-size:12px;line-height:1.25;}
.next-event-item.pending{border-left-color:#f59e0b;background:#fff7e6;}.next-event-item.progress{border-left-color:#2563eb;background:#eef5ff;}.next-event-item.ready{border-left-color:#16a34a;background:#edfff3;}.next-event-item.done{border-left-color:#6b7280;background:#f3f4f6;}
.fc .fc-toolbar{gap:12px;margin-bottom:18px!important;}
.fc .fc-toolbar-title{font-size:30px;font-weight:900;text-transform:capitalize;color:#1d1d1f;letter-spacing:-.05em;}
.fc .fc-button-primary{background:#1d1d1f;border-color:#1d1d1f;border-radius:999px;padding:9px 15px;font-weight:850;box-shadow:none;text-transform:capitalize;}
.fc .fc-button-primary:hover,.fc .fc-button-primary:focus{background:#0071e3;border-color:#0071e3;box-shadow:none;}
.fc .fc-button-primary:disabled{background:#e5e7eb;border-color:#e5e7eb;color:#6b7280;}
.fc .fc-button-active{background:#0071e3!important;border-color:#0071e3!important;}
.fc-theme-standard td,.fc-theme-standard th{border-color:#dfe3ea;}
.fc .fc-scrollgrid{border-color:#dfe3ea;border-radius:20px;overflow:hidden;}
.fc .fc-daygrid-day{background:#fff;transition:.15s ease;}
.fc .fc-daygrid-day:hover{background:#fbfdff;}
.fc .fc-day-today{background:#f0f7ff!important;}
.fc .fc-col-header-cell{padding:12px 0;background:#f5f5f7;}
.fc .fc-col-header-cell-cushion{color:#1d1d1f;text-decoration:none;font-weight:900;text-transform:capitalize;}
.fc .fc-daygrid-day-number{color:#1d1d1f;text-decoration:none;font-weight:850;padding:8px;}
.fc-marquee-event{border:0!important;border-radius:10px!important;padding:0!important;box-shadow:0 8px 22px rgba(0,0,0,.12)!important;overflow:hidden!important;margin:2px 4px!important;}
.fc-marquee-event:hover{transform:scale(1.015);box-shadow:0 14px 30px rgba(0,0,0,.18)!important;z-index:20!important;}
.fc-event-pending{background:#fff7db!important;color:#7c4a00!important;border-left:5px solid #f59e0b!important;}
.fc-event-progress{background:#eaf2ff!important;color:#0b4bb3!important;border-left:5px solid #2563eb!important;}
.fc-event-ready{background:#e9fced!important;color:#0f6b2b!important;border-left:5px solid #16a34a!important;}
.fc-event-done{background:#eef0f3!important;color:#374151!important;border-left:5px solid #6b7280!important;opacity:1;}
.fc-marquee-inner{display:flex;flex-direction:column;gap:2px;line-height:1.12;padding:7px 8px;min-height:56px;}
.fc-event-top{display:flex;justify-content:space-between;align-items:center;gap:6px;font-size:11px;font-weight:900;}
.fc-status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:currentColor;box-shadow:0 0 0 3px rgba(255,255,255,.8);margin-right:auto;}
.fc-guests{font-size:10px;opacity:.86;white-space:nowrap;}
.fc-marquee-inner b{font-size:11px;color:inherit;}
.fc-event-name{font-size:13px;font-weight:950;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:-.02em;}
.fc-marquee-inner small{font-size:10.5px;opacity:.86;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:750;}
.fc-list-event{cursor:pointer;}.fc-list-event-title a{text-decoration:none;color:#1d1d1f;font-weight:850;}
.calendar-legend{display:flex;gap:18px;flex-wrap:wrap;align-items:center;margin-bottom:16px;padding:14px 18px;}
.calendar-legend span{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:13px;color:#424245;}


/* v15.7 — Admin responsive + navegación segura */
.global-back{margin:-14px 0 14px;display:flex;align-items:center;justify-content:flex-start;}
.back-btn{appearance:none;border:1px solid rgba(0,0,0,.08);background:rgba(255,255,255,.84);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);color:#1d1d1f;border-radius:999px;padding:10px 15px;font-weight:850;cursor:pointer;box-shadow:0 8px 22px rgba(0,0,0,.06);transition:.18s ease;}
.back-btn:hover{transform:translateY(-1px);box-shadow:0 12px 28px rgba(0,0,0,.10);}
.admin-events-card{padding:22px;border-radius:30px;overflow:visible;}
.admin-list-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;}
.admin-list-actions{flex-wrap:wrap;justify-content:flex-end;}
.admin-dashboard-workbar{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
  border:1px solid rgba(0,0,0,.07);
  background:#fbfbfd;
  border-radius:22px;
  padding:13px;
  margin:0 0 16px;
}
.admin-dashboard-workbar-count{
  display:flex;
  align-items:center;
  gap:7px;
  min-height:38px;
  white-space:nowrap;
}
.admin-dashboard-workbar-count b{font-size:22px;letter-spacing:-.04em;}
.admin-dashboard-workbar-actions{
  flex:1;
  justify-content:flex-end;
  gap:7px;
}
.admin-dashboard-workbar-actions .section-search{
  min-width:260px;
  max-width:360px;
}
.empty-state{border:1px dashed rgba(0,0,0,.14);border-radius:24px;padding:26px;background:#fff;display:flex;flex-direction:column;gap:6px;}
.admin-event-list{display:grid;gap:16px;}
.admin-event-card{background:#fff;border:1px solid rgba(0,0,0,.07);border-radius:26px;padding:20px;box-shadow:0 14px 38px rgba(0,0,0,.06);display:grid;gap:16px;min-width:0;}
.admin-event-card:has(.admin-dashboard-select:checked){
  border-color:rgba(17,24,39,.28);
  box-shadow:0 22px 58px rgba(17,24,39,.12);
}
.admin-dashboard-select-control{
  width:38px;
  min-height:38px;
  border-radius:12px;
  margin:0 0 -6px 0;
}
.admin-dashboard-select-control input{width:18px;height:18px;}
.admin-event-card.is-done{background:linear-gradient(180deg,#fff,#f7f7f8);}
.admin-event-main{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;min-width:0;}
.admin-event-title{display:flex;align-items:flex-start;gap:12px;min-width:0;}
.admin-event-title h3{margin:0 0 3px;font-size:22px;line-height:1.05;letter-spacing:-.04em;overflow-wrap:anywhere;}
.admin-event-title p{margin:0;overflow-wrap:anywhere;}
.admin-status-dot{width:14px;height:14px;border-radius:50%;margin-top:4px;flex:0 0 auto;box-shadow:0 0 0 5px rgba(0,0,0,.04);}
.admin-status-dot.pending{background:#f59e0b}.admin-status-dot.progress{background:#2563eb}.admin-status-dot.ready{background:#16a34a}.admin-status-dot.done{background:#6b7280}
.admin-event-badges{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;}
.admin-event-info-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;}
.admin-event-info-grid>div,.credentials-grid>div{background:#f5f5f7;border:1px solid rgba(0,0,0,.05);border-radius:18px;padding:13px 14px;min-width:0;}
.admin-event-info-grid span,.credentials-grid span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#86868b;font-weight:900;margin-bottom:5px;}
.admin-event-info-grid b,.credentials-grid b{font-size:15px;line-height:1.25;overflow-wrap:anywhere;}
.admin-event-credentials{border:1px solid rgba(0,0,0,.07);border-radius:20px;background:#fbfbfd;overflow:hidden;}
.admin-event-credentials summary{cursor:pointer;list-style:none;padding:13px 15px;font-weight:850;color:#1d1d1f;}
.admin-event-credentials summary::-webkit-details-marker{display:none;}
.admin-event-credentials summary:after{content:'+';float:right;font-weight:900;color:#86868b;}
.admin-event-credentials[open] summary:after{content:'−';}
.credentials-grid{display:grid;grid-template-columns:180px 180px minmax(0,1fr);gap:10px;padding:0 13px 13px;}
.credentials-grid .wide{min-width:0;}
.credentials-grid a{display:block;overflow-wrap:anywhere;font-weight:750;}
.compact-note{margin:0;padding:12px 14px;border-radius:16px;font-size:13px;}
.admin-event-actions{position:sticky;bottom:10px;z-index:2;display:flex;flex-wrap:wrap;gap:9px;justify-content:flex-end;padding-top:4px;background:linear-gradient(180deg,rgba(255,255,255,0),#fff 35%);}
.admin-event-actions .btn{min-height:42px;}
.table-wrap{overflow-x:auto;}
@media(max-width:980px){
  .admin-list-head{display:block;}
  .admin-list-actions{justify-content:flex-start;margin-top:12px;}
  .admin-dashboard-workbar{display:grid;}
  .admin-dashboard-workbar-actions{justify-content:flex-start;}
  .admin-dashboard-workbar-actions .section-search{max-width:none;width:100%;}
  .admin-event-main{display:grid;gap:12px;}
  .admin-event-badges{justify-content:flex-start;}
  .admin-event-info-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .credentials-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .credentials-grid .wide{grid-column:1/-1;}
}
@media(max-width:640px){
  .global-back{margin:0 0 12px;}
  .admin-events-card{padding:14px;border-radius:24px;}
  .admin-event-card{padding:15px;border-radius:22px;}
  .admin-event-title h3{font-size:19px;}
  .admin-event-info-grid,.credentials-grid{grid-template-columns:1fr;}
  .admin-event-actions{position:static;display:grid;grid-template-columns:1fr 1fr;background:transparent;padding-top:0;}
  .admin-event-actions .btn{width:100%;padding:13px 12px;}
  .admin-event-actions .btn.primary{grid-column:1/-1;}
  .top{padding:0 12px;}
  .top .brand span{display:none;}
}
@media(max-width:420px){.admin-event-actions{grid-template-columns:1fr;}.admin-event-actions .btn.primary{grid-column:auto;}}

/* v15.8 — Admin Pro sidebar + legibility overhaul */
.admin-app-shell{min-height:100vh;display:grid;grid-template-columns:280px minmax(0,1fr);background:#f5f5f7;color:#111827;}
.admin-sidebar{position:sticky;top:0;height:100vh;background:#020305;color:#fff;padding:28px 18px;display:flex;flex-direction:column;gap:14px;box-shadow:16px 0 50px rgba(0,0,0,.14);z-index:30;overflow:auto;}
.admin-side-brand{display:flex;flex-direction:column;gap:10px;color:#fff;text-decoration:none;margin-bottom:14px;}
.admin-side-brand img{width:220px;max-width:100%;height:auto;object-fit:contain;display:block;filter:none!important;background:transparent!important;}
.admin-side-brand span{text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:800;color:rgba(255,255,255,.66);}
.admin-side-label{text-transform:uppercase;letter-spacing:.08em;color:rgba(255,255,255,.58);font-size:12px;font-weight:850;margin:8px 0 2px;}
.admin-side-label.second{margin-top:18px;}
.admin-side-nav{display:flex;flex-direction:column;gap:6px;}
.admin-side-nav a{display:flex;align-items:center;gap:14px;padding:12px 14px;border-radius:12px;color:rgba(255,255,255,.88);text-decoration:none;font-weight:750;transition:.16s ease;}
.admin-side-nav a span{width:22px;text-align:center;opacity:.92;}
.admin-side-nav a:hover,.admin-side-nav a.active{background:rgba(255,255,255,.10);color:#fff;box-shadow:inset 3px 0 0 #e30613;transform:translateX(1px);}
.admin-side-nav.compact a{padding:10px 14px;}
.admin-side-footer{margin-top:auto;border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:16px;color:#fff;background:rgba(255,255,255,.035);display:flex;flex-direction:column;gap:6px;}
.admin-side-footer b{font-size:14px;}.admin-side-footer span{color:#ff3344;font-weight:800;font-size:13px}.admin-side-footer small{color:rgba(255,255,255,.56);line-height:1.35;}
.admin-app-main{min-width:0;padding:0 24px 60px;}
.admin-topbar{height:74px;display:flex;align-items:center;justify-content:space-between;gap:16px;}
.admin-mobile-logo img{height:42px;width:auto;object-fit:contain;}
.admin-wrap{width:min(1480px,100%);padding-top:0;}
.admin-dashboard-hero{background:#fff!important;color:#111827!important;border:1px solid rgba(0,0,0,.07)!important;box-shadow:0 16px 45px rgba(0,0,0,.07)!important;}
.admin-dashboard-hero h1{color:#111827!important;}.admin-dashboard-hero .muted{color:#6b7280!important;}
.kpi-card,.quick-card,.card,.side-card{box-shadow:0 12px 34px rgba(0,0,0,.06)!important;border-color:rgba(0,0,0,.07)!important;}
.portal-menu{position:relative;top:auto;background:transparent;border:0;box-shadow:none;padding:0;}
.portal-menu-item{background:#fff;border:1px solid rgba(0,0,0,.07);box-shadow:0 12px 28px rgba(0,0,0,.06);}
.calendar-pro-shell{max-width:1560px;}
.calendar-pro-head{align-items:center;}
.calendar-title-block h1{font-size:clamp(36px,4vw,58px);color:#111827;}
.calendar-layout-pro{grid-template-columns:minmax(0,1fr) 360px;gap:22px;}
.pro-calendar-card{padding:18px!important;border-radius:26px!important;}
.fc .fc-toolbar-title{font-size:28px!important;color:#111827!important;}
.fc .fc-button-primary{background:#111827!important;border-color:#111827!important;color:#fff!important;}
.fc .fc-button-active{background:#0057d9!important;border-color:#0057d9!important;}
.fc-theme-standard td,.fc-theme-standard th{border-color:#d1d5db!important;}
.fc .fc-daygrid-day-frame{min-height:112px;}
.fc .fc-daygrid-day-number{font-size:15px!important;color:#111827!important;font-weight:900!important;}
.fc .fc-col-header-cell-cushion{font-size:15px!important;color:#111827!important;}
.fc-marquee-event{border-radius:9px!important;margin:3px 5px!important;box-shadow:0 8px 18px rgba(0,0,0,.12)!important;}
.fc-marquee-inner{min-height:74px!important;padding:8px 9px!important;gap:3px!important;line-height:1.18!important;}
.fc-event-top{font-size:12px!important;color:inherit!important;}
.fc-event-name{font-size:13px!important;font-weight:950!important;color:inherit!important;white-space:normal!important;line-height:1.15!important;}
.fc-marquee-inner small{font-size:11px!important;opacity:1!important;color:inherit!important;font-weight:750!important;white-space:normal!important;line-height:1.15!important;}
.fc-guests{font-size:11px!important;font-weight:950!important;}
.fc-event-pending{background:#fff3c4!important;color:#7c3f00!important;border-left:6px solid #f59e0b!important;}
.fc-event-progress{background:#dbeafe!important;color:#0b3a8a!important;border-left:6px solid #2563eb!important;}
.fc-event-ready{background:#dcfce7!important;color:#14532d!important;border-left:6px solid #16a34a!important;}
.fc-event-done{background:#e5e7eb!important;color:#1f2937!important;border-left:6px solid #374151!important;opacity:1!important;}
.calendar-control-card{background:#fff!important;}
.legend-chip{font-size:14px;color:#111827;}
.legend-chip.active{background:#111827;color:#fff;}
.next-event-item strong{font-size:15px;color:#111827;}.next-event-item small{font-size:13px;color:#374151;}
.calendar-stat-row b{color:#111827;}.calendar-stat-row span{color:#374151;}
.dj-mobile-hero{background:#fff!important;color:#111827!important;border:1px solid rgba(0,0,0,.08)!important;box-shadow:0 16px 44px rgba(0,0,0,.08)!important;}
.dj-mobile-hero h1{color:#111827!important;text-shadow:none!important;font-size:clamp(42px,6vw,82px)!important;line-height:.95!important;}
.dj-mobile-hero .muted{color:#374151!important;font-size:17px!important;}
.dj-quick-grid div{border:1px solid rgba(0,0,0,.08)!important;background:#f9fafb!important;min-height:132px!important;}
.dj-quick-grid span{color:#4b5563!important;font-size:13px!important;}.dj-quick-grid b{font-size:28px!important;color:#111827!important;}.dj-quick-grid small{color:#374151!important;font-weight:650;}
.dj-track-card{background:#fff!important;border:1px solid rgba(0,0,0,.08)!important;box-shadow:0 12px 34px rgba(0,0,0,.07)!important;}
.dj-track-meta h3{color:#111827!important;font-size:25px!important;}.dj-track-meta p,.dj-track-meta small{color:#374151!important;font-size:15px!important;line-height:1.35;}
.section-kicker{background:#eef2ff!important;color:#1e40af!important;border-color:#dbeafe!important;}
.btn.primary{background:#e30613!important;}.btn.primary:hover{background:#ba0610!important;}
@media(max-width:1180px){.admin-app-shell{grid-template-columns:1fr}.admin-sidebar{position:relative;height:auto;border-radius:0;display:block}.admin-side-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));}.admin-side-footer{display:none}.admin-app-main{padding:0 14px 50px}.calendar-layout-pro{grid-template-columns:1fr}.calendar-side-panel{grid-template-columns:1fr 1fr;display:grid}.admin-side-brand img{width:190px}.admin-side-label.second,.admin-side-nav.compact{display:none}}
@media(max-width:760px){.admin-side-nav{grid-template-columns:1fr 1fr}.calendar-pro-head,.calendar-control-card{display:block}.calendar-side-panel{display:block}.calendar-productivity-tools{justify-content:flex-start;margin-top:12px}.calendar-search-input{width:100%;max-width:none}.calendar-copy-status{text-align:left}.fc .fc-daygrid-day-frame{min-height:96px}.fc-marquee-inner{min-height:58px!important}.fc-event-name{font-size:12px!important}.fc-marquee-inner small{font-size:10px!important}.dj-quick-grid{grid-template-columns:1fr!important}.admin-app-main{padding:0 10px 40px}.admin-topbar-actions{display:flex;gap:6px;flex-wrap:wrap}.calendar-title-block h1{font-size:36px}}
@media print{.admin-sidebar,.admin-topbar,.global-back{display:none!important}.admin-app-shell{display:block}.admin-app-main{padding:0}}

/* V15.9 Gestión de Administradores */
.admin-user-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px}
.admin-user-card{background:#fff;border:1px solid rgba(17,24,39,.08);border-radius:22px;padding:18px;box-shadow:0 12px 34px rgba(17,24,39,.06)}
.admin-user-card.is-inactive{opacity:.62;filter:grayscale(.15)}
.admin-user-avatar{width:46px;height:46px;border-radius:16px;background:#111827;color:#fff;display:grid;place-items:center;font-weight:900;font-size:18px;box-shadow:0 8px 18px rgba(17,24,39,.18)}
.admin-note{margin-top:12px;border-top:1px solid rgba(17,24,39,.08);padding-top:12px}
.admin-form-card select{width:100%;border:1px solid rgba(17,24,39,.12);border-radius:14px;padding:13px 14px;background:#fff;font:inherit;color:#111827}


/* v15.9.1 Admin menu fix */
.admin-side-nav a{cursor:pointer;}
.admin-side-nav a.active{background:rgba(255,255,255,.12); color:#fff; box-shadow:inset 3px 0 0 #e30613;}
.section-admin-hero{margin-bottom:18px;}
.admin-section-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px;padding:16px 18px;}
.section-search{width:min(420px,100%);border:1px solid #e5e7eb;border-radius:14px;padding:12px 14px;font-weight:600;background:#fff;color:#111827;}
.section-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px;margin-bottom:40px;}
.section-event-card{background:#fff;border:1px solid rgba(17,24,39,.08);border-radius:24px;padding:18px;box-shadow:0 10px 28px rgba(17,24,39,.06);display:flex;flex-direction:column;gap:16px;}
.section-event-card:target{outline:3px solid rgba(0,113,227,.28);outline-offset:3px;background:rgba(0,113,227,.045)}
.section-event-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;}
.section-event-top h3{margin:4px 0 4px;font-size:20px;line-height:1.1;color:#111827;}
.section-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
.section-info-grid div,.settings-tile,.export-tile{background:#f5f5f7;border:1px solid #e5e7eb;border-radius:16px;padding:12px;}
.section-info-grid span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:#6b7280;font-weight:800;margin-bottom:4px;}
.section-info-grid b{font-size:14px;color:#111827;overflow-wrap:anywhere;}
.section-event-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:auto;}
.section-event-actions .btn{text-align:center;justify-content:center;padding:10px 8px;font-size:13px;}
.settings-grid,.export-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-top:18px;}
.settings-tile,.export-tile{text-decoration:none;color:#111827;font-weight:800;display:flex;flex-direction:column;gap:6px;}
.export-tile span{font-weight:500;color:#6b7280;}
.section-panel{padding:24px;}
@media (max-width:900px){.admin-section-toolbar{align-items:stretch;flex-direction:column}.section-event-actions{grid-template-columns:repeat(2,minmax(0,1fr));}.section-info-grid{grid-template-columns:1fr}.section-card-grid{grid-template-columns:1fr}}

/* v15.9.2 — Fix definitivo menú admin + legibilidad calendario */
.admin-side-nav a.active{background:rgba(255,255,255,.12)!important;color:#fff!important;border-left-color:#ff2d2d!important;}
.admin-side-nav.compact a.active{background:rgba(255,255,255,.12)!important;}
.fc .fc-event-main,.fc-h-event .fc-event-main,.fc-daygrid-event .fc-event-main{color:inherit!important;}
.fc .fc-event-title,.fc .fc-event-time{color:inherit!important;}
.fc-marquee-event{min-height:82px!important;}
.fc-marquee-inner{color:inherit!important;min-height:82px!important;padding:10px 11px!important;gap:4px!important;}
.fc-event-name{color:inherit!important;font-size:14px!important;line-height:1.12!important;font-weight:950!important;}
.fc-marquee-inner small{color:inherit!important;opacity:1!important;font-size:11.5px!important;line-height:1.18!important;font-weight:800!important;}
.fc-event-pending{background:#fff0b8!important;color:#5f3500!important;border-left:7px solid #f59e0b!important;}
.fc-event-progress{background:#d7e8ff!important;color:#082f75!important;border-left:7px solid #1d4ed8!important;}
.fc-event-ready{background:#d8fadd!important;color:#064e1f!important;border-left:7px solid #15803d!important;}
.fc-event-done{background:#dde1e7!important;color:#111827!important;border-left:7px solid #374151!important;opacity:1!important;}
.calendar-month-list-card{margin-top:18px;border-radius:28px;padding:20px;}
.month-events-list{display:grid;gap:10px;}
.month-event-row{display:grid;grid-template-columns:95px minmax(0,1.5fr) minmax(0,1fr) 95px;gap:14px;align-items:center;text-decoration:none;color:#111827;background:#fff;border:1px solid rgba(0,0,0,.08);border-left:7px solid #d1d5db;border-radius:18px;padding:13px 15px;box-shadow:0 10px 24px rgba(0,0,0,.05);}
.month-event-row:hover{transform:translateY(-1px);box-shadow:0 16px 32px rgba(0,0,0,.08);}
.month-event-row.pending{border-left-color:#f59e0b;background:#fffbeb;}.month-event-row.progress{border-left-color:#2563eb;background:#eff6ff;}.month-event-row.ready{border-left-color:#16a34a;background:#f0fdf4;}.month-event-row.done{border-left-color:#374151;background:#f3f4f6;}
.month-event-row b{font-size:18px;}.month-event-row small,.month-event-row span{display:block;color:#374151;font-size:13px;font-weight:700;}.month-event-row strong{display:block;font-size:15px;}.month-event-row em{font-style:normal;color:#0071e3;font-weight:900;}
.client-table{padding:0;overflow:hidden;border-radius:24px;}
.client-row{display:grid;grid-template-columns:1.2fr 1.4fr 1.4fr .9fr 180px;gap:16px;align-items:center;padding:16px 18px;border-bottom:1px solid rgba(0,0,0,.06);}
.client-head{background:#f5f5f7;color:#111827;font-size:13px;text-transform:uppercase;letter-spacing:.04em;}
.client-row span{display:block;color:#4b5563;font-size:13px;line-height:1.35;}.client-row strong{font-size:16px;}.mini-actions{display:flex;gap:8px;flex-wrap:wrap;}
.doc-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px;}.doc-status{border:1px solid rgba(0,0,0,.08);border-radius:16px;padding:13px;background:#f9fafb;}.doc-status.ok{background:#ecfdf3;color:#14532d;border-color:#bbf7d0}.doc-status.missing{background:#fff7ed;color:#7c2d12;border-color:#fed7aa}.doc-status b,.doc-status span{display:block;}
@media(max-width:900px){.month-event-row{grid-template-columns:1fr;gap:6px}.client-row{grid-template-columns:1fr}.client-head{display:none}.doc-status-grid{grid-template-columns:1fr}}


/* v15.9.3 — gestión avanzada de administradores */
.role-help-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px}
.role-help{border:1px solid rgba(0,0,0,.08);background:#fff;border-radius:18px;padding:14px 16px;box-shadow:0 8px 22px rgba(0,0,0,.04)}
.role-help b{display:block;font-size:15px;margin-bottom:4px;color:#1d1d1f}
.role-help span{display:block;font-size:13px;line-height:1.35;color:#6e6e73}
.role-help.super{border-color:rgba(215,0,21,.16);background:linear-gradient(180deg,#fff,rgba(255,245,247,.78))}
@media(max-width:700px){.role-help-grid{grid-template-columns:1fr}}
.admin-contact-form-card{display:grid;gap:18px}
.contact-form-toolbox{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:14px;align-items:center;border:1px solid rgba(17,24,39,.08);border-radius:18px;background:#fbfaf7;padding:14px 16px}
.contact-form-toolbox b{display:block;font-size:15px;color:#111827;margin-bottom:3px}
.contact-form-preview{grid-column:1/-1;display:block;border-radius:12px;background:#fff;border:1px solid rgba(17,24,39,.08);padding:10px 12px;color:#374151;font-weight:750;overflow-wrap:anywhere}
.event-admin-form-card .grid{margin-top:0}
.event-form-live-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:2px 0 8px}
.event-form-live-summary div{border:1px solid rgba(17,24,39,.08);border-radius:16px;background:#fff;padding:14px 16px;box-shadow:0 8px 22px rgba(17,24,39,.04)}
.event-form-live-summary span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#6b7280;font-weight:850;margin-bottom:5px}
.event-form-live-summary b{font-size:18px;color:#111827}
.event-admin-form-card label.is-soft-disabled{opacity:.72}
.event-admin-form-card label.is-soft-disabled input{background:#f3f4f6}
.portal-dashboard-toolbar{align-items:flex-start}
.portal-dashboard-toolbar .doc-toolbar-actions{justify-content:flex-end}
.dj-dashboard-row.is-selected,.wp-event-card-v36.is-selected{border-color:rgba(17,24,39,.28)!important;box-shadow:0 22px 64px rgba(17,24,39,.14)!important}
.wp-card-title .notification-select-control{flex:0 0 auto}
.wp-card-title h3{flex:1;min-width:0}
@media(max-width:760px){.contact-form-toolbox{grid-template-columns:1fr}.contact-form-toolbox .doc-toolbar-actions{justify-content:stretch}.contact-form-toolbox .btn{width:100%}}
@media(max-width:760px){.event-form-live-summary{grid-template-columns:1fr}.portal-dashboard-toolbar .doc-toolbar-actions{justify-content:stretch}.portal-dashboard-toolbar .btn{width:100%}}

/* v16.0 — Firma digital */
.signature-hero .countdown-card b{font-size:38px;}
.signature-card{border:1px solid rgba(0,113,227,.12)!important;background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(245,250,255,.88))!important;}
.signature-mini-card{border:1px solid rgba(22,163,74,.18)!important;background:linear-gradient(135deg,#fff,rgba(240,253,244,.82))!important;}
.signature-pad-wrap{margin:18px 0 20px;border:1px solid rgba(0,0,0,.10);border-radius:24px;background:#fff;overflow:hidden;box-shadow:0 16px 40px rgba(0,0,0,.06);}
.signature-pad-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;border-bottom:1px solid rgba(0,0,0,.07);background:#fbfbfd;}
#signatureCanvas{display:block;width:100%;height:230px;background:linear-gradient(#fff,#fff),repeating-linear-gradient(0deg,transparent,transparent 38px,rgba(0,0,0,.035) 39px);touch-action:none;cursor:crosshair;}
.signature-preview{margin-top:18px;border:1px solid rgba(0,0,0,.10);border-radius:22px;background:#fff;padding:18px;max-width:520px;box-shadow:0 12px 34px rgba(0,0,0,.055);}
.signature-preview img{display:block;width:100%;max-height:190px;object-fit:contain;}
.signature-accept{display:flex!important;gap:10px;align-items:flex-start;margin:18px 0;padding:14px 16px;border:1px solid rgba(0,113,227,.14);border-radius:18px;background:rgba(0,113,227,.06);font-size:14px;line-height:1.35;}
.signature-accept input{width:auto;margin:2px 0 0;}
@media(max-width:700px){#signatureCanvas{height:190px}.signature-pad-head{display:block}.signature-pad-head .btn{margin-top:10px;width:100%}}

/* v16.1.3 — Unified Login Experience */
.login-unified-page .hero-inner{max-width:1120px;margin:0 auto;}
.login-unified-page .hero-logo{width:min(520px,86vw);max-height:170px;margin-bottom:18px;}
.login-unified-page .eyebrow{margin-top:6px;}
.login-unified-page h1{max-width:880px;margin-left:auto;margin-right:auto;}
.login-unified-page p{max-width:760px;}
.single-login.unified-login-wrap{display:flex;justify-content:center;max-width:560px;margin:24px auto 0;}
.single-login.unified-login-wrap .unified-login-card{width:100%;}
.unified-login-card input{background:#fff;}
.unified-login-card .btn.primary{width:100%;min-height:50px;margin-top:4px;}
.unified-login-card .demo-pill{display:none!important;}
@media(max-width:900px){
  .login-unified-page .hero-logo{width:min(390px,90vw);}
  .login-unified-page h1{text-align:center;font-size:42px;}
  .login-unified-page p{text-align:center;}
  .single-login.unified-login-wrap{max-width:100%;}
}


/* v16.1.7 — Opción Sin música */
.no-music-choice{
  width:100%;
  display:block;
  text-align:left;
  border:1px solid rgba(0,0,0,.08);
  background:linear-gradient(180deg,#ffffff,#f7f7f9);
  border-radius:22px;
  padding:18px 20px;
  margin-top:14px;
  cursor:pointer;
  box-shadow:0 10px 28px rgba(0,0,0,.055);
  color:#1d1d1f;
}
.no-music-choice span{display:block;font-weight:850;font-size:17px;letter-spacing:-.02em;margin-bottom:5px;}
.no-music-choice small{display:block;color:#6e6e73;font-size:13px;line-height:1.35;}
.no-music-choice:hover{transform:translateY(-1px);box-shadow:0 15px 36px rgba(0,0,0,.075);}
.no-music-selected{
  display:flex;
  justify-content:space-between;
  gap:16px;
  align-items:center;
  padding:18px;
  margin:14px 0;
  border-radius:24px;
  border:1px solid rgba(0,0,0,.08);
  background:#f5f5f7;
}
.no-music-selected h3{margin:8px 0 4px;}
.no-music-selected p{margin:0;}
@media(max-width:700px){.no-music-selected{display:block}.no-music-selected form{margin-top:12px}}

/* v16.1.9 — Control económico */
.check-card{display:flex;align-items:center;gap:12px;margin:16px 0;padding:16px 18px;border:1px solid rgba(0,0,0,.08);border-radius:18px;background:#fff;font-weight:800;color:#1d1d1f;box-shadow:0 8px 24px rgba(0,0,0,.04)}
.check-card input{width:auto;margin:0;transform:scale(1.15)}
.payment-card{background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(247,249,252,.88))!important;border:1px solid rgba(0,113,227,.10)!important}
.payment-grid .quick-card{border:1px solid rgba(0,113,227,.10)}
.payment-grid .quick-card b{font-size:clamp(22px,2.8vw,34px)}
.payment-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;margin-top:10px;padding:14px 16px;border-radius:18px;background:#fff;border:1px solid rgba(0,0,0,.06)}
.payment-details p{margin:0;color:#4a4a4f}.payment-details b{color:#1d1d1f}
@media(max-width:760px){.payment-details{grid-template-columns:1fr}.payment-grid .quick-card b{font-size:24px}}

/* v16.1.10 — Pagos parciales por cliente */
.payment-add-form{
  margin-top:14px;
  padding:18px;
  border:1px solid rgba(0,0,0,.07);
  border-radius:22px;
  background:#fff;
  box-shadow:0 10px 28px rgba(0,0,0,.04);
}
.payment-history{
  margin-top:12px;
}
.payment-history .btn.danger{
  min-height:34px;
  padding:0 12px;
  font-size:12px;
}

/* v16.1.10 — Pagos parciales e histórico económico */
.payment-admin-grid{align-items:start;margin:18px 0;}
.payment-history{margin-top:20px;padding:18px;border-radius:22px;background:#fff;border:1px solid rgba(0,0,0,.06);}
.payment-history h3{margin-bottom:12px;}
.payment-history .table td,.payment-history .table th{vertical-align:middle;}
.payment-history form{margin:0;}
@media(max-width:760px){.payment-admin-grid{grid-template-columns:1fr}.payment-history .table{font-size:12px}}


/* v16.1.14 — Cancelaciones, papelera y eliminación segura */
.event-danger-zone{border:1px solid rgba(215,0,21,.16)!important;background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(255,245,246,.78))!important;}
.client-tabs{display:flex;gap:10px;flex-wrap:wrap;align-items:stretch;}
.section-event-actions form,.mini-actions form{display:inline-flex;margin:0;}
.pill.danger-pill,.danger-pill{background:rgba(215,0,21,.10)!important;color:#b00020!important;border-color:rgba(215,0,21,.18)!important;}
@media(max-width:760px){.client-tabs{display:grid;grid-template-columns:1fr}.section-event-actions form,.mini-actions form{width:100%}.section-event-actions form .btn,.mini-actions form .btn{width:100%}}


/* V20 MP3 personalizados */
.file-box input[type="file"]{padding:12px;background:#fff;border:1px dashed #d1d1d6;border-radius:14px;width:100%}
.song-list .btn,.rich-song .btn{margin-top:8px}


/* V21.2 – Estabilización sidebar admin
   Elimina el efecto de doble pintado/ghosting en Safari/Chrome durante la navegación
   de Infografías, DJs, Wedding Planners y Administradores. No cambia rutas ni datos. */
.admin-sidebar,
.admin-side-nav,
.admin-side-nav a,
.admin-side-nav a span{
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
  transform:none!important;
}
.admin-side-nav a,
.admin-side-nav a:hover,
.admin-side-nav a:focus,
.admin-side-nav a:active,
.admin-side-nav a.active{
  transition:none!important;
  transform:none!important;
  text-decoration:none!important;
}
.admin-side-nav a:hover,
.admin-side-nav a:focus-visible{
  background:rgba(255,255,255,.10);
  color:#fff;
  box-shadow:inset 3px 0 0 rgba(227,6,19,.75);
}
.admin-side-nav a.active{
  background:rgba(255,255,255,.14)!important;
  color:#fff!important;
  box-shadow:inset 3px 0 0 #e30613!important;
}
.admin-side-nav a.is-nav-loading,
.admin-side-nav a.is-nav-loading:hover,
.admin-side-nav a.is-nav-loading:focus{
  background:rgba(255,255,255,.14)!important;
  color:#fff!important;
  box-shadow:inset 3px 0 0 #e30613!important;
}
@supports (view-transition-name: none){
  html, body, .admin-app-shell, .admin-sidebar, .admin-app-main{view-transition-name:none!important;}
}


/* V23 - DJ Mobile PRO */
.dj-mobile-pro-hero{border-radius:34px;padding:30px;background:linear-gradient(135deg,#111,#303034);color:#fff;box-shadow:0 22px 70px rgba(0,0,0,.18);margin-bottom:18px;display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.dj-mobile-pro-hero h1{color:#fff;margin-bottom:8px}.dj-mobile-pro-hero p{color:rgba(255,255,255,.72);margin:0}.dj-mobile-pro-panel{display:none}.dj-mobile-event-card{background:#fff;border:1px solid rgba(0,0,0,.06);border-radius:32px;padding:24px;box-shadow:0 18px 55px rgba(0,0,0,.10);margin:16px 0}.dj-mobile-event-top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px}.dj-mobile-pill{display:inline-flex;align-items:center;border-radius:999px;padding:8px 12px;background:#f2f2f4;color:#555;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.dj-mobile-pill.live{background:#eaf8ef;color:#176b35}.dj-mobile-date{font-weight:900;color:#6e6e73}.dj-mobile-event-card h3{font-size:34px;line-height:1;margin-bottom:18px}.dj-mobile-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:18px}.dj-mobile-details div{background:#f7f7f9;border:1px solid rgba(0,0,0,.05);border-radius:18px;padding:14px}.dj-mobile-details span{display:block;color:#6e6e73;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;margin-bottom:5px}.dj-mobile-details b{font-size:16px}.dj-mobile-main-btn{width:100%;border:0;border-radius:30px;min-height:96px;color:#fff;font-size:25px;font-weight:1000;text-transform:uppercase;letter-spacing:.02em;box-shadow:0 18px 40px rgba(0,0,0,.22);cursor:pointer}.dj-mobile-main-btn.start{background:linear-gradient(135deg,#12b76a,#079455)}.dj-mobile-main-btn.end{background:linear-gradient(135deg,#ff3b30,#c1121f)}.dj-mobile-status{border-radius:28px;padding:22px;margin:18px 0;text-align:center}.dj-mobile-status span{display:block;text-transform:uppercase;letter-spacing:.08em;font-weight:900;font-size:12px;margin-bottom:8px}.dj-mobile-status strong{display:block;font-size:42px;letter-spacing:-.05em}.dj-mobile-status small{display:block;color:#6e6e73;font-weight:700}.dj-mobile-status.running{background:#fff7ed;border:1px solid #fed7aa}.dj-mobile-status.complete{background:#ecfdf3;border:1px solid #bbf7d0}.dj-mobile-warning{background:#fff7ed;border:1px solid #fed7aa;border-radius:22px;padding:16px;color:#9a3412;font-weight:800;margin:16px 0}.dj-mobile-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}.dj-mobile-actions .btn{width:100%;min-height:52px}.dj-mobile-list{margin-top:18px}.dj-mobile-mini-event{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#fff;border:1px solid rgba(0,0,0,.06);border-radius:22px;padding:14px;margin-bottom:10px}.dj-mobile-mini-event b{display:block}.dj-mobile-mini-event span{display:block;color:#6e6e73;font-size:13px;margin-top:3px}
@media(max-width:760px){.dj-mobile-pro-hero{border-radius:0;margin:-22px -12px 18px;padding:18px 16px 22px;align-items:center}.dj-mobile-pro-hero .section-kicker{display:none}.dj-mobile-pro-hero h1{font-size:28px;margin:0}.dj-mobile-pro-hero p{font-size:14px;margin-top:6px}.dj-desktop-summary,.dj-desktop-table{display:none!important}.dj-mobile-pro-panel{display:block}.dj-mobile-pro-head h2{font-size:32px}.dj-mobile-event-card{border-radius:30px;padding:20px;margin:14px 0}.dj-mobile-event-card h3{font-size:30px}.dj-mobile-details{grid-template-columns:1fr}.dj-mobile-main-btn{min-height:108px;font-size:24px}.dj-mobile-status strong{font-size:46px}.dj-mobile-actions{grid-template-columns:1fr}.dj-mobile-actions .btn{min-height:56px;font-size:16px}.kpi-grid{grid-template-columns:1fr 1fr}.wrap{width:min(100% - 20px,1180px)}}

/* V25 Consentimiento RGPD */
.legal-box{background:#fbfbfd;border:1px solid #e5e7eb;border-radius:18px;padding:20px;max-height:420px;overflow:auto;margin:18px 0;color:#1d1d1f;line-height:1.55;font-size:.96rem}
.legal-box p{margin:0 0 14px}.legal-box p:last-child{margin-bottom:0}
.consent-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0}
.radio-card{display:flex;gap:12px;align-items:flex-start;border:1px solid #e5e7eb;background:#fff;border-radius:18px;padding:16px;cursor:pointer;box-shadow:0 10px 25px rgba(15,23,42,.04)}
.radio-card input{margin-top:4px}.radio-card b{display:block;font-size:1.02rem;color:#111827}.radio-card span{display:block;color:#6b7280;font-size:.9rem;margin-top:3px}
.rgpd-card .signature-pad-wrap{margin-top:18px}
@media(max-width:720px){.consent-options{grid-template-columns:1fr}.legal-box{max-height:360px;font-size:.9rem;padding:16px}}

/* V26: acciones de eliminación definitiva en listados */
.delete-final-form{display:inline-flex;gap:6px;align-items:center;flex-wrap:wrap}
.delete-final-form input{max-width:120px;height:38px;padding:0 10px;border:1px solid #ffd6d6;border-radius:12px;background:#fff7f7;color:#9b111e;font-weight:800;text-transform:uppercase}
.mini-actions form{display:inline-block;margin:2px}
.section-event-actions form{display:inline-flex;gap:6px;align-items:center;flex-wrap:wrap;margin:2px}
.timeline-inline-action{display:inline-flex;margin:0}
.timeline-weddings-row:target{outline:3px solid rgba(0,113,227,.28);outline-offset:-3px}
.timeline-weddings-row:target td{background:rgba(0,113,227,.06)}
.timeline-weddings-row:has(.timeline-wedding-select:checked) td{
  background:#fffdf3;
  box-shadow:inset 0 1px 0 rgba(17,24,39,.06),inset 0 -1px 0 rgba(17,24,39,.06);
}
.timeline-visible-count{
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:38px;
  padding:0 12px;
  border-radius:999px;
  background:#f8fafc;
  border:1px solid rgba(17,24,39,.08);
  font-weight:850;
}
.timeline-visible-count b{font-size:16px;color:#111827}
.timeline-weddings-toolbar .section-search{
  min-width:260px;
}
.timeline-warning-text{display:inline-block;margin-top:6px;color:#b00020;font-weight:800}
@media(max-width:760px){
  .timeline-visible-count,
  .timeline-weddings-toolbar .section-search{
    width:100%;
  }
}

/* V26: acciones de eliminación definitiva en listados */
.delete-final-form{display:inline-flex;gap:6px;align-items:center;flex-wrap:wrap}
.delete-final-form input{max-width:120px;height:38px;padding:0 10px;border:1px solid #ffd6d6;border-radius:12px;background:#fff7f7;color:#9b111e;font-weight:800;text-transform:uppercase}
.mini-actions form{display:inline-block;margin:2px}
.section-event-actions form{display:inline-flex;gap:6px;align-items:center;flex-wrap:wrap;margin:2px}

/* V27 CRM Comercial */
.crm-card textarea{min-height:84px;resize:vertical}
.crm-grid{grid-template-columns:minmax(280px,1fr) minmax(280px,1fr);gap:22px;align-items:start}
.crm-summary-grid .quick-card b{font-size:1.05rem}
.crm-timeline{display:flex;flex-direction:column;gap:12px;margin-top:12px;max-height:520px;overflow:auto;padding-right:4px}
.crm-note{border:1px solid rgba(0,0,0,.08);border-radius:16px;background:#fff;padding:14px;box-shadow:0 10px 24px rgba(0,0,0,.04)}
.crm-note-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:8px}
.crm-note-head b{flex:1;min-width:0}
.crm-note-head span{font-size:.82rem;color:#737373;white-space:nowrap}
.crm-note p{margin:8px 0 10px;white-space:pre-wrap;line-height:1.45}
.btn.tiny{padding:7px 10px;font-size:.78rem;margin-top:10px}
@media(max-width:760px){.crm-grid{grid-template-columns:1fr}.crm-note-head{display:block}.crm-note-head span{display:block;margin-top:4px}.crm-timeline{max-height:none}}

/* V28 CRM individual por boda */
.crm-status-banner{display:grid;grid-template-columns:auto repeat(4,minmax(0,1fr));gap:14px;align-items:center;padding:16px;border-radius:22px;border:1px solid rgba(0,0,0,.08);background:#f8f8fa;margin:12px 0 18px}
.crm-status-banner b{display:block;font-size:18px;color:#111;line-height:1.1}.crm-status-banner small{display:block;color:#6e6e73;margin-top:4px}.crm-status-logo{width:54px;height:54px;border-radius:18px;background:#fff;display:flex;align-items:center;justify-content:center;font-size:28px;box-shadow:0 8px 24px rgba(0,0,0,.08)}
.crm-status-card{border:0}.crm-status-follow,.crm-status-banner.crm-status-follow{background:#fff9e8}.crm-status-decision,.crm-status-banner.crm-status-decision{background:#fff3e8}.crm-status-meeting,.crm-status-banner.crm-status-meeting{background:#eaf3ff}.crm-status-signature,.crm-status-banner.crm-status-signature{background:#f5edff}.crm-status-risk,.crm-status-banner.crm-status-risk{background:#ffecec}.crm-status-closed,.crm-status-banner.crm-status-closed{background:#eafaf0}
.crm-focus-board{padding:0;overflow:hidden;margin:18px 0;border:1px solid rgba(17,24,39,.08);box-shadow:0 24px 70px rgba(30,25,15,.08)}
.crm-focus-header{align-items:center}.crm-focus-status{min-width:220px;border:1px solid rgba(17,24,39,.08);border-radius:18px;background:#fff;padding:13px 15px;box-shadow:0 10px 28px rgba(17,24,39,.05)}.crm-focus-status.crm-status-follow{background:#fff9e8}.crm-focus-status.crm-status-decision{background:#fff3e8}.crm-focus-status.crm-status-meeting{background:#eaf3ff}.crm-focus-status.crm-status-signature{background:#f5edff}.crm-focus-status.crm-status-risk{background:#ffecec}.crm-focus-status.crm-status-closed{background:#eafaf0}.crm-focus-status span{font-size:20px;margin-right:7px}.crm-focus-status b{display:inline;color:#111827}.crm-focus-status small{display:block;margin-top:4px;color:#6b7280;font-weight:750}
.crm-focus-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:16px;padding:22px}.crm-focus-main{border-radius:24px;padding:22px;background:#111827;color:#fff;min-height:198px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.crm-focus-main h2{color:#fff;margin:8px 0;font-size:30px;line-height:1.05;letter-spacing:-.04em}.crm-focus-main p{color:rgba(255,255,255,.76);line-height:1.45;margin:0 0 14px;max-width:720px}.crm-focus-main .section-kicker{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.18);color:#fff}
.crm-focus-danger .crm-focus-main{background:linear-gradient(135deg,#8f1d1d,#111827)}.crm-focus-warning .crm-focus-main{background:linear-gradient(135deg,#8a5a0a,#111827)}.crm-focus-info .crm-focus-main{background:linear-gradient(135deg,#1d4f8f,#111827)}.crm-focus-ok .crm-focus-main{background:linear-gradient(135deg,#166534,#111827)}
.crm-focus-kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.crm-focus-kpis div{border:1px solid rgba(17,24,39,.08);border-radius:20px;background:#fff;padding:18px;min-height:94px;box-shadow:0 10px 24px rgba(17,24,39,.045)}.crm-focus-kpis b{display:block;font-size:32px;line-height:1;letter-spacing:-.06em;color:#111827}.crm-focus-kpis span{display:block;margin-top:8px;font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:900;color:#6b7280}.crm-focus-kpis .danger{background:#fff1f2;border-color:#fecdd3}.crm-focus-kpis .warning{background:#fffbeb;border-color:#fde68a}
.crm-ops-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;padding:0 22px 22px}.crm-ops-card{display:flex;flex-direction:column;gap:8px;border:1px solid rgba(17,24,39,.08);border-radius:20px;background:#fbfbfd;padding:16px;min-height:156px;min-width:0}.crm-ops-card>span{font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:950;color:#6b7280}.crm-ops-card b{font-size:16px;line-height:1.18;color:#111827;overflow-wrap:anywhere}.crm-ops-card small{color:#4b5563;line-height:1.35;font-weight:700;overflow-wrap:anywhere}.crm-ops-card>a,.crm-ops-actions{margin-top:auto}.crm-ops-actions{display:flex;gap:6px;flex-wrap:wrap}
.crm-shortcuts-card{padding:0;overflow:hidden}.crm-shortcut-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;padding:0 22px 22px}.crm-shortcut-btn{appearance:none;border:1px solid rgba(17,24,39,.08);border-radius:18px;background:#fff;color:#111827;text-align:left;padding:16px;min-height:124px;cursor:pointer;box-shadow:0 10px 24px rgba(17,24,39,.045);display:flex;flex-direction:column;gap:7px;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.crm-shortcut-btn:hover{transform:translateY(-1px);box-shadow:0 16px 34px rgba(17,24,39,.08);border-color:rgba(17,24,39,.16)}.crm-shortcut-btn span{font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:950;color:#6b7280}.crm-shortcut-btn b{font-size:19px;line-height:1.05;letter-spacing:-.035em}.crm-shortcut-btn small{margin-top:auto;color:#4b5563;font-size:12px;font-weight:750;line-height:1.25}.crm-inline-shortcuts{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 14px}.crm-inline-shortcuts button{appearance:none;border:1px solid rgba(17,24,39,.08);border-radius:999px;background:#f8fafc;color:#111827;padding:9px 12px;font-size:12px;font-weight:900;cursor:pointer}.crm-inline-shortcuts button:hover{background:#111827;color:#fff;border-color:#111827}
.crm-standalone-grid{grid-template-columns:minmax(320px,0.95fr) minmax(360px,1.05fr);align-items:start}.crm-detail-timeline{max-height:780px;overflow:auto;padding-right:8px}.crm-note-detailed{padding:16px;border-radius:18px;background:#fff;border:1px solid #e5e5ea;margin-bottom:12px}.crm-note-detailed p{white-space:pre-wrap;line-height:1.45}.crm-mini-card .page-head{margin-bottom:10px}.fc-crm-call{background:#fff3e8!important;border-color:#f59e0b!important;color:#111!important}.fc-crm-meeting{background:#eaf3ff!important;border-color:#2563eb!important;color:#111!important}.fc-crm-follow{background:#f5edff!important;border-color:#7c3aed!important;color:#111!important}
@media(max-width:1180px){.crm-ops-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.crm-focus-layout{grid-template-columns:1fr}}
@media(max-width:780px){.crm-status-banner{grid-template-columns:1fr;gap:10px}.crm-status-logo{width:48px;height:48px}.crm-standalone-grid{grid-template-columns:1fr}.crm-detail-timeline{max-height:none}.crm-focus-header{align-items:flex-start}.crm-focus-status{min-width:0;width:100%}.crm-focus-layout{padding:16px}.crm-focus-main{border-radius:20px;padding:18px;min-height:0}.crm-focus-main h2{font-size:24px}.crm-focus-kpis,.crm-ops-grid{grid-template-columns:1fr}.crm-ops-grid{padding:0 16px 16px}.crm-focus-main .top-actions{width:100%;align-items:stretch}.crm-focus-main .btn{width:100%}}

/* V29 - CRM Notas Historial */
.crm-notes-grid{align-items:start;grid-template-columns:minmax(280px,0.8fr) minmax(360px,1.2fr)}
.crm-notes-history-box{min-height:420px}
.crm-note-meta-row{display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap;margin-top:10px}
.crm-notes-only-timeline .crm-note{border-left:4px solid #111;padding-left:18px}
.crm-note-filter-tools{display:grid;gap:12px;margin:0 0 16px}.crm-note-filter-tools .section-search{width:100%}.crm-note-filter-chips{display:flex;gap:8px;flex-wrap:wrap}.crm-note-filter-chip{appearance:none;border:1px solid rgba(17,17,17,.08);background:#fff;color:#111;border-radius:12px;padding:9px 11px;font-weight:900;cursor:pointer}.crm-note-filter-chip span{display:inline-grid;place-items:center;min-width:22px;margin-left:5px;padding:2px 6px;border-radius:999px;background:#f4efe6;font-size:11px}.crm-note-filter-chip.active{background:#111;color:#fff;border-color:#111}.crm-note-filter-chip.active span{background:#fff;color:#111}.crm-note[hidden]{display:none}
.crm-detail-note-tools{margin:4px 0 18px}.crm-note-detailed .notification-select-control{flex:0 0 44px}
.crm-note.is-selected,.template-library-row.is-selected{border-color:rgba(17,24,39,.28)!important;box-shadow:0 20px 55px rgba(17,24,39,.12)!important}
.crm-note-quick-tools{margin:10px 0 0}
@media (max-width: 860px){.crm-notes-grid{grid-template-columns:1fr}.crm-note-meta-row{display:block}.portal-menu{grid-template-columns:1fr}}

/* V29.1: acceso CRM visible dentro de cada boda */
.crm-access-highlight{border:1px solid rgba(0,113,227,.35)!important;background:linear-gradient(135deg,#eef6ff,#ffffff)!important;box-shadow:0 10px 24px rgba(0,113,227,.12)}
.crm-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.crm-mini-card .page-head{align-items:center}
@media(max-width:720px){.crm-actions{width:100%}.crm-actions .btn{width:100%;justify-content:center}}


/* V30: portada personalizada por los novios */
.couple-cover-hero{isolation:isolate;min-height:360px;}
.couple-cover-hero.has-couple-cover{
  background:linear-gradient(135deg,rgba(0,0,0,.52),rgba(0,0,0,.22)),var(--couple-cover-url);
  background-position:var(--couple-cover-position, center center);
  background-size:var(--couple-cover-size, cover);
  color:#fff;
}
.couple-cover-hero.has-couple-cover:before{
  content:"";position:absolute;inset:0;background-image:var(--couple-cover-url);background-position:var(--couple-cover-position, center center);background-size:var(--couple-cover-size, contain);background-repeat:no-repeat;z-index:0;filter:saturate(1.08);opacity:.95;
}
.couple-cover-hero.has-couple-cover:after{
  content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.62),rgba(0,0,0,.20) 55%,rgba(0,0,0,.50));z-index:0;filter:none;width:auto;height:auto;border-radius:0;
}
.couple-cover-hero.has-couple-cover .premium-hero-content{position:relative;z-index:2;}
.couple-cover-hero.has-couple-cover .section-kicker{background:rgba(255,255,255,.18);border-color:rgba(255,255,255,.22);color:rgba(255,255,255,.90);backdrop-filter:blur(14px)}
.couple-cover-hero.has-couple-cover .premium-subtitle{color:rgba(255,255,255,.86);text-shadow:0 2px 18px rgba(0,0,0,.45)}
.couple-cover-hero.has-couple-cover h1{text-shadow:0 6px 26px rgba(0,0,0,.48)}
.couple-cover-hero.has-couple-cover .meta-chip{background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.20);color:#fff;backdrop-filter:blur(14px)}
.cover-upload-card{margin-top:0;}
.cover-upload-form{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:end;}
@media(max-width:760px){.couple-cover-hero{min-height:440px}.cover-upload-form{grid-template-columns:1fr}.couple-cover-hero.has-couple-cover:after{background:linear-gradient(180deg,rgba(0,0,0,.60),rgba(0,0,0,.18) 48%,rgba(0,0,0,.70));}}


/* V31: ajuste manual portada novios + vista Admin */
.cover-adjust-form{margin-top:18px;padding:18px;border:1px solid rgba(0,0,0,.08);border-radius:22px;background:rgba(255,255,255,.72)}
.cover-preview{height:220px;border-radius:24px;overflow:hidden;background-image:linear-gradient(135deg,rgba(0,0,0,.40),rgba(0,0,0,.10)),var(--couple-cover-url);background-position:var(--couple-cover-position,center center);background-size:var(--couple-cover-size,cover);background-repeat:no-repeat;box-shadow:inset 0 0 0 1px rgba(255,255,255,.22),0 18px 40px rgba(0,0,0,.10);margin:12px 0 16px}
.cover-adjust-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:12px}
.admin-couple-cover-card{margin-bottom:18px}
.admin-couple-cover-preview{min-height:280px;border-radius:28px;background-image:linear-gradient(90deg,rgba(0,0,0,.62),rgba(0,0,0,.18)),var(--couple-cover-url);background-position:var(--couple-cover-position,center center);background-size:var(--couple-cover-size,cover);background-repeat:no-repeat;display:flex;align-items:flex-end;padding:28px;color:#fff;box-shadow:0 22px 54px rgba(0,0,0,.14);overflow:hidden}
.admin-couple-cover-preview b{display:block;font-size:34px;line-height:1;text-shadow:0 8px 24px rgba(0,0,0,.50)}
.admin-couple-cover-preview small{display:block;margin-top:8px;color:rgba(255,255,255,.78)}
@media(max-width:760px){.cover-preview{height:260px}.admin-couple-cover-preview{min-height:220px}.admin-couple-cover-preview b{font-size:26px}}

/* V32 – Portal Wedding Planners + portada Admin PRO */
.admin-cover-hero.has-cover{
  background-image:linear-gradient(90deg,rgba(0,0,0,.72),rgba(0,0,0,.28),rgba(0,0,0,.72)),var(--couple-cover-url);
  background-position:var(--couple-cover-position,center center);
  background-size:var(--couple-cover-size,cover);
  background-repeat:no-repeat;
  color:#fff;
}
.admin-cover-hero.has-cover .premium-subtitle,
.admin-cover-hero.has-cover .meta-chip,
.admin-cover-hero.has-cover .section-kicker{color:rgba(255,255,255,.9)}
.admin-cover-hero.has-cover h1{color:#fff;text-shadow:0 10px 40px rgba(0,0,0,.45)}
.wp-hero,.wp-event-hero{background:linear-gradient(135deg,#101116,#2f3138);color:#fff;}
.wp-hero .premium-subtitle,.wp-event-hero .premium-subtitle{color:rgba(255,255,255,.78)}
.wp-hero h1,.wp-event-hero h1{color:#fff}
.wp-event-hero .countdown-card,.wp-hero .countdown-card{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.18)}
@media(max-width:760px){
  .admin-cover-hero.has-cover{background-size:cover;min-height:360px;display:flex;align-items:end;}
}

/* V33 — Login escritorio PRO */
.login-pro-page{
  min-height:calc(100vh - 72px);
  display:flex;
  align-items:center;
  justify-content:center;
  padding:clamp(20px,3vw,42px) 0 56px;
  background:
    radial-gradient(circle at 16% 8%, rgba(0,113,227,.11), transparent 30%),
    radial-gradient(circle at 84% 12%, rgba(0,0,0,.08), transparent 28%),
    linear-gradient(180deg, rgba(255,255,255,.55), rgba(245,245,247,.88));
}
.login-pro-shell{width:min(1280px,100%);margin:0 auto;display:grid;grid-template-columns:minmax(340px,.82fr) minmax(640px,1.18fr);gap:24px;align-items:stretch;}
.login-pro-hero{position:relative;overflow:hidden;border-radius:38px;padding:clamp(28px,4vw,52px);min-height:640px;background:linear-gradient(135deg,rgba(20,20,22,.94),rgba(44,44,48,.90)),radial-gradient(circle at 78% 18%,rgba(255,255,255,.20),transparent 30%);color:#fff;box-shadow:0 34px 90px rgba(0,0,0,.20);display:flex;flex-direction:column;justify-content:space-between;}
.login-pro-hero:before{content:"";position:absolute;inset:-40px;background:url('/apple-touch-icon.png') right -70px bottom -100px/420px 420px no-repeat;opacity:.065;filter:grayscale(1);}
.login-pro-brand,.login-pro-copy,.login-pro-metrics{position:relative;z-index:1;}
.login-pro-brand{display:flex;align-items:center;gap:16px;}
.login-pro-logo{width:min(280px,70%);height:auto;display:block;filter:drop-shadow(0 18px 38px rgba(0,0,0,.24));}
.login-pro-brand span{display:inline-flex;padding:8px 12px;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:rgba(255,255,255,.08);font-size:11px;font-weight:900;letter-spacing:.12em;color:rgba(255,255,255,.78);}
.login-pro-kicker{display:inline-flex;margin-bottom:14px;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.14);font-size:12px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.76);}
.login-pro-copy h1{font-size:clamp(42px,4.7vw,76px);line-height:.93;letter-spacing:-.075em;margin:0 0 18px;color:#fff;}
.login-pro-copy p{font-size:18px;line-height:1.48;color:rgba(255,255,255,.72);max-width:560px;margin:0;}
.login-pro-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;}
.login-pro-metrics div{border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.075);border-radius:22px;padding:16px;backdrop-filter:blur(16px);}
.login-pro-metrics b{display:block;font-size:30px;line-height:1;letter-spacing:-.06em;color:#fff;}
.login-pro-metrics span{display:block;margin-top:8px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:rgba(255,255,255,.58);}
.login-pro-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-content:stretch;}
.login-pro-card{position:relative;overflow:hidden;border-radius:32px;padding:26px;background:rgba(255,255,255,.86);border:1px solid rgba(255,255,255,.82);box-shadow:0 22px 60px rgba(0,0,0,.09);backdrop-filter:saturate(170%) blur(24px);display:flex;flex-direction:column;min-height:305px;}
.login-pro-card:after{content:"";position:absolute;right:-42px;top:-42px;width:132px;height:132px;border-radius:999px;background:rgba(0,113,227,.08);pointer-events:none;}
.login-pro-card-featured{background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(240,247,255,.88));border-color:rgba(0,113,227,.13);}
.login-pro-card-admin{background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(246,246,247,.92));}
.login-pro-card-head{position:relative;z-index:1;display:flex;align-items:center;gap:14px;margin-bottom:14px;}
.login-pro-icon{width:52px;height:52px;border-radius:18px;display:grid;place-items:center;background:#1d1d1f;color:#fff;font-size:24px;box-shadow:0 14px 28px rgba(0,0,0,.14);}
.login-pro-card-head span{display:block;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:#86868b;}
.login-pro-card-head h2{margin:3px 0 0;font-size:30px;line-height:1;letter-spacing:-.05em;}
.login-pro-card p{position:relative;z-index:1;color:#6e6e73;font-size:14px;line-height:1.42;margin:0 0 16px;min-height:40px;}
.login-pro-card form{position:relative;z-index:1;margin-top:auto;}
.login-pro-card label{margin-bottom:12px;}
.login-pro-card input{background:rgba(255,255,255,.94);border-radius:16px;}
.login-pro-card .btn.primary{width:100%;min-height:50px;margin-top:4px;background:linear-gradient(180deg,#d31028,#b8071a);box-shadow:0 14px 30px rgba(194,0,26,.18);}
.login-pro-card .btn.primary:hover{background:linear-gradient(180deg,#e21b32,#bc061b);}
@media(max-width:1120px){.login-pro-shell{grid-template-columns:1fr}.login-pro-hero{min-height:0}.login-pro-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.login-pro-brand{justify-content:space-between}.login-pro-logo{width:min(330px,62vw)}}
@media(max-width:760px){.login-pro-page{display:block;padding-top:18px}.login-pro-shell{display:block}.login-pro-hero{border-radius:28px;padding:26px;margin-bottom:18px}.login-pro-brand{display:block}.login-pro-brand span{margin-top:14px}.login-pro-copy h1{font-size:42px}.login-pro-copy p{font-size:16px}.login-pro-metrics{grid-template-columns:1fr;margin-top:22px}.login-pro-grid{grid-template-columns:1fr}.login-pro-card{border-radius:26px;min-height:0}.top-actions{overflow:auto}.top-actions .btn{white-space:nowrap}}

/* V34 — Marquee Music Planner Premium Landing */
.login-premium-v34{
  position:relative;
  min-height:100vh;
  padding:clamp(24px,4vw,56px);
  background:
    linear-gradient(90deg,rgba(255,255,255,.86) 0%,rgba(255,255,255,.74) 42%,rgba(255,255,255,.68) 100%),
    radial-gradient(circle at 18% 22%,rgba(255,255,255,.92),transparent 30%),
    radial-gradient(circle at 80% 18%,rgba(210,175,115,.22),transparent 34%),
    linear-gradient(135deg,#fbfaf6,#f5f1ea 48%,#fff 100%);
  overflow:hidden;
}
.login-premium-v34:before{
  content:"";
  position:absolute;
  inset:-6%;
  background:
    radial-gradient(circle at 20% 82%,rgba(186,146,78,.18) 0 2px,transparent 3px),
    radial-gradient(circle at 28% 77%,rgba(0,0,0,.10) 0 2px,transparent 3px),
    radial-gradient(circle at 36% 80%,rgba(186,146,78,.14) 0 2px,transparent 3px),
    radial-gradient(circle at 50% 78%,rgba(0,0,0,.08) 0 2px,transparent 3px),
    radial-gradient(circle at 64% 81%,rgba(186,146,78,.13) 0 2px,transparent 3px),
    radial-gradient(circle at 74% 76%,rgba(0,0,0,.08) 0 2px,transparent 3px),
    linear-gradient(14deg,transparent 0 56%,rgba(255,255,255,.92) 57% 59%,transparent 60%),
    linear-gradient(-18deg,transparent 0 54%,rgba(255,255,255,.78) 55% 58%,transparent 59%),
    radial-gradient(ellipse at 34% 92%,rgba(0,0,0,.16),transparent 34%),
    radial-gradient(ellipse at 20% 84%,rgba(255,255,255,.72),transparent 38%),
    radial-gradient(ellipse at 70% 86%,rgba(255,255,255,.62),transparent 36%);
  background-size:120px 120px,110px 110px,130px 130px,125px 125px,115px 115px,120px 120px,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%;
  opacity:.62;
  filter:blur(10px) saturate(115%);
  pointer-events:none;
}
.login-premium-v34:after{
  content:"";
  position:absolute;
  left:-8%;right:-8%;bottom:-12%;height:48%;
  background:
    radial-gradient(ellipse at 16% 88%,rgba(185,142,73,.18),transparent 32%),
    radial-gradient(ellipse at 42% 86%,rgba(255,255,255,.78),transparent 36%),
    radial-gradient(ellipse at 72% 82%,rgba(185,142,73,.12),transparent 30%),
    linear-gradient(0deg,rgba(255,255,255,.82),transparent);
  filter:blur(18px);
  pointer-events:none;
}
.login-premium-v34 .login-pro-shell{
  position:relative;z-index:1;
  grid-template-columns:minmax(420px,.95fr) minmax(520px,.84fr);
  gap:clamp(24px,5vw,72px);
  align-items:center;
}
.login-premium-v34 .login-pro-hero{
  min-height:640px;
  border-radius:42px;
  padding:clamp(34px,5vw,70px);
  background:rgba(255,255,255,.18);
  color:#1d1d1f;
  box-shadow:none;
  backdrop-filter:blur(8px);
  justify-content:center;
  gap:48px;
}
.login-premium-v34 .login-pro-hero:before{display:none;}
.login-premium-v34 .login-pro-brand-clean{display:block;}
.login-premium-v34 .login-pro-brand-clean span,
.login-premium-v34 .login-pro-kicker,
.login-premium-v34 .login-pro-metrics{display:none!important;}
.login-premium-v34 .login-pro-logo{
  width:min(440px,90%);
  filter:drop-shadow(0 18px 45px rgba(255,255,255,.64));
}
.login-premium-v34 .login-pro-copy h1{
  margin:0;
  color:#111;
  font-family:Georgia,'Times New Roman',serif;
  font-weight:400;
  letter-spacing:-.045em;
  line-height:1.02;
  font-size:clamp(48px,5.1vw,86px);
  text-shadow:0 16px 42px rgba(255,255,255,.74);
}
.login-premium-v34 .login-pro-copy h1 em{
  color:#b39258;
  font-style:italic;
}
.login-premium-v34 .login-pro-copy p{display:none!important;}
.login-premium-v34 .login-pro-grid{
  grid-template-columns:1fr;
  gap:18px;
}
.login-premium-v34 .login-pro-card{
  border-radius:24px;
  min-height:0;
  padding:24px 28px;
  background:rgba(255,255,255,.82);
  border:1px solid rgba(255,255,255,.92);
  box-shadow:0 28px 70px rgba(0,0,0,.10);
  backdrop-filter:saturate(165%) blur(24px);
}
.login-premium-v34 .login-pro-card:after{display:none;}
.login-premium-v34 .login-pro-card-head{margin-bottom:12px;}
.login-premium-v34 .login-pro-icon{
  background:linear-gradient(180deg,#1b1b1d,#050505);
  color:#fff;
  border-radius:999px;
  width:58px;height:58px;
}
.login-premium-v34 .login-pro-card-head span{color:#b39258;}
.login-premium-v34 .login-pro-card-head h2{font-size:31px;}
.login-premium-v34 .login-pro-card p{color:#313137;font-size:15px;min-height:auto;margin-bottom:16px;}
.login-premium-v34 .login-pro-card form{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:end;}
.login-premium-v34 .login-pro-card label{margin:0;}
.login-premium-v34 .login-pro-card .btn.primary{grid-column:1 / -1;background:linear-gradient(180deg,#1b1b1d,#050505);box-shadow:0 18px 38px rgba(0,0,0,.15);}
.login-premium-v34 .login-pro-card .btn.primary:hover{background:linear-gradient(180deg,#2a2a2d,#070707);}
@media(max-width:1120px){
  .login-premium-v34 .login-pro-shell{grid-template-columns:1fr;gap:22px;}
  .login-premium-v34 .login-pro-hero{min-height:0;align-items:flex-start;}
  .login-premium-v34 .login-pro-logo{width:min(390px,80vw);}
}
@media(max-width:760px){
  .login-premium-v34{padding:18px;}
  .login-premium-v34 .login-pro-hero{border-radius:28px;padding:28px;gap:28px;background:rgba(255,255,255,.42);}
  .login-premium-v34 .login-pro-copy h1{font-size:44px;}
  .login-premium-v34 .login-pro-card{padding:22px;border-radius:22px;}
  .login-premium-v34 .login-pro-card form{grid-template-columns:1fr;}
}

/* V34.1 — Premium Wedding Hero Background real */
.login-premium-v34{
  background:
    linear-gradient(90deg,rgba(255,255,255,.82) 0%,rgba(255,255,255,.74) 39%,rgba(255,255,255,.78) 100%),
    url('/premium-wedding-hero.jpg') center center / cover no-repeat !important;
}
.login-premium-v34:before{
  inset:0;
  background:
    radial-gradient(circle at 28% 22%,rgba(255,255,255,.92),transparent 28%),
    radial-gradient(circle at 78% 18%,rgba(255,255,255,.72),transparent 36%),
    linear-gradient(180deg,rgba(255,255,255,.38),rgba(255,255,255,.74));
  opacity:.95;
  filter:blur(0px) saturate(108%);
}
.login-premium-v34:after{
  left:0;right:0;bottom:0;height:52%;
  background:linear-gradient(0deg,rgba(255,255,255,.90),rgba(255,255,255,.34),transparent);
  filter:none;
}
.login-premium-v34 .login-pro-hero{
  background:rgba(255,255,255,.22);
  backdrop-filter:blur(10px) saturate(145%);
}
.login-premium-v34 .login-pro-card{
  background:rgba(255,255,255,.88);
  box-shadow:0 30px 74px rgba(0,0,0,.12);
}
@media(max-width:760px){
  .login-premium-v34{
    background:
      linear-gradient(180deg,rgba(255,255,255,.86),rgba(255,255,255,.78)),
      url('/premium-wedding-hero.jpg') center bottom / cover no-repeat !important;
  }
}


/* V34.2 — Luxury Wedding Login UI aplicado en la app real */
.public-premium-login-v342 .top,
.public-premium-login-v342 .global-back{
  display:none!important;
}
.public-premium-login-v342 .wrap{
  width:100%!important;
  max-width:none!important;
  padding:0!important;
  margin:0!important;
}
.login-premium-v342{
  --v342-gold:#b5965b;
  --v342-black:#080808;
  --v342-text:#111114;
  position:relative;
  isolation:isolate;
  min-height:100vh;
  width:100%;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:clamp(24px,4.2vw,64px);
  background:#fbfaf7!important;
}
.login-premium-v342 .login-v342-bg{
  position:absolute;
  inset:-34px;
  z-index:-3;
  background:
    linear-gradient(90deg,rgba(255,255,255,.34) 0%,rgba(255,255,255,.58) 45%,rgba(255,255,255,.88) 100%),
    url('/login-party-bg-v342.jpg') center center/cover no-repeat;
  filter:saturate(108%);
  transform:scale(1.02);
}
.login-premium-v342:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  background:
    radial-gradient(circle at 28% 28%,rgba(255,255,255,.72),transparent 26%),
    radial-gradient(circle at 52% 16%,rgba(255,255,255,.54),transparent 32%),
    linear-gradient(90deg,rgba(255,255,255,.34) 0%,rgba(255,255,255,.40) 44%,rgba(255,255,255,.78) 100%),
    linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.74));
  pointer-events:none;
}
.login-premium-v342:after{
  content:"";
  position:absolute;
  inset:auto 0 0 0;
  height:42%;
  z-index:-1;
  background:linear-gradient(0deg,rgba(255,255,255,.86),rgba(255,255,255,.10),transparent);
  pointer-events:none;
}
.login-premium-v342 .login-pro-shell{
  width:min(1420px,100%);
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(480px,1.05fr) minmax(470px,.82fr);
  gap:clamp(38px,6vw,92px);
  align-items:center;
}
.login-premium-v342 .login-pro-hero{
  min-height:740px;
  padding:clamp(30px,4vw,72px);
  border-radius:0;
  background:transparent!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  color:var(--v342-text);
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:clamp(44px,6vw,72px);
}
.login-premium-v342 .login-pro-hero:before,
.login-premium-v342 .login-pro-hero:after,
.login-premium-v342 .login-pro-brand-clean span,
.login-premium-v342 .login-pro-kicker,
.login-premium-v342 .login-pro-metrics{
  display:none!important;
}
.login-premium-v342 .login-pro-brand{
  justify-content:flex-start;
}
.login-premium-v342 .login-pro-logo{
  width:min(455px,88%);
  height:auto;
  display:block;
  filter:drop-shadow(0 22px 50px rgba(255,255,255,.70));
}
.login-premium-v342 .login-pro-copy h1{
  margin:0;
  color:#111114;
  font-family:Georgia,'Times New Roman',serif;
  font-weight:400;
  letter-spacing:-.055em;
  line-height:1.03;
  font-size:clamp(56px,5.15vw,92px);
  text-shadow:0 18px 54px rgba(255,255,255,.76);
}
.login-premium-v342 .login-pro-copy h1 em{
  color:var(--v342-gold);
  font-style:italic;
  white-space:nowrap;
}
.login-premium-v342 .login-pro-copy h1:after{
  content:"";
  display:block;
  width:260px;
  height:1px;
  margin-top:34px;
  background:linear-gradient(90deg,transparent,var(--v342-gold),transparent);
  opacity:.75;
}
.login-premium-v342 .login-pro-copy p{
  display:none!important;
}
.login-premium-v342 .login-pro-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:16px;
  align-content:center;
}
.login-premium-v342 .login-pro-card{
  min-height:0!important;
  border-radius:26px;
  padding:22px 24px;
  background:rgba(255,255,255,.87);
  border:1px solid rgba(255,255,255,.96);
  box-shadow:0 28px 72px rgba(22,20,18,.12);
  backdrop-filter:saturate(160%) blur(26px);
  -webkit-backdrop-filter:saturate(160%) blur(26px);
  overflow:hidden;
}
.login-premium-v342 .login-pro-card:after{
  display:none!important;
}
.login-premium-v342 .login-pro-card-head{
  display:flex;
  align-items:center;
  gap:18px;
  margin-bottom:12px;
}
.login-premium-v342 .login-pro-icon{
  width:58px;
  height:58px;
  border-radius:999px;
  display:grid;
  place-items:center;
  color:#fff;
  background:linear-gradient(180deg,#19191b,#050505);
  font-size:23px;
  box-shadow:0 16px 30px rgba(0,0,0,.18);
  flex:0 0 auto;
}
.login-premium-v342 .login-pro-card-head span{
  color:var(--v342-gold);
  font-size:12px;
  font-weight:900;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.login-premium-v342 .login-pro-card-head h2{
  margin:2px 0 0;
  color:#0e0e11;
  font-size:30px;
  line-height:1;
  letter-spacing:-.055em;
}
.login-premium-v342 .login-pro-card p{
  color:#2c2c31;
  font-size:15px;
  line-height:1.34;
  margin:0 0 18px 76px;
  min-height:0!important;
  max-width:480px;
}
.login-premium-v342 .login-pro-card form{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px 14px;
  align-items:end;
  margin:0;
}
.login-premium-v342 .login-pro-card label{
  margin:0;
  color:#57575d;
  font-size:12px;
  font-weight:800;
}
.login-premium-v342 .login-pro-card input{
  min-height:42px;
  border-radius:999px;
  background:rgba(255,255,255,.86);
  border:1px solid rgba(0,0,0,.09);
  box-shadow:inset 0 1px 2px rgba(0,0,0,.02);
}
.login-premium-v342 .login-pro-card input:focus{
  border-color:rgba(181,150,91,.58);
  box-shadow:0 0 0 4px rgba(181,150,91,.12);
}
.login-premium-v342 .login-pro-card .btn.primary{
  grid-column:1/-1;
  width:100%;
  min-height:48px;
  border-radius:999px;
  background:linear-gradient(180deg,#18181a,#030303)!important;
  color:#fff;
  box-shadow:0 20px 42px rgba(0,0,0,.18);
}
.login-premium-v342 .login-pro-card .btn.primary:hover{
  background:linear-gradient(180deg,#2b2b2e,#070707)!important;
  transform:translateY(-1px);
}
.login-premium-v342 .login-v342-footer{
  position:absolute;
  left:clamp(28px,4vw,72px);
  bottom:18px;
  z-index:2;
  color:rgba(17,17,20,.56);
  font-size:13px;
  font-weight:500;
}
.login-premium-v342 .login-v342-footer span{
  display:inline-block;
  width:1px;
  height:12px;
  background:rgba(17,17,20,.28);
  margin:0 16px;
  vertical-align:-2px;
}
@media(max-width:1180px){
  .login-premium-v342{
    padding:24px;
  }
  .login-premium-v342 .login-pro-shell{
    grid-template-columns:1fr;
    gap:24px;
  }
  .login-premium-v342 .login-pro-hero{
    min-height:0;
    padding:34px 24px 10px;
    gap:28px;
  }
  .login-premium-v342 .login-pro-logo{width:min(390px,78vw);}
  .login-premium-v342 .login-pro-copy h1{font-size:clamp(44px,10vw,74px);}
  .login-premium-v342 .login-pro-grid{max-width:720px;width:100%;margin:0 auto;}
  .login-premium-v342 .login-v342-footer{position:relative;left:auto;bottom:auto;margin:22px auto 0;text-align:center;}
}
@media(max-width:760px){
  .login-premium-v342{
    padding:18px;
    align-items:flex-start;
  }
  .login-premium-v342 .login-v342-bg{
    background:
      linear-gradient(180deg,rgba(255,255,255,.72),rgba(255,255,255,.82)),
      url('/login-party-bg-v342.jpg') center bottom/cover no-repeat;
  }
  .login-premium-v342 .login-pro-hero{
    padding:20px 6px 8px;
    gap:22px;
  }
  .login-premium-v342 .login-pro-logo{
    width:min(310px,86vw);
  }
  .login-premium-v342 .login-pro-copy h1{
    font-size:44px;
    line-height:1.04;
  }
  .login-premium-v342 .login-pro-copy h1:after{
    width:180px;
    margin-top:22px;
  }
  .login-premium-v342 .login-pro-card{
    border-radius:22px;
    padding:20px;
  }
  .login-premium-v342 .login-pro-card-head{
    gap:14px;
  }
  .login-premium-v342 .login-pro-icon{
    width:52px;height:52px;
  }
  .login-premium-v342 .login-pro-card p{
    margin-left:0;
    font-size:14px;
  }
  .login-premium-v342 .login-pro-card form{
    grid-template-columns:1fr;
  }
  .login-premium-v342 .login-v342-footer{
    font-size:12px;
    padding:0 8px 18px;
  }
}

/* V34.3 – Luxury Chaos Party Background aplicado sobre el login real */
.login-premium-v342 .login-v342-bg{
  background:
    linear-gradient(90deg, rgba(255,255,255,.46) 0%, rgba(255,255,255,.61) 42%, rgba(255,255,255,.90) 100%),
    linear-gradient(180deg, rgba(255,255,255,.12), rgba(255,255,255,.72)),
    url('/login-party-bg-v343.jpg') center center / cover no-repeat !important;
  filter:saturate(94%) brightness(1.08) contrast(.94) !important;
  transform:scale(1.035) !important;
}
.login-premium-v342:before{
  background:
    radial-gradient(circle at 30% 24%, rgba(255,255,255,.78), transparent 28%),
    radial-gradient(circle at 54% 10%, rgba(255,255,255,.58), transparent 34%),
    linear-gradient(90deg, rgba(255,255,255,.34) 0%, rgba(255,255,255,.44) 44%, rgba(255,255,255,.82) 100%),
    linear-gradient(180deg, rgba(255,255,255,.12), rgba(255,255,255,.76)) !important;
}
.login-premium-v342 .login-pro-card{
  background:rgba(255,255,255,.90) !important;
  box-shadow:0 30px 76px rgba(58,46,31,.14) !important;
}
.login-premium-v342 .login-pro-copy h1{
  text-shadow:0 18px 54px rgba(255,255,255,.88), 0 2px 0 rgba(255,255,255,.32) !important;
}
@media(max-width:760px){
  .login-premium-v342 .login-v342-bg{
    background:
      linear-gradient(180deg, rgba(255,255,255,.72), rgba(255,255,255,.88)),
      url('/login-party-bg-v343.jpg') center bottom / cover no-repeat !important;
  }
}

/* V34.4 – Login PRO compacto + fondo visible */
.login-premium-v342{
  min-height:100dvh!important;
  padding:clamp(14px,2.2vw,30px)!important;
  align-items:center!important;
}
.login-premium-v342 .login-v342-bg{
  inset:-18px!important;
  background:
    linear-gradient(90deg, rgba(255,255,255,.20) 0%, rgba(255,255,255,.32) 38%, rgba(255,255,255,.76) 76%, rgba(255,255,255,.88) 100%),
    linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.28)),
    url('/login-party-bg-v343.jpg') center center / cover no-repeat !important;
  filter:saturate(105%) brightness(1.03) contrast(1.02) !important;
  transform:scale(1.015)!important;
}
.login-premium-v342:before{
  background:
    radial-gradient(circle at 25% 20%, rgba(255,255,255,.34), transparent 26%),
    radial-gradient(circle at 63% 14%, rgba(255,255,255,.42), transparent 34%),
    linear-gradient(90deg, rgba(255,255,255,.16) 0%, rgba(255,255,255,.24) 42%, rgba(255,255,255,.62) 74%, rgba(255,255,255,.78) 100%),
    linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,.34)) !important;
}
.login-premium-v342:after{
  height:34%!important;
  background:linear-gradient(0deg,rgba(255,255,255,.52),rgba(255,255,255,.10),transparent)!important;
}
.login-premium-v342 .login-pro-shell{
  width:min(1460px,100%)!important;
  grid-template-columns:minmax(500px,1.08fr) minmax(420px,.76fr)!important;
  gap:clamp(26px,4vw,72px)!important;
  align-items:center!important;
}
.login-premium-v342 .login-pro-hero{
  min-height:0!important;
  height:auto!important;
  padding:clamp(22px,3vw,48px)!important;
  gap:clamp(28px,4vw,52px)!important;
}
.login-premium-v342 .login-pro-logo{
  width:min(410px,86%)!important;
}
.login-premium-v342 .login-pro-copy h1{
  font-size:clamp(46px,4.45vw,76px)!important;
  line-height:1.02!important;
  text-shadow:0 16px 46px rgba(255,255,255,.94), 0 2px 0 rgba(255,255,255,.38)!important;
}
.login-premium-v342 .login-pro-copy h1:after{
  margin-top:24px!important;
}
.login-premium-v342 .login-pro-grid{
  gap:10px!important;
  align-content:center!important;
}
.login-premium-v342 .login-pro-card{
  border-radius:22px!important;
  padding:15px 18px!important;
  background:rgba(255,255,255,.88)!important;
  box-shadow:0 18px 50px rgba(58,46,31,.12)!important;
}
.login-premium-v342 .login-pro-card-head{
  gap:13px!important;
  margin-bottom:7px!important;
}
.login-premium-v342 .login-pro-icon{
  width:46px!important;
  height:46px!important;
  font-size:20px!important;
}
.login-premium-v342 .login-pro-card-head span{
  font-size:10.5px!important;
  letter-spacing:.08em!important;
}
.login-premium-v342 .login-pro-card-head h2{
  font-size:25px!important;
}
.login-premium-v342 .login-pro-card p{
  font-size:13px!important;
  line-height:1.28!important;
  margin:0 0 10px 59px!important;
  max-width:none!important;
}
.login-premium-v342 .login-pro-card form{
  gap:8px 10px!important;
}
.login-premium-v342 .login-pro-card label{
  font-size:10.5px!important;
}
.login-premium-v342 .login-pro-card input{
  min-height:35px!important;
  padding:8px 13px!important;
  margin-top:5px!important;
  font-size:13px!important;
}
.login-premium-v342 .login-pro-card .btn.primary{
  min-height:39px!important;
  margin-top:0!important;
  font-size:13px!important;
}
.login-premium-v342 .login-v342-footer{
  bottom:10px!important;
  font-size:12px!important;
  color:rgba(17,17,20,.62)!important;
}
@media(max-width:1180px){
  .login-premium-v342 .login-pro-shell{grid-template-columns:1fr!important;gap:18px!important;}
  .login-premium-v342 .login-pro-grid{max-width:760px!important;}
}
@media(max-width:760px){
  .login-premium-v342{padding:14px!important;align-items:flex-start!important;}
  .login-premium-v342 .login-v342-bg{
    background:
      linear-gradient(180deg, rgba(255,255,255,.52), rgba(255,255,255,.84)),
      url('/login-party-bg-v343.jpg') center bottom/cover no-repeat !important;
  }
  .login-premium-v342 .login-pro-card p{margin-left:0!important;}
  .login-premium-v342 .login-pro-card form{grid-template-columns:1fr!important;}
}


/* V35 — logins individuales con diseño premium del login principal + logos Music Planner */
.public-single-login-v35 .top,
.public-single-login-v35 .global-back{
  display:none!important;
}
.public-single-login-v35 .wrap{
  width:100%!important;
  max-width:none!important;
  padding:0!important;
  margin:0!important;
}
.login-single-v35{
  min-height:100vh;
  padding:clamp(22px,4vw,64px)!important;
}
.single-login-shell-v35{
  width:min(1240px,100%);
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(420px,1fr) minmax(420px,.78fr);
  gap:clamp(32px,6vw,90px);
  align-items:center;
}
.single-login-brand-v35{
  min-height:min(720px,calc(100vh - 120px));
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:clamp(38px,5vw,64px);
  padding:clamp(22px,4vw,56px);
}
.single-login-logo-v35{
  width:min(455px,88%);
  height:auto;
  display:block;
  filter:drop-shadow(0 22px 50px rgba(255,255,255,.70));
}
.single-login-brand-v35 h1{
  margin:0;
  color:#111114;
  font-family:Georgia,'Times New Roman',serif;
  font-weight:400;
  letter-spacing:-.055em;
  line-height:1.03;
  font-size:clamp(54px,5.6vw,92px);
  text-shadow:0 18px 54px rgba(255,255,255,.76);
}
.single-login-brand-v35 h1 em{
  color:#b5965b;
  font-style:italic;
  white-space:nowrap;
}
.single-login-card-v35{
  width:100%;
  border-radius:30px!important;
  padding:clamp(28px,3.6vw,48px)!important;
  background:rgba(255,255,255,.91)!important;
  border:1px solid rgba(255,255,255,.96)!important;
  box-shadow:0 34px 80px rgba(0,0,0,.14)!important;
  backdrop-filter:saturate(170%) blur(26px)!important;
  -webkit-backdrop-filter:saturate(170%) blur(26px)!important;
}
.single-login-card-v35 .login-pro-card-head{
  margin-bottom:16px;
}
.single-login-card-v35 .login-pro-icon{
  width:64px!important;
  height:64px!important;
  border-radius:999px!important;
  background:linear-gradient(180deg,#1b1b1d,#050505)!important;
  color:#fff!important;
  box-shadow:0 18px 36px rgba(0,0,0,.18)!important;
}
.single-login-card-v35 .login-pro-card-head span{
  color:#b5965b!important;
  letter-spacing:.08em;
}
.single-login-card-v35 .login-pro-card-head h2{
  font-size:clamp(32px,3vw,46px)!important;
}
.single-login-card-v35 p{
  color:#33343a;
  font-size:16px;
  line-height:1.45;
  margin-bottom:22px;
}
.single-login-card-v35 form{
  display:grid!important;
  grid-template-columns:1fr 1fr;
  gap:14px;
  align-items:end;
}
.single-login-card-v35 label{margin:0!important;}
.single-login-card-v35 input{
  background:rgba(255,255,255,.88)!important;
  border:1px solid rgba(0,0,0,.10)!important;
  border-radius:999px!important;
  padding:14px 18px!important;
}
.single-login-card-v35 .btn.primary{
  grid-column:1/-1;
  background:linear-gradient(180deg,#1b1b1d,#050505)!important;
  border-radius:999px!important;
  box-shadow:0 18px 38px rgba(0,0,0,.15)!important;
  width:100%;
  min-height:48px;
}
.single-login-note-v35{
  margin-top:18px!important;
  font-size:13px!important;
  color:#74747a!important;
}
.admin-side-brand img{max-width:178px;height:auto!important;object-fit:contain;}
.admin-mobile-logo img{height:34px!important;max-width:210px;object-fit:contain;}
.brand img{height:36px!important;max-width:230px;object-fit:contain;}
@media(max-width:980px){
  .single-login-shell-v35{grid-template-columns:1fr;gap:18px;}
  .single-login-brand-v35{min-height:0;padding:10px 8px 0;gap:22px;}
  .single-login-logo-v35{width:min(340px,82vw);}
  .single-login-brand-v35 h1{font-size:clamp(42px,11vw,64px);}
}
@media(max-width:680px){
  .login-single-v35{padding:18px!important;}
  .single-login-card-v35{padding:24px!important;border-radius:24px!important;}
  .single-login-card-v35 form{grid-template-columns:1fr!important;}
}

/* V36 – Premium Interior Experience */
body:has(.interior-hero-v36){
  background:
    radial-gradient(circle at 18% 10%, rgba(255,255,255,.96), transparent 34%),
    radial-gradient(circle at 78% 0%, rgba(230,205,160,.26), transparent 34%),
    linear-gradient(135deg,#fffaf2 0%,#f7efe1 42%,#ffffff 100%)!important;
}
.interior-hero-v36{
  position:relative;
  overflow:hidden;
  border-radius:34px!important;
  min-height:260px;
  padding:clamp(26px,4vw,46px)!important;
  background:
    linear-gradient(135deg,rgba(255,255,255,.92),rgba(255,251,244,.76)),
    radial-gradient(circle at 88% 18%,rgba(191,155,90,.28),transparent 32%),
    linear-gradient(120deg,#fff,#f4eadb)!important;
  border:1px solid rgba(255,255,255,.86)!important;
  box-shadow:0 34px 90px rgba(44,32,18,.12)!important;
  backdrop-filter:saturate(150%) blur(22px);
  -webkit-backdrop-filter:saturate(150%) blur(22px);
}
.interior-hero-v36.has-cover:before{
  content:"";
  position:absolute;
  inset:0;
  background-image:var(--cover-url);
  background-size:var(--cover-size,cover);
  background-position:var(--cover-position,center center);
  background-repeat:no-repeat;
  filter:blur(12px) saturate(1.08);
  transform:scale(1.08);
  opacity:.52;
  z-index:0;
}
.interior-hero-v36.has-cover:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(255,255,255,.94) 0%,rgba(255,255,255,.78) 46%,rgba(255,255,255,.48) 100%);
  z-index:1;
}
.interior-hero-v36 > *{position:relative;z-index:2;}
.interior-hero-v36 h1{
  font-size:clamp(38px,5vw,74px)!important;
  letter-spacing:-.055em!important;
  line-height:.94!important;
  color:#121214!important;
  margin:8px 0 12px!important;
}
.interior-hero-v36 .premium-subtitle,
.dj-hero-v36 p{
  max-width:720px;
  font-size:clamp(15px,1.35vw,19px)!important;
  line-height:1.42!important;
  color:#3d3a35!important;
}
.interior-hero-v36 .countdown-card{
  background:rgba(255,255,255,.72)!important;
  border:1px solid rgba(255,255,255,.9)!important;
  box-shadow:0 22px 54px rgba(46,36,21,.12)!important;
}
.interior-kpis-v36 .kpi-card,
.premium-section-v36,
.premium-grid-v36 .card{
  background:rgba(255,255,255,.86)!important;
  border:1px solid rgba(255,255,255,.92)!important;
  box-shadow:0 22px 54px rgba(43,33,20,.08)!important;
  backdrop-filter:saturate(145%) blur(18px);
  -webkit-backdrop-filter:saturate(145%) blur(18px);
}
.event-card-grid-v36{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
  gap:18px;
}
.wp-event-card-v36{
  overflow:hidden;
  border-radius:28px;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(255,255,255,.95);
  box-shadow:0 24px 70px rgba(38,28,16,.11);
}
.wp-event-card-photo{
  min-height:190px;
  position:relative;
  background:
    linear-gradient(135deg,rgba(255,255,255,.65),rgba(220,185,125,.25)),
    radial-gradient(circle at 70% 24%,rgba(255,255,255,.9),transparent 38%),
    linear-gradient(135deg,#f6ead9,#fff);
  overflow:hidden;
}
.wp-event-card-v36.has-cover .wp-event-card-photo:before{
  content:"";
  position:absolute;
  inset:0;
  background-image:var(--cover-url);
  background-position:var(--cover-position,center center);
  background-size:var(--cover-size,cover);
  background-repeat:no-repeat;
  filter:saturate(1.06);
}
.wp-event-card-photo:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(255,255,255,.10),rgba(0,0,0,.42));
}
.wp-event-card-overlay{
  position:absolute;
  left:18px;
  right:18px;
  bottom:16px;
  z-index:2;
  color:#fff;
  text-shadow:0 2px 16px rgba(0,0,0,.35);
}
.wp-event-card-overlay span{display:block;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;opacity:.9;}
.wp-event-card-overlay b{font-size:28px;letter-spacing:-.04em;line-height:1;}
.wp-event-card-body{padding:20px;}
.wp-card-title{display:flex;gap:10px;align-items:flex-start;justify-content:space-between;}
.wp-card-title h3{font-size:24px;margin:0 0 6px;letter-spacing:-.035em;}
.wp-event-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:16px 0;}
.wp-event-metrics div{border-radius:18px;background:#faf7f1;border:1px solid rgba(181,150,91,.18);padding:12px;}
.wp-event-metrics small{display:block;color:#8a7a61;font-weight:800;font-size:10px;text-transform:uppercase;letter-spacing:.08em;}
.wp-event-metrics b{display:block;font-size:16px;margin-top:3px;color:#151515;}
.premium-menu-v36 .portal-menu-item{background:rgba(255,255,255,.9)!important;border:1px solid rgba(255,255,255,.95)!important;box-shadow:0 14px 34px rgba(0,0,0,.06)!important;}
.dj-hero-v36{
  display:flex!important;
  justify-content:space-between;
  gap:20px;
  align-items:flex-start;
}
.dj-hero-v36 form{position:relative;z-index:3;}
.interior-mobile-panel-v36 .dj-mobile-event-card{
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(255,250,241,.9))!important;
  border:1px solid rgba(255,255,255,.95)!important;
  box-shadow:0 28px 70px rgba(35,25,15,.12)!important;
}
.interior-mobile-panel-v36 .dj-mobile-main-btn.start{background:linear-gradient(135deg,#1d7b44,#2aa864)!important;box-shadow:0 20px 50px rgba(42,168,100,.28)!important;}
.interior-mobile-panel-v36 .dj-mobile-main-btn.end{background:linear-gradient(135deg,#8e1111,#de3030)!important;box-shadow:0 20px 50px rgba(222,48,48,.28)!important;}
.portal-menu,.quick-grid,.data-strip,.kpi-grid{position:relative;z-index:2;}
@media(max-width:820px){
  .interior-hero-v36{border-radius:26px!important;min-height:220px;}
  .interior-hero-v36 h1{font-size:clamp(36px,12vw,56px)!important;}
  .wp-event-metrics{grid-template-columns:1fr;}
  .dj-hero-v36{display:block!important;}
  .dj-hero-v36 form{margin-top:16px;}
}


/* V36.1 – Aplicación real del diseño premium a Novios, DJ y Wedding Planner */
body.portal-couple-v361,
body.portal-dj-v361,
body.portal-wp-v361{
  min-height:100vh;
  background:
    linear-gradient(115deg,rgba(255,255,255,.94),rgba(255,250,242,.84) 48%,rgba(255,255,255,.92)),
    radial-gradient(circle at 12% 8%,rgba(255,255,255,.98),transparent 28%),
    radial-gradient(circle at 82% 18%,rgba(206,168,96,.22),transparent 30%),
    url('/login-party-bg-v343.jpg') center/cover fixed no-repeat!important;
  color:#141414;
}
body.portal-couple-v361:before,
body.portal-dj-v361:before,
body.portal-wp-v361:before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(255,255,255,.18),rgba(255,255,255,.7));
  backdrop-filter:blur(5px) saturate(115%);
  -webkit-backdrop-filter:blur(5px) saturate(115%);
  z-index:-1;
}
body.portal-couple-v361 .top,
body.portal-dj-v361 .top,
body.portal-wp-v361 .top{
  width:min(100% - 36px,1240px);
  margin:14px auto 0;
  border-radius:28px;
  background:rgba(255,255,255,.74)!important;
  border:1px solid rgba(255,255,255,.92)!important;
  box-shadow:0 24px 70px rgba(40,30,18,.10)!important;
  backdrop-filter:blur(22px) saturate(150%);
  -webkit-backdrop-filter:blur(22px) saturate(150%);
}
body.portal-couple-v361 .top .brand img,
body.portal-dj-v361 .top .brand img,
body.portal-wp-v361 .top .brand img{max-height:48px;object-fit:contain;}
body.portal-couple-v361 .wrap,
body.portal-dj-v361 .wrap,
body.portal-wp-v361 .wrap{width:min(100% - 36px,1240px);padding-top:18px;}
.portal-premium-v361{position:relative;z-index:1;}
.portal-premium-v361:before{
  content:"";
  display:block;
  height:1px;
  margin-bottom:0;
}
.portal-premium-v361 .premium-hero,
.portal-premium-v361 .dj-mobile-pro-hero{
  border-radius:42px!important;
  overflow:hidden!important;
  border:1px solid rgba(255,255,255,.96)!important;
  background:
    linear-gradient(120deg,rgba(255,255,255,.94),rgba(255,250,240,.70)),
    radial-gradient(circle at 85% 20%,rgba(197,160,88,.24),transparent 28%),
    rgba(255,255,255,.76)!important;
  box-shadow:0 34px 100px rgba(37,28,18,.15)!important;
  backdrop-filter:blur(24px) saturate(155%)!important;
  -webkit-backdrop-filter:blur(24px) saturate(155%)!important;
}
.portal-premium-v361 .premium-hero.has-couple-cover:before,
.portal-premium-v361 .interior-hero-v36.has-cover:before,
.portal-premium-v361 .dj-mobile-pro-hero.has-cover:before{
  opacity:.70!important;
  filter:blur(9px) saturate(1.12) brightness(1.08)!important;
  transform:scale(1.06)!important;
}
.portal-premium-v361 .premium-hero.has-couple-cover:after,
.portal-premium-v361 .interior-hero-v36.has-cover:after,
.portal-premium-v361 .dj-mobile-pro-hero.has-cover:after{
  background:linear-gradient(90deg,rgba(255,255,255,.96) 0%,rgba(255,255,255,.78) 46%,rgba(255,255,255,.45) 100%)!important;
}
.portal-premium-v361 .premium-hero h1,
.portal-premium-v361 .dj-mobile-pro-hero h1{
  font-size:clamp(42px,6vw,88px)!important;
  letter-spacing:-.075em!important;
  line-height:.88!important;
  color:#121212!important;
  text-shadow:none!important;
}
.portal-premium-v361 .premium-subtitle,
.portal-premium-v361 .dj-mobile-pro-hero p{
  color:#3c3833!important;
  font-size:clamp(16px,1.38vw,20px)!important;
  line-height:1.45!important;
}
.portal-premium-v361 .section-kicker{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(255,255,255,.74);
  border:1px solid rgba(0,0,0,.06);
  color:#8a6a2d!important;
  font-weight:1000!important;
  letter-spacing:.12em!important;
}
.portal-premium-v361 .meta-chip{
  background:rgba(255,255,255,.78)!important;
  border:1px solid rgba(255,255,255,.95)!important;
  box-shadow:0 10px 30px rgba(55,42,24,.08)!important;
  color:#2f2b25!important;
}
.portal-premium-v361 .countdown-card{
  background:rgba(255,255,255,.78)!important;
  color:#121212!important;
  border:1px solid rgba(255,255,255,.96)!important;
  box-shadow:0 26px 70px rgba(45,35,21,.13)!important;
  backdrop-filter:blur(18px) saturate(155%)!important;
  -webkit-backdrop-filter:blur(18px) saturate(155%)!important;
}
.portal-premium-v361 .countdown-card small,
.portal-premium-v361 .countdown-card span,
.portal-premium-v361 .progress-label{color:#776b5a!important;}
.portal-premium-v361 .countdown-card b{color:#101010!important;}
.portal-premium-v361 .progress-track{background:rgba(0,0,0,.08)!important;}
.portal-premium-v361 .progress-fill{background:linear-gradient(90deg,#111,#c7a15a)!important;}
.portal-premium-v361 .card,
.portal-premium-v361 .quick-card,
.portal-premium-v361 .kpi-card,
.portal-premium-v361 .portal-menu-item,
.portal-premium-v361 .music-card,
.portal-premium-v361 .data-tile,
.portal-premium-v361 .table-wrap,
.portal-premium-v361 .dj-mobile-event-card,
.portal-premium-v361 .dj-mobile-mini-event,
.portal-premium-v361 .wp-event-card-v36{
  background:rgba(255,255,255,.82)!important;
  border:1px solid rgba(255,255,255,.94)!important;
  box-shadow:0 22px 64px rgba(43,31,18,.10)!important;
  backdrop-filter:blur(18px) saturate(145%)!important;
  -webkit-backdrop-filter:blur(18px) saturate(145%)!important;
}
.portal-premium-v361 .portal-menu{
  position:sticky;
  top:12px;
  z-index:30;
  padding:10px;
  border-radius:30px;
  background:rgba(255,255,255,.55);
  border:1px solid rgba(255,255,255,.9);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  box-shadow:0 20px 60px rgba(38,28,16,.08);
}
.portal-premium-v361 .portal-menu-item{border-radius:22px!important;}
.portal-premium-v361 .portal-menu-item.active,
.portal-premium-v361 .portal-menu-item:hover{
  background:#111!important;
  color:#fff!important;
  transform:translateY(-1px);
}
.portal-premium-v361 .portal-menu-item.active small,
.portal-premium-v361 .portal-menu-item:hover small{color:rgba(255,255,255,.7)!important;}
.portal-premium-v361 .btn.primary,
.portal-premium-v361 button.btn.primary,
.portal-premium-v361 .dj-mobile-main-btn{
  background:linear-gradient(135deg,#111,#35322d)!important;
  color:#fff!important;
  border:0!important;
  box-shadow:0 18px 40px rgba(0,0,0,.18)!important;
}
.portal-premium-v361 .btn.light{
  background:rgba(255,255,255,.70)!important;
  border:1px solid rgba(0,0,0,.08)!important;
  color:#171717!important;
}
.portal-premium-dj-v361 .dj-mobile-pro-panel{display:block;}
.portal-premium-dj-v361 .dj-desktop-summary{margin-top:18px;}
.portal-premium-wp-v361 .event-card-grid-v36{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));}
.portal-premium-couple-v361 .quick-grid,
.portal-premium-wp-v361 .kpi-grid,
.portal-premium-dj-v361 .kpi-grid{gap:18px;}
.portal-premium-couple-v361 .quick-card,
.portal-premium-wp-v361 .kpi-card,
.portal-premium-dj-v361 .kpi-card{border-radius:28px!important;padding:22px!important;}
.portal-premium-v361 .cover-preview{border:1px solid rgba(255,255,255,.95)!important;box-shadow:0 18px 55px rgba(40,30,18,.12)!important;}
@media(max-width:760px){
  body.portal-couple-v361 .top,body.portal-dj-v361 .top,body.portal-wp-v361 .top{width:min(100% - 20px,1240px);border-radius:22px;margin-top:10px;}
  body.portal-couple-v361 .wrap,body.portal-dj-v361 .wrap,body.portal-wp-v361 .wrap{width:min(100% - 20px,1240px);}
  .portal-premium-v361 .premium-hero,.portal-premium-v361 .dj-mobile-pro-hero{border-radius:28px!important;padding:24px!important;}
  .portal-premium-v361 .premium-hero h1,.portal-premium-v361 .dj-mobile-pro-hero h1{font-size:clamp(40px,13vw,58px)!important;}
  .portal-premium-v361 .portal-menu{position:relative;top:auto;}
}

/* V36.2 – Hero Novios Premium real: foto protagonista */
.portal-premium-couple-v361 .couple-hero-v362{
  min-height:clamp(520px,58vh,680px)!important;
  padding:clamp(32px,5.5vw,72px)!important;
  display:flex!important;
  align-items:flex-end!important;
  border-radius:44px!important;
  overflow:hidden!important;
  background:
    linear-gradient(135deg,rgba(255,255,255,.95),rgba(246,238,222,.86)),
    radial-gradient(circle at 78% 16%,rgba(199,161,90,.28),transparent 34%)!important;
}
.portal-premium-couple-v361 .couple-hero-v362.has-couple-cover{
  background-image:
    linear-gradient(90deg,rgba(0,0,0,.70) 0%,rgba(0,0,0,.42) 42%,rgba(0,0,0,.16) 68%,rgba(0,0,0,.52) 100%),
    var(--couple-cover-url)!important;
  background-position:var(--couple-cover-position,center center)!important;
  background-size:var(--couple-cover-size,cover)!important;
  background-repeat:no-repeat!important;
  color:#fff!important;
  box-shadow:0 44px 120px rgba(30,20,10,.22)!important;
}
.portal-premium-couple-v361 .couple-hero-v362.has-couple-cover:before{
  display:none!important;
}
.portal-premium-couple-v361 .couple-hero-v362.has-couple-cover:after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  width:auto!important;
  height:auto!important;
  border-radius:0!important;
  background:
    radial-gradient(circle at 22% 28%,rgba(255,255,255,.10),transparent 34%),
    linear-gradient(180deg,rgba(0,0,0,.06),rgba(0,0,0,.22))!important;
  pointer-events:none!important;
}
.portal-premium-couple-v361 .couple-hero-v362 .premium-hero-content{
  width:100%!important;
  grid-template-columns:minmax(0,1.05fr) minmax(280px,.42fr)!important;
  align-items:end!important;
  gap:clamp(20px,4vw,46px)!important;
  position:relative!important;
  z-index:2!important;
}
.portal-premium-couple-v361 .couple-hero-v362.has-couple-cover h1{
  color:#fff!important;
  text-shadow:0 16px 48px rgba(0,0,0,.62)!important;
  font-size:clamp(54px,7vw,104px)!important;
  max-width:980px!important;
}
.portal-premium-couple-v361 .couple-hero-v362.has-couple-cover .premium-subtitle{
  color:rgba(255,255,255,.92)!important;
  text-shadow:0 8px 30px rgba(0,0,0,.55)!important;
  max-width:760px!important;
}
.portal-premium-couple-v361 .couple-hero-v362.has-couple-cover .section-kicker,
.portal-premium-couple-v361 .couple-hero-v362.has-couple-cover .meta-chip{
  background:rgba(255,255,255,.18)!important;
  border:1px solid rgba(255,255,255,.35)!important;
  color:#fff!important;
  backdrop-filter:blur(18px) saturate(150%)!important;
  -webkit-backdrop-filter:blur(18px) saturate(150%)!important;
  box-shadow:0 12px 38px rgba(0,0,0,.16)!important;
}
.portal-premium-couple-v361 .couple-hero-v362.has-couple-cover .countdown-card{
  background:rgba(255,255,255,.22)!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.32)!important;
  backdrop-filter:blur(22px) saturate(155%)!important;
  -webkit-backdrop-filter:blur(22px) saturate(155%)!important;
  box-shadow:0 30px 90px rgba(0,0,0,.28)!important;
}
.portal-premium-couple-v361 .couple-hero-v362.has-couple-cover .countdown-card small,
.portal-premium-couple-v361 .couple-hero-v362.has-couple-cover .countdown-card span,
.portal-premium-couple-v361 .couple-hero-v362.has-couple-cover .progress-label{
  color:rgba(255,255,255,.82)!important;
}
.portal-premium-couple-v361 .couple-hero-v362.has-couple-cover .countdown-card b{color:#fff!important;}
.portal-premium-couple-v361 .couple-hero-v362.has-couple-cover .progress-track{background:rgba(255,255,255,.20)!important;}
.portal-premium-couple-v361 .couple-hero-v362.has-couple-cover .progress-fill{background:linear-gradient(90deg,#fff,#c7a15a)!important;}
.portal-premium-couple-v361 .cover-upload-card{
  margin-top:22px!important;
  border-radius:34px!important;
}
.portal-premium-couple-v361 .cover-preview{
  height:clamp(300px,34vw,460px)!important;
  border-radius:30px!important;
  background-image:linear-gradient(90deg,rgba(0,0,0,.45),rgba(0,0,0,.08)),var(--couple-cover-url)!important;
  background-position:var(--couple-cover-position,center center)!important;
  background-size:var(--couple-cover-size,cover)!important;
}
.portal-premium-couple-v361 .cover-adjust-form .grid{
  grid-template-columns:repeat(2,minmax(220px,1fr))!important;
}
@media(max-width:980px){
  .portal-premium-couple-v361 .couple-hero-v362{min-height:620px!important;align-items:flex-end!important;}
  .portal-premium-couple-v361 .couple-hero-v362 .premium-hero-content{grid-template-columns:1fr!important;}
  .portal-premium-couple-v361 .couple-hero-v362.has-couple-cover{
    background-image:linear-gradient(180deg,rgba(0,0,0,.34),rgba(0,0,0,.64)),var(--couple-cover-url)!important;
  }
}
@media(max-width:640px){
  .portal-premium-couple-v361 .couple-hero-v362{min-height:560px!important;border-radius:30px!important;padding:24px!important;}
  .portal-premium-couple-v361 .couple-hero-v362.has-couple-cover h1{font-size:clamp(46px,14vw,64px)!important;}
  .portal-premium-couple-v361 .cover-adjust-form .grid{grid-template-columns:1fr!important;}
}

/* =========================================================
   V37 — ADMIN PREMIUM EXPERIENCE UNIFICADO
   Diseño Marquee Music Planner aplicado a TODAS las páginas Admin
   ========================================================= */
body:has(.admin-app-shell){
  background:
    linear-gradient(120deg, rgba(255,255,255,.92), rgba(255,250,240,.88)),
    url('/login-party-bg-v343.jpg') center/cover fixed no-repeat!important;
  color:#151515;
}
.admin-app-shell{
  background:transparent!important;
  grid-template-columns:292px minmax(0,1fr)!important;
}
.admin-sidebar{
  margin:18px 0 18px 18px!important;
  height:calc(100vh - 36px)!important;
  border-radius:34px!important;
  overflow:hidden!important;
  background:linear-gradient(180deg,rgba(18,18,18,.92),rgba(18,18,18,.82))!important;
  border:1px solid rgba(255,255,255,.16)!important;
  box-shadow:0 30px 90px rgba(0,0,0,.25)!important;
  backdrop-filter:blur(28px) saturate(135%)!important;
  -webkit-backdrop-filter:blur(28px) saturate(135%)!important;
}
.admin-side-brand{
  padding:28px 24px 14px!important;
  display:block!important;
}
.admin-side-brand img{
  width:205px!important;
  height:auto!important;
  object-fit:contain!important;
  filter:none!important;
}
.admin-side-label{
  padding:18px 24px 8px!important;
  color:rgba(255,255,255,.52)!important;
  font-size:11px!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
  font-weight:900!important;
}
.admin-side-nav{
  padding:0 14px!important;
  gap:5px!important;
}
.admin-side-nav a{
  min-height:44px!important;
  border-radius:18px!important;
  color:rgba(255,255,255,.78)!important;
  font-weight:800!important;
  letter-spacing:-.01em!important;
  background:transparent!important;
  border:1px solid transparent!important;
  transition:background .18s ease, transform .18s ease, color .18s ease, border-color .18s ease!important;
}
.admin-side-nav a span{opacity:.95!important;filter:saturate(.9)!important;}
.admin-side-nav a:hover,
.admin-side-nav a.active,
.admin-side-nav a.is-nav-loading{
  color:#fff!important;
  background:rgba(255,255,255,.13)!important;
  border-color:rgba(255,255,255,.18)!important;
  transform:translateX(3px)!important;
  text-decoration:none!important;
}
.admin-side-nav a.active:before,
.admin-side-nav a.is-nav-loading:before{
  content:""!important;
  width:4px!important;
  height:24px!important;
  border-radius:99px!important;
  background:linear-gradient(180deg,#d0ad68,#fff0c7)!important;
  position:absolute!important;
  left:8px!important;
}
.admin-side-nav a{position:relative!important;padding-left:18px!important;}
.admin-side-footer{
  margin:22px 18px 18px!important;
  padding:18px!important;
  border-radius:24px!important;
  background:rgba(255,255,255,.08)!important;
  border:1px solid rgba(255,255,255,.12)!important;
  color:rgba(255,255,255,.72)!important;
}
.admin-side-footer b{color:#fff!important;display:block!important;}
.admin-side-footer span{color:#d0ad68!important;display:block!important;font-weight:800!important;margin:4px 0!important;}
.admin-app-main{
  padding:18px 22px 60px!important;
  min-width:0!important;
}
.admin-topbar{
  height:74px!important;
  border-radius:30px!important;
  margin-bottom:20px!important;
  padding:0 22px!important;
  background:rgba(255,255,255,.78)!important;
  border:1px solid rgba(255,255,255,.78)!important;
  box-shadow:0 16px 50px rgba(60,45,20,.08)!important;
  backdrop-filter:blur(22px) saturate(170%)!important;
  -webkit-backdrop-filter:blur(22px) saturate(170%)!important;
}
.admin-mobile-logo img{height:38px!important;width:auto!important;}
.admin-wrap{width:min(1500px,100%)!important;padding:0!important;}
.admin-wrap>.global-back{margin:0 0 14px!important;}
.admin-wrap .back-btn{
  background:rgba(255,255,255,.78)!important;
  border:1px solid rgba(0,0,0,.06)!important;
  color:#1f1f1f!important;
  box-shadow:0 12px 34px rgba(0,0,0,.06)!important;
}
.admin-dashboard-hero,
.admin-wrap .premium-hero,
.admin-wrap .dj-hero{
  position:relative!important;
  overflow:hidden!important;
  border-radius:38px!important;
  padding:38px!important;
  background:
    linear-gradient(120deg, rgba(255,255,255,.92), rgba(255,248,235,.82)),
    url('/login-party-bg-v343.jpg') center/cover no-repeat!important;
  color:#111!important;
  border:1px solid rgba(255,255,255,.72)!important;
  box-shadow:0 30px 90px rgba(60,45,20,.12)!important;
}
.admin-dashboard-hero:after,
.admin-wrap .premium-hero:after,
.admin-wrap .dj-hero:after{
  content:"";position:absolute;inset:auto -12% -52% auto;width:430px;height:430px;border-radius:50%;
  background:radial-gradient(circle,rgba(208,173,104,.28),rgba(208,173,104,0) 68%);pointer-events:none;
}
.admin-dashboard-hero h1,
.admin-wrap .premium-hero h1,
.admin-wrap .dj-hero h1,
.admin-wrap .dj-hero h2{color:#111!important;letter-spacing:-.065em!important;}
.admin-dashboard-hero .muted,
.admin-wrap .premium-hero .muted,
.admin-wrap .dj-hero .muted{color:#5f5b52!important;}
.admin-wrap .section-kicker{
  background:rgba(255,255,255,.72)!important;
  border:1px solid rgba(208,173,104,.24)!important;
  color:#9a7a3f!important;
  box-shadow:0 8px 20px rgba(208,173,104,.08)!important;
}
.admin-wrap .card,
.admin-wrap .file-box,
.admin-wrap .quick-card,
.admin-wrap .kpi-card,
.admin-wrap .data-tile,
.admin-wrap .crm-mini-card,
.admin-wrap .payment-card,
.admin-wrap .chart-card,
.admin-wrap .wp-ranking-card,
.admin-wrap .event-danger-zone{
  background:rgba(255,255,255,.82)!important;
  border:1px solid rgba(255,255,255,.78)!important;
  border-radius:32px!important;
  box-shadow:0 22px 70px rgba(60,45,20,.09)!important;
  backdrop-filter:blur(22px) saturate(155%)!important;
  -webkit-backdrop-filter:blur(22px) saturate(155%)!important;
}
.admin-wrap .card h1,.admin-wrap .card h2,.admin-wrap .card h3,
.admin-wrap .file-box h3{color:#151515!important;}
.admin-wrap .quick-grid,
.admin-wrap .kpi-grid{gap:16px!important;}
.admin-wrap .kpi-card:after,
.admin-wrap .quick-card:after{
  content:"";position:absolute;right:-38px;top:-38px;width:118px;height:118px;border-radius:50%;
  background:rgba(208,173,104,.12)!important;
}
.admin-wrap .quick-card,.admin-wrap .kpi-card{position:relative!important;overflow:hidden!important;}
.admin-wrap .quick-card .icon{
  background:linear-gradient(135deg,#fff7e8,#f1e4c9)!important;
  color:#9a7a3f!important;
  border:1px solid rgba(208,173,104,.22)!important;
}
.admin-wrap .kpi-card span,
.admin-wrap .quick-card small,
.admin-wrap .data-tile span,
.admin-wrap .table th{
  color:#8a8276!important;
}
.admin-wrap .table-wrap{
  border-radius:28px!important;
  border:1px solid rgba(255,255,255,.78)!important;
  box-shadow:0 20px 55px rgba(60,45,20,.07)!important;
}
.admin-wrap .table{
  background:rgba(255,255,255,.78)!important;
}
.admin-wrap .table th{
  background:rgba(245,239,228,.72)!important;
  font-weight:900!important;
}
.admin-wrap .table td{border-bottom:1px solid rgba(60,45,20,.07)!important;}
.admin-wrap input,.admin-wrap textarea,.admin-wrap select{
  background:rgba(255,255,255,.78)!important;
  border:1px solid rgba(60,45,20,.13)!important;
  border-radius:18px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.55)!important;
}
.admin-wrap input:focus,.admin-wrap textarea:focus,.admin-wrap select:focus{
  border-color:#d0ad68!important;
  box-shadow:0 0 0 4px rgba(208,173,104,.15)!important;
}
.admin-wrap .btn.primary,
.admin-wrap .btn.red{
  background:linear-gradient(135deg,#111,#2d2d2d)!important;
  color:#fff!important;
  box-shadow:0 14px 35px rgba(0,0,0,.16)!important;
}
.admin-wrap .btn.light{
  background:rgba(255,255,255,.72)!important;
  color:#171717!important;
  border:1px solid rgba(0,0,0,.08)!important;
}
.admin-wrap .btn.danger{background:linear-gradient(135deg,#b42318,#d64535)!important;}
.admin-wrap .music-card-header{
  background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(255,250,241,.62))!important;
  border-bottom:1px solid rgba(60,45,20,.08)!important;
}
.admin-wrap .pill{
  background:rgba(255,255,255,.78)!important;
  border-color:rgba(208,173,104,.18)!important;
  color:#8a6a33!important;
}
.admin-wrap .charts-grid,.admin-wrap .payment-admin-grid{gap:18px!important;}
.admin-wrap .fc .fc-button-primary{background:#111!important;border-color:#111!important;}
.admin-wrap .fc .fc-button-primary:hover{background:#d0ad68!important;border-color:#d0ad68!important;}
.admin-wrap .fc .fc-day-today{background:rgba(208,173,104,.12)!important;}
.admin-wrap .pdf-viewer,
.admin-wrap .infographic-full,
.admin-wrap .infographic-preview{
  border-radius:30px!important;
  border:1px solid rgba(255,255,255,.78)!important;
  box-shadow:0 22px 70px rgba(60,45,20,.10)!important;
}
@media(max-width:1180px){
  .admin-app-shell{display:block!important;}
  .admin-sidebar{margin:0!important;height:auto!important;border-radius:0 0 30px 30px!important;}
  .admin-side-nav{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;padding-bottom:16px!important;}
  .admin-app-main{padding:14px!important;}
  .admin-topbar{border-radius:24px!important;}
}
@media(max-width:720px){
  .admin-side-nav{grid-template-columns:1fr!important;}
  .admin-topbar{height:auto!important;display:block!important;padding:14px!important;}
  .admin-topbar-actions{margin-top:10px;display:grid!important;grid-template-columns:repeat(2,1fr)!important;}
  .admin-dashboard-hero,.admin-wrap .premium-hero,.admin-wrap .dj-hero{padding:26px!important;border-radius:30px!important;}
  .admin-wrap .card,.admin-wrap .file-box,.admin-wrap .quick-card,.admin-wrap .kpi-card{border-radius:26px!important;}
}

/* V37.1 REAL – Portada unificada Admin / Wedding Planner / DJ
   Reutiliza la misma lectura visual del Hero Novios Premium V36.2. */
.admin-cover-hero.has-cover,
.portal-premium-v361 .wp-event-hero-v36.has-cover,
.portal-premium-v361 .dj-hero-v36.has-cover{
  position:relative!important;
  min-height:clamp(520px,58vh,680px)!important;
  padding:clamp(32px,5.5vw,72px)!important;
  display:flex!important;
  align-items:flex-end!important;
  border-radius:44px!important;
  overflow:hidden!important;
  color:#fff!important;
  background-image:
    linear-gradient(90deg,rgba(0,0,0,.70) 0%,rgba(0,0,0,.42) 42%,rgba(0,0,0,.16) 68%,rgba(0,0,0,.52) 100%),
    var(--couple-cover-url, var(--cover-url))!important;
  background-position:var(--couple-cover-position, var(--cover-position, center center))!important;
  background-size:var(--couple-cover-size, var(--cover-size, cover))!important;
  background-repeat:no-repeat!important;
  box-shadow:0 44px 120px rgba(30,20,10,.22)!important;
  border:1px solid rgba(255,255,255,.26)!important;
}
.admin-cover-hero.has-cover:before,
.portal-premium-v361 .wp-event-hero-v36.has-cover:before,
.portal-premium-v361 .dj-hero-v36.has-cover:before{
  display:none!important;
}
.admin-cover-hero.has-cover:after,
.portal-premium-v361 .wp-event-hero-v36.has-cover:after,
.portal-premium-v361 .dj-hero-v36.has-cover:after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  width:auto!important;
  height:auto!important;
  border-radius:0!important;
  background:
    radial-gradient(circle at 22% 28%,rgba(255,255,255,.10),transparent 34%),
    linear-gradient(180deg,rgba(0,0,0,.06),rgba(0,0,0,.22))!important;
  pointer-events:none!important;
}
.admin-cover-hero.has-cover .premium-hero-content,
.portal-premium-v361 .wp-event-hero-v36.has-cover .premium-hero-content{
  width:100%!important;
  grid-template-columns:minmax(0,1.05fr) minmax(280px,.42fr)!important;
  align-items:end!important;
  gap:clamp(20px,4vw,46px)!important;
  position:relative!important;
  z-index:2!important;
}
.portal-premium-v361 .dj-hero-v36.has-cover > *{
  position:relative!important;
  z-index:2!important;
}
.admin-cover-hero.has-cover h1,
.portal-premium-v361 .wp-event-hero-v36.has-cover h1,
.portal-premium-v361 .dj-hero-v36.has-cover h1{
  color:#fff!important;
  text-shadow:0 16px 48px rgba(0,0,0,.62)!important;
  font-size:clamp(54px,7vw,104px)!important;
  line-height:.88!important;
  letter-spacing:-.075em!important;
  max-width:980px!important;
}
.admin-cover-hero.has-cover .premium-subtitle,
.portal-premium-v361 .wp-event-hero-v36.has-cover .premium-subtitle,
.portal-premium-v361 .dj-hero-v36.has-cover p{
  color:rgba(255,255,255,.92)!important;
  text-shadow:0 8px 30px rgba(0,0,0,.55)!important;
  max-width:760px!important;
}
.admin-cover-hero.has-cover .section-kicker,
.admin-cover-hero.has-cover .meta-chip,
.portal-premium-v361 .wp-event-hero-v36.has-cover .section-kicker,
.portal-premium-v361 .wp-event-hero-v36.has-cover .meta-chip,
.portal-premium-v361 .dj-hero-v36.has-cover .section-kicker,
.portal-premium-v361 .dj-hero-v36.has-cover .meta-chip{
  background:rgba(255,255,255,.18)!important;
  border:1px solid rgba(255,255,255,.35)!important;
  color:#fff!important;
  backdrop-filter:blur(18px) saturate(150%)!important;
  -webkit-backdrop-filter:blur(18px) saturate(150%)!important;
  box-shadow:0 12px 38px rgba(0,0,0,.16)!important;
}
.admin-cover-hero.has-cover .countdown-card,
.portal-premium-v361 .wp-event-hero-v36.has-cover .countdown-card{
  background:rgba(255,255,255,.22)!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.32)!important;
  backdrop-filter:blur(22px) saturate(155%)!important;
  -webkit-backdrop-filter:blur(22px) saturate(155%)!important;
  box-shadow:0 30px 90px rgba(0,0,0,.28)!important;
}
.admin-cover-hero.has-cover .countdown-card small,
.admin-cover-hero.has-cover .countdown-card span,
.portal-premium-v361 .wp-event-hero-v36.has-cover .countdown-card small,
.portal-premium-v361 .wp-event-hero-v36.has-cover .countdown-card span{
  color:rgba(255,255,255,.82)!important;
}
.admin-cover-hero.has-cover .countdown-card b,
.portal-premium-v361 .wp-event-hero-v36.has-cover .countdown-card b{
  color:#fff!important;
}
.admin-couple-cover-card{display:none!important;}
@media(max-width:820px){
  .admin-cover-hero.has-cover,
  .portal-premium-v361 .wp-event-hero-v36.has-cover,
  .portal-premium-v361 .dj-hero-v36.has-cover{
    min-height:560px!important;
    border-radius:30px!important;
    padding:24px!important;
  }
  .admin-cover-hero.has-cover .premium-hero-content,
  .portal-premium-v361 .wp-event-hero-v36.has-cover .premium-hero-content{
    grid-template-columns:1fr!important;
  }
  .admin-cover-hero.has-cover h1,
  .portal-premium-v361 .wp-event-hero-v36.has-cover h1,
  .portal-premium-v361 .dj-hero-v36.has-cover h1{
    font-size:clamp(46px,14vw,64px)!important;
  }
}

/* =========================================================
   V37.2 – Fondos fijos portales
   Mantiene fijas las imágenes/hero de Novios, DJ y Wedding Planner
   durante el scroll para evitar movimiento incómodo al rellenar datos.
   No toca dependencias ni base de datos.
   ========================================================= */
body.portal-couple-v361,
body.portal-dj-v361,
body.portal-wp-v361{
  background-attachment:fixed!important;
  background-position:center center!important;
  background-size:cover!important;
}

/* Fijar portada de novios y portadas compartidas */
.portal-premium-couple-v361 .couple-hero-v362.has-couple-cover,
.portal-premium-v361 .interior-hero-v36.has-cover,
.portal-premium-v361 .dj-mobile-pro-hero.has-cover,
.portal-premium-v361 .wp-event-hero-v36.has-cover{
  background-attachment:fixed!important;
  background-position:var(--couple-cover-position, var(--cover-position, center center))!important;
  background-size:var(--couple-cover-size, var(--cover-size, cover))!important;
}

/* Las capas internas de imagen también quedan fijas */
.portal-premium-couple-v361 .couple-hero-v362.has-couple-cover:before,
.portal-premium-v361 .interior-hero-v36.has-cover:before,
.portal-premium-v361 .dj-mobile-pro-hero.has-cover:before,
.portal-premium-v361 .wp-event-hero-v36.has-cover:before{
  background-attachment:fixed!important;
  background-position:var(--couple-cover-position, var(--cover-position, center center))!important;
  background-size:var(--couple-cover-size, var(--cover-size, cover))!important;
}

/* El contenido sigue desplazándose sobre el fondo de forma cómoda */
.portal-premium-v361 .card,
.portal-premium-v361 .music-card,
.portal-premium-v361 .quick-card,
.portal-premium-v361 .kpi-card,
.portal-premium-v361 .table-wrap,
.portal-premium-v361 .file-box,
.portal-premium-v361 .cover-upload-card,
.portal-premium-v361 .cover-adjust-form{
  transform:translateZ(0);
}

/* En móvil iOS background-attachment:fixed puede ser inestable; mantenemos la portada estable sin saltos */
@media(max-width:820px){
  .portal-premium-couple-v361 .couple-hero-v362.has-couple-cover,
  .portal-premium-v361 .interior-hero-v36.has-cover,
  .portal-premium-v361 .dj-mobile-pro-hero.has-cover,
  .portal-premium-v361 .wp-event-hero-v36.has-cover{
    background-attachment:scroll!important;
    background-position:var(--couple-cover-position, var(--cover-position, center center))!important;
  }
}


/* V38 Premium Visual Identity */
:root{
 --premium-bg1:#f7f2ea;
 --premium-bg2:#efe5d6;
 --premium-bg3:#ffffff;
}
body::before{
 content:"";
 position:fixed;
 inset:0;
 z-index:-2;
 background:
 radial-gradient(circle at 20% 20%, rgba(255,255,255,.95), transparent 35%),
 radial-gradient(circle at 80% 30%, rgba(240,225,205,.65), transparent 40%),
 radial-gradient(circle at 50% 80%, rgba(255,255,255,.85), transparent 35%),
 linear-gradient(135deg,var(--premium-bg3),var(--premium-bg1),var(--premium-bg2));
 background-attachment:fixed;
}
body::after{
 content:"";
 position:fixed;
 inset:0;
 z-index:-1;
 backdrop-filter: blur(10px);
 pointer-events:none;
}
.premium-hero,.couple-cover-hero,.admin-cover-hero,.wp-event-hero-v36,.dj-hero-v36{
 box-shadow:0 20px 60px rgba(0,0,0,.08);
 border:1px solid rgba(255,255,255,.6);
}

/* V38.3 – botón volver universal sin romper distribución del login */
.public-single-login-v35 .back-home-v381{
  position:fixed!important;
  top:clamp(18px,2.2vw,34px)!important;
  left:clamp(18px,2.6vw,42px)!important;
  z-index:80!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  padding:11px 18px!important;
  border-radius:999px!important;
  color:rgba(24,24,28,.72)!important;
  text-decoration:none!important;
  font-weight:800!important;
  font-size:13px!important;
  letter-spacing:.01em!important;
  background:rgba(255,255,255,.58)!important;
  border:1px solid rgba(255,255,255,.76)!important;
  box-shadow:0 18px 44px rgba(0,0,0,.08)!important;
  backdrop-filter:saturate(160%) blur(18px)!important;
  -webkit-backdrop-filter:saturate(160%) blur(18px)!important;
}
.public-single-login-v35 .back-home-v381:hover{
  color:#111!important;
  background:rgba(255,255,255,.82)!important;
  transform:translateY(-1px)!important;
}
.public-single-login-v35 .single-login-shell-v35{
  grid-auto-flow:row!important;
}
.public-single-login-v35 .single-login-brand-v35{
  grid-column:1!important;
}
.public-single-login-v35 .single-login-card-v35{
  grid-column:2!important;
}
@media(max-width:980px){
  .public-single-login-v35 .back-home-v381{
    position:relative!important;
    top:auto!important;
    left:auto!important;
    margin:0 0 14px 0!important;
    width:max-content!important;
  }
  .public-single-login-v35 .single-login-brand-v35,
  .public-single-login-v35 .single-login-card-v35{
    grid-column:auto!important;
  }
}

/* V39 – Luxury Corporate Identity
   Elimina todas las fotografías de fondo de los logins y unifica la identidad visual corporativa.
   Fondo CSS puro: blanco roto, champagne, cristal y profundidad premium. */
.public-premium-login-v342,
.public-single-login-v35{
  background:#fbfaf7!important;
}
.login-premium-v34.login-premium-v342,
.login-premium-v342,
.login-single-v35{
  --mmp-ivory:#fbfaf7;
  --mmp-champagne:#d8c29a;
  --mmp-champagne-dark:#b5965b;
  --mmp-ink:#111114;
  --mmp-muted:#6f6b64;
  position:relative!important;
  isolation:isolate!important;
  background:
    radial-gradient(circle at 14% 14%, rgba(255,255,255,.98) 0, rgba(255,255,255,.70) 20%, transparent 42%),
    radial-gradient(circle at 86% 18%, rgba(216,194,154,.28) 0, rgba(216,194,154,.12) 24%, transparent 46%),
    radial-gradient(circle at 46% 86%, rgba(255,255,255,.92) 0, rgba(255,255,255,.35) 24%, transparent 46%),
    linear-gradient(135deg,#ffffff 0%,#fbfaf7 34%,#f3eadc 100%)!important;
  overflow:hidden!important;
}
.login-premium-v342 .login-v342-bg{
  background:
    radial-gradient(ellipse at 8% 8%, rgba(255,255,255,.98), transparent 38%),
    radial-gradient(ellipse at 78% 15%, rgba(214,190,140,.22), transparent 42%),
    radial-gradient(ellipse at 18% 88%, rgba(232,218,190,.20), transparent 42%),
    linear-gradient(135deg, rgba(255,255,255,.92), rgba(247,241,231,.80))!important;
  filter:none!important;
  transform:none!important;
  opacity:1!important;
}
.login-premium-v342:before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:-2!important;
  pointer-events:none!important;
  background:
    linear-gradient(115deg, rgba(255,255,255,.86) 0%, rgba(255,255,255,.38) 48%, rgba(255,255,255,.78) 100%),
    repeating-linear-gradient(118deg, rgba(181,150,91,.055) 0 1px, transparent 1px 18px),
    radial-gradient(circle at 34% 30%, rgba(255,255,255,.72), transparent 30%),
    radial-gradient(circle at 82% 76%, rgba(181,150,91,.10), transparent 34%)!important;
  opacity:1!important;
  filter:none!important;
}
.login-premium-v342:after{
  content:""!important;
  position:absolute!important;
  inset:auto -8% -18% -8%!important;
  height:54%!important;
  z-index:-1!important;
  pointer-events:none!important;
  background:
    radial-gradient(ellipse at 22% 80%, rgba(181,150,91,.16), transparent 34%),
    radial-gradient(ellipse at 68% 70%, rgba(255,255,255,.92), transparent 42%),
    linear-gradient(0deg, rgba(255,255,255,.92), rgba(255,255,255,.22), transparent)!important;
  filter:blur(10px)!important;
}
.login-premium-v342 .login-pro-shell,
.single-login-shell-v35{
  position:relative!important;
  z-index:2!important;
}
.login-premium-v342 .login-pro-hero,
.single-login-brand-v35{
  background:rgba(255,255,255,.18)!important;
  border:1px solid rgba(255,255,255,.35)!important;
  border-radius:42px!important;
  box-shadow:none!important;
  backdrop-filter:saturate(140%) blur(10px)!important;
  -webkit-backdrop-filter:saturate(140%) blur(10px)!important;
}
.login-premium-v342 .login-pro-card,
.single-login-card-v35{
  background:rgba(255,255,255,.84)!important;
  border:1px solid rgba(255,255,255,.92)!important;
  box-shadow:0 26px 70px rgba(53,43,30,.12)!important;
  backdrop-filter:saturate(170%) blur(24px)!important;
  -webkit-backdrop-filter:saturate(170%) blur(24px)!important;
}
.login-premium-v342 .login-pro-card .btn.primary,
.single-login-card-v35 .btn.primary{
  background:linear-gradient(180deg,#19191b,#050505)!important;
  color:#fff!important;
}
.login-premium-v342 .login-pro-card .btn.primary:hover,
.single-login-card-v35 .btn.primary:hover{
  background:linear-gradient(180deg,#2b2b2d,#070707)!important;
}
.login-premium-v342 .login-pro-card-head span,
.single-login-card-v35 .login-pro-card-head span{
  color:var(--mmp-champagne-dark)!important;
}
.login-premium-v342 .login-pro-copy h1,
.single-login-brand-v35 h1{
  color:var(--mmp-ink)!important;
  text-shadow:0 18px 58px rgba(255,255,255,.95)!important;
}
.login-premium-v342 .login-pro-copy h1 em,
.single-login-brand-v35 h1 em{
  color:var(--mmp-champagne-dark)!important;
}
.back-home-v381{
  position:fixed!important;
  top:clamp(18px,3vw,34px)!important;
  left:clamp(18px,3vw,42px)!important;
  z-index:20!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  min-height:42px!important;
  padding:0 16px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.72)!important;
  border:1px solid rgba(255,255,255,.86)!important;
  color:#333!important;
  font-weight:850!important;
  box-shadow:0 12px 34px rgba(53,43,30,.10)!important;
  backdrop-filter:saturate(160%) blur(18px)!important;
  -webkit-backdrop-filter:saturate(160%) blur(18px)!important;
}
.back-home-v381:hover{
  text-decoration:none!important;
  transform:translateY(-1px)!important;
  box-shadow:0 18px 42px rgba(53,43,30,.14)!important;
}
.login-premium-v342 .login-v342-footer,
.v381-footer{
  color:rgba(17,17,20,.58)!important;
}
@media(max-width:1180px){
  .login-premium-v342 .login-pro-hero,
  .single-login-brand-v35{
    border-radius:30px!important;
  }
}
@media(max-width:760px){
  .login-premium-v342 .login-v342-bg{
    background:
      radial-gradient(circle at 22% 12%, rgba(255,255,255,.98), transparent 44%),
      radial-gradient(circle at 86% 20%, rgba(216,194,154,.20), transparent 48%),
      linear-gradient(150deg,#fff,#f7f1e7)!important;
  }
  .back-home-v381{
    position:relative!important;
    top:auto!important;
    left:auto!important;
    margin:0 0 14px 0!important;
    align-self:flex-start!important;
  }
  .single-login-shell-v35{
    display:flex!important;
    flex-direction:column!important;
  }
}

/* V41.3 – Responsive Login Mobile/iPad
   Ajuste final para que el login principal y los logins individuales se adapten bien en móvil, iPad vertical e iPad horizontal. */
html, body { max-width:100%; overflow-x:hidden; }
.public-premium-login-v342,
.public-single-login-v35{
  min-height:100dvh;
}
.login-premium-v342{
  min-height:100dvh!important;
  overflow-x:hidden!important;
}
.login-premium-v342 .login-pro-shell,
.single-login-shell-v35{
  box-sizing:border-box!important;
}
.login-premium-v342 .login-pro-card,
.single-login-card-v35{
  max-width:100%!important;
}
.login-premium-v342 .login-pro-card input,
.single-login-card-v35 input,
.login-premium-v342 .login-pro-card .btn,
.single-login-card-v35 .btn{
  min-width:0!important;
}

/* iPad horizontal / portátil pequeño */
@media (min-width: 901px) and (max-width: 1180px){
  .login-premium-v342{
    padding:24px!important;
    align-items:center!important;
  }
  .login-premium-v342 .login-pro-shell{
    width:min(100%, 980px)!important;
    grid-template-columns:1fr!important;
    gap:18px!important;
  }
  .login-premium-v342 .login-pro-hero{
    min-height:0!important;
    padding:28px 30px!important;
    gap:20px!important;
    border-radius:30px!important;
  }
  .login-premium-v342 .login-pro-logo{
    width:min(330px, 52vw)!important;
  }
  .login-premium-v342 .login-pro-copy h1{
    font-size:clamp(42px,6vw,66px)!important;
    max-width:760px!important;
  }
  .login-premium-v342 .login-pro-grid{
    width:min(100%, 860px)!important;
    margin:0 auto!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:12px!important;
  }
  .login-premium-v342 .login-pro-card{
    padding:16px 18px!important;
    border-radius:22px!important;
  }
  .login-premium-v342 .login-pro-card form{
    grid-template-columns:1fr!important;
  }
  .login-premium-v342 .login-pro-card p{
    display:none!important;
  }
  .single-login-shell-v35{
    width:min(100%, 980px)!important;
    grid-template-columns:1fr 1fr!important;
    gap:22px!important;
    align-items:center!important;
  }
  .single-login-brand-v35{
    min-height:0!important;
    padding:28px!important;
    gap:24px!important;
    border-radius:30px!important;
  }
  .single-login-logo-v35{width:min(330px, 82%)!important;}
  .single-login-brand-v35 h1{font-size:clamp(42px,6vw,68px)!important;}
  .single-login-card-v35{padding:28px!important;border-radius:28px!important;}
  .single-login-card-v35 form{grid-template-columns:1fr!important;}
  .single-login-card-v35 p{display:none!important;}
}

/* iPad vertical */
@media (min-width: 681px) and (max-width: 900px){
  .login-premium-v342,
  .login-single-v35{
    padding:20px!important;
    align-items:flex-start!important;
  }
  .login-premium-v342 .login-pro-shell,
  .single-login-shell-v35{
    width:min(100%, 760px)!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:16px!important;
  }
  .login-premium-v342 .login-pro-hero,
  .single-login-brand-v35{
    min-height:0!important;
    padding:22px 24px!important;
    gap:18px!important;
    border-radius:28px!important;
  }
  .login-premium-v342 .login-pro-logo,
  .single-login-logo-v35{
    width:min(300px, 58vw)!important;
  }
  .login-premium-v342 .login-pro-copy h1,
  .single-login-brand-v35 h1{
    font-size:clamp(40px,8vw,62px)!important;
    line-height:1.02!important;
  }
  .login-premium-v342 .login-pro-copy h1:after{margin-top:16px!important;width:160px!important;}
  .login-premium-v342 .login-pro-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:12px!important;
  }
  .login-premium-v342 .login-pro-card,
  .single-login-card-v35{
    padding:18px!important;
    border-radius:22px!important;
  }
  .login-premium-v342 .login-pro-card p,
  .single-login-card-v35 p{display:none!important;}
  .login-premium-v342 .login-pro-card form,
  .single-login-card-v35 form{grid-template-columns:1fr!important;gap:9px!important;}
  .login-premium-v342 .login-pro-icon,
  .single-login-card-v35 .login-pro-icon{width:46px!important;height:46px!important;font-size:20px!important;}
  .login-premium-v342 .login-pro-card-head h2,
  .single-login-card-v35 .login-pro-card-head h2{font-size:25px!important;}
  .back-home-v381{
    position:relative!important;top:auto!important;left:auto!important;
    margin:0 0 10px!important;
  }
}

/* Móvil */
@media (max-width: 680px){
  body.public-premium-login-v342,
  body.public-single-login-v35{
    background:#fbfaf7!important;
  }
  .login-premium-v342,
  .login-single-v35{
    min-height:100dvh!important;
    padding:12px!important;
    display:flex!important;
    align-items:flex-start!important;
    justify-content:center!important;
    overflow-y:auto!important;
  }
  .login-premium-v342 .login-pro-shell,
  .single-login-shell-v35{
    width:100%!important;
    max-width:430px!important;
    display:flex!important;
    flex-direction:column!important;
    gap:12px!important;
    margin:0 auto!important;
  }
  .login-premium-v342 .login-pro-hero,
  .single-login-brand-v35{
    min-height:0!important;
    padding:16px!important;
    gap:14px!important;
    border-radius:24px!important;
    background:rgba(255,255,255,.44)!important;
  }
  .login-premium-v342 .login-pro-logo,
  .single-login-logo-v35{
    width:min(230px,72vw)!important;
    max-height:78px!important;
    object-fit:contain!important;
  }
  .login-premium-v342 .login-pro-copy h1,
  .single-login-brand-v35 h1{
    font-size:clamp(34px,11vw,46px)!important;
    line-height:1.04!important;
    letter-spacing:-.052em!important;
  }
  .login-premium-v342 .login-pro-copy h1:after{
    width:120px!important;
    margin-top:14px!important;
  }
  .login-premium-v342 .login-pro-grid{
    width:100%!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
  }
  .login-premium-v342 .login-pro-card,
  .single-login-card-v35{
    width:100%!important;
    padding:16px!important;
    border-radius:22px!important;
    box-shadow:0 16px 42px rgba(53,43,30,.10)!important;
  }
  .login-premium-v342 .login-pro-card-head,
  .single-login-card-v35 .login-pro-card-head{
    gap:11px!important;
    margin-bottom:10px!important;
  }
  .login-premium-v342 .login-pro-icon,
  .single-login-card-v35 .login-pro-icon{
    width:42px!important;
    height:42px!important;
    font-size:18px!important;
  }
  .login-premium-v342 .login-pro-card-head span,
  .single-login-card-v35 .login-pro-card-head span{
    font-size:10px!important;
  }
  .login-premium-v342 .login-pro-card-head h2,
  .single-login-card-v35 .login-pro-card-head h2{
    font-size:22px!important;
  }
  .login-premium-v342 .login-pro-card p,
  .single-login-card-v35 p{
    display:none!important;
  }
  .login-premium-v342 .login-pro-card form,
  .single-login-card-v35 form{
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
  .login-premium-v342 .login-pro-card label,
  .single-login-card-v35 label{
    font-size:10.5px!important;
  }
  .login-premium-v342 .login-pro-card input,
  .single-login-card-v35 input{
    min-height:38px!important;
    padding:9px 13px!important;
    font-size:14px!important;
  }
  .login-premium-v342 .login-pro-card .btn.primary,
  .single-login-card-v35 .btn.primary{
    min-height:42px!important;
    font-size:14px!important;
  }
  .back-home-v381{
    position:relative!important;
    top:auto!important;
    left:auto!important;
    margin:0 0 8px!important;
    min-height:38px!important;
    padding:0 13px!important;
    font-size:13px!important;
    width:max-content!important;
    max-width:100%!important;
  }
  .login-premium-v342 .login-v342-footer,
  .v381-footer{
    position:relative!important;
    left:auto!important;
    bottom:auto!important;
    margin:12px auto 0!important;
    padding:0 8px 8px!important;
    text-align:center!important;
    font-size:11px!important;
    line-height:1.35!important;
  }
}

/* Móviles muy pequeños */
@media (max-width: 380px){
  .login-premium-v342,
  .login-single-v35{padding:10px!important;}
  .login-premium-v342 .login-pro-hero,
  .single-login-brand-v35{padding:13px!important;border-radius:20px!important;}
  .login-premium-v342 .login-pro-card,
  .single-login-card-v35{padding:13px!important;border-radius:19px!important;}
  .login-premium-v342 .login-pro-copy h1,
  .single-login-brand-v35 h1{font-size:34px!important;}
  .login-premium-v342 .login-pro-card-head h2,
  .single-login-card-v35 .login-pro-card-head h2{font-size:20px!important;}
}

/* V41.4 – Login Principal Responsive REAL
   Fix definitivo mobile-first para login principal y accesos individuales.
   Corrige desbordes horizontales en iOS/Android, logo cortado, claim gigante,
   tarjetas fuera de pantalla y footer superpuesto. */
html, body{
  width:100%!important;
  max-width:100%!important;
  overflow-x:hidden!important;
}
*, *::before, *::after{box-sizing:border-box;}
body.public-premium-login-v342,
body.public-single-login-v35{
  overflow-x:hidden!important;
  touch-action:pan-y!important;
}
.login-premium-v342,
.login-single-v35{
  width:100%!important;
  max-width:100vw!important;
  overflow-x:hidden!important;
}
.login-premium-v342 .login-pro-shell,
.single-login-shell-v35,
.login-premium-v342 .login-pro-hero,
.single-login-brand-v35,
.login-premium-v342 .login-pro-grid,
.login-premium-v342 .login-pro-card,
.single-login-card-v35{
  max-width:100%!important;
  min-width:0!important;
}
.login-premium-v342 .login-pro-logo,
.single-login-logo-v35{
  display:block!important;
  height:auto!important;
  object-fit:contain!important;
}
.login-premium-v342 .login-v342-footer{
  display:none!important;
}
.v381-footer{
  width:100%!important;
  max-width:100%!important;
  white-space:normal!important;
}

@media (max-width: 680px){
  body.public-premium-login-v342,
  body.public-single-login-v35{
    min-width:0!important;
    background:#fbfaf7!important;
  }
  .public-premium-login-v342 .wrap,
  .public-single-login-v35 .wrap{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow-x:hidden!important;
  }
  .login-premium-v342,
  .login-single-v35{
    display:block!important;
    min-height:100svh!important;
    width:100%!important;
    max-width:100vw!important;
    padding:14px 14px calc(24px + env(safe-area-inset-bottom))!important;
    margin:0!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
  }
  .login-premium-v342 .login-v342-bg{
    inset:0!important;
    width:100%!important;
    max-width:100%!important;
    overflow:hidden!important;
  }
  .login-premium-v342 .login-pro-shell,
  .single-login-shell-v35{
    width:100%!important;
    max-width:430px!important;
    min-width:0!important;
    margin:0 auto!important;
    display:flex!important;
    flex-direction:column!important;
    gap:14px!important;
    align-items:stretch!important;
    transform:none!important;
  }
  .login-premium-v342 .login-pro-hero,
  .single-login-brand-v35{
    width:100%!important;
    min-height:0!important;
    margin:0!important;
    padding:18px 16px!important;
    border-radius:24px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    justify-content:flex-start!important;
    gap:16px!important;
    overflow:hidden!important;
  }
  .login-premium-v342 .login-pro-brand,
  .login-premium-v342 .login-pro-brand-clean{
    width:100%!important;
    display:flex!important;
    justify-content:flex-start!important;
    align-items:center!important;
  }
  .login-premium-v342 .login-pro-logo,
  .single-login-logo-v35{
    width:min(220px,70vw)!important;
    max-width:100%!important;
    max-height:76px!important;
    margin:0!important;
  }
  .login-premium-v342 .login-pro-copy,
  .single-login-brand-v35 .login-pro-copy{
    width:100%!important;
    max-width:100%!important;
    overflow-wrap:break-word!important;
  }
  .login-premium-v342 .login-pro-copy h1,
  .single-login-brand-v35 h1{
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    font-size:clamp(36px,11vw,48px)!important;
    line-height:.98!important;
    letter-spacing:-.055em!important;
    text-align:left!important;
    word-break:normal!important;
    overflow-wrap:normal!important;
  }
  .login-premium-v342 .login-pro-copy h1 em,
  .single-login-brand-v35 h1 em{
    display:inline!important;
  }
  .login-premium-v342 .login-pro-copy h1:after{
    width:96px!important;
    margin:14px 0 0!important;
  }
  .login-premium-v342 .login-pro-grid{
    width:100%!important;
    max-width:430px!important;
    min-width:0!important;
    margin:0 auto!important;
    display:flex!important;
    flex-direction:column!important;
    gap:12px!important;
    align-items:stretch!important;
  }
  .login-premium-v342 .login-pro-card,
  .single-login-card-v35{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:16px!important;
    border-radius:22px!important;
    overflow:hidden!important;
  }
  .login-premium-v342 .login-pro-card-head,
  .single-login-card-v35 .login-pro-card-head{
    display:flex!important;
    align-items:center!important;
    gap:12px!important;
    min-width:0!important;
  }
  .login-premium-v342 .login-pro-card-head > div:last-child,
  .single-login-card-v35 .login-pro-card-head > div:last-child{
    min-width:0!important;
  }
  .login-premium-v342 .login-pro-card-head h2,
  .single-login-card-v35 .login-pro-card-head h2{
    font-size:24px!important;
    line-height:1.02!important;
    margin:0!important;
    white-space:normal!important;
  }
  .login-premium-v342 .login-pro-card form,
  .single-login-card-v35 form{
    width:100%!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:9px!important;
  }
  .login-premium-v342 .login-pro-card label,
  .single-login-card-v35 label{
    width:100%!important;
    min-width:0!important;
  }
  .login-premium-v342 .login-pro-card input,
  .single-login-card-v35 input,
  .login-premium-v342 .login-pro-card .btn,
  .single-login-card-v35 .btn{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }
  .back-home-v381{
    position:relative!important;
    inset:auto!important;
    top:auto!important;
    left:auto!important;
    margin:0 auto 12px 0!important;
    max-width:100%!important;
    white-space:nowrap!important;
  }
  .v381-footer{
    position:relative!important;
    inset:auto!important;
    display:block!important;
    margin:18px auto 0!important;
    padding:0 8px!important;
    text-align:center!important;
    font-size:11px!important;
    line-height:1.35!important;
    color:rgba(17,17,20,.58)!important;
  }
}

@media (max-width: 380px){
  .login-premium-v342,
  .login-single-v35{padding:10px!important;}
  .login-premium-v342 .login-pro-logo,
  .single-login-logo-v35{width:min(190px,68vw)!important;}
  .login-premium-v342 .login-pro-copy h1,
  .single-login-brand-v35 h1{font-size:clamp(32px,10.5vw,40px)!important;}
  .login-premium-v342 .login-pro-card-head h2,
  .single-login-card-v35 .login-pro-card-head h2{font-size:21px!important;}
}

/* V41.5 – Mobile Compact Experience
   Compacta el login principal e individuales en móviles/iPad sin tocar escritorio. */
@media (max-width: 768px){
  html,
  body{
    width:100%!important;
    max-width:100%!important;
    overflow-x:hidden!important;
  }

  .login-premium-v342,
  .login-single-v35{
    width:100%!important;
    max-width:100%!important;
    min-height:100svh!important;
    padding:12px 12px 24px!important;
    overflow-x:hidden!important;
  }

  .login-premium-v342 .login-pro-shell,
  .single-login-shell-v35{
    width:100%!important;
    max-width:390px!important;
    gap:10px!important;
  }

  .login-premium-v342 .login-pro-hero,
  .single-login-brand-v35{
    padding:14px 14px 12px!important;
    border-radius:22px!important;
    gap:10px!important;
    background:rgba(255,255,255,.58)!important;
    box-shadow:0 12px 34px rgba(20,18,14,.055)!important;
  }

  .login-premium-v342 .login-pro-logo,
  .single-login-logo-v35{
    width:min(178px,58vw)!important;
    max-height:58px!important;
    object-fit:contain!important;
  }

  .login-premium-v342 .login-pro-copy h1,
  .single-login-brand-v35 h1{
    font-size:clamp(30px,8.7vw,38px)!important;
    line-height:.96!important;
    letter-spacing:-.052em!important;
    margin:0!important;
  }

  .login-premium-v342 .login-pro-copy h1:after{
    width:74px!important;
    margin:10px 0 0!important;
  }

  .login-premium-v342 .login-pro-grid{
    width:100%!important;
    max-width:390px!important;
    gap:10px!important;
  }

  .login-premium-v342 .login-pro-card,
  .single-login-card-v35{
    padding:14px!important;
    border-radius:20px!important;
    box-shadow:0 12px 34px rgba(20,18,14,.07)!important;
  }

  .login-premium-v342 .login-pro-card-head,
  .single-login-card-v35 .login-pro-card-head{
    gap:10px!important;
    margin-bottom:10px!important;
  }

  .login-premium-v342 .login-pro-icon,
  .single-login-card-v35 .login-pro-icon{
    width:46px!important;
    height:46px!important;
    min-width:46px!important;
    border-radius:50%!important;
    font-size:21px!important;
  }

  .login-premium-v342 .login-pro-kicker,
  .single-login-card-v35 .login-pro-kicker{
    font-size:11px!important;
    letter-spacing:.105em!important;
    line-height:1.05!important;
    margin:0 0 2px!important;
  }

  .login-premium-v342 .login-pro-card-head h2,
  .single-login-card-v35 .login-pro-card-head h2{
    font-size:clamp(24px,7vw,30px)!important;
    line-height:1!important;
    letter-spacing:-.045em!important;
  }

  .login-premium-v342 .login-pro-card p,
  .single-login-card-v35 p{
    display:none!important;
  }

  .login-premium-v342 .login-pro-card form,
  .single-login-card-v35 form{
    gap:8px!important;
  }

  .login-premium-v342 .login-pro-card label,
  .single-login-card-v35 label{
    font-size:12px!important;
    line-height:1.05!important;
    margin:0!important;
    color:rgba(28,28,30,.72)!important;
  }

  .login-premium-v342 .login-pro-card input,
  .single-login-card-v35 input{
    height:44px!important;
    min-height:44px!important;
    padding:0 14px!important;
    margin-top:5px!important;
    border-radius:18px!important;
    font-size:16px!important;
  }

  .login-premium-v342 .login-pro-card .btn,
  .single-login-card-v35 .btn{
    height:48px!important;
    min-height:48px!important;
    padding:0 16px!important;
    margin-top:5px!important;
    border-radius:999px!important;
    font-size:17px!important;
    letter-spacing:-.02em!important;
  }

  .back-home-v381{
    font-size:12px!important;
    padding:8px 11px!important;
    margin-bottom:8px!important;
  }

  .v381-footer{
    margin-top:14px!important;
    font-size:10px!important;
    line-height:1.25!important;
    max-width:310px!important;
  }
}

@media (min-width: 769px) and (max-width: 1024px){
  .login-premium-v342,
  .login-single-v35{
    padding:22px!important;
    overflow-x:hidden!important;
  }
  .login-premium-v342 .login-pro-shell,
  .single-login-shell-v35{
    max-width:760px!important;
    gap:16px!important;
  }
  .login-premium-v342 .login-pro-grid{
    max-width:620px!important;
    gap:14px!important;
  }
  .login-premium-v342 .login-pro-card,
  .single-login-card-v35{
    padding:20px!important;
  }
  .login-premium-v342 .login-pro-copy h1,
  .single-login-brand-v35 h1{
    font-size:clamp(44px,7vw,64px)!important;
  }
}

/* V41.6 – Fix escritorio Safari/Chrome del login principal
   El footer nuevo quedaba como segundo hijo flex de la pantalla y comprimía
   el bloque principal a la izquierda. Se saca del flujo en tablet/escritorio. */
@media (min-width: 681px){
  body.public-premium-login-v342 .login-premium-v342{
    justify-content:center!important;
    align-items:center!important;
    padding-bottom:clamp(46px,4vw,64px)!important;
  }
  body.public-premium-login-v342 .login-premium-v342 > .login-pro-shell{
    flex:0 1 auto!important;
    margin:0 auto!important;
  }
  body.public-premium-login-v342 .login-premium-v342 > .v381-footer{
    position:absolute!important;
    left:0!important;
    right:0!important;
    bottom:12px!important;
    z-index:3!important;
    display:block!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0 18px!important;
    text-align:center!important;
    font-size:12px!important;
    line-height:1.35!important;
    color:rgba(17,17,20,.58)!important;
    pointer-events:none!important;
  }
}

@media (max-width: 680px){
  body.public-premium-login-v342 .login-premium-v342 > .v381-footer{
    position:relative!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
    display:block!important;
    margin:14px auto 0!important;
    padding:0 8px!important;
    width:100%!important;
    max-width:310px!important;
    text-align:center!important;
    font-size:10px!important;
    line-height:1.25!important;
    color:rgba(17,17,20,.58)!important;
  }
}

/* V41.7 – Fix corte de la frase del login: "en un solo lugar"
   En Safari/Chrome el final de la palabra podía quedar recortado por el
   overflow heredado del bloque hero y por el remate itálico de Georgia. */
body.public-premium-login-v342 .login-premium-v342 .login-pro-hero,
body.public-premium-login-v342 .login-premium-v342 .login-pro-copy,
body.public-premium-login-v342 .login-premium-v342 .login-pro-copy h1,
body.public-premium-login-v342 .login-premium-v342 .login-pro-copy h1 em,
body.public-single-login-v35 .single-login-brand-v35,
body.public-single-login-v35 .single-login-brand-v35 .login-pro-copy,
body.public-single-login-v35 .single-login-brand-v35 h1,
body.public-single-login-v35 .single-login-brand-v35 h1 em{
  overflow:visible!important;
}
body.public-premium-login-v342 .login-premium-v342 .login-pro-copy,
body.public-single-login-v35 .single-login-brand-v35 .login-pro-copy{
  max-width:100%!important;
  padding-right:.55em!important;
}
body.public-premium-login-v342 .login-premium-v342 .login-pro-copy h1 em,
body.public-single-login-v35 .single-login-brand-v35 h1 em{
  display:inline-block!important;
  padding-right:.28em!important;
  white-space:nowrap!important;
}
@media (max-width:680px){
  body.public-premium-login-v342 .login-premium-v342 .login-pro-copy,
  body.public-single-login-v35 .single-login-brand-v35 .login-pro-copy{
    padding-right:.35em!important;
  }
  body.public-premium-login-v342 .login-premium-v342 .login-pro-copy h1 em,
  body.public-single-login-v35 .single-login-brand-v35 h1 em{
    padding-right:.18em!important;
  }
}

/* V41.9 · Calendario exclusivo para llamadas/videollamadas/reuniones presenciales */
.call-schedule-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:16px}
.call-schedule-grid.compact{grid-template-columns:1fr;gap:10px}
.call-schedule-item{padding:16px;border:1px solid rgba(0,0,0,.07);border-radius:20px;background:rgba(255,255,255,.82);box-shadow:0 10px 28px rgba(0,0,0,.04)}
.call-schedule-item b{display:block;font-size:15px;margin-bottom:4px;color:#111}
.call-schedule-item span{display:block;color:#6e6e73;font-weight:800}
.call-schedule-item.off{opacity:.72;background:rgba(245,245,247,.7)}
.call-calendar-card .fc-call-appointment{border:0!important;color:#111!important;box-shadow:0 10px 24px rgba(0,0,0,.08)!important}
.call-calendar-card .fc-call-phone{background:#fff8e8!important;border-color:#d0ad68!important}
.call-calendar-card .fc-call-video{background:#eaf3ff!important;border-color:#2997ff!important}
.call-calendar-card .fc-call-office{background:#eefaf1!important;border-color:#34c759!important}
.call-calendar-card .fc-call-pending{background:#f5edff!important;border-color:#7c3aed!important}
.call-event-inner .fc-event-name{font-weight:900}
.call-next-item .next-dot{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#fff;border:1px solid rgba(0,0,0,.06)}
.call-admin-form{display:grid;grid-template-columns:minmax(120px,.8fr) minmax(170px,1fr) minmax(170px,1fr) auto;gap:8px;align-items:end}
.call-admin-form input,.call-admin-form select{margin-top:0;min-height:42px;padding:9px 12px;font-size:14px;border-radius:14px}
.call-admin-form .btn{min-height:42px;white-space:nowrap}
.call-admin-table td{min-width:145px}.call-admin-table td:last-child{min-width:620px}
.call-appointment-filter-chips{display:flex;gap:8px;flex-wrap:wrap;width:100%;justify-content:flex-end}.call-appointment-filter{appearance:none;border:1px solid rgba(17,17,17,.08);background:#fff;color:#111;border-radius:12px;padding:9px 11px;font-weight:900;cursor:pointer}.call-appointment-filter span{display:inline-grid;place-items:center;min-width:22px;margin-left:5px;padding:2px 6px;border-radius:999px;background:#f4efe6;font-size:11px}.call-appointment-filter.active{background:#111;color:#fff;border-color:#111}.call-appointment-filter.active span{background:#fff;color:#111}
.call-appointment-bulk-form{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 14px;padding:12px 14px;border:1px solid rgba(17,17,17,.08);border-radius:18px;background:#fffdf8}.call-appointment-bulk-count{display:inline-flex;align-items:center;gap:7px;border-radius:999px;background:#111827;color:#fff;padding:8px 12px;font-weight:900}.call-appointment-bulk-count span{font-size:12px;color:rgba(255,255,255,.72)}.call-appointment-select-control{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:900;color:#111827}.call-appointment-select-control input{width:18px;height:18px;margin:0;accent-color:#111827}.call-appointment-row.is-past-open{background:#fffafa}.call-appointment-row:has(.call-appointment-select:checked){outline:2px solid rgba(17,24,39,.18);outline-offset:-2px;background:#fffdf5}
.call-booking-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:18px;align-items:start}
.call-slot-picker{margin:18px 0;padding:18px;border:1px solid rgba(0,0,0,.08);border-radius:24px;background:rgba(255,255,255,.62)}
.call-slot-head{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-bottom:12px}
.call-slots{display:flex;gap:10px;flex-wrap:wrap;min-height:48px;align-items:center}
.call-slot-btn{appearance:none;border:1px solid rgba(0,0,0,.10);background:#fff;border-radius:999px;padding:11px 15px;font-weight:900;color:#111;cursor:pointer;box-shadow:0 8px 20px rgba(0,0,0,.05);transition:transform .16s ease,background .16s ease,color .16s ease,border-color .16s ease}
.call-slot-btn:hover{transform:translateY(-1px)}
.call-slot-btn.selected{background:#111;color:#fff;border-color:#111}
.call-slot-btn.disabled{opacity:.42;cursor:not-allowed;text-decoration:line-through;box-shadow:none}
.call-no-slots{width:100%;padding:14px;border-radius:18px;background:#f5f5f7;color:#6e6e73;font-weight:800;border:1px solid rgba(0,0,0,.06)}
.office-meeting-note{margin:16px 0 18px;padding:15px 16px;border-radius:20px;background:rgba(238,250,241,.86);border:1px solid rgba(52,199,89,.25);display:grid;gap:3px}
.office-meeting-note b,.office-address-line b{color:#111}.office-meeting-note span,.office-address-line{color:#3f7b4a;font-weight:800}
.call-appointment-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;margin:12px 0 22px}
.call-appointment-card{padding:18px;border-radius:24px;background:#fff;border:1px solid rgba(0,0,0,.07);box-shadow:0 14px 34px rgba(0,0,0,.06)}
.call-appointment-card h3{margin:10px 0 8px}.call-appointment-card form{margin-top:14px}
.call-history-list{display:grid;gap:10px;margin-top:10px}
.call-history-item{display:grid;grid-template-columns:1fr 1.2fr auto;gap:12px;align-items:center;padding:13px 14px;border:1px solid rgba(0,0,0,.06);border-radius:18px;background:rgba(255,255,255,.72)}
.call-history-item span{color:#6e6e73}.call-history-item small{font-weight:900;color:#8a6a33}
.success-card{border-color:rgba(52,199,89,.32)!important;background:rgba(245,255,247,.86)!important}.call-error{margin:16px 0}
@media(max-width:1100px){.call-schedule-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.call-booking-grid{grid-template-columns:1fr}.call-admin-form{grid-template-columns:1fr}.call-admin-table td:last-child{min-width:320px}}
@media(max-width:720px){.call-schedule-grid{grid-template-columns:1fr}.call-slot-head{display:block}.call-slot-btn{width:100%;justify-content:center}.call-history-item{grid-template-columns:1fr}.call-admin-table td{min-width:220px}.call-admin-table td:last-child{min-width:280px}.call-appointment-filter-chips{justify-content:stretch}.call-appointment-filter{flex:1 1 calc(50% - 8px)}.call-appointment-bulk-form .btn,.call-appointment-bulk-count{width:100%;justify-content:center}}

/* =========================================================
   V41.10 — FIX SIDEBAR ADMIN COMPLETO
   El menú lateral había quedado cortado al añadir Calendario citas.
   Se permite scroll interno y se compacta el menú en escritorio.
   ========================================================= */
@media (min-width:1181px){
  .admin-sidebar{
    height:calc(100vh - 36px)!important;
    max-height:calc(100vh - 36px)!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
    scrollbar-width:thin!important;
    scrollbar-color:rgba(255,255,255,.28) transparent!important;
    padding:16px 10px 14px!important;
  }
  @supports (height:100dvh){
    .admin-sidebar{
      height:calc(100dvh - 36px)!important;
      max-height:calc(100dvh - 36px)!important;
    }
  }
  .admin-sidebar::-webkit-scrollbar{width:8px!important;}
  .admin-sidebar::-webkit-scrollbar-track{background:transparent!important;}
  .admin-sidebar::-webkit-scrollbar-thumb{background:rgba(255,255,255,.22)!important;border-radius:999px!important;}
  .admin-sidebar::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.34)!important;}

  .admin-side-brand{
    padding:14px 18px 8px!important;
    margin:0 0 4px!important;
  }
  .admin-side-brand img{
    width:178px!important;
    max-width:100%!important;
  }
  .admin-side-label{
    padding:10px 18px 5px!important;
    margin:0!important;
    font-size:10px!important;
    line-height:1.15!important;
  }
  .admin-side-label.second{padding-top:12px!important;}
  .admin-side-nav{
    padding:0 10px!important;
    gap:3px!important;
  }
  .admin-side-nav a{
    min-height:36px!important;
    padding:7px 10px 7px 18px!important;
    border-radius:14px!important;
    font-size:14px!important;
    line-height:1.08!important;
  }
  .admin-side-nav a span{
    width:20px!important;
    min-width:20px!important;
  }
  .admin-side-nav.compact a{min-height:34px!important;}
  .admin-side-footer{
    margin:14px 12px 12px!important;
    padding:14px!important;
    border-radius:18px!important;
  }
}

@media (min-width:1181px) and (max-height:860px){
  .admin-sidebar{padding-top:10px!important;padding-bottom:10px!important;}
  .admin-side-brand{padding-top:8px!important;padding-bottom:4px!important;}
  .admin-side-brand img{width:154px!important;}
  .admin-side-label{padding-top:8px!important;padding-bottom:4px!important;font-size:9px!important;}
  .admin-side-label.second{padding-top:9px!important;}
  .admin-side-nav{gap:2px!important;}
  .admin-side-nav a{
    min-height:32px!important;
    padding-top:5px!important;
    padding-bottom:5px!important;
    font-size:13px!important;
    border-radius:13px!important;
  }
  .admin-side-footer{display:none!important;}
}

@media (max-width:1180px){
  .admin-sidebar{
    max-height:none!important;
    overflow:visible!important;
  }
}

/* =========================================================
   V41.11 — Citas visibles dentro del perfil interno + CRM
   ========================================================= */
.call-crm-card{scroll-margin-top:28px}
.call-crm-stats{margin:10px 0 18px}
.call-crm-list{display:grid;gap:16px;margin-top:16px}
.call-crm-item{display:grid;grid-template-columns:minmax(280px,.95fr) minmax(300px,1.05fr);gap:18px;align-items:start;padding:18px;border:1px solid rgba(0,0,0,.08);border-radius:24px;background:rgba(255,255,255,.82);box-shadow:0 16px 36px rgba(0,0,0,.05)}
.call-crm-item.closed{background:rgba(248,248,250,.88)}
.call-crm-main{display:grid;grid-template-columns:54px 1fr;gap:14px;align-items:start}
.call-crm-icon{width:54px;height:54px;border-radius:18px;background:#fff;display:flex;align-items:center;justify-content:center;font-size:27px;box-shadow:0 10px 26px rgba(0,0,0,.08);border:1px solid rgba(0,0,0,.05)}
.call-crm-main h3{margin:2px 0 6px}.call-crm-main p{margin:5px 0}.call-crm-meta{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:8px 0}
.call-crm-note{margin:10px 0 0;padding:12px 14px;border-radius:16px;background:#fff;border:1px solid rgba(0,0,0,.06);display:grid;gap:4px}
.call-crm-note b{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#8a6a33}.call-crm-note span{white-space:pre-wrap;color:#333;line-height:1.4}.call-crm-note.internal{background:#fff9e8}
.call-crm-form{padding:14px;border-radius:20px;background:#fff;border:1px solid rgba(0,0,0,.06);box-shadow:0 10px 24px rgba(0,0,0,.04)}
.call-crm-form textarea{min-height:96px;resize:vertical}.call-crm-form .btn{margin-top:8px}
.call-calendar-card .fc-call-done{background:#f5f5f7!important;border-color:#86868b!important;color:#111!important;opacity:.86}
@media(max-width:980px){.call-crm-item{grid-template-columns:1fr}.call-crm-main{grid-template-columns:44px 1fr}.call-crm-icon{width:44px;height:44px;border-radius:15px;font-size:23px}}
@media(max-width:620px){.call-crm-main{grid-template-columns:1fr}.call-crm-icon{width:46px;height:46px}.call-crm-form .grid.two{grid-template-columns:1fr}}

/* V41.12 — vistas desplegables por fecha y proximidad en Ficha musical, Presupuestos e Infografías */
.doc-tabs{margin-bottom:16px;}
.doc-toolbar{align-items:flex-start;}
.doc-toolbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap;}
.proximity-legend{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:11px;font-weight:900;color:#4b5563;}
.proximity-legend span{display:inline-flex;align-items:center;gap:5px;border:1px solid rgba(17,24,39,.08);background:#fff;border-radius:999px;padding:7px 9px;white-space:nowrap;}
.proximity-legend i,.proximity-dot-label i{width:9px;height:9px;border-radius:999px;display:inline-block;flex:0 0 auto;}
.proximity-legend i.prox-hot,.proximity-dot-label.prox-hot i{background:#e30613;}
.proximity-legend i.prox-soon,.proximity-dot-label.prox-soon i{background:#f59e0b;}
.proximity-legend i.prox-mid,.proximity-dot-label.prox-mid i{background:#2563eb;}
.proximity-legend i.prox-later,.proximity-dot-label.prox-later i{background:#16a34a;}
.proximity-dot-label.prox-done i,.proximity-dot-label.prox-none i{background:#6b7280;}
.proximity-dot-label.prox-cancelled i{background:#b00020;}
.proximity-dot-label.prox-deleted i{background:#111827;}
.doc-accordion-list{padding:0;overflow:hidden;border-radius:28px;margin-bottom:42px;background:#fff;}
.admin-accordion-row.section-event-card{display:block;padding:0;margin:0;border:0;border-left:8px solid #d1d5db;border-radius:0;box-shadow:none;background:#fff;}
.admin-accordion-row.section-event-card + .admin-accordion-row.section-event-card{border-top:1px solid rgba(17,24,39,.08);}
.admin-accordion-row.prox-hot{border-left-color:#e30613!important;}
.admin-accordion-row.prox-soon{border-left-color:#f59e0b!important;}
.admin-accordion-row.prox-mid{border-left-color:#2563eb!important;}
.admin-accordion-row.prox-later{border-left-color:#16a34a!important;}
.admin-accordion-row.prox-done{border-left-color:#6b7280!important;background:#f9fafb;}
.admin-accordion-row.prox-cancelled{border-left-color:#b00020!important;background:#fff7f7;}
.admin-accordion-row.prox-deleted{border-left-color:#111827!important;background:#f3f4f6;}
.admin-accordion-row summary{list-style:none;display:grid;grid-template-columns:minmax(130px,155px) minmax(0,1.5fr) minmax(128px,.55fr) minmax(170px,.65fr) 32px;gap:14px;align-items:center;padding:16px 18px;cursor:pointer;}
.admin-accordion-row summary::-webkit-details-marker{display:none;}
.admin-accordion-row summary:hover{background:rgba(17,24,39,.025);}
.admin-accordion-row[open] summary{background:linear-gradient(90deg,rgba(255,255,255,.98),rgba(249,250,251,.9));border-bottom:1px solid rgba(17,24,39,.07);}
.accordion-date-block{display:flex;flex-direction:column;gap:2px;border:1px solid rgba(17,24,39,.08);border-radius:18px;padding:10px 12px;background:#f9fafb;min-width:0;}
.accordion-date-block small,.accordion-doc-status small,.accordion-main small{display:block;color:#6b7280;font-size:12px;line-height:1.25;font-weight:750;}
.accordion-date-block b{font-size:17px;color:#111827;line-height:1.1;}
.accordion-time-badge{display:inline-flex;align-items:center;justify-content:center;width:max-content;max-width:100%;border-radius:999px;background:rgba(17,24,39,.08);padding:4px 8px;font-size:11px!important;line-height:1.1!important;font-weight:950!important;color:#111827!important;}
.accordion-date-block em{font-style:normal;font-size:11px;font-weight:950;text-transform:uppercase;letter-spacing:.035em;}
.accordion-date-block.prox-hot{background:#fff1f2;border-color:#fecdd3;color:#a00015;}
.accordion-date-block.prox-soon{background:#fffbeb;border-color:#fde68a;color:#92400e;}
.accordion-date-block.prox-mid{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8;}
.accordion-date-block.prox-later{background:#f0fdf4;border-color:#bbf7d0;color:#166534;}
.accordion-date-block.prox-done,.accordion-date-block.prox-none{background:#f3f4f6;border-color:#e5e7eb;color:#374151;}
.accordion-date-block.prox-cancelled{background:#fff1f2;border-color:#fecdd3;color:#b00020;}
.accordion-date-block.prox-deleted{background:#e5e7eb;border-color:#d1d5db;color:#111827;}
.accordion-main{min-width:0;}
.accordion-main strong{display:block;color:#111827;font-size:17px;line-height:1.15;margin-bottom:4px;overflow-wrap:anywhere;}
.accordion-status{display:flex;flex-direction:column;gap:8px;align-items:flex-start;}
.proximity-dot-label{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:900;color:#374151;white-space:nowrap;}
.accordion-doc-status{border:1px solid rgba(17,24,39,.08);border-radius:18px;padding:10px 12px;background:#f9fafb;min-height:58px;display:flex;flex-direction:column;justify-content:center;}
.accordion-doc-status b{font-size:14px;color:#111827;line-height:1.15;}
.accordion-doc-status.ok{background:#ecfdf3;border-color:#bbf7d0;}
.accordion-doc-status.ok b{color:#14532d;}
.accordion-doc-status.missing{background:#fff7ed;border-color:#fed7aa;}
.accordion-doc-status.missing b{color:#7c2d12;}
.accordion-chevron{font-size:24px;font-weight:900;color:#6b7280;text-align:center;transition:transform .15s ease;}
.admin-accordion-row[open] .accordion-chevron{transform:rotate(180deg);}
.accordion-body{padding:16px 18px 18px 18px;background:linear-gradient(180deg,#fff,#fbfbfd);}
.accordion-info-grid{grid-template-columns:repeat(4,minmax(0,1fr));}
.accordion-actions{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:14px;}
.accordion-actions .btn{min-height:40px;}
@media(max-width:1180px){.admin-accordion-row summary{grid-template-columns:minmax(120px,145px) minmax(0,1fr) minmax(160px,.6fr) 28px;}.accordion-status{display:none}.accordion-info-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:760px){.doc-toolbar-actions{align-items:stretch;justify-content:stretch;width:100%;}.doc-toolbar .section-search{width:100%;}.proximity-legend{width:100%;}.proximity-legend span{flex:1 1 calc(50% - 8px);justify-content:center;}.admin-accordion-row summary{grid-template-columns:1fr;gap:10px;padding:14px;}.accordion-chevron{display:none}.accordion-body{padding:14px}.accordion-info-grid,.accordion-actions{grid-template-columns:1fr;}.accordion-doc-status{min-height:auto}.accordion-status{display:flex;}.accordion-date-block{width:100%;}}


/* V41.13 — menú Bodas con la misma vista desplegable por fecha y proximidad */
.bodas-tabs .portal-menu-item small{line-height:1.25;}
.bodas-toolbar{margin-top:0;}
.bodas-accordion-list .accordion-doc-status small{overflow-wrap:anywhere;}
.bodas-info-grid .wide{grid-column:span 2;}
.bodas-accordion-actions{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));}
.bodas-accordion-actions form{margin:0;}
.bodas-accordion-actions form .btn{width:100%;}
.bodas-accordion-actions .delete-final-form{grid-column:1/-1;display:grid;grid-template-columns:minmax(160px,1fr) auto;gap:10px;align-items:center;}
.bodas-accordion-actions .delete-final-form input{height:40px;border-radius:14px;}
@media(max-width:760px){.bodas-info-grid .wide{grid-column:1;}.bodas-accordion-actions .delete-final-form{grid-template-columns:1fr;}}


/* V41.13.1 - PDF profesional y print compacto y proporcional para Modo DJ móvil.
   El PDF profesional real se descarga desde /admin|/dj|/wp/events/:id/pdf.
   Esta capa evita que la opción Imprimir/Guardar como PDF del navegador genere
   documentos gigantes, cortados o con tarjetas desproporcionadas. */
.dj-print-helper{margin:10px 0 16px;padding:12px 14px;border:1px solid rgba(183,149,91,.30);background:#fffaf0;border-radius:18px;color:#6b4f1d;font-weight:760;font-size:13px;line-height:1.35;}
.dj-print-helper b{color:#111827;}
@media print{
  @page{size:A4;margin:12mm 10mm;}
  html,body{background:#fff!important;color:#111827!important;-webkit-print-color-adjust:exact;print-color-adjust:exact;}
  body{font-family:Inter,Arial,sans-serif!important;font-size:9pt!important;line-height:1.28!important;}
  .no-print,.top,.global-back,.admin-sidebar,.admin-topbar,.dj-mobile-toolbar,.dj-jump-nav,.dj-print-helper{display:none!important;}
  .admin-app-shell,.admin-app-main,.wrap,.admin-wrap,.portal-premium-v361,.portal-premium-dj-v361,.dj-mobile-shell{display:block!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important;background:#fff!important;box-shadow:none!important;border:0!important;}
  .portal-premium-dj-v361 *{text-shadow:none!important;box-shadow:none!important;}
  .dj-mobile-section,.music-card,.signature-card,.restrictions-card{margin:0 0 6mm!important;padding:0!important;background:#fff!important;border:0!important;border-radius:0!important;break-inside:auto!important;page-break-inside:auto!important;}
  .dj-mobile-hero{margin:0 0 7mm!important;padding:7mm!important;border:1px solid #d9d9dd!important;border-radius:10mm!important;background:#fff!important;break-inside:avoid!important;page-break-inside:avoid!important;}
  .dj-mobile-hero h1{font-size:27pt!important;line-height:1.02!important;letter-spacing:-.045em!important;margin:2mm 0 3mm!important;max-width:100%!important;overflow-wrap:break-word!important;word-break:normal!important;color:#111827!important;}
  .dj-mobile-hero .muted{font-size:10pt!important;color:#4b5563!important;margin:0 0 4mm!important;}
  .dj-quick-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:3mm!important;margin-top:4mm!important;}
  .dj-quick-grid div{min-height:0!important;padding:3.5mm!important;border:1px solid #e5e7eb!important;border-radius:5mm!important;background:#f9fafb!important;overflow:hidden!important;}
  .dj-quick-grid span{font-size:6.5pt!important;letter-spacing:.06em!important;color:#6b7280!important;}
  .dj-quick-grid b{font-size:13pt!important;line-height:1.05!important;margin:1.5mm 0!important;color:#111827!important;}
  .dj-quick-grid small{display:block!important;font-size:7.4pt!important;line-height:1.2!important;color:#4b5563!important;overflow-wrap:anywhere!important;}
  .music-card-header{display:flex!important;align-items:flex-end!important;justify-content:space-between!important;gap:6mm!important;margin:0 0 4mm!important;padding:0 0 3mm!important;border-bottom:1px solid #e5e7eb!important;break-after:avoid!important;page-break-after:avoid!important;}
  .music-card-header h2,.signature-card h2,.restrictions-card h2{font-size:17pt!important;line-height:1.06!important;letter-spacing:-.035em!important;margin:1.5mm 0 1mm!important;color:#111827!important;}
  .music-card-header p,.signature-card p,.restrictions-card p,.muted{font-size:8.8pt!important;line-height:1.28!important;color:#4b5563!important;}
  .music-card-body{padding:0!important;margin:0!important;}
  .step-badge{display:none!important;}
  .section-kicker{display:inline-flex!important;align-items:center!important;width:auto!important;max-width:100%!important;padding:1.5mm 2.8mm!important;border:1px solid #e8dcc2!important;border-radius:999px!important;background:#fff!important;color:#5f4720!important;font-size:6.4pt!important;letter-spacing:.11em!important;line-height:1!important;font-weight:900!important;text-transform:uppercase!important;white-space:nowrap!important;}
  .dj-track-card{margin:0 0 3mm!important;padding:4mm!important;border:1px solid #e5e7eb!important;border-radius:5mm!important;background:#fff!important;break-inside:avoid!important;page-break-inside:avoid!important;}
  .timeline-item{display:grid!important;grid-template-columns:8mm minmax(0,1fr)!important;gap:3.5mm!important;align-items:start!important;}
  .timeline-index{width:7.5mm!important;height:7.5mm!important;border-radius:999px!important;background:#111827!important;color:#fff!important;font-size:7.2pt!important;font-weight:900!important;display:grid!important;place-items:center!important;margin-top:.5mm!important;}
  .dj-track-meta h3{font-size:12pt!important;line-height:1.12!important;letter-spacing:-.02em!important;margin:2mm 0 1.5mm!important;color:#111827!important;}
  .dj-track-meta p{font-size:8.8pt!important;line-height:1.28!important;margin:0 0 1.5mm!important;color:#374151!important;}
  .dj-track-meta b{font-size:9.2pt!important;color:#111827!important;}
  .dj-track-meta small{font-size:8pt!important;line-height:1.28!important;color:#374151!important;}
  .dj-track-meta a{font-size:8pt!important;color:#111827!important;text-decoration:none!important;font-weight:900!important;word-break:break-word!important;}
  .spotify-player,.spotify-embed,iframe{display:none!important;}
  .no-music-selected .dj-track-meta{display:grid!important;grid-template-columns:auto 1fr!important;gap:2mm 4mm!important;align-items:center!important;}
  .no-music-selected .dj-track-meta .section-kicker{grid-column:1!important;}
  .no-music-selected .dj-track-meta h3{grid-column:2!important;margin:0!important;}
  .no-music-selected .dj-track-meta p{grid-column:1 / -1!important;margin:1mm 0 0!important;}
  #mp3,#firma,#restricciones{break-before:auto!important;page-break-before:auto!important;}
  .signature-card,.restrictions-card{padding-top:1mm!important;}
  .signature-card>.section-kicker,.restrictions-card>.section-kicker{margin-bottom:2mm!important;}
  .signature-card .grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:3mm!important;margin-top:3mm!important;}
  .signature-card .grid p,.dj-restrictions-grid p{padding:3.5mm!important;border:1px solid #e5e7eb!important;border-radius:4mm!important;background:#fff!important;margin:0!important;overflow-wrap:anywhere!important;}
  .signature-preview{border:1px solid #e5e7eb!important;border-radius:4mm!important;padding:3mm!important;margin-top:3mm!important;background:#fff!important;}
  .signature-preview img{max-height:18mm!important;object-fit:contain!important;}
  .dj-restrictions-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:3mm!important;margin-top:3mm!important;}
  .dj-restrictions-grid .wide{grid-column:1 / -1!important;}
  .dj-restrictions-grid p b{font-size:8.4pt!important;color:#111827!important;}
}

/* V41.17 - Evitar PDFs desproporcionados por impresion manual del modo DJ. */
.dj-pdf-toolbar-note{
  display:inline-flex;
  align-items:center;
  max-width:360px;
  color:var(--muted);
  font-size:12px;
  font-weight:700;
  line-height:1.25;
  padding:0 4px;
}
@media(max-width:760px){
  .dj-pdf-toolbar-note{display:block;width:100%;max-width:none;padding:2px 4px 0;}
}
@media print{
  .dj-pdf-toolbar-note{display:none!important;}
  .portal-premium-dj-v361 .dj-mobile-shell{transform:none!important;zoom:1!important;}
  .portal-premium-dj-v361 .dj-hero,.portal-premium-dj-v361 .dj-mobile-section{max-width:100%!important;}
}


/* V41.13.2 · Panel operativo de bodas próximas */
.operational-hero{background:linear-gradient(135deg,#111827,#020617 58%,#3b2a12)!important;}
.operational-range-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px;padding:10px;border-radius:24px;}
.operational-range-tabs a{height:42px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:0 16px;font-weight:900;text-decoration:none;color:#374151;background:#f8fafc;border:1px solid rgba(17,24,39,.08);}
.operational-range-tabs a.active,.operational-range-tabs a:hover{background:#111827;color:#fff;border-color:#111827;}
.operational-kpi-grid{grid-template-columns:repeat(6,minmax(0,1fr));}
.operational-kpi-grid .kpi-card b{font-size:34px;}
.op-critical-card:after{background:rgba(227,6,19,.10)!important;}.op-hot-card:after{background:rgba(245,158,11,.15)!important;}
.operational-control-card{padding:0;overflow:hidden;}
.operational-control-card .music-card-header{padding:22px 24px;}
.op-control-grid{display:grid;grid-template-columns:1.05fr repeat(3,minmax(0,1fr));gap:12px;padding:0 22px 22px;}
.op-control-tile{min-width:0;border:1px solid rgba(17,24,39,.08);border-radius:20px;padding:16px;background:#fff;box-shadow:0 8px 18px rgba(17,24,39,.04);}
.op-control-tile span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:950;color:#6b7280;margin-bottom:9px;}
.op-control-tile b{display:block;font-size:30px;line-height:1;letter-spacing:0;color:#111827;overflow-wrap:anywhere;}
.op-control-tile small{display:block;margin-top:9px;color:#4b5563;font-size:12px;font-weight:800;line-height:1.32;overflow-wrap:anywhere;}
.op-control-tile.critical{border-color:rgba(227,6,19,.25);background:linear-gradient(180deg,#fff,#fff5f5);}
.op-control-tile.warn{border-color:rgba(245,158,11,.28);background:linear-gradient(180deg,#fff,#fffbeb);}
.op-control-tile.ok{border-color:rgba(22,163,74,.22);background:linear-gradient(180deg,#fff,#f0fdf4);}
.operational-today-card{padding:0;overflow:hidden;}
.operational-today-card .music-card-header{padding:22px 24px;}
.op-today-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;padding:0 22px 22px;}
.op-owner-lane{min-width:0;border:1px solid rgba(17,24,39,.08);border-radius:20px;background:#fff;overflow:hidden;box-shadow:0 8px 18px rgba(17,24,39,.04);}
.op-owner-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 15px;border-bottom:1px solid rgba(17,24,39,.08);background:#f9fafb;}
.op-owner-head span{font-size:12px;font-weight:950;text-transform:uppercase;letter-spacing:.08em;color:#4b5563;}
.op-owner-head b{display:grid;place-items:center;min-width:30px;height:30px;border-radius:999px;background:#111827;color:#fff;font-size:13px;letter-spacing:0;}
.op-owner-items{display:grid;gap:0;}
.op-today-item{display:block;padding:13px 15px;border-bottom:1px solid rgba(17,24,39,.07);text-decoration:none;color:#111827;border-left:5px solid #2563eb;}
.op-today-item:last-child{border-bottom:0;}
.op-today-item:hover{background:#f9fafb;text-decoration:none;}
.op-today-item.critical{border-left-color:#e30613;background:linear-gradient(90deg,#fff5f5,#fff);}
.op-today-item.warning{border-left-color:#f59e0b;background:linear-gradient(90deg,#fffbeb,#fff);}
.op-today-item span{display:block;font-size:11px;font-weight:950;text-transform:uppercase;letter-spacing:.06em;color:#6b7280;}
.op-today-item b{display:block;margin-top:4px;font-size:14px;line-height:1.2;letter-spacing:0;color:#111827;}
.op-today-item small{display:block;margin-top:5px;color:#4b5563;font-size:12px;font-weight:750;line-height:1.32;overflow-wrap:anywhere;}
.operational-two-col{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(320px,.7fr);gap:18px;margin:18px 0;align-items:start;}
.operational-alerts-card,.operational-mini-card,.operational-board-card{overflow:hidden;}
.operational-alerts-card .music-card-header,.operational-mini-card .music-card-header{padding:22px 24px;}
.op-alert-list{display:grid;gap:10px;padding:0 22px 22px;max-height:490px;overflow:auto;}
.op-alert{display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:start;padding:13px;border:1px solid rgba(17,24,39,.08);border-radius:18px;background:#fff;text-decoration:none;color:#111827;box-shadow:0 8px 18px rgba(17,24,39,.04);}
.op-alert:hover{transform:translateY(-1px);box-shadow:0 12px 26px rgba(17,24,39,.08);}
.op-alert-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:999px;background:#f8fafc;}
.op-alert b{display:block;font-size:14px;line-height:1.2;}.op-alert small{display:block;margin-top:4px;color:#6b7280;line-height:1.35;}
.op-alert.critical{border-left:5px solid #e30613;}.op-alert.warning{border-left:5px solid #f59e0b;}.op-alert.info{border-left:5px solid #2563eb;}
.op-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0 22px 22px;}
.op-summary-grid div{border:1px solid rgba(17,24,39,.08);border-radius:20px;padding:16px;background:#fff;box-shadow:0 8px 18px rgba(17,24,39,.04);}
.op-summary-grid b{display:block;font-size:30px;letter-spacing:-.05em;line-height:1;color:#111827;}.op-summary-grid span{display:block;margin-top:8px;color:#6b7280;font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.06em;}
.operational-toolbar{margin:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:linear-gradient(180deg,#fff,#f9fafb)!important;border-bottom:1px solid rgba(17,24,39,.08)!important;}
.op-toggle{display:inline-flex;align-items:center;gap:8px;height:42px;border:1px solid rgba(17,24,39,.10);border-radius:999px;padding:0 14px;background:#fff;font-size:13px;font-weight:900;color:#374151;white-space:nowrap;}
.op-toggle input{width:16px;height:16px;accent-color:#111827;}
.operational-list{display:block;background:#fff;}
.operational-event-row{display:block;border:0;border-left:8px solid #d1d5db;background:#fff;}
.operational-event-row + .operational-event-row{border-top:1px solid rgba(17,24,39,.08);}
.operational-event-row.op-critical{border-left-color:#e30613;}.operational-event-row.op-warning{border-left-color:#f59e0b;}.operational-event-row.op-ok{border-left-color:#16a34a;}
.operational-event-row summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:142px minmax(220px,1fr) minmax(190px,auto) 98px 28px;gap:16px;align-items:center;padding:18px 20px;}
.operational-event-row summary::-webkit-details-marker{display:none;}
.operational-event-row[open] summary{background:linear-gradient(180deg,#fff,#fbfbfd);}
.op-date-badge{display:flex;flex-direction:column;justify-content:center;gap:4px;min-height:78px;border-radius:20px;border:1px solid rgba(17,24,39,.08);background:#f8fafc;padding:12px;}
.op-date-badge b{font-size:16px;line-height:1.1;color:#111827;}.op-date-badge small{font-size:12px;font-weight:900;color:#4b5563;}
.op-date-badge.prox-hot{background:#fff1f2;border-color:rgba(227,6,19,.25);}.op-date-badge.prox-soon{background:#fffbeb;border-color:rgba(245,158,11,.28);}.op-date-badge.prox-mid{background:#eff6ff;border-color:rgba(37,99,235,.20);}.op-date-badge.prox-later{background:#f0fdf4;border-color:rgba(22,163,74,.22);}
.op-main-title h3{margin:0 0 6px;font-size:22px;letter-spacing:-.04em;color:#111827;}.op-main-title small{display:block;color:#6b7280;font-size:13px;line-height:1.35;font-weight:700;}
.op-badges{display:flex;flex-direction:column;align-items:flex-start;gap:8px;}.op-badges .pill{white-space:nowrap;}
.op-score-wrap{display:flex;flex-direction:column;align-items:center;gap:6px;}.op-score-wrap small{font-size:11px;color:#6b7280;font-weight:900;text-align:center;}.op-score-meter{--score:0;width:72px;height:72px;border-radius:999px;background:conic-gradient(#111827 calc(var(--score) * 1%),#e5e7eb 0);display:grid;place-items:center;position:relative;box-shadow:inset 0 0 0 1px rgba(17,24,39,.05);}.op-score-meter:after{content:"";position:absolute;inset:8px;border-radius:999px;background:#fff;box-shadow:0 3px 12px rgba(17,24,39,.08);}.op-score-meter b{position:relative;z-index:1;font-size:15px;letter-spacing:-.04em;color:#111827;}
.operational-event-row .accordion-chevron{font-size:20px;color:#9ca3af;transition:.18s ease;}.operational-event-row[open] .accordion-chevron{transform:rotate(180deg);}
.op-body{padding:0 20px 20px 20px;background:#fff;}
.op-check-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;margin:0 0 14px;}
.op-check{display:grid;grid-template-columns:28px 1fr;gap:8px;align-items:start;border:1px solid rgba(17,24,39,.08);border-radius:18px;padding:12px;background:#f9fafb;color:#111827;text-decoration:none;min-height:94px;}
.op-check:hover{background:#fff;box-shadow:0 10px 24px rgba(17,24,39,.07);transform:translateY(-1px);}
.op-check-status{display:grid;place-items:center;width:26px;height:26px;border-radius:999px;font-weight:950;color:#fff;background:#9ca3af;}
.op-check.ok{border-color:rgba(22,163,74,.20);background:#f0fdf4;}.op-check.ok .op-check-status{background:#16a34a;}
.op-check.warn{border-color:rgba(245,158,11,.25);background:#fffbeb;}.op-check.warn .op-check-status{background:#f59e0b;}
.op-check.missing{border-color:rgba(227,6,19,.20);background:#fff1f2;}.op-check.missing .op-check-status{background:#e30613;}
.op-check b{display:block;font-size:13px;line-height:1.15;}.op-check small{display:block;margin-top:4px;color:#4b5563;font-size:11.5px;line-height:1.28;overflow-wrap:anywhere;}
.op-check-owner{color:#111827!important;font-weight:950!important;text-transform:uppercase;letter-spacing:.05em;}
.op-event-meta-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0;}
.op-event-meta-grid div{border:1px solid rgba(17,24,39,.08);border-radius:18px;padding:13px;background:#fff;}.op-event-meta-grid span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:900;color:#6b7280;margin-bottom:4px;}.op-event-meta-grid b{font-size:13px;color:#111827;overflow-wrap:anywhere;}
.operational-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:9px;}.operational-actions .btn{width:100%;}
.operational-focus-card{overflow:hidden;padding:0;}
.operational-focus-card .pill b{font-size:15px;color:#111827;}
.op-filter-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;padding:0 22px 22px;}
.op-filter-btn{appearance:none;border:1px solid rgba(17,24,39,.08);border-radius:18px;background:#fff;color:#111827;text-align:left;padding:14px;min-height:112px;cursor:pointer;box-shadow:0 8px 20px rgba(17,24,39,.045);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background .16s ease;display:flex;flex-direction:column;gap:7px;min-width:0;}
.op-filter-btn:hover{transform:translateY(-1px);box-shadow:0 14px 32px rgba(17,24,39,.08);border-color:rgba(17,24,39,.16);}
.op-filter-btn.active{background:#111827;color:#fff;border-color:#111827;box-shadow:0 18px 42px rgba(17,24,39,.18);}
.op-filter-btn span{font-size:13px;font-weight:950;line-height:1.15;overflow-wrap:anywhere;}
.op-filter-btn b{font-size:28px;line-height:.96;letter-spacing:-.05em;}
.op-filter-btn small{margin-top:auto;color:#6b7280;font-size:11px;font-weight:850;line-height:1.2;text-transform:uppercase;letter-spacing:.05em;}
.op-filter-btn.active small{color:rgba(255,255,255,.72);}
.op-next-action{margin-top:5px;color:#4b5563!important;}
.op-no-results{margin:0;border-radius:0;border-top:1px solid rgba(17,24,39,.08);box-shadow:none;}
@media(max-width:1280px){.operational-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr));}.op-control-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.operational-two-col{grid-template-columns:1fr;}.op-check-grid{grid-template-columns:repeat(3,minmax(0,1fr));}.operational-event-row summary{grid-template-columns:120px minmax(0,1fr) 92px 28px;}.op-badges{grid-column:2/3;flex-direction:row;}.op-score-wrap{grid-column:3/4;grid-row:1/3;}.accordion-chevron{grid-column:4/5;grid-row:1/3;}}
@media(max-width:760px){.operational-range-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));}.operational-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.operational-kpi-grid .kpi-card b{font-size:28px;}.op-control-grid,.op-today-grid{grid-template-columns:1fr;padding:0 14px 14px;}.operational-control-card .music-card-header,.operational-today-card .music-card-header{padding:18px 18px 14px;}.operational-event-row summary{grid-template-columns:1fr;gap:10px;padding:14px;}.op-date-badge{min-height:0;}.op-badges{grid-column:auto;flex-direction:row;flex-wrap:wrap;}.op-score-wrap{grid-column:auto;grid-row:auto;align-items:flex-start;}.op-score-meter{width:64px;height:64px;}.operational-event-row .accordion-chevron{display:none;}.op-body{padding:0 14px 14px;}.op-check-grid,.op-event-meta-grid{grid-template-columns:1fr;}.op-summary-grid{grid-template-columns:1fr;}.op-alert-list{max-height:none;}.operational-toolbar .top-actions{align-items:stretch;width:100%;}.op-toggle{justify-content:center;width:100%;}.section-search{width:100%;}}

/* V41.18 · Resumen final de producción por pareja */
.final-summary-card{border:1px solid rgba(17,24,39,.08);box-shadow:0 24px 70px rgba(20,25,38,.08);}
.final-summary-card.final-status-ok{border-left:8px solid #16a34a}.final-summary-card.final-status-warn{border-left:8px solid #f59e0b}.final-summary-card.final-status-missing{border-left:8px solid #e30613}
.final-summary-header{background:linear-gradient(180deg,#fff,#f8fafc)}
.final-summary-header .step-badge{width:auto;min-width:58px;padding:0 12px;background:#111827}
.final-summary-body{display:grid;gap:18px}
.final-kpi-grid{grid-template-columns:repeat(6,minmax(0,1fr));margin:0}
.final-kpi-grid .quick-card{min-height:132px}.final-kpi-grid .quick-card b{font-size:clamp(20px,2.1vw,30px);line-height:1.05;overflow-wrap:anywhere}.final-kpi-grid .quick-card .icon{font-size:16px;font-weight:950}
.final-alert-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.final-check-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));margin:0}.final-check-grid .op-check{min-height:100px}
.final-info-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.final-info-panel{background:#fff;border:1px solid rgba(17,24,39,.08);border-radius:22px;padding:18px;box-shadow:0 10px 26px rgba(17,24,39,.045);min-width:0}
.final-info-panel h3{font-size:18px;margin:0 0 12px;color:#111827}
.final-info-panel p{margin:0;padding:10px 0;border-top:1px solid rgba(17,24,39,.06);display:grid;gap:3px}
.final-info-panel p:first-of-type{border-top:0;padding-top:0}
.final-info-panel b{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#6b7280}
.final-info-panel span{font-size:14px;font-weight:750;color:#111827;overflow-wrap:anywhere;line-height:1.32}
.final-music-block{border:1px solid rgba(17,24,39,.08);border-radius:24px;overflow:hidden;background:#fff}
.final-music-block .inline-header{padding:18px 20px 6px;background:#fff;border-bottom:0}
.final-music-block .inline-header h3{margin:4px 0 0;font-size:22px}
.final-music-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;padding:0 20px 20px}
.final-music-moment{display:block;border:1px solid rgba(17,24,39,.08);border-radius:18px;padding:14px;background:#f9fafb;color:#111827;text-decoration:none;min-height:112px}
.final-music-moment:hover{text-decoration:none;transform:translateY(-1px);box-shadow:0 10px 24px rgba(17,24,39,.07)}
.final-music-moment.ok{background:#f0fdf4;border-color:rgba(22,163,74,.22)}.final-music-moment.warn{background:#fffbeb;border-color:rgba(245,158,11,.28)}.final-music-moment.missing{background:#fff1f2;border-color:rgba(227,6,19,.22)}
.final-music-moment span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:900;color:#6b7280;margin-bottom:6px}
.final-music-moment b{display:block;font-size:16px;line-height:1.14;color:#111827}
.final-music-moment small{display:block;margin-top:8px;color:#4b5563;font-weight:700;line-height:1.32;overflow-wrap:anywhere}
.final-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:9px}.final-actions .btn{width:100%}
@media(max-width:1180px){.final-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr));}.final-info-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:760px){.final-kpi-grid,.final-alert-grid,.final-info-grid,.final-music-grid{grid-template-columns:1fr}.final-summary-card{border-left-width:5px}.final-summary-header .step-badge{margin-top:12px}.final-info-panel{padding:16px}.final-music-grid{padding:0 16px 16px}.final-actions{grid-template-columns:1fr}}

/* V41.13.3 — Alertas y tareas internas CRM */
.crm-tasks-hero{background:linear-gradient(135deg,#fff 0%,#fbf7ef 52%,#efe3cf 100%)}
.crm-task-kpis .op-critical-card b,.crm-task-kpis .op-hot-card b{letter-spacing:-.04em}
.crm-tasks-layout{display:grid;grid-template-columns:minmax(320px,.95fr) minmax(360px,1.25fr);gap:22px;margin:22px 0}
.crm-task-global-form-card,.crm-auto-alerts-global-card,.crm-tasks-board-card,.crm-tasks-card{border:1px solid rgba(17,17,17,.08);box-shadow:0 24px 70px rgba(30,25,15,.08)}
.crm-task-mini-stats{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.warning-pill{background:#fff4d8;color:#7a4a00;border-color:#efd28b}.danger-pill{background:#fff0f0;color:#a01818;border-color:#f1b2b2}
.crm-alert-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin:16px 0 20px}.crm-auto-alert,.crm-global-alert{display:grid;grid-template-columns:auto 1fr;gap:10px;padding:14px;border-radius:18px;text-decoration:none;border:1px solid rgba(17,17,17,.08);background:#fff;color:#171717;align-items:flex-start}.crm-auto-alert b,.crm-global-alert b{display:block}.crm-auto-alert small,.crm-global-alert small{display:block;color:#6c6c6c;margin-top:3px;line-height:1.35}.crm-auto-alert.priority-urgente,.crm-global-alert.critical{background:#fff6f4;border-color:#f1b7ad}.crm-auto-alert.priority-alta,.crm-global-alert.warning{background:#fffaf0;border-color:#ecd49a}.crm-auto-alert.priority-media,.crm-global-alert.info{background:#f7fbff;border-color:#cfe1f8}
.crm-task-grid{grid-template-columns:minmax(280px,.85fr) minmax(340px,1.15fr);gap:20px}.crm-task-form textarea{min-height:96px}.crm-task-list{display:grid;gap:12px}.crm-task-item{border:1px solid rgba(17,17,17,.08);border-radius:20px;background:#fff;overflow:hidden}.crm-task-item summary{cursor:pointer;list-style:none;padding:15px;display:grid;grid-template-columns:auto 1fr auto auto;gap:12px;align-items:center}.crm-task-item summary::-webkit-details-marker{display:none}.crm-task-priority{width:36px;height:36px;display:grid;place-items:center;border-radius:999px;background:#f7f2e9;border:1px solid rgba(17,17,17,.06)}.crm-task-main b{display:block;font-weight:850}.crm-task-main small{display:block;color:#707070;margin-top:3px}.crm-task-description{padding:0 18px 12px;margin:0;color:#383838;line-height:1.45;white-space:pre-wrap}.crm-task-actions-row{display:flex;gap:8px;flex-wrap:wrap;padding:0 18px 14px}.crm-task-edit-form{border-top:1px solid rgba(17,17,17,.07);padding:16px 18px;display:grid;gap:10px;background:#fbfaf7}.crm-task-edit-form textarea{min-height:78px}.priority-urgent,.priority-urgente{border-color:#e9a39a!important}.priority-high,.priority-alta{border-color:#efc177!important}.priority-medium,.priority-media{border-color:#eadbb4!important}.priority-low,.priority-baja{border-color:#bbd9b7!important}.due-overdue{box-shadow:0 0 0 2px rgba(185,28,28,.08)}.due-today{box-shadow:0 0 0 2px rgba(200,128,0,.10)}.status-done,.status-cancelled{opacity:.72}.status-done .crm-task-main b{text-decoration:line-through}.crm-global-alert-list{display:grid;gap:10px;max-height:520px;overflow:auto;padding-right:4px}.crm-global-task-list{display:grid;gap:14px}.crm-global-task{position:relative;border:1px solid rgba(17,17,17,.08);background:#fff;border-radius:22px;padding:18px;box-shadow:0 16px 42px rgba(20,15,5,.05)}.crm-global-task-head{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:flex-start}.crm-global-task-head h3{margin:0;font-size:18px;letter-spacing:-.02em}.crm-global-task-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;margin:14px 0}.crm-global-task-meta span{background:#faf7ef;border:1px solid rgba(17,17,17,.06);border-radius:15px;padding:10px 12px;color:#585858}.crm-global-task-meta b{display:block;color:#111;font-size:11px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:2px}.crm-tasks-board-card .operational-toolbar{gap:14px;align-items:flex-start}.crm-tasks-board-card .doc-toolbar-actions{flex-wrap:wrap}.crm-task-list-box .page-head,.crm-task-global-form-card .music-card-header,.crm-auto-alerts-global-card .music-card-header{margin-bottom:14px}
.crm-task-bulk-form{display:flex;align-items:center;gap:8px;flex-wrap:wrap;border-top:1px solid rgba(17,17,17,.07);border-bottom:1px solid rgba(17,17,17,.07);background:#fffdf8;padding:12px 18px;margin:0 0 16px}.crm-task-bulk-count{display:inline-flex;align-items:center;gap:7px;border-radius:999px;background:#111827;color:#fff;padding:8px 12px;font-weight:900}.crm-task-bulk-count span{font-size:12px;color:rgba(255,255,255,.72)}.crm-task-select-control{float:left;display:inline-flex;align-items:center;gap:8px;margin:0 12px 10px 0;border:1px solid rgba(17,17,17,.10);background:#faf7ef;border-radius:12px;padding:8px 10px;font-weight:900;font-size:12px;cursor:pointer}.crm-task-select-control input{width:18px;height:18px;margin:0;accent-color:#111827}.crm-global-task:has(.crm-task-select:checked){border-color:rgba(17,24,39,.28);box-shadow:0 20px 55px rgba(17,24,39,.12)}
.crm-task-presets{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;padding:0 22px 16px}.crm-task-presets button{appearance:none;border:1px solid rgba(17,17,17,.08);background:#fff;border-radius:16px;padding:12px 13px;text-align:left;font-weight:900;color:#111827;cursor:pointer;box-shadow:0 8px 20px rgba(17,17,17,.04);transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.crm-task-presets button:hover{transform:translateY(-1px);background:#111827;color:#fff;box-shadow:0 14px 30px rgba(17,17,17,.11)}.crm-task-panel-presets{grid-template-columns:repeat(auto-fit,minmax(118px,1fr));padding:2px 0 14px}.crm-task-panel-presets button{min-height:44px;font-size:.9rem}
@media(max-width:1100px){.crm-tasks-layout,.crm-task-grid{grid-template-columns:1fr}.crm-task-item summary,.crm-global-task-head{grid-template-columns:auto 1fr}.crm-task-item summary .pill,.crm-task-item summary .accordion-chevron,.crm-global-task-head .pill{grid-column:2}.crm-task-mini-stats{justify-content:flex-start}}
@media(max-width:680px){.crm-alert-strip{grid-template-columns:1fr}.crm-global-task-meta{grid-template-columns:1fr}.crm-task-actions-row,.crm-global-task .accordion-actions{display:grid}.crm-tasks-board-card .doc-toolbar-actions{width:100%}.crm-tasks-board-card .section-search{width:100%}}

/* V41.13.4 — Validación de ficha antes de firma */
.ficha-validation-card{border:1px solid rgba(17,24,39,.08);box-shadow:0 24px 70px rgba(30,25,15,.08);overflow:hidden;background:linear-gradient(180deg,#fff,#fffaf2)}
.ficha-validation-card.validation-ready{background:linear-gradient(180deg,#fff,#f2fff7)}
.ficha-validation-card.validation-warning{background:linear-gradient(180deg,#fff,#fff9ec)}
.ficha-validation-card.validation-blocked{background:linear-gradient(180deg,#fff,#fff5f5)}
.ficha-validation-card.validation-soft-card{background:#fff!important}
.validation-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:16px}.validation-head.compact{margin-bottom:12px}.validation-head h2,.validation-head h3{margin:.28rem 0 .35rem;letter-spacing:-.04em}.validation-head h3{font-size:24px}.validation-score{min-width:108px;min-height:86px;border-radius:22px;border:1px solid rgba(17,24,39,.08);background:#fff;display:grid;place-items:center;padding:14px;text-align:center;box-shadow:0 14px 34px rgba(17,24,39,.06)}.validation-score b{display:block;font-size:32px;line-height:1;letter-spacing:-.06em;color:#111827}.validation-score small{display:block;margin-top:6px;text-transform:uppercase;letter-spacing:.08em;font-size:10px;font-weight:900;color:#6b7280}.validation-kpis{margin:12px 0 14px}.validation-kpis .quick-card{box-shadow:0 10px 28px rgba(17,24,39,.05)}.validation-danger{background:#fff1f2!important;border-color:rgba(227,6,19,.25)!important}.validation-warn{background:#fffbeb!important;border-color:rgba(245,158,11,.28)!important}.validation-ok{background:#f0fdf4!important;border-color:rgba(22,163,74,.22)!important}.validation-list{display:grid;gap:10px;margin-top:14px}.validation-list h3{margin:8px 0 2px;font-size:18px;letter-spacing:-.025em}.validation-issue{display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:start;padding:13px;border-radius:18px;background:#fff;border:1px solid rgba(17,24,39,.08);text-decoration:none;color:#111827;box-shadow:0 8px 18px rgba(17,24,39,.04)}.validation-issue:hover{transform:translateY(-1px);box-shadow:0 12px 26px rgba(17,24,39,.08)}.validation-issue>span{display:grid;place-items:center;width:30px;height:30px;border-radius:999px;background:#f8fafc}.validation-issue b{display:block;font-size:14px;line-height:1.2}.validation-issue small{display:block;margin-top:4px;color:#6b7280;line-height:1.35}.validation-issue.critical{border-left:5px solid #e30613}.validation-issue.warning{border-left:5px solid #f59e0b}.validation-error-note{background:#fff1f2;border-color:#f1b2b2;color:#8a1111}.validation-ready-note{background:#f0fdf4!important;border-color:#bbf7d0!important;color:#166534}.admin-validation-inline{padding:18px;margin:16px 0 18px;border-radius:22px}.admin-validation-inline .validation-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.admin-validation-inline .validation-list{max-height:360px;overflow:auto;padding-right:4px}
.validation-soft-card .validation-head{margin-bottom:10px}
.validation-soft-count{min-width:118px;border-radius:20px;border:1px solid rgba(245,158,11,.18);background:#fffbeb;display:grid;place-items:center;padding:12px 14px;text-align:center}
.validation-soft-count b{display:block;font-size:28px;line-height:1;color:#92400e;letter-spacing:-.045em}
.validation-soft-count small{display:block;margin-top:5px;text-transform:uppercase;letter-spacing:.08em;font-size:9px;font-weight:950;color:#92400e}
.validation-soft-warnings{margin-top:14px;border:1px solid rgba(17,24,39,.08);border-radius:18px;background:#fff;overflow:hidden}
.validation-soft-warnings summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;background:#fafafa}
.validation-soft-warnings summary::-webkit-details-marker{display:none}
.validation-soft-warnings summary b{display:block;font-size:15px;line-height:1.2;color:#111827}
.validation-soft-warnings summary small{display:block;margin-top:3px;color:#6b7280;font-weight:650}
.validation-soft-warnings summary em{font-style:normal;display:grid;place-items:center;min-width:34px;height:34px;border-radius:999px;background:#fffbeb;color:#92400e;font-weight:950}
.validation-soft-warnings .validation-list{margin:0;padding:12px;background:#fff}
.validation-soft-warnings .validation-issue{box-shadow:none;border-radius:14px;padding:11px}
@media(max-width:780px){.validation-head{display:block}.validation-score{margin-top:12px;min-width:0;width:100%}.admin-validation-inline .validation-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.validation-issue{grid-template-columns:30px 1fr}.validation-head h2,.validation-head h3{font-size:24px}}

/* V41.13.5 — Calendario avanzado de citas */
.calendar-advanced-grid{display:grid;grid-template-columns:minmax(320px,.9fr) minmax(360px,1.1fr);gap:20px;margin:24px 0}
.call-advanced-card{border:1px solid rgba(17,17,17,.08);box-shadow:0 22px 60px rgba(30,25,15,.08)}
.call-settings-form,.call-block-form{display:grid;gap:14px}.call-block-form textarea{min-height:82px}.checkbox-line{display:flex!important;align-items:center;gap:10px;font-weight:900}.checkbox-line input{width:auto;margin:0}.call-block-time-grid{transition:opacity .16s ease}
.call-block-list-card{scroll-margin-top:28px}.call-block-table td{vertical-align:top;min-width:160px}.call-admin-mini-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.call-admin-mini-actions .btn{min-height:36px;padding:9px 12px;font-size:12px}.call-couple-actions{margin:12px 0 4px}.call-couple-actions .btn{width:100%;justify-content:center}
.call-calendar-card .fc-call-block{border:0!important;background:#fff2f2!important;color:#6e1616!important;box-shadow:0 8px 20px rgba(120,20,20,.08)!important}.call-calendar-card .fc-call-block-all-day{background:#fff0e9!important}.call-calendar-card .fc-call-block-partial{background:#fff6df!important}.call-block-inner .fc-event-name{font-weight:950}.call-slot-btn{display:inline-flex;flex-direction:column;align-items:center;gap:2px}.call-slot-btn small{font-size:10px;line-height:1.1;font-weight:800;max-width:130px;white-space:normal;text-decoration:none;color:#8a2424}.call-slot-btn.disabled span{text-decoration:line-through}.call-slot-btn.disabled small{text-decoration:none}.side-card .small{line-height:1.55}
@media(max-width:1100px){.calendar-advanced-grid{grid-template-columns:1fr}.call-block-table td{min-width:220px}}
@media(max-width:720px){.call-admin-mini-actions{display:grid}.calendar-advanced-grid .grid.two,.calendar-advanced-grid .grid.three{grid-template-columns:1fr}.call-slot-btn small{max-width:100%}}
.calendar-advanced-grid .grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}

/* V41.13.7 — Modo DJ offline / checklist evento */
.dj-offline-hero{border-radius:34px;padding:30px;background:linear-gradient(135deg,#111,#2f2f32);color:#fff;box-shadow:0 24px 70px rgba(0,0,0,.18);margin-bottom:16px;display:flex;justify-content:space-between;gap:18px;align-items:stretch;overflow:hidden;position:relative}.dj-offline-hero:after{content:"";position:absolute;right:-70px;top:-80px;width:240px;height:240px;border-radius:50%;background:rgba(255,255,255,.08)}.dj-offline-hero h1{color:#fff;font-size:clamp(42px,7vw,82px);line-height:.94;letter-spacing:-.06em;margin:6px 0 10px;position:relative;z-index:1}.dj-offline-hero p{color:rgba(255,255,255,.76);margin:0;position:relative;z-index:1}.dj-offline-hero .section-kicker{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.18);color:#f5e8cb}.dj-offline-score{min-width:190px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.18);border-radius:28px;padding:20px;display:flex;flex-direction:column;justify-content:center;position:relative;z-index:1}.dj-offline-score small{text-transform:uppercase;letter-spacing:.08em;color:rgba(255,255,255,.68);font-weight:900}.dj-offline-score b{font-size:48px;line-height:.95;letter-spacing:-.06em}.dj-offline-score span,.dj-offline-score em{color:rgba(255,255,255,.72);font-style:normal;font-weight:800}.dj-offline-toolbar{position:sticky;top:70px;z-index:35;display:flex;gap:10px;flex-wrap:wrap;align-items:center;justify-content:flex-end;background:rgba(245,245,247,.86);backdrop-filter:blur(16px);padding:10px 0;margin-bottom:8px}.dj-offline-alert{background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;border-radius:22px;padding:14px 16px;margin:10px 0 18px;box-shadow:0 10px 25px rgba(154,52,18,.07)}.dj-offline-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:18px;align-items:start}.dj-offline-card{overflow:hidden}.music-card-header.compact{padding:22px 24px}.dj-offline-checklist-card form{padding:22px 24px}.dj-offline-progress{height:10px;border-radius:999px;background:#eef0f4;overflow:hidden;margin:0 0 18px}.dj-offline-progress span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#111,#b7955b);transition:width .2s ease}.dj-offline-check-group{margin:18px 0}.dj-offline-check-group h3{font-size:15px;text-transform:uppercase;letter-spacing:.08em;color:#6b7280;margin:0 0 10px}.dj-offline-check-row{display:flex;gap:12px;align-items:flex-start;background:#fbfbfd;border:1px solid rgba(0,0,0,.06);border-radius:18px;padding:13px 14px;margin-bottom:9px;cursor:pointer}.dj-offline-check-row input{width:24px;height:24px;accent-color:#111;flex:0 0 auto;margin-top:2px}.dj-offline-check-row span{display:block}.dj-offline-check-row b{display:block;font-size:15px;letter-spacing:-.01em}.dj-offline-check-row small{display:block;color:#6b7280;margin-top:3px;line-height:1.35}.dj-offline-form-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:12px}.dj-offline-summary-card{padding:24px}.dj-offline-summary-card h2{font-size:30px;margin:6px 0 16px}.dj-offline-quick-list{display:grid;gap:10px}.dj-offline-quick-list div{background:#fbfbfd;border:1px solid rgba(0,0,0,.06);border-radius:18px;padding:13px}.dj-offline-quick-list span{display:block;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:#6b7280;margin-bottom:4px}.dj-offline-quick-list b{display:block;font-size:16px}.dj-offline-quick-list small{display:block;color:#6b7280;margin-top:3px}.dj-offline-sections{margin-top:18px;display:grid;gap:14px}.dj-offline-detail{padding:0;overflow:hidden}.dj-offline-detail summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:20px 24px;border-bottom:1px solid rgba(0,0,0,.06);font-weight:900}.dj-offline-detail summary::-webkit-details-marker{display:none}.dj-offline-detail summary span{font-size:22px;letter-spacing:-.03em}.dj-offline-detail summary b{background:#f3f4f6;border:1px solid rgba(0,0,0,.06);border-radius:999px;padding:7px 12px;font-size:13px;color:#374151}.dj-offline-list{padding:20px 24px;display:grid;gap:12px}.dj-offline-list.two-cols{grid-template-columns:repeat(2,minmax(0,1fr))}.dj-offline-item{display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;background:#fff;border:1px solid rgba(0,0,0,.07);border-radius:20px;padding:16px;box-shadow:0 8px 24px rgba(0,0,0,.045)}.dj-offline-item.compact{grid-template-columns:auto minmax(0,1fr)}.dj-offline-index{width:34px;height:34px;border-radius:50%;background:#f5f5f7;display:grid;place-items:center;font-weight:1000;color:#6b7280}.dj-offline-item h3{font-size:20px;margin:4px 0 8px;line-height:1.05}.dj-offline-item p{margin:0 0 8px}.dj-offline-item a:not(.btn){font-weight:900;color:#0066cc}.dj-offline-note{background:#fff7ed;border:1px solid #fed7aa;color:#7c2d12;border-radius:14px;padding:10px;margin-top:8px}.muted-item{background:#fafafa}.dj-offline-restrictions{padding:22px 24px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.dj-offline-restrictions p{background:#fbfbfd;border:1px solid rgba(0,0,0,.06);border-radius:18px;padding:14px;margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.dj-offline-restrictions .wide{grid-column:1/-1}.dj-offline-bottom-bar{position:fixed;left:50%;bottom:14px;transform:translateX(-50%);width:min(560px,calc(100% - 24px));background:rgba(17,17,17,.92);color:#fff;border:1px solid rgba(255,255,255,.12);box-shadow:0 18px 50px rgba(0,0,0,.28);border-radius:24px;padding:10px;display:flex;justify-content:space-between;gap:10px;align-items:center;z-index:80;backdrop-filter:blur(16px)}.dj-offline-bottom-bar span{font-weight:900;padding-left:10px}.dj-mobile-checklist-status{border-radius:22px;padding:14px 16px;margin:14px 0;background:#f3f4f6;border:1px solid rgba(0,0,0,.06)}.dj-mobile-checklist-status span{display:block;text-transform:uppercase;letter-spacing:.08em;font-size:11px;color:#6b7280;font-weight:900}.dj-mobile-checklist-status b{font-size:21px}.dj-mobile-checklist-status small{display:block;color:#6b7280;margin-top:3px}.dj-mobile-checklist-status.listo{background:#ecfdf3;border-color:#bbf7d0;color:#14532d}.dj-mobile-checklist-status.en_progreso{background:#fff7ed;border-color:#fed7aa;color:#9a3412}.dj-mobile-actions.three{grid-template-columns:repeat(3,minmax(0,1fr))}.pill.ok{background:#ecfdf3!important;border-color:#bbf7d0!important;color:#14532d!important}.pill.warn{background:#fff7ed!important;border-color:#fed7aa!important;color:#9a3412!important}.meta-chip.is-offline{background:#fff7ed!important;color:#9a3412!important;border-color:#fed7aa!important}
@media(max-width:900px){.dj-offline-grid{grid-template-columns:1fr}.dj-offline-list.two-cols,.dj-offline-restrictions{grid-template-columns:1fr}.dj-offline-score{min-width:0}.dj-offline-toolbar{top:58px;justify-content:flex-start;overflow:auto;flex-wrap:nowrap}.dj-mobile-actions.three{grid-template-columns:1fr}.dj-offline-bottom-bar{display:flex}}
@media(max-width:640px){.dj-offline-hero{border-radius:0;margin:-22px -12px 14px;padding:22px 16px;display:block}.dj-offline-hero h1{font-size:46px}.dj-offline-score{margin-top:16px}.dj-offline-toolbar{margin-left:-12px;margin-right:-12px;padding-left:12px}.dj-offline-checklist-card form,.dj-offline-list,.dj-offline-restrictions{padding:16px}.dj-offline-detail summary{padding:18px 16px}.dj-offline-detail summary span{font-size:19px}.dj-offline-item{grid-template-columns:36px minmax(0,1fr);padding:14px}.dj-offline-bottom-bar .btn{min-height:44px}}
@media print{.dj-offline-toolbar,.dj-offline-alert,.dj-offline-bottom-bar{display:none!important}.dj-offline-hero,.dj-offline-card,.dj-offline-detail{box-shadow:none!important;border:1px solid #ddd!important}.dj-offline-grid,.dj-offline-list.two-cols,.dj-offline-restrictions{grid-template-columns:1fr!important}.dj-offline-detail{break-inside:auto!important;page-break-inside:auto!important}.dj-offline-detail summary{break-after:avoid!important}.dj-offline-item,.dj-offline-check-row{break-inside:avoid!important;page-break-inside:avoid!important}}

/* V41.13.7 — Modo DJ offline / checklist evento */
.dj-offline-shell{max-width:1160px;margin:0 auto;padding-bottom:90px}
.dj-offline-toolbar{position:sticky;top:70px;z-index:38;display:flex;justify-content:flex-end;align-items:center;gap:10px;flex-wrap:wrap;background:rgba(245,245,247,.88);backdrop-filter:blur(16px);padding:10px 0;margin-bottom:12px}
.dj-offline-hero{position:relative;overflow:hidden;border-radius:36px;padding:32px;background:linear-gradient(135deg,#111,#2e2e32);color:#fff;box-shadow:0 24px 70px rgba(0,0,0,.18);margin-bottom:18px;display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:22px;align-items:stretch}
.dj-offline-hero:after{content:"";position:absolute;right:-90px;top:-90px;width:280px;height:280px;border-radius:50%;background:rgba(255,255,255,.08)}
.dj-offline-hero h1{position:relative;z-index:1;color:#fff;font-size:clamp(42px,7vw,82px);line-height:.93;letter-spacing:-.06em;margin:8px 0 10px;max-width:820px}
.dj-offline-hero p{position:relative;z-index:1;color:rgba(255,255,255,.76);margin:0;font-size:17px}
.dj-offline-hero .section-kicker{position:relative;z-index:1;background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.18);color:#f5e8cb}
.dj-offline-status-row{position:relative;z-index:1;display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}
.dj-offline-status{display:inline-flex;align-items:center;border-radius:999px;padding:8px 11px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.16);color:rgba(255,255,255,.78);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.dj-offline-status.ok{background:rgba(22,163,74,.18);border-color:rgba(134,239,172,.35);color:#dcfce7}.dj-offline-status.warn{background:rgba(245,158,11,.18);border-color:rgba(253,230,138,.35);color:#fef3c7}.dj-offline-status.bad{background:rgba(220,38,38,.20);border-color:rgba(254,202,202,.38);color:#fee2e2}.dj-offline-status.info{background:rgba(59,130,246,.17);border-color:rgba(191,219,254,.32);color:#dbeafe}
.dj-offline-progress{position:relative;z-index:1;min-height:170px;border-radius:30px;background:conic-gradient(#f1d392 calc((var(--offline-progress,0))*1%),rgba(255,255,255,.16) 0);padding:18px;display:grid;place-items:center;text-align:center;color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.16)}
.dj-offline-progress:before{content:"";position:absolute;inset:14px;border-radius:24px;background:linear-gradient(135deg,rgba(255,255,255,.16),rgba(255,255,255,.07));backdrop-filter:blur(10px)}
.dj-offline-progress b,.dj-offline-progress span,.dj-offline-progress small{position:relative;z-index:1;display:block}.dj-offline-progress b{font-size:48px;line-height:.95;letter-spacing:-.06em}.dj-offline-progress span{font-weight:900;color:rgba(255,255,255,.80);margin-top:4px}.dj-offline-progress small{text-transform:uppercase;letter-spacing:.08em;color:rgba(255,255,255,.62);font-weight:900;margin-top:2px}
.dj-offline-top-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:16px;margin-bottom:18px}.dj-offline-mini-card{padding:24px;border:1px solid rgba(17,17,17,.08);box-shadow:0 18px 50px rgba(35,28,12,.07)}.dj-offline-mini-card h2{font-size:28px;margin:6px 0 10px;letter-spacing:-.04em}.locked-note{background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;border-radius:18px;padding:12px;margin:12px 0 0;font-weight:800}
.dj-offline-pack-list{display:grid;grid-template-columns:1fr auto;gap:9px 14px;margin:12px 0}.dj-offline-pack-list span{color:#6b7280}.dj-offline-pack-list b{font-weight:950}
.dj-offline-layout{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(300px,.82fr);gap:18px;align-items:start;margin-bottom:18px}.dj-offline-checklist-card{overflow:hidden}.dj-offline-checklist-form{padding:22px 24px}.dj-offline-check-group{border:1px solid rgba(17,17,17,.08);border-radius:24px;background:#fbfbfd;margin:0 0 12px;overflow:hidden}.dj-offline-check-group summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:15px 18px;font-weight:950;background:#fff}.dj-offline-check-group summary::-webkit-details-marker{display:none}.dj-offline-check-group summary span{font-size:15px;text-transform:uppercase;letter-spacing:.08em;color:#374151}.dj-offline-check-group summary small{background:#f3f4f6;border-radius:999px;padding:6px 10px;color:#4b5563;font-weight:950}
.dj-offline-check-items{display:grid;gap:9px;padding:14px}.dj-offline-check-item{display:grid;grid-template-columns:auto 34px minmax(0,1fr);gap:12px;align-items:start;background:#fff;border:1px solid rgba(17,17,17,.07);border-radius:18px;padding:13px;cursor:pointer;transition:.16s ease}.dj-offline-check-item:hover{transform:translateY(-1px);box-shadow:0 12px 26px rgba(17,24,39,.06)}.dj-offline-check-item input{width:22px;height:22px;margin:5px 0 0;accent-color:#111}.dj-offline-check-mark{width:34px;height:34px;border-radius:50%;background:#f3f4f6;display:grid;place-items:center}.dj-offline-check-mark:before{content:"";width:12px;height:7px;border-left:3px solid #9ca3af;border-bottom:3px solid #9ca3af;transform:rotate(-45deg);margin-top:-2px}.dj-offline-check-copy b{display:block;font-size:15px;color:#111827}.dj-offline-check-copy small{display:block;color:#6b7280;line-height:1.35;margin-top:3px}.dj-offline-check-item.is-done{background:#f0fdf4;border-color:#bbf7d0}.dj-offline-check-item.is-done .dj-offline-check-mark{background:#16a34a}.dj-offline-check-item.is-done .dj-offline-check-mark:before{border-color:#fff}
.dj-offline-notes-label{display:block;font-weight:950;margin-top:18px;color:#111827}.dj-offline-notes-label textarea{margin-top:8px;min-height:110px;width:100%;resize:vertical}.dj-offline-form-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:14px}
.dj-offline-side{display:grid;gap:18px}.dj-offline-summary-card{padding:24px}.dj-offline-summary-card h2{font-size:28px;margin:6px 0 16px;letter-spacing:-.04em}.dj-offline-data-list{display:grid;grid-template-columns:1fr 1.2fr;gap:10px}.dj-offline-data-list span{font-size:11px;font-weight:950;text-transform:uppercase;letter-spacing:.08em;color:#6b7280}.dj-offline-data-list b{font-size:15px;color:#111827;overflow-wrap:anywhere}.dj-offline-places{display:grid;gap:10px}.dj-offline-places div{background:#fbfbfd;border:1px solid rgba(17,17,17,.07);border-radius:18px;padding:13px}.dj-offline-places span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:950;color:#6b7280}.dj-offline-places b{display:block;font-size:19px;line-height:1.05;margin:5px 0}.dj-offline-places small{display:block;color:#4b5563;overflow-wrap:anywhere}
.dj-offline-music-card,.dj-offline-restrictions-card{overflow:hidden;margin-bottom:18px}.dj-offline-music-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:22px 24px}.dj-offline-music-block{background:#fbfbfd;border:1px solid rgba(17,17,17,.07);border-radius:24px;padding:18px}.dj-offline-music-block h3{margin:0 0 12px;font-size:22px;letter-spacing:-.03em}.dj-offline-music-row{display:grid;grid-template-columns:54px minmax(0,1fr) auto;gap:12px;align-items:start;background:#fff;border:1px solid rgba(17,17,17,.07);border-radius:18px;padding:12px;margin-bottom:9px}.dj-offline-music-row>span{display:inline-flex;justify-content:center;align-items:center;min-height:32px;border-radius:999px;background:#f3f4f6;color:#374151;font-size:11px;font-weight:950;text-transform:uppercase;letter-spacing:.04em;padding:0 8px}.dj-offline-music-row b{display:block;color:#111827}.dj-offline-music-row small{display:block;color:#6b7280;line-height:1.35;margin-top:3px}.dj-offline-music-row a{font-weight:950;color:#0066cc}.dj-offline-music-row.muted-row{opacity:.78}.dj-offline-restrictions-grid{padding:22px 24px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.dj-offline-restrictions-grid p{background:#fbfbfd;border:1px solid rgba(17,17,17,.07);border-radius:18px;padding:15px;margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.dj-offline-restrictions-grid .wide{grid-column:1/-1}
.dj-mobile-checklist-status{border-radius:22px;padding:14px 16px;margin:14px 0;background:#f3f4f6;border:1px solid rgba(0,0,0,.06)}.dj-mobile-checklist-status span{display:block;text-transform:uppercase;letter-spacing:.08em;font-size:11px;color:#6b7280;font-weight:900}.dj-mobile-checklist-status b{font-size:21px}.dj-mobile-checklist-status small{display:block;color:#6b7280;margin-top:3px}.dj-mobile-checklist-status.listo{background:#ecfdf3;border-color:#bbf7d0;color:#14532d}.dj-mobile-checklist-status.en_progreso{background:#fff7ed;border-color:#fed7aa;color:#9a3412}.dj-mobile-actions.three{grid-template-columns:repeat(3,minmax(0,1fr))}.pill.ok{background:#ecfdf3!important;border-color:#bbf7d0!important;color:#14532d!important}.pill.warn{background:#fff7ed!important;border-color:#fed7aa!important;color:#9a3412!important}
@media(max-width:980px){.dj-offline-layout,.dj-offline-top-grid,.dj-offline-music-grid{grid-template-columns:1fr}.dj-offline-hero{grid-template-columns:1fr}.dj-offline-progress{min-height:130px}.dj-offline-toolbar{top:58px;justify-content:flex-start;overflow:auto;flex-wrap:nowrap}.dj-mobile-actions.three{grid-template-columns:1fr}}
@media(max-width:640px){.dj-offline-shell{width:calc(100% + 0px);padding-bottom:70px}.dj-offline-hero{border-radius:0;margin:-22px -12px 14px;padding:22px 16px}.dj-offline-hero h1{font-size:44px}.dj-offline-toolbar{margin-left:-12px;margin-right:-12px;padding-left:12px}.dj-offline-checklist-form,.dj-offline-music-grid,.dj-offline-restrictions-grid{padding:16px}.dj-offline-check-item{grid-template-columns:auto minmax(0,1fr)}.dj-offline-check-mark{display:none}.dj-offline-data-list{grid-template-columns:1fr}.dj-offline-music-row{grid-template-columns:44px minmax(0,1fr)}.dj-offline-music-row a{grid-column:2}.dj-offline-restrictions-grid{grid-template-columns:1fr}.dj-offline-form-actions .btn{width:100%}}
@media print{.dj-offline-toolbar,.dj-offline-status-row,.dj-offline-top-grid,.dj-offline-form-actions{display:none!important}.dj-offline-shell{max-width:none;padding:0}.dj-offline-hero,.dj-offline-checklist-card,.dj-offline-summary-card,.dj-offline-music-card,.dj-offline-restrictions-card{box-shadow:none!important;border:1px solid #ddd!important}.dj-offline-layout,.dj-offline-music-grid,.dj-offline-restrictions-grid{grid-template-columns:1fr!important}.dj-offline-check-item,.dj-offline-music-row{break-inside:avoid!important;page-break-inside:avoid!important}}

/* V41.13.8 · Centro de notificaciones y avisos automáticos */
.admin-notification-bell{position:relative;display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:999px;background:rgba(255,255,255,.78);border:1px solid rgba(0,0,0,.08);text-decoration:none;box-shadow:0 10px 30px rgba(0,0,0,.06);transition:.18s ease;backdrop-filter:blur(10px)}
.admin-notification-bell:hover,.admin-notification-bell.has-unread{transform:translateY(-1px);background:#fff;border-color:rgba(175,139,75,.35);box-shadow:0 14px 32px rgba(175,139,75,.15)}
.admin-notification-bell .bell-icon{font-size:18px;line-height:1}
.notification-badge{position:absolute;top:-5px;right:-5px;min-width:21px;height:21px;padding:0 5px;border-radius:999px;background:#c62828;color:#fff;font-size:11px;font-weight:900;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 7px 18px rgba(198,40,40,.3);border:2px solid #fff}
.notifications-hero{position:relative;overflow:hidden}
.notifications-hero:after{content:"";position:absolute;right:-120px;top:-120px;width:300px;height:300px;border-radius:999px;background:radial-gradient(circle,rgba(212,175,55,.20),rgba(212,175,55,0));pointer-events:none}
.notification-kpis .kpi-card b{letter-spacing:-.04em}
.notification-toolbar-card{margin-top:18px}
.notification-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.notification-tabs a{display:inline-flex;align-items:center;gap:8px;text-decoration:none;color:#1d1d1f;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:999px;padding:10px 13px;font-weight:800;box-shadow:0 10px 26px rgba(0,0,0,.04);transition:.18s ease}
.notification-tabs a:hover,.notification-tabs a.active{background:#111;color:#fff;border-color:#111;transform:translateY(-1px)}
.notification-tabs a b{min-width:23px;height:23px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:rgba(0,0,0,.07);font-size:12px;padding:0 7px}
.notification-tabs a.active b{background:rgba(255,255,255,.18);color:#fff}
.notification-category-strip{margin-top:16px;display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.notification-category-pills{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.notification-center-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:18px;margin-top:18px;align-items:start}
.notification-list{display:grid;gap:12px}
.notification-item{display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:16px;align-items:start;background:#fff;border:1px solid rgba(0,0,0,.075);border-radius:26px;padding:18px;box-shadow:0 16px 40px rgba(0,0,0,.055);position:relative;overflow:hidden}
.notification-item:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:#8e8e93}
.notification-item.severity-critical:before{background:#c62828}
.notification-item.severity-warning:before{background:#d68910}
.notification-item.severity-info:before{background:#2f80ed}
.notification-item.is-read{opacity:.72}
.notification-item.is-dismissed{opacity:.58;background:#fafafa}
.notification-icon{width:46px;height:46px;border-radius:16px;display:flex;align-items:center;justify-content:center;background:#f6f2eb;font-size:20px}
.notification-copy h3{font-size:20px;line-height:1.15;margin:8px 0 6px;letter-spacing:-.035em;color:#111}
.notification-copy p{margin:0;color:#4b5563;line-height:1.45;font-weight:600}
.notification-headline,.notification-meta,.notification-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.notification-meta{margin-top:12px;color:#6b7280;font-size:13px;font-weight:700}
.notification-meta span{display:inline-flex;align-items:center;gap:6px}
.notification-meta span:not(:last-child):after{content:"·";margin-left:8px;color:#c7c7cc}
.notification-severity.severity-critical{background:#fff1f1;color:#a31616;border-color:#ffd0d0}
.notification-severity.severity-warning{background:#fff8e7;color:#8a5a00;border-color:#ffe0a3}
.notification-severity.severity-info{background:#eef5ff;color:#1557a8;border-color:#d5e7ff}
.unread-pill{background:#111;color:#fff;border-color:#111}
.muted-pill{background:#f2f2f7;color:#6e6e73;border-color:#e5e5ea}
.notification-actions{justify-content:flex-end;min-width:210px}
.notification-actions form{display:inline-flex;margin:0}
.notification-empty{min-height:260px;display:flex;align-items:center;justify-content:center;text-align:center;gap:12px}
.notification-side-panel{position:sticky;top:18px}
.notification-side-panel h2{font-size:24px;margin:8px 0 14px;letter-spacing:-.04em}
.notification-rule-list{display:grid;gap:10px;margin:14px 0 18px}
.notification-rule-list div{padding:13px;border-radius:18px;background:#faf7f2;border:1px solid rgba(175,139,75,.14)}
.notification-rule-list b{display:block;margin-bottom:4px;color:#111}
.notification-rule-list span{display:block;color:#6b7280;font-size:13px;line-height:1.4;font-weight:600}
@media(max-width:1050px){.notification-center-grid{grid-template-columns:1fr}.notification-side-panel{position:relative;top:auto}.notification-item{grid-template-columns:42px minmax(0,1fr)}}
@media(max-width:720px){.admin-notification-bell{width:38px;height:38px}.notification-item{grid-template-columns:1fr;padding:16px}.notification-icon{width:42px;height:42px}.notification-actions{min-width:0;justify-content:flex-start}.notification-toolbar-card .admin-section-toolbar{align-items:flex-start}.notification-tabs a{padding:9px 11px}.notification-copy h3{font-size:18px}}

/* V41.13.8 ajustes finales vista centro de notificaciones */
.admin-nav-notification-link{position:relative;display:flex!important;align-items:center;gap:8px}
.admin-nav-notification-link em{margin-left:auto;min-width:22px;height:22px;border-radius:999px;background:#e30613;color:#fff;font-style:normal;font-size:11px;font-weight:950;display:inline-flex;align-items:center;justify-content:center;padding:0 6px;box-shadow:0 6px 18px rgba(227,6,19,.28)}
.notification-hero{background:linear-gradient(135deg,#111827 0%,#1f2937 52%,#433014 100%)!important;color:#fff;position:relative;overflow:hidden}
.notification-hero .muted{color:rgba(255,255,255,.78)!important}.notification-hero .section-kicker{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.18);color:#f7e7c1}.notification-hero:after{content:"";position:absolute;right:-120px;top:-140px;width:340px;height:340px;border-radius:999px;background:radial-gradient(circle,rgba(245,196,79,.28),rgba(245,196,79,0));pointer-events:none}
.notification-layout{display:grid;grid-template-columns:310px minmax(0,1fr);gap:20px;margin:22px 0;align-items:start}.notification-filter-card,.notification-board-card{overflow:hidden;border:1px solid rgba(17,24,39,.08);box-shadow:0 24px 70px rgba(30,25,15,.08)}.notification-filter-card{position:sticky;top:18px}.notification-filter-card .music-card-header{padding:22px 22px 10px}.notification-tabs{display:grid;gap:8px;padding:0 18px 18px;margin:0}.notification-tabs a{justify-content:space-between;border-radius:16px;padding:12px 14px}.notification-tabs a span{font-size:13px}.notification-category-list{border-top:1px solid rgba(17,24,39,.08);padding:18px;display:grid;gap:8px}.notification-category-list>b{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#6b7280}.notification-category-list a{display:flex;align-items:center;justify-content:space-between;text-decoration:none;color:#111827;border:1px solid rgba(17,24,39,.08);background:#fbfbfd;border-radius:14px;padding:10px 12px;font-weight:850}.notification-category-list em{font-style:normal;min-width:24px;height:24px;border-radius:999px;background:#111827;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:11px}.notification-side-action{padding:0 18px 18px}.notification-side-action .btn{width:100%}.notification-toolbar{background:linear-gradient(180deg,#fff,#fbfbfd)!important}.notification-list{padding:18px;display:grid;gap:12px}.notification-item{grid-template-columns:48px minmax(0,1fr);border-radius:24px;box-shadow:0 16px 40px rgba(17,24,39,.055)}.notification-item.state-read{opacity:.72}.notification-item.state-dismissed{opacity:.58;background:#fafafa}.notification-content{min-width:0}.notification-headline{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}.notification-headline h3{margin:5px 0 0;font-size:22px;line-height:1.13;letter-spacing:-.04em;color:#111827}.notification-state-pills{display:flex;gap:6px;flex-wrap:wrap}.notification-content>p{margin:10px 0 0;color:#4b5563;line-height:1.45;font-weight:650;overflow-wrap:anywhere}.notification-meta{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px;color:#6b7280;font-size:13px;font-weight:800}.notification-meta span{display:inline-flex;align-items:center;gap:5px}.notification-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-start;margin-top:15px;min-width:0}.notification-actions form{display:inline-flex;margin:0}.notification-actions .btn{min-height:36px}.notification-kpis .kpi-card b{font-size:34px}.notification-item.severity-critical{border-color:rgba(227,6,19,.18);background:linear-gradient(180deg,#fff,#fffafa)}.notification-item.severity-warning{border-color:rgba(245,158,11,.22);background:linear-gradient(180deg,#fff,#fffdf7)}.notification-item.severity-info{border-color:rgba(37,99,235,.16);background:linear-gradient(180deg,#fff,#fbfdff)}
@media(max-width:1100px){.notification-layout{grid-template-columns:1fr}.notification-filter-card{position:relative;top:auto}.notification-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.notification-tabs{grid-template-columns:1fr}.notification-list{padding:12px}.notification-item{grid-template-columns:1fr;padding:14px;border-radius:20px}.notification-headline h3{font-size:19px}.notification-kpis .kpi-card b{font-size:28px}}

/* V41.13.8 — Centro de notificaciones y avisos automáticos */
.admin-nav-notification-link{position:relative;gap:10px!important;}
.admin-nav-notification-link em{margin-left:auto;min-width:22px;height:22px;border-radius:999px;background:#ef4444;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-style:normal;font-weight:950;box-shadow:0 0 0 3px rgba(239,68,68,.14)}
.admin-notification-bell{position:relative;width:42px;height:42px;border-radius:999px;border:1px solid rgba(17,24,39,.10);background:#fff;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;box-shadow:0 8px 20px rgba(17,24,39,.05);transition:.16s ease}.admin-notification-bell:hover{transform:translateY(-1px);box-shadow:0 12px 26px rgba(17,24,39,.10)}.admin-notification-bell.has-unread,.admin-notification-bell .notification-badge:not([hidden]){border-color:rgba(239,68,68,.28)}.notification-badge{position:absolute;right:-5px;top:-6px;min-width:22px;height:22px;border-radius:999px;background:#ef4444;color:#fff;font-size:11px;font-weight:950;display:inline-flex;align-items:center;justify-content:center;padding:0 5px;border:2px solid #fff;box-shadow:0 8px 18px rgba(239,68,68,.28)}
.notifications-hero{background:linear-gradient(135deg,#111827 0%,#2f1e0a 54%,#b99655 130%)!important;color:#fff}.notifications-hero h1{color:#fff}.notifications-hero .muted{color:rgba(255,255,255,.72)}.notifications-hero .section-kicker{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.16);color:#f7e7c4}.notifications-kpi-grid{margin-top:18px}.notification-filter-card{margin:20px 0 18px;overflow:hidden}.notification-tabs{display:flex;gap:8px;flex-wrap:wrap;padding:16px;border-bottom:1px solid rgba(17,24,39,.08);background:linear-gradient(180deg,#fff,#fbfbfd)}.notification-tabs a{display:inline-flex;align-items:center;gap:8px;min-height:40px;border-radius:999px;padding:0 14px;border:1px solid rgba(17,24,39,.09);background:#fff;color:#374151;text-decoration:none;font-weight:900}.notification-tabs a.active,.notification-tabs a:hover{background:#111827;color:#fff;border-color:#111827}.notification-tabs a b{font-size:12px;min-width:22px;height:22px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#f3f4f6;color:#111827}.notification-tabs a.active b{background:rgba(255,255,255,.16);color:#fff}.notification-category-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center;padding:12px 16px;border-bottom:1px solid rgba(17,24,39,.06);background:#fff}.notification-category-pill{display:inline-flex;gap:7px;align-items:center;border:1px solid rgba(17,24,39,.08);border-radius:999px;padding:7px 11px;background:#f9fafb;color:#374151;text-decoration:none;font-weight:850;font-size:12px}.notification-category-pill.active,.notification-category-pill:hover{background:#fbf2e2;color:#5b3a0c;border-color:#e8d2a5}.notification-category-pill.clear{background:#fff;color:#6b7280}.notification-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:14px 16px;background:#fff}.notification-toolbar form,.notification-actions form{display:inline-flex;margin:0}.notification-center-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.55fr);gap:18px;align-items:start}.notification-list{display:grid;gap:13px}.notification-card{display:grid;grid-template-columns:48px minmax(0,1fr);gap:14px;border-radius:28px;border:1px solid rgba(17,24,39,.08);background:#fff;padding:18px;box-shadow:0 20px 60px rgba(17,24,39,.06);border-left:7px solid #2563eb}.notification-card.critical{border-left-color:#ef4444;background:linear-gradient(90deg,#fff7f7 0,#fff 22%)}.notification-card.warning{border-left-color:#f59e0b;background:linear-gradient(90deg,#fffbeb 0,#fff 22%)}.notification-card.info{border-left-color:#2563eb}.notification-card.state-read{opacity:.72}.notification-card.state-dismissed{opacity:.58;filter:saturate(.75)}.notification-card-icon{width:44px;height:44px;border-radius:999px;background:#f8fafc;display:grid;place-items:center;font-size:22px}.notification-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.notification-card h2{margin:6px 0 0;font-size:24px;letter-spacing:-.04em;line-height:1.05;color:#111827}.notification-card p{margin:10px 0 14px;color:#4b5563;line-height:1.45;overflow-wrap:anywhere}.notification-state{white-space:nowrap;border-radius:999px;padding:7px 10px;border:1px solid rgba(17,24,39,.08);font-size:11px;text-transform:uppercase;letter-spacing:.07em;font-weight:950}.notification-state.unread{background:#fff1f2;color:#9f1239;border-color:#fecdd3}.notification-state.read{background:#f3f4f6;color:#374151}.notification-state.dismissed{background:#f8fafc;color:#6b7280}.notification-meta-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:14px}.notification-meta-grid span{display:block;background:#fbfbfd;border:1px solid rgba(17,24,39,.07);border-radius:16px;padding:11px;min-height:58px;overflow-wrap:anywhere}.notification-meta-grid b{display:block;font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;color:#6b7280;margin-bottom:4px}.notification-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.notification-actions .btn{min-height:38px}.notification-side{position:sticky;top:88px;overflow:hidden}.notification-rule-list{display:grid;gap:10px;padding:0 22px 22px}.notification-rule-list div{border:1px solid rgba(17,24,39,.08);border-radius:18px;padding:13px;background:#fff}.notification-rule-list b{display:block;color:#111827;margin-bottom:4px}.notification-rule-list span{display:block;color:#6b7280;font-size:13px;line-height:1.35}.notification-empty{padding:30px;text-align:center;gap:10px}.notification-empty .btn{margin-top:8px}
@media(max-width:1120px){.notification-center-layout{grid-template-columns:1fr}.notification-side{position:static}.notification-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.admin-notification-bell{width:38px;height:38px}.notification-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.notification-tabs a{justify-content:center}.notification-card{grid-template-columns:1fr;padding:15px;border-radius:22px}.notification-card-icon{width:38px;height:38px}.notification-card-head{display:block}.notification-state{display:inline-flex;margin-top:10px}.notification-meta-grid{grid-template-columns:1fr}.notification-actions .btn,.notification-actions form{width:100%}.notification-actions form button{width:100%}.notification-toolbar .top-actions{align-items:stretch;width:100%}.notification-toolbar .section-search{width:100%}}

/* V41.13.9 · Timeline operativo del día de la boda */
.timeline-hero .premium-hero-content{align-items:stretch}.timeline-kpis{margin:18px 0}.timeline-generator .page-head{align-items:flex-start}.timeline-generator form{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.inline-check{font-size:13px;color:#5f6470;display:flex;gap:8px;align-items:center}.timeline-suggestions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.timeline-suggestions span{border:1px solid rgba(185,150,84,.22);background:#fffaf0;border-radius:999px;padding:8px 12px;font-weight:800;font-size:12px;color:#3b3020}.timeline-list{position:relative;display:flex;flex-direction:column;gap:16px}.timeline-list:before{content:"";position:absolute;left:52px;top:16px;bottom:16px;width:2px;background:linear-gradient(#d9c596,#ece7dc)}.timeline-item{position:relative;display:grid;grid-template-columns:106px 1fr;gap:18px;align-items:start}.timeline-time{position:relative;z-index:2;background:#111;color:#fff;border-radius:22px;min-height:70px;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 18px 40px rgba(0,0,0,.12)}.timeline-time b{font-size:18px}.timeline-time small{font-size:11px;opacity:.7;margin-top:3px}.timeline-body{background:rgba(255,255,255,.96);border:1px solid rgba(20,20,20,.08);border-radius:28px;padding:22px;box-shadow:0 20px 60px rgba(0,0,0,.08)}.timeline-item.status-done .timeline-time{background:#1d7f4c}.timeline-item.status-confirmed .timeline-time{background:#b8862b}.timeline-item.status-cancelled .timeline-time{background:#8b2d2d}.timeline-item-head{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}.timeline-chip{display:inline-flex;gap:7px;align-items:center;border:1px solid rgba(185,150,84,.28);border-radius:999px;padding:6px 10px;font-size:12px;font-weight:900;color:#4c3c22;background:#fffaf1}.timeline-status{border-radius:999px;padding:6px 10px;font-size:12px;font-weight:900;background:#f3f4f6;color:#384152}.timeline-status.confirmed{background:#fff4d8;color:#8a5b09}.timeline-status.done{background:#e9f8ef;color:#196b3e}.timeline-status.cancelled{background:#ffe9e9;color:#992626}.timeline-body h3{margin:12px 0 10px;font-size:24px;letter-spacing:-.03em}.timeline-meta{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.timeline-meta span{font-size:12px;font-weight:800;color:#596171;background:#f8f8f8;border-radius:999px;padding:7px 10px}.timeline-music-box{border:1px solid rgba(185,150,84,.18);background:#fffaf2;border-radius:18px;padding:12px 14px;margin:12px 0}.timeline-music-box p{margin:5px 0;color:#343943}.timeline-notes{white-space:pre-wrap;background:#fafafa;border-left:4px solid #c7a76a;border-radius:14px;padding:12px 14px;color:#3e4654}.timeline-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.timeline-actions form{display:inline}.timeline-edit{margin-top:16px;border-top:1px solid rgba(0,0,0,.07);padding-top:12px}.timeline-edit summary{cursor:pointer;font-weight:900;color:#4b3d24}.timeline-form{display:flex;flex-direction:column;gap:14px}.timeline-form.mini{margin-top:14px}.timeline-form textarea{min-height:90px}.empty-state{border:1px dashed rgba(0,0,0,.18);border-radius:22px;padding:22px;text-align:center;color:#6b7280;background:#fafafa}
@media(max-width:720px){.timeline-list:before{left:29px}.timeline-item{grid-template-columns:58px 1fr;gap:10px}.timeline-time{border-radius:18px;min-height:58px}.timeline-time b{font-size:13px}.timeline-body{border-radius:22px;padding:16px}.timeline-body h3{font-size:20px}.timeline-generator form{width:100%}.timeline-generator .btn{width:100%}}
@media print{.timeline-body{box-shadow:none}.timeline-list:before{background:#ddd}.timeline-actions,.timeline-edit,.timeline-generator,#nuevo-momento{display:none!important}.timeline-item{break-inside:avoid}}

/* V41.13.10 · Portal de novios guiado paso a paso */
.couple-guide-page .guide-hero{background:linear-gradient(135deg,#fff 0%,#fffaf2 48%,#f8f3e7 100%);}
.guide-progress-card b{letter-spacing:-.07em;}
.guide-menu{margin-top:0!important;}
.guide-next-card{border:1px solid rgba(17,24,39,.08);box-shadow:0 24px 70px rgba(28,21,12,.08);background:linear-gradient(180deg,#fff,#fffaf2);}
.guide-next-card.validation-blocked{background:linear-gradient(180deg,#fff,#fff4f4);}
.guide-next-card.validation-ready{background:linear-gradient(180deg,#fff,#f0fdf4);}
.guide-next-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px;}
.guide-stepper{overflow:hidden;}
.guide-stepper-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;}
.guide-stepper-head h2{margin:.25rem 0 0;letter-spacing:-.04em;}
.guide-steps-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;}
.guide-step-card{display:block;text-decoration:none;color:#111827;border:1px solid rgba(17,24,39,.08);background:#fff;border-radius:24px;padding:18px;box-shadow:0 12px 30px rgba(17,24,39,.055);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease;}
.guide-step-card:hover{transform:translateY(-2px);box-shadow:0 18px 42px rgba(17,24,39,.09);text-decoration:none;}
.guide-step-card h3{margin:12px 0 5px;font-size:20px;letter-spacing:-.035em;}
.guide-step-card p{margin:0 0 14px;color:#6b7280;line-height:1.35;font-size:14px;}
.guide-step-card small{display:block;margin-top:8px;color:#6b7280;font-weight:800;}
.guide-step-top{display:flex;align-items:center;gap:9px;}
.guide-number{width:32px;height:32px;border-radius:999px;background:#f3f4f6;display:grid;place-items:center;font-weight:900;color:#111827;}
.guide-icon{width:36px;height:36px;border-radius:14px;background:#fff8e7;display:grid;place-items:center;font-size:19px;}
.guide-status{margin-left:auto;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.06em;color:#6b7280;background:#f8fafc;border-radius:999px;padding:7px 9px;}
.guide-step-card.status-complete{border-color:rgba(22,163,74,.20);background:linear-gradient(180deg,#fff,#f2fff7);}
.guide-step-card.status-complete .guide-status{background:#dcfce7;color:#166534;}
.guide-step-card.status-progress{border-color:rgba(245,158,11,.24);background:linear-gradient(180deg,#fff,#fffaf0);}
.guide-step-card.status-progress .guide-status{background:#fef3c7;color:#92400e;}
.guide-step-card.status-blocked{border-color:rgba(227,6,19,.22);background:linear-gradient(180deg,#fff,#fff5f5);}
.guide-step-card.status-blocked .guide-status{background:#ffe4e6;color:#9f1239;}
.guide-step-card.status-locked{opacity:.72;background:#f8fafc;}
.progress-track.mini{height:7px;border-radius:999px;background:#eef2f7;overflow:hidden;}
.guide-mini-card{background:linear-gradient(135deg,#fff,#fffaf2);border:1px solid rgba(17,24,39,.08);box-shadow:0 24px 70px rgba(28,21,12,.08);}
.guide-inline-steps{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:8px;margin:16px 0;}
.guide-dot{text-decoration:none;color:#111827;text-align:center;padding:9px 6px;border-radius:16px;background:#fff;border:1px solid rgba(17,24,39,.08);box-shadow:0 8px 18px rgba(17,24,39,.04);}
.guide-dot span{display:grid;place-items:center;width:28px;height:28px;margin:0 auto 6px;border-radius:999px;background:#f3f4f6;font-weight:900;}
.guide-dot small{display:block;font-size:10px;font-weight:900;line-height:1.15;color:#6b7280;}
.guide-dot.status-complete span{background:#dcfce7;color:#166534;}
.guide-dot.status-progress span{background:#fef3c7;color:#92400e;}
.guide-dot.status-blocked span{background:#ffe4e6;color:#9f1239;}
.guide-ready-card{padding:24px;border-radius:28px;}
.guide-help-card{background:linear-gradient(180deg,#fff,#fafafa);}
@media(max-width:980px){.guide-steps-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.guide-inline-steps{grid-template-columns:repeat(3,minmax(0,1fr));}.guide-stepper-head{display:block;}.guide-stepper-head .pill{display:inline-flex;margin-top:10px;}}
@media(max-width:640px){.guide-steps-grid{grid-template-columns:1fr}.guide-step-card{border-radius:20px;padding:16px}.guide-status{font-size:10px;padding:6px 8px}.guide-next-actions{display:grid}.guide-next-actions .btn{width:100%}.guide-inline-steps{grid-template-columns:repeat(2,minmax(0,1fr));}.guide-dot{display:flex;align-items:center;gap:8px;text-align:left}.guide-dot span{margin:0}.guide-dot small{font-size:11px}.guide-stepper-head h2{font-size:26px;}}


/* V41.13.13 · Seguridad suave */
.admin-nav-security-link em{margin-left:auto;background:#f59e0b;color:#111827;border-radius:999px;padding:2px 7px;font-size:11px;font-style:normal;font-weight:900}.admin-security-bell{position:relative;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid rgba(17,24,39,.08);border-radius:14px;background:#fff;text-decoration:none}.admin-security-bell .notification-badge{position:absolute;top:-5px;right:-5px;min-width:18px;height:18px;border-radius:999px;background:#f59e0b;color:#111827;font-size:11px;font-weight:900;display:flex;align-items:center;justify-content:center}.admin-security-bell.is-critical .notification-badge{background:#ef4444;color:#fff}.security-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:20px 0}.security-summary-card{background:#fff;border:1px solid rgba(17,24,39,.08);border-radius:24px;padding:22px;box-shadow:0 18px 60px rgba(17,24,39,.08)}.security-summary-card b{display:block;font-size:34px;line-height:1;font-weight:900}.security-summary-card span{display:block;margin-top:8px;color:#6b7280;font-weight:700}.security-summary-card.critical b{color:#dc2626}.security-summary-card.warning b{color:#d97706}.security-summary-card.info b{color:#2563eb}.security-summary-card.ok b{color:#16a34a}.security-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:22px;align-items:start}.security-check-list,.security-activity-list{display:grid;gap:12px}.security-check-card{display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:14px;align-items:start;background:#fff;border:1px solid rgba(17,24,39,.08);border-radius:22px;padding:18px;box-shadow:0 14px 44px rgba(17,24,39,.06)}.security-check-card.critical{border-color:rgba(239,68,68,.28);background:linear-gradient(135deg,#fff,#fff7f7)}.security-check-card.warning{border-color:rgba(245,158,11,.30);background:linear-gradient(135deg,#fff,#fffbeb)}.security-check-card.ok{border-color:rgba(34,197,94,.25)}.security-check-icon{width:46px;height:46px;border-radius:16px;background:#f8fafc;display:flex;align-items:center;justify-content:center}.security-check-card h3{margin:0 0 5px;font-size:17px}.security-check-card p{margin:0 0 8px;color:#4b5563}.security-check-card small{display:block;color:#6b7280;margin-top:4px}.security-pill{white-space:nowrap;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:900;background:#f1f5f9;color:#334155}.security-pill.critical{background:#fee2e2;color:#991b1b}.security-pill.warning{background:#fef3c7;color:#92400e}.security-pill.ok{background:#dcfce7;color:#166534}.security-tabs{margin-bottom:14px}.security-activity-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;background:#fff;border:1px solid rgba(17,24,39,.08);border-radius:20px;padding:16px}.security-activity-card.fail{border-color:rgba(239,68,68,.25)}.security-activity-card.dismissed{opacity:.62}.security-activity-main b{display:block}.security-activity-main span,.security-activity-main small{color:#6b7280}.security-activity-main p{margin:6px 0;color:#374151}.security-activity-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.security-side-panel{position:sticky;top:18px;background:#fff;border:1px solid rgba(17,24,39,.08);border-radius:26px;padding:22px;box-shadow:0 18px 60px rgba(17,24,39,.08)}.security-side-panel hr{border:0;border-top:1px solid rgba(17,24,39,.08);margin:18px 0}.security-stat-line{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:11px 0;border-bottom:1px solid rgba(17,24,39,.06)}.security-stat-line b{font-size:22px;font-weight:900}.security-stat-line span{color:#6b7280;font-weight:700;text-align:right}@media(max-width:980px){.security-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.security-layout{grid-template-columns:1fr}.security-side-panel{position:static}}@media(max-width:620px){.security-summary-grid{grid-template-columns:1fr}.security-check-card,.security-activity-card{grid-template-columns:1fr}.security-activity-actions{justify-content:flex-start}}


/* V41.13.14.2 · Legibilidad global de menús admin
   Normaliza las cabeceras principales para que todas las páginas se lean con contraste alto.
   Evita títulos oscuros sobre fondos oscuros en Panel operativo, Notificaciones, Timeline,
   Seguridad y futuras pantallas nuevas. */
.admin-wrap .admin-dashboard-hero,
.admin-wrap .premium-hero,
.admin-wrap .dj-hero,
.admin-wrap .page-hero,
.admin-dashboard-hero.section-admin-hero,
.page-hero.analytics-hero,
.notifications-hero,
.operational-hero,
.security-hero,
.crm-tasks-hero{
  position:relative!important;
  overflow:hidden!important;
  border-radius:38px!important;
  padding:clamp(30px,4.2vw,48px)!important;
  background:
    linear-gradient(115deg,rgba(255,255,255,.96) 0%,rgba(255,251,243,.94) 52%,rgba(242,231,212,.92) 100%),
    url('/login-party-bg-v343.jpg') center/cover no-repeat!important;
  color:#0f172a!important;
  border:1px solid rgba(255,255,255,.82)!important;
  box-shadow:0 30px 90px rgba(60,45,20,.12)!important;
  text-shadow:none!important;
}
.admin-wrap .admin-dashboard-hero:before,
.admin-wrap .premium-hero:before,
.admin-wrap .dj-hero:before,
.admin-wrap .page-hero:before,
.admin-dashboard-hero.section-admin-hero:before,
.page-hero.analytics-hero:before,
.notifications-hero:before,
.operational-hero:before,
.security-hero:before,
.crm-tasks-hero:before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  background:
    linear-gradient(90deg,rgba(255,255,255,.92) 0%,rgba(255,255,255,.80) 46%,rgba(255,255,255,.58) 100%),
    radial-gradient(circle at 88% 18%,rgba(208,173,104,.22),rgba(208,173,104,0) 32%)!important;
  z-index:0!important;
}
.admin-wrap .admin-dashboard-hero:after,
.admin-wrap .premium-hero:after,
.admin-wrap .dj-hero:after,
.admin-wrap .page-hero:after,
.admin-dashboard-hero.section-admin-hero:after,
.page-hero.analytics-hero:after,
.notifications-hero:after,
.operational-hero:after,
.security-hero:after,
.crm-tasks-hero:after{
  content:""!important;
  position:absolute!important;
  right:-90px!important;
  top:-90px!important;
  width:260px!important;
  height:260px!important;
  border-radius:999px!important;
  background:radial-gradient(circle,rgba(208,173,104,.20),rgba(208,173,104,0) 70%)!important;
  pointer-events:none!important;
  z-index:0!important;
}
.admin-wrap .admin-dashboard-hero > *,
.admin-wrap .premium-hero > *,
.admin-wrap .dj-hero > *,
.admin-wrap .page-hero > *,
.admin-dashboard-hero.section-admin-hero > *,
.page-hero.analytics-hero > *,
.notifications-hero > *,
.operational-hero > *,
.security-hero > *,
.crm-tasks-hero > *{
  position:relative!important;
  z-index:1!important;
}
.admin-wrap .admin-dashboard-hero h1,
.admin-wrap .premium-hero h1,
.admin-wrap .dj-hero h1,
.admin-wrap .dj-hero h2,
.admin-wrap .page-hero h1,
.admin-dashboard-hero.section-admin-hero h1,
.page-hero.analytics-hero h1,
.notifications-hero h1,
.operational-hero h1,
.security-hero h1,
.crm-tasks-hero h1{
  color:#0b1220!important;
  text-shadow:none!important;
  font-weight:950!important;
  line-height:.96!important;
  letter-spacing:-.065em!important;
  max-width:980px!important;
}
.admin-wrap .admin-dashboard-hero p,
.admin-wrap .admin-dashboard-hero .muted,
.admin-wrap .premium-hero p,
.admin-wrap .premium-hero .premium-subtitle,
.admin-wrap .premium-hero .muted,
.admin-wrap .dj-hero p,
.admin-wrap .dj-hero .muted,
.admin-wrap .page-hero p,
.admin-dashboard-hero.section-admin-hero p,
.admin-dashboard-hero.section-admin-hero .muted,
.page-hero.analytics-hero p,
.notifications-hero p,
.notifications-hero .muted,
.operational-hero p,
.operational-hero .muted,
.security-hero p,
.security-hero .muted,
.crm-tasks-hero p,
.crm-tasks-hero .muted{
  color:#374151!important;
  text-shadow:none!important;
  font-weight:650!important;
  line-height:1.45!important;
}
.admin-wrap .section-kicker,
.admin-dashboard-hero.section-admin-hero .section-kicker,
.notifications-hero .section-kicker,
.operational-hero .section-kicker,
.security-hero .section-kicker,
.crm-tasks-hero .section-kicker,
.page-hero.analytics-hero .eyebrow{
  display:inline-flex!important;
  align-items:center!important;
  gap:7px!important;
  width:max-content!important;
  max-width:100%!important;
  border-radius:999px!important;
  padding:7px 11px!important;
  background:rgba(255,255,255,.88)!important;
  border:1px solid rgba(208,173,104,.28)!important;
  color:#8a6a32!important;
  box-shadow:0 8px 20px rgba(208,173,104,.09)!important;
  font-weight:900!important;
  text-transform:none!important;
}
.admin-wrap .meta-chip,
.admin-dashboard-hero.section-admin-hero .meta-chip,
.notifications-hero .meta-chip,
.operational-hero .meta-chip,
.security-hero .meta-chip,
.crm-tasks-hero .meta-chip{
  background:rgba(255,255,255,.92)!important;
  color:#111827!important;
  border:1px solid rgba(17,24,39,.08)!important;
}
.admin-wrap .admin-dashboard-hero .btn.light,
.admin-wrap .premium-hero .btn.light,
.admin-wrap .page-hero .btn.light,
.admin-dashboard-hero.section-admin-hero .btn.light,
.notifications-hero .btn.light,
.operational-hero .btn.light,
.security-hero .btn.light,
.crm-tasks-hero .btn.light{
  background:rgba(255,255,255,.92)!important;
  color:#111827!important;
  border:1px solid rgba(17,24,39,.10)!important;
  box-shadow:0 10px 26px rgba(17,24,39,.06)!important;
}
.admin-wrap .admin-dashboard-hero .btn:not(.light),
.admin-wrap .premium-hero .btn:not(.light),
.admin-wrap .page-hero .btn:not(.light),
.admin-dashboard-hero.section-admin-hero .btn:not(.light),
.notifications-hero .btn:not(.light),
.operational-hero .btn:not(.light),
.security-hero .btn:not(.light),
.crm-tasks-hero .btn:not(.light){
  background:#111827!important;
  color:#fff!important;
  border-color:#111827!important;
}
/* Sidebar: que se vea siempre claramente el menú activo */
.admin-sidebar nav a.active,
.admin-sidebar nav a[aria-current="page"]{
  background:rgba(255,255,255,.16)!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.20)!important;
  box-shadow:inset 4px 0 0 #d0ad68,0 10px 26px rgba(0,0,0,.16)!important;
}
.admin-sidebar nav a.active span,
.admin-sidebar nav a[aria-current="page"] span{filter:none!important;opacity:1!important;}
@media(max-width:760px){
  .admin-wrap .admin-dashboard-hero,
  .admin-wrap .premium-hero,
  .admin-wrap .dj-hero,
  .admin-wrap .page-hero,
  .admin-dashboard-hero.section-admin-hero,
  .page-hero.analytics-hero,
  .notifications-hero,
  .operational-hero,
  .security-hero,
  .crm-tasks-hero{padding:26px!important;border-radius:28px!important;}
  .admin-wrap .admin-dashboard-hero h1,
  .admin-wrap .premium-hero h1,
  .admin-wrap .dj-hero h1,
  .admin-wrap .page-hero h1,
  .admin-dashboard-hero.section-admin-hero h1,
  .page-hero.analytics-hero h1,
  .notifications-hero h1,
  .operational-hero h1,
  .security-hero h1,
  .crm-tasks-hero h1{font-size:clamp(34px,11vw,48px)!important;letter-spacing:-.055em!important;}
}


/* =========================================================
   V41.13.14.3 — Portal novios más limpio
   Menú desplegable y portada configurada sin foto duplicada
   ========================================================= */
.couple-language-switch{
display:flex;
align-items:center;
justify-content:flex-end;
gap:6px;
margin:0 0 10px;
font-size:12px;
font-weight:950;
color:#756b5d;
}
.couple-language-switch span{
margin-right:4px;
text-transform:uppercase;
letter-spacing:.08em;
font-size:10px;
}
.couple-language-switch a{
display:inline-flex;
align-items:center;
justify-content:center;
min-width:38px;
height:32px;
border-radius:999px;
background:#fff;
border:1px solid rgba(17,24,39,.10);
color:#111827;
text-decoration:none;
box-shadow:0 8px 18px rgba(35,28,18,.045);
}
.couple-language-switch a.active{
background:#111827;
border-color:#111827;
color:#fff;
}
.public-single-login-v35 .couple-language-switch{
justify-content:flex-start;
margin:-2px 0 12px;
}
.portal-premium-couple-v361 .couple-clean-nav{
  position:sticky;
  top:12px;
  z-index:35;
  margin:18px 0 22px;
  border-radius:26px;
  background:rgba(255,255,255,.78);
  border:1px solid rgba(255,255,255,.96);
  box-shadow:0 18px 54px rgba(38,28,16,.10);
  backdrop-filter:blur(18px) saturate(150%);
  -webkit-backdrop-filter:blur(18px) saturate(150%);
  overflow:hidden;
}
.portal-premium-couple-v361 .couple-clean-nav summary{
  list-style:none;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:14px 16px;
  color:#151515;
}
.portal-premium-couple-v361 .couple-clean-nav summary::-webkit-details-marker{display:none;}
.portal-premium-couple-v361 .couple-clean-nav-current{display:flex;align-items:center;gap:12px;min-width:0;}
.portal-premium-couple-v361 .couple-clean-nav-current b{display:block;font-size:16px;font-weight:950;line-height:1.15;}
.portal-premium-couple-v361 .couple-clean-nav-current small{display:block;color:#766b5d;font-weight:700;margin-top:2px;}
.portal-premium-couple-v361 .nav-current-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:16px;background:#111;color:#fff;box-shadow:0 12px 30px rgba(0,0,0,.18);}
.portal-premium-couple-v361 .couple-clean-nav-open{white-space:nowrap;border-radius:999px;background:#111;color:#fff;padding:10px 14px;font-weight:900;font-size:13px;box-shadow:0 12px 26px rgba(0,0,0,.16);}
.portal-premium-couple-v361 .couple-clean-nav-lang{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:22px;margin-right:8px;border-radius:999px;background:rgba(255,255,255,.16);font-size:10px;letter-spacing:.08em;font-weight:950;}
.portal-premium-couple-v361 .couple-clean-nav[open] .couple-clean-nav-open{background:#c7a15a;color:#111;}
.portal-premium-couple-v361 .couple-clean-nav[open] .couple-clean-nav-lang{background:rgba(17,24,39,.12);}
.portal-premium-couple-v361 .couple-collapsed-menu{position:relative!important;top:auto!important;display:grid!important;grid-template-columns:repeat(auto-fit,minmax(190px,1fr))!important;gap:10px!important;margin:0!important;padding:10px 14px 14px!important;border:0!important;background:transparent!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;}
.portal-premium-couple-v361 .couple-menu-language{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px;border-radius:20px;background:linear-gradient(180deg,#fff,#fffaf2);border:1px solid rgba(17,24,39,.08);box-shadow:0 10px 26px rgba(35,28,18,.045);}
.portal-premium-couple-v361 .couple-menu-language b{display:block;font-size:15px;font-weight:950;color:#111827;line-height:1.15;}
.portal-premium-couple-v361 .couple-menu-language small{display:block;margin-top:3px;color:#756b5d;font-size:12px;font-weight:750;}
.portal-premium-couple-v361 .couple-menu-language-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end;}
.portal-premium-couple-v361 .couple-menu-language-actions button{border:1px solid rgba(17,24,39,.10);background:#fff;color:#111827;border-radius:999px;min-height:36px;padding:0 13px;font-weight:950;cursor:pointer;box-shadow:0 8px 18px rgba(35,28,18,.045);}
.portal-premium-couple-v361 .couple-menu-language-actions button.active{background:#111827;color:#fff;border-color:#111827;}
.portal-premium-couple-v361 .couple-collapsed-menu .portal-menu-item{min-width:0!important;padding:12px 14px!important;border-radius:18px!important;box-shadow:0 10px 26px rgba(0,0,0,.055)!important;}
.portal-premium-couple-v361 .couple-action-hub{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:18px;align-items:stretch;margin:18px 0;border:1px solid rgba(255,255,255,.96)!important;overflow:hidden}
.portal-premium-couple-v361 .couple-action-main{border-radius:26px;padding:22px;background:linear-gradient(135deg,#111827,#2d261d);color:#fff;display:flex;flex-direction:column;justify-content:center;min-height:150px}
.portal-premium-couple-v361 .couple-action-main h2{margin:8px 0 8px;color:#fff;font-size:clamp(25px,3.2vw,36px);line-height:1;letter-spacing:-.045em}
.portal-premium-couple-v361 .couple-action-main p{margin:0 0 16px;color:rgba(255,255,255,.78);font-weight:700;line-height:1.42}
.portal-premium-couple-v361 .couple-action-main .section-kicker{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.18);color:#fff!important}
.portal-premium-couple-v361 .couple-action-side{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.portal-premium-couple-v361 .couple-action-side div{border-radius:22px;background:#fff;border:1px solid rgba(17,24,39,.08);padding:16px;display:flex;flex-direction:column;justify-content:center;min-height:98px;box-shadow:0 14px 34px rgba(35,28,18,.055)}
.portal-premium-couple-v361 .couple-action-side b{display:block;font-size:28px;line-height:1;letter-spacing:-.055em;color:#111827}
.portal-premium-couple-v361 .couple-action-side span{display:block;margin-top:8px;font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:950;color:#756b5d}
.portal-premium-couple-v361 .couple-action-ready .couple-action-main{background:linear-gradient(135deg,#166534,#111827)}
.portal-premium-couple-v361 .couple-action-blocked .couple-action-main{background:linear-gradient(135deg,#991b1b,#111827)}
.portal-premium-couple-v361 .couple-action-warning .couple-action-main{background:linear-gradient(135deg,#92400e,#111827)}
.portal-premium-couple-v361 .couple-action-complete .couple-action-main{background:linear-gradient(135deg,#111827,#166534)}
.portal-premium-couple-v361 .couple-moment-board{padding:0!important;overflow:hidden;margin:14px 0}
.portal-premium-couple-v361 .couple-moment-board-summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;background:linear-gradient(180deg,#fff,#fffaf2)}
.portal-premium-couple-v361 .couple-moment-board-summary::-webkit-details-marker{display:none}
.portal-premium-couple-v361 .couple-moment-board-summary b{display:block;font-size:17px;line-height:1.15;color:#151515;font-weight:950}
.portal-premium-couple-v361 .couple-moment-board-summary small{display:block;margin-top:4px;color:#766b5d;font-weight:750}
.portal-premium-couple-v361 .couple-moment-board-summary .fake-btn{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;min-height:38px;padding:0 14px}
.portal-premium-couple-v361 .couple-moment-board[open] .couple-moment-board-summary .fake-btn{background:#111827;color:#fff;border-color:#111827}
.portal-premium-couple-v361 .couple-moment-board-body{border-top:1px solid rgba(17,24,39,.06);background:#fff}
.portal-premium-couple-v361 .couple-moment-board .music-card-header{align-items:center}
.portal-premium-couple-v361 .couple-board-search{min-width:min(320px,100%);padding:16px 22px 0}
.portal-premium-couple-v361 .couple-board-search input{width:100%;height:44px;border-radius:999px;border:1px solid rgba(17,24,39,.10);background:#fff;padding:0 16px;font-weight:850;color:#111827;box-shadow:0 10px 24px rgba(35,28,18,.045)}
.portal-premium-couple-v361 .couple-board-toolbar{display:flex;gap:8px;flex-wrap:wrap;padding:14px 22px;border-top:1px solid rgba(17,24,39,.06);background:linear-gradient(180deg,#fff,#fffaf2)}
.portal-premium-couple-v361 .couple-board-toolbar button{border:1px solid rgba(17,24,39,.08);background:#fff;color:#374151;border-radius:999px;min-height:38px;padding:0 13px;font-weight:950;cursor:pointer;box-shadow:0 8px 20px rgba(35,28,18,.04)}
.portal-premium-couple-v361 .couple-board-toolbar button.active,.portal-premium-couple-v361 .couple-board-toolbar button:hover{background:#111827;color:#fff;border-color:#111827}
.portal-premium-couple-v361 .couple-board-sections{display:flex;gap:8px;flex-wrap:wrap;padding:0 22px 14px;background:#fffaf2}
.portal-premium-couple-v361 .couple-board-sections a{display:inline-flex;align-items:center;justify-content:center;min-height:34px;border-radius:999px;padding:0 12px;text-decoration:none;color:#6b4e16;background:#fff;border:1px solid rgba(183,149,91,.22);font-size:12px;font-weight:950}
.portal-premium-couple-v361 .couple-moment-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;padding:0 22px 22px}
.portal-premium-couple-v361 .couple-moment-pill{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;align-items:center;text-decoration:none;color:#111827;border:1px solid rgba(17,24,39,.08);background:#fff;border-radius:18px;padding:12px;min-height:76px;box-shadow:0 10px 24px rgba(35,28,18,.045);transition:transform .16s ease,box-shadow .16s ease}
.portal-premium-couple-v361 .couple-moment-pill:hover{transform:translateY(-1px);box-shadow:0 16px 34px rgba(35,28,18,.08);text-decoration:none}
.portal-premium-couple-v361 .couple-moment-pill span{grid-row:1/3;display:grid;place-items:center;width:34px;height:34px;border-radius:999px;background:#f3f4f6;color:#111827;font-weight:950;font-size:12px}
.portal-premium-couple-v361 .couple-moment-pill b{display:block;font-size:14px;line-height:1.16;overflow-wrap:anywhere}
.portal-premium-couple-v361 .couple-moment-pill small{display:block;margin-top:3px;color:#6b7280;font-size:11.5px;font-weight:850;line-height:1.2}
.portal-premium-couple-v361 .couple-moment-pill.state-done{background:#f0fdf4;border-color:rgba(22,163,74,.22)}.portal-premium-couple-v361 .couple-moment-pill.state-done span{background:#dcfce7;color:#166534}
.portal-premium-couple-v361 .couple-moment-pill.state-nomusic{background:#f8fafc;border-color:rgba(100,116,139,.18)}.portal-premium-couple-v361 .couple-moment-pill.state-nomusic span{background:#e2e8f0;color:#475569}
.portal-premium-couple-v361 .couple-moment-pill.state-pending{background:#fff7ed;border-color:rgba(245,158,11,.24)}.portal-premium-couple-v361 .couple-moment-pill.state-pending span{background:#fef3c7;color:#92400e}
.portal-premium-couple-v361 .couple-moment-pill.state-review{background:#fff1f2;border-color:rgba(225,29,72,.20)}.portal-premium-couple-v361 .couple-moment-pill.state-review span{background:#ffe4e6;color:#9f1239}
.portal-premium-couple-v361 .couple-board-empty{padding:0 22px 22px;margin:0}
.portal-premium-couple-v361 .section-scroll-anchor{display:block;position:relative;top:-98px;visibility:hidden}
.portal-premium-couple-v361 .couple-music-moment{scroll-margin-top:110px}
.portal-premium-couple-v361 .couple-moment-status{display:grid;justify-items:center;gap:7px}
.portal-premium-couple-v361 .couple-moment-status small{font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:950;color:#756b5d}
.portal-premium-couple-v361 .couple-music-moment.state-done{border-left:6px solid #16a34a!important}
.portal-premium-couple-v361 .couple-music-moment.state-nomusic{border-left:6px solid #64748b!important}
.portal-premium-couple-v361 .couple-music-moment.state-pending{border-left:6px solid #f59e0b!important}
.portal-premium-couple-v361 .couple-music-moment.state-review{border-left:6px solid #e11d48!important}
.portal-premium-couple-v361 .couple-cover-manager.is-configured{padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;margin-top:16px!important;}
.portal-premium-couple-v361 .couple-cover-tools{border-radius:24px;background:rgba(255,255,255,.82);border:1px solid rgba(255,255,255,.96);box-shadow:0 16px 48px rgba(43,31,18,.08);overflow:hidden;}
.portal-premium-couple-v361 .couple-cover-tools summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;}
.portal-premium-couple-v361 .couple-cover-tools summary::-webkit-details-marker{display:none;}
.portal-premium-couple-v361 .couple-cover-tools summary b{display:block;font-size:15px;font-weight:950;color:#151515;}
.portal-premium-couple-v361 .couple-cover-tools summary small{display:block;margin-top:2px;color:#766b5d;font-weight:650;}
.portal-premium-couple-v361 .couple-cover-tools .fake-btn{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 14px;white-space:nowrap;}
.portal-premium-couple-v361 .couple-cover-tools-body{padding:0 16px 16px;}
.portal-premium-couple-v361 .cover-upload-form.compact{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;margin:4px 0 14px;}
.portal-premium-couple-v361 .compact-cover-adjust{margin-top:8px;padding-top:14px;border-top:1px solid rgba(0,0,0,.06);}
.portal-premium-couple-v361 .cover-preview.compact{height:clamp(180px,22vw,300px)!important;border-radius:24px!important;margin:10px 0 14px;}
.portal-premium-couple-v361 .remove-cover-form{margin-top:10px;}
@media(max-width:700px){
  .portal-premium-couple-v361 .couple-clean-nav{position:relative;top:auto;border-radius:22px;}
  .portal-premium-couple-v361 .couple-clean-nav summary{align-items:flex-start;}
  .portal-premium-couple-v361 .couple-clean-nav-open{font-size:12px;padding:9px 11px;}
  .portal-premium-couple-v361 .couple-collapsed-menu{grid-template-columns:1fr!important;}
  .portal-premium-couple-v361 .couple-menu-language{display:block;padding:13px;}
  .portal-premium-couple-v361 .couple-menu-language-actions{justify-content:flex-start;margin-top:12px;}
  .portal-premium-couple-v361 .couple-menu-language-actions button{flex:1;min-width:120px;}
  .portal-premium-couple-v361 .couple-action-hub{grid-template-columns:1fr}
  .portal-premium-couple-v361 .couple-action-main{min-height:0;border-radius:22px;padding:20px}
  .portal-premium-couple-v361 .couple-action-side{grid-template-columns:repeat(3,minmax(0,1fr))}
  .portal-premium-couple-v361 .couple-action-side div{min-height:90px;padding:14px}
  .portal-premium-couple-v361 .couple-action-side b{font-size:26px}
  .portal-premium-couple-v361 .couple-moment-board-summary{align-items:flex-start}
  .portal-premium-couple-v361 .couple-moment-board-summary .fake-btn{padding:0 11px;font-size:12px}
  .portal-premium-couple-v361 .couple-moment-board .music-card-header{display:block}
  .portal-premium-couple-v361 .couple-board-search{margin-top:12px}
  .portal-premium-couple-v361 .couple-board-toolbar,.portal-premium-couple-v361 .couple-board-sections{padding-left:14px;padding-right:14px}
  .portal-premium-couple-v361 .couple-moment-grid{grid-template-columns:1fr;padding:0 14px 14px}
  .portal-premium-couple-v361 .cover-upload-form.compact{grid-template-columns:1fr;}
  .portal-premium-couple-v361 .couple-cover-tools summary{align-items:flex-start;}
}

/* =========================================================
   V41.13.14.4 — Reordenación de menús y limpieza navegación admin
   ========================================================= */
.admin-sidebar{
  overflow-y:auto!important;
  overflow-x:hidden!important;
  scrollbar-width:thin;
  scrollbar-color:rgba(255,255,255,.28) transparent;
}
.admin-sidebar::-webkit-scrollbar{width:7px;}
.admin-sidebar::-webkit-scrollbar-track{background:transparent;}
.admin-sidebar::-webkit-scrollbar-thumb{background:rgba(255,255,255,.25);border-radius:99px;}
.admin-menu-section{
  padding:0 0 10px!important;
  margin:0 0 6px!important;
  border-bottom:1px solid rgba(255,255,255,.075)!important;
}
.admin-menu-section:last-of-type{border-bottom:0!important;margin-bottom:6px!important;}
.admin-menu-section .admin-side-label{
  padding:12px 24px 7px!important;
  margin:0!important;
  color:rgba(255,255,255,.48)!important;
  font-size:10px!important;
  letter-spacing:.17em!important;
}
.admin-menu-section .admin-side-nav a{
  min-height:38px!important;
  padding-top:8px!important;
  padding-bottom:8px!important;
  font-size:13px!important;
  border-radius:15px!important;
}
.admin-menu-section .admin-side-nav a span{
  width:20px!important;
  min-width:20px!important;
}
.admin-menu-section .admin-side-nav a em,
.admin-nav-notification-link em,
.admin-nav-security-link em{
  margin-left:auto!important;
  min-width:24px!important;
  height:20px!important;
  padding:0 6px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:99px!important;
  background:#e30613!important;
  color:#fff!important;
  font-size:10px!important;
  font-style:normal!important;
  font-weight:900!important;
}
.admin-side-brand{padding-bottom:8px!important;}
.admin-side-footer{margin-top:12px!important;}
@media(max-width:1180px){
  .admin-menu-section{border-bottom:0!important;margin-bottom:10px!important;}
  .admin-menu-section .admin-side-label{padding:10px 12px 7px!important;color:rgba(255,255,255,.72)!important;}
  .admin-menu-section .admin-side-nav{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;}
}
@media(max-width:760px){
  .admin-menu-section .admin-side-nav{grid-template-columns:1fr 1fr!important;}
}

/* =========================================================
   V41.13.14.5 — Fix definitivo sidebar admin completo visible
   El menú se había vuelto demasiado alto tras reagrupar secciones.
   Se compacta el sidebar, se elimina el footer decorativo en admin
   y se garantiza scroll interno visible sin cortar opciones.
   ========================================================= */
@media (min-width:1181px){
  .admin-app-shell{
    grid-template-columns:282px minmax(0,1fr)!important;
    align-items:start!important;
  }
  .admin-sidebar{
    position:sticky!important;
    top:12px!important;
    margin:12px 0 12px 12px!important;
    height:calc(100vh - 24px)!important;
    max-height:calc(100vh - 24px)!important;
    min-height:0!important;
    padding:10px 8px!important;
    border-radius:26px!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
    scrollbar-gutter:stable!important;
    scrollbar-width:thin!important;
    scrollbar-color:rgba(255,255,255,.45) transparent!important;
  }
  @supports (height:100dvh){
    .admin-sidebar{
      height:calc(100dvh - 24px)!important;
      max-height:calc(100dvh - 24px)!important;
    }
  }
  .admin-sidebar::-webkit-scrollbar{width:9px!important;}
  .admin-sidebar::-webkit-scrollbar-track{background:rgba(255,255,255,.04)!important;border-radius:99px!important;}
  .admin-sidebar::-webkit-scrollbar-thumb{background:rgba(255,255,255,.38)!important;border-radius:99px!important;border:2px solid rgba(0,0,0,.05)!important;}
  .admin-sidebar::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.58)!important;}

  .admin-side-brand{
    padding:8px 16px 6px!important;
    margin:0!important;
  }
  .admin-side-brand img{
    width:142px!important;
    max-height:46px!important;
    object-fit:contain!important;
  }
  .admin-menu-section{
    padding:0 0 5px!important;
    margin:0 0 3px!important;
  }
  .admin-menu-section .admin-side-label,
  .admin-side-label{
    padding:7px 16px 4px!important;
    margin:0!important;
    font-size:8.5px!important;
    line-height:1!important;
    letter-spacing:.16em!important;
    color:rgba(255,255,255,.58)!important;
  }
  .admin-menu-section .admin-side-nav,
  .admin-side-nav{
    padding:0 6px!important;
    gap:1px!important;
  }
  .admin-menu-section .admin-side-nav a,
  .admin-side-nav a{
    min-height:28px!important;
    height:auto!important;
    padding:5px 9px 5px 13px!important;
    border-radius:11px!important;
    font-size:12px!important;
    line-height:1.05!important;
    gap:8px!important;
    white-space:nowrap!important;
  }
  .admin-menu-section .admin-side-nav a span,
  .admin-side-nav a span{
    width:17px!important;
    min-width:17px!important;
    font-size:12px!important;
  }
  .admin-menu-section .admin-side-nav a em,
  .admin-nav-notification-link em,
  .admin-nav-security-link em{
    min-width:20px!important;
    height:17px!important;
    padding:0 5px!important;
    font-size:9px!important;
  }
  .admin-side-footer{
    display:none!important;
  }
}

@media (min-width:1181px) and (max-height:820px){
  .admin-sidebar{
    top:8px!important;
    margin-top:8px!important;
    margin-bottom:8px!important;
    height:calc(100vh - 16px)!important;
    max-height:calc(100vh - 16px)!important;
    padding:8px 7px!important;
    border-radius:24px!important;
  }
  @supports (height:100dvh){
    .admin-sidebar{
      height:calc(100dvh - 16px)!important;
      max-height:calc(100dvh - 16px)!important;
    }
  }
  .admin-side-brand{padding:6px 14px 4px!important;}
  .admin-side-brand img{width:126px!important;max-height:38px!important;}
  .admin-menu-section{padding-bottom:3px!important;margin-bottom:2px!important;}
  .admin-menu-section .admin-side-label,.admin-side-label{padding:5px 14px 3px!important;font-size:8px!important;}
  .admin-menu-section .admin-side-nav a,.admin-side-nav a{min-height:25px!important;padding-top:4px!important;padding-bottom:4px!important;font-size:11.5px!important;border-radius:10px!important;}
}

@media (min-width:1181px) and (max-height:720px){
  .admin-menu-section .admin-side-label,.admin-side-label{display:none!important;}
  .admin-menu-section{border-bottom:0!important;margin-bottom:1px!important;}
  .admin-side-brand img{width:112px!important;max-height:34px!important;}
}

/* =========================================================
   V41.13.15 — Restyling admin C refinado
   Solo se aplica al area de administracion.
   ========================================================= */
body.portal-admin-c-v1{
  --admin-c-bg:#f3f0e9;
  --admin-c-paper:#fffdf8;
  --admin-c-ink:#171615;
  --admin-c-muted:#6f675f;
  --admin-c-line:#ded5ca;
  --admin-c-line-strong:#cfc3b4;
  --admin-c-soft:#ebe4da;
  --admin-c-dark:#171716;
  --admin-c-dark-2:#242220;
  --admin-c-gold:#b7955b;
  --admin-c-danger:#c0392b;
  --admin-c-ok:#0f7a45;
  background:
    radial-gradient(circle at 9% 0%,rgba(255,255,255,.82),transparent 34%),
    linear-gradient(135deg,#f7f3ec 0%,#eee7dd 100%)!important;
  color:var(--admin-c-ink)!important;
}
body.portal-admin-c-v1 .admin-app-shell{
  grid-template-columns:minmax(276px,306px) minmax(0,1fr)!important;
  background:transparent!important;
}
body.portal-admin-c-v1 .admin-app-main{
  padding:16px 20px 54px!important;
  min-width:0!important;
}
body.portal-admin-c-v1 .admin-wrap{
  width:min(1540px,100%)!important;
  padding:0!important;
}
body.portal-admin-c-v1 .admin-sidebar{
  background:linear-gradient(180deg,var(--admin-c-dark),var(--admin-c-dark-2))!important;
  color:#f8f4ec!important;
  border:1px solid rgba(255,255,255,.08)!important;
  box-shadow:0 18px 44px rgba(23,22,21,.18)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  scrollbar-color:rgba(255,255,255,.38) transparent!important;
}
body.portal-admin-c-v1 .admin-sidebar::-webkit-scrollbar{width:8px!important;}
body.portal-admin-c-v1 .admin-sidebar::-webkit-scrollbar-track{background:transparent!important;}
body.portal-admin-c-v1 .admin-sidebar::-webkit-scrollbar-thumb{background:rgba(255,255,255,.26)!important;border-radius:999px!important;}
body.portal-admin-c-v1 .admin-side-brand{
  display:grid!important;
  justify-items:center!important;
  gap:8px!important;
  padding:18px 14px 20px!important;
  margin:0 0 12px!important;
  text-decoration:none!important;
  border:1px solid rgba(255,255,255,.12)!important;
  border-radius:8px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.035))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important;
}
body.portal-admin-c-v1 .admin-side-brand img{
  display:block!important;
  width:min(244px,100%)!important;
  max-height:86px!important;
  height:auto!important;
  object-fit:contain!important;
  filter:drop-shadow(0 10px 20px rgba(0,0,0,.20))!important;
}
body.portal-admin-c-v1 .admin-side-brand strong{
  display:block!important;
  color:#fff!important;
  font-size:17px!important;
  line-height:1!important;
  letter-spacing:.2em!important;
  font-weight:800!important;
}
body.portal-admin-c-v1 .admin-side-brand small{
  display:block!important;
  color:rgba(255,255,255,.58)!important;
  font-size:11px!important;
  line-height:1.2!important;
  font-weight:750!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
}
body.portal-admin-c-v1 .admin-menu-section{
  padding:0 0 7px!important;
  margin:0 0 4px!important;
  border-bottom:1px solid rgba(255,255,255,.075)!important;
}
body.portal-admin-c-v1 .admin-menu-section:last-of-type{border-bottom:0!important;}
body.portal-admin-c-v1 .admin-side-label,
body.portal-admin-c-v1 .admin-menu-section .admin-side-label{
  padding:8px 14px 6px!important;
  color:rgba(255,255,255,.50)!important;
  font-size:10px!important;
  line-height:1!important;
  letter-spacing:.11em!important;
  text-transform:uppercase!important;
  font-weight:750!important;
}
body.portal-admin-c-v1 .admin-side-nav,
body.portal-admin-c-v1 .admin-menu-section .admin-side-nav{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:3px!important;
  padding:0 6px!important;
}
body.portal-admin-c-v1 .admin-side-nav a,
body.portal-admin-c-v1 .admin-menu-section .admin-side-nav a{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:10px!important;
  min-height:34px!important;
  padding:8px 10px!important;
  border-radius:8px!important;
  border:1px solid transparent!important;
  background:transparent!important;
  color:rgba(255,255,255,.76)!important;
  box-shadow:none!important;
  text-decoration:none!important;
  font-size:13px!important;
  line-height:1.1!important;
  letter-spacing:0!important;
  font-weight:600!important;
  white-space:normal!important;
  transform:none!important;
  transition:background .14s ease,color .14s ease,border-color .14s ease!important;
}
body.portal-admin-c-v1 .admin-side-nav a:before{display:none!important;}
body.portal-admin-c-v1 .admin-side-nav a:hover,
body.portal-admin-c-v1 .admin-side-nav a:focus-visible,
body.portal-admin-c-v1 .admin-side-nav a.is-nav-loading{
  background:rgba(255,255,255,.095)!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.08)!important;
  transform:none!important;
}
body.portal-admin-c-v1 .admin-sidebar nav a.active,
body.portal-admin-c-v1 .admin-side-nav a.active,
body.portal-admin-c-v1 .admin-sidebar nav a[aria-current="page"]{
  background:#fffaf0!important;
  color:#171615!important;
  border-color:rgba(255,255,255,.22)!important;
  box-shadow:none!important;
  transform:none!important;
}
body.portal-admin-c-v1 .admin-side-nav a em,
body.portal-admin-c-v1 .admin-nav-notification-link em,
body.portal-admin-c-v1 .admin-nav-security-link em{
  justify-self:end!important;
  min-width:22px!important;
  height:19px!important;
  padding:0 6px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:999px!important;
  background:var(--admin-c-danger)!important;
  color:#fff!important;
  font-size:10px!important;
  font-style:normal!important;
  font-weight:800!important;
}
body.portal-admin-c-v1 .admin-side-footer{
  display:block!important;
  margin:12px 7px 4px!important;
  padding:12px!important;
  border-radius:8px!important;
  background:rgba(255,255,255,.06)!important;
  border:1px solid rgba(255,255,255,.10)!important;
  color:rgba(255,255,255,.62)!important;
  box-shadow:none!important;
}
body.portal-admin-c-v1 .admin-side-footer b{display:block!important;color:#fff!important;font-size:12px!important;font-weight:700!important;}
body.portal-admin-c-v1 .admin-side-footer span{display:block!important;margin:3px 0!important;color:#d7bd83!important;font-size:12px!important;font-weight:650!important;}
body.portal-admin-c-v1 .admin-side-footer small{display:block!important;color:rgba(255,255,255,.48)!important;font-size:10px!important;line-height:1.25!important;}

body.portal-admin-c-v1 .admin-topbar{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  height:auto!important;
  min-height:70px!important;
  margin:0 0 16px!important;
  padding:12px 14px!important;
  border-radius:8px!important;
  background:rgba(255,253,248,.94)!important;
  border:1px solid rgba(222,213,202,.92)!important;
  box-shadow:0 12px 30px rgba(58,46,30,.075)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
body.portal-admin-c-v1 .admin-mobile-logo{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:50px!important;
  padding:6px 14px!important;
  border-radius:8px!important;
  background:#fff!important;
  border:1px solid rgba(23,22,21,.08)!important;
  box-shadow:0 8px 22px rgba(58,46,30,.08)!important;
}
body.portal-admin-c-v1 .admin-mobile-logo img{
  height:42px!important;
  width:auto!important;
  max-width:260px!important;
  object-fit:contain!important;
}
body.portal-admin-c-v1 .admin-topbar-actions{
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:flex-end!important;
  align-items:center!important;
  gap:8px!important;
}
body.portal-admin-c-v1 .admin-topbar .btn,
body.portal-admin-c-v1 .admin-topbar .btn.light,
body.portal-admin-c-v1 .admin-security-bell,
body.portal-admin-c-v1 .admin-notification-bell{
  position:relative!important;
  width:auto!important;
  height:auto!important;
  min-height:38px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  padding:0 12px!important;
  border-radius:8px!important;
  background:#fff!important;
  color:#171615!important;
  border:1px solid rgba(23,22,21,.09)!important;
  box-shadow:none!important;
  text-decoration:none!important;
  font-size:12px!important;
  font-weight:750!important;
  line-height:1!important;
}
body.portal-admin-c-v1 .admin-security-bell.is-critical{border-color:rgba(192,57,43,.28)!important;background:#fff8f6!important;}
body.portal-admin-c-v1 .admin-security-bell.is-warning{border-color:rgba(183,149,91,.36)!important;background:#fffaf0!important;}
body.portal-admin-c-v1 .admin-security-bell .bell-icon,
body.portal-admin-c-v1 .admin-notification-bell .bell-icon{
  width:auto!important;
  height:auto!important;
  display:inline!important;
  font-size:12px!important;
  line-height:1!important;
  color:inherit!important;
}
body.portal-admin-c-v1 .admin-security-bell .notification-badge,
body.portal-admin-c-v1 .admin-notification-bell .notification-badge{
  position:static!important;
  min-width:18px!important;
  height:18px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0 6px!important;
  border-radius:999px!important;
  background:var(--admin-c-danger)!important;
  color:#fff!important;
  font-size:10px!important;
  font-weight:850!important;
}
body.portal-admin-c-v1 .admin-security-bell .notification-badge[hidden],
body.portal-admin-c-v1 .admin-notification-bell .notification-badge[hidden]{display:none!important;}

body.portal-admin-c-v1 .admin-wrap>.global-back{margin:0 0 12px!important;}
body.portal-admin-c-v1 .admin-wrap .back-btn,
body.portal-admin-c-v1 .global-back .back-btn{
  min-height:36px!important;
  border-radius:8px!important;
  background:rgba(255,253,248,.86)!important;
  border:1px solid rgba(23,22,21,.08)!important;
  color:#2a2927!important;
  box-shadow:none!important;
  font-weight:750!important;
}

body.portal-admin-c-v1 .admin-dashboard-hero,
body.portal-admin-c-v1 .admin-wrap .premium-hero,
body.portal-admin-c-v1 .admin-wrap .dj-hero,
body.portal-admin-c-v1 .admin-wrap .page-hero,
body.portal-admin-c-v1 .admin-dashboard-hero.section-admin-hero,
body.portal-admin-c-v1 .page-hero.analytics-hero,
body.portal-admin-c-v1 .notifications-hero,
body.portal-admin-c-v1 .operational-hero,
body.portal-admin-c-v1 .security-hero,
body.portal-admin-c-v1 .crm-tasks-hero{
  position:relative!important;
  overflow:hidden!important;
  border-radius:8px!important;
  padding:clamp(24px,3.4vw,38px)!important;
  background:
    linear-gradient(135deg,rgba(255,253,248,.98) 0%,rgba(255,249,239,.94) 56%,rgba(235,228,218,.90) 100%)!important;
  color:#111!important;
  border:1px solid var(--admin-c-line)!important;
  box-shadow:0 16px 38px rgba(58,46,30,.075)!important;
  text-shadow:none!important;
}
body.portal-admin-c-v1 .admin-dashboard-hero:before,
body.portal-admin-c-v1 .admin-wrap .premium-hero:before,
body.portal-admin-c-v1 .admin-wrap .dj-hero:before,
body.portal-admin-c-v1 .admin-wrap .page-hero:before,
body.portal-admin-c-v1 .admin-dashboard-hero.section-admin-hero:before,
body.portal-admin-c-v1 .page-hero.analytics-hero:before,
body.portal-admin-c-v1 .notifications-hero:before,
body.portal-admin-c-v1 .operational-hero:before,
body.portal-admin-c-v1 .security-hero:before,
body.portal-admin-c-v1 .crm-tasks-hero:before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  background:linear-gradient(90deg,rgba(255,255,255,.72),rgba(255,255,255,.08))!important;
  z-index:0!important;
}
body.portal-admin-c-v1 .admin-dashboard-hero:after,
body.portal-admin-c-v1 .admin-wrap .premium-hero:after,
body.portal-admin-c-v1 .admin-wrap .dj-hero:after,
body.portal-admin-c-v1 .admin-wrap .page-hero:after,
body.portal-admin-c-v1 .admin-dashboard-hero.section-admin-hero:after,
body.portal-admin-c-v1 .page-hero.analytics-hero:after,
body.portal-admin-c-v1 .notifications-hero:after,
body.portal-admin-c-v1 .operational-hero:after,
body.portal-admin-c-v1 .security-hero:after,
body.portal-admin-c-v1 .crm-tasks-hero:after{display:none!important;}
body.portal-admin-c-v1 .admin-dashboard-hero>*,
body.portal-admin-c-v1 .admin-wrap .premium-hero>*,
body.portal-admin-c-v1 .admin-wrap .dj-hero>*,
body.portal-admin-c-v1 .admin-wrap .page-hero>*,
body.portal-admin-c-v1 .admin-dashboard-hero.section-admin-hero>*,
body.portal-admin-c-v1 .page-hero.analytics-hero>*,
body.portal-admin-c-v1 .notifications-hero>*,
body.portal-admin-c-v1 .operational-hero>*,
body.portal-admin-c-v1 .security-hero>*,
body.portal-admin-c-v1 .crm-tasks-hero>*{position:relative!important;z-index:1!important;}
body.portal-admin-c-v1 .admin-dashboard-hero h1,
body.portal-admin-c-v1 .admin-wrap .premium-hero h1,
body.portal-admin-c-v1 .admin-wrap .dj-hero h1,
body.portal-admin-c-v1 .admin-wrap .dj-hero h2,
body.portal-admin-c-v1 .admin-wrap .page-hero h1,
body.portal-admin-c-v1 .admin-dashboard-hero.section-admin-hero h1,
body.portal-admin-c-v1 .page-hero.analytics-hero h1,
body.portal-admin-c-v1 .notifications-hero h1,
body.portal-admin-c-v1 .operational-hero h1,
body.portal-admin-c-v1 .security-hero h1,
body.portal-admin-c-v1 .crm-tasks-hero h1{
  color:#111!important;
  max-width:980px!important;
  text-shadow:none!important;
  font-weight:850!important;
  line-height:1.02!important;
  letter-spacing:-.035em!important;
}
body.portal-admin-c-v1 .admin-dashboard-hero p,
body.portal-admin-c-v1 .admin-dashboard-hero .muted,
body.portal-admin-c-v1 .admin-wrap .premium-hero p,
body.portal-admin-c-v1 .admin-wrap .premium-hero .premium-subtitle,
body.portal-admin-c-v1 .admin-wrap .premium-hero .muted,
body.portal-admin-c-v1 .admin-wrap .dj-hero p,
body.portal-admin-c-v1 .admin-wrap .dj-hero .muted,
body.portal-admin-c-v1 .admin-wrap .page-hero p,
body.portal-admin-c-v1 .admin-dashboard-hero.section-admin-hero p,
body.portal-admin-c-v1 .admin-dashboard-hero.section-admin-hero .muted,
body.portal-admin-c-v1 .page-hero.analytics-hero p,
body.portal-admin-c-v1 .notifications-hero p,
body.portal-admin-c-v1 .notifications-hero .muted,
body.portal-admin-c-v1 .operational-hero p,
body.portal-admin-c-v1 .operational-hero .muted,
body.portal-admin-c-v1 .security-hero p,
body.portal-admin-c-v1 .security-hero .muted,
body.portal-admin-c-v1 .crm-tasks-hero p,
body.portal-admin-c-v1 .crm-tasks-hero .muted{
  color:var(--admin-c-muted)!important;
  text-shadow:none!important;
  font-weight:550!important;
  line-height:1.45!important;
}
body.portal-admin-c-v1 .admin-wrap .section-kicker,
body.portal-admin-c-v1 .admin-dashboard-hero.section-admin-hero .section-kicker,
body.portal-admin-c-v1 .notifications-hero .section-kicker,
body.portal-admin-c-v1 .operational-hero .section-kicker,
body.portal-admin-c-v1 .security-hero .section-kicker,
body.portal-admin-c-v1 .crm-tasks-hero .section-kicker,
body.portal-admin-c-v1 .page-hero.analytics-hero .eyebrow{
  display:inline-flex!important;
  align-items:center!important;
  width:max-content!important;
  max-width:100%!important;
  border-radius:999px!important;
  padding:6px 10px!important;
  background:#fff!important;
  border:1px solid rgba(183,149,91,.30)!important;
  color:#7c6235!important;
  box-shadow:none!important;
  font-size:11px!important;
  font-weight:800!important;
  text-transform:none!important;
  letter-spacing:.02em!important;
}
body.portal-admin-c-v1 .admin-wrap .meta-chip,
body.portal-admin-c-v1 .admin-dashboard-hero.section-admin-hero .meta-chip,
body.portal-admin-c-v1 .notifications-hero .meta-chip,
body.portal-admin-c-v1 .operational-hero .meta-chip,
body.portal-admin-c-v1 .security-hero .meta-chip,
body.portal-admin-c-v1 .crm-tasks-hero .meta-chip{
  min-height:34px!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#171615!important;
  border:1px solid rgba(23,22,21,.08)!important;
  box-shadow:none!important;
}

body.portal-admin-c-v1 .admin-wrap .card,
body.portal-admin-c-v1 .admin-wrap .file-box,
body.portal-admin-c-v1 .admin-wrap .quick-card,
body.portal-admin-c-v1 .admin-wrap .kpi-card,
body.portal-admin-c-v1 .admin-wrap .data-tile,
body.portal-admin-c-v1 .admin-wrap .crm-mini-card,
body.portal-admin-c-v1 .admin-wrap .side-card,
body.portal-admin-c-v1 .admin-wrap .portal-menu-item,
body.portal-admin-c-v1 .admin-wrap .calendar-control-card,
body.portal-admin-c-v1 .admin-wrap .calendar-side-panel,
body.portal-admin-c-v1 .admin-wrap .security-summary-card,
body.portal-admin-c-v1 .admin-wrap .security-check-card,
body.portal-admin-c-v1 .admin-wrap .security-activity-card,
body.portal-admin-c-v1 .admin-wrap .security-side-panel,
body.portal-admin-c-v1 .admin-wrap .analytics-card,
body.portal-admin-c-v1 .admin-wrap .donut-card,
body.portal-admin-c-v1 .admin-wrap .admin-event-card,
body.portal-admin-c-v1 .admin-wrap .operational-card,
body.portal-admin-c-v1 .admin-wrap .operational-event-row,
body.portal-admin-c-v1 .admin-wrap .timeline-event-card,
body.portal-admin-c-v1 .admin-wrap .call-card,
body.portal-admin-c-v1 .admin-wrap .message-card,
body.portal-admin-c-v1 .admin-wrap .notification-card{
  border-radius:8px!important;
  background:rgba(255,253,248,.96)!important;
  border:1px solid rgba(222,213,202,.94)!important;
  box-shadow:0 10px 26px rgba(58,46,30,.055)!important;
}
body.portal-admin-c-v1 .admin-wrap .kpi-card:after{display:none!important;}
body.portal-admin-c-v1 .admin-wrap .quick-card .icon{
  display:none!important;
}
body.portal-admin-c-v1 .admin-wrap .kpi-card,
body.portal-admin-c-v1 .admin-wrap .quick-card,
body.portal-admin-c-v1 .admin-wrap .data-tile{padding:16px!important;}
body.portal-admin-c-v1 .admin-wrap .kpi-card span,
body.portal-admin-c-v1 .admin-wrap .quick-card small,
body.portal-admin-c-v1 .admin-wrap .data-tile span,
body.portal-admin-c-v1 .admin-wrap .muted{
  color:var(--admin-c-muted)!important;
}
body.portal-admin-c-v1 .admin-wrap .kpi-card b{
  font-size:clamp(28px,3vw,40px)!important;
  letter-spacing:-.04em!important;
}
body.portal-admin-c-v1 .admin-wrap .kpi-grid,
body.portal-admin-c-v1 .admin-wrap .quick-grid,
body.portal-admin-c-v1 .admin-wrap .data-strip{gap:12px!important;}

body.portal-admin-c-v1 .admin-wrap .btn,
body.portal-admin-c-v1 .admin-wrap button,
body.portal-admin-c-v1 .admin-wrap input[type="submit"],
body.portal-admin-c-v1 .admin-wrap .btn.light{
  border-radius:8px!important;
  letter-spacing:0!important;
}
body.portal-admin-c-v1 .admin-wrap .btn:not(.light),
body.portal-admin-c-v1 .admin-wrap button:not(.light):not(.link-like),
body.portal-admin-c-v1 .admin-wrap input[type="submit"]{
  background:#171615!important;
  color:#fff!important;
  border-color:#171615!important;
}
body.portal-admin-c-v1 .admin-wrap .btn.light,
body.portal-admin-c-v1 .admin-wrap .btn.ghost{
  background:#fff!important;
  color:#171615!important;
  border:1px solid rgba(23,22,21,.10)!important;
  box-shadow:none!important;
}
body.portal-admin-c-v1 .admin-wrap .btn.danger,
body.portal-admin-c-v1 .admin-wrap button.danger,
body.portal-admin-c-v1 .admin-wrap .event-danger-zone .btn,
body.portal-admin-c-v1 .admin-wrap .delete-final-form .btn{
  background:var(--admin-c-danger)!important;
  color:#fff!important;
  border-color:var(--admin-c-danger)!important;
}
body.portal-admin-c-v1 .admin-wrap .btn.danger:hover,
body.portal-admin-c-v1 .admin-wrap button.danger:hover,
body.portal-admin-c-v1 .admin-wrap .event-danger-zone .btn:hover,
body.portal-admin-c-v1 .admin-wrap .delete-final-form .btn:hover{
  background:#a83227!important;
  border-color:#a83227!important;
}
body.portal-admin-c-v1 .admin-wrap input,
body.portal-admin-c-v1 .admin-wrap select,
body.portal-admin-c-v1 .admin-wrap textarea{
  border-radius:8px!important;
  border-color:rgba(23,22,21,.12)!important;
  background:#fff!important;
  box-shadow:none!important;
}
body.portal-admin-c-v1 .admin-wrap .table,
body.portal-admin-c-v1 .admin-wrap table{
  border-collapse:separate!important;
  border-spacing:0!important;
}
body.portal-admin-c-v1 .admin-wrap .table th,
body.portal-admin-c-v1 .admin-wrap table th{
  background:#ece5dc!important;
  color:#4a433c!important;
  font-size:11px!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
}
body.portal-admin-c-v1 .admin-wrap .table td,
body.portal-admin-c-v1 .admin-wrap table td{
  border-color:rgba(222,213,202,.72)!important;
}

body.portal-admin-c-v1 .admin-wrap .portal-menu,
body.portal-admin-c-v1 .admin-wrap .bodas-tabs,
body.portal-admin-c-v1 .admin-wrap .doc-tabs,
body.portal-admin-c-v1 .admin-wrap .client-tabs,
body.portal-admin-c-v1 .admin-wrap .notification-tabs,
body.portal-admin-c-v1 .admin-wrap .operational-range-tabs,
body.portal-admin-c-v1 .admin-wrap .tab-row,
body.portal-admin-c-v1 .admin-wrap .admin-filter-tabs,
body.portal-admin-c-v1 .admin-wrap .tabs{
  position:relative!important;
  top:auto!important;
  z-index:2!important;
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(170px,1fr))!important;
  gap:8px!important;
  margin:12px 0 18px!important;
  padding:8px!important;
  border-radius:8px!important;
  background:rgba(255,253,248,.86)!important;
  border:1px solid rgba(222,213,202,.94)!important;
  box-shadow:0 10px 24px rgba(58,46,30,.045)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
body.portal-admin-c-v1 .admin-wrap .portal-menu-item,
body.portal-admin-c-v1 .admin-wrap .bodas-tabs .portal-menu-item,
body.portal-admin-c-v1 .admin-wrap .doc-tabs a,
body.portal-admin-c-v1 .admin-wrap .client-tabs a,
body.portal-admin-c-v1 .admin-wrap .notification-tabs a,
body.portal-admin-c-v1 .admin-wrap .operational-range-tabs a,
body.portal-admin-c-v1 .admin-wrap .tab-row a,
body.portal-admin-c-v1 .admin-wrap .admin-filter-tabs a,
body.portal-admin-c-v1 .admin-wrap .tabs a,
body.portal-admin-c-v1 .admin-wrap .tab{
  display:grid!important;
  align-content:center!important;
  gap:3px!important;
  min-width:0!important;
  min-height:54px!important;
  padding:12px 14px!important;
  border-radius:8px!important;
  background:#fff!important;
  border:1px solid rgba(23,22,21,.075)!important;
  box-shadow:none!important;
  color:#171615!important;
  text-decoration:none!important;
  transform:none!important;
  font-weight:750!important;
  line-height:1.15!important;
}
body.portal-admin-c-v1 .admin-wrap .portal-menu-item span,
body.portal-admin-c-v1 .admin-wrap .notification-tabs a span{
  font-size:13px!important;
  font-weight:850!important;
  letter-spacing:0!important;
}
body.portal-admin-c-v1 .admin-wrap .portal-menu-item small{
  color:#786f65!important;
  font-size:11px!important;
}
body.portal-admin-c-v1 .admin-wrap .portal-menu-item.active,
body.portal-admin-c-v1 .admin-wrap .portal-menu-item:hover,
body.portal-admin-c-v1 .admin-wrap .doc-tabs a.active,
body.portal-admin-c-v1 .admin-wrap .client-tabs a.active,
body.portal-admin-c-v1 .admin-wrap .notification-tabs a.active,
body.portal-admin-c-v1 .admin-wrap .operational-range-tabs a.active,
body.portal-admin-c-v1 .admin-wrap .tab-row a.active,
body.portal-admin-c-v1 .admin-wrap .admin-filter-tabs a.active,
body.portal-admin-c-v1 .admin-wrap .tabs a.active,
body.portal-admin-c-v1 .admin-wrap .tab.active{
  background:#171615!important;
  border-color:#171615!important;
  color:#fff!important;
  box-shadow:0 10px 22px rgba(23,22,21,.14)!important;
}
body.portal-admin-c-v1 .admin-wrap .portal-menu-item.active small,
body.portal-admin-c-v1 .admin-wrap .portal-menu-item:hover small,
body.portal-admin-c-v1 .admin-wrap .notification-tabs a.active b,
body.portal-admin-c-v1 .admin-wrap .notification-tabs a.active span{
  color:rgba(255,255,255,.78)!important;
}
body.portal-admin-c-v1 .admin-wrap .validation-issue > span,
body.portal-admin-c-v1 .admin-wrap .notification-card-icon,
body.portal-admin-c-v1 .admin-wrap .op-alert-icon,
body.portal-admin-c-v1 .admin-wrap .security-check-icon{
  display:none!important;
}

body.portal-admin-c-v1 .admin-wrap .admin-filter-tabs,
body.portal-admin-c-v1 .admin-wrap .tabs,
body.portal-admin-c-v1 .admin-wrap .segmented{
  gap:8px!important;
}
body.portal-admin-c-v1 .admin-wrap .admin-filter-tabs a,
body.portal-admin-c-v1 .admin-wrap .tabs a,
body.portal-admin-c-v1 .admin-wrap .tab,
body.portal-admin-c-v1 .admin-wrap .filter-chip,
body.portal-admin-c-v1 .admin-wrap .status-pill,
body.portal-admin-c-v1 .admin-wrap .pill{
  border-radius:999px!important;
  box-shadow:none!important;
}
body.portal-admin-c-v1 .admin-wrap .status-ok,
body.portal-admin-c-v1 .admin-wrap .pill-ok{background:#e8f6ee!important;color:#0f7a45!important;}
body.portal-admin-c-v1 .admin-wrap .status-warning,
body.portal-admin-c-v1 .admin-wrap .pill-warn{background:#fff4d8!important;color:#8d651b!important;}
body.portal-admin-c-v1 .admin-wrap .status-danger,
body.portal-admin-c-v1 .admin-wrap .pill-bad{background:#fdebea!important;color:#a43428!important;}

@media (min-width:1181px){
  body.portal-admin-c-v1 .admin-sidebar{
    position:sticky!important;
    top:14px!important;
    margin:14px 0 14px 14px!important;
    height:calc(100vh - 28px)!important;
    max-height:calc(100vh - 28px)!important;
    padding:12px 8px!important;
    border-radius:8px!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
  }
  @supports (height:100dvh){
    body.portal-admin-c-v1 .admin-sidebar{
      height:calc(100dvh - 28px)!important;
      max-height:calc(100dvh - 28px)!important;
    }
  }
}
@media (max-width:1180px){
  body.portal-admin-c-v1 .admin-app-shell{display:block!important;}
  body.portal-admin-c-v1 .admin-app-main{padding:12px 12px 44px!important;}
  body.portal-admin-c-v1 .admin-sidebar{
    position:relative!important;
    top:auto!important;
    margin:0!important;
    height:auto!important;
    max-height:none!important;
    border-radius:0 0 8px 8px!important;
    padding:12px!important;
  }
  body.portal-admin-c-v1 .admin-side-brand{padding:14px 10px 16px!important;}
  body.portal-admin-c-v1 .admin-side-brand img{width:min(220px,100%)!important;max-height:76px!important;}
  body.portal-admin-c-v1 .admin-side-nav,
  body.portal-admin-c-v1 .admin-menu-section .admin-side-nav{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:7px!important;
  }
  body.portal-admin-c-v1 .admin-side-nav a,
  body.portal-admin-c-v1 .admin-menu-section .admin-side-nav a{
    min-height:42px!important;
    white-space:normal!important;
  }
  body.portal-admin-c-v1 .admin-side-footer{display:none!important;}
}
@media (max-width:760px){
  body.portal-admin-c-v1 .admin-app-main{padding:10px 10px 38px!important;}
  body.portal-admin-c-v1 .admin-topbar{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;}
  body.portal-admin-c-v1 .admin-mobile-logo{justify-self:start!important;}
  body.portal-admin-c-v1 .admin-topbar-actions{justify-content:flex-start!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%!important;}
  body.portal-admin-c-v1 .admin-topbar-actions>*{width:100%!important;}
  body.portal-admin-c-v1 .admin-side-nav,
  body.portal-admin-c-v1 .admin-menu-section .admin-side-nav{grid-template-columns:1fr 1fr!important;}
  body.portal-admin-c-v1 .admin-dashboard-hero,
  body.portal-admin-c-v1 .admin-wrap .premium-hero,
  body.portal-admin-c-v1 .admin-wrap .dj-hero,
  body.portal-admin-c-v1 .admin-wrap .page-hero,
  body.portal-admin-c-v1 .admin-dashboard-hero.section-admin-hero{padding:22px!important;}
  body.portal-admin-c-v1 .admin-wrap .kpi-grid,
  body.portal-admin-c-v1 .admin-wrap .quick-grid,
  body.portal-admin-c-v1 .admin-wrap .data-strip{grid-template-columns:1fr!important;}
}
@media (max-width:520px){
  body.portal-admin-c-v1 .admin-side-nav,
  body.portal-admin-c-v1 .admin-menu-section .admin-side-nav,
  body.portal-admin-c-v1 .admin-topbar-actions{grid-template-columns:1fr!important;}
}

/* V41.18.2 - Corrección de legibilidad en ficha admin: avisos sin columna fantasma. */
body.portal-admin-c-v1 .admin-wrap .validation-issue{
  grid-template-columns:minmax(0,1fr)!important;
}
body.portal-admin-c-v1 .admin-wrap .validation-issue > div{
  min-width:0!important;
}
body.portal-admin-c-v1 .admin-wrap .final-summary-body{
  gap:14px!important;
}
body.portal-admin-c-v1 .admin-wrap .final-kpi-grid{
  grid-template-columns:repeat(6,minmax(112px,1fr))!important;
}
body.portal-admin-c-v1 .admin-wrap .final-kpi-grid .quick-card{
  min-height:auto!important;
  padding:15px 16px!important;
}
body.portal-admin-c-v1 .admin-wrap .final-alert-grid{
  grid-template-columns:1fr!important;
  gap:8px!important;
}
body.portal-admin-c-v1 .admin-wrap .final-alert-grid .validation-issue{
  min-height:0!important;
  padding:12px 14px!important;
  border-radius:16px!important;
  box-shadow:none!important;
}
body.portal-admin-c-v1 .admin-wrap .final-alert-grid .validation-issue b{
  font-size:15px!important;
  line-height:1.18!important;
}
body.portal-admin-c-v1 .admin-wrap .final-alert-grid .validation-issue small{
  font-size:13px!important;
  line-height:1.38!important;
  overflow-wrap:anywhere!important;
}
body.portal-admin-c-v1 .admin-wrap .final-check-grid{
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr))!important;
}
body.portal-admin-c-v1 .admin-wrap .final-check-grid .op-check{
  min-height:auto!important;
}
body.portal-admin-c-v1 .admin-wrap .final-music-moment{
  scroll-margin-top:96px!important;
}
body.portal-admin-c-v1 .admin-wrap .final-music-moment:target{
  outline:3px solid rgba(17,17,17,.22)!important;
  box-shadow:0 18px 42px rgba(17,17,17,.14)!important;
}
body.portal-admin-c-v1 .admin-wrap .final-music-actions{
  display:flex!important;
  gap:8px!important;
  flex-wrap:wrap!important;
  margin-top:12px!important;
}
body.portal-admin-c-v1 .admin-wrap .final-music-actions .btn{
  min-height:34px!important;
  padding:9px 12px!important;
}
@media (max-width:1180px){
  body.portal-admin-c-v1 .admin-wrap .final-kpi-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}
@media (max-width:760px){
  body.portal-admin-c-v1 .admin-wrap .final-kpi-grid{
    grid-template-columns:1fr!important;
  }
}

/* V41.18.4 - Admin: legibilidad de alertas, archivos y lateral siempre visible. */
@media (min-width:1181px){
  body.portal-admin-c-v1 .admin-app-shell{
    grid-template-columns:minmax(268px,292px) minmax(0,1fr)!important;
    align-items:start!important;
  }
  body.portal-admin-c-v1 .admin-sidebar{
    position:sticky!important;
    top:10px!important;
    height:calc(100vh - 20px)!important;
    max-height:calc(100vh - 20px)!important;
    overflow:visible!important;
    gap:2px!important;
    padding:8px 7px!important;
    margin:10px 0 10px 10px!important;
    border-radius:8px!important;
  }
  @supports (height:100dvh){
    body.portal-admin-c-v1 .admin-sidebar{
      height:calc(100dvh - 20px)!important;
      max-height:calc(100dvh - 20px)!important;
    }
  }
  body.portal-admin-c-v1 .admin-side-brand{
    gap:4px!important;
    padding:9px 8px!important;
    margin:0 0 3px!important;
  }
  body.portal-admin-c-v1 .admin-side-brand img{
    width:min(210px,100%)!important;
    max-height:50px!important;
  }
  body.portal-admin-c-v1 .admin-side-brand small{
    font-size:8px!important;
    line-height:1!important;
    letter-spacing:.12em!important;
  }
  body.portal-admin-c-v1 .admin-menu-section{
    padding:0 0 2px!important;
    margin:0!important;
  }
  body.portal-admin-c-v1 .admin-side-label,
  body.portal-admin-c-v1 .admin-menu-section .admin-side-label{
    padding:4px 9px 3px!important;
    font-size:8px!important;
    line-height:1!important;
    letter-spacing:.09em!important;
  }
  body.portal-admin-c-v1 .admin-side-nav,
  body.portal-admin-c-v1 .admin-menu-section .admin-side-nav{
    gap:1px!important;
    padding:0 4px!important;
  }
  body.portal-admin-c-v1 .admin-side-nav a,
  body.portal-admin-c-v1 .admin-menu-section .admin-side-nav a{
    min-height:20px!important;
    padding:3px 7px!important;
    border-radius:6px!important;
    font-size:11px!important;
    line-height:1.05!important;
    gap:6px!important;
  }
  body.portal-admin-c-v1 .admin-side-nav a em,
  body.portal-admin-c-v1 .admin-nav-notification-link em,
  body.portal-admin-c-v1 .admin-nav-security-link em{
    min-width:18px!important;
    height:16px!important;
    padding:0 5px!important;
    font-size:9px!important;
  }
  body.portal-admin-c-v1 .admin-side-footer{
    margin:3px 5px 0!important;
    padding:6px 8px!important;
  }
  body.portal-admin-c-v1 .admin-side-footer b,
  body.portal-admin-c-v1 .admin-side-footer span{
    font-size:10px!important;
    line-height:1.1!important;
  }
  body.portal-admin-c-v1 .admin-side-footer small{display:none!important;}
}
@media (min-width:1181px) and (max-height:720px){
  body.portal-admin-c-v1 .admin-sidebar{
    top:6px!important;
    height:calc(100vh - 12px)!important;
    max-height:calc(100vh - 12px)!important;
    padding:6px!important;
    margin:6px 0 6px 6px!important;
  }
  body.portal-admin-c-v1 .admin-side-brand{
    padding:7px 8px!important;
  }
  body.portal-admin-c-v1 .admin-side-brand img{
    max-height:42px!important;
    width:min(190px,100%)!important;
  }
  body.portal-admin-c-v1 .admin-side-nav a,
  body.portal-admin-c-v1 .admin-menu-section .admin-side-nav a{
    min-height:18px!important;
    padding:2px 6px!important;
    font-size:10.5px!important;
  }
  body.portal-admin-c-v1 .admin-side-label,
  body.portal-admin-c-v1 .admin-menu-section .admin-side-label{
    padding:3px 8px 2px!important;
    font-size:7.5px!important;
  }
  body.portal-admin-c-v1 .admin-side-footer{display:none!important;}
}

body.portal-admin-c-v1 .admin-wrap .op-alert{
  grid-template-columns:minmax(0,1fr)!important;
  min-width:0!important;
  padding:13px 15px!important;
  border-radius:8px!important;
  white-space:normal!important;
}
body.portal-admin-c-v1 .admin-wrap .op-alert > span,
body.portal-admin-c-v1 .admin-wrap .op-alert b,
body.portal-admin-c-v1 .admin-wrap .op-alert small{
  min-width:0!important;
  max-width:100%!important;
  overflow-wrap:break-word!important;
  word-break:normal!important;
}
body.portal-admin-c-v1 .admin-wrap .op-alert b{
  font-size:14px!important;
  line-height:1.2!important;
}
body.portal-admin-c-v1 .admin-wrap .op-alert small{
  font-size:12.5px!important;
  line-height:1.35!important;
}
body.portal-admin-c-v1 .admin-wrap .notification-card{
  grid-template-columns:minmax(0,1fr)!important;
  min-width:0!important;
  border-radius:8px!important;
}
body.portal-admin-c-v1 .admin-wrap .notification-card-main,
body.portal-admin-c-v1 .admin-wrap .notification-card-head,
body.portal-admin-c-v1 .admin-wrap .notification-card p{
  min-width:0!important;
  max-width:100%!important;
  overflow-wrap:break-word!important;
  word-break:normal!important;
}
body.portal-admin-c-v1 .admin-wrap .notification-meta-grid{
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr))!important;
}
body.portal-admin-c-v1 .admin-wrap .notification-actions .btn,
body.portal-admin-c-v1 .admin-wrap .notification-actions form,
body.portal-admin-c-v1 .admin-wrap .notification-actions form button{
  min-width:0!important;
}
body.portal-admin-c-v1 .admin-wrap .security-check-card{
  grid-template-columns:minmax(0,1fr) auto!important;
  min-width:0!important;
  border-radius:8px!important;
}
body.portal-admin-c-v1 .admin-wrap .security-check-card > div,
body.portal-admin-c-v1 .admin-wrap .security-activity-main{
  min-width:0!important;
  overflow-wrap:break-word!important;
  word-break:normal!important;
}
body.portal-admin-c-v1 .admin-wrap .security-activity-card{
  grid-template-columns:minmax(0,1fr) auto!important;
  border-radius:8px!important;
}
body.portal-admin-c-v1 .admin-wrap .security-layout,
body.portal-admin-c-v1 .admin-wrap .notification-center-layout,
body.portal-admin-c-v1 .admin-wrap .operational-two-col{
  min-width:0!important;
}
@media (max-width:1280px){
  body.portal-admin-c-v1 .admin-wrap .notification-center-layout,
  body.portal-admin-c-v1 .admin-wrap .security-layout,
  body.portal-admin-c-v1 .admin-wrap .operational-two-col{
    grid-template-columns:1fr!important;
  }
  body.portal-admin-c-v1 .admin-wrap .notification-side,
  body.portal-admin-c-v1 .admin-wrap .security-side-panel{
    position:static!important;
  }
}
@media (max-width:720px){
  body.portal-admin-c-v1 .admin-wrap .security-check-card,
  body.portal-admin-c-v1 .admin-wrap .security-activity-card{
    grid-template-columns:1fr!important;
  }
}

body.portal-admin-c-v1 .admin-wrap .archive-kpi-grid{
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  margin:18px 0!important;
}
body.portal-admin-c-v1 .admin-wrap .archive-control-card{
  padding:0!important;
  overflow:hidden!important;
}
body.portal-admin-c-v1 .admin-wrap .archive-list{
  display:grid!important;
  gap:0!important;
  background:#fffdf8!important;
}
body.portal-admin-c-v1 .admin-wrap .archive-row{
  display:grid!important;
  grid-template-columns:minmax(260px,1.1fr) minmax(360px,1.35fr) minmax(220px,.75fr)!important;
  gap:14px!important;
  align-items:center!important;
  padding:16px 18px!important;
  border:0!important;
  border-top:1px solid rgba(222,213,202,.84)!important;
  border-radius:0!important;
  box-shadow:none!important;
  background:#fffdf8!important;
}
body.portal-admin-c-v1 .admin-wrap .archive-row:first-child{border-top:0!important;}
body.portal-admin-c-v1 .admin-wrap .archive-row-main,
body.portal-admin-c-v1 .admin-wrap .archive-row-actions{
  min-width:0!important;
}
body.portal-admin-c-v1 .admin-wrap .archive-row-main h3{
  margin:4px 0 3px!important;
  font-size:18px!important;
  line-height:1.15!important;
  letter-spacing:-.02em!important;
  overflow-wrap:break-word!important;
}
body.portal-admin-c-v1 .admin-wrap .archive-row-main p{
  margin:0!important;
  font-size:12.5px!important;
  line-height:1.35!important;
}
body.portal-admin-c-v1 .admin-wrap .archive-status-strip{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:8px!important;
  min-width:0!important;
}
body.portal-admin-c-v1 .admin-wrap .archive-status{
  min-width:0!important;
  border:1px solid rgba(23,22,21,.08)!important;
  border-radius:8px!important;
  padding:10px!important;
  background:#fff!important;
}
body.portal-admin-c-v1 .admin-wrap .archive-status b{
  display:block!important;
  font-size:11px!important;
  line-height:1.1!important;
  text-transform:uppercase!important;
  letter-spacing:.05em!important;
  color:#5f574f!important;
}
body.portal-admin-c-v1 .admin-wrap .archive-status span{
  display:block!important;
  margin-top:4px!important;
  font-size:12px!important;
  line-height:1.25!important;
  font-weight:750!important;
  color:#171615!important;
  overflow-wrap:break-word!important;
}
body.portal-admin-c-v1 .admin-wrap .archive-status.ok{
  background:#f1fbf5!important;
  border-color:#bfe8cc!important;
}
body.portal-admin-c-v1 .admin-wrap .archive-status.missing{
  background:#fff6ed!important;
  border-color:#f4d2ae!important;
}
body.portal-admin-c-v1 .admin-wrap .archive-row-actions{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:7px!important;
}
body.portal-admin-c-v1 .admin-wrap .archive-row-actions .btn{
  width:100%!important;
  min-height:36px!important;
  padding:8px 10px!important;
}
@media (max-width:1180px){
  body.portal-admin-c-v1 .admin-wrap .archive-kpi-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  body.portal-admin-c-v1 .admin-wrap .archive-row{
    grid-template-columns:1fr!important;
  }
}
@media (max-width:720px){
  body.portal-admin-c-v1 .admin-wrap .archive-kpi-grid,
  body.portal-admin-c-v1 .admin-wrap .archive-status-strip{
    grid-template-columns:1fr!important;
  }
}

/* V41.18.5 - Admin proporcional: menu completo sin miniaturizar la interfaz. */
body.portal-admin-c-v1{
  font-size:14.5px!important;
}
@media (min-width:1181px){
  body.portal-admin-c-v1 .admin-app-shell{
    grid-template-columns:minmax(330px,360px) minmax(0,1fr)!important;
  }
  body.portal-admin-c-v1 .admin-app-main{
    padding:18px clamp(20px,2.2vw,34px) 64px!important;
  }
  body.portal-admin-c-v1 .admin-wrap{
    width:min(1680px,100%)!important;
  }
  body.portal-admin-c-v1 .admin-sidebar{
    top:12px!important;
    height:calc(100vh - 24px)!important;
    max-height:calc(100vh - 24px)!important;
    overflow:visible!important;
    gap:5px!important;
    padding:12px!important;
    margin:12px 0 12px 12px!important;
  }
  @supports (height:100dvh){
    body.portal-admin-c-v1 .admin-sidebar{
      height:calc(100dvh - 24px)!important;
      max-height:calc(100dvh - 24px)!important;
    }
  }
  body.portal-admin-c-v1 .admin-side-brand{
    padding:13px 12px 12px!important;
    margin:0 0 7px!important;
    gap:6px!important;
  }
  body.portal-admin-c-v1 .admin-side-brand img{
    width:min(250px,100%)!important;
    max-height:64px!important;
  }
  body.portal-admin-c-v1 .admin-side-brand small{
    font-size:9.5px!important;
    line-height:1.1!important;
  }
  body.portal-admin-c-v1 .admin-menu-section{
    padding:0 0 5px!important;
    margin:0 0 3px!important;
  }
  body.portal-admin-c-v1 .admin-side-label,
  body.portal-admin-c-v1 .admin-menu-section .admin-side-label{
    padding:5px 9px 4px!important;
    font-size:9.5px!important;
    line-height:1!important;
  }
  body.portal-admin-c-v1 .admin-side-nav,
  body.portal-admin-c-v1 .admin-menu-section .admin-side-nav{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:4px!important;
    padding:0 5px!important;
  }
  body.portal-admin-c-v1 .admin-side-nav a,
  body.portal-admin-c-v1 .admin-menu-section .admin-side-nav a{
    min-height:27px!important;
    padding:5px 7px!important;
    font-size:12px!important;
    line-height:1.08!important;
    border-radius:7px!important;
  }
  body.portal-admin-c-v1 .admin-side-nav a em,
  body.portal-admin-c-v1 .admin-nav-notification-link em,
  body.portal-admin-c-v1 .admin-nav-security-link em{
    min-width:20px!important;
    height:17px!important;
    font-size:9.5px!important;
  }
  body.portal-admin-c-v1 .admin-side-footer{
    margin:5px 5px 0!important;
    padding:8px 9px!important;
  }
  body.portal-admin-c-v1 .admin-side-footer b,
  body.portal-admin-c-v1 .admin-side-footer span{
    font-size:11px!important;
  }
}
@media (min-width:1181px) and (max-height:760px){
  body.portal-admin-c-v1 .admin-sidebar{
    top:8px!important;
    height:calc(100vh - 16px)!important;
    max-height:calc(100vh - 16px)!important;
    padding:9px!important;
    margin:8px 0 8px 8px!important;
  }
  body.portal-admin-c-v1 .admin-side-brand{
    padding:10px!important;
    margin-bottom:5px!important;
  }
  body.portal-admin-c-v1 .admin-side-brand img{
    width:min(232px,100%)!important;
    max-height:56px!important;
  }
  body.portal-admin-c-v1 .admin-side-label,
  body.portal-admin-c-v1 .admin-menu-section .admin-side-label{
    padding:4px 8px 3px!important;
    font-size:8.8px!important;
  }
  body.portal-admin-c-v1 .admin-side-nav a,
  body.portal-admin-c-v1 .admin-menu-section .admin-side-nav a{
    min-height:24px!important;
    padding:4px 6px!important;
    font-size:11.2px!important;
  }
  body.portal-admin-c-v1 .admin-side-footer{
    padding:6px 8px!important;
  }
  body.portal-admin-c-v1 .admin-side-footer small{display:none!important;}
}

body.portal-admin-c-v1 .admin-topbar{
  min-height:76px!important;
  padding:14px 16px!important;
}
body.portal-admin-c-v1 .admin-mobile-logo img{
  height:48px!important;
  max-width:290px!important;
}
body.portal-admin-c-v1 .admin-topbar .btn,
body.portal-admin-c-v1 .admin-topbar .btn.light,
body.portal-admin-c-v1 .admin-security-bell,
body.portal-admin-c-v1 .admin-notification-bell{
  min-height:42px!important;
  padding:0 14px!important;
  font-size:13px!important;
}
body.portal-admin-c-v1 .admin-dashboard-hero,
body.portal-admin-c-v1 .admin-dashboard-hero.section-admin-hero,
body.portal-admin-c-v1 .admin-wrap .premium-hero,
body.portal-admin-c-v1 .admin-wrap .dj-hero,
body.portal-admin-c-v1 .admin-wrap .page-hero,
body.portal-admin-c-v1 .notifications-hero,
body.portal-admin-c-v1 .operational-hero,
body.portal-admin-c-v1 .security-hero,
body.portal-admin-c-v1 .crm-tasks-hero{
  padding:clamp(30px,3.7vw,50px)!important;
}
body.portal-admin-c-v1 .admin-dashboard-hero h1,
body.portal-admin-c-v1 .admin-dashboard-hero.section-admin-hero h1,
body.portal-admin-c-v1 .admin-wrap .page-hero h1,
body.portal-admin-c-v1 .notifications-hero h1,
body.portal-admin-c-v1 .operational-hero h1,
body.portal-admin-c-v1 .security-hero h1,
body.portal-admin-c-v1 .crm-tasks-hero h1{
  font-size:clamp(42px,3.8vw,64px)!important;
}
body.portal-admin-c-v1 .admin-dashboard-hero p,
body.portal-admin-c-v1 .admin-dashboard-hero .muted{
  font-size:15.5px!important;
}
body.portal-admin-c-v1 .admin-wrap .card,
body.portal-admin-c-v1 .admin-wrap .kpi-card,
body.portal-admin-c-v1 .admin-wrap .portal-menu-item,
body.portal-admin-c-v1 .admin-wrap .notification-card,
body.portal-admin-c-v1 .admin-wrap .security-check-card,
body.portal-admin-c-v1 .admin-wrap .security-activity-card{
  box-shadow:0 14px 34px rgba(58,46,30,.065)!important;
}
body.portal-admin-c-v1 .admin-wrap .portal-menu,
body.portal-admin-c-v1 .admin-wrap .bodas-tabs,
body.portal-admin-c-v1 .admin-wrap .doc-tabs,
body.portal-admin-c-v1 .admin-wrap .client-tabs,
body.portal-admin-c-v1 .admin-wrap .notification-tabs,
body.portal-admin-c-v1 .admin-wrap .operational-range-tabs,
body.portal-admin-c-v1 .admin-wrap .tab-row{
  gap:10px!important;
  padding:10px!important;
}
body.portal-admin-c-v1 .admin-wrap .portal-menu-item,
body.portal-admin-c-v1 .admin-wrap .bodas-tabs .portal-menu-item,
body.portal-admin-c-v1 .admin-wrap .doc-tabs a,
body.portal-admin-c-v1 .admin-wrap .client-tabs a,
body.portal-admin-c-v1 .admin-wrap .notification-tabs a,
body.portal-admin-c-v1 .admin-wrap .operational-range-tabs a,
body.portal-admin-c-v1 .admin-wrap .tab-row a{
  min-height:64px!important;
  padding:14px 16px!important;
  font-size:14px!important;
}
body.portal-admin-c-v1 .admin-wrap .portal-menu-item span,
body.portal-admin-c-v1 .admin-wrap .notification-tabs a span{
  font-size:14px!important;
}
body.portal-admin-c-v1 .admin-wrap .portal-menu-item small{
  font-size:12px!important;
}
body.portal-admin-c-v1 .admin-section-toolbar{
  padding:18px 22px!important;
  font-size:15px!important;
}
body.portal-admin-c-v1 .admin-wrap .section-search{
  min-height:46px!important;
  font-size:14px!important;
}
body.portal-admin-c-v1 .admin-accordion-row summary{
  grid-template-columns:minmax(150px,180px) minmax(280px,1.45fr) minmax(140px,.52fr) minmax(210px,.7fr) 34px!important;
  gap:18px!important;
  padding:18px 22px!important;
}
body.portal-admin-c-v1 .accordion-date-block{
  min-height:74px!important;
  padding:12px 14px!important;
}
body.portal-admin-c-v1 .accordion-date-block small,
body.portal-admin-c-v1 .accordion-doc-status small,
body.portal-admin-c-v1 .accordion-main small{
  font-size:12.5px!important;
  line-height:1.32!important;
}
body.portal-admin-c-v1 .accordion-date-block b{
  font-size:18px!important;
}
body.portal-admin-c-v1 .accordion-main strong{
  font-size:18.5px!important;
  line-height:1.15!important;
}
body.portal-admin-c-v1 .accordion-doc-status{
  min-height:72px!important;
  padding:12px 14px!important;
}
body.portal-admin-c-v1 .accordion-doc-status b{
  font-size:14.5px!important;
}
body.portal-admin-c-v1 .accordion-body{
  padding:18px 22px 22px!important;
}
body.portal-admin-c-v1 .section-info-grid div,
body.portal-admin-c-v1 .accordion-info-grid div,
body.portal-admin-c-v1 .op-event-meta-grid div{
  padding:14px 16px!important;
}
body.portal-admin-c-v1 .section-info-grid span,
body.portal-admin-c-v1 .accordion-info-grid span,
body.portal-admin-c-v1 .op-event-meta-grid span{
  font-size:11.5px!important;
}
body.portal-admin-c-v1 .section-info-grid b,
body.portal-admin-c-v1 .accordion-info-grid b,
body.portal-admin-c-v1 .op-event-meta-grid b{
  font-size:14px!important;
}
body.portal-admin-c-v1 .accordion-actions .btn,
body.portal-admin-c-v1 .section-event-actions .btn,
body.portal-admin-c-v1 .operational-actions .btn,
body.portal-admin-c-v1 .archive-row-actions .btn{
  min-height:42px!important;
  font-size:13.5px!important;
}
body.portal-admin-c-v1 .admin-wrap .archive-row{
  grid-template-columns:minmax(300px,1.05fr) minmax(430px,1.35fr) minmax(230px,.7fr)!important;
  padding:18px 22px!important;
}
body.portal-admin-c-v1 .admin-wrap .archive-row-main h3{
  font-size:19px!important;
}
body.portal-admin-c-v1 .admin-wrap .archive-row-main p{
  font-size:13.5px!important;
}
body.portal-admin-c-v1 .admin-wrap .archive-status{
  padding:12px!important;
}
body.portal-admin-c-v1 .admin-wrap .archive-status span{
  font-size:13px!important;
}
@media (max-width:1280px){
  body.portal-admin-c-v1 .admin-accordion-row summary{
    grid-template-columns:minmax(138px,168px) minmax(0,1fr) minmax(210px,.7fr) 34px!important;
  }
}
@media (max-width:1180px){
  body.portal-admin-c-v1 .admin-wrap .archive-row{
    grid-template-columns:1fr!important;
  }
}

/* V41.18.6 - Admin D: lateral serio y notificaciones como lista operativa. */
@media (min-width:1181px){
  body.portal-admin-c-v1 .admin-app-shell{
    grid-template-columns:286px minmax(0,1fr)!important;
  }
  body.portal-admin-c-v1 .admin-app-main{
    padding:18px 28px 64px!important;
  }
  body.portal-admin-c-v1 .admin-sidebar{
    position:sticky!important;
    top:12px!important;
    height:calc(100vh - 24px)!important;
    max-height:calc(100vh - 24px)!important;
    overflow:visible!important;
    padding:10px 10px 8px!important;
    margin:12px 0 12px 12px!important;
    gap:3px!important;
  }
  @supports (height:100dvh){
    body.portal-admin-c-v1 .admin-sidebar{
      height:calc(100dvh - 24px)!important;
      max-height:calc(100dvh - 24px)!important;
    }
  }
  body.portal-admin-c-v1 .admin-side-brand{
    padding:10px 10px 9px!important;
    margin:0 0 6px!important;
    border-radius:8px!important;
  }
  body.portal-admin-c-v1 .admin-side-brand img{
    width:min(226px,100%)!important;
    max-height:58px!important;
  }
  body.portal-admin-c-v1 .admin-side-brand small{
    font-size:9px!important;
    letter-spacing:.13em!important;
  }
  body.portal-admin-c-v1 .admin-menu-section{
    margin:0!important;
    padding:0 0 3px!important;
    border-bottom:1px solid rgba(255,255,255,.055)!important;
  }
  body.portal-admin-c-v1 .admin-side-label,
  body.portal-admin-c-v1 .admin-menu-section .admin-side-label{
    padding:4px 9px 3px!important;
    font-size:8.5px!important;
    letter-spacing:.09em!important;
    color:rgba(255,255,255,.45)!important;
  }
  body.portal-admin-c-v1 .admin-side-nav,
  body.portal-admin-c-v1 .admin-menu-section .admin-side-nav{
    grid-template-columns:1fr!important;
    gap:1px!important;
    padding:0 4px!important;
  }
  body.portal-admin-c-v1 .admin-side-nav a,
  body.portal-admin-c-v1 .admin-menu-section .admin-side-nav a{
    min-height:21px!important;
    padding:3px 8px!important;
    font-size:11.2px!important;
    line-height:1.08!important;
    font-weight:650!important;
    border-radius:6px!important;
  }
  body.portal-admin-c-v1 .admin-side-nav a em,
  body.portal-admin-c-v1 .admin-nav-notification-link em,
  body.portal-admin-c-v1 .admin-nav-security-link em{
    min-width:18px!important;
    height:16px!important;
    font-size:9px!important;
    padding:0 5px!important;
  }
  body.portal-admin-c-v1 .admin-side-footer{
    display:none!important;
  }
}
@media (min-width:1181px) and (max-height:760px){
  body.portal-admin-c-v1 .admin-sidebar{
    top:8px!important;
    height:calc(100vh - 16px)!important;
    max-height:calc(100vh - 16px)!important;
    padding:8px!important;
    margin:8px 0 8px 8px!important;
  }
  body.portal-admin-c-v1 .admin-side-brand{
    padding:8px!important;
    margin-bottom:4px!important;
  }
  body.portal-admin-c-v1 .admin-side-brand img{
    width:min(210px,100%)!important;
    max-height:48px!important;
  }
  body.portal-admin-c-v1 .admin-side-label,
  body.portal-admin-c-v1 .admin-menu-section .admin-side-label{
    padding:3px 8px 2px!important;
    font-size:7.8px!important;
  }
  body.portal-admin-c-v1 .admin-side-nav a,
  body.portal-admin-c-v1 .admin-menu-section .admin-side-nav a{
    min-height:19px!important;
    padding:2px 7px!important;
    font-size:10.5px!important;
  }
}

body.portal-admin-c-v1 .notifications-kpi-grid{
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  gap:12px!important;
}
body.portal-admin-c-v1 .notification-filter-card{
  padding:0!important;
}
body.portal-admin-c-v1 .notification-tabs{
  grid-template-columns:repeat(auto-fit,minmax(132px,1fr))!important;
  gap:8px!important;
  padding:14px!important;
  margin:0!important;
}
body.portal-admin-c-v1 .notification-tabs a{
  min-height:48px!important;
  padding:10px 12px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  border-radius:8px!important;
}
body.portal-admin-c-v1 .notification-category-row{
  padding:12px 16px!important;
  gap:7px!important;
}
body.portal-admin-c-v1 .notification-toolbar{
  padding:14px 16px!important;
  align-items:center!important;
}
body.portal-admin-c-v1 .notification-center-layout{
  grid-template-columns:minmax(0,1fr) minmax(280px,330px)!important;
  gap:18px!important;
}
body.portal-admin-c-v1 .notification-list{
  gap:10px!important;
}
body.portal-admin-c-v1 .notification-card{
  padding:15px 16px!important;
  border-left-width:5px!important;
  background:#fffdf8!important;
}
body.portal-admin-c-v1 .notification-card-head{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:start!important;
  gap:12px!important;
}
body.portal-admin-c-v1 .notification-card h2{
  font-size:19px!important;
  line-height:1.12!important;
  margin:5px 0 0!important;
  letter-spacing:-.025em!important;
}
body.portal-admin-c-v1 .notification-card p{
  margin:8px 0 12px!important;
  font-size:13.5px!important;
  line-height:1.4!important;
}
body.portal-admin-c-v1 .notification-state{
  padding:6px 9px!important;
  font-size:10px!important;
}
body.portal-admin-c-v1 .notification-meta-grid{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:8px!important;
}
body.portal-admin-c-v1 .notification-meta-grid span{
  min-height:48px!important;
  padding:9px 10px!important;
  border-radius:8px!important;
  font-size:12px!important;
}
body.portal-admin-c-v1 .notification-meta-grid b{
  font-size:9.5px!important;
  margin-bottom:3px!important;
}
body.portal-admin-c-v1 .notification-actions{
  gap:7px!important;
  align-items:center!important;
}
body.portal-admin-c-v1 .notification-actions .btn,
body.portal-admin-c-v1 .notification-actions form button{
  min-height:34px!important;
  padding:8px 12px!important;
  font-size:12.5px!important;
}
body.portal-admin-c-v1 .notification-side{
  position:sticky!important;
  top:92px!important;
  padding:18px!important;
}
body.portal-admin-c-v1 .notification-side .music-card-header,
body.portal-admin-c-v1 .notification-side .music-card-header.compact{
  padding:0 0 12px!important;
}
body.portal-admin-c-v1 .notification-rule-list{
  padding:0!important;
  gap:8px!important;
}
body.portal-admin-c-v1 .notification-rule-list div{
  padding:11px 12px!important;
  border-radius:8px!important;
}
@media (max-width:1280px){
  body.portal-admin-c-v1 .notifications-kpi-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
  body.portal-admin-c-v1 .notification-center-layout{
    grid-template-columns:1fr!important;
  }
  body.portal-admin-c-v1 .notification-side{
    position:static!important;
  }
}
@media (max-width:760px){
  body.portal-admin-c-v1 .notifications-kpi-grid,
  body.portal-admin-c-v1 .notification-meta-grid{
    grid-template-columns:1fr!important;
  }
  body.portal-admin-c-v1 .notification-card-head{
    grid-template-columns:1fr!important;
  }
}

/* V41.18.7 - Admin final: lateral completo y notificaciones operativas. */
@media (min-width:1181px){
  body.portal-admin-c-v1 .admin-app-shell{
    grid-template-columns:300px minmax(0,1fr)!important;
  }
  body.portal-admin-c-v1 .admin-sidebar{
    position:sticky!important;
    top:10px!important;
    height:calc(100vh - 20px)!important;
    max-height:calc(100vh - 20px)!important;
    overflow:visible!important;
    padding:10px!important;
    margin:10px 0 10px 10px!important;
    gap:3px!important;
    border-radius:8px!important;
  }
  @supports (height:100dvh){
    body.portal-admin-c-v1 .admin-sidebar{
      height:calc(100dvh - 20px)!important;
      max-height:calc(100dvh - 20px)!important;
    }
  }
  body.portal-admin-c-v1 .admin-side-brand{
    padding:9px 10px 8px!important;
    margin:0 0 6px!important;
    border-radius:8px!important;
  }
  body.portal-admin-c-v1 .admin-side-brand img{
    width:min(230px,100%)!important;
    max-height:56px!important;
  }
  body.portal-admin-c-v1 .admin-menu-section{
    margin:0!important;
    padding:0 0 3px!important;
  }
  body.portal-admin-c-v1 .admin-side-label,
  body.portal-admin-c-v1 .admin-menu-section .admin-side-label{
    padding:4px 9px 3px!important;
    font-size:8.4px!important;
    line-height:1!important;
    letter-spacing:.09em!important;
  }
  body.portal-admin-c-v1 .admin-side-nav,
  body.portal-admin-c-v1 .admin-menu-section .admin-side-nav{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:1px!important;
    padding:0 4px!important;
  }
  body.portal-admin-c-v1 .admin-side-nav a,
  body.portal-admin-c-v1 .admin-menu-section .admin-side-nav a{
    min-height:22px!important;
    padding:3px 9px!important;
    font-size:11.4px!important;
    line-height:1.08!important;
    font-weight:650!important;
    border-radius:6px!important;
  }
  body.portal-admin-c-v1 .admin-side-nav a em,
  body.portal-admin-c-v1 .admin-nav-notification-link em,
  body.portal-admin-c-v1 .admin-nav-security-link em{
    min-width:18px!important;
    height:16px!important;
    font-size:9px!important;
  }
  body.portal-admin-c-v1 .admin-side-footer{
    display:none!important;
  }
}
@media (min-width:1181px) and (max-height:735px){
  body.portal-admin-c-v1 .admin-sidebar{
    top:8px!important;
    height:calc(100vh - 16px)!important;
    max-height:calc(100vh - 16px)!important;
    padding:8px!important;
    margin:8px 0 8px 8px!important;
  }
  body.portal-admin-c-v1 .admin-side-brand{
    padding:8px!important;
    margin-bottom:4px!important;
  }
  body.portal-admin-c-v1 .admin-side-brand img{
    width:min(214px,100%)!important;
    max-height:48px!important;
  }
  body.portal-admin-c-v1 .admin-side-label,
  body.portal-admin-c-v1 .admin-menu-section .admin-side-label{
    padding:3px 8px 2px!important;
    font-size:7.8px!important;
  }
  body.portal-admin-c-v1 .admin-side-nav a,
  body.portal-admin-c-v1 .admin-menu-section .admin-side-nav a{
    min-height:19px!important;
    padding:2px 8px!important;
    font-size:10.7px!important;
  }
}

body.portal-admin-c-v1 .admin-wrap .notifications-hero{
  background:#fffdf8!important;
  color:#171615!important;
  border:1px solid rgba(197,186,171,.62)!important;
  border-radius:8px!important;
  box-shadow:0 14px 34px rgba(58,46,30,.055)!important;
  padding:34px 38px!important;
}
body.portal-admin-c-v1 .admin-wrap .notifications-hero:before,
body.portal-admin-c-v1 .admin-wrap .notifications-hero:after{
  display:none!important;
}
body.portal-admin-c-v1 .admin-wrap .notifications-hero h1{
  color:#111!important;
  font-size:clamp(36px,3.1vw,50px)!important;
  line-height:1.02!important;
  letter-spacing:-.04em!important;
}
body.portal-admin-c-v1 .admin-wrap .notifications-hero .muted,
body.portal-admin-c-v1 .admin-wrap .notifications-hero p{
  color:#4b4641!important;
  font-size:14.5px!important;
}
body.portal-admin-c-v1 .admin-wrap .notifications-hero .section-kicker{
  background:#fffaf0!important;
  border-color:#eadbc0!important;
  color:#71521e!important;
}
body.portal-admin-c-v1 .admin-wrap .notifications-hero .top-actions{
  gap:8px!important;
  margin-top:14px!important;
}

body.portal-admin-c-v1 .admin-wrap .notifications-kpi-grid{
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  gap:10px!important;
  margin-top:14px!important;
}
body.portal-admin-c-v1 .admin-wrap .notifications-kpi-grid .kpi-card{
  min-height:78px!important;
  padding:14px!important;
  border-radius:8px!important;
  box-shadow:none!important;
}
body.portal-admin-c-v1 .admin-wrap .notifications-kpi-grid .kpi-card b{
  font-size:30px!important;
}
body.portal-admin-c-v1 .admin-wrap .notification-filter-card{
  margin:14px 0 18px!important;
  border-radius:8px!important;
  box-shadow:none!important;
}
body.portal-admin-c-v1 .admin-wrap .notification-tabs{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  padding:12px!important;
  background:#fff!important;
}
body.portal-admin-c-v1 .admin-wrap .notification-tabs a{
  display:inline-flex!important;
  min-height:36px!important;
  padding:0 12px!important;
  border-radius:999px!important;
  gap:8px!important;
  font-size:12.5px!important;
}
body.portal-admin-c-v1 .admin-wrap .notification-tabs a.active{
  background:#111!important;
  border-color:#111!important;
  color:#fff!important;
}
body.portal-admin-c-v1 .admin-wrap .notification-tabs a b{
  min-width:20px!important;
  height:20px!important;
  font-size:10.5px!important;
}
body.portal-admin-c-v1 .admin-wrap .notification-category-row{
  padding:10px 12px!important;
  gap:6px!important;
}
body.portal-admin-c-v1 .admin-wrap .notification-category-pill{
  padding:6px 10px!important;
  border-radius:999px!important;
  font-size:11.5px!important;
}
body.portal-admin-c-v1 .admin-wrap .notification-toolbar{
  padding:12px!important;
}
body.portal-admin-c-v1 .admin-wrap .notification-toolbar .section-search{
  min-height:40px!important;
  max-width:380px!important;
}

body.portal-admin-c-v1 .admin-wrap .notification-center-layout{
  grid-template-columns:1fr!important;
  gap:0!important;
}
body.portal-admin-c-v1 .admin-wrap .notification-side{
  display:none!important;
}
body.portal-admin-c-v1 .admin-wrap .notification-list{
  gap:8px!important;
  padding:0!important;
}
body.portal-admin-c-v1 .admin-wrap .notification-card{
  display:block!important;
  padding:13px 15px!important;
  border-radius:8px!important;
  border:1px solid rgba(197,186,171,.58)!important;
  border-left-width:4px!important;
  background:#fffdf8!important;
  box-shadow:none!important;
}
body.portal-admin-c-v1 .admin-wrap .notification-card.critical{
  border-left-color:#dc2626!important;
  background:#fffafa!important;
}
body.portal-admin-c-v1 .admin-wrap .notification-card.warning{
  border-left-color:#d97706!important;
  background:#fffdf5!important;
}
body.portal-admin-c-v1 .admin-wrap .notification-card.info{
  border-left-color:#2563eb!important;
}
body.portal-admin-c-v1 .admin-wrap .notification-card-main{
  display:grid!important;
  grid-template-columns:minmax(230px,.9fr) minmax(0,1.35fr)!important;
  gap:8px 14px!important;
  align-items:start!important;
}
body.portal-admin-c-v1 .admin-wrap .notification-card-head{
  grid-column:1!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:10px!important;
  align-items:start!important;
}
body.portal-admin-c-v1 .admin-wrap .notification-card h2{
  margin:5px 0 0!important;
  font-size:18.5px!important;
  line-height:1.12!important;
  letter-spacing:-.025em!important;
}
body.portal-admin-c-v1 .admin-wrap .notification-state{
  padding:5px 8px!important;
  font-size:9.5px!important;
  letter-spacing:.055em!important;
}
body.portal-admin-c-v1 .admin-wrap .notification-card p{
  grid-column:2!important;
  grid-row:1!important;
  margin:2px 0 0!important;
  font-size:13.5px!important;
  line-height:1.35!important;
}
body.portal-admin-c-v1 .admin-wrap .notification-meta-grid{
  grid-column:1 / -1!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:7px!important;
  margin:2px 0 0!important;
}
body.portal-admin-c-v1 .admin-wrap .notification-meta-grid span{
  min-height:42px!important;
  padding:8px 10px!important;
  border-radius:7px!important;
  font-size:12px!important;
  background:#fff!important;
}
body.portal-admin-c-v1 .admin-wrap .notification-meta-grid b{
  font-size:9px!important;
  margin-bottom:2px!important;
}
body.portal-admin-c-v1 .admin-wrap .notification-actions{
  grid-column:1 / -1!important;
  gap:7px!important;
  margin-top:4px!important;
  padding-top:8px!important;
  border-top:1px solid rgba(197,186,171,.45)!important;
}
body.portal-admin-c-v1 .admin-wrap .notification-actions .btn,
body.portal-admin-c-v1 .admin-wrap .notification-actions form button{
  min-height:32px!important;
  padding:7px 11px!important;
  font-size:12px!important;
  border-radius:7px!important;
}
@media (max-width:1280px){
  body.portal-admin-c-v1 .admin-wrap .notifications-kpi-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
  body.portal-admin-c-v1 .admin-wrap .notification-card-main{
    grid-template-columns:1fr!important;
  }
  body.portal-admin-c-v1 .admin-wrap .notification-card p{
    grid-column:1!important;
    grid-row:auto!important;
  }
  body.portal-admin-c-v1 .admin-wrap .notification-meta-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media (max-width:760px){
  body.portal-admin-c-v1 .admin-wrap .notifications-hero{
    padding:26px 20px!important;
  }
  body.portal-admin-c-v1 .admin-wrap .notifications-hero h1{
    font-size:34px!important;
  }
  body.portal-admin-c-v1 .admin-wrap .notifications-kpi-grid,
  body.portal-admin-c-v1 .admin-wrap .notification-meta-grid{
    grid-template-columns:1fr!important;
  }
body.portal-admin-c-v1 .admin-wrap .notification-toolbar .section-search{
    max-width:none!important;
  }
}

/* V41.18.12 - Productividad: filtros rápidos en centro de avisos. */
.notification-quick-filters{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  padding:12px 16px;
  border-bottom:1px solid rgba(17,24,39,.06);
  background:#fff;
}
.notification-quick-filters button{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:36px;
  border-radius:999px;
  border:1px solid rgba(17,24,39,.09);
  background:#f9fafb;
  color:#374151;
  padding:0 12px;
  font-weight:900;
  cursor:pointer;
}
.notification-quick-filters button.active,
.notification-quick-filters button:hover{
  background:#111827;
  color:#fff;
  border-color:#111827;
}
.notification-quick-filters button b{
  min-width:22px;
  height:22px;
  border-radius:999px;
  background:#fff;
  color:#111827;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:11px;
}
.notification-quick-filters button.active b,
.notification-quick-filters button:hover b{
  background:rgba(255,255,255,.16);
  color:#fff;
}
body.portal-admin-c-v1 .admin-wrap .notification-quick-filters{
  padding:10px 12px!important;
  gap:6px!important;
}
body.portal-admin-c-v1 .admin-wrap .notification-quick-filters button{
  min-height:34px!important;
  border-radius:7px!important;
  padding:0 10px!important;
  font-size:12px!important;
}

/* V41.18.10 - Productividad: selección múltiple en notificaciones. */
.notification-bulk-form{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  padding:12px 16px;
  border-top:1px solid rgba(17,24,39,.06);
  background:#fffdf8;
}
.notification-bulk-count{
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:34px;
  padding:0 12px;
  border-radius:999px;
  background:#111827;
  color:#fff;
  font-weight:850;
}
.notification-bulk-count b{font-size:15px}
.notification-bulk-count span{font-size:12px;color:rgba(255,255,255,.75)}
.notification-select-control{
  position:relative;
  width:44px;
  min-height:44px;
  border-radius:16px;
  border:1px solid rgba(17,24,39,.10);
  background:#f9fafb;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
}
.notification-select-control input{
  width:20px;
  height:20px;
  margin:0;
  accent-color:#111827;
}
.notification-select-control span{
  position:absolute;
  width:1px;
  height:1px;
  margin:-1px;
  padding:0;
  border:0;
  clip:rect(0 0 0 0);
  overflow:hidden;
}
.notification-card:has(.notification-select:checked){
  border-color:rgba(17,24,39,.24);
  box-shadow:0 22px 65px rgba(17,24,39,.12);
}
.notification-select-control.admin-section-select-control{
  float:none!important;
  width:38px;
  min-height:38px;
  margin:0 0 8px 0;
  border-radius:12px;
}
.notification-select-control.admin-section-select-control input{
  width:18px;
  height:18px;
}
.section-event-card.is-selected{
  border-color:rgba(17,24,39,.28)!important;
  box-shadow:0 20px 55px rgba(17,24,39,.12)!important;
}
.admin-accordion-row.section-event-card.is-selected{
  box-shadow:inset 0 0 0 2px rgba(17,24,39,.18)!important;
}
body.portal-admin-c-v1 .admin-wrap .notification-select-control.admin-section-select-control{
  float:none!important;
  width:34px!important;
  min-height:34px!important;
  margin:0 0 8px 0!important;
  border-radius:7px!important;
}
body.portal-admin-c-v1 .admin-wrap .notification-select-control.admin-section-select-control input{
  width:18px!important;
  height:18px!important;
}
body.portal-admin-c-v1 .admin-wrap .notification-bulk-form{
  padding:10px 12px!important;
  background:#fff!important;
}
body.portal-admin-c-v1 .admin-wrap .notification-bulk-count{
  min-height:32px!important;
  border-radius:7px!important;
}
body.portal-admin-c-v1 .admin-wrap .notification-select-control{
  float:left;
  width:34px!important;
  min-height:34px!important;
  margin:0 10px 8px 0!important;
  border-radius:7px!important;
}
body.portal-admin-c-v1 .admin-wrap .notification-select-control input{
  width:18px!important;
  height:18px!important;
}
@media (max-width:760px){
  .notification-bulk-form .btn,
  .notification-bulk-count{
    width:100%;
    justify-content:center;
  }
}

/* V41.18.9 - Accesibilidad lateral: texto más grande sin peso excesivo. */
@media (min-width:1181px){
  body.portal-admin-c-v1 .admin-app-shell{
    grid-template-columns:364px minmax(0,1fr)!important;
  }
  body.portal-admin-c-v1 .admin-app-main{
    padding-left:24px!important;
    padding-right:28px!important;
  }
  body.portal-admin-c-v1 .admin-sidebar{
    padding:10px 12px!important;
    margin:10px 0 10px 10px!important;
    gap:3px!important;
    width:auto!important;
    overflow:visible!important;
  }
  body.portal-admin-c-v1 .admin-side-brand{
    padding:7px 11px 6px!important;
    margin-bottom:5px!important;
  }
  body.portal-admin-c-v1 .admin-side-brand img{
    width:min(232px,100%)!important;
    max-height:44px!important;
  }
  body.portal-admin-c-v1 .admin-side-brand small{
    font-size:10px!important;
    color:rgba(255,255,255,.78)!important;
  }
  body.portal-admin-c-v1 .admin-menu-section{
    padding-bottom:2px!important;
    border-bottom-color:rgba(255,255,255,.08)!important;
  }
  body.portal-admin-c-v1 .admin-side-label,
  body.portal-admin-c-v1 .admin-menu-section .admin-side-label{
    padding:4px 11px 3px!important;
    font-size:10px!important;
    font-weight:650!important;
    color:rgba(255,255,255,.64)!important;
  }
  body.portal-admin-c-v1 .admin-side-nav,
  body.portal-admin-c-v1 .admin-menu-section .admin-side-nav{
    grid-template-columns:1fr!important;
    gap:2px!important;
    padding:0 4px!important;
  }
  body.portal-admin-c-v1 .admin-side-nav a,
  body.portal-admin-c-v1 .admin-menu-section .admin-side-nav a{
    min-height:28px!important;
    padding:5px 12px!important;
    font-size:15.6px!important;
    line-height:1.14!important;
    font-weight:600!important;
    letter-spacing:0!important;
    color:rgba(255,255,255,.92)!important;
    white-space:nowrap!important;
    text-shadow:0 1px 0 rgba(0,0,0,.24)!important;
  }
  body.portal-admin-c-v1 .admin-side-nav a:hover,
  body.portal-admin-c-v1 .admin-side-nav a:focus-visible{
    color:#fff!important;
    background:rgba(255,255,255,.13)!important;
  }
  body.portal-admin-c-v1 .admin-side-nav a.active,
  body.portal-admin-c-v1 .admin-sidebar nav a[aria-current="page"]{
    background:#fff!important;
    color:#111!important;
    text-shadow:none!important;
    box-shadow:none!important;
  }
  body.portal-admin-c-v1 .admin-side-nav a em,
  body.portal-admin-c-v1 .admin-nav-notification-link em,
  body.portal-admin-c-v1 .admin-nav-security-link em{
    min-width:22px!important;
    height:18px!important;
    padding:0 6px!important;
    font-size:11px!important;
    font-weight:800!important;
  }
}
@media (min-width:1181px) and (max-height:735px){
  body.portal-admin-c-v1 .admin-app-shell{
    grid-template-columns:354px minmax(0,1fr)!important;
  }
  body.portal-admin-c-v1 .admin-sidebar{
    padding:7px 9px!important;
    margin:8px 0 8px 8px!important;
    gap:1px!important;
  }
  body.portal-admin-c-v1 .admin-side-brand{
    padding:6px 9px 5px!important;
    margin-bottom:3px!important;
  }
  body.portal-admin-c-v1 .admin-side-brand img{
    max-height:38px!important;
  }
  body.portal-admin-c-v1 .admin-side-brand small{
    font-size:9px!important;
  }
  body.portal-admin-c-v1 .admin-side-label,
  body.portal-admin-c-v1 .admin-menu-section .admin-side-label{
    padding:2px 10px 1px!important;
    font-size:9px!important;
  }
  body.portal-admin-c-v1 .admin-side-nav a,
  body.portal-admin-c-v1 .admin-menu-section .admin-side-nav a{
    min-height:24px!important;
    padding:3px 11px!important;
    font-size:14.4px!important;
    line-height:1.08!important;
    font-weight:600!important;
  }
}

/* V41.18.10 - Sidebar robusta: fondo completo y logo con respaldo. */
@media (min-width:1181px){
  body.portal-admin-c-v1 .admin-sidebar{
    height:auto!important;
    min-height:calc(100vh - 20px)!important;
    max-height:none!important;
    align-self:flex-start!important;
    overflow:visible!important;
    background:linear-gradient(180deg,#171614 0%,#1f1e1b 100%)!important;
    border-radius:0 0 10px 10px!important;
  }
  body.portal-admin-c-v1 .admin-side-brand{
    min-height:58px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:3px!important;
    overflow:hidden!important;
    background:rgba(255,255,255,.035)!important;
    border:1px solid rgba(255,255,255,.18)!important;
  }
  body.portal-admin-c-v1 .admin-side-brand img{
    display:block!important;
    width:min(252px,100%)!important;
    max-width:100%!important;
    height:auto!important;
    max-height:48px!important;
    object-fit:contain!important;
    opacity:1!important;
    visibility:visible!important;
  }
  body.portal-admin-c-v1 .admin-side-brand-mark{
    display:none;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    line-height:1;
    color:#fff;
    text-align:center;
  }
  body.portal-admin-c-v1 .admin-side-brand-mark strong{
    font-size:24px;
    font-weight:850;
    letter-spacing:.02em;
  }
  body.portal-admin-c-v1 .admin-side-brand-mark em{
    margin-top:2px;
    color:#d7bd83;
    font-size:9px;
    font-style:normal;
    font-weight:750;
    letter-spacing:.12em;
    text-transform:uppercase;
  }
  body.portal-admin-c-v1 .admin-side-brand.logo-fallback-only img{
    display:none!important;
  }
  body.portal-admin-c-v1 .admin-side-brand.logo-fallback-only .admin-side-brand-mark{
    display:flex!important;
  }
  body.portal-admin-c-v1 .admin-side-nav a,
  body.portal-admin-c-v1 .admin-menu-section .admin-side-nav a{
    white-space:normal!important;
  }
}
@media (min-width:1181px) and (max-height:735px){
  body.portal-admin-c-v1 .admin-sidebar{
    min-height:calc(100vh - 16px)!important;
  }
  body.portal-admin-c-v1 .admin-side-brand{
    min-height:48px!important;
  }
  body.portal-admin-c-v1 .admin-side-brand img{
    max-height:36px!important;
  }
  body.portal-admin-c-v1 .admin-side-brand-mark strong{
    font-size:21px!important;
  }
}

/* V41.18.11 - Buscador rapido del menu admin. */
body.portal-admin-c-v1 .admin-menu-search{
  position:relative!important;
  display:block!important;
  margin:0 0 6px!important;
}
body.portal-admin-c-v1 .admin-menu-search input{
  width:100%!important;
  min-height:40px!important;
  margin:0!important;
  padding:10px 38px 10px 13px!important;
  border:1px solid rgba(255,255,255,.16)!important;
  border-radius:10px!important;
  background:rgba(255,255,255,.08)!important;
  color:#fff!important;
  font-size:14px!important;
  font-weight:600!important;
  line-height:1.1!important;
  box-shadow:none!important;
  outline:none!important;
}
body.portal-admin-c-v1 .admin-menu-search input::placeholder{
  color:rgba(255,255,255,.58)!important;
}
body.portal-admin-c-v1 .admin-menu-search input:focus{
  border-color:rgba(215,189,131,.72)!important;
  background:rgba(255,255,255,.11)!important;
  box-shadow:0 0 0 3px rgba(215,189,131,.16)!important;
}
body.portal-admin-c-v1 .admin-menu-search button{
  position:absolute!important;
  top:50%!important;
  right:7px!important;
  width:27px!important;
  height:27px!important;
  transform:translateY(-50%)!important;
  border:0!important;
  border-radius:8px!important;
  background:rgba(255,255,255,.14)!important;
  color:#fff!important;
  cursor:pointer!important;
  font-size:18px!important;
  line-height:24px!important;
  font-weight:700!important;
}
body.portal-admin-c-v1 .admin-menu-search button[hidden],
body.portal-admin-c-v1 .admin-menu-section[hidden],
body.portal-admin-c-v1 .admin-side-nav a[hidden],
body.portal-admin-c-v1 .admin-menu-empty[hidden]{
  display:none!important;
}
body.portal-admin-c-v1 .admin-menu-empty{
  margin:8px 0 10px!important;
  padding:12px 13px!important;
  border:1px solid rgba(215,189,131,.24)!important;
  border-radius:10px!important;
  background:rgba(215,189,131,.10)!important;
  color:rgba(255,255,255,.82)!important;
  font-size:13px!important;
  font-weight:650!important;
}
@media (min-width:1181px) and (max-height:735px){
  body.portal-admin-c-v1 .admin-menu-search{
    margin-bottom:4px!important;
  }
  body.portal-admin-c-v1 .admin-menu-search input{
    min-height:32px!important;
    padding-top:7px!important;
    padding-bottom:7px!important;
    font-size:13px!important;
  }
}

/* V41.19 - Herramientas productivas en edición de boda y portales DJ/WP. */
.portal-premium-v361 .portal-dashboard-toolbar{
  background:rgba(255,255,255,.78)!important;
  border:1px solid rgba(255,255,255,.94)!important;
  border-radius:24px!important;
  box-shadow:0 18px 48px rgba(43,31,18,.08)!important;
}
.portal-premium-v361 .wp-event-card-v36.is-selected{
  border-color:rgba(17,24,39,.36)!important;
  box-shadow:0 26px 76px rgba(17,24,39,.18)!important;
}
.portal-premium-v361 .dj-dashboard-row.is-selected td{
  background:rgba(17,24,39,.045)!important;
}

/* V41.20 - Remate final admin: sidebar estable, legible y sin cortes entre navegadores. */
@media (min-width:1181px){
  body.portal-admin-c-v1 .admin-app-shell{
    grid-template-columns:364px minmax(0,1fr)!important;
    align-items:start!important;
  }
  body.portal-admin-c-v1 .admin-sidebar{
    position:sticky!important;
    top:0!important;
    height:calc(100vh - 20px)!important;
    min-height:calc(100vh - 20px)!important;
    max-height:calc(100vh - 20px)!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    margin:10px 0 10px 10px!important;
    padding:12px 12px 14px!important;
    background:#171614!important;
    border-radius:0 0 10px 10px!important;
    box-shadow:16px 0 50px rgba(0,0,0,.18)!important;
    scrollbar-gutter:stable!important;
    -webkit-overflow-scrolling:touch!important;
  }
  body.portal-admin-c-v1 .admin-side-brand{
    min-height:62px!important;
    padding:8px 11px 7px!important;
    margin-bottom:6px!important;
  }
  body.portal-admin-c-v1 .admin-side-brand img{
    width:min(248px,100%)!important;
    max-height:46px!important;
  }
  body.portal-admin-c-v1 .admin-side-nav a,
  body.portal-admin-c-v1 .admin-menu-section .admin-side-nav a{
    min-height:31px!important;
    padding:6px 12px!important;
    font-size:15.8px!important;
    line-height:1.18!important;
    font-weight:600!important;
    letter-spacing:0!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    text-shadow:none!important;
  }
  body.portal-admin-c-v1 .admin-side-label,
  body.portal-admin-c-v1 .admin-menu-section .admin-side-label{
    font-size:10.5px!important;
    line-height:1.1!important;
  }
}
@media (min-width:1181px) and (max-height:735px){
  body.portal-admin-c-v1 .admin-sidebar{
    padding:9px 10px 11px!important;
  }
  body.portal-admin-c-v1 .admin-side-nav a,
  body.portal-admin-c-v1 .admin-menu-section .admin-side-nav a{
    min-height:28px!important;
    padding:4px 11px!important;
    font-size:15px!important;
    line-height:1.12!important;
  }
}

/* V41.22 - Control 360: DJ, administración, calidad, checklist final y modo reunión. */
.control360-hero{
  border-radius:8px!important;
}
.control360-kpi-grid{
  margin:16px 0!important;
}
.control360-card{
  border-radius:8px!important;
}
.control360-list{
  display:grid;
  gap:12px;
}
.control360-row{
  display:grid;
  gap:12px;
  padding:16px;
  border:1px solid rgba(17,24,39,.10);
  border-radius:8px;
  background:#fff;
}
.control360-row.needs-review,
.control360-row.quality-warning{
  border-color:rgba(180,83,9,.28);
  background:#fffcf4;
}
.control360-row.quality-critical{
  border-color:rgba(185,28,28,.28);
  background:#fff7f7;
}
.control360-row-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
}
.control360-row-head h2{
  margin:2px 0 0;
  font-size:22px;
  line-height:1.1;
}
.control360-row-head p{
  margin:6px 0 0;
}
.control360-badges{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:6px;
}
.control360-warning{
  padding:10px 12px;
  border:1px solid rgba(185,28,28,.18);
  border-radius:8px;
  background:#fff7f7;
  color:#7f1d1d;
  font-size:13px;
}
.control360-sublist,
.control360-issue-list,
.control360-message-stack,
.control360-trace{
  display:grid;
  gap:8px;
}
.control360-sublist a,
.control360-issue,
.control360-check-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  padding:11px 12px;
  border:1px solid rgba(17,24,39,.08);
  border-radius:8px;
  background:#fafafa;
  color:#111827;
  text-decoration:none;
}
.control360-sublist a span,
.control360-issue span{
  display:grid;
  gap:2px;
}
.control360-sublist a small,
.control360-issue small{
  color:#6b7280;
}
.control360-sublist a em,
.control360-check-row span{
  font-style:normal;
  font-size:12px;
  font-weight:800;
  text-transform:uppercase;
  color:#374151;
}
.control360-money-grid,
.control360-meeting-grid,
.control360-area-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
  gap:10px;
}
.control360-money-grid div,
.control360-meeting-grid div,
.control360-area{
  display:grid;
  gap:4px;
  min-height:74px;
  padding:12px;
  border:1px solid rgba(17,24,39,.08);
  border-radius:8px;
  background:#fafafa;
}
.control360-money-grid span,
.control360-meeting-grid span,
.control360-area span{
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
  color:#6b7280;
}
.control360-money-grid b,
.control360-meeting-grid b,
.control360-area b{
  font-size:18px;
  line-height:1.1;
}
.control360-area.ok{
  border-color:rgba(22,163,74,.20);
  background:#f5fff8;
}
.control360-area.warn{
  border-color:rgba(180,83,9,.24);
  background:#fffcf4;
}
.control360-area.missing{
  border-color:rgba(185,28,28,.24);
  background:#fff7f7;
}
.control360-check-table{
  display:grid;
  gap:8px;
}
.control360-check-row{
  grid-template-columns:92px minmax(140px,1fr) 140px minmax(0,2fr);
}
.control360-check-row.ok{
  border-color:rgba(22,163,74,.20);
  background:#f5fff8;
}
.control360-check-row.warn{
  border-color:rgba(180,83,9,.24);
  background:#fffcf4;
}
.control360-check-row.missing{
  border-color:rgba(185,28,28,.24);
  background:#fff7f7;
}
.control360-check-row small{
  color:#6b7280;
  font-weight:700;
}
.control360-check-row em{
  color:#374151;
  font-style:normal;
}
.control360-message-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:12px;
}
.control360-message{
  display:grid;
  gap:8px;
  padding:14px;
  border:1px solid rgba(17,24,39,.10);
  border-radius:8px;
  background:#fff;
}
.control360-message.compact{
  padding:12px;
}
.control360-message span{
  font-size:11px;
  font-weight:850;
  text-transform:uppercase;
  color:#6b7280;
}
.control360-message h3{
  margin:0;
  font-size:16px;
}
.control360-message pre{
  margin:0;
  padding:10px;
  border-radius:8px;
  background:#f8fafc;
  color:#111827;
  white-space:pre-wrap;
  font:500 13px/1.45 Inter,system-ui,sans-serif;
}
.control360-two-col{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);
  gap:16px;
}
.control360-issue{
  grid-template-columns:110px minmax(0,1fr);
}
.control360-issue.missing{
  border-color:rgba(185,28,28,.22);
  background:#fff7f7;
}
.control360-issue.warn{
  border-color:rgba(180,83,9,.22);
  background:#fffcf4;
}
.control360-trace article{
  padding:13px 14px;
  border:1px solid rgba(17,24,39,.08);
  border-radius:8px;
  background:#fff;
}
.control360-trace article span,
.control360-trace article small{
  color:#6b7280;
  font-size:12px;
  font-weight:700;
}
.control360-trace h3{
  margin:4px 0;
  font-size:16px;
}
.control360-trace p{
  margin:0;
  color:#374151;
}
.op-area-status-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(120px,1fr));
  gap:8px;
  margin-top:12px;
}
.op-area-status{
  display:grid;
  gap:2px;
  padding:9px 10px;
  border:1px solid rgba(17,24,39,.08);
  border-radius:8px;
  background:#fafafa;
}
.op-area-status b{
  font-size:12px;
  line-height:1.1;
}
.op-area-status small{
  color:#6b7280;
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
}
.op-area-status.ok{
  border-color:rgba(22,163,74,.20);
  background:#f5fff8;
}
.op-area-status.warn{
  border-color:rgba(180,83,9,.24);
  background:#fffcf4;
}
.op-area-status.missing{
  border-color:rgba(185,28,28,.24);
  background:#fff7f7;
}
@media (max-width:900px){
  .control360-row-head,
  .control360-two-col{
    grid-template-columns:1fr;
    display:grid;
  }
  .control360-badges{
    justify-content:flex-start;
  }
  .control360-check-row{
    grid-template-columns:1fr;
  }
}
@media print{
  .print-hide,
  .admin-sidebar,
  .admin-topbar,
  .global-back{
    display:none!important;
  }
  .control360-card,
  .control360-row,
  .control360-check-row{
    box-shadow:none!important;
    break-inside:avoid;
  }
}

/* V41.23 - Sidebar admin sin cortes: cabecera fija y menú con scroll propio. */
@media (min-width:1181px){
  body.portal-admin-c-v1 .admin-sidebar{
    display:flex!important;
    flex-direction:column!important;
    height:calc(100vh - 20px)!important;
    min-height:0!important;
    max-height:calc(100vh - 20px)!important;
    overflow:hidden!important;
    padding-bottom:10px!important;
  }
  @supports (height:100dvh){
    body.portal-admin-c-v1 .admin-sidebar{
      height:calc(100dvh - 20px)!important;
      max-height:calc(100dvh - 20px)!important;
    }
  }
  body.portal-admin-c-v1 .admin-side-brand,
  body.portal-admin-c-v1 .admin-menu-search{
    flex:0 0 auto!important;
  }
  body.portal-admin-c-v1 .admin-menu-scroll{
    flex:1 1 auto!important;
    min-height:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
    scrollbar-gutter:stable!important;
    padding:0 4px 96px 0!important;
    margin:0 -4px 0 0!important;
  }
  body.portal-admin-c-v1 .admin-menu-scroll::-webkit-scrollbar{width:9px!important;}
  body.portal-admin-c-v1 .admin-menu-scroll::-webkit-scrollbar-track{background:rgba(255,255,255,.05)!important;border-radius:99px!important;}
  body.portal-admin-c-v1 .admin-menu-scroll::-webkit-scrollbar-thumb{background:rgba(255,255,255,.38)!important;border-radius:99px!important;border:2px solid rgba(0,0,0,.05)!important;}
  body.portal-admin-c-v1 .admin-menu-section:last-of-type{
    margin-bottom:28px!important;
  }
  body.portal-admin-c-v1 .admin-side-footer{
    display:none!important;
  }
}
@media (min-width:1181px) and (max-height:735px){
  body.portal-admin-c-v1 .admin-menu-scroll{
    padding-bottom:112px!important;
  }
}
@media (max-width:1180px){
  body.portal-admin-c-v1 .admin-menu-scroll{
    overflow:visible!important;
    max-height:none!important;
    padding-bottom:18px!important;
  }
}

/* V41.24 - Sidebar admin completo: una columna, como estaba, sin scroll interno. */
@media (min-width:1181px){
  body.portal-admin-c-v1 .admin-app-shell{
    grid-template-columns:310px minmax(0,1fr)!important;
  }
  body.portal-admin-c-v1 .admin-sidebar{
    height:auto!important;
    min-height:calc(100vh - 20px)!important;
    max-height:none!important;
    overflow:visible!important;
    padding:8px 9px!important;
    gap:3px!important;
  }
  @supports (height:100dvh){
    body.portal-admin-c-v1 .admin-sidebar{
      min-height:calc(100dvh - 20px)!important;
    }
  }
  body.portal-admin-c-v1 .admin-side-brand{
    min-height:38px!important;
    padding:5px 8px!important;
    margin-bottom:3px!important;
  }
  body.portal-admin-c-v1 .admin-side-brand img{
    width:min(190px,100%)!important;
    max-height:27px!important;
  }
  body.portal-admin-c-v1 .admin-side-brand small{
    font-size:8px!important;
    line-height:1!important;
  }
  body.portal-admin-c-v1 .admin-menu-search{
    margin:0 4px 3px!important;
  }
  body.portal-admin-c-v1 .admin-menu-search input{
    min-height:25px!important;
    padding:5px 28px 5px 9px!important;
    font-size:11.8px!important;
  }
  body.portal-admin-c-v1 .admin-menu-scroll{
    flex:0 0 auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
    padding:0!important;
    margin:0!important;
  }
  body.portal-admin-c-v1 .admin-menu-section{
    padding:0 0 1px!important;
    margin:0 0 1px!important;
  }
  body.portal-admin-c-v1 .admin-side-label,
  body.portal-admin-c-v1 .admin-menu-section .admin-side-label{
    padding:2px 8px 1px!important;
    font-size:8.4px!important;
    line-height:1!important;
    letter-spacing:0!important;
  }
  body.portal-admin-c-v1 .admin-side-nav,
  body.portal-admin-c-v1 .admin-menu-section .admin-side-nav{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:1px!important;
    padding:0 3px!important;
  }
  body.portal-admin-c-v1 .admin-side-nav a,
  body.portal-admin-c-v1 .admin-menu-section .admin-side-nav a{
    min-height:20px!important;
    padding:2px 8px!important;
    border-radius:6px!important;
    font-size:12px!important;
    line-height:1.05!important;
    font-weight:600!important;
    white-space:nowrap!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
  }
  body.portal-admin-c-v1 .admin-side-nav a em,
  body.portal-admin-c-v1 .admin-nav-notification-link em,
  body.portal-admin-c-v1 .admin-nav-security-link em{
    min-width:18px!important;
    height:16px!important;
    padding:0 5px!important;
    font-size:10px!important;
  }
  body.portal-admin-c-v1 .admin-menu-section:last-of-type{
    margin-bottom:0!important;
  }
}
@media (min-width:1181px) and (max-height:760px){
  body.portal-admin-c-v1 .admin-app-shell{
    grid-template-columns:300px minmax(0,1fr)!important;
  }
  body.portal-admin-c-v1 .admin-sidebar{
    min-height:calc(100vh - 14px)!important;
    padding:5px 7px!important;
    margin:7px 0 7px 7px!important;
  }
  @supports (height:100dvh){
    body.portal-admin-c-v1 .admin-sidebar{
      min-height:calc(100dvh - 14px)!important;
    }
  }
  body.portal-admin-c-v1 .admin-side-brand{
    min-height:34px!important;
    margin-bottom:1px!important;
  }
  body.portal-admin-c-v1 .admin-side-brand img{
    max-height:24px!important;
  }
  body.portal-admin-c-v1 .admin-side-brand small{
    display:none!important;
  }
  body.portal-admin-c-v1 .admin-menu-search input{
    min-height:24px!important;
    padding-top:3px!important;
    padding-bottom:3px!important;
    font-size:11.4px!important;
  }
  body.portal-admin-c-v1 .admin-menu-section{
    padding-bottom:1px!important;
    margin-bottom:1px!important;
  }
  body.portal-admin-c-v1 .admin-side-label,
  body.portal-admin-c-v1 .admin-menu-section .admin-side-label{
    padding:2px 7px 1px!important;
    font-size:8px!important;
  }
  body.portal-admin-c-v1 .admin-side-nav,
  body.portal-admin-c-v1 .admin-menu-section .admin-side-nav{
    gap:2px!important;
  }
  body.portal-admin-c-v1 .admin-side-nav a,
  body.portal-admin-c-v1 .admin-menu-section .admin-side-nav a{
    min-height:19px!important;
    padding:1px 7px!important;
    font-size:11.5px!important;
    line-height:1.02!important;
  }
}
@media (min-width:1181px) and (max-height:660px){
  body.portal-admin-c-v1 .admin-side-label,
  body.portal-admin-c-v1 .admin-menu-section .admin-side-label{
    display:none!important;
  }
  body.portal-admin-c-v1 .admin-side-nav a,
  body.portal-admin-c-v1 .admin-menu-section .admin-side-nav a{
    min-height:18px!important;
    font-size:11px!important;
  }
}

/* V41.25 - Contratacion comercial: pipeline previo a bodas contratadas. */
.sales-hero,
.sales-detail-hero{
  border-radius:8px;
}
.sales-kpi-grid,
.sales-detail-kpis{
  margin:18px 0;
}
.sales-tabs{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  padding:10px;
  margin:-4px -4px 14px;
  border:1px solid rgba(17,24,39,.08);
  border-radius:8px;
  background:#fff;
}
.sales-radar-card{
  display:grid;
  gap:14px;
  margin:18px 0;
  border-radius:8px;
}
.sales-command-card{
  display:grid;
  gap:14px;
  margin:18px 0;
  border-radius:8px;
  background:linear-gradient(180deg,#fff,#fbfaf7);
}
.sales-command-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}
.sales-command-head h2{
  margin:3px 0 5px;
  font-size:26px;
  line-height:1.05;
}
.sales-command-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:10px;
}
.sales-command-tile{
  display:grid;
  gap:5px;
  min-height:104px;
  padding:14px;
  border:1px solid rgba(17,24,39,.08);
  border-radius:8px;
  background:#fff;
  color:#111827;
  text-decoration:none;
  box-shadow:0 12px 30px rgba(15,23,42,.05);
}
.sales-command-tile span{
  color:#6b7280;
  font-size:10px;
  font-weight:950;
  letter-spacing:.05em;
  text-transform:uppercase;
}
.sales-command-tile b{
  font-size:32px;
  line-height:1;
}
.sales-command-tile small{
  color:#6b7280;
  font-weight:750;
  line-height:1.25;
}
.sales-command-tile.danger{border-color:rgba(220,38,38,.22);background:#fff7f7;}
.sales-command-tile.hot{border-color:rgba(245,158,11,.24);background:#fffbeb;}
.sales-command-tile.ready{border-color:rgba(22,163,74,.22);background:#f7fdf9;}
.sales-command-tile.warning{border-color:rgba(217,119,6,.22);background:#fffaf0;}
.sales-command-focus{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(260px,.36fr);
  gap:12px;
  align-items:start;
}
.sales-command-focus h3,
.sales-command-playbook h3{
  margin:0 0 10px;
  color:#111827;
  font-size:18px;
  line-height:1.1;
}
.sales-command-list{
  display:grid;
  gap:8px;
}
.sales-command-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(180px,auto) auto;
  gap:10px;
  align-items:center;
  padding:12px;
  border:1px solid rgba(17,24,39,.08);
  border-left:4px solid #d1d5db;
  border-radius:8px;
  background:#fff;
}
.sales-command-row.ready{border-left-color:#16a34a;}
.sales-command-row.hot{border-left-color:#f59e0b;}
.sales-command-row.warning{border-left-color:#d97706;}
.sales-command-row.danger{border-left-color:#dc2626;background:#fff7f7;}
.sales-command-row b a{
  color:#111827;
  text-decoration:none;
}
.sales-command-row small{
  color:#4b5563;
  font-weight:800;
  overflow-wrap:anywhere;
}
.sales-command-playbook{
  display:grid;
  gap:10px;
  padding:14px;
  border:1px solid rgba(17,24,39,.08);
  border-radius:8px;
  background:#111827;
  color:#fff;
}
.sales-command-playbook h3{
  color:#fff;
}
.sales-command-playbook .muted{
  color:rgba(255,255,255,.72)!important;
}
.sales-command-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.sales-command-actions .btn.light{
  background:rgba(255,255,255,.08);
  color:#fff;
  border-color:rgba(255,255,255,.18);
}
.sales-radar-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}
.sales-radar-head h2{
  margin:3px 0 5px;
  font-size:24px;
  line-height:1.05;
}
.sales-radar-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}
.sales-radar-metric{
  display:grid;
  gap:4px;
  min-height:104px;
  padding:14px;
  border:1px solid rgba(17,24,39,.08);
  border-radius:8px;
  background:#fafafa;
  color:#111827;
  text-decoration:none;
}
.sales-radar-metric span{
  color:#6b7280;
  font-size:10px;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.sales-radar-metric b{
  font-size:30px;
  line-height:1;
}
.sales-radar-metric small{
  color:#6b7280;
  font-weight:700;
  line-height:1.25;
}
.sales-radar-metric.hot{
  border-color:rgba(245,158,11,.24);
  background:#fffbeb;
}
.sales-radar-metric.ready{
  border-color:rgba(22,163,74,.22);
  background:#f7fdf9;
}
.sales-radar-metric.danger{
  border-color:rgba(220,38,38,.20);
  background:#fff7f7;
}
.sales-risk-list{
  display:grid;
  gap:8px;
}
.sales-risk-item{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(180px,auto) auto;
  gap:10px;
  align-items:center;
  padding:12px;
  border:1px solid rgba(17,24,39,.08);
  border-left:4px solid #d1d5db;
  border-radius:8px;
  background:#fff;
}
.sales-risk-item.due-overdue{border-left-color:#dc2626;background:#fff7f7;}
.sales-risk-item.due-today{border-left-color:#f59e0b;background:#fffaf0;}
.sales-risk-item b a{
  color:#111827;
  text-decoration:none;
}
.sales-risk-tags{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}
.sales-risk-tags span{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:4px 8px;
  border-radius:999px;
  background:#111827;
  color:#fff;
  font-size:11px;
  font-weight:850;
}
.sales-lead-readiness{
  display:grid;
  gap:8px;
  padding:10px 12px;
  border:1px solid rgba(17,24,39,.08);
  border-radius:8px;
  background:#fafafa;
}
.sales-lead-readiness-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  gap:8px;
  align-items:baseline;
}
.sales-lead-readiness-head span{
  color:#6b7280;
  font-size:10px;
  font-weight:900;
  text-transform:uppercase;
}
.sales-lead-readiness-head b{
  color:#111827;
  font-size:18px;
  line-height:1;
}
.sales-lead-readiness-head small{
  color:#4b5563;
  font-weight:850;
}
.sales-lead-readiness-bar{
  height:8px;
  overflow:hidden;
  border-radius:999px;
  background:rgba(17,24,39,.10);
}
.sales-lead-readiness-bar span{
  display:block;
  height:100%;
  border-radius:999px;
  background:#111827;
}
.readiness-ready .sales-lead-readiness-bar span,
.readiness-done .sales-lead-readiness-bar span{background:#16a34a;}
.readiness-review .sales-lead-readiness-bar span{background:#f59e0b;}
.readiness-missing .sales-lead-readiness-bar span{background:#dc2626;}
.sales-readiness-mini-tags{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}
.sales-readiness-mini-tags span{
  display:inline-flex;
  align-items:center;
  min-height:22px;
  padding:3px 7px;
  border:1px solid rgba(17,24,39,.08);
  border-radius:999px;
  background:#fff;
  color:#4b5563;
  font-size:11px;
  font-weight:800;
}
.sales-next-action{
  display:grid;
  gap:4px;
  padding:12px;
  border:1px solid rgba(17,24,39,.08);
  border-left:4px solid #111827;
  border-radius:8px;
  background:#fff;
}
.sales-next-action span{
  color:#6b7280;
  font-size:10px;
  font-weight:900;
  text-transform:uppercase;
}
.sales-next-action b{
  color:#111827;
  font-size:15px;
  line-height:1.15;
}
.sales-next-action small{
  color:#4b5563;
  font-weight:650;
  line-height:1.35;
}
.sales-next-action.action-ready,
.sales-next-action.action-done{
  border-left-color:#16a34a;
  background:#f7fdf9;
}
.sales-next-action.action-today,
.sales-next-action.action-budget,
.sales-next-action.action-schedule{
  border-left-color:#f59e0b;
  background:#fffaf0;
}
.sales-next-action.action-overdue,
.sales-next-action.action-missing{
  border-left-color:#dc2626;
  background:#fff7f7;
}
.sales-next-action.action-contact{
  border-left-color:#2563eb;
  background:#eff6ff;
}
.sales-contact-pulse{
  display:grid;
  gap:4px;
  padding:12px;
  border:1px solid rgba(17,24,39,.08);
  border-left:4px solid #16a34a;
  border-radius:8px;
  background:#f7fdf9;
}
.sales-contact-pulse span{
  color:#6b7280;
  font-size:10px;
  font-weight:900;
  text-transform:uppercase;
}
.sales-contact-pulse b{
  color:#111827;
  font-size:15px;
  line-height:1.15;
}
.sales-contact-pulse small{
  color:#4b5563;
  font-weight:650;
  line-height:1.35;
}
.sales-contact-pulse.pulse-watch{
  border-left-color:#f59e0b;
  background:#fffaf0;
}
.sales-contact-pulse.pulse-stale,
.sales-contact-pulse.pulse-missing{
  border-left-color:#dc2626;
  background:#fff7f7;
}
.sales-contact-kpi.pulse-fresh b{
  color:#15803d;
}
.sales-contact-kpi.pulse-watch b{
  color:#b45309;
}
.sales-contact-kpi.pulse-stale b,
.sales-contact-kpi.pulse-missing b{
  color:#dc2626;
}
.sales-toolbar{
  gap:12px;
}
.sales-selected-pill{
  display:inline-flex;
  align-items:center;
  gap:5px;
  min-height:34px;
  padding:0 12px;
  border-radius:8px;
  background:#111827;
  color:#fff;
  font-size:12px;
  font-weight:800;
}
.sales-lead-list{
  display:grid;
  gap:12px;
  margin-top:16px;
}
.sales-lead-card{
  position:relative;
  display:grid;
  gap:14px;
  padding:16px;
  border:1px solid rgba(17,24,39,.08);
  border-left:5px solid #d1d5db;
  border-radius:8px;
  background:#fff;
  box-shadow:0 12px 30px rgba(15,23,42,.06);
}
.sales-lead-card.priority-high{border-left-color:#f59e0b;}
.sales-lead-card.priority-urgent{border-left-color:#dc2626;}
.sales-lead-card.status-won{border-left-color:#16a34a;}
.sales-lead-card.status-lost,
.sales-lead-card.status-archived{opacity:.82;}
.sales-lead-card.due-overdue{background:#fff7f7;}
.sales-lead-card.due-today{background:#fffaf0;}
.sales-lead-card.readiness-ready{border-left-color:#16a34a;}
.sales-lead-card.readiness-missing{border-left-color:#dc2626;}
.sales-lead-card.readiness-review{border-left-color:#f59e0b;}
.sales-select-control{
  position:absolute;
  top:14px;
  right:14px;
}
.sales-lead-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:14px;
  align-items:start;
  padding-right:120px;
}
.sales-lead-head h2{
  margin:3px 0 5px;
  font-size:24px;
  line-height:1.05;
}
.sales-lead-head h2 a{
  color:#111827;
  text-decoration:none;
}
.sales-lead-state{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:6px;
}
.sales-status-pill.status-new{background:#eef2ff;color:#3730a3;}
.sales-status-pill.status-contacted,
.sales-status-pill.status-info{background:#eff6ff;color:#1d4ed8;}
.sales-status-pill.status-budget,
.sales-status-pill.status-waiting,
.sales-status-pill.status-follow{background:#fff7ed;color:#b45309;}
.sales-status-pill.status-interested,
.sales-status-pill.status-deposit{background:#f0fdf4;color:#15803d;}
.sales-status-pill.status-won{background:#dcfce7;color:#166534;}
.sales-status-pill.status-lost,
.sales-status-pill.status-archived{background:#f3f4f6;color:#4b5563;}
.sales-lead-meta,
.sales-profile-list{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(170px,1fr));
  gap:10px;
}
.sales-lead-meta span,
.sales-profile-list div{
  display:grid;
  gap:3px;
  padding:10px;
  border:1px solid rgba(17,24,39,.08);
  border-radius:8px;
  background:#fafafa;
}
.sales-lead-meta b,
.sales-profile-list dt{
  margin:0;
  color:#6b7280;
  font-size:10px;
  font-weight:900;
  text-transform:uppercase;
}
.sales-profile-list dd{
  margin:0;
  font-weight:800;
  color:#111827;
}
.sales-lead-note,
.sales-note-block{
  margin:0;
  padding:12px;
  border-radius:8px;
  background:#f8f4ec;
  color:#374151;
  line-height:1.45;
}
.sales-note-block.warning{
  background:#fff7ed;
  border:1px solid rgba(180,83,9,.18);
}
.sales-quick-note{
  border:1px solid rgba(17,24,39,.08);
  border-radius:8px;
  background:#fafafa;
}
.sales-quick-note summary{
  cursor:pointer;
  padding:10px 12px;
  color:#111827;
  font-size:12px;
  font-weight:900;
  list-style:none;
}
.sales-quick-note summary::-webkit-details-marker{
  display:none;
}
.sales-quick-note summary::after{
  content:'+';
  float:right;
  color:#6b7280;
  font-weight:900;
}
.sales-quick-note[open] summary::after{
  content:'-';
}
.sales-quick-note form{
  display:grid;
  gap:10px;
  padding:0 12px 12px;
}
.sales-quick-note-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.sales-quick-note label{
  display:grid;
  gap:4px;
  color:#6b7280;
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
}
.sales-quick-note select,
.sales-quick-note textarea{
  width:100%;
  border:1px solid rgba(17,24,39,.12);
  border-radius:8px;
  background:#fff;
  color:#111827;
  font:600 13px/1.35 Inter,system-ui,sans-serif;
}
.sales-quick-note select{
  min-height:36px;
  padding:0 10px;
}
.sales-quick-note textarea{
  resize:vertical;
  min-height:58px;
  padding:10px;
}
.sales-actions{
  justify-content:flex-start;
}
.sales-lead-bulk-form{
  margin:10px 0 16px;
}
.sales-owner-strip{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  margin:12px 0 14px;
  padding:10px;
  border:1px solid rgba(17,24,39,.08);
  border-radius:8px;
  background:#fbfaf7;
}
.sales-owner-strip > span{
  color:#6b7280;
  font-size:10px;
  font-weight:900;
  text-transform:uppercase;
}
.sales-owner-chip{
  display:inline-grid;
  gap:2px;
  min-height:42px;
  padding:7px 10px;
  border:1px solid rgba(17,24,39,.10);
  border-radius:8px;
  background:#fff;
  color:#111827;
  text-align:left;
  cursor:pointer;
}
.sales-owner-chip b{
  font-size:12px;
  line-height:1.1;
}
.sales-owner-chip small{
  color:#6b7280;
  font-size:10px;
  font-weight:800;
}
.sales-owner-chip.active{
  border-color:#111827;
  background:#111827;
  color:#fff;
}
.sales-owner-chip.active small{
  color:rgba(255,255,255,.72);
}
.sales-bulk-fields{
  display:grid;
  grid-template-columns:minmax(160px,220px) minmax(145px,170px) minmax(240px,1fr);
  gap:8px;
  align-items:end;
}
.sales-bulk-fields label{
  display:grid;
  gap:4px;
  margin:0;
  color:#6b7280;
  font-size:10px;
  font-weight:900;
  text-transform:uppercase;
}
.sales-bulk-fields input,
.sales-bulk-fields textarea{
  min-height:34px;
  margin:0;
  padding:0 10px;
  border-radius:8px;
  font-size:13px;
  font-weight:700;
}
.sales-bulk-fields textarea{
  min-height:38px;
  padding:8px 10px;
  resize:vertical;
}
.sales-bulk-note-field{
  min-width:0;
}
.sales-call-mode-card{
  display:grid;
  gap:14px;
  margin:18px 0;
  border-radius:8px;
  border-color:rgba(17,24,39,.10);
  background:#fff;
}
.sales-call-mode-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:14px;
  align-items:start;
}
.sales-call-mode-head h2{
  margin:3px 0 5px;
  color:#111827;
  font-size:24px;
  line-height:1.08;
}
.sales-call-mode-grid{
  display:grid;
  grid-template-columns:minmax(260px,.9fr) minmax(320px,1.1fr);
  gap:12px;
  align-items:stretch;
}
.sales-call-checklist,
.sales-call-action-panel{
  display:grid;
  gap:10px;
  padding:14px;
  border:1px solid rgba(17,24,39,.08);
  border-radius:8px;
  background:#fafafa;
}
.sales-call-checklist b,
.sales-call-action-panel b{
  color:#111827;
  font-size:13px;
}
.sales-call-checklist ul{
  display:grid;
  gap:8px;
  margin:0;
  padding-left:18px;
  color:#4b5563;
  font-weight:650;
  line-height:1.35;
}
.sales-call-action-grid{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.sales-call-action{
  min-height:36px;
}
.sales-readiness-card{
  display:grid;
  gap:14px;
  margin:18px 0;
  border-radius:8px;
  border-color:rgba(17,24,39,.10);
  background:#fff;
}
.sales-readiness-card.readiness-ready{
  border-color:rgba(22,163,74,.24);
  background:#f7fdf9;
}
.sales-readiness-card.readiness-review{
  border-color:rgba(245,158,11,.26);
  background:#fffbeb;
}
.sales-readiness-card.readiness-blocked,
.sales-readiness-card.readiness-missing{
  border-color:rgba(220,38,38,.22);
  background:#fff7f7;
}
.sales-readiness-card.readiness-done{
  border-color:rgba(37,99,235,.22);
  background:#eff6ff;
}
.sales-readiness-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:start;
}
.sales-readiness-head h2{
  margin:3px 0 5px;
  font-size:24px;
  line-height:1.08;
}
.sales-readiness-score{
  display:grid;
  justify-items:end;
  gap:3px;
  min-width:116px;
  padding:12px 14px;
  border:1px solid rgba(17,24,39,.08);
  border-radius:8px;
  background:#fff;
}
.sales-readiness-score b{
  color:#111827;
  font-size:34px;
  line-height:1;
}
.sales-readiness-score span{
  color:#4b5563;
  font-size:12px;
  font-weight:850;
}
.sales-readiness-bar{
  height:10px;
  overflow:hidden;
  border-radius:999px;
  background:rgba(17,24,39,.10);
}
.sales-readiness-bar span{
  display:block;
  height:100%;
  border-radius:999px;
  background:#111827;
}
.readiness-ready .sales-readiness-bar span,
.readiness-done .sales-readiness-bar span{background:#16a34a;}
.readiness-review .sales-readiness-bar span{background:#f59e0b;}
.readiness-blocked .sales-readiness-bar span,
.readiness-missing .sales-readiness-bar span{background:#dc2626;}
.sales-readiness-summary{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.sales-readiness-summary span{
  display:inline-grid;
  grid-template-columns:auto auto;
  gap:6px;
  align-items:baseline;
  min-height:32px;
  padding:6px 10px;
  border:1px solid rgba(17,24,39,.08);
  border-radius:8px;
  background:#fff;
}
.sales-readiness-summary b{
  color:#111827;
  font-size:17px;
  line-height:1;
}
.sales-readiness-summary small{
  color:#6b7280;
  font-weight:800;
}
.sales-readiness-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(210px,1fr));
  gap:10px;
}
.sales-readiness-check{
  display:grid;
  gap:4px;
  min-height:88px;
  padding:12px;
  border:1px solid rgba(17,24,39,.08);
  border-left:4px solid #d1d5db;
  border-radius:8px;
  background:#fff;
}
.sales-readiness-check.status-ok{border-left-color:#16a34a;}
.sales-readiness-check.status-review{border-left-color:#f59e0b;background:#fffaf0;}
.sales-readiness-check.status-missing{border-left-color:#dc2626;background:#fff7f7;}
.sales-readiness-check span{
  color:#6b7280;
  font-size:10px;
  font-weight:900;
  text-transform:uppercase;
}
.sales-readiness-check b{
  color:#111827;
  font-size:14px;
  line-height:1.15;
}
.sales-readiness-check small{
  color:#4b5563;
  font-weight:650;
  line-height:1.3;
}
.sales-message-card{
  display:grid;
  gap:14px;
  margin:18px 0;
  border-radius:8px;
}
.sales-message-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.sales-message-template{
  display:grid;
  gap:9px;
  padding:14px;
  border:1px solid rgba(17,24,39,.08);
  border-radius:8px;
  background:#fff;
}
.sales-message-template h3{
  margin:0;
  font-size:16px;
  line-height:1.15;
}
.sales-message-template pre{
  margin:0;
  min-height:176px;
  max-height:260px;
  overflow:auto;
  padding:12px;
  border-radius:8px;
  background:#f8fafc;
  color:#111827;
  white-space:pre-wrap;
  font:600 13px/1.45 Inter,system-ui,sans-serif;
}
.sales-duplicate-card{
  display:grid;
  gap:14px;
  margin:18px 0;
  border-radius:8px;
  border-color:rgba(245,158,11,.26);
  background:#fffbeb;
}
.sales-duplicate-card.blocked{
  border-color:rgba(220,38,38,.24);
  background:#fff7f7;
}
.sales-duplicate-group{
  display:grid;
  gap:8px;
}
.sales-duplicate-group h3{
  margin:0;
  font-size:15px;
}
.sales-duplicate-item{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(160px,auto) auto;
  gap:10px;
  align-items:center;
  padding:12px;
  border:1px solid rgba(17,24,39,.08);
  border-radius:8px;
  background:#fff;
}
.sales-duplicate-item b a{
  color:#111827;
  text-decoration:none;
}
.sales-duplicate-force{
  display:flex;
  justify-content:flex-end;
  margin:0;
}
.sales-form-summary{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin:18px 0;
}
.sales-form-summary div{
  display:grid;
  gap:5px;
  padding:12px;
  border:1px solid rgba(17,24,39,.08);
  border-radius:8px;
  background:#fafafa;
}
.sales-form-summary span{
  color:#6b7280;
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
}
.sales-form-summary b{
  color:#111827;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.sales-detail-layout{
  display:grid;
  grid-template-columns:minmax(280px,.9fr) minmax(360px,1.1fr);
  gap:16px;
  align-items:start;
}
.sales-profile-card,
.sales-actions-card,
.sales-task-card,
.sales-history-card,
.sales-board-card{
  border-radius:8px;
}
.sales-quick-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:14px;
}
.sales-quick-actions form,
.sales-actions form,
.sales-detail-hero form,
.sales-task-row form{
  display:inline-flex;
  margin:0;
}
.sales-note-form{
  display:grid;
  gap:12px;
}
.sales-task-list,
.sales-history-list{
  display:grid;
  gap:10px;
  margin-top:16px;
}
.sales-task-row,
.sales-history-item{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:12px;
  align-items:start;
  padding:14px;
  border:1px solid rgba(17,24,39,.08);
  border-left:4px solid #d1d5db;
  border-radius:8px;
  background:#fff;
}
.sales-task-row.due-overdue{border-left-color:#dc2626;background:#fff7f7;}
.sales-task-row.due-today{border-left-color:#f59e0b;background:#fffaf0;}
.sales-task-row.due-done{border-left-color:#16a34a;}
.sales-task-row p,
.sales-history-item p{
  margin:8px 0 0;
  color:#374151;
  line-height:1.45;
}
.sales-history-item{
  grid-template-columns:auto minmax(0,1fr) auto;
}
.sales-followup-bulk-form{
  margin:10px 0 16px;
}
.sales-followup-list{
  display:grid;
  gap:12px;
  margin-top:16px;
}
.sales-followup-row{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:12px;
  padding:16px;
  border:1px solid rgba(17,24,39,.08);
  border-left:5px solid #d1d5db;
  border-radius:8px;
  background:#fff;
  box-shadow:0 12px 30px rgba(15,23,42,.06);
}
.sales-followup-row.priority-high{border-left-color:#f59e0b;}
.sales-followup-row.priority-urgent{border-left-color:#dc2626;}
.sales-followup-row.due-overdue{background:#fff7f7;}
.sales-followup-row.due-today{background:#fffaf0;}
.sales-followup-row.status-done{opacity:.72;}
.sales-followup-main{
  display:grid;
  gap:6px;
  padding-right:118px;
}
.sales-followup-main h2{
  margin:0;
  font-size:23px;
  line-height:1.08;
}
.sales-followup-side{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:6px;
}
.sales-followup-select-control{
  position:absolute;
  top:14px;
  right:14px;
}
.sales-followup-meta,
.sales-followup-row .sales-actions{
  grid-column:1 / -1;
}
.sales-briefing-grid{
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr);
  gap:16px;
  align-items:start;
  margin:18px 0;
}
.sales-briefing-aside{
  display:grid;
  gap:16px;
}
.sales-briefing-card,
.sales-briefing-copy-card{
  display:grid;
  gap:14px;
  border-radius:8px;
}
.sales-briefing-card h2,
.sales-briefing-copy-card h2{
  margin:3px 0 5px;
  font-size:24px;
  line-height:1.06;
}
.sales-briefing-list{
  display:grid;
  gap:12px;
}
.sales-briefing-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(190px,auto);
  gap:12px;
  padding:14px;
  border:1px solid rgba(17,24,39,.08);
  border-left:5px solid #d1d5db;
  border-radius:8px;
  background:#fff;
  box-shadow:0 12px 30px rgba(15,23,42,.06);
}
.sales-briefing-row.priority-high{border-left-color:#f59e0b;}
.sales-briefing-row.priority-urgent,
.sales-briefing-row.due-overdue{border-left-color:#dc2626;background:#fff7f7;}
.sales-briefing-row.due-today{border-left-color:#f59e0b;background:#fffaf0;}
.sales-briefing-row.status-done{opacity:.7;}
.sales-briefing-main{
  display:grid;
  gap:6px;
}
.sales-briefing-main h3,
.sales-briefing-lead-card h3{
  margin:0;
  color:#111827;
  font-size:21px;
  line-height:1.08;
}
.sales-briefing-main h3 a,
.sales-briefing-lead-card h3 a{
  color:#111827;
  text-decoration:none;
}
.sales-briefing-side{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:6px;
}
.sales-briefing-meta,
.sales-briefing-row .sales-actions{
  grid-column:1 / -1;
}
.sales-briefing-owner-grid{
  display:grid;
  gap:8px;
}
.sales-briefing-owner{
  display:grid;
  gap:3px;
  padding:11px 12px;
  border:1px solid rgba(17,24,39,.08);
  border-radius:8px;
  background:#fff;
  color:#111827;
  text-decoration:none;
}
.sales-briefing-owner b{
  font-size:14px;
  line-height:1.1;
}
.sales-briefing-owner span{
  color:#111827;
  font-weight:900;
}
.sales-briefing-owner small{
  color:#6b7280;
  font-weight:750;
}
.sales-briefing-copy-card pre{
  max-height:360px;
  overflow:auto;
  margin:0;
  padding:12px;
  border:1px solid rgba(17,24,39,.08);
  border-radius:8px;
  background:#f8fafc;
  color:#111827;
  white-space:pre-wrap;
  font:650 12px/1.45 Inter,system-ui,sans-serif;
}
.sales-briefing-lead-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.sales-briefing-lead-card{
  display:grid;
  align-content:start;
  gap:12px;
  padding:14px;
  border:1px solid rgba(17,24,39,.08);
  border-left:5px solid #d1d5db;
  border-radius:8px;
  background:#fff;
  box-shadow:0 12px 30px rgba(15,23,42,.05);
}
.sales-briefing-lead-card.readiness-ready{border-left-color:#16a34a;background:#f7fdf9;}
.sales-briefing-lead-card.readiness-review{border-left-color:#f59e0b;background:#fffaf0;}
.sales-briefing-lead-card.readiness-missing{border-left-color:#dc2626;background:#fff7f7;}
.sales-briefing-lead-card .sales-lead-meta{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.sales-funnel-card{
  margin:18px 0;
}
.sales-briefing-insight-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}
.sales-insight-panel{
  display:grid;
  gap:10px;
  min-width:0;
  padding:14px;
  border:1px solid rgba(17,24,39,.08);
  border-radius:8px;
  background:#fbfaf7;
}
.sales-insight-panel h3{
  margin:0;
  color:#111827;
  font-size:17px;
  line-height:1.1;
}
.sales-insight-list{
  display:grid;
  gap:7px;
}
.sales-insight-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:4px 10px;
  align-items:center;
  padding:10px;
  border:1px solid rgba(17,24,39,.08);
  border-radius:8px;
  background:#fff;
  color:#111827;
  text-decoration:none;
}
.sales-insight-row span{
  display:grid;
  min-width:0;
  gap:2px;
}
.sales-insight-row b{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:13px;
  line-height:1.1;
}
.sales-insight-row small{
  color:#6b7280;
  font-weight:750;
  line-height:1.25;
}
.sales-insight-row strong{
  color:#111827;
  font-size:20px;
  line-height:1;
}
.sales-insight-row em{
  grid-column:1 / -1;
  color:#4b5563;
  font-size:12px;
  font-style:normal;
  font-weight:900;
}
.sales-rescue-board{
  display:grid;
  gap:14px;
}
.sales-rescue-bulk-form{
  margin:10px 0 16px;
}
.sales-rescue-list{
  display:grid;
  gap:14px;
  margin-top:16px;
}
.sales-rescue-card{
  position:relative;
  display:grid;
  gap:14px;
  padding:16px;
  border:1px solid rgba(17,24,39,.08);
  border-left:5px solid #d1d5db;
  border-radius:8px;
  background:#fff;
  box-shadow:0 14px 34px rgba(15,23,42,.06);
}
.sales-rescue-card.rescue-danger{
  border-left-color:#dc2626;
  background:#fff7f7;
}
.sales-rescue-card.rescue-warning{
  border-left-color:#f59e0b;
  background:#fffaf0;
}
.sales-rescue-card.rescue-ready{
  border-left-color:#16a34a;
  background:#f7fdf9;
}
.sales-rescue-card.rescue-review{
  border-left-color:#64748b;
}
.sales-rescue-card.due-overdue{
  box-shadow:0 16px 38px rgba(220,38,38,.10);
}
.sales-rescue-select-control{
  position:absolute;
  top:14px;
  right:14px;
}
.sales-rescue-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:12px;
  align-items:start;
  padding-right:118px;
}
.sales-rescue-head h2{
  margin:0;
  color:#111827;
  font-size:25px;
  line-height:1.06;
}
.sales-rescue-head h2 a{
  color:#111827;
  text-decoration:none;
}
.sales-rescue-state{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:6px;
}
.sales-rescue-playbook{
  display:grid;
  grid-template-columns:1.25fr 1fr 1fr;
  gap:10px;
}
.sales-rescue-playbook > div{
  display:grid;
  align-content:start;
  gap:5px;
  min-height:92px;
  padding:12px;
  border:1px solid rgba(17,24,39,.08);
  border-radius:8px;
  background:rgba(255,255,255,.82);
}
.sales-rescue-playbook span,
.sales-rescue-script span{
  color:#6b7280;
  font-size:10px;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.sales-rescue-playbook b{
  color:#111827;
  font-size:14px;
  line-height:1.2;
}
.sales-rescue-playbook small{
  color:#4b5563;
  font-weight:700;
  line-height:1.35;
}
.sales-rescue-script{
  display:grid;
  gap:8px;
  padding:12px;
  border:1px solid rgba(17,24,39,.08);
  border-radius:8px;
  background:#f8fafc;
}
.sales-rescue-script pre{
  max-height:220px;
  overflow:auto;
  margin:0;
  color:#111827;
  white-space:pre-wrap;
  font:650 13px/1.45 Inter,system-ui,sans-serif;
}
.sales-rescue-meta{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.sales-plan-board{
  display:grid;
  gap:14px;
}
.sales-plan-bulk-form{
  margin:10px 0 16px;
}
.sales-plan-layout{
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr);
  gap:16px;
  align-items:start;
}
.sales-plan-days,
.sales-plan-aside{
  display:grid;
  gap:14px;
}
.sales-plan-day,
.sales-plan-aside-card{
  display:grid;
  gap:12px;
  border-radius:8px;
}
.sales-plan-day{
  padding:14px;
  border:1px solid rgba(17,24,39,.08);
  background:#fff;
  box-shadow:0 12px 30px rgba(15,23,42,.05);
}
.sales-plan-day.day-danger{
  border-left:5px solid #dc2626;
  background:#fff7f7;
}
.sales-plan-day.day-today{
  border-left:5px solid #f59e0b;
  background:#fffaf0;
}
.sales-plan-day.day-warning{
  border-left:5px solid #64748b;
  background:#f8fafc;
}
.sales-plan-day-head{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:flex-start;
}
.sales-plan-day-head h2{
  margin:3px 0 0;
  color:#111827;
  font-size:24px;
  line-height:1.08;
}
.sales-plan-day-stats{
  display:grid;
  justify-items:end;
  gap:2px;
  min-width:90px;
  padding:10px 12px;
  border:1px solid rgba(17,24,39,.08);
  border-radius:8px;
  background:rgba(255,255,255,.86);
}
.sales-plan-day-stats b{
  color:#111827;
  font-size:26px;
  line-height:1;
}
.sales-plan-day-stats small{
  color:#6b7280;
  font-size:11px;
  font-weight:900;
}
.sales-plan-task-list{
  display:grid;
  gap:10px;
}
.sales-plan-task{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(190px,auto);
  gap:10px 12px;
  padding:13px;
  border:1px solid rgba(17,24,39,.08);
  border-left:4px solid #d1d5db;
  border-radius:8px;
  background:#fff;
}
.sales-plan-task.priority-high{border-left-color:#f59e0b;}
.sales-plan-task.priority-urgent,
.sales-plan-task.due-overdue{border-left-color:#dc2626;}
.sales-plan-task.due-today{border-left-color:#f59e0b;}
.sales-plan-task.status-done{
  opacity:.72;
}
.sales-plan-select-control{
  position:absolute;
  top:12px;
  right:12px;
}
.sales-plan-task-main{
  display:grid;
  gap:6px;
  padding-right:118px;
}
.sales-plan-task-main h3{
  margin:0;
  color:#111827;
  font-size:18px;
  line-height:1.12;
}
.sales-plan-task-main h3 a{
  color:#111827;
  text-decoration:none;
}
.sales-plan-task-side{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:6px;
}
.sales-plan-meta,
.sales-plan-task .sales-actions{
  grid-column:1 / -1;
}
.sales-plan-meta{
  grid-template-columns:repeat(5,minmax(0,1fr));
}
.sales-plan-stat-list{
  display:grid;
  gap:8px;
}
.sales-plan-stat-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:4px 10px;
  align-items:center;
  padding:10px;
  border:1px solid rgba(17,24,39,.08);
  border-radius:8px;
  background:#fff;
}
.sales-plan-stat-row span{
  display:grid;
  min-width:0;
  gap:2px;
}
.sales-plan-stat-row b{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#111827;
  font-size:13px;
}
.sales-plan-stat-row small{
  color:#6b7280;
  font-weight:750;
  line-height:1.25;
}
.sales-plan-stat-row strong{
  color:#111827;
  font-size:22px;
  line-height:1;
}
.sales-plan-stat-row em{
  grid-column:1 / -1;
  color:#4b5563;
  font-size:12px;
  font-style:normal;
  font-weight:900;
}
@media (max-width:980px){
  .sales-radar-head,
  .sales-readiness-head,
  .sales-call-mode-head,
  .sales-call-mode-grid,
  .sales-detail-layout,
  .sales-lead-head,
  .sales-followup-row,
  .sales-briefing-grid,
  .sales-briefing-row,
  .sales-rescue-head,
  .sales-plan-layout,
  .sales-plan-task{
    grid-template-columns:1fr;
  }
  .sales-lead-head{
    padding-right:0;
  }
  .sales-rescue-head{
    padding-right:0;
  }
  .sales-followup-main{
    padding-right:0;
  }
  .sales-plan-task-main{
    padding-right:0;
  }
  .sales-select-control{
    position:static;
    justify-self:start;
    order:-1;
  }
  .sales-followup-select-control{
    position:static;
    justify-self:start;
  }
  .sales-rescue-select-control{
    position:static;
    justify-self:start;
    order:-1;
  }
  .sales-plan-select-control{
    position:static;
    justify-self:start;
    order:-1;
  }
  .sales-lead-state{
    align-items:flex-start;
  }
  .sales-followup-side{
    align-items:flex-start;
  }
  .sales-briefing-side{
    align-items:flex-start;
  }
  .sales-rescue-state{
    align-items:flex-start;
  }
  .sales-plan-task-side{
    align-items:flex-start;
  }
  .sales-readiness-score{
    justify-items:start;
  }
  .sales-form-summary{
    grid-template-columns:1fr;
  }
  .sales-message-grid{
    grid-template-columns:1fr;
  }
  .sales-command-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .sales-command-focus{
    grid-template-columns:1fr;
  }
  .sales-command-row{
    grid-template-columns:1fr;
  }
  .sales-radar-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .sales-briefing-lead-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .sales-briefing-insight-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .sales-rescue-playbook,
  .sales-rescue-meta,
  .sales-plan-meta{
    grid-template-columns:1fr;
  }
  .sales-risk-item{
    grid-template-columns:1fr;
  }
  .sales-duplicate-item{
    grid-template-columns:1fr;
  }
  .sales-duplicate-force{
    justify-content:flex-start;
  }
  .sales-task-row,
  .sales-history-item{
    grid-template-columns:1fr;
  }
}
@media (max-width:620px){
  .sales-command-head{
    display:grid;
  }
  .sales-command-grid{
    grid-template-columns:1fr;
  }
  .sales-radar-grid{
    grid-template-columns:1fr;
  }
  .sales-briefing-lead-grid{
    grid-template-columns:1fr;
  }
  .sales-briefing-insight-grid{
    grid-template-columns:1fr;
  }
  .sales-rescue-playbook,
  .sales-rescue-meta,
  .sales-plan-meta{
    grid-template-columns:1fr;
  }
  .sales-plan-day-head{
    display:grid;
  }
  .sales-plan-day-stats{
    justify-items:start;
  }
  .sales-briefing-lead-card .sales-lead-meta{
    grid-template-columns:1fr;
  }
  .sales-lead-readiness-head{
    grid-template-columns:1fr auto;
  }
  .sales-lead-readiness-head small{
    grid-column:1 / -1;
  }
  .sales-quick-note-grid{
    grid-template-columns:1fr;
  }
  .sales-bulk-fields{
    width:100%;
    grid-template-columns:1fr;
  }
  .sales-call-action-grid{
    display:grid;
    grid-template-columns:1fr;
  }
}

/* V41.30 - Pipeline comercial de cierre */
.sales-pipeline-layout{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);
  gap:16px;
  align-items:start;
  margin-bottom:16px;
}
.sales-pipeline-panel{
  display:grid;
  gap:14px;
}
.sales-pipeline-side{
  display:grid;
  gap:16px;
}
.sales-pipeline-months,
.sales-pipeline-stat-list,
.sales-pipeline-list{
  display:grid;
  gap:10px;
}
.sales-pipeline-month,
.sales-pipeline-stat-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:6px 12px;
  align-items:center;
  padding:12px;
  border:1px solid rgba(17,24,39,.08);
  border-radius:8px;
  background:#fff;
  color:#111827;
  text-align:left;
  text-decoration:none;
}
button.sales-pipeline-stat-row{
  width:100%;
  font:inherit;
  cursor:pointer;
}
.sales-pipeline-month span,
.sales-pipeline-stat-row span{
  display:grid;
  gap:2px;
  min-width:0;
}
.sales-pipeline-month b,
.sales-pipeline-stat-row b{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#111827;
  font-size:14px;
}
.sales-pipeline-month small,
.sales-pipeline-stat-row small{
  color:#6b7280;
  font-size:12px;
  font-weight:750;
  line-height:1.25;
}
.sales-pipeline-month strong,
.sales-pipeline-stat-row strong{
  color:#111827;
  font-size:20px;
  line-height:1;
}
.sales-pipeline-month em{
  grid-column:1 / -1;
  height:8px;
  overflow:hidden;
  border-radius:999px;
  background:rgba(17,24,39,.10);
}
.sales-pipeline-stat-row em{
  grid-column:1 / -1;
  color:#4b5563;
  font-size:12px;
  font-style:normal;
  font-weight:900;
}
.sales-pipeline-month em i{
  display:block;
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg,#111827,#16a34a);
}
.sales-pipeline-card{
  position:relative;
  display:grid;
  grid-template-columns:118px minmax(0,1fr) minmax(230px,.42fr);
  gap:14px;
  align-items:start;
  padding:16px;
  border:1px solid rgba(17,24,39,.08);
  border-left:5px solid #d1d5db;
  border-radius:8px;
  background:#fff;
  box-shadow:0 12px 30px rgba(15,23,42,.06);
}
.sales-pipeline-card.risk-danger{
  border-left-color:#dc2626;
  background:#fff7f7;
}
.sales-pipeline-card.risk-warning,
.sales-pipeline-card.risk-watch{
  border-left-color:#f59e0b;
  background:#fffaf0;
}
.sales-pipeline-card.priority-high{border-left-color:#f59e0b;}
.sales-pipeline-card.priority-urgent{border-left-color:#dc2626;}
.sales-pipeline-select-control{
  position:absolute;
  top:12px;
  right:12px;
}
.sales-pipeline-score{
  display:grid;
  justify-items:center;
  gap:3px;
  padding:14px 10px;
  border:1px solid rgba(17,24,39,.08);
  border-radius:8px;
  background:#f8fafc;
}
.sales-pipeline-score b{
  color:#111827;
  font-size:34px;
  line-height:1;
}
.sales-pipeline-score span{
  color:#6b7280;
  font-size:10px;
  font-weight:900;
  text-transform:uppercase;
}
.sales-pipeline-score small{
  color:#4b5563;
  font-size:12px;
  font-weight:850;
  text-align:center;
}
.sales-pipeline-main{
  display:grid;
  gap:8px;
  padding-right:110px;
}
.sales-pipeline-main h2{
  margin:0;
  color:#111827;
  font-size:24px;
  line-height:1.05;
}
.sales-pipeline-main h2 a{
  color:#111827;
  text-decoration:none;
}
.sales-pipeline-sidebox{
  display:grid;
  grid-template-columns:1fr;
  gap:8px;
}
.sales-pipeline-sidebox span{
  display:grid;
  gap:2px;
  padding:9px 10px;
  border:1px solid rgba(17,24,39,.08);
  border-radius:8px;
  background:#fff;
  color:#111827;
  font-size:13px;
  font-weight:850;
}
.sales-pipeline-sidebox b{
  color:#6b7280;
  font-size:10px;
  font-weight:900;
  text-transform:uppercase;
}
.sales-pipeline-card .sales-next-action,
.sales-pipeline-card .sales-actions{
  grid-column:1 / -1;
}
.sales-pipeline-bulk-form{
  margin-bottom:14px;
}
@media (max-width:980px){
  .sales-pipeline-layout,
  .sales-pipeline-card{
    grid-template-columns:1fr;
  }
  .sales-pipeline-main{
    padding-right:0;
  }
  .sales-pipeline-select-control{
    position:static;
    justify-self:start;
    order:-1;
  }
  .sales-pipeline-sidebox{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (max-width:620px){
  .sales-pipeline-sidebox{
    grid-template-columns:1fr;
  }
  .sales-pipeline-month,
  .sales-pipeline-stat-row{
    grid-template-columns:1fr;
  }
  .sales-pipeline-score{
    justify-items:start;
  }
}

/* V41.31 - Auditoria Super Admin de actividad de usuarios */
.user-activity-hero{
  background:linear-gradient(135deg,#111827 0%,#263238 58%,#b99655 145%)!important;
}
.user-activity-timezone{
  margin-top:10px;
  display:inline-flex;
  max-width:100%;
  padding:7px 10px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:8px;
  background:rgba(255,255,255,.08);
  color:rgba(255,255,255,.78)!important;
  font-weight:850;
}
.user-activity-kpis .kpi-card b{
  font-size:34px;
}
.user-audit-summary{
  margin:18px 0;
  background:linear-gradient(135deg,#ffffff 0%,#f9fafb 54%,#f3eadb 100%);
}
.user-audit-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:12px;
}
.user-audit-grid > div{
  display:grid;
  gap:5px;
  padding:14px;
  border:1px solid rgba(17,24,39,.08);
  border-radius:8px;
  background:#fff;
}
.user-audit-grid span,
.activity-alert-card span{
  color:#6b7280;
  font-size:10px;
  font-weight:950;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.user-audit-grid b{
  color:#111827;
  font-size:28px;
  line-height:1;
}
.user-audit-grid small{
  color:#4b5563;
  font-size:12px;
  font-weight:800;
  line-height:1.35;
}
.user-audit-grid .audit-hash{
  font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
  font-size:18px;
  overflow-wrap:anywhere;
}
.user-activity-filter{
  margin:18px 0;
}
.user-activity-filter .notification-toolbar{
  align-items:center;
}
.user-activity-day-filter{
  display:grid;
  gap:5px;
  margin:0;
}
.user-activity-day-filter span{
  color:#6E6E73;
  font-size:10px;
  font-weight:950;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.user-activity-day-filter input{
  min-height:38px;
  width:150px;
  border:1px solid rgba(17,24,39,.12);
  border-radius:8px;
  background:#fff;
  color:#111827;
  font-weight:850;
  padding:0 10px;
}
.user-activity-pdf-card{
  margin:16px 0;
  background:#fffdf7;
}
.user-activity-pdf-form{
  display:grid;
  grid-template-columns:minmax(160px,220px) minmax(180px,240px) auto;
  gap:12px;
  align-items:end;
}
.user-activity-pdf-form label{
  display:grid;
  gap:6px;
  margin:0;
}
.user-activity-pdf-form label span{
  color:#6E6E73;
  font-size:11px;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.user-activity-pdf-form input,
.user-activity-pdf-form select{
  width:100%;
  min-height:42px;
  border:1px solid rgba(17,24,39,.12);
  border-radius:8px;
  background:#fff;
  color:#111827;
  font-weight:800;
  padding:0 12px;
}
.daily-user-panel{
  margin-bottom:16px;
}
.daily-user-table{
  min-width:1040px;
}
.daily-user-row{
  cursor:pointer;
  transition:background .15s ease, box-shadow .15s ease;
}
.daily-user-row:hover td{
  background:#fffaf0;
}
.daily-user-row:focus-visible td{
  outline:2px solid rgba(17,24,39,.32);
  outline-offset:-2px;
  background:#fffaf0;
}
.daily-user-row.is-active td{
  background:#111827!important;
  color:#fff;
}
.daily-user-row.is-active .muted,
.daily-user-row.is-active small,
.daily-user-row.is-active b{
  color:rgba(255,255,255,.86)!important;
}
.daily-user-row.is-active .pill{
  background:rgba(255,255,255,.16);
  color:#fff;
}
.daily-user-row.is-active .btn{
  background:#fff;
  color:#111827;
  border-color:#fff;
}
.daily-user-actions{
  display:flex;
  gap:6px;
  align-items:center;
  justify-content:flex-end;
  flex-wrap:wrap;
}
.daily-user-select-btn{
  white-space:nowrap;
}
.daily-user-pdf-btn{
  white-space:nowrap;
}
.user-activity-selection-card{
  margin-bottom:16px;
  background:#fffaf0;
}
.user-activity-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) 360px;
  gap:16px;
  align-items:start;
  margin-bottom:16px;
}
.user-activity-panel{
  border-radius:8px!important;
  border:1px solid rgba(17,24,39,.08);
  box-shadow:0 16px 42px rgba(15,23,42,.06);
}
.user-activity-profile-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  gap:12px;
}
.user-activity-profile-card,
.user-activity-issue,
.user-activity-section{
  display:grid;
  gap:5px;
  border:1px solid rgba(17,24,39,.08);
  border-radius:8px;
  background:#fff;
  color:#111827;
  text-decoration:none;
}
.user-activity-profile-card{
  padding:14px;
}
.user-activity-profile-card span,
.user-activity-section span{
  color:#6b7280;
  font-size:11px;
  font-weight:950;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.user-activity-profile-card b,
.user-activity-section b{
  color:#111827;
  font-size:30px;
  line-height:1;
}
.user-activity-profile-card small,
.user-activity-section small{
  color:#4b5563;
  font-size:12px;
  font-weight:800;
  line-height:1.3;
}
.user-activity-issue-list{
  display:grid;
  gap:10px;
  margin-top:12px;
}
.user-activity-subtitle{
  margin:16px 0 0;
  color:#111827;
  font-size:13px;
  font-weight:950;
  letter-spacing:0;
}
.user-activity-issue{
  padding:12px;
  border-left:4px solid #dc2626;
  background:#fffafa;
}
.user-activity-issue b{
  color:#111827;
}
.user-activity-issue span,
.user-activity-issue small{
  color:#4b5563;
  font-size:12px;
  font-weight:800;
  overflow-wrap:anywhere;
}
.user-activity-table td,
.user-activity-log-table td{
  vertical-align:middle;
}
.user-activity-section-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  gap:12px;
}
.user-activity-section{
  padding:13px;
  background:#fbfbfd;
}
.employee-day-table{
  min-width:1120px;
}
.activity-alert-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:12px;
}
.activity-alert-card{
  display:grid;
  gap:7px;
  padding:14px;
  border:1px solid rgba(245,158,11,.22);
  border-left:4px solid #f59e0b;
  border-radius:8px;
  background:#fffbeb;
}
.activity-alert-card.is-alert{
  border-color:rgba(220,38,38,.22);
  border-left-color:#dc2626;
  background:#fff7f7;
}
.activity-alert-card b{
  color:#111827;
  font-size:16px;
}
.activity-alert-card p{
  margin:0;
  color:#374151;
  font-size:13px;
  font-weight:850;
}
.activity-alert-card small{
  color:#6b7280;
  font-size:11px;
  font-weight:800;
  line-height:1.35;
  overflow-wrap:anywhere;
}
.user-audit-panel{
  margin-top:16px;
}
.user-audit-table{
  min-width:1120px;
}
.user-audit-table code{
  font-size:11px;
}
.user-activity-log-table{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  min-width:980px;
}
.user-activity-log-table th,
.user-activity-log-table td{
  border-bottom:1px solid rgba(17,24,39,.08);
  padding:12px;
  text-align:left;
}
.user-activity-log-table th{
  background:#f3f4f6;
  color:#4b5563;
  font-size:11px;
  font-weight:950;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.user-activity-log-table tr.is-error td{
  background:#fff7f7;
}
.user-activity-log-table code{
  white-space:normal;
  overflow-wrap:anywhere;
}
.danger-text{
  color:#dc2626!important;
  font-weight:950;
}
@media (max-width:1100px){
  .user-activity-layout{
    grid-template-columns:1fr;
  }
  .user-activity-pdf-form{
    grid-template-columns:1fr;
  }
  .user-activity-day-filter,
  .user-activity-day-filter input{
    width:100%;
  }
  .user-audit-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (max-width:720px){
  .user-activity-profile-grid,
  .user-activity-section-grid,
  .user-audit-grid{
    grid-template-columns:1fr;
  }
  .user-activity-timezone{
    display:flex;
  }
}

/* V41.33 - Logos blindados frente a cache/dominios que devuelven imagen rota. */
.marquee-logo-fallback{
  display:none!important;
  grid-template-rows:auto auto;
  align-items:center;
  justify-items:start;
  gap:4px;
  line-height:1;
  color:#111;
  text-decoration:none;
  letter-spacing:0;
}
.marquee-logo-fallback strong{
  display:block;
  font-weight:950;
  letter-spacing:.01em;
}
.marquee-logo-fallback small{
  display:block;
  color:#9a7a43;
  font-size:.24em;
  font-weight:900;
  letter-spacing:.18em;
}
.login-pro-brand.logo-fallback-only .marquee-logo-fallback,
.single-login-brand-v35.logo-fallback-only .marquee-logo-fallback,
.admin-mobile-logo.logo-fallback-only .marquee-logo-fallback,
.brand.logo-fallback-only .marquee-logo-fallback{
  display:inline-grid!important;
}
.login-pro-brand.logo-fallback-only img,
.single-login-brand-v35.logo-fallback-only img,
.admin-mobile-logo.logo-fallback-only img,
.brand.logo-fallback-only img{
  display:none!important;
}
body.public-premium-login-v342 .login-pro-brand.logo-fallback-only .marquee-logo-fallback,
body.public-single-login-v35 .single-login-brand-v35.logo-fallback-only .marquee-logo-fallback{
  font-size:clamp(40px,5vw,70px);
}
body.portal-admin-c-v1 .admin-mobile-logo.logo-fallback-only .marquee-logo-fallback,
.top .brand.logo-fallback-only .marquee-logo-fallback{
  font-size:26px;
}
body.portal-admin-c-v1 .admin-mobile-logo.logo-fallback-only .marquee-logo-fallback small,
.top .brand.logo-fallback-only .marquee-logo-fallback small{
  font-size:8px;
}
