/* Cyberhub UX-шар (жовтень 2026): доповнює style.css, нічого не ламає. */

html { scroll-padding-top: calc(var(--header-h, 72px) + 56px); }

/* ---- доступність ---- */
a:focus-visible, button:focus-visible, summary:focus-visible, .btn:focus-visible {
    outline: 2px solid var(--accent-bright, #ff8b61);
    outline-offset: 3px;
    border-radius: 8px;
}
@media (scripting: none) { .reveal { opacity: 1 !important; transform: none !important; } }

/* ---- смуга акцій під hero ---- */
.promo-strip { padding: 1.25rem 0 0.5rem; }
.promo-strip__grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 0.9rem;
}
.promo-strip__item {
    display: flex;
    gap: 0.85rem;
    align-items: flex-start;
    padding: 1rem 1.1rem;
    border-radius: var(--radius-lg, 20px);
    background: var(--bg-card);
    border: 1px solid var(--border);
    color: inherit;
    text-decoration: none;
    transition: transform var(--transition), border-color var(--transition), background var(--transition);
}
.promo-strip__item:hover { transform: translateY(-2px); border-color: var(--accent-dim); background: var(--bg-card-hover); }
.promo-strip__item--featured { border-color: rgba(255, 111, 61, 0.45); background: linear-gradient(135deg, rgba(255, 111, 61, 0.14), rgba(255, 111, 61, 0.03)); }
.promo-strip__icon { font-size: 1.6rem; line-height: 1; flex: 0 0 auto; }
.promo-strip__badge {
    display: inline-block;
    padding: 0.1rem 0.55rem;
    margin-bottom: 0.3rem;
    border-radius: 999px;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    color: #1a0b04;
    background: var(--accent);
}
.promo-strip__title { font-weight: 700; font-size: 1rem; line-height: 1.25; }
.promo-strip__text { margin-top: 0.2rem; font-size: 0.86rem; color: var(--text-muted); line-height: 1.4; }
.promo-strip__until { margin-top: 0.35rem; font-size: 0.78rem; color: var(--gold, #ffb347); font-weight: 600; }

/* ---- «Що нового» ---- */
.whats-new__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 1rem; margin-top: 1.5rem; }
.whats-new__card {
    display: flex; flex-direction: column; gap: 0.5rem; padding: 1.25rem;
    border-radius: var(--radius-lg, 20px); border: 1px solid var(--border); background: var(--bg-card);
    color: inherit; text-decoration: none; transition: transform var(--transition), border-color var(--transition);
}
.whats-new__card:hover { transform: translateY(-3px); border-color: var(--accent-dim); }
.whats-new__date { font-size: 0.78rem; color: var(--text-muted); text-transform: uppercase; letter-spacing: 0.06em; }
.whats-new__title { font-size: 1.05rem; font-weight: 700; line-height: 1.3; }
.whats-new__excerpt { font-size: 0.9rem; color: var(--text-muted); line-height: 1.45; }
.whats-new__more { margin-top: auto; color: var(--accent-bright, #ff8b61); font-weight: 700; font-size: 0.9rem; }

/* ---- ціни: підсвічування «сьогодні» ---- */
tr.is-today td, tr.is-today th { background: rgba(255, 111, 61, 0.1); }
tr.is-today .price-table__period::after,
.price-card.is-today .price-card__period::after {
    content: 'сьогодні';
    margin-left: 0.5rem;
    padding: 0.05rem 0.5rem;
    border-radius: 999px;
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: #1a0b04;
    background: var(--accent);
    vertical-align: middle;
}
.price-card.is-today { border-color: rgba(255, 111, 61, 0.6); box-shadow: 0 0 0 1px rgba(255, 111, 61, 0.25) inset; }

/* ---- картки зон: однакова висота, ціна внизу ---- */
.cards--zones .card--zone { display: flex; flex-direction: column; }
.cards--zones .card--zone .card__price { margin-top: auto; padding-top: 0.75rem; }

/* ---- мобільна підгонка ---- */
@media (max-width: 480px) {
    .promo-strip__item { padding: 0.85rem 0.95rem; }
    .whats-new__card { padding: 1rem; }
}
