:root {
    --forum-blue-1: #0d6f9c;
    --forum-blue-2: #2087b9;
    --forum-blue-3: #0a5d87;
    --forum-navy: #12364b;
    --forum-border: #9fb2bf;
    --forum-row: #eef3f6;
    --forum-row-2: #e5edf2;
    --forum-text: #1f2f3a;
    --forum-muted: #647987;
    --forum-link: #075d88;
    --forum-orange: #f28c28;
    --forum-orange-dark: #c96f15;
    --surface: #f8fafb;
    --shadow: 0 8px 24px rgba(23, 50, 69, .12);
}

.topic-post { border-top: 1px solid #c8d5dd; }
.topic-post:first-child { border-top: 0; }
.topic-post__meta { align-items: center; background: linear-gradient(to bottom, #e5edf2, #d7e2e8); color: #39586a; display: flex; font-size: 12px; justify-content: space-between; padding: 10px 16px; }
.topic-post__body { color: #324d5c; font-size: 14px; line-height: 1.65; min-height: 100px; overflow-wrap: anywhere; padding: 18px; }
.topic-post__body img { height: auto; max-width: 100%; }
.topic-post__body blockquote { background: #edf2f5; border-left: 3px solid var(--forum-blue-1); margin: 12px 0; padding: 10px 14px; }
.post-panel label { color: #304f61; display: block; font-size: 12px; font-weight: 700; margin-bottom: 6px; }
.contact-card h2 { color: #244b60; }

* { box-sizing: border-box; }
html { min-width: 320px; scroll-behavior: smooth; }
body { margin: 0; background: #d8dde2; color: var(--forum-text); font-family: Arial, Helvetica, sans-serif; }
button, input, select, textarea { font-family: inherit; }
button { touch-action: manipulation; }
a { color: var(--forum-link); text-decoration: none; }
a:hover { color: #043e5c; }
.page-wrap { background: #edf1f4; box-shadow: 0 0 24px rgba(20, 43, 57, .18); margin: 0 auto; max-width: 1860px; min-height: 100vh; }
.container-fluid { max-width: 1540px; }
.app-view { min-height: 540px; }

.app-loading { align-items: center; background: rgba(12, 39, 55, .92); display: flex; inset: 0; justify-content: center; opacity: 1; position: fixed; transition: opacity .25s ease, visibility .25s ease; visibility: visible; z-index: 3000; }
.app-loading.is-hidden { opacity: 0; visibility: hidden; }
.app-loading__card { align-items: center; background: #f4f8fa; border: 1px solid #9fb2bf; box-shadow: 0 20px 60px rgba(0,0,0,.32); display: flex; flex-direction: column; gap: 9px; min-width: 260px; padding: 28px 34px; text-align: center; }
.app-loading__card .spinner-border { color: var(--forum-orange); height: 2.5rem; width: 2.5rem; }
.app-loading__card strong { color: var(--forum-navy); font-size: 17px; }
.app-loading__card span { color: var(--forum-muted); font-size: 12px; }

.top-strip { background: linear-gradient(to bottom, #f2f6f8, #d9e2e8); border-bottom: 1px solid var(--forum-border); color: #405664; font-size: 13px; }
.top-brand, .top-links button { background: none; border: 0; color: inherit; padding: 0; }
.top-brand { font-weight: 700; }
.top-links { align-items: center; display: flex; flex-wrap: wrap; gap: 10px 18px; }
.top-links a, .top-links > button { color: #405664; }
.top-links a:hover, .top-links button:hover { color: var(--forum-link); text-decoration: underline; }
.top-counter { background: #d73220; border-radius: 99px; color: #fff; display: inline-block; font-size: 10px; font-weight: 700; line-height: 17px; margin-left: 2px; min-width: 17px; padding: 0 4px; text-align: center; }
.language-switch { border: 1px solid #a7b8c4; display: inline-flex; }
.language-switch button { background: #f8fafb; border: 0; border-right: 1px solid #a7b8c4; color: #4c6574; font-size: 11px; font-weight: 700; padding: 4px 7px; }
.language-switch button:last-child { border-right: 0; }
.language-switch button.active { background: var(--forum-blue-1); color: #fff; }

.board-hero { background: linear-gradient(135deg, #122d3d 0%, var(--forum-blue-3) 48%, var(--forum-blue-1) 100%); border-bottom: 4px solid var(--forum-orange); box-shadow: 0 2px 6px rgba(0,0,0,.25); color: #fff; }
.brand-lockup { align-items: center; background: none; border: 0; color: #fff; display: inline-flex; gap: 15px; padding: 0; text-align: left; }
.brand-mark { align-items: center; background: rgba(255,255,255,.12); border: 1px solid rgba(255,255,255,.35); border-radius: 50%; display: flex; font-size: 27px; height: 58px; justify-content: center; transform: rotate(-12deg); width: 58px; }
.brand { display: block; font-size: clamp(27px, 3vw, 38px); font-weight: 800; letter-spacing: .2px; line-height: 1; text-shadow: 0 2px 0 rgba(0,0,0,.3); }
.brand small { color: #b9ddec; font-size: .47em; font-weight: 700; }
.brand-subtitle { color: #d5e9f4; display: block; font-size: 14px; margin-top: 7px; }
.hero-actions { align-items: center; display: flex; flex-wrap: wrap; gap: 9px; }
.hero-promise { background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.25); color: #d8f1de; font-size: 12px; font-weight: 700; padding: 8px 11px; }

.forum-btn { background: linear-gradient(to bottom, #3f9bcc 0%, #1375a2 55%, #0b5c85 100%); border: 1px solid #0d5b85; border-radius: 3px; box-shadow: inset 0 1px 0 rgba(255,255,255,.35); color: #fff; font-size: 13px; font-weight: 700; padding: 9px 15px; }
.forum-btn:hover, .forum-btn:focus { background: linear-gradient(to bottom, #50a7d4, #1a81af 55%, #0d648e); border-color: #074c70; color: #fff; }
.forum-btn-orange { background: linear-gradient(to bottom, #ffb25e, var(--forum-orange) 55%, var(--forum-orange-dark)); border-color: #aa5e12; }
.forum-btn-orange:hover, .forum-btn-orange:focus { background: linear-gradient(to bottom, #ffc174, #f89a38 55%, #d97918); border-color: #9f560d; }
.forum-btn-light { border-color: rgba(255,255,255,.55); }

.primary-nav { background: #f5f8fa; border-bottom: 1px solid var(--forum-border); box-shadow: 0 2px 5px rgba(26,53,68,.1); }
.primary-nav__item { align-items: center; background: transparent; border: 0; border-left: 1px solid #c5d2db; color: #34566a; display: inline-flex; font-size: 13px; font-weight: 700; gap: 7px; padding: 12px 17px; position: relative; }
.primary-nav__item:last-child { border-right: 1px solid #c5d2db; }
.primary-nav__item:hover, .primary-nav__item.active { background: #e3edf3; color: var(--forum-link); }
.primary-nav__item.active::after { background: var(--forum-orange); bottom: 0; content: ''; height: 3px; left: 0; position: absolute; right: 0; }

.search-band { background: linear-gradient(to bottom, #dfe8ee, #cfdbe3); border-bottom: 1px solid var(--forum-border); }
.search-band .form-label, .filter-group > label:first-child, .filter-label, .form-section label:not(.form-check-label) { color: #304f61; display: block; font-size: 12px; font-weight: 700; margin-bottom: 6px; }
.forum-input, .forum-select { background: #fff; border: 1px solid #8ea2b1; border-radius: 0; font-size: 13px; min-height: 40px; }
.forum-input:focus, .forum-select:focus { border-color: #3f85ab; box-shadow: 0 0 0 .2rem rgba(19,115,157,.14); }
.search-band .input-group-text, .filter-group .input-group-text { background: #fff; border: 1px solid #8ea2b1; border-radius: 0; color: #4c6b7c; }
.search-button { min-height: 48px; }
.popular-searches { align-items: center; color: var(--forum-muted); display: flex; flex-wrap: wrap; font-size: 11px; gap: 6px 10px; margin-top: 10px; }
.popular-searches span { font-weight: 700; }
.popular-searches button { background: transparent; border: 0; color: var(--forum-link); padding: 0; }
.popular-searches button:hover { text-decoration: underline; }

.section-heading, .catalog-title-row { align-items: end; display: flex; justify-content: space-between; margin-bottom: 20px; }
.section-heading h1, .catalog-title-row h1, .post-heading h1 { color: #173245; font-size: clamp(24px, 3vw, 34px); font-weight: 800; margin: 3px 0 4px; }
.section-heading p, .catalog-title-row p, .post-heading p { color: var(--forum-muted); font-size: 14px; margin: 0; }
.eyebrow { color: var(--forum-orange-dark); font-size: 11px; font-weight: 800; letter-spacing: 1.4px; }
.section-stats { display: flex; gap: 8px; }
.section-stats span { background: #fff; border: 1px solid #b5c5cf; color: var(--forum-muted); display: flex; flex-direction: column; font-size: 10px; min-width: 112px; padding: 8px 11px; }
.section-stats strong { color: var(--forum-link); font-size: 17px; }

.category-directory { display: grid; gap: 14px; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.category-card { background: #f8fafb; border: 1px solid var(--forum-border); box-shadow: 0 4px 12px rgba(23,50,69,.07); min-width: 0; transition: border-color .18s ease, transform .18s ease, box-shadow .18s ease; }
.category-card:hover { border-color: #5488a6; box-shadow: var(--shadow); transform: translateY(-2px); }
.category-card__head { align-items: center; background: linear-gradient(to bottom, #dce7ee, #cbd9e2); border-bottom: 1px solid var(--forum-border); display: flex; gap: 11px; min-height: 76px; padding: 12px; }
.category-icon { align-items: center; background: linear-gradient(to bottom, var(--forum-blue-2), var(--forum-blue-3)); border: 1px solid #075278; color: #fff; display: flex; flex: 0 0 48px; font-size: 23px; height: 48px; justify-content: center; text-shadow: 0 1px 0 rgba(0,0,0,.25); }
.category-card__head > div { min-width: 0; }
.category-title { background: none; border: 0; color: #0a5b87; display: block; font-size: 16px; font-weight: 800; line-height: 1.2; padding: 0; text-align: left; }
.category-title:hover { color: #073e5b; text-decoration: underline; }
.category-card__head span:last-child { color: #647987; display: block; font-size: 10px; margin-top: 4px; }
.category-card__body { padding: 3px 12px 9px; }
.category-branch { border-bottom: 1px solid #d6e0e6; padding: 9px 0; }
.category-branch:last-child { border-bottom: 0; }
.category-branch button { background: none; border: 0; color: #234f67; display: block; font-size: 13px; font-weight: 700; line-height: 1.2; padding: 0; text-align: left; }
.category-branch button:hover { color: var(--forum-link); text-decoration: underline; }
.category-branch span { color: #718591; display: block; font-size: 10px; line-height: 1.4; margin-top: 3px; }

.home-info-grid { display: grid; gap: 14px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.info-card { align-items: center; background: #f8fafb; border: 1px solid #b6c7d2; border-left: 4px solid var(--forum-blue-1); display: flex; gap: 13px; padding: 16px; }
.info-card > i { color: var(--forum-blue-1); font-size: 25px; }
.info-card strong, .info-card span { display: block; }
.info-card strong { color: #244b60; font-size: 14px; }
.info-card span { color: var(--forum-muted); font-size: 11px; line-height: 1.4; margin-top: 3px; }

.breadcrumbs { align-items: center; color: #758995; display: flex; flex-wrap: wrap; font-size: 11px; gap: 6px; margin-bottom: 14px; }
.breadcrumbs button { background: none; border: 0; color: var(--forum-link); padding: 0; }
.breadcrumbs i { font-size: 9px; }
.catalog-title-row { align-items: center; }
.operation-tabs { background: #e2eaf0; border: 1px solid var(--forum-border); display: flex; margin-bottom: 14px; overflow-x: auto; }
.operation-tabs button { align-items: center; background: transparent; border: 0; border-right: 1px solid #b7c8d3; color: #36586b; display: flex; flex: 0 0 auto; font-size: 13px; font-weight: 700; gap: 7px; padding: 10px 17px; }
.operation-tabs button small { background: #c4d2db; border-radius: 99px; color: #445e6d; font-size: 9px; padding: 2px 6px; }
.operation-tabs button:hover, .operation-tabs button.active { background: #fff; box-shadow: inset 0 -3px 0 var(--forum-orange); color: var(--forum-link); }

.filter-panel, .category-tree { background: #f7f9fa; border: 1px solid var(--forum-border); }
.filter-panel { padding: 0 12px 12px; }
.filter-panel__head { align-items: center; background: linear-gradient(to bottom, var(--forum-blue-2), var(--forum-blue-3)); color: #fff; display: flex; font-size: 13px; font-weight: 700; justify-content: space-between; margin: 0 -12px; padding: 10px 12px; }
.filter-panel__head button { background: none; border: 0; color: #d9edf6; font-size: 10px; padding: 0; }
.filter-group { border-bottom: 1px solid #d5dfe5; padding: 12px 0; }
.check-row, .radio-row { align-items: center; color: #395769; display: flex; font-size: 11px; gap: 6px; margin: 7px 0; }
.check-row small { color: #7a8c97; margin-left: auto; }
.check-row input, .radio-row input { accent-color: var(--forum-blue-1); }
.mobile-filter-toggle { align-items: center; background: linear-gradient(to bottom, var(--forum-blue-2), var(--forum-blue-3)); border: 1px solid #075278; color: #fff; display: flex; font-size: 13px; font-weight: 700; padding: 11px 12px; width: 100%; }
.forum-header { background: linear-gradient(to bottom, var(--forum-blue-2), var(--forum-blue-3)); border-bottom: 1px solid #0a4f73; color: #fff; font-size: 13px; font-weight: 700; padding: 10px 12px; text-shadow: 0 1px 0 rgba(0,0,0,.3); }
.category-tree button { background: var(--forum-row); border: 0; border-bottom: 1px solid #c6d3dc; color: #34586c; display: block; font-size: 11px; font-weight: 700; padding: 9px 10px; text-align: left; width: 100%; }
.category-tree button:hover, .category-tree button.active { background: #d8e8f1; color: var(--forum-link); }
.category-tree .tree-child { font-weight: 400; padding-left: 27px; }
.category-tree button small { color: #738895; float: right; }

.catalog-toolbar { align-items: center; background: linear-gradient(to bottom, #e8eef2, #d6e1e7); border: 1px solid var(--forum-border); display: flex; justify-content: space-between; margin-bottom: 8px; min-height: 52px; padding: 8px 10px; }
.catalog-toolbar strong { color: #294d61; font-size: 13px; }
.catalog-query { color: var(--forum-muted); font-size: 11px; }
.catalog-toolbar__controls { align-items: center; display: flex; gap: 7px; }
.catalog-toolbar__controls label { color: var(--forum-muted); font-size: 10px; }
.catalog-toolbar__controls .forum-select { min-height: 34px; width: 190px; }
.view-switch { display: flex; }
.view-switch button { background: #fff; border: 1px solid #8ea2b1; color: #59717f; height: 34px; margin-left: -1px; width: 36px; }
.view-switch button.active { background: var(--forum-blue-1); color: #fff; }

.listing-results { display: grid; gap: 8px; }
.listing-card { align-items: stretch; background: var(--forum-row); border: 1px solid #a7bac7; display: grid; gap: 12px; grid-template-columns: 132px minmax(0, 1fr) 205px; min-height: 142px; padding: 10px; position: relative; transition: background .15s ease, border-color .15s ease; }
.listing-card:nth-child(even) { background: var(--forum-row-2); }
.listing-card:hover { background: #dcebf3; border-color: #6f99b0; }
.listing-card--premium { border-left: 5px solid var(--forum-orange); }
.listing-favorite { background: none; border: 0; color: #8297a4; font-size: 20px; line-height: 1; padding: 6px; position: absolute; right: 8px; top: 8px; z-index: 2; }
.listing-favorite:hover, .listing-favorite.active { color: #d89200; }
.listing-media { background: #fff; border: 1px solid #a7bac7; min-height: 120px; overflow: hidden; padding: 0; position: relative; }
.mock-photo { align-items: center; background-color: #dfe8ed; background-image: radial-gradient(circle at 30% 22%, rgba(255,255,255,.7), transparent 25%), linear-gradient(145deg, transparent 60%, rgba(9,83,119,.1)); color: #648696; display: flex; height: 100%; justify-content: center; overflow: hidden; width: 100%; }
.mock-photo > i { font-size: 46px; filter: drop-shadow(0 2px 0 rgba(255,255,255,.8)); }
.mock-photo--medal { background-color: #d8e6e4; color: #7b6834; }
.mock-photo--helmet { background-color: #dde0d5; color: #657354; }
.mock-photo--ribbon { background-color: #e7dcde; color: #875460; }
.mock-photo--coin { background-color: #e8e0cb; color: #96783b; }
.photo-count { background: rgba(20,43,57,.78); bottom: 5px; color: #fff; font-size: 9px; padding: 3px 6px; position: absolute; right: 5px; }
.listing-main { min-width: 0; padding: 3px 24px 3px 0; }
.listing-badges { align-items: center; display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 7px; }
.type-badge, .verified-badge, .premium-badge { display: inline-flex; font-size: 9px; font-weight: 800; gap: 4px; line-height: 1; padding: 5px 7px; text-transform: uppercase; }
.type-badge--sell { background: #d7ebf7; border: 1px solid #67a5c6; color: #075d88; }
.type-badge--buy { background: #dff1e4; border: 1px solid #70a97e; color: #236c38; }
.type-badge--exchange { background: #ece3f5; border: 1px solid #9e7fb8; color: #65467e; }
.verified-badge { color: #227240; }
.premium-badge { background: var(--forum-orange); border: 1px solid #b96b16; color: #fff; }
.listing-title { background: none; border: 0; color: #075d88; display: block; font-size: 17px; font-weight: 800; line-height: 1.25; padding: 0; text-align: left; }
.listing-title:hover { color: #043e5c; text-decoration: underline; }
.listing-main p { color: #4f6572; font-size: 11px; line-height: 1.45; margin: 9px 0; }
.listing-meta { color: #718692; display: flex; flex-wrap: wrap; font-size: 10px; gap: 6px 14px; }
.listing-side { align-items: flex-end; border-left: 1px solid #bdcbd3; display: flex; flex-direction: column; gap: 6px; justify-content: center; padding: 23px 5px 3px 15px; text-align: right; }
.listing-side > strong { color: #0d668e; font-size: 23px; }
.listing-side > span { color: #607580; font-size: 10px; }
.seller-rating i { color: #d89200; }
.listing-side .forum-btn { margin-top: auto; padding: 6px 12px; }
.listing-side .exchange-value { color: #65467e; font-size: 18px; }
.listing-side .price-offer { font-size: 14px; }
.listing-results--grid { gap: 12px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.listing-results--grid .listing-card { display: flex; flex-direction: column; min-height: 430px; padding: 10px; }
.listing-results--grid .listing-media { flex: 0 0 190px; }
.listing-results--grid .listing-main { padding-right: 18px; }
.listing-results--grid .listing-side { align-items: flex-start; border-left: 0; border-top: 1px solid #bdcbd3; margin-top: auto; padding: 10px 0 0; text-align: left; }
.listing-results--grid .listing-side .forum-btn { align-self: stretch; width: 100%; }
.empty-state { align-items: center; background: #f8fafb; border: 1px dashed #9fb2bf; color: var(--forum-muted); display: flex; flex-direction: column; gap: 7px; padding: 45px 20px; text-align: center; }
.empty-state i { color: var(--forum-blue-1); font-size: 30px; }
.empty-state strong { color: #294d61; }
.board-pagination { align-items: center; display: flex; gap: 4px; justify-content: center; padding: 17px 0 3px; }
.board-pagination button { background: #fff; border: 1px solid #9fb2bf; color: #31566b; font-size: 11px; height: 32px; min-width: 32px; }
.board-pagination button.active { background: var(--forum-blue-1); color: #fff; }

.back-link { background: none; border: 0; color: var(--forum-link); font-size: 12px; margin-bottom: 12px; padding: 0; }
.detail-panel, .contact-card, .seller-card, .share-card, .post-panel, .preview-card { background: #f8fafb; border: 1px solid var(--forum-border); box-shadow: 0 5px 15px rgba(23,50,69,.08); }
.detail-heading { align-items: flex-start; display: flex; justify-content: space-between; padding: 20px; }
.detail-heading h1 { color: #173245; font-size: clamp(22px, 3vw, 31px); font-weight: 800; margin: 8px 0; }
.detail-favorite { align-items: center; border: 1px solid #a7bac7; display: flex; font-size: 13px; gap: 6px; padding: 8px 10px; position: static; white-space: nowrap; }
.detail-gallery { border-bottom: 1px solid #becbd3; border-top: 1px solid #becbd3; display: grid; grid-template-columns: minmax(0, 1fr) 100px; min-height: 450px; }
.detail-gallery__main { flex-direction: column; gap: 12px; min-height: 450px; }
.detail-gallery__main > i { font-size: 110px; }
.detail-gallery__main span { color: #677d89; font-size: 11px; }
.detail-gallery__thumbs { background: #d5dfe5; display: flex; flex-direction: column; gap: 7px; padding: 7px; }
.detail-gallery__thumbs button { border: 2px solid transparent; flex: 1 1 0; min-height: 80px; padding: 0; }
.detail-gallery__thumbs button.active { border-color: var(--forum-orange); }
.detail-gallery__thumbs button i { font-size: 28px; }
.gallery-more { align-items: center; background: #274f65; color: #fff; display: flex; flex-direction: column; font-size: 10px; justify-content: center; }
.detail-section { padding: 20px; }
.detail-section + .detail-section { border-top: 1px solid #d3dde3; }
.detail-section h2 { color: #294d61; font-size: 17px; font-weight: 800; margin: 0 0 14px; }
.detail-section p { color: #435d6c; font-size: 13px; line-height: 1.65; }
.spec-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.spec-grid div { align-items: center; border-bottom: 1px solid #d7e0e5; display: grid; gap: 10px; grid-template-columns: 120px minmax(0,1fr); padding: 9px 0; }
.spec-grid div:nth-child(odd) { margin-right: 25px; }
.spec-grid span { color: #728690; font-size: 11px; }
.spec-grid strong { color: #2c4e60; font-size: 12px; }
.contact-card, .seller-card, .share-card { margin-bottom: 14px; padding: 18px; }
.contact-card__label { color: var(--forum-muted); display: block; font-size: 11px; }
.contact-card__price { color: #0c628c; display: block; font-size: 38px; margin: 2px 0 16px; }
.contact-card .btn + .btn { margin-top: 8px; }
.safety-note { align-items: flex-start; background: #eaf3ee; border: 1px solid #bbd7c4; color: #467057; display: flex; font-size: 10px; gap: 9px; margin-top: 14px; padding: 10px; }
.safety-note > i { font-size: 19px; }
.safety-note strong, .safety-note span { display: block; }
.safety-note strong { color: #27623b; font-size: 11px; margin-bottom: 2px; }
.seller-card__head { align-items: center; display: flex; gap: 12px; }
.seller-avatar { align-items: center; background: linear-gradient(to bottom, var(--forum-blue-2), var(--forum-blue-3)); border-radius: 50%; color: #fff; display: flex; font-size: 17px; font-weight: 800; height: 48px; justify-content: center; width: 48px; }
.seller-card__head strong, .seller-card__head span { display: block; }
.seller-card__head strong { color: #244f66; }
.seller-card__head span { color: var(--forum-muted); font-size: 10px; margin-top: 2px; }
.seller-score { background: #e7eef2; display: grid; font-size: 10px; grid-template-columns: repeat(3, 1fr); margin: 15px 0; padding: 10px; text-align: center; }
.seller-score span { border-right: 1px solid #becbd3; }
.seller-score span:last-child { border-right: 0; }
.seller-score i { color: #d89200; }
.share-card { align-items: center; display: flex; justify-content: space-between; }
.share-card > span { color: #3d5d6f; font-size: 12px; font-weight: 700; }
.share-card button { background: #e7eef2; border: 1px solid #b6c7d2; color: #3e6478; height: 34px; width: 34px; }

.post-heading { margin-bottom: 16px; }
.post-stepper { background: #f8fafb; border: 1px solid var(--forum-border); display: grid; grid-template-columns: repeat(4, 1fr); margin-bottom: 18px; }
.post-stepper div { align-items: center; border-right: 1px solid #c8d4db; color: #7a8d98; display: flex; font-size: 11px; gap: 8px; padding: 10px 12px; }
.post-stepper div:last-child { border-right: 0; }
.post-stepper span { align-items: center; background: #d7e0e5; border-radius: 50%; display: flex; height: 25px; justify-content: center; width: 25px; }
.post-stepper .active { box-shadow: inset 0 -3px 0 var(--forum-orange); color: #1f526d; }
.post-stepper .active span { background: var(--forum-blue-1); color: #fff; }
.post-panel { padding: 0 20px; }
.form-section { border-bottom: 1px solid #cdd8df; padding: 20px 0; }
.form-section__title { align-items: flex-start; display: flex; gap: 11px; margin-bottom: 16px; }
.form-section__title > span { align-items: center; background: linear-gradient(to bottom, var(--forum-blue-2), var(--forum-blue-3)); border-radius: 50%; color: #fff; display: flex; flex: 0 0 29px; font-size: 12px; font-weight: 800; height: 29px; justify-content: center; }
.form-section__title h2 { color: #244c61; font-size: 17px; font-weight: 800; margin: 1px 0 3px; }
.form-section__title p { color: var(--forum-muted); font-size: 10px; margin: 0; }
.action-choice { display: grid; gap: 10px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.form-section .action-choice label { align-items: center; background: #edf2f5; border: 2px solid #c1ced6; color: #244c61; cursor: pointer; display: grid; gap: 3px 9px; grid-template-columns: 30px minmax(0,1fr); margin: 0; padding: 12px; }
.form-section .action-choice label.active { background: #e3f0f6; border-color: var(--forum-blue-1); box-shadow: inset 0 -3px 0 var(--forum-orange); }
.action-choice input { position: absolute; visibility: hidden; }
.action-choice i { color: var(--forum-blue-1); font-size: 23px; grid-row: 1 / 3; }
.action-choice strong { color: #244c61; font-size: 13px; }
.action-choice span { color: #6b7f8a; font-size: 9px; }
.category-path { align-items: center; background: #e8eff3; border-left: 3px solid var(--forum-orange); color: #58707e; display: flex; flex-wrap: wrap; font-size: 10px; gap: 6px; margin-top: 13px; padding: 8px 10px; }
.category-path strong { color: var(--forum-link); }
.input-hint { color: #71838f; display: flex; font-size: 9px; justify-content: space-between; margin-top: 4px; }
.upload-placeholder { align-items: center; background: #eef3f6; border: 2px dashed #9fb2bf; color: #627985; display: flex; flex-direction: column; gap: 5px; padding: 28px; text-align: center; }
.upload-placeholder > i { color: var(--forum-blue-1); font-size: 35px; }
.upload-placeholder strong { color: #31566a; font-size: 13px; }
.upload-placeholder span { font-size: 10px; }
.upload-placeholder .btn { margin-top: 7px; }
.post-actions { display: flex; flex-wrap: wrap; gap: 8px; justify-content: flex-end; padding: 16px 0; }
.preview-card { overflow: hidden; }
.preview-card__body { padding: 14px; }
.preview-image { flex-direction: column; gap: 7px; height: 220px; margin-bottom: 12px; }
.preview-image span { color: #72858f; font-size: 10px; }
.preview-card__body > strong { color: #075d88; display: block; font-size: 16px; line-height: 1.3; margin: 10px 0; }
.preview-price { color: #0d668e; display: block; font-size: 23px; font-weight: 800; margin-bottom: 10px; }
.form-tip { align-items: flex-start; background: #fff6dc; border: 1px solid #d9c17f; color: #715d27; display: flex; font-size: 10px; gap: 10px; margin-top: 14px; padding: 14px; }
.form-tip > i { color: #c68700; font-size: 21px; }
.form-tip strong, .form-tip span { display: block; }
.form-tip strong { margin-bottom: 3px; }

.site-footer { background: #173245; border-top: 4px solid var(--forum-orange); color: #b8cad5; }
.site-footer strong { color: #fff; display: block; font-size: 12px; margin-bottom: 8px; }
.site-footer p { font-size: 11px; line-height: 1.5; max-width: 580px; }
.site-footer a { color: #b8cad5; display: block; font-size: 11px; margin: 6px 0; }
.site-footer a:hover { color: #fff; }
.footer-brand { font-size: 20px !important; }
.prototype-note { background: rgba(255,255,255,.07); border: 1px solid rgba(255,255,255,.15); display: block; font-size: 10px; line-height: 1.5; padding: 10px; }
.footer-bottom { border-top: 1px solid rgba(255,255,255,.12); display: flex; font-size: 9px; justify-content: space-between; margin-top: 16px; padding-top: 12px; }
.toast { border-color: #7797aa; }
.toast-header { background: #e4edf2; color: #244c61; }

@media (max-width: 1199.98px) {
    .category-directory { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .listing-results--grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .preview-card, .form-tip { margin-left: auto; margin-right: auto; max-width: 560px; }
}

@media (max-width: 991.98px) {
    .category-directory { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .filter-panel { margin-bottom: 12px; }
    .category-tree { display: none; }
    .listing-card { grid-template-columns: 116px minmax(0,1fr) 175px; }
    .detail-gallery { min-height: 380px; }
    .detail-gallery__main { min-height: 380px; }
}

@media (max-width: 767.98px) {
    .top-strip .container-fluid { justify-content: center !important; }
    .top-brand { display: none; }
    .top-links { justify-content: center; }
    .top-links > a:nth-child(1) { display: none; }
    .brand-mark { flex: 0 0 48px; height: 48px; width: 48px; }
    .brand-subtitle { font-size: 11px; }
    .hero-actions { width: 100%; }
    .hero-actions .btn { flex: 1 1 0; }
    .hero-promise { display: none; }
    .primary-nav .container-fluid { overflow-x: auto; padding: 0 !important; }
    .primary-nav__item { flex: 0 0 auto; padding: 10px 13px; }
    .primary-nav__item:last-child { display: none; }
    .section-heading { align-items: flex-start; flex-direction: column; gap: 12px; }
    .section-stats { width: 100%; }
    .section-stats span { flex: 1 1 0; }
    .category-directory, .home-info-grid { grid-template-columns: 1fr; }
    .category-card__body { display: grid; gap: 0 12px; grid-template-columns: repeat(2, minmax(0,1fr)); }
    .catalog-title-row { align-items: flex-start; flex-direction: column; gap: 12px; }
    .catalog-toolbar { align-items: flex-start; flex-direction: column; gap: 8px; }
    .catalog-toolbar__controls { width: 100%; }
    .catalog-toolbar__controls label { display: none; }
    .catalog-toolbar__controls .forum-select { flex: 1 1 auto; width: auto; }
    .listing-card { grid-template-columns: 96px minmax(0,1fr); min-height: 0; }
    .listing-media { min-height: 96px; }
    .listing-main { padding-right: 20px; }
    .listing-main p { display: none; }
    .listing-title { font-size: 14px; }
    .listing-side { align-items: center; border-left: 0; border-top: 1px solid #bdcbd3; flex-direction: row; grid-column: 1 / -1; justify-content: space-between; padding: 9px 0 0; text-align: left; }
    .listing-side > strong { font-size: 19px; }
    .listing-side > span { display: none; }
    .listing-side .forum-btn { margin: 0; }
    .listing-results--grid { grid-template-columns: 1fr; }
    .listing-results--grid .listing-card { min-height: 400px; }
    .detail-heading { flex-direction: column; gap: 12px; }
    .detail-gallery { display: block; min-height: 0; }
    .detail-gallery__main { min-height: 330px; }
    .detail-gallery__thumbs { flex-direction: row; }
    .detail-gallery__thumbs button { height: 72px; min-height: 72px; }
    .spec-grid { grid-template-columns: 1fr; }
    .spec-grid div:nth-child(odd) { margin-right: 0; }
    .post-stepper strong { display: none; }
    .post-stepper div { justify-content: center; }
    .action-choice { grid-template-columns: 1fr; }
}

@media (max-width: 575.98px) {
    .board-hero .container-fluid { padding-bottom: 16px !important; padding-top: 16px !important; }
    .brand { font-size: 25px; }
    .brand small { display: block; margin-top: 5px; }
    .search-band .container-fluid { padding-bottom: 15px !important; padding-top: 15px !important; }
    .category-directory { gap: 10px; }
    .category-card__body { grid-template-columns: 1fr; }
    .section-heading h1, .catalog-title-row h1, .post-heading h1 { font-size: 23px; }
    .operation-tabs button { padding: 9px 12px; }
    .operation-tabs button i { display: none; }
    .listing-card { gap: 8px; grid-template-columns: 82px minmax(0,1fr); padding: 8px; }
    .listing-media { min-height: 82px; }
    .listing-title { font-size: 13px; }
    .listing-badges { margin-bottom: 5px; }
    .verified-badge { display: none; }
    .listing-meta span:nth-child(2) { display: none; }
    .listing-side .forum-btn { font-size: 10px; padding: 6px 8px; }
    .board-pagination button:nth-of-type(3), .board-pagination button:nth-of-type(4) { display: none; }
    .detail-gallery__main { min-height: 260px; }
    .detail-gallery__main > i { font-size: 76px; }
    .detail-gallery__thumbs button { height: 57px; min-height: 57px; }
    .detail-gallery__thumbs button i { font-size: 20px; }
    .spec-grid div { grid-template-columns: 95px minmax(0,1fr); }
    .post-panel { padding: 0 12px; }
    .post-actions .btn { flex: 1 1 auto; }
    .footer-bottom { flex-direction: column; gap: 5px; }
}

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; }
}
