/* ELKA Club – front end. Colours inherit from the theme where possible. */
.elka-club { --elka-accent: #c8a27a; --elka-muted: #6f6f6f; --elka-line: rgba(0,0,0,.1); }
.elka-club-card { border: 1px solid var(--elka-line); border-radius: 8px; padding: 20px 22px; margin: 0 0 24px; }
.elka-club-card h3 { margin-top: 0; }
.elka-club-balance__label { font-size: .85em; color: var(--elka-muted); text-transform: uppercase; letter-spacing: .06em; }
.elka-club-balance__value { font-size: 2.4em; font-weight: 700; line-height: 1.15; margin: 2px 0 12px; }
.elka-club-balance__value span { font-size: .4em; font-weight: 400; }
.elka-club-progress { height: 10px; background: rgba(0,0,0,.07); border-radius: 6px; overflow: hidden; margin: 0 0 10px; }
.elka-club-progress span { display: block; height: 100%; background: var(--elka-accent); border-radius: 6px; transition: width .4s ease; }
.elka-club-balance__hint { margin: 0 0 8px; }
.elka-club-rules, .elka-club-muted { color: var(--elka-muted); font-size: .92em; }
.elka-club-benefits { margin: 0 0 16px 1.2em; }
.elka-club-benefits li { margin-bottom: 4px; }
.elka-club-vouchers { display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 12px; margin: 0 0 10px; }
.elka-club-voucher { border: 2px dashed var(--elka-accent); border-radius: 8px; padding: 14px 16px; }
.elka-club-voucher--used, .elka-club-voucher--expired { border-color: var(--elka-line); opacity: .6; }
.elka-club-voucher__value { font-weight: 700; font-size: 1.15em; }
.elka-club-voucher__code { font-family: ui-monospace, Menlo, Consolas, monospace; font-size: 1.25em; letter-spacing: .08em; margin: 4px 0; user-select: all; }
.elka-club-voucher__meta { font-size: .85em; color: var(--elka-muted); }
.elka-club-history .elka-club-num { text-align: right; white-space: nowrap; }
.elka-club-history .is-plus { color: #2e7d32; }
.elka-club-history .is-minus { color: #b23b3b; }
.elka-club-inline-form { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.elka-club-inline-form p { flex-basis: 100%; margin: 0; }
.elka-club-inline-form input[type=email], .elka-club-inline-form input[type=date] { flex: 1 1 200px; max-width: 320px; }
.elka-club-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0 14px; }
@media (max-width: 560px) { .elka-club-grid { grid-template-columns: 1fr; } }
.elka-club-hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.elka-club-msg { padding: 10px 14px; border-radius: 6px; margin: 0 0 14px; }
.elka-club-msg--success { background: #edf7ee; color: #1e5b22; }
.elka-club-msg--error { background: #fbeceb; color: #8a2b2b; }
.elka-club-product-points { color: #8a6a48; font-size: .95em; margin: 4px 0 14px; }
.elka-club-cart-points { border-left: 3px solid #c8a27a; background: rgba(200,162,122,.08); padding: 10px 14px; margin: 0 0 18px; }
