/* NovinCode visual layer for Simple Shop. Business logic remains in the plugin. */
.sps-storefront {
	--sps-primary: #2563eb;
	--sps-primary-dark: #1d4ed8;
	--sps-text: #0b1734;
	--sps-muted: #71809d;
	--sps-border: #e5eaf3;
	--sps-soft: #f6f8fc;
	--sps-danger: #be123c;
		max-width: 1160px;
		margin: 40px auto 70px;
}

.sps-storefront .sps-eyebrow { color: var(--sps-primary); font-weight: 850; }
.sps-storefront h1, .sps-storefront h2, .sps-storefront h3 { color: var(--sps-text); letter-spacing: -.025em; }
.sps-storefront .sps-button { border-radius: 12px; background: linear-gradient(135deg, #2563eb, #4f46e5); box-shadow: 0 10px 22px rgba(37, 99, 235, .18); }
.sps-storefront .sps-button:hover { background: linear-gradient(135deg, #1d4ed8, #4338ca); }

.sps-storefront .sps-product-card { border-radius: 21px; border-color: var(--sps-border); box-shadow: 0 10px 30px rgba(19, 35, 73, .06); }
.sps-storefront .sps-product-card:hover { border-color: rgba(37, 99, 235, .28); box-shadow: 0 18px 38px rgba(37, 99, 235, .12); }
.sps-storefront .sps-product-image { background: linear-gradient(135deg, #f1f6ff, #f8faff); }
.sps-storefront .sps-price ins { color: var(--sps-primary); }
.sps-storefront .sps-product-actions { gap: 12px; }

.sps-storefront .sps-archive-heading,
.sps-storefront .sps-cart-heading,
.sps-storefront .sps-checkout-heading,
.sps-storefront .sps-order-hero {
		border-radius: 25px;
		border-color: rgba(37, 99, 235, .15);
		background: radial-gradient(circle at 10% 10%, rgba(34, 211, 238, .17), transparent 17rem), linear-gradient(135deg, #eef5ff, #fff 66%, #f4f0ff);
}

.sps-storefront .sps-archive-heading h1 { font-size: clamp(1.8rem, 4vw, 2.7rem); }
.sps-storefront .sps-archive-sidebar { border-radius: 21px; box-shadow: 0 13px 32px rgba(19, 35, 73, .06); }
.sps-storefront .sps-filter-check:hover, .sps-storefront .sps-category-links a:hover, .sps-storefront .sps-category-links a.is-active { color: var(--sps-primary); border-color: rgba(37, 99, 235, .36); background: #eff6ff; }

.sps-storefront .sps-single-summary,
.sps-storefront .sps-product-tabs,
.sps-storefront .sps-order-box,
.sps-storefront .sps-order-info-box,
.sps-storefront .sps-checkout-section,
.sps-storefront .sps-checkout-summary,
.sps-storefront .sps-account-card,
.sps-storefront .sps-account-panel,
.sps-storefront .sps-account-sidebar {
		border-color: var(--sps-border);
		border-radius: 21px;
		box-shadow: 0 10px 28px rgba(19, 35, 73, .045);
}

.sps-storefront .sps-product-heading { font-size: clamp(1.65rem, 4vw, 2.35rem); }
.sps-storefront .sps-gallery-main { border-radius: 21px; background: linear-gradient(135deg, #eef5ff, #f8faff); }
.sps-storefront .sps-gallery-thumb.is-active { border-color: var(--sps-primary); box-shadow: 0 0 0 3px rgba(37, 99, 235, .1); }
.sps-storefront .sps-tabs-nav { border-radius: 18px 18px 0 0; background: #f7f9fd; }
.sps-storefront .sps-tabs-nav button.is-active { color: var(--sps-primary); border-color: var(--sps-primary); }

.sps-storefront .sps-cart,
.sps-storefront .sps-checkout { border-radius: 25px; }
.sps-storefront .sps-cart-summary,
.sps-storefront .sps-checkout-summary { border: 1px solid var(--sps-border); border-radius: 21px; background: #fff; }
.sps-storefront .sps-cart-row, .sps-storefront .sps-checkout-item { border-color: var(--sps-border); border-radius: 13px; }
.sps-storefront .sps-checkout input, .sps-storefront .sps-checkout select, .sps-storefront .sps-checkout textarea, .sps-storefront .sps-account-form input, .sps-storefront .sps-account-form textarea { border-radius: 11px; border-color: var(--sps-border); background: #fbfcff; }
.sps-storefront .sps-checkout input:focus, .sps-storefront .sps-checkout select:focus, .sps-storefront .sps-checkout textarea:focus { border-color: var(--sps-primary); box-shadow: 0 0 0 3px rgba(37, 99, 235, .1); outline: 0; }
.sps-storefront .sps-payment-option.is-selected { border-color: rgba(37, 99, 235, .4); background: #eff6ff; }

.sps-storefront .sps-account-shell { gap: 20px; }
.sps-storefront .sps-account-sidebar { background: linear-gradient(180deg, #0b1734, #142c69); color: #fff; }
.sps-storefront .sps-account-sidebar a { color: rgba(255, 255, 255, .72); border-radius: 10px; }
.sps-storefront .sps-account-sidebar a.is-active, .sps-storefront .sps-account-sidebar a:hover { background: rgba(255, 255, 255, .12); color: #fff; }
.sps-storefront .sps-account-dashboard-card:hover { border-color: rgba(37, 99, 235, .35); }

.sps-storefront .sps-success-mark, .sps-storefront .sps-thank-you-icon { background: linear-gradient(135deg, #2563eb, #4f46e5); box-shadow: 0 12px 30px rgba(37, 99, 235, .2); }
.sps-storefront .sps-order-actions a.sps-order-secondary { color: var(--sps-primary); }

@media (max-width: 700px) {
		.sps-storefront { width: min(100% - 30px, 1160px); margin-top: 24px; }
		.sps-storefront .sps-archive-heading, .sps-storefront .sps-cart-heading, .sps-storefront .sps-checkout-heading { padding: 24px 20px; }
}

/* NovinCode storefront layout: a focused catalog without filter clutter. */
.sps-storefront.sps-archive-page,
.sps-storefront.sps-cart-page,
.sps-storefront.sps-checkout-page {
	width: min(1160px, calc(100% - 48px));
	max-width: none;
	margin: 42px auto 80px;
	padding: 0;
}

.sps-archive-page .sps-archive-layout {
	display: block;
	direction: rtl;
}

.sps-archive-page .sps-archive-sidebar,
.sps-archive-page .sps-filter-toggle {
	display: none !important;
}

.sps-archive-page .sps-archive-main {
	width: 100%;
	min-width: 0;
	direction: rtl;
}

.sps-archive-page .sps-archive-toolbar {
	border-color: var(--sps-border);
	border-radius: 17px;
	background: rgba(255, 255, 255, .88);
	box-shadow: 0 10px 25px rgba(19, 35, 73, .045);
}

.sps-archive-page .sps-archive-result-count { color: var(--sps-text); }
.sps-archive-page .sps-archive-result-count:before { background: #22d3ee; box-shadow: 0 0 0 4px rgba(34, 211, 238, .13); }
.sps-archive-page .sps-archive-main .sps-products { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px 18px; }
.sps-archive-page .sps-product-card { height: 100%; border-radius: 21px; }
.sps-archive-page .sps-product-image { aspect-ratio: 1 / .88; }
.sps-archive-page .sps-product-content { display: flex; min-height: 188px; flex-direction: column; }
.sps-archive-page .sps-product-title { color: var(--sps-text); font-size: 16px; }
.sps-archive-page .sps-excerpt { flex: 1; }
.sps-archive-page .sps-product-actions { margin-top: auto; }

/* Single product */
body.single-sps_product .nk-store-product-main { width: min(1160px, calc(100% - 48px)); max-width: none; margin: 0 auto; }
body.single-sps_product .sps-single-product { grid-template-columns: minmax(0, 1.08fr) minmax(340px, .92fr); gap: 32px; align-items: start; padding: 42px 0 80px; }
body.single-sps_product .sps-gallery-main { min-height: 460px; border: 1px solid var(--sps-border); border-radius: 23px; background: linear-gradient(135deg, #eef5ff, #f8faff); box-shadow: 0 16px 40px rgba(19, 35, 73, .06); }
body.single-sps_product .sps-gallery-main img { height: 460px; object-fit: contain; }
body.single-sps_product .sps-gallery-thumb { border-color: var(--sps-border); border-radius: 12px; background: #fff; }
body.single-sps_product .sps-single-summary { padding: 30px; border-color: var(--sps-border); border-radius: 23px; background: #fff; box-shadow: 0 16px 40px rgba(19, 35, 73, .06); }
body.single-sps_product .sps-breadcrumbs { color: var(--sps-muted); }
body.single-sps_product .sps-breadcrumbs a,
body.single-sps_product .sps-rating-count,
body.single-sps_product .sps-taxonomy-row a { color: var(--sps-primary); }
body.single-sps_product .sps-product-heading { color: var(--sps-text); }
body.single-sps_product .sps-price ins { color: var(--sps-primary); }
body.single-sps_product .sps-buy-row .sps-add { min-height: 48px; background: linear-gradient(135deg, #2563eb, #4f46e5); }
body.single-sps_product .sps-product-tabs,
body.single-sps_product .sps-related-products,
body.single-sps_product .sps-benefits { margin-top: 34px; }
body.single-sps_product .sps-product-tabs { border-radius: 21px; }
body.single-sps_product .sps-related-products h2 { color: var(--sps-text); }

/* Cart and checkout */
.sps-cart-page .sps-cart-heading,
.sps-checkout-page .sps-checkout-heading { margin-bottom: 30px; }
.sps-cart-page .sps-cart-layout,
.sps-checkout-page .sps-checkout-layout { gap: 30px; }
.sps-cart-page .sps-cart-summary,
.sps-checkout-page .sps-checkout-summary { border-color: var(--sps-border); border-radius: 22px; background: linear-gradient(155deg, #f4f8ff, #fff); box-shadow: 0 16px 34px rgba(19, 35, 73, .07); }
.sps-cart-page .sps-cart-row { border-radius: 16px; }
.sps-cart-page .sps-cart-qty { background: #f8faff; }
.sps-cart-page .sps-qty-button { color: var(--sps-primary); }
.sps-cart-page .sps-cart-line-total,
.sps-cart-page .sps-cart-grand-total strong,
.sps-checkout-page .sps-checkout-grand-total { color: var(--sps-primary); }
.sps-cart-page .sps-coupon-form button { color: var(--sps-primary); background: #edf4ff; }
.sps-checkout-page .sps-checkout-section { border-radius: 21px; }
.sps-checkout-page .sps-step-number { background: linear-gradient(135deg, #2563eb, #4f46e5); }
.sps-checkout-page .sps-payment-option.is-selected,
.sps-checkout-page .sps-payment-option:has(input:checked) { border-color: rgba(37, 99, 235, .45); background: #eff6ff; }
.sps-checkout-page .sps-checkout-submit { min-height: 52px; background: linear-gradient(135deg, #2563eb, #4f46e5); }
.sps-checkout-page .sps-checkout-back { color: var(--sps-primary); }

/* Status/order and account surfaces use the same design tokens. */
.sps-storefront .sps-order-hero,
.sps-storefront .sps-order-box,
.sps-storefront .sps-order-info-box,
.sps-storefront .sps-account-card,
.sps-storefront .sps-account-panel { border-color: var(--sps-border); border-radius: 22px; box-shadow: 0 12px 32px rgba(19, 35, 73, .06); }
.sps-storefront .sps-order-hero { background: radial-gradient(circle at 10% 10%, rgba(34, 211, 238, .17), transparent 17rem), linear-gradient(135deg, #eef5ff, #fff 66%, #f4f0ff); }

@media (max-width: 900px) {
	.sps-storefront.sps-archive-page,
	.sps-storefront.sps-cart-page,
	.sps-storefront.sps-checkout-page,
	body.single-sps_product .nk-store-product-main { width: min(100% - 30px, 680px); }
	.sps-archive-page .sps-archive-main .sps-products { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	body.single-sps_product .sps-single-product { grid-template-columns: 1fr; padding-top: 24px; }
}

@media (max-width: 620px) {
	.sps-storefront.sps-archive-page,
	.sps-storefront.sps-cart-page,
	.sps-storefront.sps-checkout-page,
	body.single-sps_product .nk-store-product-main { width: min(100% - 30px, 560px); margin-top: 24px; }
	.sps-archive-page .sps-archive-main .sps-products { grid-template-columns: 1fr; gap: 16px; }
	body.single-sps_product .nk-store-product-main { margin-top: 0; }
	body.single-sps_product .sps-single-product { padding-bottom: 58px; }
	body.single-sps_product .sps-gallery-main,
	body.single-sps_product .sps-gallery-main img { min-height: 290px; height: 290px; }
	body.single-sps_product .sps-single-summary { padding: 22px 18px; }
}
