/* Dao Stripe Buy Buttons — frontend */
.dao-sb{
	--dao-accent:#1f6f5c;
	--dao-accent-soft:color-mix(in srgb, var(--dao-accent) 8%, #fff);
	--dao-accent-line:color-mix(in srgb, var(--dao-accent) 32%, #fff);
	--dao-ink:#1a1a1a;
	--dao-muted:#6b7280;
	--dao-border:#e3e5e9;
	--dao-radius:14px;
	max-width:560px;
	margin:1.25em 0;
	font-family:inherit;
	color:var(--dao-ink);
	-webkit-font-smoothing:antialiased;
}
.dao-sb *{box-sizing:border-box;}

.dao-sb-heading{
	font-size:.95rem;
	font-weight:600;
	letter-spacing:.01em;
	margin:0 0 .6em;
}

/* ---- Tiles ---- */
.dao-sb-tiles{display:grid;gap:10px;grid-template-columns:1fr;}
@media(min-width:520px){.dao-sb-tiles{grid-template-columns:repeat(3,1fr);}}

.dao-sb-tile{
	position:relative;
	display:flex;
	flex-direction:column;
	gap:2px;
	padding:16px 14px 14px;
	border:1.5px solid var(--dao-border);
	border-radius:var(--dao-radius);
	background:#fff;
	cursor:pointer;
	transition:border-color .15s ease, box-shadow .15s ease, background .15s ease, transform .05s ease;
	min-height:96px;
	justify-content:flex-end;
}
.dao-sb-tile:hover{border-color:var(--dao-accent-line);}
.dao-sb-tile:active{transform:translateY(1px);}
.dao-sb-tile.is-selected{
	border-color:var(--dao-accent);
	background:var(--dao-accent-soft);
	box-shadow:0 0 0 1px var(--dao-accent) inset;
}
.dao-sb-tile:focus-visible{outline:2px solid var(--dao-accent);outline-offset:2px;}

.dao-sb-check{
	position:absolute;top:12px;right:12px;
	width:18px;height:18px;border-radius:50%;
	border:1.5px solid var(--dao-border);
	background:#fff;transition:.15s ease;
}
.dao-sb-tile.is-selected .dao-sb-check{
	border-color:var(--dao-accent);background:var(--dao-accent);
}
.dao-sb-tile.is-selected .dao-sb-check::after{
	content:"";position:absolute;left:5px;top:2px;width:5px;height:9px;
	border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg);
}

.dao-sb-tile-main{display:flex;flex-direction:column;gap:1px;}
.dao-sb-label{font-weight:650;font-size:1rem;line-height:1.2;padding-right:22px;}
.dao-sb-sub{font-size:.72rem;color:var(--dao-muted);text-transform:uppercase;letter-spacing:.04em;}
.dao-sb-tile-price{margin-top:6px;display:flex;align-items:baseline;gap:6px;flex-wrap:wrap;}
.dao-sb-price{font-weight:700;font-size:1.05rem;}
.dao-sb-compare{color:var(--dao-muted);font-size:.85rem;text-decoration:line-through;}

.dao-sb-badges{position:absolute;top:-9px;left:12px;display:flex;gap:6px;}
.dao-sb-badge{
	font-size:.62rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;
	padding:3px 8px;border-radius:999px;line-height:1;white-space:nowrap;
}
.dao-sb-badge--best{background:var(--dao-accent);color:#fff;}
.dao-sb-badge--save{background:#fef3c7;color:#92600a;border:1px solid #f6d788;}

/* ---- Dropdown ---- */
.dao-sb-dd-label{display:block;font-size:.8rem;color:var(--dao-muted);margin:0 0 6px;}
.dao-sb-dd-wrap{position:relative;}
.dao-sb-select{
	width:100%;padding:13px 40px 13px 14px;font-size:1rem;color:var(--dao-ink);
	border:1.5px solid var(--dao-border);border-radius:var(--dao-radius);background:#fff;
	appearance:none;-webkit-appearance:none;cursor:pointer;
	background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2.5'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
	background-repeat:no-repeat;background-position:right 14px center;
}
.dao-sb-select:focus-visible{outline:2px solid var(--dao-accent);outline-offset:2px;border-color:var(--dao-accent);}
.dao-sb-dd-meta{min-height:1.2em;margin-top:8px;display:flex;gap:8px;align-items:center;}
.dao-sb-dd-meta .dao-sb-badge{position:static;}

/* ---- Buy button ---- */
.dao-sb-btn{
	display:flex;align-items:center;justify-content:center;gap:8px;
	width:100%;margin-top:14px;padding:15px 20px;
	background:var(--dao-accent);color:#fff !important;
	font-size:1.05rem;font-weight:700;line-height:1.1;text-align:center;text-decoration:none;
	border-radius:var(--dao-radius);border:none;cursor:pointer;
	box-shadow:0 1px 2px rgba(0,0,0,.08);
	transition:filter .15s ease, transform .05s ease, box-shadow .15s ease;
}
.dao-sb-btn:hover{filter:brightness(.94);box-shadow:0 4px 14px color-mix(in srgb, var(--dao-accent) 30%, transparent);color:#fff !important;}
.dao-sb-btn:active{transform:translateY(1px);}
.dao-sb-btn:focus-visible{outline:2px solid var(--dao-accent);outline-offset:2px;}
.dao-sb-btn.is-disabled{opacity:.5;pointer-events:none;}
.dao-sb-btn-price{font-weight:800;opacity:.95;}
.dao-sb-btn-price::before{content:"·";margin-right:6px;opacity:.6;font-weight:400;}

/* ---- Admin-only notice on frontend ---- */
.dao-sb-notice{padding:10px 14px;border:1px dashed #d1a; color:#a00;border-radius:8px;font-size:.85rem;}

/* Injected UK-only tiles fade in */
.dao-sb-tile[data-injected]{animation:daoFade .25s ease;}
@keyframes daoFade{from{opacity:0;transform:translateY(4px);}to{opacity:1;transform:none;}}

@media(prefers-reduced-motion:reduce){
	.dao-sb-tile,.dao-sb-btn{transition:none;}
	.dao-sb-tile[data-injected]{animation:none;}
}
