:root {
    --forum-blue-1: #0d6f9c;
    --forum-blue-2: #2087b9;
    --forum-blue-3: #0a5d87;
    --forum-border: #9fb2bf;
    --forum-row: #eef3f6;
    --forum-row-2: #e5edf2;
    --forum-text: #1f2f3a;
    --forum-link: #005c93;
    --forum-orange: #f28c28;
}

body {
    margin: 0;
    background: #d8dde2;
    color: var(--forum-text);
    font-family: Arial, Helvetica, sans-serif;
}

a { color: var(--forum-link); text-decoration: none; }
a:hover { text-decoration: underline; }
.page-wrap { max-width: 1860px; margin: 0 auto; }

.top-strip {
    background: linear-gradient(to bottom, #eef3f6 0%, #d7e0e7 100%);
    border-bottom: 1px solid var(--forum-border);
    color: #405664;
    font-size: 13px;
}
.top-link-button { background: none; border: 0; color: inherit; cursor: pointer; font: inherit; padding: 0; }
.top-link-button:hover, .top-link-button:focus { text-decoration: underline; }
.notification-count { background: #d73220; border-radius: 999px; color: #fff; font-size: 10px; font-weight: 700; height: 18px; line-height: 18px; min-width: 18px; padding: 0 4px; position: absolute; right: -11px; text-align: center; top: -9px; }
.notification-menu { border: 1px solid #92aabd; border-radius: 0; box-shadow: 0 .5rem 1.5rem rgba(23,50,69,.24); width: min(92vw, 390px); }
.notification-heading { background: #e7f0f6; border-bottom: 1px solid #b6c8d5; color: #173245; padding: 10px 12px; }
.notification-list { max-height: 360px; overflow-y: auto; }
.notification-item { border-bottom: 1px solid #d3e0e8; color: #173245 !important; display: flex; flex-direction: column; gap: 2px; padding: 10px 12px; text-decoration: none; }
.notification-item:hover, .notification-item.unread { background: #f3f8fb; }
.notification-item.unread { border-left: 4px solid #d26b00; }
.notification-item small { color: #617786; }
.live-status { align-items: center; display: inline-flex; font-weight: 700; }
.live-status.connecting { color: #8a6500; }
.live-status.online { color: #17743b; }
.live-status.offline { color: #a32929; }
.live-status.online i { animation: livePulse 1.4s ease-in-out infinite; }
@keyframes livePulse { 0%, 100% { opacity: .45; } 50% { opacity: 1; } }

.auction-hero {
    background: linear-gradient(135deg, #122d3d 0%, var(--forum-blue-3) 50%, var(--forum-blue-1) 100%);
    border-bottom: 4px solid #f28c28;
    color: #fff;
    box-shadow: 0 2px 6px rgba(0, 0, 0, .25);
}

.brand { font-size: 34px; font-weight: 800; letter-spacing: .4px; text-shadow: 0 2px 0 rgba(0,0,0,.35); }
.brand-subtitle { color: #d5e9f4; font-size: 14px; }
.forum-panel { border: 1px solid var(--forum-border); background: #f3f7fa; }

.forum-header {
    background: linear-gradient(to bottom, var(--forum-blue-2) 0%, var(--forum-blue-1) 55%, var(--forum-blue-3) 100%);
    border-bottom: 1px solid #0a4f73;
    color: #fff;
    font-weight: 700;
    padding: 10px 14px;
    text-shadow: 0 1px 0 rgba(0,0,0,.35);
}

.forum-toolbar { background: #e6edf2; border: 1px solid var(--forum-border); padding: 12px; }
.forum-btn {
    background: linear-gradient(to bottom, #3f9bcc 0%, #1375a2 55%, #0b5c85 100%);
    border: 2px solid #0d5b85;
    border-radius: 18px;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.35);
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    padding: 7px 14px;
}
.forum-btn:hover, .forum-btn:focus { background: linear-gradient(to bottom, #50a7d4 0%, #1a81af 55%, #0d648e 100%); color: #fff; text-decoration: none; }
.forum-btn-orange { background: linear-gradient(to bottom, #ffb25e 0%, #f28c28 55%, #c96f15 100%); border-color: #b96b16; }
.forum-input, .forum-select { background: #fff; border: 1px solid #8ea2b1; border-radius: 0; font-size: 13px; min-height: 38px; }
.forum-input:focus, .forum-select:focus { border-color: #3f85ab; box-shadow: 0 0 0 .2rem rgba(19,115,157,.15); }
.category-panel { top: 12px; }
.category-list .category-item { background: var(--forum-row); border-top: 1px solid var(--forum-border); color: #244b60; display: block; font-size: 13px; font-weight: 700; padding: 10px 12px; }
.category-list .category-item:hover, .category-list .category-item.active { background: #dce8ef; text-decoration: none; }
.category-count { color: #6b7e8b; display: block; font-size: 11px; font-weight: 400; margin-top: 3px; }

.section-caption {
    background: linear-gradient(to bottom, #d8e2e9 0%, #c5d2db 100%);
    border: 1px solid var(--forum-border);
    border-bottom: 0;
    color: #314d5d;
    font-size: 13px;
    font-weight: 700;
    padding: 9px 12px;
}

.lot-table { border-collapse: collapse; width: 100%; }
.lot-table thead th {
    background: linear-gradient(to bottom, var(--forum-blue-2) 0%, var(--forum-blue-1) 55%, var(--forum-blue-3) 100%);
    border: 1px solid #7a9aae;
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    padding: 10px 8px;
    text-align: center;
    white-space: nowrap;
}
.lot-table tbody td { background: var(--forum-row); border: 1px solid #a7bac7; font-size: 13px; padding: 9px 7px; vertical-align: middle; }
.lot-table tbody tr:nth-child(even) td { background: var(--forum-row-2); }
.lot-table tbody tr:hover td { background: #d7e8f2; }
.favorite-column, .favorite-cell { text-align: center; width: 44px; }
.favorite-toggle { color: #869aa8; cursor: pointer; font-size: 20px; }
.favorite-toggle.active { color: #e3a008; }
.lot-title { color: #0a5b87; font-size: 16px; font-weight: 700; }
.lot-meta { color: #647987; display: flex; flex-wrap: wrap; font-size: 11px; gap: 7px; margin-top: 5px; }
.lot-cell-center { text-align: center; white-space: nowrap; }
.lot-value { color: #0e5f89; display: block; font-size: 18px; font-weight: 700; }
.lot-label { color: #647987; display: block; font-size: 10px; margin-top: 3px; }
.lot-price-buy { color: #a95d11; }
.lot-ending { color: #c62828; font-size: 13px; }
.vip-badge { background: #f28c28; border: 1px solid #b96b16; color: #fff; font-size: 10px; margin-left: 5px; padding: 2px 5px; }
.empty-state { color: #617784; padding: 48px 20px; text-align: center; }
.forum-mini { color: #5d7280; font-size: 12px; }
.global-loader { align-items: center; background: rgba(7,43,63,.78); display: flex; inset: 0; justify-content: center; position: fixed; transition: opacity .2s ease; z-index: 2000; }
.global-loader.hidden { opacity: 0; pointer-events: none; }
.detail-block { background: #fff; border: 1px solid var(--forum-border); margin-bottom: 14px; padding: 14px; }
.detail-block h3 { color: #0a5d87; font-size: 15px; font-weight: 700; }
.detail-price { color: #0d6f9c; font-size: 30px; font-weight: 800; }
.bid-list { max-height: 310px; overflow: auto; }
.bid-row { border-bottom: 1px solid #d1dce3; display: flex; justify-content: space-between; padding: 7px 0; }
.question-row { border-bottom: 1px solid #d3e0e8; padding: 10px 0; }
.lot-gallery { display: grid; gap: 10px; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); }
.lot-gallery-image { background: #edf2f6; height: 230px; object-fit: contain; width: 100%; }
.modal-content { border-radius: 0; }

@media (max-width: 991.98px) {
    .category-panel { position: static !important; }
    .brand { font-size: 27px; }
}

@media (max-width: 767.98px) {
    .top-strip .page-wrap { align-items: flex-start !important; flex-direction: column; }
    .lot-table thead { display: none; }
    .lot-table, .lot-table tbody, .lot-table tr, .lot-table td { display: block; width: 100%; }
    .lot-table tr { border-bottom: 3px solid var(--forum-border); padding: 6px; }
    .lot-table tbody td { border: 0; display: flex; justify-content: space-between; padding: 6px 9px; text-align: right; }
    .lot-table tbody td::before { color: #5f7482; content: attr(data-label); font-size: 11px; font-weight: 700; padding-right: 12px; text-align: left; }
    .lot-table tbody td.lot-main-cell { display: block; text-align: left; }
    .lot-table tbody td.lot-main-cell::before { display: none; }
    .favorite-cell { display: none !important; }
}
