/* Maksu-inspired visual layer: Inter/Poppins, deep violet and energetic green. */
:root {
	--ink: #20124f;
	--muted: #625d75;
	--paper: #f9f9fb;
	--cream: #f1f0f7;
	--sage: #1dcad3;
	--forest: #20124f;
	--line: #e5e4ec;
	--danger: #b42318;
	--maksu-green: #80ff77;
	--maksu-cyan: #1dcad3;
}

body { font-family: "Poppins", Arial, sans-serif; letter-spacing: .01em; }
.hero h1,.checkout-copy h1,.result-card h1,.section-heading h2,.drawer-header h2,.order-summary h2,.product-info h3,.cart-item h3 {
	font-family: "Inter", Arial, sans-serif;
	letter-spacing: -.035em;
}
.site-header { border-bottom: 0; box-shadow: 0 4px 24px rgba(32,18,79,.07); }
.brand-mark,.cart-count { background: var(--maksu-green); color: var(--ink); }
.brand-mark { font-family: "Inter",Arial,sans-serif; font-weight: 700; }
.hero { background: #20124f; color: white; }
.hero p:not(.eyebrow) { color: #d1e0e0; }
.eyebrow { color: #665b86; }
.hero .eyebrow { color: var(--maksu-green); }
.primary-action { background: var(--maksu-green); color: var(--ink); border-radius: 7px; }
.hero-art { border-radius: 0 0 0 46px; }
.product-card { border-radius: 18px; overflow: hidden; border-color: var(--line); }
.product-info button,.empty-cart button { color: var(--ink); border-color: var(--maksu-cyan); }
.cart-drawer { box-shadow: -24px 0 70px rgba(32,18,79,.18); }
.choice { border-color: var(--line); }
.delivery-note { margin: 10px 0 0; color: var(--muted); font-size: 12px; line-height: 1.5; }
.method-options input,.choice input { accent-color: var(--ink); }
.inline-payment { border-top: 1px solid var(--line); padding-top: 18px; margin-top: 18px; }
.payment-prompt { font-weight: 700; margin: 0 0 13px; }
.payment-method-row { display: block; width: 100%; clear: both; margin: 0 0 10px; padding: 0; }
.payment-method-row:has(> div:empty) { margin-bottom: 0; }
.payment-method-row > div:empty { display: none !important; height: 0 !important; min-height: 0 !important; margin: 0 !important; padding: 0 !important; }
.variant-choice { display: block; margin: 20px 0; font-weight: 700; }
.variant-choice span { display: block; margin-bottom: 8px; }
.variant-choice select { width: 100%; min-height: 44px; padding: 9px 38px 9px 12px; border: 1px solid var(--line); border-radius: 7px; background: white; color: var(--ink); font: inherit; }
.payment-loading { padding: 16px; text-align: center; background: var(--cream); color: var(--muted); border-radius: 8px; font-size: 14px; }
.payment-error { padding: 13px; background: #fff0ed; color: var(--danger); border-radius: 8px; font-size: 14px; }
.result-icon { background: var(--maksu-green); color: var(--ink); }
.result-card.failure .result-icon { background: #ffe2de; color: var(--danger); }
@media(max-width: 900px) { .hero-art { border-radius: 0; } }
