/* KokoriKoi – Enchères. Couleurs surchargeables depuis Divi (Options du thème > CSS personnalisé). */
.kke-box {
	--kke-accent: #b3261e;
	--kke-ok: #1e7a3c;
	--kke-warn: #b3261e;
	--kke-border: rgba(0, 0, 0, .12);
	--kke-soft: rgba(0, 0, 0, .04);
	border: 1px solid var(--kke-border);
	border-radius: 8px;
	padding: 20px;
	margin: 0 0 24px;
	display: grid;
	gap: 14px;
}
.kke-box [hidden] { display: none !important; }
.kke-box__head { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; }
.kke-box__status { font-size: .8em; text-transform: uppercase; letter-spacing: .06em; font-weight: 700; }
.kke-box__timer { font-variant-numeric: tabular-nums; font-weight: 700; }
.kke-box__timer.is-urgent { color: var(--kke-accent); }
.kke-box__price { display: grid; gap: 2px; }
.kke-box__price-label { font-size: .85em; opacity: .75; }
.kke-box__price-value { font-size: 2em; font-weight: 800; line-height: 1.1; color: var(--kke-accent); }
.kke-box__meta { font-size: .85em; opacity: .75; }
.kke-box__reserve { font-size: .85em; font-weight: 600; }
.kke-box__reserve.is-met { color: var(--kke-ok); }
.kke-box__reserve.is-unmet { color: var(--kke-warn); }
.kke-box__me:empty { display: none; }
.kke-box__me, .kke-box__msg { padding: 10px 12px; border-radius: 6px; background: var(--kke-soft); font-weight: 600; }
.kke-box__me--ok, .kke-box__msg--ok { color: var(--kke-ok); background: rgba(30, 122, 60, .08); }
.kke-box__me--warn, .kke-box__msg--warn { color: var(--kke-warn); background: rgba(179, 38, 30, .08); }
.kke-box__form label { display: block; font-weight: 600; margin-bottom: 6px; }
.kke-box__row { display: flex; gap: 8px; flex-wrap: wrap; }
.kke-box__row input { flex: 1 1 140px; min-width: 0; padding: 10px; font-size: 1.1em; }
.kke-box__hint { display: block; margin-top: 6px; opacity: .75; }
.kke-box__login small { display: block; margin-top: 6px; opacity: .75; }
.kke-box__claim { text-align: center; }
.kke-box__history summary { cursor: pointer; font-weight: 600; }
.kke-box__history ol { list-style: none; margin: 10px 0 0; padding: 0; max-height: 260px; overflow: auto; }
.kke-box__history li { display: grid; grid-template-columns: 1fr auto auto; gap: 10px; padding: 6px 0; border-bottom: 1px solid var(--kke-border); font-size: .9em; }
.kke-box__history time { opacity: .6; font-variant-numeric: tabular-nums; }

.kke-price__label { font-weight: 400; opacity: .8; }
.kke-badge { display: inline-block; margin-top: 6px; padding: 3px 8px; border-radius: 4px; background: #b3261e; color: #fff; font-size: .75em; font-weight: 700; }
.kke-badge--soon { background: #333; }

.kke-grid { --kke-cols: 3; list-style: none; margin: 0; padding: 0; display: grid; gap: 24px; grid-template-columns: repeat(var(--kke-cols), minmax(0, 1fr)); }
.kke-card a { display: grid; gap: 6px; text-decoration: none; color: inherit; }
.kke-card img { width: 100%; height: auto; border-radius: 6px; }
.kke-card__title { margin: 4px 0 0; font-size: 1.1em; }
.kke-card__time { font-size: .85em; opacity: .75; }
.kke-card .button { justify-self: start; }
@media (max-width: 980px) { .kke-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) { .kke-grid { grid-template-columns: 1fr; } }
