/* Nidoo design system. Shared styles migrated from page HTML. */
:root {
  --nidoo-primary: #46d198;
  --nidoo-primary-hover: #3bbd86;
  --nidoo-accent-pink: #f964af;
  --nidoo-bg-soft: #f7f2eb;
  --nidoo-surface-soft: #f7f5f2;
  --nidoo-text: #2d2a24;
  --nidoo-text-muted: #555;
  --nidoo-border: #e0e0e0;
  --nidoo-radius-sm: 8px;
  --nidoo-radius-md: 12px;
  --nidoo-radius-lg: 20px;
  --nidoo-shadow-card: 0 4px 12px rgb(0 0 0 / 5%);
}

.nidoo-carousel-section .nidoo-carousel-heading,
h2.nidoo-carousel-heading { color: var(--nidoo-primary) !important; }

/* Shared floating artwork */
.nidoo-float-layer { pointer-events: none; }
.nidoo-float-layer img { display: block; max-width: 100%; height: auto; }

:focus-visible { outline: 3px solid var(--nidoo-primary); outline-offset: 3px; }

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

/* Product/content helpers */
.nidoo-benefit p { color: var(--nidoo-text-muted); }
.nidoo-category-card { border-radius: var(--nidoo-radius-lg); }

/* Migrated page-specific decorative layout */
#nidoo-hero-section, #nidoo-contact-section { position: relative !important; overflow: hidden; }
#nidoo-contact-section { min-height: 500px; }
.nidoo-icon-hero, .nidoo-icon-contact { position: absolute !important; z-index: 2 !important; }

@media (max-width: 768px) {
  #nidoo-hero-section .nidoo-icon-hero,
  #nidoo-contact-section .nidoo-icon-contact { animation: none !important; transform: none !important; }
}

@media (max-width: 480px) {
  #nidoo-contact-section .icon-footprint { top:45% !important; right:5% !important; left:auto !important; width:80px !important; }
  #nidoo-contact-section .icon-star-small { top:5% !important; left:10% !important; bottom:auto !important; width:45px !important; }
  #nidoo-contact-section .icon-star-large { top:10% !important; right:10% !important; width:65px !important; }
  #nidoo-contact-section .icon-bear { top:45% !important; left:2% !important; width:130px !important; }
  #nidoo-contact-section .icon-heart { bottom:5% !important; right:2% !important; left:auto !important; width:80px !important; }
  #nidoo-contact-section .icon-horse { top:0 !important; left:8% !important; width:80px !important; }
}

/* Shared controls: keep WooCommerce, Dokan and custom forms visually aligned. */
:where(body) :where(.button, button:not(.menu-toggle):not(.menu-toggle-close):not(.astra-cart-drawer-close), input[type="submit"], input[type="button"], input[type="reset"]) {
  border-radius: var(--nidoo-radius-md) !important;
  font-family: inherit;
  font-weight: 600;
  line-height: 1.2;
  min-height: 44px;
  padding: 12px 20px;
  transition: background-color .2s ease, border-color .2s ease, color .2s ease, transform .2s ease;
}
:where(body) :where(.button, button:not(.menu-toggle):not(.menu-toggle-close):not(.astra-cart-drawer-close), input[type="submit"], input[type="button"], input[type="reset"]) {
  background-color: var(--nidoo-primary);
  border: 1px solid var(--nidoo-primary);
  color: #fffdf7;
}
:where(body) :where(.button, button:not(.menu-toggle):not(.menu-toggle-close):not(.astra-cart-drawer-close), input[type="submit"], input[type="button"], input[type="reset"]):hover {
  background-color: var(--nidoo-primary-hover);
  border-color: var(--nidoo-primary-hover);
  color: #fffdf7;
}
:where(body) :where(input[type="text"], input[type="email"], input[type="tel"], input[type="url"], input[type="number"], input[type="password"], input[type="search"], select, textarea) {
  border: 1px solid var(--nidoo-border);
  border-radius: var(--nidoo-radius-md);
  background: #fff;
  color: var(--nidoo-text);
  min-height: 44px;
  padding: 10px 14px;
  box-sizing: border-box;
}
:where(body) :where(input[type="text"], input[type="email"], input[type="tel"], input[type="url"], input[type="number"], input[type="password"], input[type="search"], select, textarea):focus {
  border-color: var(--nidoo-primary);
  box-shadow: 0 0 0 3px rgb(70 209 152 / 18%);
  outline: none;
}
:where(body) :where(input[type="checkbox"], input[type="radio"]) { min-height: auto; }

/* PHP snippet styles migrated. */

/* Source: 22-nidoo-coupon-always-visible.php */

        /* Mostrar campo de cupón siempre visible */
        .checkout_coupon.woocommerce-form-coupon {
            display: block !important;
            padding: 1em !important;
        }
        /* Ocultar el link "¿Tienes un cupón? Haz clic aquí" */
        .woocommerce-info .showcoupon {
            display: none;
        }
        /* Si el aviso queda vacío, también ocultarlo */
        .woocommerce-info:has(> .showcoupon:only-child) {
            display: none;
        }
    

/* Source: 08-nidoo-admin-dashboard.php */

                                        .nidoo-tabs {
                                            display: flex;
                                            gap: 4px;
                                            border-bottom: 2px solid #c3c4c7;
                                            margin-bottom: 20px;
                                        }

                                        .nidoo-tab-btn {
                                            background: #f0f0f1;
                                            border: 1px solid #c3c4c7;
                                            border-bottom: none;
                                            padding: 8px 16px;
                                            cursor: pointer;
                                            font-weight: 600;
                                            border-radius: 4px 4px 0 0;
                                        }

                                        .nidoo-tab-btn.active {
                                            background: #fff;
                                            border-bottom: 2px solid #fff;
                                            margin-bottom: -2px;
                                            color: #2271b1;
                                        }

                                        .nidoo-tab-panel {
                                            display: none;
                                        }

                                        .nidoo-tab-panel.active {
                                            display: block;
                                        }
                                    

/* Source: 41-nidoo-product-cards-responsive.php */

      /* Cards: predictable rhythm, no giant empty blocks */
      .npc-card, .woocommerce ul.products li.product, .wc-block-product-template > .wc-block-product { min-width: 0; }
      /* Woo blocks carousel inherits equal-height stretch; prevent 1.6kpx cards. */
      .wc-block-product-template.is-product-collection-layout-carousel { height:auto !important; min-height:0 !important; }
      .wc-block-product-template.is-product-collection-layout-carousel > .wc-block-product { align-self:flex-start; height:auto !important; min-height:0 !important; }
      .wp-block-woocommerce-product-collection:has(.is-product-collection-layout-carousel) { height:auto !important; min-height:0 !important; }
      .wc-block-product-template.is-product-collection-layout-carousel > .wc-block-product > * { max-height:none; }
      .npc-card { height: 100%; }
      .npc-img-wrap, .woocommerce ul.products li.product a img { background:#f7f5f2; }
      .npc-img-wrap img, .woocommerce ul.products li.product a img { aspect-ratio:1/1; object-fit:cover; }
      .npc-name, .woocommerce ul.products li.product .woocommerce-loop-product__title, .wc-block-product-template .wc-block-components-product-title { min-height:2.8em; }
      .wc-block-product-template .wc-block-components-product-image { aspect-ratio:1/1; height:auto; }
      .wc-block-product-template .wc-block-components-product-image img { width:100%; height:100%; object-fit:cover; }
      .npc-price, .woocommerce ul.products li.product .price { min-height:1.4em; }
      .woocommerce ul.products li.product { display:flex; flex-direction:column; }
      .woocommerce ul.products li.product > a:first-child { display:flex; flex-direction:column; height:100%; }
      .woocommerce ul.products li.product .button { margin-top:auto; }
      @media (max-width: 600px) {
        .nidoo-carousel-section { padding:28px 16px; }
        .npc-header { margin-bottom:16px; }
        .npc-nav .swiper-button-prev, .npc-nav .swiper-button-next { width:32px; height:32px; }
        .npc-name { font-size:12px; }
        .npc-price { font-size:13px; }
        .woocommerce ul.products { gap:12px !important; }
        .woocommerce ul.products li.product { margin-bottom:0 !important; }
      }
      @media (min-width: 601px) {
        .woocommerce ul.products li.product { padding-bottom:16px; }
      }
    

/* Source: 26-nidoo-gallery-fix.php */

        .woocommerce-product-gallery {
            opacity: 1 !important;
        }
    

/* Source: 39-nidoo-gift-auth-modal.php */

			/* Nidoo-styled Google button: pink outline matching the page's brand */
			.nidoo-gam__google { margin: 0 0 16px; }
			.nidoo-gam__google-label {
				font-size: 12px; font-weight: 500;
				color: #999; text-transform: uppercase;
				letter-spacing: 1px; text-align: center;
				margin-bottom: 10px;
			}
			.nidoo-gam__google .g_id_signin { display: flex; justify-content: center; }
			/* Override Google button default colors to match Nidoo pink */
			.nidoo-gam__google iframe {
				border-radius: 10px !important;
			}
		

/* Source: 39-nidoo-gift-auth-modal.php */

		/* === Nidoo Gift Auth Modal ===
		   Design tokens extracted from nidoo.com.mx/listas-de-regalos/new/.
		   Step indicator style: matches .nidoo-new-layout__steps exactly. */
		@keyframes nidoo-gam-in {
			from { opacity: 0; transform: translateY(18px) scale(.97); }
			to { opacity: 1; transform: translateY(0) scale(1); }
		}
		.nidoo-gam[hidden] { display: none; }
		/* Overlay y diálogo arrancan juntos: evita parpadeo/orden extraño en iOS. */
		.nidoo-gam:not([hidden]) .nidoo-gam__overlay {
			animation: nidoo-gam-overlay-in .42s ease-out both;
			will-change: opacity;
		}
		.nidoo-gam:not([hidden]) .nidoo-gam__dialog {
			animation: nidoo-gam-in .42s cubic-bezier(.22, 1, .36, 1) both;
			will-change: transform, opacity;
		}
		@keyframes nidoo-gam-overlay-in {
			from { opacity: 0; }
			to { opacity: 1; }
		}
		@media (prefers-reduced-motion: reduce) {
			.nidoo-gam:not([hidden]) .nidoo-gam__overlay,
			.nidoo-gam:not([hidden]) .nidoo-gam__dialog { animation: none; }
		}
		.nidoo-gam {
			position: fixed; inset: 0; z-index: 100000;
			display: flex; align-items: center; justify-content: center;
			font-family: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
			padding: 16px;
			box-sizing: border-box;
		}
		.nidoo-gam__overlay {
			position: absolute; inset: 0;
			background: rgba(29, 24, 39, 0.62);
			backdrop-filter: blur(10px);
		}
		.nidoo-gam__dialog {
			position: relative; z-index: 1;
			background: #fffdf7;
			border-radius: 28px;
			max-width: 560px; width: 100%;
			max-height: 90vh; overflow-y: auto;
			padding: 44px 52px 48px;
			box-shadow: 0 28px 80px rgba(31, 24, 42, .28), 0 8px 24px rgba(31, 24, 42, .12);
		}
		.nidoo-gam.is-loading .nidoo-gam__dialog::after {
			content: '';
			position: absolute; inset: 0;
			border-radius: inherit;
			background: rgba(255,253,247,.94) url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" width="46" height="46" viewBox="0 0 46 46"%3E%3Ccircle cx="23" cy="23" r="18" fill="none" stroke="%23f4c9df" stroke-width="5"/%3E%3Cpath d="M23 5a18 18 0 0 1 18 18" fill="none" stroke="%23f964af" stroke-width="5" stroke-linecap="round"/%3E%3C/svg%3E') center 43% / 46px no-repeat;
			animation: nidoo-gam-loading-in .2s ease both;
		}
		.nidoo-gam.is-loading .nidoo-gam__dialog::before {
			content: 'Creando tu cuenta…';
			position: absolute; z-index: 2; inset: 58% 0 auto;
			text-align: center; color: #211d28; font-size: 16px; font-weight: 600;
		}
		@keyframes nidoo-gam-loading-in { from { opacity: 0; } to { opacity: 1; } }

		.nidoo-gam__close {
			position: absolute; top: 14px; right: 14px;
			background: none; border: 0; cursor: pointer;
			font-size: 24px; line-height: 1;
			color: #aaa; padding: 6px 10px;
			border-radius: 6px;
			transition: background 0.2s, color 0.2s;
		}
		.nidoo-gam__close:hover { color: var(--ast-global-color-6, #f964af); background: rgba(249, 100, 175, 0.08); }

		/* Step indicator — pink circle, dark label (page's exact pattern) */
		.nidoo-gam__progress {
			display: flex; align-items: center; justify-content: center; gap: 7px;
			margin: -8px 0 24px; color: #aaa; font-size: 11px; font-weight: 600;
		}
		.nidoo-gam__progress span { display: inline-flex; align-items: center; gap: 4px; white-space: nowrap; }
		.nidoo-gam__progress b { width: 20px; height: 20px; display: inline-flex; align-items: center; justify-content: center; border-radius: 50%; background: #f1b4d2; color: #fff; font-size: 11px; }
		.nidoo-gam__progress .is-complete { color: #46b982; }
		.nidoo-gam__progress .is-complete b { background: #46d198; }
		.nidoo-gam__progress .is-current { color: #d94f94; }
		.nidoo-gam__progress .is-current b { background: #e563a7; box-shadow: 0 0 0 3px rgba(229,99,167,.14); }
		.nidoo-gam__progress i { width: 20px; height: 1px; background: #eadfe6; }

		.nidoo-gam__step {
			display: flex; align-items: center; gap: 12px;
			margin-bottom: 20px;
		}
		.nidoo-gam__step-num {
			flex-shrink: 0;
			width: 36px; height: 36px;
			border-radius: 50%;
			background: var(--ast-global-color-6, #f964af);
			color: #fff;
			display: flex; align-items: center; justify-content: center;
			font-weight: 700; font-size: 16px;
		}
		.nidoo-gam__step-text { flex: 1; }
		.nidoo-gam__step-label {
			font-size: 17px; font-weight: 600;
			color: var(--ast-global-color-7, #333);
			display: block; line-height: 1.4;
		}
		.nidoo-gam__step-desc {
			font-size: 14px; color: #666;
			display: block; margin-top: 2px;
		}

		.nidoo-gam__title {
			font-size: 30px; font-weight: 700;
			letter-spacing: -.6px;
			margin: 0 0 10px; color: #211d28;
			line-height: 1.3;
		}
		.nidoo-gam__subtitle {
			font-size: 15px; color: #706b73;
			margin: 0 0 24px; line-height: 1.6;
		}
		.nidoo-gam__subtitle strong {
			color: var(--ast-global-color-6, #f964af);
			font-weight: 700; word-break: break-all;
		}

		/* Tabs — text only, pink underline on active. No black on active. */
		.nidoo-gam__tabs {
			display: flex; gap: 0;
			border-bottom: 1px solid #e8e0d6;
			margin-bottom: 24px;
		}
		.nidoo-gam__tab {
			flex: 1; padding: 12px 8px;
			background: none; border: 0;
			border-bottom: 3px solid transparent;
			font-family: inherit;
			font-size: 15px; font-weight: 600;
			color: #999; cursor: pointer;
			transition: color 0.2s, border-color 0.2s;
			margin-bottom: -1px;
		}
		.nidoo-gam__tab:hover,
		.nidoo-gam__tab:focus,
		.nidoo-gam__tab:active {
			background: transparent !important;
			color: var(--ast-global-color-6, #f964af) !important;
			box-shadow: none !important;
		}
		.nidoo-gam__tab.is-active {
			color: var(--ast-global-color-6, #f964af);
			border-bottom-color: var(--ast-global-color-6, #f964af);
		}

		.nidoo-gam__google {
			display: flex; flex-direction: column; align-items: center;
			gap: 10px;
			margin-bottom: 8px;
		}
		.nidoo-gam__google-label {
			width: 100%; text-align: center;
			font-size: 12px; letter-spacing: 1px;
			color: #9b969d; text-transform: uppercase;
		}
		.nidoo-gam__google .g_id_signin { max-width: 100%; }
		.nidoo-gam__divider {
			display: flex; align-items: center;
			margin: 20px 0;
			color: #999; font-size: 12px;
			text-transform: uppercase;
			letter-spacing: 1px;
			font-weight: 500;
		}
		.nidoo-gam__divider::before, .nidoo-gam__divider::after {
			content: ''; flex: 1; height: 1px; background: #e8e0d6;
		}
		.nidoo-gam__divider span { padding: 0 12px; }

		.nidoo-gam__form { display: none; }
		.nidoo-gam__form.is-active { display: block; }

		.nidoo-gam__label {
			display: block; margin-bottom: 16px;
		}
		.nidoo-gam__label > span {
			display: block; margin-bottom: 6px;
			font-size: 14px; font-weight: 600;
			color: var(--ast-global-color-7, #333);
		}
		.nidoo-gam__label > span .req {
			color: #d93025; margin-left: 2px;
		}
		.nidoo-gam__label input {
			width: 100%; padding: 12px 16px;
			font-size: 16px !important;
			background: #fff;
			border: 1px solid #e0e0e0; border-radius: 10px;
			box-sizing: border-box;
			color: var(--ast-global-color-7, #333);
			font-family: inherit;
			transition: border-color 0.2s, box-shadow 0.2s;
		}
		.nidoo-gam__label input::placeholder { color: #999; }
		.nidoo-gam__label input:focus {
			outline: none;
			border-color: var(--ast-global-color-6, #f964af);
			box-shadow: 0 0 0 3px rgba(249, 100, 175, 0.15);
		}

		/* Submit — matches .nidoo-new-layout__form button[type=submit] */
		.nidoo-gam__submit {
			width: 100%; padding: 16px 32px;
			background: var(--ast-global-color-6, #f964af);
			color: #fff;
			border: 0; border-radius: 12px;
			font-family: inherit;
			font-size: 16px; font-weight: 700;
			cursor: pointer; margin-top: 12px;
			text-transform: uppercase;
			letter-spacing: 1px;
			transition: opacity 0.3s ease;
		}
		.nidoo-gam__submit:hover { opacity: 0.9; }
		.nidoo-gam__submit:disabled { opacity: 0.6; cursor: wait; }

		.nidoo-gam__forgot {
			display: block; text-align: center;
			margin-top: 14px; font-size: 13px;
			color: var(--ast-global-color-6, #f964af);
			text-decoration: none; font-weight: 500;
		}
		.nidoo-gam__forgot:hover { text-decoration: underline; }

		.nidoo-gam__error {
			margin-top: 14px; padding: 0;
			color: #d93025; font-size: 14px;
			min-height: 0;
		}
		.nidoo-gam input[type="text"],
		.nidoo-gam input[type="email"],
		.nidoo-gam input[type="password"] {
			font-size: 16px !important;
		}

		.nidoo-gam__error:not(:empty) {
			padding: 10px 14px;
			background: rgba(217, 48, 37, 0.06);
			border: 1px solid rgba(217, 48, 37, 0.2);
			border-radius: 10px;
			color: #d93025;
		}

		@media (max-width: 768px) {
			.nidoo-gam__label input,
			.nidoo-gam__form input,
			.nidoo-gam__google iframe {
				font-size: 16px !important;
			}
		}
		@media (max-width: 480px) {
			.nidoo-gam__dialog { padding: 28px 24px; border-radius: 20px; }
			.nidoo-gam__title { font-size: 22px; }
		}
		

/* Source: 18-nidoo-gift-registry-customizations.php */

		/* Two-column layout for gift registry "new" page */
		body.nmgr-new-page .site-content,
		body.nmgr-new-page #primary,
		body.nmgr-new-page .entry-content,
		body.nmgr-new-page .site-main {
			padding-top: 0 !important;
			margin-top: 0 !important;
		}
		body.nmgr-new-page .entry-content {
			margin-top: -56px !important;
		}

		.nidoo-new-layout {
			display: flex;
			flex-direction: row;
			flex-wrap: wrap;
			gap: 40px;
			align-items: flex-start;
			max-width: 1200px;
			width: min(1200px, calc(100vw - 40px));
			box-sizing: border-box;
			position: relative;
			left: 50%;
			transform: translateX(-50%);
			margin: 0;
			padding: 8px 20px 48px;
		}

		.nidoo-new-layout__hero-text {
			flex: 0 0 100%;
			max-width: 100%;
		}

		.nidoo-new-layout__hero-image {
			flex: 0 0 45%;
			max-width: 45%;
			display: flex;
			align-self: center;
			align-items: center;
			justify-content: center;
			border-radius: 28px;
			background: transparent !important;
			overflow: visible;
			box-shadow: none;
		}

		.nidoo-new-layout__hero {
			display: contents;
		}

		.nidoo-new-layout__hero-image img,
		.nidoo-new-layout__hero img {
			width: min(100%, 430px);
			max-width: 430px;
			height: auto;
			aspect-ratio: 1;
			object-fit: cover;
			height: auto;
			border-radius: 24px;
			display: block;
		}

		.nidoo-new-layout__hero-text {
			text-align: left;
			margin-bottom: 24px;
		}

		.nidoo-new-layout__hero-text h1 {
			font-size: 36px;
			margin-top: 0;
			margin-bottom: 0;
			line-height: 1.3;
			color: var(--ast-global-color-7, #333);
		}

		.nidoo-new-layout__hero-text h1 span.nidoo-accent {
			color: var(--ast-global-color-0, #f44e06);
		}

		.nidoo-new-layout__hero-text h1 span.nidoo-baby {
			color: var(--ast-global-color-1, #46d198);
		}

		.nidoo-new-layout__intro {
			margin: 12px 0 0;
			font-size: 17px;
			line-height: 1.5;
			color: #555;
		}

		.nidoo-new-layout__benefits {
			display: flex;
			align-items: center;
			justify-content: center;
			gap: 42px;
			margin: 22px 0 0;
			padding: 0;
			list-style: none;
			font-size: 14px;
			color: #555;
		}

		.nidoo-new-layout__benefits li { margin: 8px 0; white-space: nowrap; }
		.nidoo-new-layout__benefits li::before { content: "✓"; color: #46d198; font-weight: 700; margin-right: 8px; }

		.nidoo-new-layout__steps {
			display: flex;
			align-items: flex-start;
			gap: 8px;
			max-width: 1020px;
			margin: 32px auto 0;
			padding: 0;
			list-style: none;
		}

		.nidoo-new-layout__steps li {
			display: flex;
			align-items: flex-start;
			gap: 10px;
			flex: 1;
			margin-bottom: 0;
			font-size: 17px;
			color: var(--ast-global-color-7, #333);
			line-height: 1.4;
			text-align: left;
		}

		.nidoo-new-layout__steps li .nidoo-step-num {
			flex-shrink: 0;
			width: 36px;
			height: 36px;
			border-radius: 50%;
			background: var(--ast-global-color-6, #f44e06);
			color: #fff;
			display: flex;
			align-items: center;
			justify-content: center;
			font-weight: 700;
			font-size: 16px;
		}

		.nidoo-new-layout__steps li.is-active .nidoo-step-num {
			background: #e563a7;
			box-shadow: 0 0 0 5px rgba(229, 99, 167, .14);
		}
		.nidoo-new-layout__steps li:not(.is-active) {
			opacity: .48;
		}

		.nidoo-new-layout__steps li .nidoo-step-text {
			flex: 1;
		}
		.nidoo-new-layout__steps li:not(:last-child)::after {
			content: '';
			flex: 1;
			height: 1px;
			margin: 18px 4px 0 8px;
			background: #eadfe6;
		}

		.nidoo-new-layout__steps li .nidoo-step-label {
			font-weight: 600;
			display: block;
		}

		.nidoo-new-layout__steps li .nidoo-step-desc {
			font-size: 14px;
			color: #666;
		}

		.nidoo-new-layout__footer {
			flex: 0 0 100%;
			text-align: center;
			margin: -8px 0 0;
		}
		.nidoo-new-layout__footer .nidoo-new-layout__intro {
			margin: 0 0 6px;
		}

		.nidoo-new-layout__form {
			align-self: center;
			flex: 1 1 0;
			min-width: 0;
			width: calc(55% - 20px);
		}

		/* Hide fields that are auto-generated */
		.nidoo-new-layout__form #title_field,
		.nidoo-new-layout__form #first_name_field,
		.nidoo-new-layout__form #last_name_field,
		.nidoo-new-layout__form #shipping_country_field {
			display: none !important;
		}

		/* Section divider before shipping fields */
		.nidoo-new-layout__form .nmgr-form input,
		.nidoo-new-layout__form .nmgr-form select,
		.nidoo-new-layout__form .nmgr-form textarea,
		.nidoo-new-layout__form .nmgr-form button {
			font-size: 16px !important;
		}

		.nidoo-new-layout__form #shipping_address_1_field {
			border-top: 1px solid #e8e0d6;
			padding-top: 20px;
			margin-top: 8px;
		}

		/* Hide the "Add new" header text — redundant with our hero text */
		.nidoo-new-layout__form .nmgr-add-new-header-text {
			display: none;
		}

		/* Remove excess margin from nmgr-template */
		.nidoo-new-layout__form .nmgr-template {
			margin: 0;
		}

		/* Style the form fields for better appearance */
		.nidoo-new-layout__form .nmgr-account-template {
			background: rgba(255, 255, 255, 0.9);
			backdrop-filter: blur(10px);
			-webkit-backdrop-filter: blur(10px);
			border-radius: 24px;
			padding: 40px;
			box-shadow: 0 10px 40px rgba(0, 0, 0, 0.06);
			border: 1px solid rgba(255, 255, 255, 0.3);
		}

		/* Remove default fieldset border inside the card */
		.nidoo-new-layout__form .nmgr-account-template fieldset {
			border: none;
			padding: 0;
			margin: 0;
		}

		.nidoo-new-layout__form .nmgr-form .form-row {
			margin-bottom: 16px;
		}

		.nidoo-new-layout__form .nmgr-form .form-row label {
			font-size: 14px;
			font-weight: 600;
			margin-bottom: 6px;
			display: block;
			color: #333;
		}

		.nidoo-new-layout__form .nmgr-form button[type="submit"],
		.nidoo-new-layout__form .nmgr-form input[type="submit"] {
			background: var(--ast-global-color-6, #f44e06);
			color: #fff;
			border: none;
			border-radius: 12px;
			padding: 16px 32px;
			font-size: 16px;
			font-weight: 700;
			cursor: pointer;
			width: 100%;
			text-transform: uppercase;
			letter-spacing: 1px;
			transition: all 0.3s ease;
			margin-top: 10px;
		}

		.nidoo-new-layout__form .nmgr-form button[type="submit"]:hover,
		.nidoo-new-layout__form .nmgr-form input[type="submit"]:hover {
			opacity: 0.95;
			transform: translateY(-2px);
			box-shadow: 0 8px 18px rgba(249, 100, 175, .24);
		}
		.nidoo-new-layout__form .nmgr-form button[type="submit"]:active,
		.nidoo-new-layout__form .nmgr-form input[type="submit"]:active {
			transform: translateY(0) scale(.985);
			box-shadow: none;
		}

		/* Submit button margin top */
		.nidoo-new-layout__form .nmgr-form .form-group.nmgr-core-fields {
			margin-top: 16px;
		}

		/* Hide the page title on the /new/ page (redundant) */
		body.nmgr-new-page .entry-title,
		body.nmgr-new-page h1.entry-title {
			display: none;
		}

		/* Background of the page - Full width coverage using theme variables */
		body.nmgr-new-page,
		body.nmgr-new-page .site-content,
		body.nmgr-new-page #primary,
		body.nmgr-new-page .ast-container,
		body.nmgr-new-page .entry-content,
		body.nmgr-new-page .site-main {
			background-color: var(--ast-global-color-4) !important;
		}

		/* Mobile: compact hero above form */
		@media (max-width: 768px) {
			.nidoo-new-layout {
				left: auto;
				transform: none;
				flex-direction: column;
				padding: 20px 16px;
				gap: 0;
				align-items: stretch;
			}

			.nidoo-new-layout__hero,
			.nidoo-new-layout__hero-text {
				flex: none;
				max-width: 100%;
			}

			.nidoo-new-layout__hero img,
			.nidoo-new-layout__hero-image {
				display: none !important;
			}

			.nidoo-new-layout__hero-text {
				margin-bottom: 12px;
			}

			.nidoo-new-layout__benefits {
				flex-wrap: wrap;
				justify-content: center;
				gap: 4px 12px;
				margin-top: 12px;
				font-size: 12px;
			}
			.nidoo-new-layout__benefits li { white-space: nowrap; margin: 2px 0; }
			.nidoo-new-layout__footer { margin-top: 18px; }
			.nidoo-new-layout__form { width: 100%; flex: none; }
			/* iOS hace zoom automático cuando controles tienen texto menor a 16px. */
			.nidoo-new-layout__form input,
			.nidoo-new-layout__form select,
			.nidoo-new-layout__form textarea,
			.nidoo-new-layout__form button { font-size: 16px !important; }

			.nidoo-new-layout__hero-text h1 {
				font-size: 22px;
				text-align: center;
			}

			.nidoo-new-layout__steps {
				display: flex;
				flex-direction: row;
				justify-content: center;
				align-items: flex-start;
				gap: 8px;
				margin-top: 16px;
				margin-bottom: 20px;
				max-width: none;
			}

			.nidoo-new-layout__steps li {
				flex-direction: column;
				align-items: center;
				gap: 4px;
				text-align: center;
				flex: 1;
				margin-bottom: 0;
				font-size: 13px;
			}

			.nidoo-new-layout__steps li .nidoo-step-num {
				width: 28px;
				height: 28px;
				font-size: 13px;
			}

			.nidoo-new-layout__steps li .nidoo-step-text {
				display: flex;
				flex-direction: column;
				align-items: center;
			}

			.nidoo-new-layout__steps li .nidoo-step-label {
				font-size: 13px;
			}

			.nidoo-new-layout__steps li .nidoo-step-desc {
				display: none;
			}

			.nidoo-new-layout__form {
				flex: 1;
			}

			.nidoo-new-layout__form .nmgr-add-new-header-text {
				display: none;
			}

			.nidoo-new-layout__form .nmgr-account-template {
				margin: 0 auto;
				max-width: none;
			}
		}

		/* Arrow between steps on mobile */
		@media (max-width: 768px) {
			.nidoo-new-layout__steps {
				gap: 6px;
			}
			.nidoo-new-layout__steps li {
				flex-direction: column;
				align-items: center;
				text-align: center;
			}
			.nidoo-new-layout__steps li:not(:last-child)::after {
				position: absolute;
				left: calc(50% + 18px);
				right: calc(-50% + 18px);
				margin: 14px 0 0;
			}
			.nidoo-new-layout__steps li:not(:first-child)::before {
				display: none;
			}
		}

		/* Ensure no weird spans or theme icons show up next to steps */
		.nidoo-new-layout__steps li::before,
		.nidoo-new-layout__steps li::after {
			content: none !important;
			display: none !important;
		}
	

/* Source: 18-nidoo-gift-registry-customizations.php */

		/* ═══════════════════════════════════════════════════════════
   NIDOO · Gift Registry Profile — Two-Column Layout
   Same style as creation page
   ═══════════════════════════════════════════════════════════ */

		body.nmgr-profile-page {
			background-color: var(--ast-global-color-4, #f8f6f4) !important;
		}

		body.nmgr-profile-page .site-content,
		body.nmgr-profile-page #primary,
		body.nmgr-profile-page .ast-container,
		body.nmgr-profile-page .entry-content,
		body.nmgr-profile-page .site-main {
			background: rgba(255, 255, 255, 0.7) !important;
			backdrop-filter: blur(12px);
			-webkit-backdrop-filter: blur(12px);
		}

		body.nmgr-profile-page .entry-title {
			display: none !important;
		}

		/* Hide the default account section header — we replace it with our hero */
		.nmgr-account-section-header {
			display: none !important;
		}

		/* Two-column layout wrapper */
		.nidoo-profile-layout {
			display: flex;
			flex-direction: row;
			gap: 40px;
			align-items: flex-start;
			max-width: 1200px;
			margin: 0 auto;
			padding: 40px 20px;
		}

		.nidoo-profile-layout__hero {
			flex: 0 0 45%;
			max-width: 45%;
			display: flex;
			flex-direction: column;
			align-items: center;
			justify-content: center;
		}

		.nidoo-profile-layout__hero img {
			width: 100%;
			height: auto;
			border-radius: 24px;
			display: block;
		}

		.nidoo-profile-layout__hero-text {
			text-align: left;
			margin-bottom: 24px;
		}

		.nidoo-profile-layout__hero-text h1 {
			font-size: 36px;
			margin-top: 0;
			margin-bottom: 0;
			line-height: 1.3;
			color: var(--ast-global-color-7, #333);
		}

		.nidoo-profile-layout__hero-text h1 span.nidoo-accent {
			color: var(--ast-global-color-0, #f44e06);
		}

		.nidoo-profile-layout__hero-text h1 span.nidoo-baby {
			color: var(--ast-global-color-1, #46d198);
		}

		.nidoo-profile-layout__form {
			flex: 1;
			min-width: 0;
		}

		/* Form card with glass-morphism */
		.nidoo-profile-layout__form .nmgr-account-template {
			background: rgba(255, 255, 255, 0.75);
			backdrop-filter: blur(12px);
			-webkit-backdrop-filter: blur(12px);
			border-radius: 24px;
			padding: 40px;
			box-shadow: 0 8px 40px rgba(0, 0, 0, 0.04);
			border: 1px solid rgba(255, 255, 255, 0.3);
		}

		/* Remove default fieldset border inside the card */
		.nidoo-profile-layout__form .nmgr-account-template fieldset {
			border: none;
			padding: 0;
			margin: 0;
		}

		.nidoo-profile-layout__form .nmgr-form .form-row {
			margin-bottom: 16px;
		}

		.nidoo-profile-layout__form .nmgr-form .form-row label {
			font-size: 14px;
			font-weight: 600;
			margin-bottom: 6px;
			display: block;
			color: #333;
		}

		.nidoo-profile-layout__form .nmgr-form button[type="submit"],
		.nidoo-profile-layout__form .nmgr-form input[type="submit"] {
			background: var(--ast-global-color-6, #f44e06);
			color: #fff;
			border: none;
			border-radius: 12px;
			padding: 16px 32px;
			font-size: 16px;
			font-weight: 700;
			cursor: pointer;
			width: 100%;
			text-transform: uppercase;
			letter-spacing: 1px;
			transition: all 0.3s ease;
			margin-top: 10px;
		}

		.nidoo-profile-layout__form .nmgr-form button[type="submit"]:hover,
		.nidoo-profile-layout__form .nmgr-form input[type="submit"]:hover {
			opacity: 0.9;
		}

		/* Section divider before shipping fields */
		.nidoo-profile-layout__form #shipping_address_1_field {
			border-top: 1px solid #e8e0d6;
			padding-top: 20px;
			margin-top: 8px;
		}

		/* Hide country field — default Mexico */
		.nidoo-profile-layout__form #shipping_country_field {
			display: none !important;
		}

		/* Remove the title link to wishlist — redundant */
		.nmgr-wishlist-title {
			display: none !important;
		}

		/* Hide the template-title "profile" heading */
		.nmgr-template-title.profile {
			display: none !important;
		}

		/* Mobile: stack hero above form */
		@media (max-width: 768px) {
			.nidoo-profile-layout {
				flex-direction: column;
				padding: 20px 16px;
				gap: 0;
				align-items: stretch;
			}

			.nidoo-profile-layout__hero {
				flex: none;
				max-width: 100%;
			}

			.nidoo-profile-layout__hero img {
				display: none;
			}

			.nidoo-profile-layout__hero-text {
				margin-bottom: 12px;
			}

			.nidoo-profile-layout__hero-text h1 {
				font-size: 22px;
				text-align: center;
			}

			.nidoo-profile-layout__form {
				flex: 1;
			}

			.nidoo-profile-layout__form .nmgr-account-template {
				padding: 24px 20px;
				border-radius: 18px;
			}
		}
	

/* Source: 18-nidoo-gift-registry-customizations.php */

/* ═══════════════════════════════════════════════════════════
   NIDOO · Gift Registry Table — Premium Boutique
   Card rows · No vertical lines · Mint green accents
   ═══════════════════════════════════════════════════════════ */

/* ── Container background ── */
/* Ensure the page background is the warm cream */

/* ── Hide page titles (repetitive) ── */
.nmgr-title,
h1.entry-title {
	display: none !important;
}

/* ── Reset: remove all borders / gridlines ── */
#nmgr_table_items.nmgr-items-view.list,
#nmgr_table_items.nmgr-items-view.list th,
#nmgr_table_items.nmgr-items-view.list td,
#nmgr_table_items.nmgr-items-view.list tr {
	border: none !important;
	background: transparent !important;
}

#nmgr_table_items.nmgr-items-view.list {
	border-collapse: separate !important;
	border-spacing: 0 !important;
	width: 100%;
}

/* ── Header row ── */
#nmgr_table_items.nmgr-items-view.list thead tr {
	border-bottom: 1px solid #e8e0d6 !important;
}

#nmgr_table_items.nmgr-items-view.list thead th {
	padding: 16px 12px !important;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
	font-size: 10px;
	font-weight: 700;
	color: #b5ada5;
	text-transform: uppercase;
	letter-spacing: 1.2px;
	vertical-align: middle;
	white-space: nowrap;
}

/* Header icons hidden (we use text labels) */
#nmgr_table_items.nmgr-items-view.list thead th .nmgr-icon {
	display: none !important;
}

/* ── Card rows ── */
#nmgr_table_items.nmgr-items-view.list .tbody .item {
	display: table-row;
	background: #fff !important;
	border-radius: 16px;
	box-shadow: 0 4px 20px rgba(0,0,0,0.04), 0 1px 3px rgba(0,0,0,0.02);
	transition: box-shadow 0.3s ease, transform 0.2s ease;
}

#nmgr_table_items.nmgr-items-view.list .tbody .item:hover {
	box-shadow: 0 8px 30px rgba(0,0,0,0.07);
}

/* Cell defaults for card rows */
#nmgr_table_items.nmgr-items-view.list .tbody .item td {
	padding: 20px 12px !important;
	vertical-align: middle;
	background: #fff !important;
}

/* Rounded corners: first and last cell */
#nmgr_table_items.nmgr-items-view.list .tbody .item td:first-child {
	border-radius: 16px 0 0 16px !important;
}
#nmgr_table_items.nmgr-items-view.list .tbody .item td:last-child {
	border-radius: 0 16px 16px 0 !important;
}

/* Spacing between rows */
#nmgr_table_items.nmgr-items-view.list .tbody .item:not(:last-child) td {
	padding-bottom: 20px !important;
}

/* ── Thumbnail: large, rounded square ── */
#nmgr_table_items.nmgr-items-view.list .tbody .item td.nmgr_thumbnail {
	width: 100px;
	padding: 16px 8px 16px 20px !important;
}

#nmgr_table_items.nmgr-items-view.list .tbody .item td.nmgr_thumbnail .thumbnail img {
	width: 80px !important;
	height: 80px !important;
	min-width: 80px !important;
	border-radius: 14px !important;
	object-fit: cover;
	box-shadow: 0 2px 8px rgba(0,0,0,0.06);
}

/* ── Product title + SKU ── */
#nmgr_table_items.nmgr-items-view.list .tbody .item td.nmgr_title {
	min-width: 180px;
}

#nmgr_table_items.nmgr-items-view.list .nmgr-product-name {
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
	font-size: 16px;
	font-weight: 600;
	color: #2c2c2c;
	text-decoration: none;
	line-height: 1.3;
	display: block;
	margin-bottom: 2px;
}

#nmgr_table_items.nmgr-items-view.list .nmgr-product-name:hover {
	color: #46d198;
}

#nmgr_table_items.nmgr-items-view.list .sku.meta-item {
	font-size: 12px;
	color: #c5bdb5;
	font-weight: 400;
	margin-top: 0;
}

#nmgr_table_items.nmgr-items-view.list .sku.meta-item strong {
	font-weight: 400;
	color: #c5bdb5;
}

/* ── Cost ── */
#nmgr_table_items.nmgr-items-view.list .tbody .item td.nmgr_cost {
	white-space: nowrap;
	font-size: 15px;
	font-weight: 600;
	color: #2c2c2c;
	text-align: center !important;
}

/* ── Quantity input ── */
#nmgr_table_items.nmgr-items-view.list .tbody .item td.nmgr_quantity {
	text-align: center !important;
}

#nmgr_table_items.nmgr-items-view.list input.quantity {
	width: 3.4em !important;
	height: 36px !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	padding: 4px 6px !important;
	border: 1.5px solid #e0d8d0 !important;
	border-radius: 10px !important;
	background: #faf8f6 !important;
	color: #2c2c2c !important;
	text-align: center !important;
	box-shadow: none !important;
	outline: none !important;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

#nmgr_table_items.nmgr-items-view.list input.quantity:focus {
	border-color: #46d198 !important;
	box-shadow: 0 0 0 3px rgba(70, 209, 152, 0.12) !important;
}

/* Remove spinner arrows for cleaner look */
#nmgr_table_items.nmgr-items-view.list input.quantity::-webkit-inner-spin-button,
#nmgr_table_items.nmgr-items-view.list input.quantity::-webkit-outer-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

#nmgr_table_items.nmgr-items-view.list input.quantity[type="number"] {
	-moz-appearance: textfield;
}

/* ── Quantity +/- buttons (owner edit mode) ── */
#nmgr_table_items.nmgr-items-view.list .nidoo-qty-wrap {
	display: inline-flex;
	align-items: center;
	gap: 0;
	border: 1.5px solid #e0d8d0;
	border-radius: 10px;
	background: #faf8f6;
	overflow: hidden;
}

#nmgr_table_items.nmgr-items-view.list .nidoo-qty-wrap .nidoo-qty-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 36px;
	background: transparent;
	border: none;
	color: #8a827a;
	font-size: 16px;
	font-weight: 600;
	cursor: pointer;
	user-select: none;
	transition: background 0.15s, color 0.15s;
	padding: 0;
	line-height: 1;
}

#nmgr_table_items.nmgr-items-view.list .nidoo-qty-wrap .nidoo-qty-btn:hover {
	background: #f0eae4;
	color: #4a4540;
}

#nmgr_table_items.nmgr-items-view.list .nidoo-qty-wrap .nidoo-qty-btn:active {
	background: #e0d8d0;
}

#nmgr_table_items.nmgr-items-view.list .nidoo-qty-wrap input.quantity {
	width: 2.8em !important;
	height: 36px !important;
	border: none !important;
	border-radius: 0 !important;
	background: transparent !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	color: #2c2c2c !important;
	text-align: center !important;
	padding: 4px 0 !important;
	box-shadow: none !important;
	outline: none !important;
	-moz-appearance: textfield;
}

#nmgr_table_items.nmgr-items-view.list .nidoo-qty-wrap input.quantity::-webkit-inner-spin-button,
#nmgr_table_items.nmgr-items-view.list .nidoo-qty-wrap input.quantity::-webkit-outer-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

/* ── Total cost ── */
#nmgr_table_items.nmgr-items-view.list .tbody .item td.nmgr_total_cost {
	white-space: nowrap;
	font-size: 15px;
	font-weight: 700;
	color: #2c2c2c;
	text-align: center !important;
}

/* ── Action column (add-to-cart + comprado fuera) ── */
#nmgr_table_items.nmgr-items-view.list .tbody .item td.nmgr_add_to_cart_button {
	text-align: right !important;
	padding-right: 20px !important;
	min-width: 180px;
}

/* Remove the quantity float left inside add-to-cart form — we hide it */
.nmgr-add-to-cart-form .quantity:not(.hidden) {
	float: none !important;
	margin-right: 0 !important;
}

/* Hide the inline quantity input inside the add-to-cart form (the main qty is in nmgr_quantity column) */
.nmgr-add-to-cart-form .quantity {
	display: none !important;
}

/* Primary button: AÑADIR AL CARRITO */
#nmgr_table_items .nmgr_add_to_cart_button.button,
.nmgr-add-to-cart-form .nmgr_add_to_cart_button.button {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	background: #46d198 !important;
	border: none !important;
	color: #fff !important;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
	font-weight: 700 !important;
	font-size: 11px !important;
	letter-spacing: 0.8px;
	padding: 14px 22px !important;
	min-height: 48px;
	border-radius: 10px !important;
	text-transform: uppercase;
	cursor: pointer;
	transition: all 0.25s ease;
	box-shadow: 0 4px 12px rgba(70, 209, 152, 0.25);
	width: 100%;
	margin: 0 0 8px 0 !important;
	line-height: 1.2 !important;
	white-space: nowrap !important;
	min-width: 160px;
}

#nmgr_table_items .nmgr_add_to_cart_button.button:hover,
.nmgr-add-to-cart-form .nmgr_add_to_cart_button.button:hover {
	background: #3bbd86 !important;
	box-shadow: 0 6px 16px rgba(70, 209, 152, 0.35);
	transform: translateY(-1px);
}

/* Secondary outline button: COMPRADO FUERA */
.nidoo-manual-claim-wrapper {
	margin-top: 0 !important;
}

.nidoo-manual-claim-wrapper .button,
a.nidoo-manual-claim-wishlist-item {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	white-space: nowrap !important;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
	font-size: 10px !important;
	font-weight: 600 !important;
	letter-spacing: 0.5px;
	padding: 8px 18px !important;
	line-height: 1.4 !important;
	background: transparent !important;
	color: #46d198 !important;
	border: 1.5px solid #46d198 !important;
	border-radius: 10px !important;
	text-decoration: none !important;
	text-transform: uppercase;
	transition: all 0.25s ease;
	width: 100%;
	min-width: 160px;
	box-sizing: border-box;
}

.nidoo-manual-claim-wrapper .button:hover,
a.nidoo-manual-claim-wishlist-item:hover {
	background: rgba(70, 209, 152, 0.06) !important;
	color: #3bbd86 !important;
	border-color: #3bbd86 !important;
}

/* ── Action buttons (gear icon column) ── */
#nmgr_table_items.nmgr-items-view.list .tbody .item td.nmgr_action_buttons {
	text-align: center !important;
	width: 30px;
	padding-right: 18px !important;
}

#nmgr_table_items .nmgr-dropdown-btn {
	background: transparent !important;
	border: none !important;
	color: #bbb !important;
	font-size: 18px;
	padding: 4px !important;
}

#nmgr_table_items .nmgr-dropdown-btn:hover {
	color: #888 !important;
}

/* ── Totals card premium ── */
.nmgr-after-table-row.items-total-cost {
	background: rgba(255,255,255,0.85) !important;
	backdrop-filter: blur(6px);
	-webkit-backdrop-filter: blur(6px);
	border: 1px solid rgba(232,224,214,0.4);
	border-radius: 18px !important;
	padding: 22px 24px !important;
	box-shadow: 0 4px 24px rgba(0,0,0,0.03) !important;
}

.nmgr-after-table-row.items-total-cost table.total {
	border: none;
}

.nmgr-after-table-row.items-total-cost table.total td {
	padding: 6px 0 !important;
	border: none !important;
	background: transparent !important;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}

.nmgr-after-table-row.items-total-cost table.total .nmgr_label {
	font-size: 14px !important;
	font-weight: 500 !important;
	color: #6a625a !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
	padding-left: 0 !important;
	padding-right: 12px !important;
}

.nmgr-after-table-row.items-total-cost table.total .nmgr_label .nmgr-help svg {
	width: 14px;
	height: 14px;
	opacity: 0.4;
	vertical-align: middle;
}

.nmgr-after-table-row.items-total-cost table.total .nmgr_spacer {
	display: none !important;
}

.nmgr-after-table-row.items-total-cost table.total .nmgr_content {
	font-size: 16px !important;
	font-weight: 600 !important;
	color: #2c2c2c !important;
	text-align: right !important;
	padding-right: 0 !important;
	white-space: nowrap;
}

.nmgr-after-table-row.items-total-cost table.total .nmgr-row-amount_needed td {
	border-top: 1px solid rgba(70,209,152,0.2) !important;
	padding-top: 10px !important;
	margin-top: 4px;
}

.nmgr-after-table-row.items-total-cost table.total .nmgr-row-amount_needed .nmgr_content {
	color: #46d198 !important;
	font-weight: 700 !important;
	font-size: 18px !important;
}

/* ── Sharing section premium ── */
.nmgr-sharing {
	max-width: 780px;
	margin: 32px auto 0;
	padding: 0 20px;
	text-align: center;
}

.nmgr-sharing .nmgr-template-title.sharing {
	font-size: 1.2rem !important;
	font-weight: 600 !important;
	color: #4a4540 !important;
	margin: 0 0 16px 0 !important;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}

.nmgr-sharing-options {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 12px;
	margin-bottom: 20px;
}

.nmgr-sharing-options .share-item a {
	background: rgba(255,255,255,0.85) !important;
	border: 1px solid rgba(70,209,152,0.15) !important;
	border-radius: 50% !important;
	padding: 9px !important;
	transition: all 0.2s ease;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
}

.nmgr-sharing-options .share-item a:hover {
	background: #fff !important;
	border-color: rgba(70,209,152,0.4) !important;
	transform: translateY(-1px);
	box-shadow: 0 4px 12px rgba(70,209,152,0.12);
}

.nmgr-sharing-options .share-item a svg {
	width: 1.2em;
	height: 1.2em;
}

.nmgr-sharing-options .share-item a svg[fill="white"] {
	fill: #46d198 !important;
}

.nmgr-sharing-options .share-item a svg path[fill="white"] {
	fill: #46d198 !important;
}

/* Copy link — button instead of raw URL */
.nmgr-copy-wrapper {
	max-width: 780px;
	margin: 0 auto 16px;
	padding: 0 20px;
	text-align: center;
}

.nmgr-copy-wrapper > div[title] {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	gap: 8px;
	width: 100%;
	max-width: 360px;
	padding: 12px 20px !important;
	margin-top: 0 !important;
	background: rgba(255,255,255,0.85) !important;
	border: 1px solid rgba(232,224,214,0.5) !important;
	border-radius: 12px !important;
	cursor: pointer;
	transition: all 0.2s ease;
	color: #6a625a !important;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
	font-size: 13px;
	font-weight: 500;
	box-sizing: border-box;
}

.nmgr-copy-wrapper > div[title]:hover {
	background: #fff !important;
	border-color: rgba(70,209,152,0.3) !important;
	color: #46d198 !important;
	box-shadow: 0 4px 16px rgba(70,209,152,0.08);
}

.nmgr-copy-wrapper .nmgr-copy {
	border: none !important;
	margin-left: 0 !important;
	font-size: 13px;
	color: inherit;
}

.nmgr-copy-wrapper svg {
	flex-shrink: 0;
}

/* ── Carousel premium ── */
.npc-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0 20px;
	margin-bottom: 20px;
}

.nidoo-carousel-heading {
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
	font-size: 22px !important;
	font-weight: 700 !important;
	color: #2c2c2c !important;
	margin: 0 !important;
	line-height: 1.3;
}

/* Nav arrows — thin outline */
.npc-nav .swiper-button-prev,
.npc-nav .swiper-button-next {
	position: static !important;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: rgba(255,255,255,0.85);
	border: 1px solid rgba(70,209,152,0.2);
	color: #46d198 !important;
	transition: all 0.2s ease;
	margin-top: 0 !important;
}

.npc-nav .swiper-button-prev::after,
.npc-nav .swiper-button-next::after {
	font-size: 14px !important;
	font-weight: 700;
}

.npc-nav .swiper-button-prev:hover,
.npc-nav .swiper-button-next:hover {
	background: #fff;
	border-color: rgba(70,209,152,0.5);
	box-shadow: 0 4px 12px rgba(70,209,152,0.1);
}

.nidoo-gr-products p {
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
	font-size: 15px !important;
	line-height: 1.7 !important;
	color: #8a827a !important;
	padding: 0 20px;
}

.nidoo-gr-products p a {
	color: #46d198 !important;
	font-weight: 600;
}

/* ── Mobile responsive ── */
@media (max-width: 768px) {
	.nmgr-after-table-row.items-total-cost {
		padding: 16px 18px !important;
		border-radius: 14px !important;
	}

	.nmgr-after-table-row.items-total-cost table.total .nmgr_label {
		font-size: 13px !important;
	}

	.nmgr-after-table-row.items-total-cost table.total .nmgr_content {
		font-size: 15px !important;
	}

	.nmgr-after-table-row.items-total-cost table.total .nmgr-row-amount_needed .nmgr_content {
		font-size: 16px !important;
	}

	.nmgr-sharing .nmgr-template-title.sharing {
		font-size: 1.1rem !important;
	}

	.nmgr-sharing-options {
		gap: 10px;
	}

	.nidoo-carousel-heading {
		font-size: 18px !important;
	}

	.nidoo-gr-products p {
		font-size: 14px !important;
	}
}

/* ═══════════════════════════════════════════
   GIFT HEADER — Admin bar, title, shop btn
   ═══════════════════════════════════════════ */

.nidoo-gift-header {
	max-width: 780px;
	margin: 0 auto;
	padding: 0 20px;
}

.nidoo-completion-notice {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 18px 0 24px;
	padding: 14px 18px;
	border: 1px solid #f1c2d9;
	border-radius: 12px;
	background: #fff5fa;
	color: #4b3b45;
}
.nidoo-completion-notice span { flex: 1; font-size: 13px; }
.nidoo-completion-notice a { color: #d94f94; font-weight: 700; white-space: nowrap; }

.nidoo-list-progress {
	font-family: "Poppins", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 24px;
	margin: 0 0 20px;
	font-size: 14px;
	color: #aaa;
}
.nidoo-list-progress span { display: inline-flex; align-items: center; gap: 8px; }
.nidoo-list-progress b {
	display: inline-flex; align-items: center; justify-content: center;
	width: 30px; height: 30px; border-radius: 50%;
	background: #f1b4d2; color: #fff; font-size: 14px;
}
.nidoo-list-progress .is-complete { color: #46b982; font-weight: 600; }
.nidoo-list-progress .is-complete b { background: #46d198; }
.nidoo-list-progress .is-current { color: #222; font-weight: 700; }
.nidoo-list-progress .is-current b { background: #e563a7; box-shadow: 0 0 0 4px rgba(229, 99, 167, .14); }
@media (max-width: 600px) {
	.nidoo-list-progress { gap: 8px; font-size: 11px; }
	.nidoo-list-progress span { flex-direction: column; gap: 4px; text-align: center; }
}

.nidoo-header-step {
	margin: 0 0 8px;
	color: #d94f94;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
}

/* ── Admin toolbar (owner only) ── */
.nidoo-admin-toolbar {
	display: flex;
	align-items: stretch;
	gap: 10px;
	margin-bottom: 40px;
}

.nidoo-toolbar-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	flex: 1;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
	font-size: 13px;
	font-weight: 600;
	color: #46d198;
	background: transparent;
	border: 1px solid rgba(70,209,152,0.3);
	text-decoration: none;
	padding: 11px 16px;
	border-radius: 12px;
	transition: all 0.2s ease;
}

.nidoo-toolbar-btn:hover {
	background: rgba(70,209,152,0.06);
	color: #3bbd86;
	border-color: rgba(70,209,152,0.6);
}

.nidoo-toolbar-btn svg {
	flex-shrink: 0;
}

/* ── Main header ── */
.nidoo-header-main {
	text-align: center;
	margin-bottom: 48px;
}

.nidoo-header-title {
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
	font-size: 32px;
	font-weight: 700;
	color: #2c2c2c;
	margin: 0 0 6px 0;
	line-height: 1.2;
}

.nidoo-header-subtitle {
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
	font-size: 14px;
	font-weight: 400;
	color: #8a827a;
	margin: 0;
	line-height: 1.5;
}

/* ── Progress bar ── */
.nmgr-items-count-progress {
	max-width: 580px;
	margin: 0 auto 32px;
	padding: 16px 0;
	background: transparent;
	box-shadow: none;
	border-radius: 0;
	display: flex;
	align-items: center;
	gap: 16px;
}

.nmgr-items-count-progress .nmgr-progressbar-wrapper {
	flex: 1;
	margin-right: 0;
}

.nmgr-items-count-progress .nmgr-progressbar {
	background: #f0eae4;
	border-radius: 20px;
	overflow: hidden;
	height: 6px;
	display: flex;
	align-items: center;
}

.nmgr-items-count-progress .nmgr-progressbar .progress {
	background: #46d198;
	height: 6px;
	border-radius: 20px;
	min-width: 6px;
}

.nmgr-items-count-progress .percent {
	display: none;
}

.nmgr-items-count-progress .nmgr-item-count {
	font-size: 14px;
	font-weight: 500;
	color: #8a827a;
	white-space: nowrap;
	margin-left: 0;
}

/* ── Responsive ── */
@media (max-width: 900px) {
	/* ── Header ── */
	.nidoo-header-title {
		font-size: 24px;
	}

	.nidoo-header-subtitle {
		font-size: 13px;
	}

	.nidoo-admin-toolbar {
		gap: 8px;
		margin-bottom: 32px;
	}

	.nidoo-toolbar-btn {
		font-size: 12px;
		padding: 10px 12px;
	}

	/* ── Progress bar ── */
	.nmgr-items-count-progress {
		max-width: 100%;
		padding: 12px 4px;
	}

	/* ── Table cells (tablet adjustments) ── */
	#nmgr_table_items.nmgr-items-view.list .tbody .item td {
		padding: 14px 8px !important;
	}

	#nmgr_table_items.nmgr-items-view.list .tbody .item td.nmgr_thumbnail {
		width: 70px;
		padding: 12px 4px 12px 14px !important;
	}

	#nmgr_table_items.nmgr-items-view.list .tbody .item td.nmgr_thumbnail .thumbnail img {
		width: 60px !important;
		height: 60px !important;
		min-width: 60px !important;
	}

	#nmgr_table_items.nmgr-items-view.list .tbody .item td.nmgr_title {
		min-width: 120px;
	}

	#nmgr_table_items.nmgr-items-view.list .nmgr-product-name {
		font-size: 13px;
	}

	#nmgr_table_items.nmgr-items-view.list .tbody .item td.nmgr_add_to_cart_button {
		min-width: 140px;
		padding-right: 14px !important;
	}

	#nmgr_table_items .nmgr_add_to_cart_button.button,
	.nmgr-add-to-cart-form .nmgr_add_to_cart_button.button,
	.nidoo-manual-claim-wrapper .button {
		padding: 10px 14px !important;
		font-size: 10px !important;
		min-height: 44px;
		min-width: 120px;
	}
}

@media (max-width: 768px) {
	/* ══════════════════════════════════════════════════════
	   MOBILE: Compact product cards
	   ══════════════════════════════════════════════════════ */

	/* ── Hide header (NMGR default already does this, but reinforce) ── */
	#nmgr_table_items.nmgr-items-view.list thead {
		display: none !important;
	}

	/* ── Hide data-title labels (NMGR shows them on mobile) ── */
	#nmgr_table_items.nmgr-items-view.list td[data-title]:before {
		display: none !important;
		content: none !important;
	}

	/* ── Remove NMGR default clearfix ── */
	#nmgr_table_items.nmgr-items-view.list td:after {
		display: none !important;
	}

	/* ── Tbody: flex column with gaps ── */
	#nmgr_table_items.nmgr-items-view.list .tbody {
		display: flex !important;
		flex-direction: column;
		gap: 14px;
	}

	/* ── Each row = card ── */
	#nmgr_table_items.nmgr-items-view.list .tbody .item {
		display: flex !important;
		flex-wrap: wrap;
		background: #fff !important;
		border-radius: 16px !important;
		box-shadow: 0 2px 12px rgba(0,0,0,0.05) !important;
		padding: 14px !important;
		margin: 0 !important;
		border: none !important;
		position: relative;
	}

	/* ── Reset all cells ── */
	#nmgr_table_items.nmgr-items-view.list .tbody .item td {
		display: block !important;
		padding: 0 !important;
		margin: 0 !important;
		border: none !important;
		background: transparent !important;
		box-shadow: none !important;
		border-radius: 0 !important;
		text-align: left !important;
		width: auto !important;
		line-height: 1.4;
	}

	/* ── Image: left 33% ── */
	#nmgr_table_items.nmgr-items-view.list .tbody .item td.nmgr_thumbnail {
		width: 33% !important;
		padding-right: 12px !important;
		align-self: flex-start;
	}

	#nmgr_table_items.nmgr-items-view.list .tbody .item td.nmgr_thumbnail .thumbnail img {
		width: 100% !important;
		height: auto !important;
		min-width: auto !important;
		border-radius: 12px !important;
		box-shadow: 0 2px 6px rgba(0,0,0,0.06);
	}

	/* ── Title + SKU: right 67% ── */
	#nmgr_table_items.nmgr-items-view.list .tbody .item td.nmgr_title {
		width: 67% !important;
	}

	#nmgr_table_items.nmgr-items-view.list .nmgr-product-name {
		font-size: 14px;
		font-weight: 600;
		color: #2c2c2c;
		line-height: 1.3;
		margin-bottom: 2px;
	}

	#nmgr_table_items.nmgr-items-view.list .sku.meta-item {
		font-size: 11px;
		color: #c5bdb5;
	}

	/* ── Price + quantity: inline row below title, aligned with right column ── */
	#nmgr_table_items.nmgr-items-view.list .tbody .item td.nmgr_cost,
	#nmgr_table_items.nmgr-items-view.list .tbody .item td.nmgr_quantity {
		display: inline-block !important;
		vertical-align: middle;
		margin-top: 8px;
		margin-left: 33% !important;
		padding-left: 12px !important;
	}

	#nmgr_table_items.nmgr-items-view.list .tbody .item td.nmgr_cost {
		font-size: 15px;
		font-weight: 700;
		color: #2c2c2c;
		margin-right: 8px;
	}

	#nmgr_table_items.nmgr-items-view.list input.quantity {
		width: 48px !important;
		height: 30px !important;
		font-size: 13px !important;
		padding: 2px 4px !important;
	}

	/* ── Quantity +/- buttons mobile ── */
	#nmgr_table_items.nmgr-items-view.list .nidoo-qty-wrap {
		display: inline-flex;
	}

	#nmgr_table_items.nmgr-items-view.list .nidoo-qty-wrap .nidoo-qty-btn {
		width: 28px;
		height: 30px;
		font-size: 14px;
	}

	#nmgr_table_items.nmgr-items-view.list .nidoo-qty-wrap input.quantity {
		width: 2.4em !important;
		height: 30px !important;
		font-size: 13px !important;
	}

	/* ── Hide total on mobile ── */
	#nmgr_table_items.nmgr-items-view.list .tbody .item td.nmgr_total_cost {
		display: none !important;
	}

	/* ── Gear (⋯) inline with ADD TO CART ── */
	#nmgr_table_items.nmgr-items-view.list .tbody .item td.nmgr_action_buttons {
		display: flex !important;
		align-items: center;
		justify-content: center;
		width: 48px !important;
		min-width: 48px;
		padding: 0 !important;
		margin-top: 10px !important;
	}

	#nmgr_table_items.nmgr-items-view.list .tbody .item td.nmgr_action_buttons .nmgr-dropdown-btn {
		width: 48px !important;
		height: 48px !important;
		display: flex !important;
		align-items: center;
		justify-content: center;
		background: #f5f3f1;
		border-radius: 10px;
		color: #bfb8b0;
		font-size: 20px;
		padding: 0 !important;
		transition: all 0.2s ease;
	}

	#nmgr_table_items.nmgr-items-view.list .tbody .item td.nmgr_action_buttons .nmgr-dropdown-btn:hover {
		background: #f0eae4;
		color: #8a827a;
	}

	/* ── ADD TO CART takes remaining width next to gear ── */
	#nmgr_table_items.nmgr-items-view.list .tbody .item td.nmgr_add_to_cart_button {
		width: calc(100% - 56px) !important;
		margin-top: 10px !important;
		padding-top: 0 !important;
		border-top: 1px solid #f0eae4 !important;
	}

	/* Hide quantity in add-to-cart form (we use the main one) */
	.nmgr-add-to-cart-form .quantity {
		display: none !important;
	}

	/* Buttons side by side */
	.nmgr-add-to-cart-form {
		display: flex !important;
		gap: 8px;
		width: 100%;
	}

	/* Añadir button - 48px height */
	#nmgr_table_items .nmgr_add_to_cart_button.button,
	.nmgr-add-to-cart-form .nmgr_add_to_cart_button.button {
		font-size: 12px !important;
		padding: 13px 16px !important;
		min-height: 48px;
		min-width: 0 !important;
		flex: 1;
		margin: 0 !important;
		width: auto !important;
	}

	/* Marcar comprado outline button */
	.nidoo-manual-claim-wrapper {
		margin-top: 0 !important;
		flex: 1;
	}

	.nidoo-manual-claim-wrapper .button,
	a.nidoo-manual-claim-wishlist-item {
		font-size: 11px !important;
		padding: 11px 16px !important;
		min-width: 0 !important;
		width: 100% !important;
	}

	/* ── Totals card ── */
	.nmgr-after-table-row.items-total-cost {
		padding: 18px 16px;
	}

	/* ── Progress bar ── */
	.nmgr-items-count-progress {
		max-width: 100%;
		padding: 10px 0;
		gap: 12px;
	}

	.nmgr-items-count-progress .nmgr-item-count {
		font-size: 13px;
	}

	/* ── Header mobile ── */
	.nidoo-header-title {
		font-size: 22px;
	}

	.nidoo-header-subtitle {
		font-size: 13px;
	}

	.nidoo-admin-toolbar {
		gap: 8px;
		margin-bottom: 24px;
	}

	.nidoo-toolbar-btn {
		font-size: 12px;
		padding: 10px 12px;
	}
}


/* Source: 18-nidoo-gift-registry-customizations.php */

		/* ═══════════════════════════════════════════════════════════
		   NIDOO · Gift Registry Steps Bar (Shop Page)
		   ═══════════════════════════════════════════════════════════ */

		.nidoo-gr-steps-bar {
			margin-bottom: 16px;
			position: relative;
			padding: 20px 0 16px;
			border-bottom: 1px solid #f0eae4;
		}

		.nidoo-gr-steps-bar__inner {
			display: flex;
			align-items: center;
			justify-content: space-between;
			gap: 24px;
		}

		.nidoo-gr-steps-bar__text {
			flex: 1;
		}

		.nidoo-gr-steps-bar__heading {
			font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
			font-size: 16px;
			font-weight: 500;
			color: #2c2c2c;
			margin: 0 0 12px 0;
			line-height: 1.3;
		}

		.nidoo-gr-steps-bar__heading strong {
			color: #46d198;
			font-weight: 700;
		}

		.nidoo-gr-steps-bar__steps {
			display: flex;
			align-items: flex-start;
			gap: 20px;
			margin: 0;
			padding: 0;
			list-style: none !important;
		}

		.nidoo-gr-steps-bar__step {
			display: flex;
			align-items: flex-start;
			gap: 10px;
			margin: 0;
			padding: 0;
			flex: 1;
		}

		.nidoo-gr-steps-bar__step-num {
			flex-shrink: 0;
			width: 32px;
			height: 32px;
			border-radius: 50%;
			background: var(--ast-global-color-6, #f44e06);
			color: #fff;
			display: flex;
			align-items: center;
			justify-content: center;
			font-weight: 700;
			font-size: 14px;
			font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
		}

		.nidoo-gr-steps-bar__step-text {
			display: flex;
			flex-direction: column;
		}

		.nidoo-gr-steps-bar__step-label {
			font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
			font-size: 13px;
			font-weight: 600;
			color: #6a8276;
			line-height: 1.3;
		}

		.nidoo-gr-steps-bar__step.is-active .nidoo-gr-steps-bar__step-label {
			color: #2c2c2c;
		}

		.nidoo-gr-steps-bar__step-desc {
			font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
			font-size: 12px;
			color: #8a9e94;
			line-height: 1.3;
			margin-top: 1px;
		}

		.nidoo-gr-steps-bar__cta {
			flex-shrink: 0;
			display: inline-flex;
			align-items: center;
			justify-content: center;
			background: #46d198;
			color: #fff;
			font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
			font-size: 13px;
			font-weight: 700;
			padding: 10px 24px;
			border-radius: 10px;
			text-decoration: none;
			white-space: nowrap;
			transition: all 0.2s ease;
			box-shadow: 0 4px 12px rgba(70, 209, 152, 0.25);
			border: none;
			cursor: pointer;
		}

		.nidoo-gr-steps-bar__cta:hover {
			background: #3bbd86;
			color: #fff;
			box-shadow: 0 6px 20px rgba(70, 209, 152, 0.35);
			transform: translateY(-1px);
		}

		/* ── Sticky filter toggle ── */
		body.nidoo-gr-add .nidoo-filter-toggle.is-sticky {
			position: -webkit-sticky;
			position: sticky;
			z-index: 50;
			margin-top: 0;
		}

		/* ── Mobile ── */
		@media (max-width: 768px) {
			.nidoo-gr-steps-bar {
				padding: 16px 0 12px;
			}

			.nidoo-gr-steps-bar__inner {
				flex-direction: column;
				gap: 14px;
			}

			.nidoo-gr-steps-bar__heading {
				font-size: 15px;
				text-align: center;
				margin-bottom: 10px;
			}

			.nidoo-gr-steps-bar__steps {
				gap: 0;
				width: 100%;
			}

			.nidoo-gr-steps-bar__step {
				flex-direction: column;
				align-items: center;
				gap: 4px;
				text-align: center;
			}

			.nidoo-gr-steps-bar__step-num {
				width: 26px;
				height: 26px;
				font-size: 12px;
			}

			.nidoo-gr-steps-bar__step-label {
				font-size: 10px;
			}

			.nidoo-gr-steps-bar__step-desc {
				display: none;
			}

			.nidoo-gr-steps-bar__cta {
				width: 100%;
				font-size: 14px;
				padding: 12px 20px;
			}
		}

		/* Remove arrow/bullets from theme — alta especificidad */
		.nidoo-gr-steps-bar__step::before,
		.nidoo-gr-steps-bar__step::after,
		.nidoo-gr-steps-bar li::before,
		.nidoo-gr-steps-bar li::after {
			content: none !important;
			display: none !important;
		}
	

/* Source: 18-nidoo-gift-registry-customizations.php */

					.nidoo-has-list-wrapper {
						max-width: 480px;
						margin: 60px auto;
						text-align: center;
						padding: 40px 24px;
						background: rgba(255, 255, 255, 0.9);
						backdrop-filter: blur(10px);
						border-radius: 24px;
						box-shadow: 0 10px 40px rgba(0, 0, 0, 0.06);
						border: 1px solid rgba(255, 255, 255, 0.3);
					}

					.nidoo-has-list-wrapper h2 {
						font-size: 28px;
						margin: 0 0 12px;
						color: #333;
					}

					.nidoo-has-list-wrapper p {
						font-size: 16px;
						color: #666;
						margin: 0 0 28px;
					}

					.nidoo-has-list-wrapper .nidoo-btn-list {
						display: inline-block;
						background: var(--ast-global-color-6, #f44e06);
						color: #fff;
						border: none;
						border-radius: 12px;
						padding: 16px 36px;
						font-size: 16px;
						font-weight: 700;
						cursor: pointer;
						text-transform: uppercase;
						letter-spacing: 1px;
						text-decoration: none;
						transition: opacity 0.3s;
					}

					.nidoo-has-list-wrapper .nidoo-btn-list:hover {
						opacity: 0.9;
					}
				

/* Source: 17-nidoo-single-shipping-package.php */

        .woocommerce table.shop_table .woocommerce-shipping-methods label,
        .woocommerce table.shop_table .woocommerce-shipping-methods .woocommerce-Price-amount,
        .woocommerce table.shop_table .woocommerce-shipping-methods .woocommerce-Price-currencySymbol,
        .woocommerce table.shop_table .woocommerce-shipping-methods bdi {
            white-space: nowrap;
            word-break: keep-all;
            overflow-wrap: normal;
        }
    

/* Source: 34-nidoo-shop-redesign.php */

/* ============================================================
   NIDOO SHOP PAGE — Premium Mobile Grid Redesign
   Tarjetas editoriales · Simetría · Alta gama
   ============================================================ */

/* ── Remove extra spacing from Astra container on shop ── */
.woocommerce-page .ast-woocommerce-container {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* ============================================================
   1. PRODUCT CARD — Contenedor individual tipo tarjeta
   ============================================================ */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
    background: #ffffff !important;
    border-radius: 12px !important;
    box-shadow:
        0 1px 3px rgba(0, 0, 0, 0.04),
        0 4px 12px rgba(0, 0, 0, 0.03) !important;
    overflow: hidden !important;
    display: flex !important;
    flex-direction: column !important;
    padding: 0 !important;
    margin: 0 !important;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    position: relative;
}

/* Remove Astra's default padding on product items */
.woocommerce ul.products li.product .astra-shop-thumbnail-wrap,
.woocommerce-page ul.products li.product .astra-shop-thumbnail-wrap {
    margin: 0 !important;
    padding: 0 !important;
}

/* ============================================================
   2. PRODUCT IMAGE — Full-width, rounded top, subtle border
   ============================================================ */
.woocommerce ul.products li.product .astra-shop-thumbnail-wrap img,
.woocommerce-page ul.products li.product .astra-shop-thumbnail-wrap img {
    border-radius: 12px 12px 0 0 !important;
    width: 100% !important;
    margin: 0 !important;
    display: block;
    border: 1px solid rgba(0, 0, 0, 0.04) !important;
    border-bottom: none !important;
    box-sizing: border-box;
}

.woocommerce ul.products li.product a img,
.woocommerce-page ul.products li.product a img {
    margin: 0 !important;
}

/* ============================================================
   3. CONTENT AREA — Min-height for symmetry, flex to anchor
      price at the bottom
   ============================================================ */
.woocommerce ul.products li.product .astra-shop-summary-wrap,
.woocommerce-page ul.products li.product .astra-shop-summary-wrap {
    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    padding: 10px 10px 12px !important;
    margin: 0 !important;
    background: #ffffff !important;
    min-height: 82px !important;
}

/* ── 3a. Product Title — Max 2 lines with ellipsis ── */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title {
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #2d2a24 !important;
    line-height: 1.35 !important;
    letter-spacing: -0.01em !important;
    padding: 0 !important;
    margin: 0 0 auto 0 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    max-height: 2.7em !important;
    word-break: break-word;
}

/* ── 3b. Category badge — hide for cleaner look ── */
.woocommerce ul.products li.product .ast-woo-product-category,
.woocommerce-page ul.products li.product .ast-woo-product-category {
    display: none !important;
}

/* ── 3c. Price — Green mint, anchored to bottom ── */
.woocommerce ul.products li.product .price,
.woocommerce-page ul.products li.product .price {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #46d198 !important;
    margin: 6px 0 0 !important;
    padding: 0 !important;
    line-height: 1.3 !important;
}

.woocommerce ul.products li.product .price .woocommerce-Price-amount,
.woocommerce-page ul.products li.product .price .woocommerce-Price-amount {
    color: #46d198 !important;
}

.woocommerce ul.products li.product .price span,
.woocommerce-page ul.products li.product .price span {
    color: #46d198 !important;
}

.woocommerce ul.products li.product .price del,
.woocommerce-page ul.products li.product .price del {
    font-size: 12px !important;
    font-weight: 400 !important;
    color: #bbb !important;
    opacity: 0.7 !important;
    margin-right: 4px;
}

.woocommerce ul.products li.product .price ins,
.woocommerce-page ul.products li.product .price ins {
    text-decoration: none !important;
    font-weight: 700 !important;
}

/* ── 3d. Star ratings — hide on catalog grid ── */
.woocommerce ul.products li.product .star-rating,
.woocommerce-page ul.products li.product .star-rating {
    display: none !important;
}

/* ============================================================
   4. SALE BADGE — Pill verde menta homogéneo
   ============================================================ */
.woocommerce ul.products li.product span.onsale,
.woocommerce-page ul.products li.product span.onsale,
.ast-onsale-card {
    position: absolute !important;
    top: 8px !important;
    left: 8px !important;
    right: auto !important;
    background: #46d198 !important;
    color: #ffffff !important;
    border-radius: 50px !important;
    padding: 3px 11px !important;
    font-size: 9px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
    border: none !important;
    box-shadow: 0 2px 8px rgba(70, 209, 152, 0.3) !important;
    min-width: 0 !important;
    max-width: fit-content !important;
    width: auto !important;
    height: auto !important;
    z-index: 5;
}

/* ============================================================
   5. GRID GAP — Espaciado entre tarjetas
   ============================================================ */
.woocommerce ul.products,
.woocommerce-page ul.products {
    gap: 12px !important;
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
    border: none !important;
}

/* ============================================================
   6. ORDERING DROPDOWN — Redondeado, estilizado
      Desktop: compacto (max-width 250px), empujado a la derecha.
   ============================================================ */
.woocommerce .woocommerce-ordering,
.woocommerce-page .woocommerce-ordering {
    float: none !important;
    margin-bottom: 16px !important;
    width: 100%;
}

.woocommerce .woocommerce-ordering select,
.woocommerce-page .woocommerce-ordering select {
    width: 100%;
    height: auto;
    min-height: 48px;
    padding: 10px 40px 10px 16px;
    border: 1.5px solid #e8e4dd !important;
    border-radius: 12px !important;
    background-color: #ffffff !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    color: #333 !important;
    line-height: 1.4 !important;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif !important;
    -webkit-appearance: none !important;
    appearance: none !important;
    background-image: url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%23999' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 16px center !important;
    background-size: 12px !important;
    transition: border-color 0.2s;
    cursor: pointer;
    box-sizing: border-box;
}

.woocommerce .woocommerce-ordering select:focus,
.woocommerce-page .woocommerce-ordering select:focus {
    border-color: #46d198 !important;
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(70, 209, 152, 0.12) !important;
}

/* ── Desktop: ordenador compacto y alineado a la derecha ── */
@media (min-width: 922px) {
    .woocommerce .woocommerce-ordering,
    .woocommerce-page .woocommerce-ordering {
        width: auto !important;
        max-width: 250px !important;
        min-width: 180px !important;
        margin-left: auto !important;
        margin-bottom: 0 !important;
        flex-shrink: 0 !important;
    }
    .woocommerce .woocommerce-ordering select,
    .woocommerce-page .woocommerce-ordering select {
        width: 100% !important;
        min-height: 40px !important;
        padding: 8px 36px 8px 14px !important;
        font-size: 13px !important;
    }
}

/* ============================================================
   7. RESULT COUNT — Texto de resultados
      Desktop: alineado a la izquierda, sin margen inferior.
   ============================================================ */
.woocommerce .woocommerce-result-count,
.woocommerce-page .woocommerce-result-count {
    font-size: 12px !important;
    font-weight: 400 !important;
    color: #aaa !important;
    margin-bottom: 12px !important;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif !important;
}

@media (min-width: 922px) {
    .woocommerce .woocommerce-result-count,
    .woocommerce-page .woocommerce-result-count {
        margin-bottom: 0 !important;
        flex-shrink: 0 !important;
        white-space: nowrap !important;
        line-height: 40px !important;
    }
}

/* ============================================================
   8. PAGINATION — Píldoras redondeadas, verde menta
   ============================================================ */
.woocommerce nav.woocommerce-pagination,
.woocommerce-page nav.woocommerce-pagination {
    margin-top: 24px !important;
    padding-top: 4px;
}

.woocommerce nav.woocommerce-pagination ul,
.woocommerce-page nav.woocommerce-pagination ul {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 6px !important;
    border: none !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.woocommerce nav.woocommerce-pagination ul li,
.woocommerce-page nav.woocommerce-pagination ul li {
    border: none !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    display: inline-block !important;
}

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce-page nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span,
.woocommerce-page nav.woocommerce-pagination ul li span {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 38px !important;
    height: 38px !important;
    padding: 0 4px !important;
    border: 1.5px solid #e8e4dd !important;
    border-radius: 50px !important;
    background: #ffffff !important;
    color: #888 !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif !important;
    text-decoration: none !important;
    line-height: 1 !important;
    transition: all 0.2s ease !important;
    box-sizing: border-box;
    float: none !important;
}

.woocommerce nav.woocommerce-pagination ul li span.current,
.woocommerce-page nav.woocommerce-pagination ul li span.current {
    background: #46d198 !important;
    border-color: #46d198 !important;
    color: #ffffff !important;
    font-weight: 600 !important;
}

.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce-page nav.woocommerce-pagination ul li a:hover {
    border-color: #778ccf !important;
    color: #778ccf !important;
    background: rgba(119, 140, 207, 0.06) !important;
}

.woocommerce nav.woocommerce-pagination ul li a.next,
.woocommerce-page nav.woocommerce-pagination ul li a.next,
.woocommerce nav.woocommerce-pagination ul li a.prev,
.woocommerce-page nav.woocommerce-pagination ul li a.prev {
    font-size: 14px !important;
    font-weight: 400 !important;
    padding: 0 12px !important;
}

.woocommerce nav.woocommerce-pagination ul li span.dots,
.woocommerce-page nav.woocommerce-pagination ul li span.dots {
    border: none !important;
    background: transparent !important;
    color: #ccc !important;
    min-width: 20px !important;
    font-size: 14px !important;
    padding: 0 !important;
}

/* ============================================================
   9. RESPONSIVE BREAKPOINTS
   ============================================================ */
@media (max-width: 544px) {
    .woocommerce ul.products,
    .woocommerce-page ul.products {
        gap: 10px !important;
    }
    .woocommerce ul.products li.product .astra-shop-summary-wrap,
    .woocommerce-page ul.products li.product .astra-shop-summary-wrap {
        padding: 8px 8px 10px !important;
        min-height: 74px !important;
    }
    .woocommerce ul.products li.product .woocommerce-loop-product__title,
    .woocommerce-page ul.products li.product .woocommerce-loop-product__title {
        font-size: 12px !important;
        line-height: 1.3 !important;
        max-height: 2.6em !important;
    }
    .woocommerce ul.products li.product .price,
    .woocommerce-page ul.products li.product .price {
        font-size: 14px !important;
    }
    .woocommerce .woocommerce-ordering select,
    .woocommerce-page .woocommerce-ordering select {
        min-height: 44px;
        padding: 8px 36px 8px 14px;
        font-size: 13px !important;
    }
    .woocommerce nav.woocommerce-pagination ul li a,
    .woocommerce-page nav.woocommerce-pagination ul li a,
    .woocommerce nav.woocommerce-pagination ul li span,
    .woocommerce-page nav.woocommerce-pagination ul li span {
        min-width: 34px !important;
        height: 34px !important;
        font-size: 12px !important;
    }
    .woocommerce .woocommerce-result-count,
    .woocommerce-page .woocommerce-result-count {
        text-align: center;
        font-size: 11px !important;
    }
}

@media (min-width: 545px) and (max-width: 921px) {
    .woocommerce ul.products li.product .astra-shop-summary-wrap,
    .woocommerce-page ul.products li.product .astra-shop-summary-wrap {
        padding: 12px 12px 14px !important;
        min-height: 90px !important;
    }
    .woocommerce ul.products li.product .woocommerce-loop-product__title,
    .woocommerce-page ul.products li.product .woocommerce-loop-product__title {
        font-size: 14px !important;
    }
}

@media (min-width: 922px) {
    .woocommerce ul.products li.product .astra-shop-summary-wrap,
    .woocommerce-page ul.products li.product .astra-shop-summary-wrap {
        padding: 14px 14px 16px !important;
        min-height: 96px !important;
    }
    .woocommerce ul.products li.product .woocommerce-loop-product__title,
    .woocommerce-page ul.products li.product .woocommerce-loop-product__title {
        font-size: 15px !important;
    }
    .woocommerce ul.products li.product .price,
    .woocommerce-page ul.products li.product .price {
        font-size: 16px !important;
    }
    .woocommerce ul.products li.product:hover,
    .woocommerce-page ul.products li.product:hover {
        transform: translateY(-3px) !important;
        box-shadow:
            0 4px 12px rgba(0, 0, 0, 0.06),
            0 8px 24px rgba(0, 0, 0, 0.04) !important;
    }
}

/* ============================================================
   10. ARCHIVE DESCRIPTION / BREADCRUMB
   ============================================================ */
.woocommerce-page .ast-archive-description {
    padding: 0 !important;
    margin-bottom: 16px !important;
    background: transparent !important;
    border: none !important;
}

.woocommerce-page .ast-archive-description .page-title {
    font-size: 22px !important;
    font-weight: 700 !important;
    color: #2d2a24 !important;
    margin: 0 0 4px !important;
    padding: 0 !important;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif !important;
    letter-spacing: -0.02em;
}

.woocommerce-page .ast-archive-description .ast-breadcrumbs-wrapper {
    padding: 0 !important;
    margin: 0 0 4px !important;
}

.woocommerce-page .ast-archive-description .ast-breadcrumbs-wrapper .trail-items {
    font-size: 11px !important;
}

.woocommerce-page .ast-archive-description .ast-breadcrumbs-wrapper .trail-items li a {
    color: #999 !important;
}

.woocommerce-page .ast-archive-description .ast-breadcrumbs-wrapper .trail-items li span {
    color: #bbb !important;
}

/* ============================================================
   11. WOOF — Limpiar estilos
   ============================================================ */
.woof_shortcode_output {
    margin: 0 !important;
}

/* ============================================================
   12. ADD TO CART BUTTON IN LOOP — Ocultar
        Incluye botones "on-card" de Astra (.ast-on-card-button /
        quick-view) que HUSKY re-inyecta en el render AJAX y que
        NO llevan clase .button, por eso antes se colaban.
   ============================================================ */
.woocommerce ul.products li.product a.button,
.woocommerce-page ul.products li.product a.button,
.woocommerce ul.products li.product .ast-on-card-button:not(.ast-onsale-card),
.woocommerce-page ul.products li.product .ast-on-card-button:not(.ast-onsale-card),
.woocommerce ul.products li.product .ast-select-options-trigger,
.woocommerce-page ul.products li.product .ast-select-options-trigger,
.woocommerce ul.products li.product .add_to_cart_button,
.woocommerce-page ul.products li.product .add_to_cart_button,
.woocommerce ul.products li.product .added_to_cart,
.woocommerce-page ul.products li.product .added_to_cart {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

/* ============================================================
   13. FILTROS ACTIVOS — CHIPS LIMPIOS + SIDEBAR SIN DOBLE FONDO
        Diseño: pastillas blancas individuales (border-radius: 50px),
        borde 1px gris claro, "×" tipográfica verde menta.
        Sin texto prefijo, sin iconos PNG, sin fondo gris heredado.
        Comportamiento: flex-wrap, gap 6px.
        TARGET: .woof_products_top_panel (top panel), sidebar
   ============================================================ */

/* ── 13a. TOP PANEL — Contenedor principal ── */
.woof_products_top_panel {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 4px 0 8px 0 !important;
    margin: 0 !important;
    overflow: visible !important;
    background: transparent !important;
    border: none !important;
    width: 100% !important;
}

/* ── 13b. CONTENIDO DEL PANEL — Antes oculto, ahora visible ── */
.woof_products_top_panel_content {
    display: block !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border: none !important;
}

/* ── 13c. LISTA INTERNA — flex-wrap sin punto ni margen ── */
.woof_products_top_panel > ul,
.woof_products_top_panel_content > ul {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 0 !important;
    margin: 0 !important;
    list-style: none !important;
}

/* ── 13d. CHIP INDIVIDUAL — pastilla blanca, 50px radius ── */
.woof_products_top_panel li,
.woof_products_top_panel_content li {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 4px 12px !important;
    background: #ffffff !important;
    border: 1px solid #e0dbd3 !important;
    border-radius: 50px !important;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    color: #444 !important;
    line-height: 1.4 !important;
    white-space: nowrap !important;
    transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
    margin: 0 !important;
    list-style: none !important;
    float: none !important;
}

/* ── 13e. TEXTO DEL FILTRO dentro del chip ── */
.woof_products_top_panel li a,
.woof_products_top_panel_content li a {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    color: #444 !important;
    text-decoration: none !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border: none !important;
}

/* ── 13f. ELIMINAR icono PNG (delete.png) de WOOF inline CSS ──
     Solo aplica a spans tipo botón (close icon), NO a .woof_remove_ppi
     que contiene el nombre del filtro. */
.woof_products_top_panel li span:not(.woof_remove_ppi),
.woof_products_top_panel_content li span:not(.woof_remove_ppi) {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 16px !important;
    height: 16px !important;
    min-width: 16px !important;
    min-height: 16px !important;
    background: none !important;
    background-image: none !important;
    background-size: auto !important;
    background-repeat: unset !important;
    background-position: unset !important;
    position: relative !important;
    opacity: 0.45 !important;
    transition: opacity 0.2s ease !important;
    cursor: pointer !important;
    font-size: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

.woof_products_top_panel li span:not(.woof_remove_ppi):hover,
.woof_products_top_panel_content li span:not(.woof_remove_ppi):hover {
    opacity: 1 !important;
}

/* ── 13g. ELIMINADO — migrado a 15e para .woof_remove_ppi ── */

/* ── 13h. BOTÓN "Borrar filtros" — pastilla con borde verde ── */
.woof_products_top_panel li.woof_reset_filter_btn,
.woof_products_top_panel_content li.woof_reset_filter_btn,
.woof_products_top_panel .woof_reset_filter_btn,
.woof_products_top_panel_content .woof_reset_filter_btn {
    display: inline-flex !important;
    align-items: center !important;
    padding: 4px 12px !important;
    background: transparent !important;
    border: 1px solid #46d198 !important;
    border-radius: 50px !important;
    color: #46d198 !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    cursor: pointer !important;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif !important;
    transition: opacity 0.2s ease !important;
    line-height: 1.4 !important;
    gap: 4px !important;
    margin: 0 !important;
    list-style: none !important;
}

.woof_products_top_panel li.woof_reset_filter_btn:hover,
.woof_products_top_panel_content li.woof_reset_filter_btn:hover {
    opacity: 0.7 !important;
}

/* ── 13i. SIDEBAR — QUITAR DOBLE FONDO GRIS ──
     Elimina el recuadro gris secundario que envuelve los filtros
     y aplana la jerarquía visual. */

/* Fondo del widget — transparente */
.widget-area .widget,
.widget-area .woof_container,
.widget-area .woof {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 0 16px 0 !important;
}

/* Quitar fondo gris de ast-woo-sidebar */
.widget-area.secondary,
.ast-woo-sidebar-widget-area {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

/* ── 13j. SIDEBAR — OCULTAR TÍTULOS h4 ("Categorías del producto:" etc) ── */
.woof_container h4 {
    display: none !important;
}

/* ── 13k. SIDEBAR — OCULTAR iconos delete.png en radio/checkbox ── */
.woof_container a.woof_radio_term_reset,
.woof_container a.woof_checkbox_term_reset,
.woof_container .woof_radio_term_reset,
.woof_container .woof_checkbox_term_reset {
    display: none !important;
}

/* ── 13l. SIDEBAR — LIMPIAR RADIO/CHECKBOX (quitar círculos rosas/azules) ── */
.woof_container input[type="radio"],
.woof_container input[type="checkbox"] {
    -webkit-appearance: none !important;
    appearance: none !important;
    width: 16px !important;
    height: 16px !important;
    min-width: 16px !important;
    border: 1.5px solid #d4cfc7 !important;
    border-radius: 50% !important;
    background: #ffffff !important;
    margin: 0 8px 0 0 !important;
    padding: 0 !important;
    cursor: pointer !important;
    display: inline-block !important;
    position: relative !important;
    flex-shrink: 0 !important;
    outline: none !important;
    box-shadow: none !important;
    transition: border-color 0.2s ease, background 0.2s ease !important;
}

.woof_container input[type="checkbox"] {
    border-radius: 3px !important;
}

.woof_container input[type="radio"]:checked,
.woof_container input[type="checkbox"]:checked {
    border-color: #46d198 !important;
    background: #46d198 !important;
}

.woof_container input[type="radio"]:checked::before,
.woof_container input[type="checkbox"]:checked::before {
    content: '' !important;
    display: block !important;
    width: 6px !important;
    height: 6px !important;
    background: #ffffff !important;
    border-radius: 50% !important;
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
}

.woof_container input[type="checkbox"]:checked::before {
    width: 8px !important;
    height: 8px !important;
    border-radius: 1px !important;
}

/* ── 13m. SIDEBAR — ETIQUETAS de los filtros ── */
.woof_container .woof_radio_label,
.woof_container .woof_checkbox_label {
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    color: #555 !important;
    line-height: 1.4 !important;
    cursor: pointer !important;
    padding: 0 !important;
    margin: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
}

/* ── 13n. SIDEBAR — LISTAS sin margen extra ── */
.woof_container .woof_list {
    padding: 0 !important;
    margin: 0 !important;
    list-style: none !important;
}

.woof_container .woof_list li {
    padding: 3px 0 !important;
    margin: 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 4px !important;
}

/* ── 13o. SIDEBAR — OVERLAY ITEM oculto ── */
.woof_container_overlay_item {
    display: none !important;
}

/* ── 13p. BOTÓN "Re-inicializar" en sidebar ── */
.woof_submit_search_form_container .woof_reset_search_form {
    display: inline-flex !important;
    align-items: center !important;
    padding: 6px 16px !important;
    background: transparent !important;
    border: 1px solid #e0dbd3 !important;
    border-radius: 50px !important;
    color: #888 !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    cursor: pointer !important;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif !important;
    transition: border-color 0.2s ease, color 0.2s ease !important;
    text-decoration: none !important;
    line-height: 1.4 !important;
}

.woof_submit_search_form_container .woof_reset_search_form:hover {
    border-color: #46d198 !important;
    color: #46d198 !important;
}

/* ── 13q. Reducir margen inferior del ordenamiento ── */
.woocommerce .woocommerce-ordering,
.woocommerce-page .woocommerce-ordering {
    margin-bottom: 10px !important;
}

.woocommerce .woocommerce-result-count,
.woocommerce-page .woocommerce-result-count {
    margin-bottom: 8px !important;
}

/* ── 13r. MÓVIL — ajustes finos ── */
@media (max-width: 544px) {
    .woof_products_top_panel,
    .woof_products_top_panel_content {
        padding: 2px 0 6px 0 !important;
        gap: 5px !important;
    }
    .woof_products_top_panel li,
    .woof_products_top_panel_content li {
        padding: 3px 10px !important;
        font-size: 11px !important;
    }
    .woocommerce .woocommerce-ordering,
    .woocommerce-page .woocommerce-ordering {
        margin-bottom: 8px !important;
    }
    .woocommerce .woocommerce-result-count,
    .woocommerce-page .woocommerce-result-count {
        margin-bottom: 6px !important;
    }
    .woof_container .woof_radio_label,
    .woof_container .woof_checkbox_label {
        font-size: 12px !important;
    }
}

/* ── 13s. TABLETA ── ── */
@media (min-width: 545px) and (max-width: 921px) {
    .woof_products_top_panel,
    .woof_products_top_panel_content {
        gap: 6px !important;
    }
}

/* ============================================================
   14. BARRA SUPERIOR — FILTROS + RESULTADOS + ORDEN EN FILA
        Desktop: toggle a la izquierda, resultados al lado,
        ordenamiento a la derecha. Todo en una misma fila.
   ============================================================ */

/* ── 14a. Toggle "Filtros" — botón verde menta ── */
.nidoo-filter-toggle {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 8px 16px !important;
    background: #46d198 !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 50px !important;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    line-height: 1.3 !important;
    transition: opacity 0.2s ease, transform 0.2s ease !important;
    flex-shrink: 0 !important;
    white-space: nowrap !important;
}

.nidoo-filter-toggle:hover {
    opacity: 0.85 !important;
    transform: translateY(-1px) !important;
}

.nidoo-filter-toggle svg {
    width: 18px !important;
    height: 18px !important;
    fill: #ffffff !important;
    display: block !important;
}

.nidoo-filter-count {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 18px !important;
    height: 18px !important;
    padding: 0 4px !important;
    background: rgba(255,255,255,0.25) !important;
    border-radius: 50px !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    line-height: 1 !important;
}

/* ── 14b. Desktop: fila única ── */
@media (min-width: 922px) {
    #woof_results_by_ajax {
        display: flex !important;
        flex-wrap: wrap !important;
        align-items: center !important;
        gap: 12px !important;
    }

    /* Si el toggle JS está dentro del flex, order -1 para que sea el PRIMERO */
    #woof_results_by_ajax > .nidoo-filter-toggle {
        order: -1 !important;
        margin-right: 0 !important;
    }

    .woocommerce-result-count {
        order: 2 !important;
        margin-right: auto !important;
    }

    /* ordering → right */
    .woocommerce-ordering {
        order: 3 !important;
        margin-left: auto !important;
    }

    /* active filter chips → full width below the top bar */
    .woof_products_top_panel,
    .woof_products_top_panel_content {
        order: 4 !important;
        width: 100% !important;
    }

    /* notices → full width */
    .woocommerce-notices-wrapper {
        order: 5 !important;
        width: 100% !important;
    }

    /* products grid → full width */
    ul.products {
        order: 6 !important;
        width: 100% !important;
    }

    /* pagination → full width */
    nav.woocommerce-pagination {
        order: 7 !important;
        width: 100% !important;
    }
}

/* ── 14c. Móvil: toggle + resultado apilados ── */
@media (max-width: 921px) {
    .nidoo-filter-toggle {
        width: 100% !important;
        justify-content: center !important;
        margin-bottom: 10px !important;
    }
    .woocommerce-result-count {
        text-align: center !important;
    }
}

/* ============================================================
   15. ACTIVE FILTER CHIPS — Poblar desde sidebar via JS
        Script que inserta chips en el panel de filtros activos
        cuando se navega con filtros via URL (swoof endpoint).
   ============================================================ */

/* ── 15a. Chip de filtro activo genérico (para JS-injected) ── */
.nidoo-active-chip {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 4px 12px !important;
    background: #ffffff !important;
    border: 1px solid #e0dbd3 !important;
    border-radius: 50px !important;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    color: #444 !important;
    line-height: 1.4 !important;
    white-space: nowrap !important;
    text-decoration: none !important;
    transition: border-color 0.2s ease !important;
    margin: 0 !important;
}

.nidoo-active-chip .nidoo-chip-remove {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 16px !important;
    height: 16px !important;
    font-size: 15px !important;
    font-weight: 300 !important;
    color: #46d198 !important;
    line-height: 1 !important;
    cursor: pointer !important;
    opacity: 0.5 !important;
    transition: opacity 0.2s ease !important;
    text-decoration: none !important;
}

.nidoo-active-chip .nidoo-chip-remove:hover {
    opacity: 1 !important;
}

/* ── 15b. Botón "Limpiar filtros" (link minimalista) ── */
.nidoo-clear-filters-link {
    display: inline-flex !important;
    align-items: center !important;
    padding: 4px 12px !important;
    background: transparent !important;
    border: none !important;
    color: #46d198 !important;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    cursor: pointer !important;
    line-height: 1.4 !important;
    transition: opacity 0.2s ease !important;
    white-space: nowrap !important;
}

.nidoo-clear-filters-link:hover {
    opacity: 0.7 !important;
    text-decoration: underline !important;
}

/* ── 15c. Ocultar "Clear All" de WOOF ── */
.woof_products_top_panel .woof_reset_filter_btn,
.woof_products_top_panel_content .woof_reset_filter_btn,
.woof_products_top_panel button.woof_reset_button_2 {
    display: none !important;
}

/* ── 15d. QUITAR OUTLINE DEL PANEL Y SUS HIJOS ── */
.woof_products_top_panel,
.woof_products_top_panel *,
.woof_products_top_panel_content,
.woof_products_top_panel_content *,
.woof_products_top_panel2,
.woof_products_top_panel2 * {
    outline: none !important;
}

/* ── 15d2. OCULTAR PANEL DUPLICADO (WOOF genera .woof_products_top_panel2) ── */
.woof_products_top_panel2 {
    display: none !important;
}

/* ── 15e. APLANAR ESTRUCTURA ANIDADA DE WOOF ──
     WOOF genera <ul data-container="product_cat"> con:
       <li>Product categories:</li>  ← texto estático
       <li><a><span class="woof_remove_ppi">Juguetes</span></a></li>
     Aplanamos: quitamos el label, inline-flex el nested ul. */

/* Mostrar nested ul como inline-flex */
.woof_products_top_panel ul[data-container],
.woof_products_top_panel_content ul[data-container] {
    display: inline-flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 0 !important;
    margin: 0 !important;
    list-style: none !important;
    border: none !important;
    background: transparent !important;
}

/* Ocultar <li> con texto estático de prefijo ("Product categories:" etc) */
.woof_products_top_panel ul[data-container] > li:first-child,
.woof_products_top_panel_content ul[data-container] > li:first-child {
    display: none !important;
}

/* Estilo del chip real dentro del nested ul */
.woof_products_top_panel ul[data-container] li:last-child,
.woof_products_top_panel_content ul[data-container] li:last-child {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 4px 12px !important;
    background: #ffffff !important;
    border: 1px solid #e0dbd3 !important;
    border-radius: 50px !important;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    color: #444 !important;
    line-height: 1.4 !important;
    white-space: nowrap !important;
    margin: 0 !important;
    list-style: none !important;
    float: none !important;
}

/* Link dentro del chip */
.woof_products_top_panel ul[data-container] li:last-child a,
.woof_products_top_panel_content ul[data-container] li:last-child a {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    color: #444 !important;
    text-decoration: none !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border: none !important;
}

/* Span woof_remove_ppi — texto del chip + "×" heredado */
.woof_products_top_panel .woof_remove_ppi,
.woof_products_top_panel_content .woof_remove_ppi {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    color: #444 !important;
    font-weight: 500 !important;
    font-size: 12px !important;
}

/* Tratar el woof_remove_ppi como chip completo (sin +) */
.woof_products_top_panel .woof_remove_ppi::after,
.woof_products_top_panel_content .woof_remove_ppi::after {
    content: '×' !important;
    font-size: 15px !important;
    font-weight: 300 !important;
    color: #46d198 !important;
    line-height: 1 !important;
    display: inline-block !important;
    margin-left: 4px !important;
    opacity: 0.5 !important;
    transition: opacity 0.2s ease !important;
}

.woof_products_top_panel .woof_remove_ppi:hover::after,
.woof_products_top_panel_content .woof_remove_ppi:hover::after {
    opacity: 1 !important;
}

/* ── 15f. Quitar padding/margen extra del panel principal ── */
.woof_products_top_panel ul.woof_products_top_panel_ul {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 0 !important;
    margin: 0 !important;
    list-style: none !important;
    border: none !important;
    background: transparent !important;
}

.woof_products_top_panel_ul > li {
    display: inline-flex !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    float: none !important;
    border: none !important;
    background: transparent !important;
}

/* ── 15h. OCULTAR CÍRCULOS/INDICADORES ROSAS DENTRO DE CHIPS ──
     WOOF/iCheck puede inyectar radio-buttons personalizados
     (círculos rosas/fucsia) dentro de los chips activos.
     Ocultamos inputs, labels decorativos e indicadores iCheck. */

.woof_products_top_panel input[type="radio"],
.woof_products_top_panel input[type="checkbox"],
.woof_products_top_panel_content input[type="radio"],
.woof_products_top_panel_content input[type="checkbox"],
.woof_products_top_panel .woof_radio_term_reset,
.woof_products_top_panel .woof_checkbox_term_reset,
.woof_products_top_panel .woof_radio_label::before,
.woof_products_top_panel .woof_checkbox_label::before,
.woof_products_top_panel2 input[type="radio"],
.woof_products_top_panel2 input[type="checkbox"],
.woof_products_top_panel2 .woof_radio_term_reset,
.woof_products_top_panel2 .woof_checkbox_term_reset {
    display: none !important;
}

/* Ocultar elementos iCheck (círculos personalizados) dentro del panel */
.woof_products_top_panel .icheckbox,
.woof_products_top_panel .iradio,
.woof_products_top_panel .icheckbox *,
.woof_products_top_panel .iradio *,
.woof_products_top_panel_content .icheckbox,
.woof_products_top_panel_content .iradio,
.woof_products_top_panel_content .icheckbox *,
.woof_products_top_panel_content .iradio *,
.woof_products_top_panel2 .icheckbox,
.woof_products_top_panel2 .iradio {
    display: none !important;
}

/* Cualquier pseudo-elemento circular/radio en chips (no afecta chips reales) */
.woof_products_top_panel .woof_radio_label::before,
.woof_products_top_panel .woof_checkbox_label::before,
.woof_products_top_panel .ichackbox::before,
.woof_products_top_panel .iradio::before,
.woof_products_top_panel_content .woof_radio_label::before,
.woof_products_top_panel_content .woof_checkbox_label::before,
.woof_products_top_panel2 .woof_radio_label::before,
.woof_products_top_panel2 .woof_checkbox_label::before {
    display: none !important;
}

/* ============================================================
   16. FALLBACK — TARJETAS SIN WRAPPERS ASTRA (HUSKY/SWOOF)
        HUSKY/SWOOF re-renderiza el loop con el template DEFAULT
        de WooCommerce, que NO genera .astra-shop-summary-wrap ni
        .astra-shop-thumbnail-wrap. Sin esas clases el padding de
        las secciones 1-3 no aplica y el contenido queda pegado a
        la imagen. Aquí replicamos el padding SIN depender de los
        wrappers de Astra, usando :not(:has()) para NO duplicar el
        espaciado en las tarjetas que sí traen wrapper Astra.
   ============================================================ */

/* 16a. Imagen full-width, esquinas superiores redondeadas */
.woocommerce ul.products li.product:not(:has(.astra-shop-thumbnail-wrap)) img,
.woocommerce-page ul.products li.product:not(:has(.astra-shop-thumbnail-wrap)) img {
    border-radius: 12px 12px 0 0 !important;
    width: 100% !important;
    margin: 0 !important;
    display: block !important;
    box-sizing: border-box !important;
}

/* 16b. El <a> que envuelve imagen + texto: bloque sin padding */
.woocommerce ul.products li.product:not(:has(.astra-shop-summary-wrap)) > a,
.woocommerce-page ul.products li.product:not(:has(.astra-shop-summary-wrap)) > a {
    display: block !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* 16c. Padding horizontal a todo el contenido de texto (no imagen) */
.woocommerce ul.products li.product:not(:has(.astra-shop-summary-wrap)) > a > *:not(img),
.woocommerce-page ul.products li.product:not(:has(.astra-shop-summary-wrap)) > a > *:not(img) {
    padding-left: 10px !important;
    padding-right: 10px !important;
}

/* 16d. Título: padding superior (separa de la imagen) */
.woocommerce ul.products li.product:not(:has(.astra-shop-summary-wrap)) .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product:not(:has(.astra-shop-summary-wrap)) .woocommerce-loop-product__title {
    padding-top: 10px !important;
}

/* 16e. Precio + último bloque de texto: padding inferior */
.woocommerce ul.products li.product:not(:has(.astra-shop-summary-wrap)) .price,
.woocommerce-page ul.products li.product:not(:has(.astra-shop-summary-wrap)) .price,
.woocommerce ul.products li.product:not(:has(.astra-shop-summary-wrap)) > a > *:not(img):last-child,
.woocommerce-page ul.products li.product:not(:has(.astra-shop-summary-wrap)) > a > *:not(img):last-child {
    padding-bottom: 12px !important;
}

/* 16f. Responsive: igualar padding de secciones 9 (móvil/tablet/desktop) */
@media (max-width: 544px) {
    .woocommerce ul.products li.product:not(:has(.astra-shop-summary-wrap)) > a > *:not(img),
    .woocommerce-page ul.products li.product:not(:has(.astra-shop-summary-wrap)) > a > *:not(img) {
        padding-left: 8px !important;
        padding-right: 8px !important;
    }
    .woocommerce ul.products li.product:not(:has(.astra-shop-summary-wrap)) .woocommerce-loop-product__title,
    .woocommerce-page ul.products li.product:not(:has(.astra-shop-summary-wrap)) .woocommerce-loop-product__title {
        padding-top: 8px !important;
    }
    .woocommerce ul.products li.product:not(:has(.astra-shop-summary-wrap)) .price,
    .woocommerce-page ul.products li.product:not(:has(.astra-shop-summary-wrap)) .price,
    .woocommerce ul.products li.product:not(:has(.astra-shop-summary-wrap)) > a > *:not(img):last-child,
    .woocommerce-page ul.products li.product:not(:has(.astra-shop-summary-wrap)) > a > *:not(img):last-child {
        padding-bottom: 10px !important;
    }
}

@media (min-width: 545px) {
    .woocommerce ul.products li.product:not(:has(.astra-shop-summary-wrap)) > a > *:not(img),
    .woocommerce-page ul.products li.product:not(:has(.astra-shop-summary-wrap)) > a > *:not(img) {
        padding-left: 12px !important;
        padding-right: 12px !important;
    }
    .woocommerce ul.products li.product:not(:has(.astra-shop-summary-wrap)) .woocommerce-loop-product__title,
    .woocommerce-page ul.products li.product:not(:has(.astra-shop-summary-wrap)) .woocommerce-loop-product__title {
        padding-top: 14px !important;
    }
    .woocommerce ul.products li.product:not(:has(.astra-shop-summary-wrap)) .price,
    .woocommerce-page ul.products li.product:not(:has(.astra-shop-summary-wrap)) .price,
    .woocommerce ul.products li.product:not(:has(.astra-shop-summary-wrap)) > a > *:not(img):last-child,
    .woocommerce-page ul.products li.product:not(:has(.astra-shop-summary-wrap)) > a > *:not(img):last-child {
        padding-bottom: 16px !important;
    }
}

/* ============================================================
   17. HUSKY/SWOOF LOADING POPUP ("Cargando...") — CENTRAR
        Default del plugin usa top:48%/left:48% SIN transform, así
        la esquina (no el centro) queda al 48% → se ve descentrado.
        Centramos de verdad con translate(-50%,-50%).
   ============================================================ */
#woof_html_buffer.woof_info_popup,
div.woof_info_popup {
    top: 50% !important;
    left: 50% !important;
    right: auto !important;
    bottom: auto !important;
    transform: translate(-50%, -50%) !important;
    background-color: rgba(45, 42, 36, 0.92) !important;
    border-radius: 14px !important;
    padding: 16px 28px !important;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    letter-spacing: 0.01em !important;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.25) !important;
    text-align: center !important;
    white-space: nowrap !important;
}


/* Source: 11-nidoo-variation-swatches-fix.php */

            /* Force Variation Swatch Labels to show above buttons in Astra Theme */
            body.cfvsw-label-none table.variations tr th.label,
            .cfvsw-label-none table.variations tr th.label,
            .theme-astra table.variations tr th.label {
                display: block !important;
                padding-left: 0 !important;
                padding-bottom: 5px !important;
                text-align: left;
                font-weight: 600;
            }
            .theme-astra table.variations tr td.value {
                display: block !important;
                padding-top: 0 !important;
            }
            .theme-astra table.variations tr {
                display: block !important;
                margin-bottom: 15px !important;
            }
        

/* Source: 24-nidoo-woocommerce-shop-config.php */
.nidoo-hidden-label{visibility:hidden}

/* Source: 24-nidoo-woocommerce-shop-config.php */

        body.woocommerce ul.products li.product span.onsale,
        body.woocommerce-page ul.products li.product span.onsale,
        body.woocommerce ul.products li.product .ast-onsale-card,
        body.woocommerce-page ul.products li.product .ast-onsale-card {
            background: #46d198 !important;
            color: #ffffff !important;
            border-radius: 999px !important;
            border: none !important;
            padding: 7px 18px !important;
            font-size: 10px !important;
            font-weight: 700 !important;
            letter-spacing: 0.08em !important;
            line-height: 1 !important;
            text-transform: uppercase !important;
            min-width: 0 !important;
            max-width: fit-content !important;
            width: auto !important;
            height: auto !important;
            box-shadow: 0 2px 6px rgba(46, 184, 134, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05) !important;
            display: inline-flex !important;
            align-items: center !important;
            top: 14px !important;
            left: 14px !important;
        }
    

/* Source: 40-nidoo-perf.php */
@font-face{font-family:inherit;font-display:swap!important}@font-face{font-display:swap}

/* Source: 13-nidoo-google-sso.php */

		.google-sso-wrapper {
			margin: 16px 0;
			text-align: center;
		}
		.google-sso-divider {
			display: flex;
			align-items: center;
			margin: 16px 0;
			color: #787c82;
		}
		.google-sso-divider::before,
		.google-sso-divider::after {
			content: '';
			flex: 1;
			border-bottom: 1px solid #dcdcde;
		}
		.google-sso-divider span {
			padding: 0 12px;
			font-size: 13px;
		}
		.google-sso-wrapper .g_id_signin {
			display: inline-block;
		}
	

/* Migrated from inicio.html */

#nidoo-contact-section {
    position: relative !important;
    overflow: hidden;
    min-height: 500px;
}

.nidoo-float-layer {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 1;
}

.nidoo-icon-contact {
    position: absolute;
    height: auto;
    animation: nidooFloatContact 8s ease-in-out infinite;
}

.nidoo-icon-contact img {
    width: 100%;
    height: auto;
    display: block;
}

#nidoo-contact-section .icon-footprint  { top: 50%; left: 75%; width: 150px; animation-delay: 0s; }
#nidoo-contact-section .icon-star-small { bottom: 5%; left: 5%; width: 50px; animation-delay: 1s; }
#nidoo-contact-section .icon-star-large { top: 10%; right: 10%; width: 100px; animation-delay: 2s; }
#nidoo-contact-section .icon-bear       { top: 40%; left: 5%; width: 250px; animation-delay: 3s; }
#nidoo-contact-section .icon-heart      { bottom: 20%; left: 80%; width: 250px; animation-delay: 4s; }
#nidoo-contact-section .icon-horse      { top: 0%; left: 0%; width: 200px; animation-delay: 5s; }

@keyframes nidooFloatContact {
    0%, 100% { transform: translateY(0) rotate(0deg); }
    50% { transform: translateY(-20px) rotate(5deg); }
}

@media (max-width: 480px) {
    #nidoo-contact-section {
        min-height: 300px;
    }

    .nidoo-icon-contact {
        animation: none !important;
        transform: none !important;
        opacity: 0.75;
    }

    #nidoo-contact-section .icon-footprint  { top: 45% !important; right: 5% !important; left: auto !important; width: 80px !important; }
    #nidoo-contact-section .icon-star-small { top: 5% !important; left: 10% !important; bottom: auto !important; width: 45px !important; }
    #nidoo-contact-section .icon-star-large { top: 10% !important; right: 10% !important; width: 65px !important; }
    #nidoo-contact-section .icon-bear       { top: 45% !important; left: 2% !important; width: 130px !important; }
    #nidoo-contact-section .icon-heart      { bottom: 5% !important; right: 2% !important; left: auto !important; width: 80px !important; }
    #nidoo-contact-section .icon-horse      { top: 0% !important; left: 8% !important; width: 80px !important; }
}


/* Migrated from inicio-optimizado.html */

#nidoo-hero-section {
    display:flex;
    position: relative !important;
    overflow: hidden;
}

.nidoo-float-layer {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 2 !important;
}

.nidoo-icon-hero {
    position: absolute;
    height: auto;
    animation: nidooFloatHero 8s ease-in-out infinite;
}

.nidoo-icon-hero img {
    width: 100%;
    height: auto;
    display: block;
}

#nidoo-hero-section .icon-footprint { top: 20%; left: 10%; width: 150px; animation-delay: 0s; }
#nidoo-hero-section .icon-star      { top: 8%; right: 12%; width: 150px; animation-delay: 1s; }
#nidoo-hero-section .icon-bear      { top: 25%; right: 0%; width: 300px; animation-delay: 3s; }
#nidoo-hero-section .icon-heart     { top: 60%; left: 4%; width: 150px; animation-delay: 2s; }
#nidoo-hero-section .icon-horse     { bottom: 5%; right: 15%; width: 250px; animation-delay: 4s; }

@keyframes nidooFloatHero {
    0%, 100% { transform: translateY(0) rotate(0deg); }
    50% { transform: translateY(-20px) rotate(5deg); }
}

@media (max-width: 768px) {
    .nidoo-icon-hero {
        animation: none !important;
        transform: none !important;
        opacity: 0.75;
    }
    
    #nidoo-hero-section .icon-footprint { top: 20% !important; left: 2% !important; width: 80px !important; }
    #nidoo-hero-section .icon-star      { top: 25% !important; right: 30% !important; width: 50px !important; }
    #nidoo-hero-section .icon-bear      { top: 25% !important; right: -5px !important; width: 100px !important; }
    #nidoo-hero-section .icon-heart     { bottom: 5% !important; left: -2% !important; width: 55px !important; }
    #nidoo-hero-section .icon-horse     { bottom: 20% !important; right: -5px !important; width: 75px !important; }
}


/* Migrated from inicio-backup.html */

#nidoo-hero-section {
    display:flex;
    position: relative !important;
    overflow: hidden;
}

.nidoo-float-layer {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 2 !important;
}

.nidoo-icon-hero {
    position: absolute;
    height: auto;
    animation: nidooFloatHero 8s ease-in-out infinite;
}

.nidoo-icon-hero img {
    width: 100%;
    height: auto;
    display: block;
}

#nidoo-hero-section .icon-footprint { top: 20%; left: 10%; width: 150px; animation-delay: 0s; }
#nidoo-hero-section .icon-star      { top: 8%; right: 12%; width: 150px; animation-delay: 1s; }
#nidoo-hero-section .icon-bear      { top: 25%; right: 0%; width: 300px; animation-delay: 3s; }
#nidoo-hero-section .icon-heart     { top: 60%; left: 4%; width: 150px; animation-delay: 2s; }
#nidoo-hero-section .icon-horse     { bottom: 5%; right: 15%; width: 250px; animation-delay: 4s; }

@keyframes nidooFloatHero {
    0%, 100% { transform: translateY(0) rotate(0deg); }
    50% { transform: translateY(-20px) rotate(5deg); }
}

@media (max-width: 768px) {
    .nidoo-icon-hero {
        animation: none !important;
        transform: none !important;
        opacity: 0.75;
    }
    
    #nidoo-hero-section .icon-footprint { top: 20% !important; left: 2% !important; width: 80px !important; }
    #nidoo-hero-section .icon-star      { top: 25% !important; right: 30% !important; width: 50px !important; }
    #nidoo-hero-section .icon-bear      { top: 25% !important; right: -5px !important; width: 100px !important; }
    #nidoo-hero-section .icon-heart     { bottom: 5% !important; left: -2% !important; width: 55px !important; }
    #nidoo-hero-section .icon-horse     { bottom: 20% !important; right: -5px !important; width: 75px !important; }
}

/* Final catalog direction: rounded filter pill, white label, lighter product titles. */
.nidoo-filter-toggle { width:auto !important; min-width:0 !important; padding:10px 18px !important; background:var(--nidoo-primary) !important; color:#fff !important; border:0 !important; border-radius:999px !important; font-weight:600 !important; }
.nidoo-filter-toggle svg { fill:#fff !important; }
.nidoo-filter-toggle .nidoo-filter-count { display:inline-flex !important; min-width:18px !important; height:18px !important; padding:0 4px !important; background:rgb(255 255 255 / 25%) !important; color:#fff !important; border-radius:999px !important; }
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title { font-weight:500 !important; }

/* Catalog title hard stop: one line only. */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title { height:1.35em !important; min-height:0 !important; white-space:nowrap !important; overflow:hidden !important; text-overflow:ellipsis !important; }
.woocommerce ul.products li.product .woocommerce-loop-product__title a,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title a { display:block !important; max-width:100% !important; white-space:nowrap !important; overflow:hidden !important; text-overflow:ellipsis !important; }

/* Sale badge position: top-right across catalog cards. */
.woocommerce ul.products li.product span.onsale,
.woocommerce-page ul.products li.product span.onsale,
.woocommerce ul.products li.product .ast-onsale-card,
.woocommerce-page ul.products li.product .ast-onsale-card {
  left: auto !important;
  right: 8px !important;
}

/* Product forms: unified modern field treatment. */
.single-product form.cart input:not([type="hidden"]):not([type="submit"]):not([type="button"]),
.single-product form.cart select,
.single-product form.cart textarea,
.single-product .variations select,
.single-product .gift-fields input,
.single-product .gift-fields select,
.single-product .gift-fields textarea {
  border: 1px solid var(--nidoo-border) !important;
  border-radius: 12px !important;
  background: #fff !important;
  min-height: 46px !important;
  padding: 10px 14px !important;
  box-sizing: border-box !important;
}
.single-product form.cart input:focus,
.single-product form.cart select:focus,
.single-product form.cart textarea:focus,
.single-product .variations select:focus,
.single-product .gift-fields input:focus,
.single-product .gift-fields select:focus,
.single-product .gift-fields textarea:focus {
  border-color: var(--nidoo-primary) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgb(70 209 152 / 15%) !important;
}
.single-product form.cart .quantity input.qty {
  border: 1px solid var(--nidoo-border) !important;
  border-radius: 12px !important;
  min-height: 46px !important;
  padding: 10px 14px !important;
}

/* Product gallery: match card/form surfaces. */
.single-product .woocommerce-product-gallery .woocommerce-product-gallery__image img,
.single-product .woocommerce-product-gallery .flex-viewport {
  border: 1px solid var(--nidoo-border) !important;
  border-radius: 16px !important;
  overflow: hidden !important;
}
.single-product .woocommerce-product-gallery .flex-control-thumbs li img {
  border: 1px solid var(--nidoo-border) !important;
  border-radius: 10px !important;
}
.single-product .woocommerce-product-gallery .flex-control-thumbs li.flex-active-slide img {
  border-color: var(--nidoo-primary) !important;
}

/* Checkout: modern fields and order summary. */
.woocommerce-checkout form .form-row input.input-text,
.woocommerce-checkout form .form-row select,
.woocommerce-checkout form .form-row textarea,
.woocommerce-checkout .checkout_coupon input.input-text {
  width:100% !important;
  min-height:48px !important;
  padding:12px 14px !important;
  border:1px solid var(--nidoo-border) !important;
  border-radius:12px !important;
  background:#fff !important;
  box-sizing:border-box !important;
}
.woocommerce-checkout form .form-row input:focus,
.woocommerce-checkout form .form-row select:focus,
.woocommerce-checkout form .form-row textarea:focus,
.woocommerce-checkout .checkout_coupon input:focus {
  border-color:var(--nidoo-primary) !important;
  outline:none !important;
  box-shadow:0 0 0 3px rgb(70 209 152 / 15%) !important;
}
.woocommerce-checkout .woocommerce-checkout-review-order {
  padding:28px !important;
  border:1px solid var(--nidoo-border) !important;
  border-radius:16px !important;
  background:#fff !important;
  box-shadow:var(--nidoo-shadow-card) !important;
}
.woocommerce-checkout .woocommerce-checkout-review-order-table {
  width:100% !important;
  border:0 !important;
  border-collapse:separate !important;
  border-spacing:0 !important;
  background:transparent !important;
}
.woocommerce-checkout .woocommerce-checkout-review-order-table th,
.woocommerce-checkout .woocommerce-checkout-review-order-table td {
  padding:14px 0 !important;
  border:0 !important;
  border-bottom:1px solid var(--nidoo-border) !important;
  background:transparent !important;
  vertical-align:top !important;
}
.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr:last-child th,
.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr:last-child td { border-bottom:0 !important; }
.woocommerce-checkout .woocommerce-checkout-review-order-table .product-name { color:var(--nidoo-text) !important; }
.woocommerce-checkout .woocommerce-checkout-review-order-table .product-total,
.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot td { text-align:right !important; }
.woocommerce-checkout .checkout_coupon { border:0 !important; padding:0 !important; }

/* Checkout review: keep table inside card and style heading as header. */
.woocommerce-checkout #order_review_heading {
  margin:0 !important;
  padding:24px 28px !important;
  border:1px solid var(--nidoo-border) !important;
  border-bottom:0 !important;
  border-radius:16px 16px 0 0 !important;
  background:#fff !important;
  box-sizing:border-box !important;
}
.woocommerce-checkout #order_review {
  min-width:0 !important;
  overflow:hidden !important;
}
.woocommerce-checkout #order_review .woocommerce-checkout-review-order {
  margin:0 !important;
  border-radius:0 0 16px 16px !important;
  overflow:hidden !important;
  min-width:0 !important;
}
.woocommerce-checkout .woocommerce-checkout-review-order-table {
  table-layout:fixed !important;
  max-width:100% !important;
}
.woocommerce-checkout .woocommerce-checkout-review-order-table th:first-child,
.woocommerce-checkout .woocommerce-checkout-review-order-table td:first-child {
  width:65% !important;
  max-width:65% !important;
  overflow-wrap:anywhere !important;
  word-break:break-word !important;
}
.woocommerce-checkout .woocommerce-checkout-review-order-table th:last-child,
.woocommerce-checkout .woocommerce-checkout-review-order-table td:last-child {
  width:35% !important;
  max-width:35% !important;
  overflow-wrap:anywhere !important;
  word-break:break-word !important;
}

/* Checkout selects: make border visibly match text inputs. */
.woocommerce-checkout select,
.woocommerce-checkout .select2-container .select2-selection--single {
  min-height:48px !important;
  border:1.5px solid #d8d3cb !important;
  border-radius:12px !important;
  background-color:#fff !important;
  box-shadow:inset 0 0 0 1px rgb(45 42 36 / 3%) !important;
}
.woocommerce-checkout select { padding:10px 42px 10px 14px !important; }
.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__rendered { line-height:46px !important; padding-left:14px !important; }
.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__arrow { height:46px !important; right:10px !important; }

/* Checkout order box: one unified container; heading is not a separate card. */
.woocommerce-checkout #order_review {
  border:1px solid var(--nidoo-border) !important;
  border-radius:16px !important;
  background:#fff !important;
  overflow:hidden !important;
  box-shadow:var(--nidoo-shadow-card) !important;
}
.woocommerce-checkout #order_review_heading {
  border:0 !important;
  border-radius:0 !important;
  padding:28px !important;
  margin:0 !important;
  background:#fff !important;
}
.woocommerce-checkout #order_review .woocommerce-checkout-review-order {
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  padding:0 28px 28px !important;
  background:#fff !important;
}

/* Checkout select dimensions: same outer size as text inputs. */
.woocommerce-checkout select,
.woocommerce-checkout .select2-container .select2-selection--single {
  height:48px !important;
  min-height:48px !important;
  max-height:48px !important;
  line-height:1.2 !important;
  box-sizing:border-box !important;
}
.woocommerce-checkout select {
  appearance:none !important;
  -webkit-appearance:none !important;
  background-image:linear-gradient(45deg, transparent 50%, var(--nidoo-primary) 50%),linear-gradient(135deg, var(--nidoo-primary) 50%, transparent 50%) !important;
  background-position:calc(100% - 20px) 20px,calc(100% - 14px) 20px !important;
  background-size:6px 6px,6px 6px !important;
  background-repeat:no-repeat !important;
}

/* Checkout select text vertical alignment. */
.woocommerce-checkout select {
  height:48px !important;
  padding:0 42px 0 14px !important;
  line-height:46px !important;
  vertical-align:middle !important;
}

/* Select2 fields: rendered label shares exact input inset/alignment. */
.woocommerce-checkout .select2-container .select2-selection--single {
  display:flex !important;
  align-items:center !important;
  padding:0 42px 0 14px !important;
}
.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__rendered {
  padding:0 !important;
  line-height:1.2 !important;
  display:block !important;
}
.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__arrow {
  top:50% !important;
  transform:translateY(-50%) !important;
}

/* Checkout order heading: blend into page; card starts with order content. */
.woocommerce-checkout #order_review_heading {
  background:transparent !important;
  border:0 !important;
  padding:0 0 20px !important;
}

/* Cart: modern table/card treatment. */
.woocommerce-cart .woocommerce-cart-form,
.woocommerce-cart .cart-collaterals .cart_totals {
  background:#fff !important;
  border:1px solid var(--nidoo-border) !important;
  border-radius:16px !important;
  box-shadow:var(--nidoo-shadow-card) !important;
  overflow:hidden !important;
}
.woocommerce-cart table.shop_table {
  width:100% !important;
  margin:0 !important;
  border:0 !important;
  border-collapse:separate !important;
  border-spacing:0 !important;
  table-layout:fixed !important;
}
.woocommerce-cart table.shop_table th,
.woocommerce-cart table.shop_table td {
  padding:16px !important;
  border:0 !important;
  border-bottom:1px solid var(--nidoo-border) !important;
  background:#fff !important;
  vertical-align:middle !important;
}
.woocommerce-cart table.shop_table th { color:var(--nidoo-text) !important; font-weight:600 !important; }
.woocommerce-cart table.shop_table tr:last-child td { border-bottom:0 !important; }
.woocommerce-cart .product-thumbnail img { border-radius:10px !important; border:1px solid var(--nidoo-border) !important; }
.woocommerce-cart .product-remove a { color:#999 !important; font-size:22px !important; }
.woocommerce-cart .quantity input.qty { min-height:44px !important; border:1px solid var(--nidoo-border) !important; border-radius:10px !important; }
.woocommerce-cart .cart_totals { padding:24px !important; }
.woocommerce-cart .cart_totals table { border:0 !important; }
.woocommerce-cart .cart_totals th,
.woocommerce-cart .cart_totals td { padding:12px 0 !important; border:0 !important; border-bottom:1px solid var(--nidoo-border) !important; }
.woocommerce-cart .cart-empty.woocommerce-info { margin:0 !important; padding:22px 24px !important; border:0 !important; border-top:3px solid var(--nidoo-primary) !important; border-radius:0 !important; background:#faf9f7 !important; color:var(--nidoo-text-muted) !important; }
.woocommerce-cart .return-to-shop { margin-top:24px !important; }
.woocommerce-cart .return-to-shop a.button { border-radius:999px !important; background:var(--nidoo-primary) !important; color:#fff !important; padding:12px 22px !important; }
@media (max-width:600px) {
  .woocommerce-cart table.shop_table thead { display:none !important; }
  .woocommerce-cart table.shop_table tr.cart_item { display:grid !important; grid-template-columns:72px 1fr auto !important; gap:12px !important; align-items:center !important; padding:14px !important; }
  .woocommerce-cart table.shop_table tr.cart_item td { padding:4px !important; border:0 !important; }
  .woocommerce-cart .product-thumbnail { grid-column:1 !important; }
  .woocommerce-cart .product-name { grid-column:2 !important; }
  .woocommerce-cart .product-quantity,.woocommerce-cart .product-subtotal { grid-column:3 !important; }
}

/* Cart: separate sections and normalize coupon/quantity controls. */
.woocommerce-cart .woocommerce-cart-form { margin-bottom:24px !important; }
.woocommerce-cart .cart-collaterals .cart_totals { margin-top:0 !important; }
.woocommerce-cart .coupon { display:flex !important; align-items:center !important; gap:12px !important; padding:20px 16px !important; border-top:1px solid var(--nidoo-border) !important; }
.woocommerce-cart .coupon input#coupon_code,
.woocommerce-cart .coupon .input-text {
  width:280px !important;
  height:48px !important;
  min-height:48px !important;
  padding:0 14px !important;
  border:1.5px solid #d8d3cb !important;
  border-radius:12px !important;
  box-sizing:border-box !important;
}
.woocommerce-cart .coupon button,
.woocommerce-cart .coupon .button { height:48px !important; border-radius:999px !important; padding:0 22px !important; }
.woocommerce-cart .quantity { display:inline-flex !important; align-items:center !important; gap:0 !important; }
.woocommerce-cart .quantity .minus,
.woocommerce-cart .quantity .plus {
  width:44px !important;
  height:44px !important;
  min-width:44px !important;
  padding:0 !important;
  border:1px solid var(--nidoo-border) !important;
  background:#fff !important;
  color:var(--nidoo-primary) !important;
  font-size:20px !important;
  line-height:42px !important;
  text-align:center !important;
}
.woocommerce-cart .quantity .minus { border-radius:10px 0 0 10px !important; }
.woocommerce-cart .quantity .plus { border-radius:0 10px 10px 0 !important; }
.woocommerce-cart .quantity input.qty {
  width:52px !important;
  height:44px !important;
  min-height:44px !important;
  padding:0 !important;
  border:1px solid var(--nidoo-border) !important;
  border-left:0 !important;
  border-right:0 !important;
  border-radius:0 !important;
  text-align:center !important;
}
@media (max-width:600px) {
  .woocommerce-cart .coupon { flex-wrap:wrap !important; }
  .woocommerce-cart .coupon input#coupon_code { flex:1 1 100% !important; width:100% !important; }
}

/* Curated product carousels: browsing only, no add-to-cart action. */
.wp-block-woocommerce-product-collection .wp-block-button,
.wp-block-woocommerce-product-collection .wp-block-woocommerce-product-button,
.wp-block-woocommerce-product-collection .add_to_cart_button,
.wp-block-woocommerce-product-collection .wp-block-button__link { display:none !important; }

/* Mobile menu: polished drawer with clear hierarchy. */
@media (max-width:768px) {
  .ast-mobile-popup-drawer { z-index:99999 !important; }
  .ast-mobile-popup-drawer .ast-mobile-popup-overlay { background:rgb(45 42 36 / 42%) !important; backdrop-filter:blur(3px) !important; }
  .ast-mobile-popup-drawer .ast-mobile-popup-inner {
    width:min(88vw,380px) !important;
    max-width:380px !important;
    background:#fffdf7 !important;
    box-shadow:8px 0 32px rgb(45 42 36 / 18%) !important;
  }
  .ast-mobile-popup-drawer .ast-mobile-popup-header {
    min-height:76px !important;
    padding:16px 20px !important;
    border-bottom:1px solid var(--nidoo-border) !important;
    background:#fffdf7 !important;
  }
  .ast-mobile-popup-drawer .menu-toggle-close {
    width:42px !important;
    height:42px !important;
    min-height:42px !important;
    padding:0 !important;
    border:1px solid var(--nidoo-border) !important;
    border-radius:50% !important;
    background:#fff !important;
    color:var(--nidoo-text) !important;
  }
  .ast-mobile-popup-drawer .main-header-bar-navigation,
  .ast-mobile-popup-drawer .main-navigation,
  .ast-mobile-popup-drawer .main-header-menu { width:100% !important; }
  .ast-mobile-popup-drawer .main-header-menu { padding:8px 0 !important; }
  .ast-mobile-popup-drawer .main-header-menu .menu-item { border-bottom:1px solid rgb(232 228 221 / 70%) !important; }
  .ast-mobile-popup-drawer .main-header-menu .menu-link {
    display:flex !important;
    align-items:center !important;
    min-height:64px !important;
    padding:0 24px !important;
    color:var(--nidoo-text) !important;
    font-size:17px !important;
    font-weight:500 !important;
  }
  .ast-mobile-popup-drawer .main-header-menu .current-menu-item .menu-link { color:var(--nidoo-primary) !important; font-weight:600 !important; }
}

/* Footer concept preview: compact dark brand footer. */
.site-footer {
  background:var(--nidoo-bg-soft) !important;
  color:var(--nidoo-text) !important;
  padding:32px 0 22px !important;
}
.site-footer .ast-builder-grid-row-container-inner,
.site-footer .ast-builder-footer-grid-columns { max-width:1120px !important; margin:0 auto !important; }
.site-footer .site-primary-footer-inner-wrap { align-items:center !important; }
.site-footer .ast-footer-html-1 p { margin:0 !important; }
.site-footer .ast-footer-html-1 img { width:180px !important; height:auto !important; filter:none !important; }
.site-footer .footer-navigation { justify-content:center !important; }
.site-footer #astra-footer-menu { gap:20px !important; }
.site-footer #astra-footer-menu .menu-link { color:var(--nidoo-text) !important; font-size:14px !important; padding:8px 0 !important; }
.site-footer #astra-footer-menu .menu-link:hover { color:var(--nidoo-accent-pink) !important; }
.site-footer .site-primary-footer-section-3::after { content:'© Nidoo · Hecho con cariño en México'; color:var(--nidoo-text-muted); font-size:12px; }
@media (max-width:768px) {
  .site-footer { padding:28px 20px 18px !important; }
  .site-footer .site-primary-footer-inner-wrap { gap:14px !important; }
  .site-footer .ast-footer-html-1 img { width:150px !important; }
  .site-footer .site-primary-footer-section-3::after { display:block; margin-top:4px; }
}

/* Premium mobile drawer finishing pass. */
@media (max-width:768px) {
  .ast-mobile-popup-drawer .ast-mobile-popup-inner { background:#fffdf7 !important; }
  .ast-mobile-popup-drawer .ast-mobile-popup-header { display:flex !important; align-items:center !important; justify-content:flex-end !important; position:relative !important; }
  .ast-mobile-popup-drawer .ast-mobile-popup-header::before { content:'Nidoo'; position:absolute; left:24px; top:20px; color:#46d198; font-size:28px; font-weight:700; letter-spacing:-.06em; }
  .ast-mobile-popup-drawer .ast-header-account { display:none !important; }
  .ast-mobile-popup-drawer .main-header-bar-navigation { margin-top:0 !important; }
  .ast-mobile-popup-drawer .main-header-menu { background:#fffdf7 !important; }
  .ast-mobile-popup-drawer .main-header-menu .menu-link { letter-spacing:-.01em !important; }
}
