/* Buyamto cookie choices — banner + settings panel (uses the theme tokens in style.css). */
.by-cc[hidden], .by-cc-panel[hidden] { display: none !important; }

.by-cc { position: fixed; left: 16px; right: 16px; bottom: 16px; z-index: 100010; display: flex; justify-content: center; pointer-events: none; opacity: 0; transform: translateY(12px); transition: opacity .25s ease, transform .25s ease; }
.by-cc.is-in { opacity: 1; transform: none; }
.by-cc__inner { pointer-events: auto; display: flex; align-items: center; gap: 18px; width: 100%; max-width: 1080px; padding: 18px 20px; background: var(--by-surface, #fff); color: var(--by-ink, #1A1815); border: 1px solid var(--by-line, #E7E2D9); border-radius: var(--by-r, 24px); box-shadow: var(--by-shadow-lg, 0 30px 60px -30px rgba(0,0,0,.35)); }
.by-cc__icon, .by-cc-row__icon { flex: none; display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 999px; background: #FBEADF; color: var(--by-orange, #C94F0A); }
.by-cc__text { flex: 1 1 auto; min-width: 0; }
.by-cc__text p { margin: 0; font-size: .92em; line-height: 1.5; color: var(--by-ink-soft, #4B463F); }
.by-cc__text .by-cc__title { margin-bottom: 2px; font-size: 1em; font-weight: 700; color: var(--by-ink, #1A1815); }
.by-cc__text a, .by-cc-panel__note a { color: var(--by-teal, #0E7C86); text-decoration: underline; text-underline-offset: 2px; white-space: nowrap; }
.by-cc__buttons, .by-cc-panel__buttons { flex: none; display: flex; flex-wrap: wrap; gap: 8px; }

.by-cc__btn { margin: 0; min-height: 44px; padding: 0 20px; border-radius: 999px; font: inherit; font-size: .92em; font-weight: 700; line-height: 1; letter-spacing: 0; text-transform: none; cursor: pointer; transition: background-color .15s ease, color .15s ease, border-color .15s ease; }
.by-cc__btn--main { background: var(--by-orange, #C94F0A); border: 2px solid var(--by-orange, #C94F0A); color: #fff; }
.by-cc__btn--main:hover { background: var(--by-orange-dark, #A94008); border-color: var(--by-orange-dark, #A94008); color: #fff; }
.by-cc__btn--line { background: transparent; border: 2px solid var(--by-ink, #1A1815); color: var(--by-ink, #1A1815); }
.by-cc__btn--line:hover { background: var(--by-ink, #1A1815); color: #fff; }
.by-cc__btn--ghost { background: transparent; border: 2px solid transparent; color: var(--by-teal, #0E7C86); text-decoration: underline; text-underline-offset: 3px; }
.by-cc__btn--ghost:hover { color: var(--by-orange, #C94F0A); }
.by-cc__btn:focus-visible, .by-cc-state:focus-visible, .by-cc-panel__close:focus-visible { outline: 3px solid rgba(14, 124, 134, .45); outline-offset: 2px; }

/* Settings panel */
html.by-cc-open { overflow: hidden; }
.by-cc-panel { position: fixed; inset: 0; z-index: 100020; display: flex; align-items: center; justify-content: center; padding: 16px; background: rgba(26, 24, 21, .58); }
.by-cc-panel__box { position: relative; width: 100%; max-width: 600px; max-height: calc(100vh - 32px); overflow-y: auto; padding: 28px 28px 22px; background: var(--by-surface, #fff); color: var(--by-ink, #1A1815); border-radius: var(--by-r, 24px); box-shadow: var(--by-shadow-lg, 0 30px 60px -30px rgba(0,0,0,.35)); }
.by-cc-panel__close { position: absolute; top: 14px; right: 14px; width: 40px; height: 40px; min-height: 0; margin: 0; padding: 0; border: 0; border-radius: 999px; background: var(--by-warm, #F1EDE6); color: var(--by-ink, #1A1815); font-size: 26px; line-height: 1; cursor: pointer; display: flex; align-items: center; justify-content: center; }
.by-cc-panel__close:hover { background: var(--by-ink, #1A1815); color: #fff; }
.by-cc-panel__title { margin: 0 48px 6px 0; font-size: 1.35em; font-weight: 800; }
.by-cc-panel__intro { margin: 0 0 16px; font-size: .92em; color: var(--by-ink-soft, #4B463F); }

.by-cc-row { display: flex; align-items: center; gap: 14px; padding: 14px; margin-bottom: 10px; border: 1px solid var(--by-line, #E7E2D9); border-radius: var(--by-r-sm, 14px); background: var(--by-bg, #FAFAF8); }
.by-cc-row__icon { width: 40px; height: 40px; }
.by-cc-row__icon--req { background: #E9F0E4; color: #3F6B2A; }
.by-cc-row__icon--pref { background: #E1F1F2; color: var(--by-teal, #0E7C86); }
.by-cc-row__icon--ref { background: #FBEADF; color: var(--by-orange, #C94F0A); }
.by-cc-row__text { flex: 1 1 auto; min-width: 0; }
.by-cc-row__text p { margin: 0; font-size: .86em; line-height: 1.45; color: var(--by-ink-soft, #4B463F); }
.by-cc-row__text .by-cc-row__name { margin-bottom: 2px; font-size: 1em; font-weight: 700; color: var(--by-ink, #1A1815); }

/* On / Off state: icon + plain words */
.by-cc-state { flex: none; display: inline-flex; align-items: center; gap: 6px; min-width: 84px; min-height: 40px; margin: 0; padding: 0 14px; justify-content: center; border-radius: 999px; border: 2px solid var(--by-line, #E7E2D9); background: var(--by-surface, #fff); color: var(--by-grey, #8B857B); font: inherit; font-size: .86em; font-weight: 700; line-height: 1; letter-spacing: 0; text-transform: none; cursor: pointer; transition: background-color .15s ease, color .15s ease, border-color .15s ease; }
.by-cc-state.is-on { border-color: var(--by-teal, #0E7C86); background: var(--by-teal, #0E7C86); color: #fff; }
.by-cc-state.is-locked { border-color: #CFE0C5; background: #E9F0E4; color: #3F6B2A; cursor: default; }

.by-cc-panel__note { margin: 6px 0 16px; font-size: .86em; color: var(--by-ink-soft, #4B463F); }
.by-cc-panel__buttons { justify-content: flex-end; }

@media (max-width: 849px) {
	.by-cc__inner { flex-wrap: wrap; gap: 12px; padding: 16px; }
	.by-cc__icon { display: none; }
	.by-cc__buttons { width: 100%; }
	.by-cc__buttons .by-cc__btn--main, .by-cc__buttons .by-cc__btn--line { flex: 1 1 0; }
	.by-cc__buttons .by-cc__btn--ghost { order: 3; width: 100%; min-height: 36px; }
}
@media (max-width: 549px) {
	.by-cc { left: 10px; right: 10px; bottom: 10px; }
	.by-cc-panel { padding: 10px; align-items: flex-end; }
	.by-cc-panel__box { padding: 22px 16px 16px; max-height: calc(100vh - 20px); }
	.by-cc-row { align-items: flex-start; flex-wrap: wrap; padding: 12px; }
	.by-cc-row__icon { width: 36px; height: 36px; }
	.by-cc-row__text { flex-basis: calc(100% - 50px); }
	.by-cc-state { margin-left: 50px; }
	.by-cc-panel__buttons .by-cc__btn { flex: 1 1 100%; }
}
@media (prefers-reduced-motion: reduce) { .by-cc { transition: none; } }
/* The Cookie Policy popup opens on top of the settings panel. */
html body .buyamto-modal { z-index: 100030; }
