/*
Theme Name: Cozykid
Theme URI: https://cozykid.lt
Description: Jauki pastelinė WooCommerce tema cozykid.lt parduotuvei (Twenty Twenty-Five vaikinė tema).
Author: cozykid.lt
Template: twentytwentyfive
Version: 1.0.0
Requires at least: 6.6
Requires PHP: 8.0
Text Domain: cozykid
*/

:root { --ck-radius: 22px; --ck-radius-sm: 14px; --ck-line: #ECE4D9; }

body { -webkit-font-smoothing: antialiased; overflow-x: hidden; }
::selection { background: var(--wp--preset--color--accent-2); }
a { text-underline-offset: .18em; text-decoration-thickness: 1px; }

/* ---------- header ---------- */
.ck-topbar p { margin: 0; letter-spacing: .01em; }
.wp-site-blocks > .wp-block-template-part:first-child { position: sticky; top: 0; z-index: 50; }
.admin-bar .wp-site-blocks > .wp-block-template-part:first-child { top: 32px; }
@media (max-width: 782px) { .admin-bar .wp-site-blocks > .wp-block-template-part:first-child { top: 0; } }
.ck-header { border-bottom: 1px solid var(--ck-line); background: rgba(255,251,245,.94) !important; backdrop-filter: saturate(1.4) blur(10px); }
.ck-header-row { gap: 18px; }
.ck-logo { margin: 0; flex-shrink: 0; }
.ck-logo a, .wp-block-site-title a { text-decoration: none; display: inline-flex; align-items: center; gap: .4em; color: var(--wp--preset--color--contrast); letter-spacing: -.02em; }
.ck-logo a::before, .wp-block-site-title a::before { content: ""; width: 1.25em; height: 1.25em; border-radius: 50%; background:
	radial-gradient(circle at 35% 40%, #fff 0 9%, transparent 10%), radial-gradient(circle at 65% 40%, #fff 0 9%, transparent 10%),
	radial-gradient(circle at 30% 30%, var(--wp--preset--color--accent-2), var(--wp--preset--color--accent-7)); box-shadow: inset 0 -3px 0 rgba(0,0,0,.06); }
.ck-nav .wp-block-navigation-item__content { text-decoration: none; padding: 6px 0; position: relative; }
.ck-nav .wp-block-navigation-item__content:hover { color: var(--wp--preset--color--accent-1); }
.ck-nav .wp-block-navigation__submenu-container { border-radius: var(--ck-radius-sm); border: 1px solid var(--ck-line) !important; box-shadow: var(--wp--preset--shadow--soft); padding: 8px !important; min-width: 220px !important; }
.ck-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content { padding: 8px 12px !important; border-radius: 10px; }
.ck-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover { background: var(--wp--preset--color--accent-5); }
.ck-header-actions { flex-shrink: 0; }
.ck-header-actions .wp-block-search__button, .ck-header-actions .wc-block-customer-account a, .ck-header-actions .wc-block-mini-cart__button {
	width: 42px; height: 42px; padding: 0 !important; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center;
	background: transparent; color: var(--wp--preset--color--contrast); border: 0; transition: background .2s; }
.ck-header-actions .wp-block-search__button:hover, .ck-header-actions .wc-block-customer-account a:hover, .ck-header-actions .wc-block-mini-cart__button:hover { background: var(--wp--preset--color--accent-5); }
.ck-header-actions .wp-block-search__button svg { width: 24px; height: 24px; fill: currentColor; }
.ck-search .wp-block-search__inside-wrapper { border: 0 !important; padding: 0 !important; }
.ck-search.wp-block-search__searchfield-hidden .wp-block-search__input { width: 0 !important; padding: 0 !important; border: 0 !important; }
.ck-search:not(.wp-block-search__searchfield-hidden) .wp-block-search__input { border: 1px solid var(--ck-line); border-radius: 999px; padding: 8px 14px; background: #fff; min-width: 180px; }
.wc-block-mini-cart__badge { background: var(--wp--preset--color--accent-7) !important; color: #fff !important; border: 0 !important; font-weight: 700; }
.wc-block-mini-cart__amount { display: none !important; }
.wp-block-navigation__responsive-container-open { width: 42px; height: 42px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; }
.wp-block-navigation__responsive-container.is-menu-open { background: var(--wp--preset--color--base) !important; padding: 24px !important; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content { padding-top: 48px; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item { font-family: var(--wp--preset--font-family--heading); font-size: 1.35rem; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container { border: 0 !important; box-shadow: none; padding: 4px 0 4px 12px !important; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item { font-size: 1.05rem; font-family: var(--wp--preset--font-family--body); }

@media (max-width: 599px) {
	.ck-topbar p { font-size: .78rem !important; }
	.ck-logo { font-size: 1.45rem !important; }
	.ck-header-row { gap: 4px; }
	.ck-header-row .ck-nav { order: -1; }
	.ck-header-actions { gap: 0 !important; }
	.ck-header-actions .wp-block-search__button, .ck-header-actions .wc-block-customer-account a, .ck-header-actions .wc-block-mini-cart__button { width: 38px; height: 38px; }
}

/* ---------- buttons ---------- */
.wp-element-button, .wp-block-button__link { transition: background .2s, color .2s, transform .2s; }
.wp-block-button__link:hover { transform: translateY(-1px); }
.wp-block-button.is-style-outline > .wp-block-button__link { border: 2px solid var(--wp--preset--color--contrast); color: var(--wp--preset--color--contrast); background: transparent; }
.wp-block-button.is-style-outline > .wp-block-button__link:hover { background: var(--wp--preset--color--contrast); color: #fff; }

/* ---------- hero ---------- */
.ck-eyebrow { display: inline-block; margin: 0 0 .25rem; font-family: var(--wp--preset--font-family--heading); font-weight: 500; font-size: .9rem; letter-spacing: .06em; text-transform: uppercase; color: var(--wp--preset--color--accent-7); }
.ck-hero { position: relative; overflow: hidden; }
.ck-hero-title { margin-top: .3rem !important; line-height: 1.05 !important; }
.ck-hl { background: linear-gradient(transparent 62%, var(--wp--preset--color--accent-3) 62%); padding: 0 .08em; }
.ck-hero-img img { width: 100%; height: auto; animation: ck-float 7s ease-in-out infinite; }
.ck-hero-meta { margin-top: var(--wp--preset--spacing--40) !important; }
@keyframes ck-float { 50% { transform: translateY(-10px); } }
@media (prefers-reduced-motion: reduce) { .ck-hero-img img { animation: none; } }
@media (max-width: 781px) { .ck-hero .wp-block-columns { flex-direction: column-reverse; } .ck-hero-img { max-width: 420px; margin: 0 auto; } }

/* ---------- USP ---------- */
.ck-usp { border-bottom: 1px solid var(--ck-line); }
.ck-usp-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.ck-usp-item { display: flex; gap: 14px; align-items: center; }
.ck-usp-item strong { display: block; font-family: var(--wp--preset--font-family--heading); font-weight: 600; font-size: 1.02rem; }
.ck-usp-item span:not(.ck-ic) { font-size: .88rem; color: var(--wp--preset--color--muted); }
.ck-ic { flex: 0 0 52px; height: 52px; border-radius: 16px; display: grid; place-items: center; }
.ck-ic svg { width: 26px; height: 26px; fill: none; stroke: var(--wp--preset--color--contrast); stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.ck-ic-sage { background: var(--wp--preset--color--accent-6); } .ck-ic-pink { background: #FCE6E2; } .ck-ic-butter { background: #FDF3D6; } .ck-ic-sky { background: #E6F1F8; }
@media (max-width: 900px) { .ck-usp-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 480px) { .ck-usp-grid { grid-template-columns: 1fr; gap: 14px; } }

/* ---------- categories ---------- */
.ck-cats { display: grid; grid-template-columns: repeat(5, 1fr); gap: 18px; margin-top: var(--wp--preset--spacing--40); }
.ck-cat { display: block; text-decoration: none; text-align: center; color: var(--wp--preset--color--contrast); }
.ck-cat img { width: 100%; height: auto; aspect-ratio: 1; object-fit: cover; border-radius: var(--ck-radius); transition: transform .35s ease, box-shadow .35s ease; display: block; }
.ck-cat span { display: block; margin-top: 12px; font-family: var(--wp--preset--font-family--heading); font-weight: 600; font-size: 1.1rem; }
.ck-cat:hover img { transform: translateY(-6px) rotate(-1deg); box-shadow: var(--wp--preset--shadow--soft); }
@media (max-width: 900px) { .ck-cats { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 560px) { .ck-cats { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; gap: 12px; padding-bottom: 8px; margin-right: calc(-1 * var(--wp--preset--spacing--40)); }
	.ck-cat { flex: 0 0 40%; scroll-snap-align: start; } }

/* ---------- product cards (collections + archives) ---------- */
.wc-block-product-template .wc-block-product, .wc-block-product-template > li { background: transparent; text-align: left; }
.wc-block-components-product-image, .wc-block-components-product-image img { border-radius: var(--ck-radius) !important; overflow: hidden; }
.wc-block-components-product-image img { transition: transform .45s ease; }
.wc-block-product:hover .wc-block-components-product-image img { transform: scale(1.04); }
.wc-block-product .wp-block-post-title { margin: 14px 0 4px !important; font-family: var(--wp--preset--font-family--heading); font-weight: 500; line-height: 1.3; text-align: left; }
.wc-block-product .wp-block-post-title a { text-decoration: none; }
.wc-block-product .wc-block-components-product-price { font-weight: 700; text-align: left; margin-bottom: 10px; }
.wc-block-components-product-price del { color: var(--wp--preset--color--muted); font-weight: 400; margin-right: .3em; }
.wc-block-components-product-price ins { text-decoration: none; color: var(--wp--preset--color--accent-7); }
.wc-block-product .wp-block-button.wc-block-components-product-button { justify-content: flex-start; align-items: flex-start; }
.wc-block-components-product-button__button, .wc-block-product .wp-block-button__link { font-size: .92rem !important; padding: .6em 1.2em !important; background: var(--wp--preset--color--accent-6) !important; color: var(--wp--preset--color--contrast) !important; border: 0 !important; border-radius: 999px !important; }
.wc-block-components-product-button__button:hover, .wc-block-product .wp-block-button__link:hover { background: var(--wp--preset--color--contrast) !important; color: #fff !important; }
.wc-block-components-product-sale-badge { background: var(--wp--preset--color--accent-7) !important; color: #fff !important; border: 0 !important; border-radius: 999px !important; font-weight: 700; font-size: .78rem !important; padding: .3em .8em !important; margin: 10px !important; }
@media (max-width: 600px) {
	.wc-block-product .wp-block-post-title { font-size: .98rem !important; }
}

/* ---------- promos / values / faq ---------- */
.ck-promo { border-radius: var(--ck-radius); padding: clamp(28px, 4vw, 48px) !important; min-height: 260px; display: flex; flex-direction: column; justify-content: flex-end; position: relative; overflow: hidden; }
.ck-promo::after { content: ""; position: absolute; right: -60px; top: -60px; width: 220px; height: 220px; border-radius: 50%; background: rgba(255,255,255,.35); }
.ck-promo h3 { max-width: 16ch; margin: .2rem 0 1rem; }
.ck-values { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.ck-values div { background: #fff; border-radius: var(--ck-radius); padding: 22px; box-shadow: var(--wp--preset--shadow--soft); }
.ck-values strong { display: block; font-family: var(--wp--preset--font-family--heading); font-size: 1.7rem; font-weight: 600; color: var(--wp--preset--color--accent-1); }
.ck-values span { color: var(--wp--preset--color--muted); font-size: .92rem; }
.wp-block-details { background: #fff; border: 1px solid var(--ck-line); border-radius: var(--ck-radius-sm); padding: 0 22px; margin-top: 12px !important; transition: box-shadow .2s; }
.wp-block-details[open] { box-shadow: var(--wp--preset--shadow--soft); }
.wp-block-details summary { cursor: pointer; padding: 18px 28px 18px 0; font-family: var(--wp--preset--font-family--heading); font-weight: 500; font-size: 1.08rem; list-style: none; position: relative; }
.wp-block-details summary::-webkit-details-marker { display: none; }
.wp-block-details summary::after { content: "+"; position: absolute; right: 0; top: 50%; transform: translateY(-50%); font-size: 1.5rem; line-height: 1; color: var(--wp--preset--color--accent-1); transition: transform .2s; }
.wp-block-details[open] summary::after { transform: translateY(-50%) rotate(45deg); }
.wp-block-details > *:last-child { padding-bottom: 18px; margin-bottom: 0; }

/* ---------- content pages ---------- */
.ck-page-head .wp-block-post-title { margin: 0; }
.ck-page-body h2 { margin-top: 2.2rem; font-size: 1.6rem; }
.ck-page-body h3 { margin-top: 1.6rem; }
.ck-card { background: #fff; border: 1px solid var(--ck-line); border-radius: var(--ck-radius); padding: clamp(20px, 3vw, 32px) !important; }
.ck-note { background: var(--wp--preset--color--accent-3); border-radius: var(--ck-radius-sm); padding: 16px 20px !important; }
.ck-page-body table { border-collapse: collapse; width: 100%; }
.ck-page-body .wp-block-table td, .ck-page-body .wp-block-table th { border: 0; border-bottom: 1px solid var(--ck-line); padding: 12px 10px; text-align: left; }
.ck-page-body .wp-block-table thead { border-bottom: 2px solid var(--wp--preset--color--contrast); }
.ck-page-body .wp-block-table { overflow-x: auto; }

/* ---------- WooCommerce pages ---------- */
.woocommerce-breadcrumb, .wc-block-breadcrumbs { font-size: .88rem; color: var(--wp--preset--color--muted); }
.wp-block-woocommerce-product-image-gallery img, .woocommerce-product-gallery__image img, .wc-block-product-gallery img { border-radius: var(--ck-radius); }
.single-product .wp-block-post-title { font-size: var(--wp--preset--font-size--x-large); }
.single-product .wc-block-components-product-price, .single-product .wp-block-woocommerce-product-price { font-size: 1.5rem; font-weight: 700; }
.single-product .quantity .qty, .wc-block-components-quantity-selector { border-radius: 999px !important; }
.single-product .single_add_to_cart_button, .wc-block-cart__submit-button, .wc-block-components-checkout-place-order-button, .wp-block-woocommerce-proceed-to-checkout-block a {
	border-radius: 999px !important; background: var(--wp--preset--color--contrast) !important; color: #fff !important; font-family: var(--wp--preset--font-family--heading); font-weight: 500; }
.single-product .single_add_to_cart_button:hover, .wc-block-cart__submit-button:hover, .wc-block-components-checkout-place-order-button:hover { background: var(--wp--preset--color--accent-1) !important; }
.single-product .variations select { border: 1px solid var(--ck-line); border-radius: 12px; padding: 10px 14px; background: #fff; min-width: 160px; }
.woocommerce-tabs .tabs, .wc-tabs { border-bottom: 1px solid var(--ck-line) !important; }
.wc-block-components-text-input input, .wc-block-components-combobox input, .wc-blocks-components-select select, .wc-block-components-textarea { border-radius: 12px !important; }
.wc-block-components-sidebar .wc-block-components-panel, .wc-block-components-totals-wrapper { border-color: var(--ck-line) !important; }
.wc-block-cart, .wc-block-checkout { margin-top: var(--wp--preset--spacing--40); }
.woocommerce-store-notice, p.demo_store { position: fixed !important; top: auto !important; bottom: 0 !important; left: 0; right: 0; margin: 0 !important; z-index: 99; padding: 10px 16px !important; text-align: center; background: var(--wp--preset--color--contrast) !important; color: #fff; font-size: .9rem; box-shadow: none !important; }
.woocommerce-store-notice a { color: var(--wp--preset--color--accent-3) !important; }
.wp-block-woocommerce-product-filters, .wc-block-product-filters { font-size: .95rem; }
.wc-block-catalog-sorting select, .woocommerce-ordering select { border: 1px solid var(--ck-line); border-radius: 999px; padding: 8px 14px; background: #fff; }

/* ---------- footer ---------- */
.ck-footer a { text-decoration: none; }
.ck-footer a:hover { text-decoration: underline; color: var(--wp--preset--color--accent-1); }
.ck-footer-list { list-style: none; padding: 0; margin: 0; }
.ck-footer-list li { margin: .45rem 0; }
.ck-footer h3 { margin-bottom: .6rem; }
@media (max-width: 781px) { .ck-footer-cols { gap: 28px !important; } }

.ck-promo-sleep, .ck-promo-toys { background-repeat: no-repeat; background-position: right -10px bottom -20px; background-size: auto 92%; }
.ck-promo-sleep { background-image: url(assets/img/promo-sleep.webp); }
.ck-promo-toys { background-image: url(assets/img/promo-toys.webp); }
.ck-promo > * { position: relative; z-index: 1; max-width: 58%; }
@media (max-width: 600px) { .ck-promo-sleep, .ck-promo-toys { background-size: auto 70%; background-position: right -30px bottom -20px; } .ck-promo > * { max-width: 68%; } }
@media (max-width: 600px) { .ck-values { gap: 10px; } .ck-values div { padding: 16px; } .ck-values strong { font-size: 1.25rem; } }
.ck-pills { display: flex; flex-wrap: wrap; gap: 8px; margin: 14px 0 6px; }
.ck-pills a { text-decoration: none; padding: 7px 16px; border-radius: 999px; background: #fff; border: 1px solid var(--ck-line); font-weight: 600; font-size: .92rem; transition: background .2s; }
.ck-pills a:hover { background: var(--wp--preset--color--accent-5); color: var(--wp--preset--color--contrast); }
.ck-pills a.is-active { background: var(--wp--preset--color--contrast); color: #fff; border-color: var(--wp--preset--color--contrast); }
@media (max-width: 600px) { .ck-pills { flex-wrap: nowrap; overflow-x: auto; margin-right: calc(-1 * var(--wp--preset--spacing--40)); padding-bottom: 4px; } .ck-pills a { white-space: nowrap; } }
.woocommerce span.onsale, span.onsale { background: var(--wp--preset--color--accent-7) !important; color: #fff !important; border-radius: 999px !important; min-height: 0 !important; min-width: 0 !important; line-height: 1 !important; padding: .5em 1em !important; font-weight: 700; font-size: .8rem !important; top: 14px !important; left: 14px !important; border: 0 !important; }
body.woocommerce-cart main .wp-block-post-title, body.woocommerce-account main .wp-block-post-title { max-width: var(--wp--style--global--wide-size) !important; margin-left: auto !important; margin-right: auto !important; }
.ck-page-body .wp-block-table td:nth-child(2) { white-space: nowrap; }
.wp-block-navigation__responsive-container.is-menu-open .ck-desk-only { display: none !important; }
