.deal-page {
    --deal-orange: #f05223;
    --deal-orange-soft: #fff2ec;
    --deal-ink: #172033;
    --deal-muted: #758096;
    --deal-line: #e9edf3;
    max-width: 760px;
    margin: 0 auto;
    padding: 24px 12px 96px;
}

.deal-page__hero {
    padding: 24px;
    margin-bottom: 18px;
    color: #fff;
    border-radius: 22px;
    background: linear-gradient(135deg, #ff6a2b, #ed3e1d);
    box-shadow: 0 18px 40px rgba(240, 82, 35, .2);
}

.deal-page__eyebrow { font-size: 12px; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; opacity: .86; }
.deal-page__hero h1 { margin: 8px 0 5px; font-size: clamp(25px, 5vw, 34px); font-weight: 900; }
.deal-page__hero p { margin: 0; opacity: .92; }
.deal-feed-filter { display:grid; grid-template-columns:minmax(0,1fr) minmax(150px,190px) auto auto; gap:9px; align-items:center; margin:0 0 14px; padding:10px; border:1px solid var(--deal-line); border-radius:16px; background:#fff; box-shadow:0 8px 24px rgba(25,38,63,.06); }
.deal-feed-filter__search { min-width:0; display:flex; align-items:center; gap:8px; padding:0 12px; height:42px; border:1px solid #dfe5ee; border-radius:12px; background:#fbfcfe; color:var(--deal-muted); }
.deal-feed-filter__search input { min-width:0; flex:1; height:100%; padding:0; border:0; outline:0; background:transparent; color:#293248; font-size:14px; }
.deal-feed-filter select { width:100%; height:42px; padding:0 11px; color:#293248; border:1px solid #dfe5ee; border-radius:12px; background:#fff; font-weight:750; }
.deal-feed-filter button, .deal-feed-filter__reset { min-height:42px; display:inline-flex; align-items:center; justify-content:center; gap:7px; padding:0 14px; border-radius:12px; font-size:14px; font-weight:850; text-decoration:none; white-space:nowrap; }
.deal-feed-filter button { color:#fff; border:0; background:var(--deal-orange); cursor:pointer; }
.deal-feed-filter button:hover { background:#df4319; }
.deal-feed-filter__reset { color:var(--deal-orange); background:var(--deal-orange-soft); }
.deal-feed-filter__reset:hover { color:var(--deal-orange); text-decoration:none; }

.deal-card {
    overflow: visible;
    margin-bottom: 18px;
    border: 1px solid var(--deal-line);
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 9px 28px rgba(25, 38, 63, .07);
}

.deal-card__head { display: flex; align-items: center; gap: 11px; padding: 16px 17px 11px; }
.deal-card__avatar { width: 43px; height: 43px; display: grid; place-items: center; flex: 0 0 auto; overflow:hidden; border:2px solid #fff; border-radius:50%; background:#f2f4f8; box-shadow:0 2px 9px rgba(23,32,51,.14); }
.deal-card__avatar img { width:100%; height:100%; display:block; object-fit:cover; }
.deal-card__author { min-width: 0; flex: 1; }
.deal-card__author strong { display: block; color: var(--deal-ink); font-size: 15px; font-weight: 900; }
.deal-card__author-meta { display:flex; align-items:center; flex-wrap:wrap; gap:5px; margin-top:2px; color:var(--deal-muted); font-size:12px; }
.deal-card__author time { color:inherit; font-size:inherit; }
.deal-card__pin { padding: 5px 9px; color: var(--deal-orange); border-radius: 999px; background: var(--deal-orange-soft); font-size: 11px; font-weight: 900; }
.deal-card__content { padding: 2px 17px 14px; color: #293248; font-size: 15px; line-height: 1.65; white-space: pre-wrap; overflow-wrap: anywhere; }
.deal-card__content a { color: #e8421e; font-weight: 700; text-decoration: none; }
.deal-card__content a:hover { text-decoration: underline; }

.deal-card__media { display: grid; gap: 3px; background: #f4f6f9; }
.deal-card__media[data-count="1"] { grid-template-columns: 1fr; }
.deal-card__media:not([data-count="1"]) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.deal-card__media .deal-image-button { min-height: 180px; max-height: 470px; overflow: hidden; padding: 0; border: 0; background: #eef1f5; cursor: zoom-in; }
.deal-card__media img { width: 100%; height: 100%; min-height: 180px; max-height: 470px; object-fit: cover; display: block; transition: transform .2s ease; }
.deal-card__media .deal-image-button:hover img { transform: scale(1.015); }
.deal-card__media[data-count="1"] img { object-fit: contain; background: #f7f8fa; }

.deal-card__stats { padding: 11px 17px 8px; color: var(--deal-muted); font-size: 13px; }
.deal-card__actions { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; padding: 7px 10px 11px; border-top: 1px solid var(--deal-line); }
.deal-action { min-height: 42px; display: flex; align-items: center; justify-content: center; gap: 8px; width: 100%; padding: 8px 12px; color: #59647a; border: 0; border-radius: 12px; background: transparent; font-size: 14px; font-weight: 850; cursor: pointer; list-style: none; text-decoration: none; }
.deal-action:hover { color: var(--deal-orange); background: var(--deal-orange-soft); text-decoration: none; }
.deal-action.is-liked { color: var(--deal-orange); background: var(--deal-orange-soft); }
.deal-action:disabled { cursor: default; opacity: .75; }
.deal-empty { padding: 45px 25px; text-align: center; border: 1px dashed #d7dce5; border-radius: 20px; background: #fff; }
.deal-empty i { color: var(--deal-orange); font-size: 38px; }
.deal-pagination { display: flex; align-items: center; justify-content: center; gap: 10px; margin-top: 22px; }
.deal-pagination a, .deal-pagination span { padding: 9px 14px; border-radius: 11px; font-weight: 800; }
.deal-pagination a { color: var(--deal-orange); background: var(--deal-orange-soft); text-decoration: none; }
.deal-pagination span { color: var(--deal-muted); background: #f3f5f8; }
.deal-infinite-scroll { min-height:54px; display:flex; align-items:center; justify-content:center; gap:9px; padding:8px 0 4px; color:var(--deal-muted); font-size:13px; font-weight:750; opacity:0; transition:opacity .18s ease; }
.deal-infinite-scroll.is-loading, .deal-infinite-scroll.is-error { opacity:1; }
.deal-infinite-scroll.is-loading i { animation:deal-load-spin .8s linear infinite; }
.deal-infinite-scroll.is-error { color:#b45309; }
.deal-infinite-scroll.is-error i { display:none; }
@keyframes deal-load-spin { to { transform:rotate(360deg); } }
.deal-latest-button {
    position: fixed;
    z-index: 1040;
    top: 78px;
    left: 50%;
    min-height: 38px;
    padding: 8px 16px;
    color: #fff;
    border: 0;
    border-radius: 999px;
    background: #f05223;
    box-shadow: 0 12px 30px rgba(240, 82, 35, .32);
    font-size: 13px;
    font-weight: 900;
    transform: translateX(-50%);
    cursor: pointer;
}
.deal-latest-button:hover { background:#df4319; }
.deal-latest-button[hidden] { display:none; }
.deal-back { display: inline-flex; align-items: center; gap: 7px; margin-bottom: 14px; color: var(--deal-orange); font-weight: 850; text-decoration: none; }
.deal-lightbox { position:fixed; z-index:10050; inset:0; display:none; align-items:center; justify-content:center; padding:24px; background:rgba(7,12,24,.92); }
.deal-lightbox.is-open { display:flex; }
.deal-lightbox__image { display:block; max-width:min(96vw,1400px); max-height:92vh; width:auto; height:auto; object-fit:contain; border-radius:8px; box-shadow:0 20px 70px rgba(0,0,0,.45); }
.deal-lightbox__close { position:fixed; top:14px; right:16px; width:44px; height:44px; display:grid; place-items:center; padding:0; color:#fff; border:0; border-radius:50%; background:rgba(255,255,255,.16); font-size:24px; cursor:pointer; }
.deal-lightbox__close:hover { background:rgba(255,255,255,.28); }
body.deal-lightbox-open { overflow:hidden; }

@media (max-width: 575px) {
    .deal-page { padding: 14px 8px 96px; }
    .deal-page__hero { padding: 20px 18px; border-radius: 18px; }
    .deal-feed-filter { grid-template-columns:1fr; padding:9px; }
    .deal-feed-filter button, .deal-feed-filter__reset { width:100%; }
    .deal-card { border-radius: 16px; }
    .deal-card__media .deal-image-button, .deal-card__media img { min-height: 140px; max-height: 390px; }
    .deal-action { padding-left: 6px; padding-right: 6px; font-size: 12px; }
    .deal-latest-button { top: 66px; }
    .deal-lightbox { padding:10px; }
}
