.rakata-auth-gate {
	position: fixed;
	z-index: 100000;
	inset: 0;
	display: grid;
	place-items: center;
	padding: 1rem;
	background: rgb(28 16 8 / 72%);
}
.rakata-auth-gate__panel {
	width: min(100%, 28rem);
	max-height: calc(100vh - 2rem);
	overflow: auto;
	padding: clamp(1.25rem, 4vw, 2rem);
	border-radius: 1rem;
	background: #fffaf0;
	box-shadow: 0 1.5rem 4rem rgb(0 0 0 / 30%);
}
.rakata-auth-gate form { display: grid; gap: 0.6rem; margin-top: 1rem; }
.rakata-auth-gate input,
.rakata-auth-gate button { min-height: 3rem; font: inherit; }
.rakata-auth-gate input { width: 100%; padding: 0.7rem; }
.rakata-auth-gate button { cursor: pointer; }
.rakata-auth-gate :focus-visible { outline: 3px solid #8d3f18; outline-offset: 2px; }
.rakata-auth-login__actions { display: grid; gap: 0.8rem; margin-top: 0.25rem; }
.rakata-auth-login__actions button,
.rakata-auth-login__actions #rakata-google-button { width: 100%; min-width: 0; }
.rakata-auth-login__actions #rakata-google-button { min-height: 3rem; }
.rakata-auth-login__actions #rakata-google-button > div { width: 100% !important; }
.rakata-auth-login__actions #rakata-google-button iframe { max-width: 100%; }
.rakata-google-fallback { margin: 0; color: #7f3516; font-size: 0.9rem; line-height: 1.4; }
#rakata-auth-status { min-height: 1.5em; }
.rakata-auth-gate [hidden] { display: none !important; }
body.rakata-auth-flow-open { overflow: hidden; }
.rakata-auth-flow-modal {
	position: fixed;
	z-index: 100010;
	inset: 0;
	display: grid;
	place-items: center;
	padding: 1rem;
	background: rgb(28 16 8 / 72%);
}
.rakata-auth-flow-modal__panel {
	position: relative;
	width: min(100%, 38rem);
	max-height: calc(100dvh - 2rem);
	overflow: auto;
	padding: clamp(1.25rem, 4vw, 2rem);
	border-radius: 1rem;
	background: #fffaf0;
	box-shadow: 0 1.5rem 4rem rgb(0 0 0 / 30%);
}
.rakata-auth-flow-modal__panel form { display: grid; gap: 0.6rem; margin-top: 1rem; }
.rakata-auth-flow-close {
	position: absolute;
	top: 0.65rem;
	right: 0.65rem;
	width: 2.75rem;
	padding: 0;
	border: 0;
	background: transparent;
	font-size: 1.75rem;
	line-height: 1;
}
.rakata-auth-cancel { margin-top: 0.75rem; }
.rakata-auth-field-error { min-height: 1.25em; margin: 0; color: #9d1c16; }
@media (max-width: 480px) {
	.rakata-auth-flow-modal { padding: 0.5rem; }
	.rakata-auth-flow-modal__panel { width: calc(100vw - 1rem); max-height: calc(100dvh - 1rem); padding: 1.25rem; }
}
.rakata-address-modal form { display: grid; gap: 1rem; }
.rakata-address-book label { display: grid; gap: 0.35rem; font-weight: 650; }
.rakata-address-book input,
.rakata-address-book textarea,
.rakata-address-book button { min-height: 2.75rem; font: inherit; }
.rakata-address-book input,
.rakata-address-book textarea { width: 100%; padding: 0.65rem; }
.rakata-address-card { display: grid; grid-template-columns: minmax(0, 1fr) repeat(3, auto); gap: .35rem .5rem; align-items: start; margin-bottom: .65rem; padding: .7rem .85rem; border: 1px solid #decdb9; border-radius: .75rem; background: #fffaf0; }
.rakata-address-card h4 { grid-column: 1; margin: .2rem 0; line-height: 1.25; }
.rakata-address-card p { grid-column: 1 / -1; margin: 0; white-space: pre-line; line-height: 1.35; }
.rakata-address-card > button { grid-row: 1; min-height: 2.35rem; margin: 0; padding: .35rem .7rem; white-space: nowrap; }
.rakata-address-card > button:nth-of-type(1) { grid-column: 2; }
.rakata-address-card > button:nth-of-type(2) { grid-column: 3; }
.rakata-address-card > button:nth-of-type(3) { grid-column: 4; }
.rakata-address-actions button { margin: .25rem .5rem .25rem 0; padding-inline: 1rem; }
@media (max-width: 640px) {
	.rakata-address-card { grid-template-columns: repeat(3, minmax(0, auto)); }
	.rakata-address-card h4, .rakata-address-card p { grid-column: 1 / -1; }
	.rakata-address-card > button { grid-row: auto; grid-column: auto !important; white-space: normal; }
}
.rakata-address-results { display: grid; max-height: 16rem; overflow: auto; border-radius: 0.5rem; }
.rakata-address-results:empty { display: none; }
.rakata-address-results button { height: auto; padding: 0.75rem; text-align: left; }
.rakata-address-primary { grid-template-columns: auto 1fr; align-items: center; }
.rakata-address-primary input { width: 1.25rem; min-height: 1.25rem; }
.rakata-address-book :focus-visible { outline: 3px solid #8d3f18; outline-offset: 2px; }
.rakata-address-modal[hidden] { display: none !important; }
body.rakata-address-modal-open { overflow: hidden; }
.rakata-address-modal { position: fixed; z-index: 100020; inset: 0; display: grid; place-items: center; padding: 1rem; }
.rakata-address-modal__backdrop { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; background: rgb(28 16 8 / 72%); cursor: default; }
.rakata-address-modal__panel { position: relative; z-index: 1; width: min(100%, 42rem); max-height: calc(100dvh - 2rem); overflow: auto; padding: clamp(1.25rem, 4vw, 2rem); border-radius: 1rem; background: #fffaf0; box-shadow: 0 1.5rem 4rem rgb(0 0 0 / 30%); }
.rakata-address-modal__close { position: absolute; top: .65rem; right: .65rem; width: 2.75rem; padding: 0; border: 0; background: transparent; font-size: 1.75rem; line-height: 1; }
.rakata-address-empty { padding: 1rem; border: 1px dashed #b79673; border-radius: .75rem; }
.rakata-address-field-error { margin: 0; color: #9d1c16; font-weight: 500; }
@media (max-width: 480px) {
	.rakata-address-modal { padding: .5rem; }
	.rakata-address-modal__panel { width: calc(100vw - 1rem); max-height: calc(100dvh - 1rem); padding: 1.25rem; }
}
.rakata-checkout-customer { margin-bottom: 1.5rem; padding: 1.25rem; border: 1px solid #decdb9; border-radius: 0.85rem; background: #fffaf0; }
.rakata-checkout-customer label { display: grid; gap: 0.35rem; margin-top: 0.8rem; font-weight: 650; }
.rakata-checkout-customer select,
.rakata-checkout-customer input,
.rakata-checkout-customer button { min-height: 2.75rem; font: inherit; }
.rakata-checkout-customer select,
.rakata-checkout-customer input { width: 100%; padding: 0.65rem; }
.rakata-checkout-customer button { margin-top: 1rem; padding-inline: 1rem; }
.rakata-receiver-same { grid-template-columns: auto 1fr; align-items: center; }
.rakata-receiver-same input { width: 1.25rem; min-height: 1.25rem; }
.rakata-shipping-help,
.rakata-recalculate-shipping { display: inline-flex; margin: 0.75rem 0.5rem 0 0; }
body.rakata-no-active-coupon .wc-block-components-totals-coupon,
body.rakata-no-active-coupon form.checkout_coupon { display: none !important; }
body.rakata-using-saved-address .wc-block-checkout__shipping-fields .wc-block-components-address-form { display: none; }
.rakata-checkout-customer :focus-visible,
.rakata-recalculate-shipping:focus-visible { outline: 3px solid #8d3f18; outline-offset: 2px; }
.rakata-marketing-consent { grid-template-columns: auto 1fr; align-items: center; font-weight: 500 !important; }
.rakata-marketing-consent input { width: 1.25rem; min-height: 1.25rem; }
.rakata-complaint { margin-top: 2rem; padding: 1.25rem; border: 1px solid #decdb9; border-radius: 0.85rem; background: #fffaf0; }
.rakata-complaint form,
.rakata-complaint label { display: grid; gap: 0.5rem; }
.rakata-complaint form { gap: 1rem; }
.rakata-complaint select,
.rakata-complaint textarea,
.rakata-complaint input,
.rakata-complaint button { min-height: 2.75rem; font: inherit; }
.rakata-complaint textarea { min-height: 8rem; }
.rakata-complaint :focus-visible { outline: 3px solid #8d3f18; outline-offset: 2px; }

.rakata-customer-profile form {
	display: grid;
	gap: 0.75rem;
	max-width: 36rem;
}
.rakata-customer-profile input,
.rakata-customer-profile button {
	min-height: 2.75rem;
	font: inherit;
}
.rakata-customer-profile input {
	width: 100%;
	padding: 0.65rem;
}
.rakata-customer-profile input[readonly] {
	background: #f1ebe3;
}
.rakata-customer-profile :focus-visible,
.rakata-account-login :focus-visible {
	outline: 3px solid #8d3f18;
	outline-offset: 2px;
}
#rakata-checkout-address-empty {
	padding: 1rem;
	border: 1px dashed #b79673;
	border-radius: 0.75rem;
}
#rakata-checkout-address-empty .button {
	display: inline-flex;
	align-items: center;
	margin-top: 0.5rem;
}
.rakata-order-shipping,
.rakata-complaint-list__item {
	margin-top: 1.5rem;
	padding: 1rem;
	border: 1px solid #decdb9;
	border-radius: 0.75rem;
	background: #fffaf0;
}
.rakata-complaint-list__item h3 {
	margin-top: 0;
}
.rakata-complaint-list { margin-top: 1.5rem; }
.rakata-complaint-list__cards { display: grid; gap: .75rem; }
.rakata-complaint-list__cards[data-rakata-scroll] { --rakata-complaint-card-height: 12.5rem; max-height: calc(var(--rakata-complaint-card-height) * 5 + 3rem); overflow-y: auto; padding-right: .5rem; }
.rakata-complaint-card { min-height: 10.5rem; padding: 1rem; border: 1px solid #decdb9; border-radius: .75rem; background: #fffaf0; }
.rakata-complaint-card h3 { margin: .2rem 0; }
.rakata-complaint-card p { margin: .45rem 0; }
.rakata-complaint-card__status { display: inline-block; padding: .2rem .55rem; border-radius: 999px; background: #f0dfcb; color: #6d2b12; font-weight: 700; font-size: .85rem; }
.rakata-complaint-card__excerpt { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.rakata-complaint-card__actions { font-weight: 700; }
.rakata-complaint-evidence { display: flex; flex-wrap: wrap; gap: .75rem; }
.rakata-complaint-evidence img { width: min(100%, 12rem); height: 9rem; object-fit: cover; border: 1px solid #decdb9; border-radius: .5rem; }
.woocommerce-account .rakata-complaint-list .rakata-orders-scroll { border: 1px solid var(--rk-control-border, #decdb9); border-radius: .75rem; overflow: hidden; background: var(--rk-surface, #fff); }
.woocommerce-account .rakata-complaint-list .rakata-orders-scroll[data-rakata-overflow] { max-height: 29rem; overflow-y: auto; overscroll-behavior: contain; scrollbar-gutter: stable; }
.woocommerce-account .rakata-complaint-list .woocommerce-orders-table { width: 100%; table-layout: fixed; margin: 0; border: 0; }
.woocommerce-account .rakata-complaint-list th:nth-child(1) { width: 22%; }
.woocommerce-account .rakata-complaint-list th:nth-child(2) { width: 21%; }
.woocommerce-account .rakata-complaint-list th:nth-child(3) { width: calc(37% + 6ch); }
.woocommerce-account .rakata-complaint-list th:nth-child(4) { width: calc(20% - 6ch); }
.rakata-complaint-table__category,.rakata-complaint-table__summary { display: inline-block; margin-top: .3rem; color: #76675c; font-size: .78rem; font-weight: 400; line-height: 1.4; }
.rakata-complaint-table__summary { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
@media (max-width: 767px) { .woocommerce-account .rakata-complaint-list .woocommerce-orders-table th { display: none; } .woocommerce-account .rakata-complaint-list .woocommerce-orders-table td { display: block; width: 100%; } .woocommerce-account .rakata-complaint-list .woocommerce-orders-table td + td { border-top: 0; } }
.rakata-auth-gate--inline { position: static; display: block; padding: 0; background: transparent; }
.rakata-auth-gate--inline .rakata-auth-gate__panel { margin-inline: auto; box-shadow: none; border: 1px solid #decdb9; }
.rakata-auth-links { display: flex; flex-wrap: wrap; gap: .75rem; }
.rakata-auth-links button { background: none; border: 0; color: #7f3516; text-decoration: underline; }

.rakata-address-book > #rakata-address-add { margin: .75rem 0 1.25rem; }
.rakata-checkout-address-option { display: flex !important; grid-template-columns: auto 1fr; align-items: center; gap: .65rem; padding: .75rem; border: 1px solid #decdb9; border-radius: .65rem; }
.rakata-checkout-address-option input { width: 1.25rem; min-height: 1.25rem; }
#rakata-checkout-address-options { display: grid; gap: .6rem; }
#rakata-checkout-address-detail { margin-top: .75rem; padding: .8rem; white-space: pre-line; background: #fff; border-radius: .5rem; }
body.rakata-saved-address-checkout .wc-block-checkout__shipping-fields,
body.rakata-saved-address-checkout .wc-block-checkout__billing-fields,
body.rakata-saved-address-checkout .wc-block-checkout__use-address-for-billing,
body.rakata-saved-address-checkout .wc-block-components-address-form,
body.rakata-saved-address-checkout .wc-block-components-address-card__edit,
body.rakata-saved-address-checkout .wc-block-components-address-card__edit-button { display: none !important; }
.rakata-account-dashboard .woocommerce-MyAccount-content > p { display: none; }

/* Keep the in-flow summary and remove the sticky sidebar that overlays checkout. */
body.woocommerce-checkout .checkout-order-summary-block-fill-wrapper {
	display: block !important;
	overflow: visible !important;
}
body.woocommerce-checkout .wc-block-checkout__sidebar {
	display: none !important;
}

.rakata-notification-account { max-width: 46rem; }
.rakata-notification-account__head { display:flex; gap:1rem; align-items:center; justify-content:space-between; flex-wrap:wrap; }
.rakata-notification-account button { min-height:2.75rem; padding:.55rem .85rem; font:inherit; }
.rakata-notification-account__filters { display:flex; gap:.5rem; margin:1rem 0; }
.rakata-notification-account__filters [aria-pressed="true"] { font-weight:700; text-decoration:underline; }
#rakata-notification-list { display:grid; gap:.6rem; }
.rakata-notification-item { display:grid; gap:.3rem; width:100%; min-height:4.5rem; padding:.8rem 1rem; border:1px solid #decdb9; border-radius:.75rem; color:inherit; background:#fffaf0; text-align:left; text-decoration:none; }
.rakata-notification-item.is-unread { border-left:4px solid #8d3f18; }
.rakata-notification-item strong,.rakata-notification-item span { overflow:hidden; text-overflow:ellipsis; }
.rakata-notification-item strong { white-space:nowrap; }
.rakata-notification-item span { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; }
.rakata-notification-item time { font-size:.875rem; }
#rakata-notification-pagination { display:flex; align-items:center; gap:.6rem; flex-wrap:wrap; margin-top:1rem; }
.rakata-notification-account :focus-visible { outline:3px solid #8d3f18; outline-offset:2px; }
@media (max-width:480px) { .rakata-notification-account__head { align-items:stretch; } .rakata-notification-account__head button { width:100%; } }
@media (prefers-reduced-motion:reduce) { .rakata-notification-item { transition:none; } }
