/*
Theme Name: BAMA Gold
Theme URI: https://34m4.com
Description: Gold, restaurant-menu style theme for 34M4 home-kitchen shops (English / Burmese).
Template: twentytwentyfive
Version: 0.2.4
Requires at least: 6.6
Text Domain: bama-gold
*/

:root {
	--bg-cream: #fbf3df;
	--bg-paper: #fffaf0;
	--gold: #c9a227;
	--gold-deep: #8f6b10;
	--gold-soft: #ead9a4;
	--brown: #3b2a14;
	--ink: #23190c;
	--lacquer: #8a1c1c;
	--radius: 14px;
	--wrap: 1120px;
	--display: "Oswald", "Noto Sans Myanmar", system-ui, sans-serif;
}

body { background: var(--bg-cream); color: var(--ink); }
html[lang^="my"] body { line-height: 1.85; }
.bg-wrap { max-width: var(--wrap); margin: 0 auto; padding: 0 20px; }

/* Traditional fan-scale pattern band (pure CSS). */
.bg-pattern {
	background-color: var(--gold-deep);
	background-image:
		radial-gradient(circle at 50% 100%, transparent 38%, var(--gold) 39%, var(--gold) 46%, transparent 47%, transparent 56%, var(--lacquer) 57%, var(--lacquer) 63%, transparent 64%),
		radial-gradient(circle at 50% 100%, transparent 38%, var(--gold) 39%, var(--gold) 46%, transparent 47%, transparent 56%, var(--lacquer) 57%, var(--lacquer) 63%, transparent 64%);
	background-size: 44px 22px;
	background-position: 0 0, 22px 11px;
}

/* ---------- Header ---------- */
.bg-top { height: 10px; }
.bg-header { background: var(--bg-paper); border-bottom: 3px solid var(--gold); position: sticky; top: 0; z-index: 50; }
.bg-header .bg-wrap { display: flex; align-items: center; gap: 18px; min-height: 72px; }
.bg-brand { display: flex; flex-direction: column; text-decoration: none; color: var(--gold-deep); line-height: 1.1; margin-right: auto; }
.bg-brand b { font: 700 clamp(20px, 3vw, 28px)/1.1 var(--display); letter-spacing: .06em; text-transform: uppercase; }
.bg-brand small { color: var(--brown); font-size: 13px; opacity: .8; }
.bg-nav { display: flex; align-items: center; gap: 4px; flex-wrap: wrap; }
.bg-nav a { font: 600 15px/1 var(--display); letter-spacing: .08em; text-transform: uppercase; color: var(--brown); text-decoration: none; padding: 10px 12px; border-radius: 999px; }
.bg-nav a:hover { color: var(--lacquer); background: var(--gold-soft); }
.bg-nav a.bg-cta { background: var(--lacquer); color: #fff; }
.bg-nav a.bg-cta:hover { background: #6e1414; color: #fff; }
.bg-header .wc-block-mini-cart__button { color: var(--brown); }
@media (max-width: 700px) {
	.bg-header .bg-wrap { flex-wrap: wrap; padding-top: 10px; padding-bottom: 6px; gap: 6px; }
	.bg-nav { width: 100%; justify-content: space-between; }
	.bg-nav a { padding: 8px 8px; font-size: 13px; }
}

/* ---------- Hero ---------- */
.bg-hero { position: relative; text-align: center; padding: clamp(48px, 9vw, 110px) 20px; background: radial-gradient(ellipse at center, #fffaf0 0%, #f6e7bf 70%, #ecd59a 100%); border-bottom: 1px solid var(--gold-soft); }
.bg-hero .bg-kicker { font: 600 14px/1 var(--display); letter-spacing: .25em; text-transform: uppercase; color: var(--gold-deep); }
.bg-hero h1 { font: 700 clamp(34px, 6vw, 64px)/1.08 var(--display); text-transform: uppercase; letter-spacing: .03em; color: var(--brown); margin: 14px auto 10px; max-width: 900px; }
.bg-hero .bg-sub { font-size: clamp(17px, 2.2vw, 21px); color: var(--brown); max-width: 680px; margin: 0 auto 26px; }
.bg-divider { display: flex; align-items: center; justify-content: center; gap: 14px; color: var(--gold); margin: 6px 0 18px; }
.bg-divider:before, .bg-divider:after { content: ""; width: 70px; height: 2px; background: currentColor; }
.bg-btns { display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; }
.bg-btn { display: inline-block; padding: 14px 28px; border-radius: 999px; font: 600 16px/1 var(--display); letter-spacing: .1em; text-transform: uppercase; text-decoration: none; border: 2px solid var(--lacquer); background: var(--lacquer); color: #fff; cursor: pointer; }
.bg-btn:hover { background: #6e1414; border-color: #6e1414; color: #fff; }
.bg-btn.alt { background: transparent; color: var(--lacquer); }
.bg-btn.alt:hover { background: var(--lacquer); color: #fff; }
.bg-btn.gold { background: var(--gold); border-color: var(--gold); color: var(--ink); }
.bg-btn.gold:hover { background: var(--gold-deep); border-color: var(--gold-deep); color: #fff; }

/* ---------- Sections ---------- */
.bg-section { padding: clamp(40px, 6vw, 72px) 0; }
.bg-section.paper { background: var(--bg-paper); }
.bg-h2 { text-align: center; font: 700 clamp(26px, 4vw, 40px)/1.15 var(--display); text-transform: uppercase; letter-spacing: .04em; color: var(--gold-deep); margin: 0 0 6px; }
.bg-h2-sub { text-align: center; color: var(--brown); margin: 0 0 26px; }
.bg-features { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 20px; }
.bg-feature { background: #fff; border: 1px solid var(--gold-soft); border-top: 4px solid var(--gold); border-radius: var(--radius); padding: 24px; }
.bg-feature .ic { font-size: 30px; }
.bg-feature h3 { font: 600 20px/1.2 var(--display); text-transform: uppercase; letter-spacing: .04em; color: var(--brown); margin: 10px 0 6px; }
.bg-feature p { margin: 0; color: #4a3a22; }

/* ---------- Menu ---------- */
.bg-menu-cat { margin: 0 0 44px; }
.bg-menu-cat > h2 { text-align: center; font: 700 clamp(24px, 3.4vw, 34px)/1.2 var(--display); text-transform: uppercase; letter-spacing: .06em; color: var(--gold-deep); margin: 0; }
.bg-menu-cat > .bg-cat-alt { text-align: center; color: var(--brown); margin: 2px 0 6px; }
.bg-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: 22px; margin-top: 18px; }
.bg-card { background: #fff; border-radius: var(--radius); border: 1px solid var(--gold-soft); box-shadow: 0 2px 10px rgba(59, 42, 20, .06); display: flex; flex-direction: column; overflow: hidden; }
.bg-card .bg-photo { display: block; text-decoration: none; padding: 8px; background: linear-gradient(135deg, var(--gold), var(--gold-deep)); }
.bg-card .bg-photo img, .bg-card .bg-photo .bg-noimg { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 8px; }
.bg-noimg { display: flex !important; align-items: center; justify-content: center; font: 700 54px/1 var(--display); color: var(--gold); background: var(--bg-paper); }
.bg-card .bg-body { padding: 14px 16px 16px; display: flex; flex-direction: column; flex: 1; }
.bg-card h3 { font: 600 20px/1.25 var(--display); letter-spacing: .02em; margin: 0; }
.bg-card h3 a { color: var(--brown); text-decoration: none; }
.bg-card .bg-alt { color: var(--gold-deep); font-size: 15px; margin: 2px 0 6px; }
.bg-card .bg-desc { font-size: 15px; color: #4a3a22; margin: 0 0 8px; }
.bg-card .bg-allerg { font-size: 13px; color: #7a5a1a; margin: 0 0 10px; }
.bg-card .bg-buy { margin-top: auto; display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.bg-card .bg-price { font: 700 22px/1 var(--display); color: var(--lacquer); }
.bg-card .bg-buy .button, .bg-card .bg-buy .added_to_cart { padding: 10px 18px; border-radius: 999px; background: var(--gold); color: var(--ink); font: 600 14px/1 var(--display); letter-spacing: .08em; text-transform: uppercase; text-decoration: none; border: 0; }
.bg-card .bg-buy .button:hover { background: var(--gold-deep); color: #fff; }
.bg-card .bg-buy .added_to_cart { background: transparent; color: var(--lacquer); padding: 6px 0; }
.bg-card .bg-buy .bg-soldout { font-size: 13px; color: #8a6a2a; }
.bg-empty { text-align: center; padding: 40px; background: #fff; border: 1px dashed var(--gold); border-radius: var(--radius); }

/* ---------- Footer ---------- */
.bg-footer { background: var(--ink); color: #f3e6c4; margin-top: 0; }
.bg-footer .bg-wrap { padding-top: 40px; padding-bottom: 28px; display: grid; gap: 28px; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); }
.bg-footer h4 { font: 600 16px/1.2 var(--display); letter-spacing: .14em; text-transform: uppercase; color: var(--gold); margin: 0 0 10px; }
.bg-footer a { color: #f3e6c4; }
.bg-footer p { margin: 0 0 8px; font-size: 15px; }
.bg-footer .bg-legal { grid-column: 1 / -1; border-top: 1px solid rgba(201, 162, 39, .3); padding: 16px 0 56px; font-size: 13px; opacity: .8; display: flex; justify-content: space-between; flex-wrap: wrap; gap: 10px; }

/* ---------- WooCommerce blocks & pages ---------- */
.wp-block-button__link, .wc-block-components-button:not(.is-link), .wp-element-button { border-radius: 999px !important; }
.wc-block-components-checkout-place-order-button, .wc-block-cart__submit-button { background: var(--lacquer) !important; color: #fff !important; }
.woocommerce-breadcrumb, .wc-block-breadcrumbs { font-size: 14px; }
.bama-help h2, .bama-su h2 { font-family: var(--display); text-transform: uppercase; letter-spacing: .03em; color: var(--gold-deep); }
.bama-help ol.steps > li:before { background: var(--gold) !important; color: var(--ink) !important; }
.bama-su button { background: var(--lacquer) !important; border-radius: 999px !important; font-family: var(--display) !important; letter-spacing: .08em; text-transform: uppercase; }
.bama-lang a.on { background: var(--gold) !important; color: var(--ink) !important; }

/* ---------- Stars ---------- */
.bg-stars { position: relative; display: inline-block; color: #e2d6b5; line-height: 1; letter-spacing: 1px; vertical-align: -2px; }
.bg-stars-fill { position: absolute; left: 0; top: 0; overflow: hidden; white-space: nowrap; color: var(--gold); }
.bg-hero-rate { display: inline-flex; align-items: center; gap: 6px; color: var(--brown); text-decoration: none; margin-bottom: 4px; }

/* ---------- Kitchen showcase ---------- */
.bk-tabs { display: flex; justify-content: center; gap: 8px; flex-wrap: wrap; margin: 0 0 18px; }
.bk-tabs a { padding: 9px 18px; border-radius: 999px; border: 1px solid var(--gold); color: var(--brown); text-decoration: none; font: 600 14px/1 var(--display); letter-spacing: .08em; text-transform: uppercase; }
.bk-tabs a.on, .bk-tabs a:hover { background: var(--gold); color: var(--ink); }
.bk-search { display: flex; gap: 8px; max-width: 520px; margin: 0 auto 22px; }
.bk-search input { flex: 1; padding: 12px 16px; border-radius: 999px; border: 1px solid var(--gold); font-size: 16px; }
.bk-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 20px; }
.bk-sponsored { margin: 0 0 26px; padding: 16px; border-radius: var(--radius); background: linear-gradient(135deg, #fff5d6, #f3dd9a); border: 1px solid var(--gold); }
.bk-card { display: flex; flex-direction: column; background: #fff; border-radius: var(--radius); border: 1px solid var(--gold-soft); overflow: hidden; text-decoration: none; color: var(--ink); box-shadow: 0 2px 10px rgba(59, 42, 20, .06); transition: transform .15s, box-shadow .15s; }
.bk-card:hover { transform: translateY(-3px); box-shadow: 0 8px 22px rgba(59, 42, 20, .14); }
.bk-photo { position: relative; display: block; padding: 7px; background: linear-gradient(135deg, var(--gold), var(--gold-deep)); }
.bk-photo img, .bk-photo .bg-noimg { display: block; width: 100%; aspect-ratio: 16 / 10; object-fit: cover; border-radius: 8px; }
.bk-badge { position: absolute; top: 14px; left: 14px; padding: 5px 10px; border-radius: 999px; background: #fff; color: var(--brown); font: 600 12px/1 var(--display); letter-spacing: .08em; text-transform: uppercase; }
.bk-badge.ad { background: var(--ink); color: var(--gold); }
.bk-badge.hot { background: var(--lacquer); color: #fff; }
.bk-body { display: flex; flex-direction: column; gap: 4px; padding: 12px 14px 14px; }
.bk-body b { font: 600 19px/1.25 var(--display); color: var(--brown); }
.bk-rate em, .bk-meta { font-style: normal; font-size: 13px; color: #7a6238; }
.bk-tag { font-size: 14px; color: #4a3a22; }

/* ---------- Reviews ---------- */
.bg-reviews { max-width: 820px; margin: 0 auto; }
.bg-notice { padding: 10px 14px; border-radius: 8px; }
.bg-notice.ok { background: #eef8ee; border: 1px solid #9ccc9c; }
.bg-notice.err { background: #fdeceb; border: 1px solid #e3a19c; }
.bg-rv-summary { display: flex; gap: 28px; align-items: center; flex-wrap: wrap; background: #fff; border: 1px solid var(--gold-soft); border-radius: var(--radius); padding: 18px 22px; margin-bottom: 18px; }
.bg-rv-avg { display: flex; flex-direction: column; align-items: center; gap: 4px; min-width: 120px; }
.bg-rv-avg b { font: 700 46px/1 var(--display); color: var(--brown); }
.bg-rv-avg > span:not(.bg-stars) { font-size: 13px; color: #7a6238; }
.bg-rv-bars { flex: 1; min-width: 200px; }
.bg-rv-bar { display: flex; align-items: center; gap: 8px; font-size: 13px; margin: 3px 0; }
.bg-rv-bar i { flex: 1; height: 8px; border-radius: 4px; background: #f1e7cc; overflow: hidden; }
.bg-rv-bar i b { display: block; height: 100%; background: var(--gold); }
.bg-rv-login { text-align: center; margin: 16px 0 22px; }
.bg-rv-form { background: #fff; border: 1px solid var(--gold-soft); border-radius: var(--radius); padding: 18px 20px; margin-bottom: 22px; }
.bg-rv-form h3 { margin: 0 0 6px; font: 600 20px/1.2 var(--display); text-transform: uppercase; color: var(--brown); }
.bg-rv-form textarea { width: 100%; box-sizing: border-box; padding: 12px; border-radius: 10px; border: 1px solid #d8c9a0; font-size: 16px; margin: 8px 0 12px; }
.bg-rate { display: inline-flex; flex-direction: row-reverse; gap: 2px; }
.bg-rate input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.bg-rate label { font-size: 34px; line-height: 1; color: #e2d6b5; cursor: pointer; }
.bg-rate input:checked ~ label, .bg-rate label:hover, .bg-rate label:hover ~ label { color: var(--gold); }
.bg-rate input:focus-visible + label { outline: 2px solid var(--lacquer); border-radius: 4px; }
.bg-rv { background: #fff; border: 1px solid var(--gold-soft); border-radius: var(--radius); padding: 14px 18px; margin-bottom: 12px; }
.bg-rv header { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; margin-bottom: 4px; }
.bg-rv header b { color: var(--brown); }
.bg-rv p { margin: 8px 0 0; }
.bg-rv-date { margin-left: auto; font-size: 13px; color: #8a7448; }
.bg-badge { font-size: 12px; padding: 3px 8px; border-radius: 999px; background: #eef8ee; color: #2e6b2e; }
.bg-rv-reply { margin-top: 10px; padding: 10px 14px; border-left: 3px solid var(--gold); background: var(--bg-paper); border-radius: 0 8px 8px 0; font-size: 15px; }
.bg-rv-reply p { margin: 4px 0 0; }

/* ---------- Main-site account ---------- */
.woocommerce-account .woocommerce { max-width: var(--wrap); margin: 30px auto; padding: 0 20px; }

/* ---------- Burmese mode: Burmese headings need a Burmese font, no caps ---------- */
html[lang^="my"] { --display: "Noto Sans Myanmar", system-ui, sans-serif; }
html[lang^="my"] :is(h1, h2, h3, h4, .bg-h2, .bg-brand small, .bg-nav a, .bg-btn, .bk-tabs a, .bk-badge, .bg-hero .bg-kicker, .bg-card .bg-buy .button, .bama-su button) {
	text-transform: none !important;
	letter-spacing: 0 !important;
	line-height: 1.6 !important;
}
html[lang^="my"] .bg-hero h1 { font-size: clamp(28px, 4.6vw, 48px); font-weight: 700; }
html[lang^="my"] :is(.bg-h2, .bg-menu-cat > h2) { font-size: clamp(24px, 3.4vw, 34px); }
html[lang^="my"] .wp-block-post-title, html[lang^="my"] .wp-block-heading { text-transform: none; letter-spacing: 0; line-height: 1.6; }
.bg-brand .bg-logo { display: block; height: 40px; width: auto; }
@media (max-width: 700px) { .bg-brand .bg-logo { height: 32px; } }

/* ---------- My Shop (seller page) ---------- */
.bs-wrap { max-width: 760px; margin: 24px auto 60px; padding: 0 16px; }
.bs-head { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; flex-wrap: wrap; }
.bs-head h1 { font-size: clamp(24px, 5vw, 34px); margin: 0; }
.bs-view { font-size: 14px; }
.bs-stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin: 14px 0; }
.bs-stats div { background: #fff; border: 1px solid var(--gold-soft); border-radius: 12px; padding: 10px; text-align: center; }
.bs-stats b { display: block; font: 700 24px/1.1 var(--display); color: var(--brown); }
.bs-stats span { font-size: 12px; color: #7a6238; }
.bs-warn { background: #fff4d6; border-left: 4px solid var(--gold); padding: 10px 14px; border-radius: 8px; }
.bs-flash { background: #eef8ee; border: 1px solid #9ccc9c; padding: 8px 14px; border-radius: 8px; }
.bs-flash.err { background: #fdeceb; border-color: #e3a19c; }
.bs-tabs { display: flex; gap: 6px; margin: 16px 0; position: sticky; top: 76px; z-index: 5; background: var(--bg-cream); padding: 6px 0; }
.bs-tabs a { flex: 1; text-align: center; padding: 12px 6px; border-radius: 12px; background: #fff; border: 1px solid var(--gold-soft); color: var(--brown); text-decoration: none; font-weight: 600; }
.bs-tabs a.on { background: var(--gold); color: var(--ink); border-color: var(--gold); }
.bs-tabs i { font-style: normal; background: var(--lacquer); color: #fff; border-radius: 999px; padding: 1px 8px; font-size: 13px; }
.bs-refresh, .bs-adv { font-size: 13px; color: #8a7448; text-align: center; }
.bs-empty, .bs-note { text-align: center; padding: 30px 16px; background: #fff; border: 1px dashed var(--gold); border-radius: 12px; }
.bs-sub { margin: 28px 0 10px; font-size: 18px; }
.bs-order { background: #fff; border: 1px solid var(--gold-soft); border-left: 6px solid var(--gold); border-radius: 12px; padding: 12px 14px; margin-bottom: 12px; }
.bs-order.st-preparing { border-left-color: #d9822b; }
.bs-order.st-ready-pickup { border-left-color: #2e7d32; }
.bs-order.st-completed, .bs-order.st-cancelled { opacity: .65; border-left-color: #bbb; }
.bs-order header { display: flex; align-items: center; gap: 8px; }
.bs-order header b { font: 700 20px/1 var(--display); }
.bs-order time { margin-left: auto; font-size: 13px; color: #7a6238; }
.bs-badge { font-size: 12px; padding: 3px 9px; border-radius: 999px; background: var(--bg-paper); border: 1px solid var(--gold-soft); }
.bs-cust { margin: 8px 0 4px; font-weight: 600; }
.bs-cust a { white-space: nowrap; }
.bs-items { margin: 4px 0 6px; padding-left: 18px; font-size: 16px; }
.bs-notecust { background: var(--bg-paper); padding: 6px 10px; border-radius: 8px; font-size: 14px; }
.bs-meta { font-size: 14px; color: #5a4626; margin: 6px 0; }
.bs-cash { color: var(--lacquer); font-weight: 600; }
.bs-actions { display: flex; gap: 8px; margin-top: 8px; }
.bs-actions form:first-child { flex: 1; }
.bs-go { width: 100%; padding: 14px; border: 0; border-radius: 12px; background: var(--lacquer); color: #fff; font: 600 17px/1 var(--display); cursor: pointer; }
.bs-cancel { padding: 14px 16px; border: 1px solid #d8c9a0; border-radius: 12px; background: #fff; color: #8a1c1c; cursor: pointer; }
.bs-add, .bs-prod { background: #fff; border: 1px solid var(--gold-soft); border-radius: 12px; margin-bottom: 10px; }
.bs-add > summary { padding: 14px; font-weight: 700; color: var(--lacquer); cursor: pointer; }
.bs-add .bs-pform, .bs-edit .bs-pform { padding: 0 14px 14px; }
.bs-prod { padding: 10px 12px; }
.bs-prod.off { opacity: .7; }
.bs-prow { display: flex; align-items: center; gap: 12px; }
.bs-prow img, .bs-noimg { width: 64px; height: 64px; border-radius: 10px; object-fit: cover; flex: 0 0 64px; }
.bs-noimg { display: flex; align-items: center; justify-content: center; background: var(--bg-paper); color: var(--gold); font: 700 26px/1 var(--display); }
.bs-pinfo { flex: 1; display: flex; flex-direction: column; min-width: 0; }
.bs-pinfo span { font-size: 14px; color: var(--gold-deep); }
.bs-pinfo em { font-style: normal; font-size: 14px; color: #5a4626; }
.bs-toggle { padding: 10px 12px; border-radius: 10px; border: 1px solid var(--gold); background: #fff; font-weight: 600; cursor: pointer; }
.bs-edit > summary { font-size: 14px; color: var(--lacquer); cursor: pointer; margin-top: 8px; }
.bs-edit .bs-cancel { width: 100%; margin: 0 0 4px; }
.bs-field { display: block; margin: 12px 0; }
.bs-field span { display: block; font-weight: 600; margin-bottom: 4px; }
.bs-field small { display: block; color: #7a6238; margin-top: 3px; }
.bs-field input[type=text], .bs-field input[type=number], .bs-field select, .bs-field textarea { width: 100%; box-sizing: border-box; padding: 12px; font-size: 16px; border: 1px solid #d8c9a0; border-radius: 10px; background: #fff; }
.bs-two { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }

/* ---------- My Shop: payments & coupons ---------- */
.bs-pay .bs-prod { padding: 14px 16px; }
.bs-pay h3 { margin: 0 0 6px; font-size: 18px; display: flex; align-items: center; gap: 8px; flex-wrap: wrap; text-transform: none; letter-spacing: 0; }
.bs-pay p { margin: 6px 0; }
.bs-on, .bs-off { font-size: 12px; padding: 3px 10px; border-radius: 999px; font-family: system-ui, sans-serif; letter-spacing: 0; }
.bs-on { background: #eef8ee; color: #2e6b2e; }
.bs-off { background: #fdeceb; color: #8a1c1c; }
.bs-fee { font-size: 13px; color: #7a6238; }
.bs-paid { color: #2e6b2e; font-weight: 600; }
.bs-pform input[type=date] { width: 100%; box-sizing: border-box; padding: 11px; font-size: 16px; border: 1px solid #d8c9a0; border-radius: 10px; }
.bs-tabs { overflow-x: auto; }
.bs-tabs a { white-space: nowrap; min-width: 84px; }

/* ---------- Legal pages ---------- */
.bama-legal { max-width: 820px; margin: 0 auto; font-size: 16px; line-height: 1.7; }
.bama-legal h2 { font-size: 22px; margin: 28px 0 8px; }
.bama-legal ul { padding-left: 1.2em; }
.bama-legal li { margin: 0 0 6px; }
.bama-legal-meta { color: #7a6238; font-size: 14px; }
.bg-legal-links a { color: #f3e6c4; }
.bama-sor { font-size: 13px; line-height: 1.5; background: var(--bg-paper); border: 1px solid var(--gold-soft); border-radius: 10px; padding: 10px 14px; margin: 0 0 16px; color: #5a4626; }
.bg-footer .bama-sor { background: transparent; border: 0; padding: 0; color: #f3e6c4; opacity: .85; }

/* ---------- Guide: banana-easy layout ---------- */
.bama-help-btn { display: inline-block; padding: 14px 26px; border-radius: 999px; background: var(--lacquer); color: #fff !important; font: 600 16px/1 var(--display); letter-spacing: .08em; text-transform: uppercase; text-decoration: none; }
html[lang^="my"] .bama-help-btn { text-transform: none; letter-spacing: 0; }
.bama-help h3 { margin: 30px 0 10px; font-size: 22px; color: var(--brown); }
.bama-help .food-opts { display: grid; gap: 12px; }
.bama-help .food-opts > div { background: #fff; border: 1px solid var(--gold-soft); border-radius: 12px; padding: 14px 16px; }
.bama-help .places { margin: 8px 0 0; padding-left: 1.1em; font-size: 15px; }
.bama-help .places li { margin: 4px 0; }
.bama-help .mehko-steps { margin-top: 14px; background: var(--bg-paper); border: 1px dashed var(--gold); border-radius: 12px; padding: 10px 14px; }
.bama-help .mehko-steps summary { cursor: pointer; font-weight: 600; color: var(--lacquer); }
.bama-su select { width: 100%; padding: 12px; font-size: 16px; border: 1px solid #ccc; border-radius: 8px; background: #fff; }
.bs-permit { border: 1px solid var(--gold-soft); border-radius: 12px; padding: 4px 14px 8px; margin: 12px 0; }
.bs-permit legend { font-weight: 600; padding: 0 6px; }

/* ---------- Events, tickets & check-in ---------- */
.bama-ev { background: var(--bg-paper); border-left: 3px solid var(--gold); border-radius: 8px; padding: 8px 12px; margin: 8px 0 12px; font-size: 14px; line-height: 1.6; }
.bama-ev a { color: var(--gold-deep); }
.bg-card .bama-ev { font-size: 13px; padding: 6px 10px; margin: 6px 0; }
.bama-tickets { background: #fff; border: 2px solid var(--gold); border-radius: var(--radius); padding: 18px; margin: 24px 0; }
.bama-tickets h2 { margin-top: 0; color: var(--gold-deep); }
.bama-tk-pay { font-weight: 600; color: var(--lacquer); }
.bama-tk-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(280px, 100%), 1fr)); gap: 12px; }
.bama-tk { display: flex; gap: 12px; align-items: flex-start; border: 1px dashed var(--gold-deep); border-radius: 10px; padding: 10px; background: var(--bg-paper); }
.bama-tk.used { opacity: .55; }
.bama-tk > div:last-child { display: flex; flex-direction: column; gap: 2px; font-size: 14px; min-width: 0; max-width: 100%; overflow-wrap: anywhere; }
.bama-tk code { font-size: 18px; letter-spacing: .12em; font-weight: 700; color: var(--ink); background: none; }
.bama-tk em { color: #2e7d32; font-style: normal; font-weight: 600; }
.bama-qr { flex: 0 0 150px; width: 150px; height: 150px; background: #fff; padding: 4px; box-sizing: content-box; }
.bama-qr img, .bama-qr canvas { display: block; width: 150px !important; height: 150px !important; }
@media (max-width: 420px) { .bama-tk { flex-direction: column; align-items: center; text-align: center; } }
.bs-ci { border-radius: 12px; padding: 16px; margin-bottom: 14px; font-size: 18px; display: flex; flex-direction: column; gap: 4px; }
.bs-ci span { font-size: 15px; }
.bs-ci.ok { background: #e6f4ea; border: 2px solid #2e7d32; color: #1b5e20; }
.bs-ci.used { background: #fff4e5; border: 2px solid #e65100; color: #bf360c; }
.bs-ci.bad { background: #fdecea; border: 2px solid #b00020; color: #8a1c1c; }
.bs-ciform input[name=bama_checkin_code] { font-size: 22px; letter-spacing: .12em; text-transform: uppercase; }
.bs-scan { margin: 6px 0 10px; }
#bama-reader { max-width: 360px; }
.bs-event { border: 1px dashed var(--gold); border-radius: 10px; padding: 10px 12px; margin: 8px 0; background: var(--bg-paper); }

/* ---------- Share buttons ---------- */
.bama-share { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; justify-content: center; margin: 16px 0 4px; font-size: 14px; }
.bama-share > span { color: var(--brown); font-weight: 600; margin-right: 2px; }
.bama-sh { display: inline-block; padding: 6px 12px; border-radius: 999px; border: 1px solid transparent; color: #fff; text-decoration: none; font: 600 13px/1.2 system-ui, sans-serif; cursor: pointer; }
.bama-sh[hidden] { display: none; }
.bama-sh-fb { background: #1877f2; }
.bama-sh-ms { background: #0084ff; }
.bama-sh-wa { background: #25d366; }
.bama-sh-vb { background: #7360f2; }
.bama-sh-copy, .bama-sh-more { background: #fff; color: var(--gold-deep); border-color: var(--gold); }
.bama-sh:hover { filter: brightness(1.08); }
.single-product .bama-share { justify-content: flex-start; }

/* ---------- Shared polish: keep the original gold, cream and lacquer palette ---------- */
:where(.bg-wrap, .bg-hero, .bs-wrap, .bama-help, .bama-su, .woocommerce-account .woocommerce),
:where(.bg-wrap, .bg-hero, .bs-wrap, .bama-help, .bama-su, .woocommerce-account .woocommerce) * { box-sizing: border-box; }
:where(a, button, input, select, textarea, summary):focus-visible { outline: 3px solid var(--gold-deep); outline-offset: 3px; }
:where(.bg-brand, .bg-card, .bk-card, .bg-feature, .bs-field, .bs-pinfo) { min-width: 0; overflow-wrap: anywhere; }
.bg-brand { gap: 4px; }
.bg-brand small { line-height: 1.45; }
.bg-nav a { min-height: 44px; display: inline-flex; align-items: center; justify-content: center; line-height: 1.3; }
.bg-nav { flex-shrink: 0; }
.bg-btn { line-height: 1.35; text-align: center; max-width: 100%; }
.bg-grid { grid-template-columns: repeat(auto-fill, minmax(min(250px, 100%), 1fr)); }
.bk-grid, .bg-features { grid-template-columns: repeat(auto-fit, minmax(min(240px, 100%), 1fr)); }
.bk-grid { grid-template-columns: repeat(auto-fill, minmax(min(240px, 100%), 1fr)); }
.bk-search input { min-width: 0; }
.bg-card .bg-body, .bk-body { padding: 18px; }
.bg-card .bg-buy { flex-wrap: wrap; }
.bg-card .bg-buy .button { min-height: 44px; display: inline-flex; align-items: center; line-height: 1.3; text-align: center; }
.bg-feature { box-shadow: 0 3px 14px rgba(59,42,20,.04); }
.bg-feature h3 { line-height: 1.4; margin-top: 16px; }
.bg-footer a { text-underline-offset: 3px; }
:is(#menu, #pickup, #reviews, #guide, #kitchens) { scroll-margin-top: 140px; }
.bama-help { overflow-wrap: anywhere; }
.bama-help .food-opts > div { padding: 18px 20px; }
.wp-block-post-title { font-size: clamp(30px, 4.5vw, 48px); line-height: 1.2; overflow-wrap: anywhere; }
.woocommerce-account main.wp-block-group { margin-top: clamp(28px, 4vw, 48px) !important; }
.woocommerce-account .wp-block-post-title { margin-bottom: 24px; }
.woocommerce-account main > .wp-block-group:has(> .wp-block-post-title) { padding-top: 8px !important; padding-bottom: 8px !important; }
.single-product .product_title { font-size: clamp(28px, 4vw, 42px); line-height: 1.25; overflow-wrap: anywhere; }
.single-product .woocommerce-product-gallery__wrapper img { border-radius: 10px; }
.single-product .woocommerce-product-details__short-description { font-size: 16px; line-height: 1.75; }
.single-product #review_form :is(input[type=text], input[type=email], textarea) { box-sizing: border-box; max-width: 100%; padding: 12px; border: 1px solid #c8b98f; border-radius: 9px; background: #fff; font: inherit; font-size: 16px; }
.wp-site-blocks .bama-su-banner { width: auto; max-width: var(--wrap) !important; margin: 0 auto 28px !important; padding: 0; }

/* Account navigation is a compact panel, with the current page clearly marked. */
.woocommerce-account .woocommerce { padding: 0; margin: 24px auto 56px; }
.woocommerce-account .woocommerce:has(> .woocommerce-MyAccount-navigation) {
	display: grid; grid-template-columns: 230px minmax(0, 1fr); gap: 24px; align-items: start;
}
.woocommerce-account .woocommerce:has(> .woocommerce-MyAccount-navigation)::before,
.woocommerce-account .woocommerce:has(> .woocommerce-MyAccount-navigation)::after { display: none; }
.woocommerce-account .woocommerce > :is(.bama-back-to-shop, .woocommerce-notices-wrapper, .woocommerce-message, .woocommerce-error, .woocommerce-info) { grid-column: 1 / -1; }
.woocommerce-account .woocommerce > .woocommerce-notices-wrapper:empty { display: none; }
.woocommerce-account .bama-back-to-shop { margin: 0; }
.woocommerce-account .bama-back-to-shop .bg-btn { padding: 12px 22px; font-size: 14px; }
.woocommerce-account .woocommerce-MyAccount-navigation {
	float: none; width: auto; padding: 10px; background: var(--bg-paper); border: 1px solid var(--gold-soft); border-radius: var(--radius);
}
.woocommerce-account .woocommerce-MyAccount-navigation ul { list-style: none; padding: 0; margin: 0; display: grid; gap: 4px; }
.woocommerce-account .woocommerce-MyAccount-navigation li { margin: 0; padding: 0; border: 0; }
.woocommerce-account .woocommerce-MyAccount-navigation a {
	display: flex; align-items: center; gap: 12px; min-height: 48px; padding: 12px; border-radius: 9px;
	font-size: 15px; font-weight: 600; line-height: 1.5; color: var(--brown); text-decoration: none; overflow-wrap: anywhere;
}
.woocommerce-account .woocommerce-MyAccount-navigation a:hover { background: #f4e8c8; }
.woocommerce-account .woocommerce-MyAccount-navigation .is-active a { background: var(--gold); color: var(--ink); box-shadow: inset 3px 0 var(--gold-deep); text-decoration: none; }
.woocommerce-account .woocommerce-MyAccount-navigation-link--customer-logout { border-top: 1px solid var(--gold-soft); padding-top: 6px; margin-top: 6px; }
.woocommerce-account .woocommerce-MyAccount-navigation-link--customer-logout a { color: var(--lacquer); }
.woocommerce-account .woocommerce-MyAccount-content {
	float: none; width: auto; min-width: 0; background: var(--bg-paper); border: 1px solid var(--gold-soft); border-radius: var(--radius);
	padding: clamp(18px, 3vw, 32px); box-shadow: 0 3px 18px rgba(59,42,20,.04); overflow-wrap: anywhere;
}
.woocommerce-MyAccount-content > :first-child { margin-top: 0; }
.woocommerce-MyAccount-content > :last-child { margin-bottom: 0; }
.woocommerce-account .woocommerce-EditAccountForm fieldset { min-width: 0; margin: 24px 0; padding: 16px; border: 1px solid var(--gold-soft); border-radius: 10px; }
.woocommerce-account .woocommerce-EditAccountForm legend { padding: 0 8px; color: var(--brown); font-weight: 600; font-size: 16px; }
.woocommerce-account .woocommerce form .form-row { padding: 0; margin-bottom: 18px; }
.woocommerce-account .woocommerce form .form-row label { font-size: 15px; font-weight: 600; line-height: 1.5; margin-bottom: 7px; }
.woocommerce-account .woocommerce form .form-row :is(input.input-text, textarea, select) {
	box-sizing: border-box; width: 100%; max-width: 100%; min-height: 48px; padding: 12px 14px; border: 1px solid #c8b98f;
	border-radius: 9px; background: #fff; color: var(--ink); font: inherit; font-size: 16px;
}
.woocommerce-account .woocommerce form .form-row .password-input input { padding-right: 46px; }
.woocommerce-account .woocommerce form .form-row em { display: block; color: #655235; font-size: 13px; line-height: 1.6; font-style: normal; margin-top: 6px; }
.woocommerce-account .woocommerce form :is(button.button, input.button) { min-height: 46px; padding: 12px 24px; line-height: 1.4; }
.woocommerce-account .woocommerce form :is(.form-row-first, .form-row-last) { width: 48%; }
.woocommerce-account #customer_login { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; }
.woocommerce-account #customer_login::before, .woocommerce-account #customer_login::after { display: none; }
.woocommerce-account #customer_login > :is(.u-column1, .u-column2) { width: auto; float: none; min-width: 0; }
.woocommerce-account #customer_login h2 { font-size: 26px; margin: 0 0 16px; }
.woocommerce-account .woocommerce form:is(.login, .register) { margin: 0; padding: 24px; background: var(--bg-paper); border: 1px solid var(--gold-soft); border-radius: var(--radius); }
.woocommerce-account .woocommerce table.shop_table { border-color: var(--gold-soft); border-radius: 10px; font-size: 15px; }

/* Same touch targets and rhythm throughout the seller workspace. */
.bs-wrap { max-width: 900px; }
.bs-head { padding-bottom: 12px; border-bottom: 1px solid var(--gold-soft); }
.bs-head h1 { overflow-wrap: anywhere; }
.bs-stats { grid-template-columns: repeat(auto-fit, minmax(min(140px, 100%), 1fr)); }
.bs-stats div { padding: 16px; }
.bs-stats span { display: block; margin-top: 5px; font-size: 13px; }
.bs-tabs { padding: 6px; background: var(--bg-paper); border: 1px solid var(--gold-soft); border-radius: 14px; position: static; display: grid; grid-template-columns: repeat(auto-fit, minmax(110px, 1fr)); overflow: visible; }
.bs-tabs a { min-width: 0; padding: 12px 8px; white-space: normal; line-height: 1.5; font-size: 15px; border-color: transparent; background: transparent; }
.bs-tabs a:hover { background: #f4e8c8; }
.bs-tabs a.on { background: var(--gold); }
.bs-two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.bs-field { margin: 14px 0; }
.bs-field :is(input, select, textarea) { font-family: inherit; }
.bs-field input[type=file] { display: block; width: 100%; max-width: 100%; min-width: 0; font-size: 14px; margin-bottom: 10px; }
.bs-field input[type=file]::file-selector-button { padding: 10px 12px; min-height: 44px; margin-right: 8px; border: 1px solid #c8b98f; border-radius: 8px; background: var(--bg-paper); color: var(--brown); font: inherit; cursor: pointer; }
.bs-field small { font-size: 13px; line-height: 1.6; }
.bs-add, .bs-prod, .bs-order { box-shadow: 0 2px 10px rgba(59,42,20,.035); }
.bs-add > summary { padding: 18px; min-height: 48px; }
.bs-add .bs-pform, .bs-edit .bs-pform { padding: 0 18px 18px; }
.bs-edit > summary { padding: 8px 0; min-height: 44px; }
.bs-adv { padding-top: 20px; border-top: 1px solid var(--gold-soft); line-height: 2; }
.bs-order header, .bs-actions { flex-wrap: wrap; }
.bs-order time { white-space: normal; }
.bama-su input, .bama-su select { box-sizing: border-box; max-width: 100%; }
.bama-su :is(input:not([type=checkbox]):not([type=radio]), select) { min-height: 48px; border-color: #c8b98f; border-radius: 9px; }

@media (max-width: 900px) {
	.bg-header .bg-wrap { flex-wrap: wrap; gap: 8px; padding-top: 12px; padding-bottom: 8px; }
	.bg-nav { width: 100%; justify-content: space-between; flex-shrink: 1; }
}
@media (max-width: 700px) {
	.woocommerce-account .woocommerce:has(> .woocommerce-MyAccount-navigation) { grid-template-columns: minmax(0, 1fr); gap: 16px; }
	.woocommerce-account .woocommerce-MyAccount-navigation ul { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.woocommerce-account .woocommerce-MyAccount-navigation a { font-size: 14px; padding: 10px; gap: 8px; }
	.woocommerce-account .woocommerce-MyAccount-navigation-link--customer-logout { border: 0; margin: 0; padding: 0; }
	.woocommerce-account #customer_login { grid-template-columns: minmax(0, 1fr); gap: 28px; }
	.bg-nav a { letter-spacing: .04em; padding: 10px 8px; }
	.bg-nav { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 2px; align-items: center; }
	.bg-nav:has(.wc-block-mini-cart) { grid-template-columns: repeat(4, minmax(0, 1fr)) 36px; }
	.bg-nav a { min-width: 0; padding: 10px 4px; text-align: center; overflow-wrap: anywhere; }
	.bg-nav .wc-block-mini-cart__button { padding: 6px; }
	html[lang^="my"] .bg-nav { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	html[lang^="my"] .bg-nav:has(.wc-block-mini-cart) { grid-template-columns: repeat(2, minmax(0, 1fr)) 36px; }
	html[lang^="my"] .bg-nav .wc-block-mini-cart { grid-column: 3; grid-row: 1 / span 2; }
	html[lang^="my"] .bg-nav a { font-size: 13px; }
	.bg-hero { padding: 48px 20px; }
	.bg-hero .bg-kicker { line-height: 1.6; letter-spacing: .16em; }
	.bg-rv-bars { min-width: 0; flex-basis: 100%; }
	.bg-footer .bg-wrap { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 520px) {
	html[lang^="my"] .woocommerce-MyAccount-navigation ul { grid-template-columns: minmax(0, 1fr); }
	.bs-two { grid-template-columns: minmax(0, 1fr); gap: 0; }
	.bs-tabs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.bs-prow { flex-wrap: wrap; gap: 10px; }
	.bs-prow > form { margin-left: auto; }
	.woocommerce-account .woocommerce form :is(.form-row-first, .form-row-last) { float: none; width: 100%; }
	.woocommerce-account .woocommerce-EditAccountForm fieldset { padding: 12px; }
	.bk-search { flex-wrap: wrap; }
	.bk-search input { flex-basis: 160px; }
}
@media (prefers-reduced-motion: reduce) { .bk-card { transition: none; } .bk-card:hover { transform: none; } }

/* Small, decorative vector icons; visible text remains the accessible label. */
:root { --bama-icon-home: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m3%2010%209-7%209%207v10H3z%22/%3E%3Cpath%20d%3D%22M9%2020v-7h6v7%22/%3E%3C/svg%3E"); }
:root { --bama-icon-bag: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%224%22%20y%3D%227%22%20width%3D%2216%22%20height%3D%2214%22%20rx%3D%222%22/%3E%3Cpath%20d%3D%22M8%208V6a4%204%200%200%201%208%200v2%22/%3E%3C/svg%3E"); }
:root { --bama-icon-review: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M21%2011a9%209%200%200%201-9%209H4l-2%202v-11a9%209%200%200%201%2019%200Z%22/%3E%3Cpath%20d%3D%22M7%209h9M7%2013h6%22/%3E%3C/svg%3E"); }
:root { --bama-icon-user: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%227%22%20r%3D%224%22/%3E%3Cpath%20d%3D%22M4%2021v-2a8%208%200%200%201%2016%200v2%22/%3E%3C/svg%3E"); }
:root { --bama-icon-exit: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M9%203H3v18h6M13%208l5%204-5%204M8%2012h13%22/%3E%3C/svg%3E"); }
:root { --bama-icon-wallet: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223%22%20y%3D%225%22%20width%3D%2218%22%20height%3D%2215%22%20rx%3D%222%22/%3E%3Cpath%20d%3D%22M3%208V5l14-3v3M21%2011h-7v5h7%22/%3E%3Ccircle%20cx%3D%2217%22%20cy%3D%2213.5%22%20r%3D%22.5%22/%3E%3C/svg%3E"); }
:root { --bama-icon-users: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%229%22%20cy%3D%227%22%20r%3D%223%22/%3E%3Cpath%20d%3D%22M2%2021v-3a7%207%200%200%201%2014%200v3M16%204a3%203%200%200%201%200%206M19%2014a5%205%200%200%201%203%204v3%22/%3E%3C/svg%3E"); }
:root { --bama-icon-globe: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%229%22/%3E%3Cellipse%20cx%3D%2212%22%20cy%3D%2212%22%20rx%3D%224%22%20ry%3D%229%22/%3E%3Cpath%20d%3D%22M3%2012h18%22/%3E%3C/svg%3E"); }
:root { --bama-icon-shield: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m12%202%209%204v6c0%205-9%2010-9%2010S3%2017%203%2012V6zM8%2012l3%203%205-6%22/%3E%3C/svg%3E"); }
.woocommerce-account .woocommerce-MyAccount-navigation a::before {
 content: ""; flex: 0 0 20px; width: 20px; height: 20px; background: currentColor;
 -webkit-mask: var(--bama-nav-icon, var(--bama-icon-bag)) center / contain no-repeat;
 mask: var(--bama-nav-icon, var(--bama-icon-bag)) center / contain no-repeat;
}
.woocommerce-MyAccount-navigation-link--dashboard { --bama-nav-icon: var(--bama-icon-home); }
.woocommerce-MyAccount-navigation-link--my-reviews { --bama-nav-icon: var(--bama-icon-review); }
.woocommerce-MyAccount-navigation-link--edit-account { --bama-nav-icon: var(--bama-icon-user); }
.woocommerce-MyAccount-navigation-link--customer-logout { --bama-nav-icon: var(--bama-icon-exit); }

/* Guest receipt verification keeps its gold button inside narrow screens. */
.woocommerce-verify-email input[type="submit"] {
	box-sizing: border-box;
	max-width: 100%;
	min-height: 46px;
	padding: 14px 16px;
	font-size: clamp(14px, 3.5vw, 18px);
	letter-spacing: .02em;
}
.bg-feature .ic { display: flex; align-items: center; justify-content: center; width: 48px; height: 48px; border-radius: 12px; background: #f5eacb; color: var(--gold-deep); font-size: 0; }
.bg-feature .ic::before { content: ""; width: 26px; height: 26px; background: currentColor; -webkit-mask: var(--bama-feature-icon) center / contain no-repeat; mask: var(--bama-feature-icon) center / contain no-repeat; }
.bg-feature:nth-child(1) { --bama-feature-icon: var(--bama-icon-wallet); }
.bg-feature:nth-child(2) { --bama-feature-icon: var(--bama-icon-users); }
.bg-feature:nth-child(3) { --bama-feature-icon: var(--bama-icon-globe); }
.bg-feature:nth-child(4) { --bama-feature-icon: var(--bama-icon-shield); }

/* Readable event tickets on phones, printouts and desktop. */
.bama-ticket-qr { flex:0 0 220px; max-width:100%; }
.bama-tk-grid { grid-template-columns:1fr; }
.bama-tk p { margin:0 0 12px; }
.bama-tk code { overflow-wrap:anywhere; }
@media(max-width:600px){ .bama-tk { flex-direction:column;align-items:center; } .bama-tk>div:last-child { width:100%;text-align:left; } .bama-ticket-qr { flex-basis:auto; } }
