/* =============================================
   Anuncios Plugin – Frontend Styles v2.0
   Modern & Friendly Design
   ============================================= */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

/* =============================================
   FORZAR FONDO NEGRO Y MODO OSCURO — pisa tema
   ============================================= */
body {
  background-color: #000 !important;
  color: #f5f5f5 !important;
}

/* Quitar subrayado de TODOS los enlaces del plugin */
.anp-listado-wrap a,
.anp-listado-wrap a:hover,
.anp-listado-wrap a:visited,
.anp-panel-wrap a,
.anp-panel-wrap a:hover,
.anp-section a,
.anp-section a:hover,
.igp-back-btn,
.igp-back-btn:hover {
  text-decoration: none !important;
}
.anp-plan-detail-link,
.anp-plan-detail-link:hover {
  text-decoration: underline !important;
  text-underline-offset: 2px !important;
}

/* Cards — cuadradas sin nada */
.anp-card,
.anp-card *,
.anp-card-inner,
.anp-card-img {
  border-radius: 0 !important;
  box-shadow: none !important;
  text-decoration: none !important;
}

/* Grid de cards — fondo negro */
.anp-listado-wrap,
.anp-grid,
.anp-filters,
.anp-card,
.anp-card-info {
  background-color: #25292E !important;
  border-color: #363c44 !important;
}

.anp-card-name,
.anp-card-age,
.anp-card-horario,
.anp-card-rating {
  color: #fff !important;
  text-decoration: none !important;
}

/* Panel — fondo general y stat-cards */
.anp-panel-wrap,
.anp-panel-topbar,
.anp-panel-stats,
.anp-stat-card,
.anp-section,
.anp-quick-actions,
.anp-quick-action,
.anp-filters select,
.anp-col input,
.anp-col select,
.anp-col textarea,
.anp-section textarea {
  background-color: #25292E !important;
  color: #fff !important;
  border-color: #363c44 !important;
}

/* Cards de anuncios individuales — #4150F7 con letra blanca */
.anp-panel-card {
  background-color: #4150F7 !important;
  color: #fff !important;
  border-color: #3040e0 !important;
}
.anp-panel-card strong,
.anp-panel-card small,
.anp-panel-card .anp-panel-info,
.anp-panel-card .anp-panel-info * {
  color: #fff !important;
}
.anp-panel-card::before {
  display: none !important;
}

/* Inputs modo oscuro */
.anp-col input,
.anp-col select,
.anp-col textarea,
.anp-section textarea,
.anp-filters select {
  background-color: #363C44 !important;
  color: #fff !important;
  border: 1px solid #464e58 !important;
}

.anp-col input::placeholder,
.anp-col textarea::placeholder {
  color: #555 !important;
}

/* Etiquetas */
.anp-col label,
.anp-section label,
.anp-section-title-text,
.anp-panel-section-title {
  color: #fff !important;
}

/* Horario pills */
.anp-horario-pill,
.anp-pill,
.anp-checkbox-pill {
  background-color: #1a1a1a !important;
  border-color: #363636 !important;
  color: #f5f5f5 !important;
}

/* Checkboxes activos */
.anp-checkbox-pill.selected,
.anp-horario-pill.selected {
  background-color: #0095f6 !important;
  border-color: #0095f6 !important;
  color: #fff !important;
}

/* Plan cards modo oscuro */
.anp-plan-card {
  background-color: #121212 !important;
  border-color: #262626 !important;
  color: #f5f5f5 !important;
}

.anp-plan-title,
.anp-plan-price,
.anp-plan-features li {
  color: #f5f5f5 !important;
}

/* Upload zones */
.anp-upload-zone,
.anp-photo-preview-box,
.anp-gallery-preview {
  background-color: #1a1a1a !important;
  border-color: #363636 !important;
}

/* Paginación */
.anp-pagination .page-numbers {
  background-color: #121212 !important;
  color: #f5f5f5 !important;
  border-color: #262626 !important;
  text-decoration: none !important;
}

.anp-pagination .current {
  background-color: #0095f6 !important;
  border-color: #0095f6 !important;
  color: #fff !important;
}

/* Botón volver */
.igp-back-btn {
  display: block !important;
  padding: 62px 16px 10px !important;
  color: #a8a8a8 !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  background: none !important;
  border: none !important;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
  cursor: pointer !important;
}
.igp-back-btn:hover {
  color: #f5f5f5 !important;
  text-decoration: none !important;
}



:root {
  --anp-primary:      #0095f6;
  --anp-primary-lt:   #1a1a2e;
  --anp-primary-dark: #1877f2;
  --anp-accent:       #e1306c;
  --anp-accent-lt:    #2a1520;
  --anp-success:      #2dc653;
  --anp-success-lt:   #0d2b16;
  --anp-danger:       #ed4956;
  --anp-danger-lt:    #2b0d10;
  --anp-warning:      #fdcb58;
  --anp-warning-lt:   #2b2208;
  --anp-info:         #0095f6;
  --anp-info-lt:      #0d1f2e;
  --anp-text:         #f5f5f5;
  --anp-text-soft:    #a8a8a8;
  --anp-border:       #262626;
  --anp-bg:           #000000;
  --anp-white:        #363C44;
  --anp-radius:       4px;
  --anp-radius-sm:    4px;
  --anp-shadow:       none;
  --anp-shadow-lg:    none;
  --anp-font:         'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}
* { box-sizing: border-box; }

/* ---- Notices ---- */
.anp-notice { display:flex; align-items:flex-start; gap:10px; padding:14px 18px; border-radius:var(--anp-radius-sm); margin-bottom:20px; font-size:14px; font-weight:500; line-height:1.5; font-family:var(--anp-font); }
.anp-notice-warning { background:#1a1d22; border:1px solid #f59e0b; color:#fff!important; }
.anp-notice-warning a { color:#7b93ff!important; }
.anp-notice-success { background:var(--anp-success-lt); border:1px solid #6ee7b7; color:#ffffff; }
.anp-notice-error   { background:var(--anp-danger-lt);  border:1px solid #fca5a5; color:#fff!important; }
.anp-notice-info    { background:var(--anp-info-lt);    border:1px solid #93c5fd; color:#fff!important; }

/* ---- Buttons ---- */
.anp-btn { display:inline-flex; align-items:center; gap:7px; padding:10px 22px; border-radius:100px; font-weight:600; font-size:14px; cursor:pointer; text-decoration:none; border:2px solid transparent; transition:all .2s ease; font-family:var(--anp-font); white-space:nowrap; line-height:1; box-sizing:border-box; }
button.anp-btn { appearance:none; -webkit-appearance:none; margin:0; }
.anp-btn-primary  { background:linear-gradient(45deg,#f09433,#e6683c,#dc2743,#cc2366,#bc1888); color:#fff; border:none; border-radius:var(--anp-radius-sm); }
.anp-btn-primary:hover  { background:linear-gradient(45deg,#e0832a,#d05530,#c41e3a,#b01e58,#a01075); color:#fff; transform:none; box-shadow:none; border:none; }
.anp-btn-nuevo    { display:flex; align-items:center; gap:8px; padding:10px 18px; background:#4150F7!important; border:1px solid #3040e0!important; border-radius:var(--anp-radius-sm)!important; font-size:13px!important; font-weight:600!important; color:#fff!important; cursor:pointer; text-decoration:none; transition:.2s; font-family:var(--anp-font); }
.anp-btn-nuevo:hover    { background:#3040e0!important; border-color:#2535cc!important; color:#fff!important; transform:none!important; box-shadow:none!important; }
.anp-btn-outline  { background:transparent; color:#f5f5f5; border-color:#363636; }
.anp-btn-outline:hover  { background:#1a1a1a; color:#f5f5f5; border-color:#555; }
.anp-btn-ghost    { background:#1a1a1a; color:#a8a8a8; border-color:#363636; }
.anp-btn-ghost:hover    { background:#262626; color:#f5f5f5; }
.anp-btn-danger   { background:var(--anp-danger); color:#fff; border-color:var(--anp-danger); }
.anp-btn-danger:hover   { background:#dc2626; border-color:#dc2626; color:#fff; }
.anp-btn-success  { background:var(--anp-success); color:#fff; border-color:var(--anp-success); }
.anp-btn-sm  { padding:6px 14px; font-size:12px; }
.anp-btn-lg  { padding:14px 32px; font-size:16px; }
.anp-btn-block { width:100%; justify-content:center; }

/* ---- Badges ---- */
.anp-badge { display:inline-flex; align-items:center; gap:4px; padding:3px 10px; border-radius:100px; font-size:11px; font-weight:700; letter-spacing:.3px; }
.anp-plan-basico   { background:#e5e7eb; color:#374151; }
.anp-plan-premium  { background:var(--anp-accent-lt); color:#92400e; }
.anp-plan-platinum  { background:var(--anp-primary-lt); color:var(--anp-primary-dark); }
.anp-badge-activo    { background:var(--anp-success-lt); color:#065f46; }
.anp-badge-pendiente { background:var(--anp-warning-lt); color:#92400e; }
.anp-badge-suspendido{ background:var(--anp-danger-lt); color:#991b1b; }
.anp-badge-pausado   { background:var(--anp-danger-lt); color:#991b1b; }
.anp-badge-vencido   { background:#2b0d10; color:#f87171; border:1px solid #7f1d1d; }
.anp-badge-cancelado { background:#2b0d10; color:#f87171; border:1px solid #7f1d1d; }
@keyframes anp-pulse {
  0%,100% { box-shadow: 0 0 0 0 rgba(48,64,224,0.5); }
  50%      { box-shadow: 0 0 0 6px rgba(48,64,224,0); }
}

/* =============================================
   PANEL DEL ANUNCIANTE
   ============================================= */
.anp-panel-wrap { max-width:960px; margin:0 auto; padding:30px 20px; font-family:var(--anp-font); }

.anp-panel-topbar { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:32px; flex-wrap:wrap; }
.anp-panel-welcome { display:flex; align-items:center; gap:14px; }
.anp-panel-avatar { width:52px; height:52px; border-radius:50%; background:linear-gradient(135deg, var(--anp-primary), var(--anp-primary-dark)); display:flex; align-items:center; justify-content:center; color:#fff; font-size:20px; font-weight:700; flex-shrink:0; }
.anp-panel-welcome-text h2 { margin:0 0 2px; font-size:20px; font-weight:700; color:#fff; }
.anp-panel-welcome-text p  { margin:0; font-size:13px; color:#fff; }

.anp-panel-stats { display:grid; grid-template-columns:repeat(auto-fit, minmax(160px, 1fr)); gap:14px; margin-bottom:28px; }
.anp-stat-card { background:var(--anp-white); border:1px solid var(--anp-border); border-radius:var(--anp-radius); padding:18px 20px; box-shadow:none; transition:none; }
.anp-stat-card:hover { box-shadow:none; transform:none; }
.anp-stat-icon  { font-size:24px; margin-bottom:8px; display:block; }
.anp-stat-value { display:block; font-size:26px; font-weight:800; color:#fff; line-height:1; margin-bottom:4px; }
.anp-stat-label { font-size:12px; color:#fff; font-weight:500; }

.anp-panel-section-title { font-size:16px; font-weight:700; color:#fff; margin:0 0 16px; display:flex; align-items:center; gap:8px; }

.anp-panel-grid { display:flex; flex-direction:column; gap:12px; }

.anp-panel-card { background:var(--anp-white); border:1px solid var(--anp-border); border-radius:var(--anp-radius); padding:16px 20px; display:flex; align-items:flex-start; gap:16px; box-shadow:none; transition:none; position:relative; overflow:visible; }
.anp-panel-card::before { content:''; position:absolute; left:0; top:0; bottom:0; width:4px; background:var(--anp-border); border-radius:var(--anp-radius) 0 0 var(--anp-radius); }
.anp-panel-card.estado-activo::before    { background:var(--anp-success); }
.anp-panel-card.estado-pendiente::before { background:var(--anp-warning); }
.anp-panel-card.estado-suspendido::before{ background:var(--anp-danger); }
.anp-panel-card.estado-vencido::before   { background:#d1d5db; }
.anp-panel-card.estado-cancelado::before { background:#fb923c; }
.anp-panel-card:hover { border-color:var(--anp-primary); box-shadow:none; transform:none; }

/* ── Avatar del panel: mismo diseño que perfil individual, tamaño 64px ── */
.anp-panel-av-wrap { position:relative; flex-shrink:0; }
.anp-panel-av-wrap .igp-av-ring { flex-shrink:0!important; width:64px!important; height:64px!important; border-radius:50%!important; padding:0!important; display:block!important; background:none!important; }
.anp-panel-av-wrap .igp-av-white { width:100%!important; height:100%!important; border-radius:50%!important; padding:0!important; background:none!important; display:block!important; }
.anp-panel-av-wrap .igp-av-btn { display:block!important; width:100%!important; height:100%!important; border-radius:50%!important; overflow:hidden!important; border:none!important; padding:0!important; margin:0!important; background:none!important; cursor:pointer!important; box-shadow:none!important; aspect-ratio:1/1!important; }
.anp-panel-av-wrap .igp-av-img { display:block!important; width:100%!important; height:100%!important; object-fit:cover!important; border-radius:50%!important; max-width:none!important; max-height:none!important; }
.anp-panel-av-wrap .igp-av-stories-premium { background:#F59E0B!important; padding:3px!important; }
.anp-panel-av-wrap .igp-av-stories-premium .igp-av-white { padding:2px!important; background:#000!important; }
.anp-panel-av-wrap .igp-av-stories-platinum { background:#5DADEC!important; padding:3px!important; }
.anp-panel-av-wrap .igp-av-stories-platinum .igp-av-white { padding:2px!important; background:#000!important; }
.anp-panel-av-wrap .igp-av-grad { background:none!important; }
.anp-panel-av-wrap .igp-add-estado-btn { position:absolute!important; bottom:2px!important; right:2px!important; width:22px!important; height:22px!important; border-radius:50%!important; background:#3897f0!important; border:2px solid #25292E!important; cursor:pointer!important; display:flex!important; align-items:center!important; justify-content:center!important; padding:0!important; z-index:2!important; transition:background .15s!important; }
.anp-panel-av-wrap .igp-add-estado-btn:hover { background:#1877d4!important; }
.anp-panel-info { flex:1; min-width:0; }
.anp-panel-info strong { display:block; font-size:15px; font-weight:700; color:#fff; margin-bottom:6px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.anp-panel-info-meta { display:flex; align-items:center; flex-wrap:wrap; gap:6px; margin-bottom:4px; }
.anp-panel-info small { font-size:12px; color:#fff; }
.anp-panel-actions { display:flex; align-items:center; gap:8px; flex-shrink:0; flex-wrap:wrap; }

.anp-verificado-badge { display:inline-flex; align-items:center; gap:4px; background:linear-gradient(135deg, #10b981, #059669); color:#fff; padding:3px 10px; border-radius:100px; font-size:11px; font-weight:700; }

.anp-empty-state { text-align:center; padding:60px 20px; background:var(--anp-white); border:2px dashed var(--anp-border); border-radius:20px; }
.anp-empty-state-icon { font-size:52px; margin-bottom:14px; display:block; }
.anp-empty-state h3 { font-size:18px; font-weight:700; color:var(--anp-text); margin:0 0 8px; }
.anp-empty-state p  { font-size:14px; color:var(--anp-text-soft); margin:0 0 20px; }

.anp-quick-actions { display:flex; gap:10px; margin-bottom:28px; flex-wrap:wrap; }
.anp-quick-action { display:flex; align-items:center; gap:8px; padding:10px 18px; background:#25292E!important; border:1px solid #363c44!important; border-radius:var(--anp-radius-sm); font-size:13px; font-weight:600; color:#fff!important; cursor:pointer; text-decoration:none; transition:.2s; font-family:var(--anp-font); }
.anp-quick-action:hover { border-color:#555; color:#fff!important; background:#2f343a!important; text-decoration:none; }

/* =============================================
   FORMULARIO
   ============================================= */
.anp-form-wrap { max-width:820px; margin:0 auto; padding:30px 20px; font-family:var(--anp-font); }
.anp-form-header { margin-bottom:28px; }
.anp-form-header h2 { font-size:26px; font-weight:800; color:var(--anp-text); margin:0 0 6px; }
.anp-form-header p  { font-size:14px; color:var(--anp-text-soft); margin:0; }

.anp-section { background:var(--anp-white); border:1px solid var(--anp-border); border-radius:var(--anp-radius); padding:28px; margin-bottom:20px; box-shadow:none; }
.anp-section > h3 { font-size:15px; font-weight:700; color:var(--anp-text); margin:0 0 20px; padding-bottom:14px; border-bottom:1px solid var(--anp-border); display:flex; align-items:center; gap:8px; }

.anp-row   { display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-bottom:18px; }
.anp-row-3 { display:grid; grid-template-columns:1fr 1fr 1fr; gap:18px; margin-bottom:18px; }
@media(max-width:640px){ .anp-row, .anp-row-3 { grid-template-columns:1fr; } }
.anp-col { display:flex; flex-direction:column; gap:6px; }

.anp-col label { font-size:13px; font-weight:600; color:var(--anp-text); display:flex; align-items:center; gap:5px; }
.anp-col input, .anp-col select {
  width:100%; padding:11px 14px; border:1.5px solid var(--anp-border); border-radius:var(--anp-radius-sm);
  font-size:14px; font-family:var(--anp-font); color:var(--anp-text); background:var(--anp-white);
  transition:all .15s; outline:none; appearance:none; -webkit-appearance:none;
}
.anp-col select {
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%236b7280' d='M1 1l5 5 5-5'/%3E%3C/svg%3E");
  background-repeat:no-repeat; background-position:right 12px center; padding-right:34px;
}
.anp-col input:focus, .anp-col select:focus { border-color:var(--anp-primary); box-shadow:0 0 0 3px rgba(29,78,216,.1); }
.anp-col input::placeholder { color:#9ca3af; }
.anp-col small { font-size:11px; color:var(--anp-text-soft); margin-top:2px; }

.anp-section textarea { width:100%; padding:12px 14px; border:1.5px solid var(--anp-border); border-radius:var(--anp-radius-sm); font-size:14px; font-family:var(--anp-font); color:var(--anp-text); resize:vertical; min-height:130px; outline:none; transition:.15s; }
.anp-section textarea:focus { border-color:var(--anp-primary); box-shadow:0 0 0 3px rgba(29,78,216,.1); }

.anp-input-group { position:relative; display:flex; align-items:center; }
.anp-input-prefix { position:absolute; left:12px; color:var(--anp-text-soft); font-weight:600; font-size:14px; pointer-events:none; }
.anp-input-group input { padding-left:26px; }

/* ---- Upload fotos ---- */
.anp-upload-section { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
@media(max-width:640px){ .anp-upload-section { grid-template-columns:1fr; } }

.anp-upload-box { position:relative; border:2px dashed var(--anp-border); border-radius:var(--anp-radius); background:var(--anp-bg); min-height:190px; overflow:hidden; transition:.2s; }
.anp-upload-box:hover { border-color:var(--anp-primary); background:var(--anp-primary-lt); }
.anp-upload-box input[type="file"] { position:absolute; inset:0; opacity:0; cursor:pointer; width:100%; height:100%; z-index:2; }
.anp-upload-placeholder { display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; padding:28px 16px; pointer-events:none; height:100%; min-height:190px; }
.anp-upload-icon { font-size:36px; margin-bottom:8px; display:block; }
.anp-upload-placeholder strong { display:block; font-size:14px; font-weight:600; color:var(--anp-text); margin-bottom:4px; }
.anp-upload-placeholder span   { font-size:12px; color:var(--anp-text-soft); }

.anp-preview-principal-wrap { display:none; position:relative; }
.anp-preview-principal-wrap.visible { display:block; }
.anp-preview-principal-wrap img { width:100%; height:190px; object-fit:cover; display:block; border-radius:calc(var(--anp-radius) - 2px); }
.anp-preview-change-btn { position:absolute; bottom:10px; right:10px; background:rgba(0,0,0,.65); color:#fff; padding:5px 12px; border-radius:100px; font-size:11px; font-weight:600; z-index:3; backdrop-filter:blur(4px); }

.anp-galeria-wrap { border:2px dashed var(--anp-border); border-radius:var(--anp-radius); background:var(--anp-bg); transition:.2s; position:relative; }
.anp-galeria-wrap:hover { border-color:var(--anp-primary); }
.anp-galeria-wrap input[type="file"] { position:absolute; inset:0; opacity:0; cursor:pointer; width:100%; height:100%; z-index:2; }
.anp-galeria-header { padding:14px 18px; display:flex; align-items:center; justify-content:space-between; pointer-events:none; }
.anp-galeria-header strong { font-size:13px; font-weight:600; color:var(--anp-text); }
.anp-galeria-header span   { font-size:11px; color:var(--anp-text-soft); }
.anp-galeria-drop { padding:14px 18px; text-align:center; pointer-events:none; font-size:13px; color:var(--anp-text-soft); border-top:1px dashed var(--anp-border); min-height:60px; display:flex; align-items:center; justify-content:center; gap:6px; }
.anp-preview-grid { display:flex; flex-wrap:wrap; gap:8px; padding:12px 18px; }
.anp-preview-grid img { width:72px; height:72px; object-fit:cover; border-radius:8px; border:2px solid var(--anp-border); }

/* ---- Horario ---- */
.anp-horario-tipo { display:flex; gap:10px; margin-bottom:18px; flex-wrap:wrap; }
.anp-radio-pill { display:flex; align-items:center; gap:8px; padding:9px 16px; border:2px solid var(--anp-border); border-radius:100px; cursor:pointer; font-size:13px; font-weight:600; color:var(--anp-text-soft); transition:.15s; background:var(--anp-white); }
.anp-radio-pill input { display:none; }
.anp-radio-pill.active { border-color:var(--anp-primary); background:var(--anp-primary-lt); color:var(--anp-primary); }

.anp-row-horario { align-items:flex-end; flex-wrap:wrap; gap:12px; }
.anp-horario-rango { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.anp-horario-rango label { font-size:12px; color:var(--anp-text-soft); margin:0; font-weight:600; }
.anp-horario-rango select { padding:8px 10px; border:1.5px solid var(--anp-border); border-radius:var(--anp-radius-sm); font-size:13px; font-family:var(--anp-font); outline:none; transition:.15s; background:var(--anp-white); }
.anp-horario-rango select:focus { border-color:var(--anp-primary); }
.anp-dia-row { display:flex; align-items:center; gap:12px; padding:10px 0; border-bottom:1px solid #f3f4f6; flex-wrap:wrap; }
.anp-dia-row:last-child { border-bottom:none; }
.anp-dia-nombre { font-weight:600; font-size:13px; min-width:80px; color:var(--anp-text); }

/* ---- Checkboxes ---- */
.anp-checkboxes-grid { display:grid; grid-template-columns:repeat(auto-fill, minmax(165px, 1fr)); gap:8px; }
.anp-checkbox-item { display:flex; align-items:center; gap:8px; padding:9px 12px; border:1.5px solid var(--anp-border); border-radius:var(--anp-radius-sm); cursor:pointer; font-size:13px; font-weight:500; transition:.15s; background:var(--anp-white); color:var(--anp-text); user-select:none; }
.anp-checkbox-item:hover { border-color:var(--anp-primary); background:var(--anp-primary-lt); color:var(--anp-primary); }
.anp-checkbox-item input[type="checkbox"] { accent-color:var(--anp-primary); width:15px; height:15px; flex-shrink:0; cursor:pointer; }
.anp-checkbox-item:has(input:checked) { border-color:var(--anp-primary); background:var(--anp-primary-lt); color:var(--anp-primary); font-weight:600; }
.anp-radio-label { display:flex; align-items:center; gap:6px; cursor:pointer; font-size:13px; font-weight:500; color:var(--anp-text-soft); }
.anp-radio-label input { accent-color:var(--anp-primary); }
.anp-checkbox-label { display:flex; align-items:flex-start; gap:10px; font-size:13px; color:var(--anp-text-soft); cursor:pointer; line-height:1.5; }
.anp-checkbox-label input { margin-top:2px; accent-color:var(--anp-primary); }
.anp-checkbox-label a { color:var(--anp-primary); font-weight:600; }

/* ---- Planes ---- */
.anp-planes-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
@media(max-width:640px){ .anp-planes-grid { grid-template-columns:1fr; } }
.anp-plan-card { border:2px solid var(--anp-border); border-radius:var(--anp-radius); padding:20px 16px; cursor:pointer; transition:all .2s; text-align:center; background:var(--anp-white); position:relative; overflow:hidden; }
.anp-plan-card:hover { transform:none; box-shadow:none; }
.anp-plan-card input[type="radio"] { display:none; }
.anp-plan-selected { border-color:var(--anp-primary); box-shadow:none; transform:none; }
.anp-plan-selected::after { content:'✓'; position:absolute; top:10px; right:10px; width:22px; height:22px; background:var(--anp-primary); color:#fff; border-radius:50%; font-size:12px; font-weight:700; display:flex; align-items:center; justify-content:center; }
.anp-plan-icon   { font-size:28px; margin-bottom:8px; display:block; }
.anp-plan-badge  { display:inline-block; padding:4px 14px; border-radius:100px; color:#fff; font-weight:700; font-size:12px; margin-bottom:10px; }
.anp-plan-precio { font-size:20px; font-weight:800; color:var(--anp-text); margin-bottom:8px; }
.anp-plan-desc   { font-size:12px; color:var(--anp-text-soft); line-height:1.5; }
.anp-plan-popular { position:absolute; top:0; left:50%; transform:translateX(-50%); background:var(--anp-accent); color:#fff; font-size:10px; font-weight:700; padding:3px 12px; border-radius:0 0 8px 8px; letter-spacing:.5px; }

/* ---- Verificado ---- */
.anp-verificado-section { background:linear-gradient(135deg, #f0fdf4, #dcfce7); border:2px solid #86efac; border-radius:var(--anp-radius); padding:20px 24px; display:flex; align-items:center; gap:16px; flex-wrap:wrap; }
.anp-verificado-icon { font-size:40px; flex-shrink:0; }
.anp-verificado-info { flex:1; }
.anp-verificado-info h4 { margin:0 0 4px; font-size:15px; font-weight:700; color:#14532d; }
.anp-verificado-info p  { margin:0; font-size:12px; color:#166534; line-height:1.5; }
.anp-verificado-check { display:flex; align-items:center; gap:8px; padding:9px 18px; background:var(--anp-white); border:2px solid #86efac; border-radius:100px; font-size:13px; font-weight:600; color:#166534; cursor:pointer; transition:.15s; font-family:var(--anp-font); }
.anp-verificado-check:has(input:checked) { background:linear-gradient(135deg, #10b981, #059669); color:#fff; border-color:transparent; }
.anp-verificado-check input { display:none; }

/* ---- Footer form ---- */
.anp-form-footer { display:flex; align-items:center; justify-content:flex-end; gap:12px; padding:20px 0 10px; }
.anp-loader { display:none; align-items:center; gap:8px; font-size:14px; color:var(--anp-text-soft); }
.anp-loader.visible { display:flex; }
.anp-spinner { width:18px; height:18px; border:2px solid var(--anp-border); border-top-color:var(--anp-primary); border-radius:50%; animation:anp-spin .7s linear infinite; }
@keyframes anp-spin { to { transform:rotate(360deg); } }

/* =============================================
   LISTADO PÚBLICO
   ============================================= */
.anp-listado-wrap { max-width:1200px; margin:0 auto; font-family:var(--anp-font); }
.anp-filters { display:flex; flex-wrap:wrap; gap:10px; margin-bottom:24px; padding:14px 18px; background:var(--anp-white); border:1px solid var(--anp-border); border-radius:var(--anp-radius); box-shadow:none; }
.anp-filters select { padding:9px 14px; border:1.5px solid var(--anp-border); border-radius:var(--anp-radius-sm); font-size:13px; font-family:var(--anp-font); background:var(--anp-white); cursor:pointer; outline:none; transition:.15s; color:var(--anp-text); }
.anp-filters select:focus { border-color:var(--anp-primary); }
.anp-grid { list-style:none; padding:0; margin:0; display:grid; gap:3px; }
.anp-cols-2 { grid-template-columns:repeat(2,1fr); }
.anp-cols-3 { grid-template-columns:repeat(3,1fr); }
.anp-cols-4 { grid-template-columns:repeat(4,1fr); }
@media(max-width:900px){ .anp-cols-4,.anp-cols-3 { grid-template-columns:repeat(2,1fr); } }
@media(max-width:500px){ .anp-grid { grid-template-columns:repeat(2,1fr); gap:3px; } }
.anp-card { border-radius:0; overflow:hidden; box-shadow:none; background:var(--anp-white); transition:none; border:none; }
.anp-card:hover { transform:none; box-shadow:none; border-color:var(--anp-border); }
.anp-card-destacado { border:none; }
.anp-card-platinum { border:none; }
.anp-card-premium { border:none; }
.anp-card-inner { text-decoration:none!important; color:inherit; display:block; }
.anp-card-img { position:relative; padding-top:125%; overflow:hidden; background:#f3f4f6; }
.anp-card-img img { position:absolute; top:0; left:0; width:100%; height:100%; object-fit:cover; transition:transform .3s; }
.anp-card:hover .anp-card-img img { transform:none; }
.anp-card-img-placeholder { position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); font-size:48px; }
.anp-card-plan-badge { position:absolute; top:8px; left:8px; padding:4px 10px; border-radius:6px; font-size:11px; font-weight:700; color:#fff; }
.anp-card-plan-badge.anp-plan-platinum { background:#7ec8f5; }
.anp-card-plan-badge.anp-plan-premium { background:#fbb740; }
.anp-card-plan-badge.anp-plan-basico  { background:#a8a8a8; }
.anp-card-video-badge { position:absolute; bottom:8px; left:8px; background:rgba(0,0,0,.65); color:#fff; font-size:10px; padding:3px 8px; border-radius:6px; backdrop-filter:blur(4px); }
.anp-card-check { position:absolute; top:8px; right:8px; font-size:18px; filter:drop-shadow(0 2px 4px rgba(0,0,0,.3)); }
.anp-card-info { padding:8px 6px 10px; background:var(--anp-white); }
.anp-card-name { display:block; font-weight:600; font-size:13px; color:var(--anp-text); margin-bottom:2px; font-family:var(--anp-font); text-decoration:none!important; }
.anp-card-age  { display:block; font-size:11px; color:var(--anp-text-soft); margin-bottom:1px; }
.anp-card-horario { display:block; font-size:11px; color:var(--anp-text-soft); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; margin-bottom:4px; }
.anp-card-rating { display:block; font-size:11px; color:#fdcb58; font-weight:600; }
.anp-no-results { color:var(--anp-text-soft); font-size:16px; padding:60px 0; text-align:center; font-family:var(--anp-font); }
.anp-pagination { margin-top:32px; text-align:center; }
.anp-pagination .page-numbers { display:inline-flex; align-items:center; justify-content:center; width:36px; height:36px; border:1.5px solid var(--anp-border); border-radius:8px; margin:0 3px; text-decoration:none; color:var(--anp-text); font-size:13px; font-family:var(--anp-font); font-weight:600; transition:.15s; }
.anp-pagination .page-numbers:hover { border-color:var(--anp-primary); color:var(--anp-primary); }
.anp-pagination .current { background:var(--anp-primary); color:#fff; border-color:var(--anp-primary); }

/* =============================================
   AUTH
   ============================================= */
.anp-auth-wrap { max-width:440px; margin:0 auto; font-family:var(--anp-font); }
.anp-tabs { display:flex; gap:4px; background:var(--anp-bg); border-radius:var(--anp-radius-sm); padding:4px; margin-bottom:22px; }
.anp-tab-btn { flex:1; padding:10px; background:transparent; border:none; font-size:14px; font-weight:600; cursor:pointer; color:var(--anp-text-soft); border-radius:6px; transition:.15s; font-family:var(--anp-font); }
.anp-tab-btn.active { background:var(--anp-white); color:var(--anp-primary); box-shadow:0 1px 4px rgba(0,0,0,.1); }
.anp-tab-content { display:none; }
.anp-tab-content.active { display:block; }
.anp-field { margin-bottom:16px; }
.anp-field label { display:block; font-size:13px; font-weight:600; margin-bottom:6px; color:var(--anp-text); }
.anp-field input { width:100%; padding:11px 14px; border:1.5px solid var(--anp-border); border-radius:var(--anp-radius-sm); font-size:14px; font-family:var(--anp-font); outline:none; transition:.15s; box-sizing:border-box; }
.anp-field input:focus { border-color:var(--anp-primary); box-shadow:0 0 0 3px rgba(29,78,216,.1); }

/* Responsive */
@media(max-width:768px){
  .anp-panel-topbar { flex-direction:column; align-items:flex-start; }
  .anp-panel-card   { flex-wrap:wrap; }
  .anp-panel-actions { width:100%; justify-content:flex-end; }
}
@media(max-width:480px){
  .anp-section { padding:18px; }
  .anp-panel-card { padding:12px 14px; }
  .anp-card-info { padding:8px 10px 10px; }
  .anp-card-name { font-size:12px; }
  .anp-card-age  { font-size:11px; }
}

/* =============================================
   VERIFICACIÓN DE PERFIL – Panel
   ============================================= */
/* Modal de verificación */
.anp-modal-overlay { display:none!important; position:fixed!important; inset:0!important; background:rgba(0,0,0,.6)!important; z-index:999999!important; align-items:center!important; justify-content:center!important; padding:16px!important; backdrop-filter:blur(3px); }
.anp-modal-overlay.active { display:flex!important; }
.anp-modal-box { background:#fff!important; border-radius:14px!important; padding:28px!important; max-width:520px!important; width:100%!important; max-height:90vh!important; overflow-y:auto!important; position:relative!important; box-shadow:0 20px 60px rgba(0,0,0,.3)!important; }
.anp-modal-close { position:absolute!important; top:14px!important; right:14px!important; width:32px!important; height:32px!important; border:none!important; background:#f3f4f6!important; border-radius:50%!important; cursor:pointer!important; font-size:14px!important; color:#6b7280!important; display:flex!important; align-items:center!important; justify-content:center!important; transition:.15s; line-height:1!important; }
.anp-modal-close:hover { background:#e5e7eb!important; color:#111!important; }
.anp-verif-panel { background:var(--anp-white); border:1px solid var(--anp-border); border-radius:var(--anp-radius); padding:28px; margin-bottom:24px; box-shadow:var(--anp-shadow); }
.anp-verif-panel-header { display:flex; align-items:center; gap:14px; margin-bottom:18px; padding-bottom:16px; border-bottom:1px solid var(--anp-border); }
.anp-verif-panel-icon { width:46px; height:46px; background:#f0fdf4; border:1.5px solid #86efac; border-radius:10px; display:flex; align-items:center; justify-content:center; font-size:22px; flex-shrink:0; }
.anp-verif-panel-title h3 { margin:0 0 3px; font-size:16px; font-weight:700; color:var(--anp-text); }
.anp-verif-panel-title p  { margin:0; font-size:13px; color:var(--anp-text-soft); }
.anp-verif-status { display:inline-flex; align-items:center; gap:6px; padding:5px 12px; border-radius:100px; font-size:12px; font-weight:600; margin-bottom:16px; }
.anp-verif-status-pendiente { background:#fef3c7; color:#92400e; border:1px solid #fcd34d; }
.anp-verif-status-verificado { background:#d1fae5; color:#065f46; border:1px solid #6ee7b7; }
.anp-verif-instructions { background:#f8fafc; border:1px solid var(--anp-border); border-radius:var(--anp-radius-sm); padding:16px 18px; margin-bottom:20px; }
.anp-verif-instructions p { margin:0 0 10px; font-size:14px; font-weight:600; color:var(--anp-text); }
.anp-verif-instructions ul { margin:0; padding-left:18px; }
.anp-verif-instructions ul li { font-size:13px; color:#374151; line-height:1.7; }
.anp-verif-instructions strong { color:var(--anp-text); }
.anp-verif-upload-wrap { border:2px dashed var(--anp-border); border-radius:var(--anp-radius); background:#fafafa; min-height:160px; position:relative; overflow:hidden; transition:.2s; cursor:pointer; }
.anp-verif-upload-wrap:hover { border-color:var(--anp-primary); background:var(--anp-primary-lt); }
.anp-verif-upload-wrap input[type="file"] { position:absolute; inset:0; opacity:0; cursor:pointer; width:100%; height:100%; z-index:2; }
.anp-verif-upload-placeholder { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:6px; padding:30px 16px; text-align:center; pointer-events:none; }
.anp-verif-upload-placeholder span:first-child { font-size:32px; }
.anp-verif-upload-placeholder strong { font-size:14px; font-weight:600; color:var(--anp-text); }
.anp-verif-upload-placeholder small { font-size:12px; color:var(--anp-text-soft); }
.anp-verif-preview { display:none; width:100%; max-height:200px; object-fit:cover; border-radius:calc(var(--anp-radius) - 2px); }
.anp-verif-preview.visible { display:block; }
.anp-verif-form-footer { display:flex; align-items:center; justify-content:flex-end; gap:10px; margin-top:18px; }
.anp-verif-msg { font-size:13px; font-weight:500; padding:10px 14px; border-radius:var(--anp-radius-sm); display:none; }
.anp-verif-msg.visible { display:block; }
.anp-verif-msg-ok    { background:#d1fae5; color:#065f46; border:1px solid #6ee7b7; }
.anp-verif-msg-err   { background:#fee2e2; color:#991b1b; border:1px solid #fca5a5; }

