/* Gifts by An — kawaii styling inspired by the logo:
   stitched dashed borders, scalloped cloud edges, peeking cat,
   soft pastel palette (pink #EF8FA0 · lavender #BCA9E4 · sage #A3BE97 · cream #FDF6F0) */

/* ---- Soft polka-dot cream background ---- */
body {
	background-color: #FDF6F0;
	background-image:
		radial-gradient(rgba(239, 143, 160, 0.07) 1.5px, transparent 1.5px),
		radial-gradient(rgba(188, 169, 228, 0.07) 1.5px, transparent 1.5px);
	background-size: 56px 56px;
	background-position: 0 0, 28px 28px;
}

::selection {
	background: #FBDDE3;
	color: #5D4A52;
}

/* ---- Stitched dashed border, like the logo's inner circle ---- */
.kawaii-stitch {
	position: relative;
}

.kawaii-stitch::before {
	content: "";
	position: absolute;
	inset: 13px;
	border: 2.5px dashed rgba(239, 143, 160, 0.45);
	border-radius: 32px;
	pointer-events: none;
}

/* ---- Section cards: lift sections off the polka-dot background ---- */
.kawaii-section {
	box-shadow: 0 10px 30px rgba(93, 74, 82, 0.08);
}

@media (max-width: 781px) {
	.kawaii-section {
		padding-left: 1.25rem !important;
		padding-right: 1.25rem !important;
		border-radius: 28px !important;
	}

	.kawaii-stitch::before {
		inset: 9px;
		border-radius: 20px;
	}
}

/* ---- Peeking cat over the hero "cloud", like the logo ---- */
.kawaii-peek::after {
	content: "🐱";
	position: absolute;
	top: -1.55rem;
	left: 50%;
	transform: translateX(-50%);
	font-size: 2.6rem;
	line-height: 1;
	pointer-events: none;
	filter: drop-shadow(0 2px 3px rgba(93, 74, 82, 0.15));
}

/* ---- Header: white cloud floating over the cream page ---- */
.kawaii-header {
	position: relative;
	z-index: 2;
}

/* ---- Scalloped cloud edge (header bottom & footer top) ---- */
.kawaii-scallop {
	height: 16px;
	background-image: radial-gradient(circle at 50% 0, #FFFFFF 62%, transparent 66%);
	background-size: 32px 16px;
	background-repeat: repeat-x;
	filter: drop-shadow(0 4px 4px rgba(93, 74, 82, 0.08));
}

.kawaii-scallop-top {
	position: relative;
}

.kawaii-scallop-top::before {
	content: "";
	position: absolute;
	top: -15px;
	left: 0;
	right: 0;
	height: 16px;
	background-image: radial-gradient(circle at 50% 100%, #FBDDE3 62%, transparent 66%);
	background-size: 32px 16px;
	background-repeat: repeat-x;
}

/* ---- Section titles: bigger, with a wavy pink underline ---- */
.kawaii-title {
	font-size: clamp(1.8rem, 4vw, 2.3rem) !important;
	padding-bottom: 0.55em;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='10' viewBox='0 0 120 10'%3E%3Cpath d='M0 5 Q 7.5 0 15 5 T 30 5 T 45 5 T 60 5 T 75 5 T 90 5 T 105 5 T 120 5' fill='none' stroke='%23EF8FA0' stroke-width='3' stroke-linecap='round'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: bottom center;
	background-size: 120px 10px;
}

/* ---- Sparkles around section titles ---- */
.kawaii-title::before {
	content: "✦  ";
	color: #BCA9E4;
	font-size: 0.75em;
	vertical-align: 0.15em;
}

.kawaii-title::after {
	content: "  ✦";
	color: #BCA9E4;
	font-size: 0.75em;
	vertical-align: 0.15em;
}

/* ---- Cute divider ʚ♡ɞ ---- */
.kawaii-divider {
	letter-spacing: 0.15em;
	font-size: 1.1rem;
}

/* ---- Hero: text directly on the banner ---- */
.kawaii-hero h1,
.kawaii-hero p {
	text-shadow: 0 2px 14px rgba(170, 50, 80, 0.35);
}

.kawaii-hero .wp-block-button__link {
	box-shadow: 0 4px 14px rgba(170, 50, 80, 0.25);
}

@media (max-width: 781px) {
	.kawaii-hero {
		padding-left: 1.5rem !important;
		padding-right: 1.5rem !important;
	}

	.kawaii-hero h1 {
		font-size: 2.4rem !important;
	}
}

/* ---- "How it works" steps: clean, no frame, gentle lift ---- */
.kawaii-step {
	transition: transform 0.2s ease;
}

.kawaii-step:hover {
	transform: translateY(-5px);
}

.kawaii-step img {
	display: block;
	box-shadow: 0 6px 16px rgba(93, 74, 82, 0.1);
}

/* ---- Soft rounded images ---- */
.wp-block-image img,
.wc-block-grid__product img,
ul.products li.product img {
	border-radius: 18px;
}

/* ---- Buttons: pill + gentle bounce ---- */
.wp-block-button__link {
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.wp-block-button__link:hover {
	transform: translateY(-3px) scale(1.03);
	box-shadow: 0 6px 16px rgba(239, 143, 160, 0.3);
}

.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.wc-block-components-button {
	background-color: #EF8FA0 !important;
	color: #fff !important;
	border: none;
	border-radius: 999px !important;
	font-family: 'Baloo 2', 'Nunito', sans-serif;
	font-weight: 600;
	padding: 0.65em 1.6em;
	transition: background-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}

.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.wc-block-components-button:hover {
	background-color: #BCA9E4 !important;
	color: #fff !important;
	transform: translateY(-3px) scale(1.03);
	box-shadow: 0 6px 16px rgba(188, 169, 228, 0.35);
}

/* ---- Prices & sale badge ---- */
.woocommerce ul.products li.product .price,
.woocommerce div.product p.price {
	color: #A3BE97;
	font-weight: 700;
}

.woocommerce span.onsale {
	background-color: #BCA9E4;
	border-radius: 999px;
	font-family: 'Baloo 2', sans-serif;
	padding: 0.3em 0.9em;
	min-height: 0;
	min-width: 0;
	line-height: 1.6;
}

/* ---- Product cards: soft shadow, stitched border on hover ---- */
.woocommerce ul.products li.product {
	background: #fff;
	border: 2.5px dashed rgba(239, 143, 160, 0.3);
	border-radius: 24px;
	padding: 14px;
	box-shadow: 0 4px 14px rgba(239, 143, 160, 0.12);
	transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.woocommerce ul.products li.product:hover {
	transform: translateY(-4px);
	border-color: rgba(239, 143, 160, 0.6);
	box-shadow: 0 8px 22px rgba(239, 143, 160, 0.2);
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-family: 'Baloo 2', 'Nunito', sans-serif;
	font-size: 1.05rem;
	color: #5D4A52;
}

/* ---- Store notices ---- */
.woocommerce-message,
.woocommerce-info {
	border-top-color: #A3BE97;
	background-color: #E6EFDF;
	border-radius: 14px;
	color: #5D4A52;
}

.woocommerce-message::before,
.woocommerce-info::before {
	color: #A3BE97;
}

/* ---- Rounded inputs, pink focus ---- */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
input[type="search"],
input[type="email"],
input[type="text"] {
	border-radius: 14px;
	border: 2px solid #FBDDE3;
	padding: 0.55em 0.9em;
	transition: border-color 0.2s ease;
}

.woocommerce form .form-row input.input-text:focus,
input[type="search"]:focus,
input[type="email"]:focus,
input[type="text"]:focus {
	border-color: #EF8FA0;
	outline: none;
}

/* ---- Heart bullets in content lists ---- */
.entry-content ul:not(.products):not(.wp-block-navigation__container) {
	list-style: none;
	padding-left: 1.2em;
}

.entry-content ul:not(.products):not(.wp-block-navigation__container) > li::before {
	content: "♡ ";
	color: #EF8FA0;
}

/* ---- Header menu: stitched candy capsule with heart hover ---- */
@media (min-width: 600px) {
	.kawaii-header .wp-block-navigation {
		background-color: #FFF3F6;
		border: 2px dashed rgba(239, 143, 160, 0.4);
		border-radius: 999px;
		padding: 0.3rem 0.45rem;
	}
}

.wp-block-navigation a {
	padding: 0.45em 1.15em;
	border-radius: 999px;
	color: #5D4A52;
	transition: background-color 0.2s ease, color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}

/* Heart slides in on hover / stays on the current page */
.kawaii-header .wp-block-navigation a::before {
	content: "♡";
	display: inline-block;
	max-width: 0;
	opacity: 0;
	overflow: hidden;
	vertical-align: baseline;
	transition: max-width 0.25s ease, opacity 0.25s ease, margin-right 0.25s ease;
}

.kawaii-header .wp-block-navigation a:hover::before,
.kawaii-header .wp-block-navigation .current-menu-item > a::before {
	max-width: 1.1em;
	opacity: 1;
	margin-right: 0.35em;
}

.wp-block-navigation a:hover {
	background-color: #EF8FA0;
	color: #FFFFFF;
	transform: translateY(-2px);
	box-shadow: 0 4px 12px rgba(239, 143, 160, 0.4);
}

.wp-block-navigation .current-menu-item > a {
	background-color: #FBDDE3;
	color: #E15F7D;
}

/* ---- Footer nav: simple cute links, no capsule ---- */
.kawaii-footer-nav a {
	padding: 0.25em 0.8em;
}

.kawaii-footer-nav a:hover {
	background-color: #FFFFFF;
	color: #E15F7D;
	transform: none;
	box-shadow: none;
}

/* ---- Mini cart icon in pink ---- */
.wc-block-mini-cart__button,
.wc-block-mini-cart__quantity-badge {
	color: #EF8FA0;
}

/* ---- Pastel scrollbar ---- */
::-webkit-scrollbar {
	width: 12px;
}

::-webkit-scrollbar-track {
	background: #FDF6F0;
}

::-webkit-scrollbar-thumb {
	background: #FBDDE3;
	border-radius: 999px;
	border: 3px solid #FDF6F0;
}

::-webkit-scrollbar-thumb:hover {
	background: #EF8FA0;
}
