/*
 * KIENDAMAZ UI 1.2
 * Capa visual original para el tema KIENDAMAZ.
 * Dependencia de layout: Bootstrap 5.x (MIT).
 */

:root {
  --ap-primary: #2563eb;
  --ap-secondary: #f59e0b;
  --ap-dark: #111827;
  --ap-bg: #f6f7f9;
  --ap-surface: #ffffff;
  --ap-surface-soft: #f9fafb;
  --ap-border: #e5e7eb;
  --ap-border-strong: #d1d5db;
  --ap-text: #17191d;
  --ap-muted: #6b7280;
  --ap-success: #15803d;
  --ap-danger: #b91c1c;
  --ap-info: #0369a1;
  --ap-radius-sm: 8px;
  --ap-radius: 12px;
  --ap-radius-lg: 18px;
  --ap-shadow-sm: 0 1px 2px rgba(15, 23, 42, .04), 0 4px 12px rgba(15, 23, 42, .04);
  --ap-shadow: 0 10px 30px rgba(15, 23, 42, .08);
  --ap-focus: 0 0 0 3px rgba(37, 99, 235, .25);
  --ap-container: 1240px;
  --ap-transition: 160ms ease;
}

html { scroll-behavior: smooth; }
body.ap-theme {
  background: var(--ap-bg);
  color: var(--ap-text);
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  font-size: 15px;
  line-height: 1.58;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

body.ap-theme .container { max-width: var(--ap-container); }
body.ap-theme main { background: var(--ap-bg); }
body.ap-theme img { max-width: 100%; }
body.ap-theme a { text-underline-offset: 3px; }
body.ap-theme a:hover { color: color-mix(in srgb, var(--ap-primary) 78%, #000); }

h1, h2, h3, h4, h5, h6 {
  color: var(--ap-text);
  font-family: inherit;
  letter-spacing: -.018em;
  line-height: 1.18;
}

p:last-child { margin-bottom: 0; }
::selection { background: color-mix(in srgb, var(--ap-primary) 18%, #fff); }

/* Accessibility */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
[tabindex]:focus-visible {
  outline: 2px solid var(--ap-primary) !important;
  outline-offset: 2px;
  box-shadow: var(--ap-focus) !important;
}

.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  overflow: hidden;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
}

/* Header */
.ap-topbar {
  background: var(--ap-dark);
  color: rgba(255, 255, 255, .72);
  font-size: .78rem;
  min-height: 32px;
}
.ap-topbar a { color: rgba(255, 255, 255, .78) !important; }
.ap-topbar a:hover { color: #fff !important; }

.ap-navbar {
  background: rgba(255, 255, 255, .96) !important;
  border-bottom: 1px solid rgba(17, 24, 39, .08) !important;
  box-shadow: 0 4px 18px rgba(15, 23, 42, .04) !important;
  backdrop-filter: blur(10px);
  min-height: 68px;
  z-index: 1030;
}
.ap-navbar .navbar-brand {
  color: var(--ap-dark);
  font-size: 1.08rem;
  letter-spacing: -.025em;
}
.ap-brand-mark {
  align-items: center;
  background: var(--ap-primary);
  border-radius: 10px;
  color: #fff;
  display: inline-flex;
  height: 36px;
  justify-content: center;
  width: 36px;
}
.ap-navbar .custom-logo { max-height: 42px; width: auto; }
.ap-navbar .nav-link {
  border-radius: 8px;
  color: #454b55;
  font-size: .9rem;
  font-weight: 600;
  padding: .6rem .78rem !important;
}
.ap-navbar .nav-link:hover,
.ap-navbar .nav-link:focus { background: #f3f4f6; color: var(--ap-dark); }
.ap-navbar-search { min-width: 250px; }
.ap-breadcrumb-bar { background: #fff; border-bottom: 1px solid var(--ap-border); }
.ap-breadcrumb-bar .breadcrumb { --bs-breadcrumb-divider-color: #9ca3af; }

/* Controls */
body.ap-theme .btn {
  border-radius: 10px;
  font-size: .9rem;
  font-weight: 650;
  min-height: 40px;
  padding: .52rem .95rem;
  transition: transform var(--ap-transition), box-shadow var(--ap-transition), background-color var(--ap-transition), border-color var(--ap-transition);
}
body.ap-theme .btn-sm { min-height: 34px; padding: .36rem .72rem; font-size: .82rem; }
body.ap-theme .btn-lg { min-height: 48px; padding: .68rem 1.2rem; }
body.ap-theme .btn:hover { transform: translateY(-1px); }
body.ap-theme .btn:active { transform: translateY(0); }
body.ap-theme .btn-primary { box-shadow: 0 5px 14px color-mix(in srgb, var(--ap-primary) 22%, transparent); }
body.ap-theme .btn-warning { background: var(--ap-secondary); border-color: var(--ap-secondary); color: #201600; }
body.ap-theme .btn-warning:hover { background: color-mix(in srgb, var(--ap-secondary) 88%, #000); border-color: color-mix(in srgb, var(--ap-secondary) 88%, #000); color: #15100a; }
body.ap-theme .btn-outline-secondary { border-color: var(--ap-border-strong); color: #4b5563; }
body.ap-theme .btn-outline-secondary:hover { background: #f3f4f6; border-color: #c4c9d0; color: #111827; }

body.ap-theme .form-control,
body.ap-theme .form-select {
  background-color: #fff;
  border-color: var(--ap-border-strong);
  border-radius: 10px;
  color: var(--ap-text);
  min-height: 42px;
  padding: .56rem .78rem;
  transition: border-color var(--ap-transition), box-shadow var(--ap-transition);
}
body.ap-theme .form-control-sm,
body.ap-theme .form-select-sm {
  min-height: 34px !important;
  padding: .28rem .68rem !important;
  font-size: .84rem !important;
  border-radius: 8px;
}
body.ap-theme textarea.form-control { min-height: 120px; }
body.ap-theme .form-control::placeholder { color: #9ca3af; }
body.ap-theme .form-control:focus,
body.ap-theme .form-select:focus {
  border-color: var(--ap-primary);
  box-shadow: var(--ap-focus);
}
body.ap-theme .form-label { color: #374151; font-size: .86rem; }
body.ap-theme .input-group-text { background: #f9fafb; border-color: var(--ap-border-strong); color: #6b7280; border-radius: 10px; }

/* Input group unified corners & alignment */
body.ap-theme .input-group { border-radius: 10px; }
body.ap-theme .input-group > :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) {
  border-top-left-radius: 0 !important;
  border-bottom-left-radius: 0 !important;
  margin-left: -1px;
}
body.ap-theme .input-group > :not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating) {
  border-top-right-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
}
body.ap-theme .input-group .btn { transform: none !important; }

/* Generic surfaces */
body.ap-theme .card,
.ap-widget,
.ap-panel {
  border: 1px solid var(--ap-border) !important;
  border-radius: var(--ap-radius) !important;
  box-shadow: var(--ap-shadow-sm) !important;
}
body.ap-theme .card { background: var(--ap-surface); }
body.ap-theme .shadow-sm { box-shadow: var(--ap-shadow-sm) !important; }
body.ap-theme .shadow { box-shadow: var(--ap-shadow) !important; }
body.ap-theme .rounded-4 { border-radius: var(--ap-radius-lg) !important; }
body.ap-theme .rounded-3 { border-radius: var(--ap-radius) !important; }
body.ap-theme .bg-light { background-color: var(--ap-surface-soft) !important; }
body.ap-theme .text-muted { color: var(--ap-muted) !important; }
body.ap-theme .border { border-color: var(--ap-border) !important; }
body.ap-theme .border-top,
body.ap-theme .border-bottom { border-color: var(--ap-border) !important; }
body.ap-theme .badge { border-radius: 999px; font-weight: 700; letter-spacing: .01em; padding: .42em .68em; }

/* Homepage */
.ap-hero {
  background:
    radial-gradient(circle at 85% 18%, color-mix(in srgb, var(--ap-primary) 38%, transparent), transparent 27%),
    radial-gradient(circle at 8% 110%, rgba(245, 158, 11, .18), transparent 32%),
    linear-gradient(135deg, var(--ap-dark), color-mix(in srgb, var(--ap-dark) 82%, var(--ap-primary)));
  color: #fff;
  min-height: 500px;
  overflow: hidden;
  position: relative;
}
.ap-hero::after {
  background-image: linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
  background-size: 34px 34px;
  content: "";
  inset: 0;
  mask-image: linear-gradient(to bottom, #000, transparent 85%);
  pointer-events: none;
  position: absolute;
}
.ap-hero-inner { min-height: 500px; position: relative; z-index: 1; }
.ap-hero h1 { color: #fff; font-size: clamp(2.1rem, 4.7vw, 4rem); max-width: 760px; }
.ap-hero .lead { color: rgba(255, 255, 255, .72); font-size: 1.05rem; max-width: 640px; }
.ap-hero-kicker {
  background: rgba(255, 255, 255, .09);
  border: 1px solid rgba(255, 255, 255, .12);
  color: rgba(255,255,255,.9);
}
.ap-hero-visual {
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 28px;
  box-shadow: 0 30px 70px rgba(0,0,0,.22);
  padding: 18px;
  transform: rotate(1.2deg);
}
.ap-hero-visual img { border-radius: 20px; display: block; width: 100%; }
.ap-hero-stats { border-top: 1px solid rgba(255,255,255,.12); margin-top: 1.7rem; padding-top: 1rem; }
.ap-stat-number { color: var(--ap-secondary); font-size: 1.22rem; font-weight: 800; }
.ap-stat-label { color: rgba(255,255,255,.62); font-size: .76rem; }

.ap-search-strip {
  background: #fff;
  border-bottom: 1px solid var(--ap-border);
  box-shadow: 0 10px 28px rgba(15,23,42,.04);
  padding: 18px 0;
  position: relative;
  z-index: 3;
}
.ap-search-strip .form-control { max-width: 390px; }
.ap-search-strip .form-select { max-width: 230px; }

.ap-section { padding: 68px 0; }
.ap-section-soft { background: #f1f3f6; }
.ap-section-dark { background: var(--ap-dark); color: #fff; }
.ap-section-dark h2, .ap-section-dark h3, .ap-section-dark h6 { color: #fff; }
.ap-section-heading { align-items: end; display: flex; gap: 16px; justify-content: space-between; margin-bottom: 28px; }
.ap-section-heading h2 { font-size: clamp(1.5rem, 2.8vw, 2rem); margin: 0; }

.ap-cat-card {
  color: var(--ap-text);
  overflow: hidden;
  transition: transform var(--ap-transition), box-shadow var(--ap-transition), border-color var(--ap-transition);
}
.ap-cat-card:hover { border-color: color-mix(in srgb, var(--ap-primary) 28%, var(--ap-border)) !important; box-shadow: var(--ap-shadow) !important; transform: translateY(-3px); }
.ap-cat-card img { background: #f3f4f6; height: 66px !important; object-fit: cover; width: 66px !important; }

.ap-how-step {
  height: 100%;
  padding: 14px 12px;
}
.ap-how-icon {
  align-items: center;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 18px;
  display: inline-flex;
  height: 62px;
  justify-content: center;
  margin-bottom: 16px;
  width: 62px;
}
.ap-how-icon i { color: var(--ap-secondary); font-size: 1.15rem; }
.ap-how-step p { color: rgba(255,255,255,.62); font-size: .85rem; }

/* Auction cards */
.ap-auction-card {
  background: #fff;
  border: 1px solid var(--ap-border) !important;
  border-radius: var(--ap-radius) !important;
  box-shadow: none !important;
  height: 100%;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  transition: transform var(--ap-transition), box-shadow var(--ap-transition), border-color var(--ap-transition);
}
.ap-auction-card:hover { border-color: #d7dce3 !important; box-shadow: var(--ap-shadow) !important; transform: translateY(-3px); }
.ap-auction-card .card-img-top,
.ap-auction-card .ap-card-img { aspect-ratio: 4 / 3; background: #eef0f3; height: auto !important; object-fit: cover; width: 100%; }
.ap-auction-card .card-body { padding: 14px 15px 16px; display: flex; flex-direction: column; flex-grow: 1; }
.ap-auction-card h6 { font-size: .92rem; line-height: 1.35; margin-bottom: 10px; }
.ap-auction-card .stretched-link::after { z-index: 1; }
.ap-auction-card .btn,
.ap-auction-card button { position: relative; z-index: 2; }
.ap-current-price { color: var(--ap-primary); font-variant-numeric: tabular-nums; }
.ap-countdown { font-variant-numeric: tabular-nums; letter-spacing: .01em; font-weight: 700; }
.badge.ap-countdown,
.badge .ap-countdown { font-variant-numeric: tabular-nums; letter-spacing: .01em; }
.badge.bg-warning.ap-countdown { background-color: #f59e0b !important; color: #111827 !important; }
.badge.bg-danger.ap-countdown { background-color: #dc2626 !important; color: #ffffff !important; }
.badge.bg-secondary.ap-countdown { background-color: #6b7280 !important; color: #ffffff !important; }
.ap-countdown-big {
  background: #fffbeb;
  border: 1px solid #fde68a;
  border-radius: 10px;
  color: #a16207;
  display: inline-block;
  padding: .48rem .72rem;
}
.ap-bid-count { color: var(--ap-muted); }

/* Single auction / listing */
.ap-auction-page main,
.ap-listing-page main { background: #f5f6f8; }
.ap-main-media {
  background: #fff;
  border: 1px solid var(--ap-border);
  border-radius: var(--ap-radius-lg);
  overflow: hidden;
}
.ap-main-media img { background: #f3f4f6; object-fit: contain; width: 100%; }
.ap-gallery-thumb {
  background: #fff;
  border: 2px solid transparent !important;
  border-radius: 9px !important;
  cursor: pointer;
  height: 72px !important;
  object-fit: cover;
  transition: border-color var(--ap-transition), opacity var(--ap-transition);
  width: 72px !important;
}
.ap-gallery-thumb:hover { border-color: #cfd5dd !important; opacity: .9; }
.ap-gallery-thumb.active { border-color: var(--ap-primary) !important; opacity: 1 !important; box-shadow: 0 0 0 2px rgba(37, 99, 235, .25); }
.ap-content { color: #343941; font-size: .96rem; }
.ap-content > * + * { margin-top: .95em; }
.ap-content img { border-radius: var(--ap-radius); height: auto; }
.ap-content blockquote {
  border-left: 3px solid var(--ap-primary);
  color: #4b5563;
  margin: 1.2rem 0;
  padding: .25rem 0 .25rem 1rem;
}
.ap-content table { display: block; max-width: 100%; overflow-x: auto; }

.ap-bid-box,
.ap-buy-box {
  background: #fff;
  border: 1px solid var(--ap-border);
  border-radius: var(--ap-radius-lg);
  box-shadow: var(--ap-shadow-sm);
}
#ap-bid-form .input-group { border-radius: 11px; box-shadow: none; overflow: visible; }
#ap-bid-form .form-control { font-size: 1.08rem; font-weight: 750; }
#ap-bid-form .btn { min-width: 122px; }
.ap-bid-history { max-height: 330px; overflow: auto; }
.ap-bid-history .list-group-item { border-color: var(--ap-border); padding: .75rem .85rem; }

.ap-seller-box img,
.ap-user-avatar { background: #eef0f3; object-fit: cover; }
.ap-stars { color: #f59e0b; white-space: nowrap; }
.ap-stars i { font-size: .82rem; }
.ap-star-input i { color: #cbd0d7; cursor: pointer; font-size: 1.32rem; transition: color var(--ap-transition), transform var(--ap-transition); }
.ap-star-input i:hover { color: #f59e0b; transform: scale(1.08); }

/* Filters / archives */
.ap-filter-form,
.ap-listing-filter {
  background: #fff;
  border: 1px solid var(--ap-border);
  border-radius: var(--ap-radius);
  padding: 16px;
}
.ap-filter-form .form-label,
.ap-listing-filter .form-label { font-size: .78rem; font-weight: 700; }
.ap-filter-form .form-control,
.ap-filter-form .form-select,
.ap-listing-filter .form-control,
.ap-listing-filter .form-select { min-height: 38px; font-size: .84rem; }

/* Dashboard */
.ap-dashboard .list-group {
  border: 1px solid var(--ap-border);
  border-radius: var(--ap-radius);
  overflow: hidden;
}
.ap-dashboard .list-group-item {
  border-color: var(--ap-border);
  color: #4b5563;
  font-size: .88rem;
  font-weight: 600;
  padding: .78rem .9rem;
}
.ap-dashboard .list-group-item:hover { background: #f8f9fa; color: #111827; }
.ap-dashboard .list-group-item.active {
  background: color-mix(in srgb, var(--ap-primary) 9%, #fff);
  border-color: color-mix(in srgb, var(--ap-primary) 16%, var(--ap-border));
  color: var(--ap-primary);
}
.ap-dashboard .table { font-size: .86rem; }
.ap-dashboard .table > :not(caption) > * > * { border-bottom-color: var(--ap-border); padding: .75rem .7rem; }

/* Messages & Contact */
.ap-msg-list { background: #fff; border: 1px solid var(--ap-border); border-radius: var(--ap-radius); }
.ap-msg-list .list-group-item { border-color: var(--ap-border); }
.ap-msg-input { resize: vertical; }
.ap-contact-seller { background: var(--ap-surface); border: 1px solid var(--ap-border) !important; border-radius: var(--ap-radius); }
.ap-widget-auctions { list-style: none; padding: 0; margin: 0; }
.ap-widget-auctions li { border-bottom: 1px solid var(--ap-border); padding: 8px 0; }
.ap-widget-auctions li:last-child { border-bottom: 0; padding-bottom: 0; }


/* Alerts / notices */
body.ap-theme .alert { border-radius: var(--ap-radius); border-width: 1px; font-size: .9rem; }
body.ap-theme .alert-info { background: #f0f9ff; border-color: #bae6fd; color: #075985; }
body.ap-theme .alert-warning { background: #fffbeb; border-color: #fde68a; color: #854d0e; }
body.ap-theme .alert-success { background: #f0fdf4; border-color: #bbf7d0; color: #166534; }
body.ap-theme .alert-danger { background: #fef2f2; border-color: #fecaca; color: #991b1b; }

/* Ads */
.ap-ad,
[class*="ap-ad-"] {
  margin-inline: auto;
  max-width: var(--ap-container);
}
.ap-ad img { border-radius: var(--ap-radius); }

/* Suggestions */
.ap-suggestions {
  background: #fff;
  border: 1px solid var(--ap-border);
  border-radius: 10px;
  box-shadow: var(--ap-shadow);
  display: none;
  margin-top: 4px;
  overflow: hidden;
  position: absolute;
  width: 100%;
  z-index: 1060;
}
.ap-suggest-item { border-bottom: 1px solid var(--ap-border); cursor: pointer; padding: 10px 12px; }
.ap-suggest-item:last-child { border-bottom: 0; }
.ap-suggest-item:hover { background: #f8f9fa; }

/* Tables and pagination */
body.ap-theme .table { --bs-table-bg: transparent; color: var(--ap-text); }
body.ap-theme .table-light { --bs-table-bg: #f7f8fa; color: #4b5563; }
body.ap-theme .table > :not(caption) > * > * { border-bottom-color: var(--ap-border); }
.page-numbers {
  align-items: center;
  background: #fff;
  border: 1px solid var(--ap-border);
  border-radius: 9px;
  color: #374151;
  display: inline-flex;
  font-size: .84rem;
  height: 38px;
  justify-content: center;
  margin: 0 2px;
  min-width: 38px;
  padding: 0 9px;
  text-decoration: none;
}
.page-numbers.current,
.page-numbers:hover { background: var(--ap-primary); border-color: var(--ap-primary); color: #fff; }

/* Modal / toast */
body.ap-theme .modal-content { border: 0; border-radius: var(--ap-radius-lg); box-shadow: 0 24px 80px rgba(15,23,42,.22); }
body.ap-theme .modal-header,
body.ap-theme .modal-footer { border-color: var(--ap-border); }
#ap-toast-container .toast { border: 1px solid var(--ap-border); border-radius: var(--ap-radius); box-shadow: var(--ap-shadow); }

/* Comments */
.comment-list { list-style: none; padding: 0; }
.comment-list .comment { border-bottom: 1px solid var(--ap-border); padding: 1rem 0; }
.comment-list .children { list-style: none; margin-left: 46px; padding-left: 0; }

/* Footer */
.ap-site-footer {
  background: var(--ap-dark);
  color: rgba(255,255,255,.66);
  margin-top: 70px;
}
.ap-site-footer h5,
.ap-site-footer h6 { color: #fff; }
.ap-site-footer a { color: rgba(255,255,255,.67) !important; }
.ap-site-footer a:hover { color: #fff !important; }
.ap-site-footer .btn-outline-light { border-color: rgba(255,255,255,.2); color: rgba(255,255,255,.82) !important; }
.ap-site-footer .btn-outline-light:hover { background: #fff; color: var(--ap-dark) !important; }
.ap-footer-bottom { border-top: 1px solid rgba(255,255,255,.1); color: rgba(255,255,255,.43); font-size: .78rem; }
.ap-footer-security { align-items: center; color: rgba(255,255,255,.5); display: inline-flex; gap: 7px; }

/* WordPress content */
.alignwide { margin-left: auto; margin-right: auto; max-width: 1160px; }
.alignfull { margin-left: calc(50% - 50vw); max-width: 100vw; width: 100vw; }
.wp-caption, .gallery-caption { color: var(--ap-muted); font-size: .82rem; }
.wp-block-image img { border-radius: var(--ap-radius); }

/* Print */
@media print {
  .ap-topbar, .ap-navbar, .ap-breadcrumb-bar, .ap-site-footer, .d-print-none { display: none !important; }
  body.ap-theme, body.ap-theme main { background: #fff !important; }
  body.ap-theme .card { box-shadow: none !important; }
}

/* Mobile */
@media (max-width: 991.98px) {
  .ap-navbar { min-height: 62px; }
  .ap-navbar .navbar-collapse { border-top: 1px solid var(--ap-border); margin-top: 10px; padding: 12px 0 14px; }
  .ap-navbar-search { min-width: 0; width: 100%; }
  .ap-navbar .navbar-nav { gap: 2px; margin-bottom: 8px; }
  .ap-hero, .ap-hero-inner { min-height: auto; }
  .ap-hero { padding: 26px 0; }
  .ap-hero h1 { font-size: clamp(2rem, 8vw, 3.1rem); }
  .ap-section { padding: 52px 0; }
  .sticky-top[style*="top:80px"], .sticky-top[style*="top: 80px"] { position: static !important; }
}

@media (max-width: 767.98px) {
  body.ap-theme { font-size: 14.5px; }
  .ap-search-strip form { align-items: stretch; flex-direction: column; }
  .ap-search-strip .form-control,
  .ap-search-strip .form-select { max-width: none; width: 100%; }
  .ap-section { padding: 42px 0; }
  .ap-section-heading { align-items: center; margin-bottom: 20px; }
  .ap-section-heading h2 { font-size: 1.42rem; }
  .ap-auction-card:hover, .ap-cat-card:hover, body.ap-theme .btn:hover { transform: none; }
  .ap-dashboard .table-responsive { font-size: .82rem; }
  .comment-list .children { margin-left: 20px; }
}

@media (max-width: 575.98px) {
  .ap-hero { text-align: left; }
  .ap-hero .btn { width: 100%; }
  .ap-hero-stats { gap: 18px !important; justify-content: space-between; }
  .ap-stat-number { font-size: 1.05rem; }
  .ap-stat-label { font-size: .68rem; }
  body.ap-theme .card.p-4 { padding: 1rem !important; }
  .ap-gallery-thumb { height: 58px !important; width: 58px !important; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}

/* TikTok Embed, QR & Relist Styles */
.ap-tiktok-card {
  background: #ffffff;
  border-radius: var(--ap-radius);
}
.ap-tiktok-card iframe,
.ap-tiktok-card blockquote {
  margin: 0 auto !important;
  max-width: 100% !important;
}
.ap-relist-btn {
  font-size: 0.78rem !important;
  padding: 0.25rem 0.65rem !important;
}


/* ============================================================
   PORTAL COMPLETO — ESTILOS ADICIONALES (v1.3.0)
   ============================================================ */

/* Filter Pills */
.ap-filter-pills {
  display: flex;
  gap: 8px;
  overflow-x: auto;
  padding-bottom: 6px;
  scrollbar-width: thin;
}
.ap-pill-link {
  background: #ffffff;
  border: 1px solid var(--ap-border);
  border-radius: 999px;
  color: #374151;
  display: inline-flex;
  align-items: center;
  font-size: 0.82rem;
  font-weight: 600;
  padding: 6px 14px;
  text-decoration: none !important;
  transition: all var(--ap-transition);
  white-space: nowrap;
}
.ap-pill-link:hover,
.ap-pill-link.active {
  background: var(--ap-primary);
  border-color: var(--ap-primary);
  color: #ffffff !important;
  box-shadow: 0 4px 12px rgba(37, 99, 235, 0.2);
}

/* Trust Strip */
.ap-trust-strip {
  background: #ffffff;
  border-bottom: 1px solid var(--ap-border);
  padding: 24px 0;
}
.ap-trust-box {
  display: flex;
  align-items: center;
  gap: 14px;
}
.ap-trust-icon {
  align-items: center;
  background: color-mix(in srgb, var(--ap-primary) 10%, #fff);
  border-radius: 12px;
  color: var(--ap-primary);
  display: flex;
  font-size: 1.35rem;
  height: 48px;
  justify-content: center;
  min-width: 48px;
  width: 48px;
}

/* Category Grid Modern */
.ap-cat-card-modern {
  background: #ffffff;
  border: 1px solid var(--ap-border);
  border-radius: var(--ap-radius);
  padding: 18px 12px;
  text-align: center;
  text-decoration: none !important;
  display: block;
  transition: transform var(--ap-transition), box-shadow var(--ap-transition), border-color var(--ap-transition);
}
.ap-cat-card-modern:hover {
  border-color: var(--ap-primary);
  box-shadow: 0 10px 24px rgba(37, 99, 235, 0.1);
  transform: translateY(-3px);
}
.ap-cat-circle-icon {
  align-items: center;
  border-radius: 50%;
  display: inline-flex;
  font-size: 1.4rem;
  height: 54px;
  justify-content: center;
  margin-bottom: 10px;
  width: 54px;
  transition: transform var(--ap-transition);
}
.ap-cat-card-modern:hover .ap-cat-circle-icon {
  transform: scale(1.1);
}

/* Comparison Cards: VIP vs Free */
.ap-comparison-card {
  border: 1px solid var(--ap-border);
  border-radius: var(--ap-radius);
  background: #ffffff;
  padding: 24px;
  position: relative;
  transition: all var(--ap-transition);
}
.ap-comparison-card.vip {
  border-color: #f59e0b !important;
  box-shadow: 0 8px 24px rgba(245, 158, 11, 0.12);
}
.ap-comparison-badge {
  position: absolute;
  top: -12px;
  right: 20px;
  font-size: 0.75rem;
  padding: 4px 12px;
}

/* Testimonial Cards */
.ap-testimonial-card {
  background: #ffffff;
  border: 1px solid var(--ap-border);
  border-radius: var(--ap-radius);
  padding: 24px;
  height: 100%;
}

/* CTA Banner */
.ap-cta-banner {
  background: linear-gradient(135deg, #1e3a8a, #2563eb);
  border-radius: var(--ap-radius-lg);
  color: #ffffff;
  padding: 48px 32px;
  position: relative;
  overflow: hidden;
}
.ap-cta-banner::before {
  content: "";
  position: absolute;
  top: -50%;
  right: -20%;
  width: 400px;
  height: 400px;
  background: radial-gradient(circle, rgba(255,255,255,0.1) 0%, transparent 70%);
  pointer-events: none;
}

/* Demo Simulation Badge */
.ap-demo-notice-tag {
  display: inline-block;
  font-size: 0.72rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  padding: 3px 8px;
  border-radius: 6px;
  background: #fef3c7;
  color: #92400e;
  border: 1px solid #fde68a;
}
