/* OnData theme styles. Colors and fonts live in theme.json; this file adds details theme.json can't express. */

:focus-visible { outline: 3px solid var(--wp--preset--color--gold); outline-offset: 2px; }
img { max-width: 100%; height: auto; }
body { -webkit-font-smoothing: antialiased; overflow-x: hidden; }

/* Header */
.ondata-header { border-bottom: 1px solid var(--wp--preset--color--line); background: rgba(255,255,255,.96); z-index: 50; }
.ondata-header .wp-block-navigation a { padding: .5rem .6rem; border-radius: 8px; }
.ondata-header .wp-block-navigation a:hover { background: var(--wp--preset--color--evergreen-soft); color: var(--wp--preset--color--evergreen); }
.ondata-header .wp-block-navigation__responsive-container-open,
.ondata-header .wp-block-navigation__responsive-container-close { min-width: 44px; min-height: 44px; justify-content: center; }
.ondata-header .wc-block-mini-cart__button,
.ondata-header .wc-block-customer-account a { min-width: 44px; min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }
.wc-block-mini-cart__badge { background: var(--wp--preset--color--cranberry) !important; color: #fff !important; }
.ondata-star { color: var(--wp--preset--color--gold); }

/* Transparency grid: tells POD sellers that PNG previews are transparent. */
.ondata-checker img,
.wc-block-components-product-image img,
.woocommerce-product-gallery__image img,
.wp-block-woocommerce-product-image img {
	background-color: #fff;
	background-image: conic-gradient(#EFEAE1 25%, transparent 0 50%, #EFEAE1 0 75%, transparent 0);
	background-size: 22px 22px;
}
.wc-block-components-product-image,
.wp-block-woocommerce-product-image,
.woocommerce-product-gallery__image { border-radius: 12px; overflow: hidden; border: 1px solid var(--wp--preset--color--line); }
.ondata-checker img { border-radius: 14px; border: 1px solid var(--wp--preset--color--line); width: 100%; }

/* Product cards */
.wc-block-product-template .wc-block-product { text-align: left; }
.wc-block-product-template .wp-block-post-title { font-family: var(--wp--preset--font-family--body); font-weight: 600; font-size: 1rem !important; line-height: 1.3; }
.wc-block-product-template .wp-block-post-title a { color: var(--wp--preset--color--contrast); text-decoration: none; }
.wc-block-product-template .wc-block-components-product-price { font-weight: 700; color: var(--wp--preset--color--evergreen); }
.wc-block-product-template { row-gap: 1.75rem; }
@media (max-width: 600px) {
	.wc-block-product-template.is-flex-container.is-flex-container.columns-3 > li,
	.wc-block-product-template.is-flex-container.is-flex-container.columns-4 > li { width: calc(50% - .5rem) !important; }
	.wc-block-product-template.is-flex-container { gap: 1rem !important; }
}

/* Single product */
.ondata-digital-notice { background: var(--wp--preset--color--evergreen-soft); border-radius: 12px; padding: .8rem 1rem; }
.wp-block-woocommerce-add-to-cart-form .single_add_to_cart_button { border-radius: 999px !important; min-height: 48px; background: var(--wp--preset--color--evergreen) !important; color: #fff !important; padding: 0 1.75rem !important; }
.wp-block-woocommerce-product-details table { width: 100%; border-collapse: collapse; }
.wp-block-woocommerce-product-details th,
.wp-block-woocommerce-product-details td { text-align: left; padding: .6rem .5rem; border-bottom: 1px solid var(--wp--preset--color--line); vertical-align: top; }
.wp-block-woocommerce-product-details .woocommerce-Tabs-panel { overflow-x: auto; }

/* Shop */
.ondata-chips .wp-block-button__link { background: #fff; color: var(--wp--preset--color--contrast); border: 1px solid var(--wp--preset--color--line); padding: .5rem 1rem; font-weight: 500; font-size: .95rem; }
.ondata-chips .wp-block-button__link:hover { border-color: var(--wp--preset--color--evergreen); color: var(--wp--preset--color--evergreen); background: #fff; }
.wp-block-search__input { min-height: 48px; border-radius: 10px; border-color: var(--wp--preset--color--line); padding: 0 .9rem; }
.wp-block-search__button { border-radius: 10px !important; }
.woocommerce-ordering select, .wc-block-catalog-sorting select { min-height: 44px; border-radius: 10px; border: 1px solid var(--wp--preset--color--line); padding: 0 .75rem; background: #fff; }
.wp-block-query-pagination a, .wp-block-query-pagination .current { display: inline-flex; min-width: 44px; min-height: 44px; align-items: center; justify-content: center; border: 1px solid var(--wp--preset--color--line); border-radius: 10px; text-decoration: none; }
.wp-block-query-pagination .current { background: var(--wp--preset--color--evergreen); color: #fff; border-color: var(--wp--preset--color--evergreen); }

/* Home */
.ondata-facts { list-style: none; padding: 0; display: flex; flex-wrap: wrap; gap: .4rem 1.4rem; color: var(--wp--preset--color--contrast-2); font-size: .95rem; }
.ondata-facts li { display: flex; align-items: center; gap: .5rem; }
.ondata-facts li::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--wp--preset--color--gold); flex: none; }
.ondata-pill { display: inline-block; background: #fff; border: 1px solid var(--wp--preset--color--line); border-radius: 999px; padding: .3rem .9rem; font-size: .92rem; color: var(--wp--preset--color--contrast-2); }
.ondata-panel { background: #fff; border: 1px solid var(--wp--preset--color--line); border-radius: 16px; }
.ondata-cat a { text-decoration: none; }
.ondata-cat:hover { border-color: var(--wp--preset--color--evergreen); }
.ondata-step-num { display: inline-flex; width: 36px; height: 36px; border-radius: 50%; background: var(--wp--preset--color--evergreen); color: #fff; align-items: center; justify-content: center; font-weight: 700; margin: 0; }
.ondata-ticks { list-style: none; padding-left: 0; }
.ondata-ticks li { position: relative; padding: .45rem 0 .45rem 1.8rem; border-bottom: 1px solid var(--wp--preset--color--line); }
.ondata-ticks li:last-child { border-bottom: 0; }
.ondata-ticks li::before { content: ""; position: absolute; left: 4px; top: .95rem; width: 12px; height: 7px; border-left: 2.5px solid var(--wp--preset--color--evergreen); border-bottom: 2.5px solid var(--wp--preset--color--evergreen); transform: rotate(-45deg); }
.ondata-ticks.is-no li::before { border: 0; width: 14px; height: 2.5px; background: var(--wp--preset--color--cranberry); transform: none; top: 1.2rem; }
.wp-block-details summary { font-weight: 600; cursor: pointer; }

/* Policy pages */
.ondata-callout { background: var(--wp--preset--color--base-2); border-left: 4px solid var(--wp--preset--color--evergreen); border-radius: 8px; padding: 1rem 1.1rem; }

/* Footer */
.ondata-footer a { color: var(--wp--preset--color--footer-text); text-decoration: none; }
.ondata-footer a:hover { color: #fff; text-decoration: underline; }
.ondata-footer .wp-block-list { list-style: none; padding-left: 0; }
.ondata-footer .wp-block-list li { margin-bottom: .5rem; }

/* Tables and code scroll inside themselves on phones */
.wp-block-table { overflow-x: auto; }
@media (prefers-reduced-motion: reduce) { * { scroll-behavior: auto !important; transition: none !important; animation: none !important; } }

/* Sticky header (template part wrapper) */
header.wp-block-template-part { position: sticky; top: var(--wp-admin--admin-bar--height, 0px); z-index: 50; }
@media (max-width: 600px) { header.wp-block-template-part { top: 0; } }

/* Product price */
.single-product .wp-block-woocommerce-product-price { font-weight: 700; color: var(--wp--preset--color--evergreen); }

/* Mobile menu overlay: left aligned, larger touch targets */
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content { align-items: flex-start !important; padding-top: 1rem; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container { align-items: flex-start !important; gap: .25rem !important; width: 100%; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item { width: 100%; border-bottom: 1px solid var(--wp--preset--color--line); }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content { font-size: 1.15rem; padding: .8rem .25rem !important; display: block; }
.wp-block-navigation__responsive-container.is-menu-open { --navigation-layout-justification-setting: flex-start; --navigation-layout-justify: flex-start; --navigation-layout-align: flex-start; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item { justify-content: flex-start; text-align: left; }
