/* LUX Market: shared visual language. Layout and interaction primitives live in styles.css. */
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;650;700;750;800&display=swap');

:root {
  --accent: #b77716;
  --accent-dark: #966010;
  --accent-gradient: #f2c94c;
  --brand-yellow: #f2c94c;
  --on-yellow: #24231f;
  --shadow: none;
  --heart: #c95348;
  --content-max: 1160px;
  --font-market: 'Manrope', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --bottom-inset: max(var(--safe-bottom, 0px), env(safe-area-inset-bottom, 0px));
}

body { font-family: var(--font-market); -webkit-font-smoothing: antialiased; padding-bottom: calc(94px + var(--bottom-inset)); }
html, body { width: 100%; overflow-x: clip; overscroll-behavior-x: none; }
html.telegram-app, html.telegram-app body { overscroll-behavior-y: none; }
html.telegram-app { touch-action: pan-x pan-y; }
input, textarea, select { font-size: 16px !important; }
.photo, .gallery, .filters, .similar-scroll { overscroll-behavior-x: contain; }
.gallery { touch-action: pan-x pan-y; }
button, input, textarea, select, .brand, .tag, .tab, .detail-price, .empty-title,
.favorites-title, .my-title, .post-topbar-title, .similar-title { font-family: var(--font-market); }
button, a { -webkit-tap-highlight-color: transparent; }
button { color: inherit; }
button:focus-visible, a:focus-visible, [tabindex]:focus-visible { outline: 2px solid var(--accent); outline-offset: 4px; }
[hidden] { display: none !important; }
::selection { background: #f2c94c80; color: var(--ink); }

header {
  padding: calc(20px + var(--safe-top)) 22px 18px;
  box-shadow: none; border-bottom: 1px solid var(--border); gap: 16px;
  background: var(--bg);
}
.brand { display: flex; align-items: center; font-size: 24px; letter-spacing: -1px; gap: 0; }
.brand .brand-mark { width: 35px; height: 35px; margin-right: 6px; filter: none; }
.brand .word-strong { font-weight: 800; }
.brand .word-soft { color: var(--ink); font-weight: 500; letter-spacing: -1px; }
.brand-left .subtitle { font-size: 8px; letter-spacing: 1.5px; margin: 5px 0 0 4px; font-weight: 700; }
.header-actions { gap: 4px; }
.icon-btn { border: 0; background: transparent; box-shadow: none; width: 40px; height: 40px; }
.lang-menu-btn .lang-current-flag { width: 20px; height: 15px; border-radius: 2px; }
.market-intro { padding: 18px 22px 0; max-width: var(--content-max); margin: 0 auto; }
/* Переключатель разделов: Все · LUX Drive · LUX Home — под шапкой, всегда виден */
.market-switcher { display: flex; gap: 8px; padding: 12px 22px 0; max-width: var(--content-max); margin: 0 auto; }
.market-switcher-item { flex: 1; display: inline-flex; align-items: center; justify-content: center; gap: 7px; min-height: 42px; padding: 8px 10px; border: 1px solid var(--border); border-radius: 10px; background: transparent; color: var(--ink-soft); font-size: 12.5px; font-weight: 700; text-decoration: none; transition: border-color .15s ease, transform .15s ease; min-width: 0; }
.market-switcher-item svg { width: 18px; height: 18px; flex: none; }
.market-switcher-item:active { transform: scale(.97); }
.market-switcher-item.active { background: var(--ink); color: var(--bg); border-color: var(--ink); }
/* Секции зоны под поиском: широкие сегмент-табы */
.zone-tabs { display: flex; gap: 8px; padding: 22px 22px 16px; max-width: var(--content-max); margin: 0 auto; overflow-x: auto; }
.zone-tab { flex: 1 0 auto; display: inline-flex; align-items: center; justify-content: center; padding: 11px 18px; border: 1px solid var(--border); border-radius: 10px; background: transparent; color: var(--ink-soft); font-size: 12.5px; font-weight: 700; line-height: 1.25; cursor: pointer; white-space: nowrap; text-align: center; transition: border-color .15s ease; }
.zone-tab.active { background: var(--ink); color: var(--bg); border-color: var(--ink); }
/* Версия приложения в личном кабинете */
.account-version { text-align: center; font-size: 10px; color: var(--ink-soft); padding: 18px 16px calc(16px + var(--bottom-inset)); letter-spacing: .3px; }
/* Выбор марки/модели кнопками в форме подачи */
.spec-options { display: flex; flex-wrap: nowrap; gap: 6px; margin-top: 8px; overflow-x: auto; padding-bottom: 4px; }
.spec-options:empty { display: none; }
.spec-option { flex: none; font-size: 11px; font-weight: 600; padding: 6px 10px; border: 1px solid var(--border); border-radius: 7px; background: var(--bg); color: var(--ink); cursor: pointer; min-height: 30px; }
.spec-option:active { transform: scale(.96); }
.spec-option.active { background: var(--ink); color: var(--bg); border-color: var(--ink); }
.spec-option-row { display: flex; flex-wrap: wrap; gap: 6px; }
.full-spec-field { position: relative; }
/* Горизонтальные ряды показывают тонкий скроллбар — видно, что можно крутить */
.filters, .zone-tabs, .spec-options { scrollbar-width: thin; scrollbar-color: var(--border) transparent; }
.filters::-webkit-scrollbar, .zone-tabs::-webkit-scrollbar, .spec-options::-webkit-scrollbar { height: 4px; }
.filters::-webkit-scrollbar-thumb, .zone-tabs::-webkit-scrollbar-thumb, .spec-options::-webkit-scrollbar-thumb { background: var(--border); border-radius: 4px; }
/* Характеристики на карточке внутри зоны и блок-заглушка из общего потока */
.card .zone-meta { display: block; margin-top: 5px; font-size: 11px; font-weight: 650; color: var(--ink); line-height: 1.5; }
.zone-fallback { grid-column: 1 / -1; border-top: 1px solid var(--border); margin-top: 12px; padding-top: 16px; }
.zone-fallback-title { font-size: 15px; font-weight: 750; letter-spacing: -.3px; margin-bottom: 14px; }
.zone-fallback-grid { padding: 0; margin: 0; max-width: none; }
.zone-fallback-badge { display: inline-block; font-size: 9.5px; font-weight: 700; color: var(--ink-soft); border: 1px solid var(--border); border-radius: 5px; padding: 2px 6px; margin-bottom: 6px; }
.intro-topline { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.eyebrow { color: var(--ink-soft); font-size: 9px; font-weight: 750; letter-spacing: 1.8px; }
body.zone-active .eyebrow { color: var(--accent); }
body.zone-active .brand .word-strong { color: var(--accent); }
.location-picker { display: flex; align-items: center; gap: 5px; border: 0; background: none; font-size: 11px; font-weight: 650; min-height: 32px; cursor: pointer; }
.location-picker span { max-width: 130px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.market-intro h1 { font-size: clamp(29px, 8.3vw, 40px); font-weight: 750; line-height: 1.13; letter-spacing: -1.5px; margin-top: 10px; }
.headline-second { color: var(--ink-soft); }
.intro-caption { color: var(--ink-soft); font-size: 12px; line-height: 1.6; margin: 8px 0 18px; }
.market-search { display: flex; align-items: center; gap: 13px; width: 100%; padding: 8px 9px 8px 17px; height: 56px; background: var(--surface); border: 1px solid var(--border); border-radius: 12px; color: var(--ink-soft); text-align: left; font-size: 14px; cursor: pointer; }
.market-search > svg { color: var(--ink); flex-shrink: 0; }
.search-enter { margin-left: auto; background: var(--brand-yellow); color: var(--on-yellow); width: 38px; height: 38px; border-radius: 8px; display: grid; place-items: center; font-size: 24px; }
.filters { padding: 22px 22px 17px; gap: 7px; }
.chip, .post-chip, .fopt { box-shadow: none; background: transparent; border-color: var(--border); border-radius: 8px; font-size: 12px; font-weight: 600; padding: 10px 13px; min-height: 38px; }
.chip.active, .post-chip.active, .fopt.active { background: var(--ink); color: var(--bg); border-color: var(--ink); box-shadow: none; }
#chips { gap: 15px; padding-top: 22px; padding-bottom: 20px; }
#chips .chip { display: flex; flex-direction: column; align-items: center; gap: 8px; min-width: 54px; padding: 0; border: 0; border-radius: 0; background: none; color: var(--ink-soft); }
.category-icon { display: grid; place-items: center; width: 54px; height: 50px; border-radius: 11px; background: #eaeae2; color: #565e4d; transition: background .15s; }
.category-icon svg { width: 29px; height: 29px; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.category-label { font-size: 10px; font-weight: 600; }
#chips .chip.active { color: var(--ink); }
#chips .chip.active .category-icon { background: var(--brand-yellow); color: var(--on-yellow); }
[data-theme="dark"] .category-icon { background: #2b3027; color: #c1c9b4; }
.subcat-row { padding-top: 0; }
.filter-bar { padding: 18px 22px; margin: 0; border-top: 1px solid var(--border); display: flex; gap: 10px; flex-wrap: wrap; align-items: center; }
.feed-heading { display: flex; align-items: baseline; flex: 1; gap: 8px; }
.feed-heading h2 { font-size: 19px; letter-spacing: -.65px; font-weight: 750; }
#feed-count { color: var(--ink-soft); font-size: 11px; font-variant-numeric: tabular-nums; }
.filter-toggle, .search-filter-toggle { border: 1px solid var(--border); box-shadow: none; border-radius: 8px; background: transparent; font-size: 11px; min-height: 38px; padding: 8px 10px; }
.filter-toggle.open { border-color: var(--ink); color: var(--ink); }
.filter-summary:empty { display: none; }
.filter-bar > .filter-summary { flex-basis: 100%; font-size: 11px; }
.filter-badge { background: var(--ink); color: var(--bg); }
.filter-panel { box-shadow: none; border-radius: 12px; margin-left: 22px; margin-right: 22px; padding: 20px; }
.filter-label { font-size: 10px; letter-spacing: 1px; }
.filter-options { gap: 7px; }
.filter-apply, .post-submit, .fab { background: var(--brand-yellow); color: var(--on-yellow); box-shadow: none; font-weight: 750; }
.filter-reset, .filter-apply { border-radius: 8px; }
.price-inputs input, .post-input, .post-textarea, .currency-select { border-radius: 8px; min-width: 0; }
.price-inputs input:focus, .post-input:focus, .post-textarea:focus { box-shadow: 0 0 0 3px #f2c94c25; border-color: var(--accent); }
.grid { padding: 0 22px 22px; gap: 23px 13px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.card { position: relative; border: 0; border-radius: 0; background: transparent; box-shadow: none; overflow: visible; animation: none; transition: none; content-visibility: auto; contain-intrinsic-size: auto 260px; }
.card:active, .card:has(.card-heart:active) { transform: none; box-shadow: none; }
.card-open { display: block; width: 100%; padding: 0; border: 0; background: none; text-align: left; cursor: pointer; }
.photo { display: flex; position: relative; width: 100%; aspect-ratio: 1 / 1.12; overflow: hidden; border-radius: 11px; background: var(--border); }
.photo img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.photo-placeholder { display: grid; place-items: center; width: 100%; height: 100%; background: var(--surface); color: var(--ink-soft); }
.photo-placeholder svg { width: 32px; height: 32px; stroke-width: 1; }
.info { display: block; padding: 11px 1px 0; }
.card-price { display: block; font-size: 19px; font-weight: 800; letter-spacing: -.6px; line-height: 1.35; font-variant-numeric: tabular-nums; }
.title { display: -webkit-box; font-size: 12px; font-weight: 500; line-height: 1.55; margin: 4px 0 7px; min-height: 0; -webkit-line-clamp: 2; overflow-wrap: anywhere; }
.meta { display: flex; flex-wrap: wrap; column-gap: 6px; font-size: 10px; line-height: 1.5; }
.card-heart { width: 36px; height: 36px; right: 8px; top: 8px; background: #fffffff0; box-shadow: none; backdrop-filter: none; color: #353630; }
.card-heart .heart-icon.empty { color: #353630; }
.card-heart .heart-icon svg { width: 18px; height: 18px; }
.card.card--lux { border-radius: 14px; background: #fffbeb; box-shadow: 0 0 0 2px #d6a638; }
.card--lux .card-open { border-radius: inherit; overflow: hidden; }
.card--lux .photo { border-radius: 0; }
.card--lux .info { padding: 11px 10px 12px; }
.lux-origin-badge { display: flex; align-items: center; justify-content: space-between; gap: 6px; min-width: 0; padding: 8px 10px; background: #f2c94c; color: #29261c; font-size: 10px; font-weight: 650; line-height: 1.25; }
.lux-origin-badge span { min-width: 0; overflow-wrap: anywhere; }
.lux-origin-badge b { flex: none; font-size: 13px; font-weight: 800; letter-spacing: 1.8px; }
.card--lux .card-heart { top: 43px; }
.card--lux .compare-toggle { margin: 0 10px 8px; border-bottom: 0; }
[data-theme="dark"] .card.card--lux { background: #2b281d; box-shadow: 0 0 0 2px #bc923a; }
.skeleton-card { background: transparent; border: 0; border-radius: 11px; }
.skeleton-photo { aspect-ratio: 1 / 1.12; border-radius: 11px; }
.skeleton-line { margin-left: 0; }
.empty { padding: 64px 18px; line-height: 1.7; font-size: 13px; }
.empty-title { font-size: 23px; letter-spacing: -.7px; margin-bottom: 8px; }
.retry-button { display: block; margin: 20px auto 0; border: 1px solid var(--border); padding: 12px 18px; border-radius: 8px; background: var(--surface); font-size: 12px; cursor: pointer; }
.pull-indicator { position: fixed; top: calc(92px + var(--safe-top)); left: 50%; transform: translateX(-50%); z-index: 40; border: 1px solid var(--border); background: var(--surface); border-radius: 30px; font-size: 11px; padding: 10px 16px; pointer-events: none; white-space: nowrap; }
.pull-indicator.dragging { border-color: var(--accent); background: var(--ink); color: var(--bg); }
/* Аффорданс свайпа назад: стрелка + подсказка у левого края */
#back-hint { position: fixed; left: 0; top: 50%; z-index: 70; display: flex; align-items: center; gap: 7px; padding: 11px 15px 11px 10px; border: 1px solid var(--border); border-left: 0; border-radius: 0 16px 16px 0; background: var(--surface); color: var(--ink); box-shadow: 0 4px 18px rgba(0,0,0,.2); opacity: 0; transform: translateY(-50%) translateX(-8px); pointer-events: none; transition: opacity .18s ease, background .18s ease, border-color .18s ease; font-size: 13px; font-weight: 650; white-space: nowrap; }
#back-hint .back-hint-chevron { font-size: 26px; line-height: 1; font-weight: 350; color: var(--accent); }
#back-hint.armed { background: var(--ink); color: var(--bg); border-color: var(--ink); }
#back-hint.armed .back-hint-chevron { color: var(--bg); }
#feed-screen .grid { transition: transform .32s cubic-bezier(.22,.61,.36,1); }
.tabbar { z-index: 25; left: 0; right: 0; bottom: 0; width: 100%; transform: none; padding: 8px 12px calc(10px + var(--bottom-inset)); background: var(--bg); border: 0; border-top: 1px solid var(--border); box-shadow: none; border-radius: 0; backdrop-filter: none; }
.tab { padding: 6px 2px 0; gap: 5px; font-size: 9px; font-weight: 650; color: var(--ink-soft); }
.tab svg { width: 22px; height: 22px; }
.tab.active { color: var(--ink); }
.tab.active::after { content: ''; width: 3px; height: 3px; border-radius: 50%; position: absolute; top: 0; background: var(--ink); }
.tab-post svg { background: var(--brand-yellow); color: var(--on-yellow); border-radius: 7px; width: 33px; height: 27px; padding: 3px; margin-top: -3px; }
.tab-fav-count { top: 1px; min-width: 15px; height: 15px; font-size: 8px; border: 0; right: calc(50% - 24px); }
.fab { display: none; }
.scroll-top-btn { bottom: calc(94px + var(--bottom-inset)); background: var(--surface); color: var(--ink); border: 1px solid var(--border); box-shadow: none; width: 42px; height: 42px; }
.build-badge { display: none; }
.feed-end { font-size: 11px; color: var(--ink-soft); padding: 25px 0; }

/* Search, saved items and publishing share the same type and spacing. */
#search-screen { background: var(--bg); top:var(--search-top,0px); bottom:auto; height:var(--search-height,100dvh); }
#search-screen .search-scroll { overscroll-behavior-y:contain; touch-action:pan-y; overflow-x:hidden; }
#search-screen .search-topbar .back-btn { background:none; border:0; min-width:32px; }
#search-screen .search-input-wrap { padding-right:4px; }
#search-screen .search-clear, .search-submit { background:none; border:0; min-width:36px; min-height:44px; flex-shrink:0; cursor:pointer; }
.search-submit { display:grid; place-items:center; color:var(--ink); }
#search-input::-webkit-search-cancel-button { -webkit-appearance:none; }
.search-more { display:block; margin:18px auto 28px; min-height:44px; }
.search-page-error { text-align:center; padding:0 18px 18px; }
body:has(#search-screen.active) { overflow-y: hidden; }
.search-topbar { padding: calc(15px + var(--safe-top)) 18px 16px; gap:8px; box-shadow: none; border-bottom: 1px solid var(--border); }
.search-topbar .back-btn { padding: 10px 6px 10px 0; }
.search-input-wrap { border-radius: 10px; min-width: 0; }
.search-input-wrap input { width: 0; min-width: 0; }
.search-input-wrap:focus-within { border-color: var(--ink); box-shadow: none; }
.search-input-wrap > .icon { display: none; }
.search-filters-bar { padding: 15px 22px; }
.search-suggestions { padding: 12px 22px; }
.suggestions-title { text-transform: none; font-size: 19px; color: var(--ink); letter-spacing: -.5px; margin: 20px 0 16px; }
.suggestion-chip { border-radius: 7px; font-size: 13px; background: transparent; padding: 10px 13px; }
.suggestion-chip .emoji { display: none; }
.search-results { padding: 4px 22px 24px; }
.search-results .card { content-visibility:visible; contain-intrinsic-size:none; }
.favorites-header, .my-header, .post-topbar { padding: calc(24px + var(--safe-top)) 22px 22px; border-bottom: 1px solid var(--border); margin-bottom: 22px; }
.favorites-title, .my-title, .post-topbar-title { font-size: 27px; letter-spacing: -1px; font-weight: 750; }
.post-topbar { justify-content: flex-start; gap: 10px; }
.post-topbar-title { font-size: 22px; }
.post-body { padding: 0 22px 24px; gap: 26px; }
.post-body > div > .post-input { width: 100%; }
.post-section-label { font-size: 12px; margin-bottom: 10px; }
.post-submit { display: block; width: calc(100% - 44px); margin: 0 22px 24px; border-radius: 10px; }
.photo-add-btn { border-width: 1px; border-radius: 9px; }
.my-item { border: 0; border-bottom: 1px solid var(--border); border-radius: 0; background: transparent; padding: 15px 0; }
.my-item-photo { width: 76px; height: 86px; border-radius: 8px; }
.my-item-meta { font-size: 10px; overflow-wrap: anywhere; }
.my-item-actions .chip { font-size: 10px; min-height: 34px; padding: 7px; }
.lang-menu { border-radius: 18px 18px 0 0; padding-bottom: calc(20px + var(--bottom-inset)); box-shadow: none; }
.lang-menu-title { font-family: var(--font-market); letter-spacing: -.4px; }
.lang-opt { border-radius: 8px; }
.lang-opt.active { background: var(--accent-light); }
.lang-opt .check { color: var(--ink); }

/* Product photography and a quiet, fixed contact action. */
#detail-screen { padding: 0; display: none; }
.gallery-shell { position: relative; background: var(--surface); }
.gallery { min-height: 280px; position: relative; top: auto; border-radius: 0; overflow-x: auto; scrollbar-width: none; }
.gallery::-webkit-scrollbar { display: none; }
.gallery img { aspect-ratio: 1 / 1.04; object-fit: contain; background: var(--surface); cursor: zoom-in; }
.gallery video { aspect-ratio: 1 / 1.04; object-fit: contain; background: var(--surface); width: 100%; }
.gallery-toolbar { position: absolute; top: calc(16px + var(--safe-top)); left: 18px; right: 18px; display: flex; justify-content: space-between; z-index: 4; pointer-events: none; }
.gallery-action { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 50%; border: 1px solid var(--border); background: var(--bg); color: var(--ink); cursor: pointer; font-size: 22px; pointer-events: auto; flex-shrink: 0; }
.gallery-controls { position: absolute; bottom: 15px; left: 18px; right: 18px; display: flex; justify-content: space-between; align-items: center; pointer-events: none; }
#gallery-counter { background: var(--bg); color: var(--ink); font-size: 11px; letter-spacing: 2px; padding: 7px 12px; border-radius: 5px; }
.gallery-controls .gallery-action { width: 34px; height: 34px; font-size: 18px; }
.detail-body { padding: 26px 22px 40px; }
.detail-price-row { margin-bottom: 8px; }
.detail-price { color: var(--ink); background: none; -webkit-text-fill-color: currentColor; font-size: 35px; letter-spacing: -1.5px; line-height: 1.2; font-weight: 800; }
.detail-heart-btn { min-width: 44px; min-height: 44px; border: 1px solid var(--border); border-radius: 50%; background: transparent; font-size: 23px; }
.detail-meta-row { line-height: 1.8; font-size: 11px; padding-bottom: 20px; margin: 0 0 20px; border-bottom: 1px solid var(--border); }
.detail-views { display: inline-flex; align-items: center; gap: 4px; margin-left: 10px; }
.seller-identity { display: flex; align-items: center; gap: 12px; width: 100%; border: 0; padding: 8px 0 16px; background: none; color: var(--ink); text-align: left; }
button.seller-identity { cursor: pointer; }
.seller-avatar { display: grid; place-items: center; width: 42px; height: 42px; flex: none; border-radius: 50%; background: var(--surface); color: var(--ink-soft); border: 1px solid var(--border); }
.seller-copy { display: grid; gap: 3px; min-width: 0; flex: 1; }
.seller-name { font-size: 14px; font-weight: 750; line-height: 1.5; overflow-wrap: anywhere; }
.seller-profile-caption { color: var(--ink-soft); font-size: 11px; }
.seller-arrow { color: var(--ink-soft); }
.listing-meta-line,.listing-meta-city,.listing-meta-activity { display: flex; align-items: center; gap: 8px; }
.listing-meta-line { flex-wrap: wrap; justify-content: space-between; gap: 8px 16px; color: var(--ink-soft); }
.listing-meta-activity { gap: 14px; }
.listing-meta-city .ui-icon,.detail-views .ui-icon { width: 14px; height: 14px; }
.listing-meta-activity .detail-views { margin: 0; }
.lang-chips { gap: 6px; margin-bottom: 15px; }
.lang-chip { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 3px; width: auto; min-width: 44px; height: auto; padding: 6px 9px 5px; border-radius: 8px; background: var(--surface); box-shadow: none; }
.lang-chip-label { font-size: 8.5px; font-weight: 750; letter-spacing: .4px; color: var(--ink-soft); line-height: 1; }
.lang-chip.active { background: var(--accent-light); border-color: var(--border); box-shadow: none; transform: none; }
.lang-chip.active .lang-chip-label { color: var(--ink); }
.lang-flag-img { width: 19px; height: 14px; border-radius: 2px; }
.detail-title { font-size: 14px; line-height: 1.9; white-space: pre-wrap; overflow-wrap: anywhere; margin-bottom: 26px; }
.detail-heading { margin: 0 0 15px; font-size: clamp(22px, 3vw, 30px); line-height: 1.3; letter-spacing: -.7px; font-weight: 750; overflow-wrap: anywhere; }
.detail-origin { margin: 0 0 18px; }
.detail-origin .lux-origin-badge { display: inline-flex; gap: 16px; border-radius: 6px; padding: 8px 12px; }
.detail--lux .gallery-shell::after { content: ''; position: absolute; inset: 0; border: 2px solid #d6a638; border-radius: inherit; pointer-events: none; }
.listing-description { font-size: 14px; line-height: 1.8; margin-bottom: 26px; overflow-wrap: anywhere; }
.listing-description > :first-child { margin-top: 0; }
.listing-description p { margin: 0 0 18px; white-space: pre-line; }
.listing-description ul { padding-left: 20px; margin: 0 0 20px; }
.listing-description li { padding-left: 3px; margin: 6px 0; }
.listing-description li::marker { color: var(--accent); }
.listing-description dl { margin: 0 0 20px; padding: 3px 14px; background: var(--surface); border-radius: 10px; }
.listing-description dl > div { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.5fr); gap: 16px; padding: 10px 0; border-bottom: 1px solid var(--border); }
.listing-description dl > div:last-child { border-bottom: 0; }
.listing-description dt { color: var(--ink-soft); font-size: 12px; }
.listing-description dd { margin: 0; font-weight: 600; font-size: 13px; }
.listing-original { margin-top: 22px; color: var(--ink-soft); font-size: 12px; }
.listing-original summary { cursor: pointer; padding: 8px 0; width: fit-content; }
.listing-original p { margin-top: 12px; white-space: pre-wrap; }
.ai-badge { font-weight: 500; color: var(--ink-soft); background: transparent; padding: 0; }
.contact-box { border: 0; border-top: 1px solid var(--border); border-radius: 0; padding: 23px 0; background: transparent; }
.contact-box-title { font-size: 15px; letter-spacing: -.3px; }
.contact-box-title::before { display: none; }
.contact-link { border-radius: 8px; background: var(--surface); color: var(--ink); border: 1px solid var(--border); box-shadow: none; padding: 10px 12px; margin-top: 8px; }
.contact-link .label { color: var(--ink); font-size: 12px; }
.contact-link .icon { color: var(--ink); background: none; width: 28px; height: 28px; font-size: 17px; }
.report-btn { font-size: 11px; border: 0; padding: 12px 0; text-align: left; }
.report-btn { display: inline-flex; align-items: center; gap: 7px; color: var(--ink-soft); margin-top: 10px; min-height: 40px; background: none; cursor: pointer; }
.report-btn .ui-icon { width: 15px; height: 15px; }
.detail-secondary-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 14px; }
.card .compare-toggle,.detail-secondary-actions .compare-toggle { display: inline-flex; align-items: center; gap: 6px; min-height: 36px; padding: 7px 10px; border: 1px solid var(--border); border-radius: 7px; background: var(--surface); color: var(--ink); font-size: 11px; line-height: 1.4; margin-top: 10px; text-align: left; cursor: pointer; }
.card .compare-toggle .ui-icon,.detail-secondary-actions .ui-icon { width: 15px; height: 15px; flex: none; }
.card .compare-toggle[aria-pressed="true"],.detail-secondary-actions .compare-toggle[aria-pressed="true"] { background: #f2c94c30; border-color: #d6a638; color: var(--ink); }
.detail-secondary-actions .compare-toggle { margin: 0; min-height: 42px; padding: 9px 14px; font-size: 12px; }
.deal-request-box { margin-top: 20px; }
.deal-request-box .deal-request-button { display: flex; align-items: center; gap: 12px; width: 100%; margin: 0; padding: 16px; border: 1px solid var(--border); border-radius: 12px; background: var(--surface); text-align: left; cursor: pointer; }
.deal-request-icon { display: grid; place-items: center; flex: none; width: 36px; height: 40px; border-radius: 8px; background: #f2c94c30; color: var(--accent); }
.deal-request-copy { display: grid; gap: 5px; min-width: 0; flex: 1; }
.deal-request-copy strong { font-size: 13px; font-weight: 750; }
.deal-request-copy small { color: var(--ink-soft); font-size: 11px; line-height: 1.6; }
.deal-request-arrow { flex: none; color: var(--ink-soft); }
.seller-identity:focus-visible,.compare-toggle:focus-visible,.deal-request-button:focus-visible,.report-btn:focus-visible { outline: 2px solid var(--accent); outline-offset: 4px; }
.detail-dock { position: fixed; z-index: 28; bottom: 0; left: 0; right: 0; display: flex; align-items: center; gap: 16px; border-top: 1px solid var(--border); background: var(--bg); padding: 14px 22px calc(14px + var(--bottom-inset)); }
.dock-price { font-size: 18px; letter-spacing: -.5px; font-weight: 800; max-width: 42%; overflow-wrap: anywhere; }
.primary-contact { min-height: 48px; padding: 11px 15px; display: flex; justify-content: center; align-items: center; gap: 12px; background: var(--brand-yellow); color: var(--on-yellow); border: 0; border-radius: 9px; font-size: 11px; font-weight: 800; flex: 1; cursor: pointer; }
.primary-contact > span:last-child { font-size: 22px; }
.primary-contact:disabled { opacity: .4; cursor: default; }
body:has(#detail-dock:not([hidden])) .tabbar { display: none; }
.similar-box { background: transparent; border: 0; border-top: 1px solid var(--border); border-radius: 0; padding: 22px 0; }
.similar-title { font-size: 19px; letter-spacing: -.5px; margin-bottom: 18px; }
.similar-card { border: 0; background: none; border-radius: 0; width: 150px; }
.similar-photo { border-radius: 8px; height: 160px; }
.similar-info { padding: 9px 0; }
.similar-price { font-size: 16px; color: var(--ink); font-weight: 800; }
.similar-name { font-size: 11px; line-height: 1.5; }
.similar-card--lux { border: 2px solid #d6a638; border-radius: 10px; background: #fffbeb; }
.similar-card--lux .similar-photo { border-radius: 0; }
.similar-card--lux .similar-info { padding: 9px; }
.similar-photo:has(svg) { display: grid; place-items: center; color: var(--ink-soft); }
.my-item.my-item--lux { border: 1px solid #d6a638; }
.my-item--lux .lux-origin-badge { width: fit-content; gap: 10px; padding: 5px 8px; border-radius: 4px; margin-bottom: 8px; }
[data-theme="dark"] .similar-card--lux { background: #2b281d; }

.price-history-box { background: var(--surface); border: 1px solid var(--border); border-radius: 12px; padding: 20px; }
.chart-heading { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 18px; }
.price-history-title { font-size: 12px; font-weight: 700; margin: 0; }
.chart-delta { border-radius: 4px; padding: 4px 7px; font-size: 10px; background: var(--bg); color: var(--ink-soft); }
.chart-delta.down { background: #35776016; color: #357760; }
.chart-delta.up { background: #c9534816; color: #c95348; }
.chart-caption { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; min-height: 30px; font-size: 10px; color: var(--ink-soft); }
.chart-caption strong { font-size: 18px; color: var(--ink); letter-spacing: -.5px; }
.price-history-box svg { width: 100%; height: auto; overflow: visible; margin: 14px 0 8px; }
.chart-grid { stroke: var(--border); stroke-dasharray: 3 4; }
.chart-labels { display: flex; justify-content: space-between; font-size: 9px; color: var(--ink-soft); }
.chart-point { cursor: pointer; }
.chart-point:focus { outline: none; stroke: var(--ink); stroke-width: 2; }

.photo-viewer { position: fixed; inset: 0; max-width: none; max-height: none; width: 100%; height: 100%; height: 100dvh; padding: 0; border: 0; background: #171815; color: #fff; }
.photo-viewer[open] { display: grid; grid-template-rows: auto minmax(0, 1fr) auto; }
.photo-viewer::backdrop { background: #171815; }
.viewer-toolbar, .viewer-controls { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 16px 22px; font-size: 12px; }
.viewer-toolbar { padding-top: calc(16px + var(--safe-top)); }
.viewer-controls { padding-bottom: calc(20px + var(--bottom-inset)); }
.viewer-controls > span { font-size: 10px; color: #bebfb8; text-align: center; }
.photo-viewer .gallery-action { background: #292b26; border-color: #40413c; color: #fff; }
.viewer-stage { overflow: auto; display: flex; align-items: center; justify-content: center; }
#viewer-image { max-width: 100%; max-height: 100%; object-fit: contain; cursor: zoom-in; }
#viewer-image.zoomed { max-width: none; max-height: none; flex-shrink: 0; align-self: flex-start; cursor: zoom-out; }
.viewer-stage:has(#viewer-image.zoomed) { display: block; }
body:has(.photo-viewer[open]) { overflow: hidden; }

@media (hover: hover) {
  .card-open:hover .photo img { transform: scale(1.035); }
  .card-open:hover .title { text-decoration: underline; text-underline-offset: 3px; }
  .market-search:hover, .gallery-action:hover { border-color: var(--ink-soft); }
  .tab:hover, .location-picker:hover { color: var(--ink); }
}
@media (min-width: 600px) {
  .market-intro { padding-top: 38px; }
  .market-intro h1 { font-size: 54px; letter-spacing: -2.8px; }
  .market-search { max-width: 620px; }
  .grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 30px 20px; max-width: var(--content-max); margin: 0 auto; }
  .card-price { font-size: 22px; }
  .title { font-size: 13px; }
  .tabbar { padding-left: max(22px, calc((100% - 620px) / 2)); padding-right: max(22px, calc((100% - 620px) / 2)); }
  .detail-dock { padding-left: max(22px, calc((100% - 690px) / 2)); padding-right: max(22px, calc((100% - 690px) / 2)); }
  .filter-panel { max-width: calc(var(--content-max) - 44px); }
}
@media (min-width: 768px) {
  header, .filters, .filter-bar, .search-topbar, .search-filters-bar, .favorites-header, .my-header, .post-topbar { padding-left: max(22px, calc((100% - var(--content-max)) / 2 + 22px)); padding-right: max(22px, calc((100% - var(--content-max)) / 2 + 22px)); }
  .lang-menu { border-radius: 16px; }
  .search-suggestions { padding-left: 22px; padding-right: 22px; }
  .search-results { max-width: var(--content-max); margin: 0 auto; }
  .post-body { max-width: 720px; margin: 0 auto; }
  .post-submit { max-width: 676px; margin: 0 auto 24px; }
}
@media (min-width: 900px) {
  .market-intro { padding-top: 30px; display: grid; grid-template-columns: 1.1fr 1fr; column-gap: 60px; }
  .intro-topline { grid-column: 1 / -1; }
  .market-intro h1 { font-size: 53px; letter-spacing: -2.8px; margin-top: 22px; grid-column: 1; }
  .market-search { grid-column: 2; grid-row: 2 / 4; align-self: center; }
  .intro-caption { font-size: 14px; }
  .eyebrow { font-size: 10px; }
  .location-picker { font-size: 12px; }
  .filters { padding-top: 28px; padding-bottom: 23px; }
  .filter-bar { padding-top: 25px; padding-bottom: 25px; }
  .grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .feed-heading h2 { font-size: 23px; }
  #detail-screen { display: none; gap: 42px; padding: 30px 22px; }
  .gallery-shell { flex: 1 1 52%; min-width: 0; position: sticky; top: calc(22px + var(--safe-top)); border-radius: 14px; overflow: hidden; }
  .gallery { min-height: 380px; align-self: auto; }
  .gallery img { aspect-ratio: 1 / 1.12; }
  .gallery-toolbar { top: 16px; }
  .detail-body { flex: 1 1 48%; padding: 4px 0 30px; }
  .detail-price { font-size: 42px; }
  .detail-title { font-size: 14px; }
}
@media (max-width: 350px) {
  header { padding-left: 16px; padding-right: 16px; }
  .market-intro, .filters, .filter-bar { padding-left: 16px; padding-right: 16px; }
  .grid { padding-left: 16px; padding-right: 16px; gap: 20px 10px; }
  .brand { font-size: 21px; }
  .eyebrow { font-size: 8px; letter-spacing: 1px; }
  .feed-heading h2 { font-size: 17px; }
  .card-price { font-size: 17px; }
  .detail-dock { gap: 9px; padding-left: 16px; padding-right: 16px; }
  .dock-price { font-size: 15px; }
  .primary-contact { font-size: 10px; }
}
@media (max-width: 600px) {
  body:has(input:focus, textarea:focus, select:focus) .tabbar { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
.filter-price-hint { color: var(--ink-soft); font-size: 12px; line-height: 1.5; margin: 8px 0 12px; }
.ui-icon { width: 20px; height: 20px; flex: 0 0 20px; vertical-align: middle; }
.fopt { display: inline-flex; align-items: center; gap: 7px; min-height: 42px; }
.contact-link { gap: 12px; min-height: 72px; }
.contact-link > .ui-icon { width: 24px; height: 24px; flex-basis: 24px; }
.contact-copy { flex: 1; display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.contact-copy strong { font-weight: 650; font-size: 14px; }
.contact-copy small { font-size: 11px; color: var(--ink-soft); line-height: 1.5; overflow-wrap: anywhere; }
.attribute-filters { border-top: 1px solid var(--border); padding-top: 18px; margin-top: 20px; }
.attribute-filters h3, .detail-specs h3 { font-size: 15px; letter-spacing: -.3px; margin: 0 0 16px; }
.spec-filter-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px 12px; }
.spec-filter-grid label { font-size: 11px; color: var(--ink-soft); display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.spec-range { display: flex; gap: 6px; }
.spec-floor-presets { display: flex; flex-wrap: wrap; gap: 4px 14px; flex-direction: row; }
.spec-floor-presets .spec-check { font-size: 12px; color: var(--ink); flex-direction: row; align-items: center; gap: 6px; }
.spec-filter-grid input:not([type="checkbox"]), .spec-filter-grid select { width: 100%; min-width: 0; height: 44px; border: 1px solid var(--border); border-radius: 9px; padding: 8px; color: var(--ink); background: var(--bg); }
.spec-filter-grid label.spec-check { flex-direction: row; align-items: center; gap: 8px; }
.spec-filter-grid input[type="checkbox"] { width: 18px; height: 18px; margin: 0; accent-color: var(--accent); }
.detail-specs { padding: 20px 0; margin-top: 20px; border-top: 1px solid var(--border); }
.detail-specs dl { display: grid; grid-template-columns: 1fr 1fr; font-size: 13px; gap: 12px; }
.detail-specs dt { color: var(--ink-soft); }
.detail-specs dd { margin: 0; text-align: right; overflow-wrap: anywhere; }
.brand-wordmark { font-weight: 800; letter-spacing: -.4px; }
.account-summary, .account-tabs, #my-list { max-width: 900px; margin-left: auto; margin-right: auto; }
.account-summary { display: flex; align-items: center; gap: 16px; padding: 24px 20px; }
.account-avatar { width: 64px; height: 64px; flex: 0 0 64px; display: grid; place-items: center; background: var(--brand-yellow); color: var(--on-yellow); border-radius: 20px; font-size: 28px; font-weight: 750; }
.account-summary h2 { margin: 0 0 5px; font-size: 22px; letter-spacing: -.6px; overflow-wrap: anywhere; }
.account-summary p { margin: 0; max-width: 340px; font-size: 11px; color: var(--ink-soft); line-height: 1.6; }
.account-tabs { display: flex; flex-wrap: wrap; gap: 8px; padding: 0 20px 8px; }
.account-tab, .account-action { background: var(--bg); border: 1px solid var(--border); border-radius: 9px; min-height: 40px; padding: 9px 12px; font-size: 11px; cursor: pointer; }
.account-tab[aria-pressed="true"] { background: var(--ink); border-color: var(--ink); color: var(--bg); }
.my-item { padding: 14px; border: 1px solid var(--border); background: var(--card-bg,var(--bg)); border-radius: 12px; gap: 12px; display: grid; grid-template-columns: 70px minmax(0,1fr); align-items: start; }
.my-item-photo { width: 70px; height: 84px; object-fit: cover; border-radius: 8px; }
.my-item-content { min-width: 0; display: flex; flex-direction: column; gap: 6px; }
.my-item-title { border: 0; padding: 0; background: none; text-align: left; font-weight: 600; font-size: 13px; line-height: 1.5; overflow-wrap: anywhere; cursor: pointer; }
.my-item-meta { font-size: 10px; color: var(--ink-soft); }
.my-item-meta[data-status="pending"] { color: var(--accent); }
.my-item-content small { color: var(--ink-soft); font-size: 10px; overflow-wrap: anywhere; }
.my-item-actions { grid-column: 1 / -1; display: flex; gap: 8px; justify-content: flex-end; }
.my-item-actions { flex-direction: row; }
.my-item-actions button { flex: 0 1 auto; }
.brand-filter { grid-column: 1 / -1; }
.brand-options { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 8px; }
.brand-option { display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 8px; min-height: 74px; padding: 10px 4px; background: var(--bg); border: 1px solid var(--border); border-radius: 10px; cursor: pointer; min-width: 0; }
.brand-option span { font-size: 10px; max-width: 100%; overflow: hidden; text-overflow: ellipsis; }
.brand-option[aria-pressed="true"] { border-color: var(--ink); background: var(--accent-light); }
.brand-icon { width: 28px; height: 28px; fill: currentColor; flex-shrink: 0; }
.brand-wordmark { display: flex; justify-content: flex-end; align-items: center; gap: 10px; }
.brand-wordmark .brand-icon { width: 22px; height: 22px; }
.account-sections { max-width: 900px; margin: 0 auto 20px; display: flex; gap: 20px; padding: 0 20px; overflow-x: auto; border-bottom: 1px solid var(--border); }
.account-section { min-height: 46px; white-space: nowrap; background: transparent; border: 0; border-bottom: 2px solid transparent; padding: 10px 0; color: var(--ink-soft); font-size: 13px; cursor: pointer; }
.account-section[aria-pressed="true"] { color: var(--ink); border-bottom-color: var(--ink); font-weight: 750; }
.account-workspace { max-width: 900px; padding: 0 20px 30px; margin: auto; }
.account-admin-open { flex: none; margin-left: auto; min-height: 44px; padding: 10px 13px; border: 1px solid var(--border); border-radius: 10px; color: var(--ink); background: var(--surface); font: inherit; font-size: 12px; font-weight: 650; cursor: pointer; }
#admin-screen { position: fixed; inset: 0; z-index: 60; background: var(--bg); display: none; flex-direction: column; isolation: isolate; overscroll-behavior: none; transition: transform .25s cubic-bezier(.25,.46,.45,.94), opacity .25s ease; }
#admin-screen.active { display: flex; }
body:has(#admin-screen.active) { overflow: hidden; }
.admin-topbar { display: flex; align-items: center; gap: 10px; padding: 8px 12px calc(8px + var(--safe-top, 0px)); border-bottom: 1px solid var(--border); background: var(--bg); }
.admin-topbar .back-btn { background: none; border: 0; color: var(--ink); font-size: 22px; line-height: 1; min-width: 36px; min-height: 44px; cursor: pointer; }
.admin-title { color: var(--ink-soft); font-size: 13px; font-weight: 650; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.admin-swipe-zone { position: absolute; left: 0; top: calc(58px + var(--safe-top, 0px)); bottom: 0; width: 20px; z-index: 61; touch-action: pan-y; }
#admin-frame { flex: 1; width: 100%; border: 0; display: block; background: #0f1115; color-scheme: dark; }
.transaction-card { background: var(--surface); border: 1px solid var(--border); border-radius: 14px; padding: 18px; margin: 12px 0; overflow-wrap: anywhere; }
.transaction-card h3 { font-size: 15px; line-height: 1.5; margin: 10px 0; font-weight: 650; }
.deal-state { color: var(--accent); font-size: 11px; font-weight: 700; }
.transaction-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
.transaction-note { color: var(--ink-soft); font-size: 12px; line-height: 1.7; }
.deal-request-button { background: transparent; border: 1px solid var(--border); border-radius: 10px; padding: 12px; min-height: 44px; width: 100%; margin-top: 14px; font-size: 12px; cursor: pointer; }
.transaction-dialog { width: min(480px,calc(100% - 24px)); max-height: 86dvh; padding: 22px; border: 1px solid var(--border); background: var(--bg); color: var(--ink); border-radius: 18px; margin: auto; overscroll-behavior: contain; }
.transaction-dialog::backdrop { background: #15151299; }
.transaction-header { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.transaction-header h2 { font-size: 21px; margin: 0; letter-spacing: -.6px; }
.transaction-dialog > .account-action { display: block; width: 100%; text-align: left; margin-top: 10px; }
.transaction-primary { width: 100%; min-height: 46px; background: var(--brand-yellow); color: var(--on-yellow); border: 0; border-radius: 10px; padding: 12px; font-weight: 750; margin-top: 16px; cursor: pointer; }
.review-form { display: flex; flex-direction: column; gap: 16px; }
.review-form label { display: flex; flex-direction: column; gap: 8px; font-size: 12px; color: var(--ink-soft); }
.review-form textarea,.review-form select { width: 100%; border: 1px solid var(--border); border-radius: 10px; background: var(--surface); color: var(--ink); padding: 12px; min-height: 44px; }
.review-form textarea { resize: vertical; line-height: 1.6; }
.reputation-summary { display: flex; align-items: center; gap: 20px; padding: 18px 0; }
.reputation-score { font-size: 34px; font-weight: 750; letter-spacing: -1.5px; white-space: nowrap; }
.review-card-header { display: flex; justify-content: space-between; gap: 16px; font-size: 13px; }
.review-rating { font-weight: 750; color: var(--accent); white-space: nowrap; }
.review-text { font-size: 14px; line-height: 1.7; white-space: pre-wrap; }
.review-context { border-left: 2px solid var(--border); padding-left: 12px; font-size: 11px; color: var(--ink-soft); }
.review-reply { margin: 14px 0 0; padding: 14px; background: var(--bg); border-radius: 9px; font-size: 13px; line-height: 1.7; white-space: pre-wrap; }
.review-own { font-size: 12px; font-weight: 700; }
.draft-controls { max-width: 720px; margin: auto; padding: 12px 22px; }
.my-item-actions { flex-wrap: wrap; }
button:disabled { cursor: wait; opacity: .55; }
.my-item:has(.my-item-photo[hidden]) .my-item-content { grid-column: 1 / -1; }
.seller-profile-link { background: none; border: 0; padding: 6px 0; color: var(--accent); text-align: left; font-size: 12px; cursor: pointer; flex-basis: 100%; }
.seller-dialog { width: min(900px,calc(100% - 24px)); max-height: 86dvh; padding: 0; border: 1px solid var(--border); border-radius: 18px; background: var(--bg); color: var(--ink); margin: auto; overscroll-behavior: contain; }
.seller-dialog::backdrop { background: #15151299; }
.seller-dialog-header { position: sticky; top: 0; background: var(--bg); z-index: 1; padding: 16px 20px; display: flex; align-items: center; justify-content: space-between; gap: 16px; border-bottom: 1px solid var(--border); }
.seller-dialog-header h2 { font-size: 18px; margin: 0; overflow-wrap: anywhere; }
.seller-dialog .grid { padding: 20px; }
@media (max-width:350px) { .spec-filter-grid { grid-template-columns: 1fr; } }
.full-spec-field{grid-column:1/-1;overflow-wrap:anywhere}
#post-specifications{border:1px solid var(--border);border-radius:16px;padding:16px}
#post-specifications summary{font-weight:650;cursor:pointer;min-height:32px}
#post-spec-fields{margin-top:16px}
.seller-reviews{display:grid;gap:12px;padding:0 20px 20px}
.seller-dialog .reputation-summary{padding:18px 20px}
.search-open{overflow:hidden;overscroll-behavior:none}
.search-open body{position:fixed;top:var(--search-root-top,0px);left:0;right:0;width:100%;overflow:hidden}
.search-open #feed-screen,.search-open #detail-screen,.search-open #my-screen,.search-open #favorites-screen,.search-open #post-screen{visibility:hidden;pointer-events:none}
#search-screen{isolation:isolate;overscroll-behavior:none}
#search-screen .search-scroll{min-height:0;background:var(--bg);-webkit-overflow-scrolling:touch}
.post-field-error{font-size:12px;line-height:1.5;color:#b1392c;margin:8px 0}
#post-screen [aria-invalid=true]{border-color:#b1392c;outline:1px solid #b1392c}
#post-feedback{padding:14px 16px;border-radius:12px;background:var(--surface);border:1px solid #b1392c;font-size:13px;line-height:1.6}
#post-feedback[data-kind=success]{border-color:var(--accent);color:var(--accent)}
.post-section-label{display:block}
.account-count{font-size:10px;line-height:1;padding:3px 5px;border-radius:6px;background:var(--border);margin-left:6px;vertical-align:top;display:inline-block;font-variant-numeric:tabular-nums}
#post-screen[aria-busy=true] .post-chip,#post-screen[aria-busy=true] .photo-add-btn{pointer-events:none;opacity:.55}
#chips{overflow-x:auto;touch-action:pan-x pan-y;scrollbar-width:thin;scroll-padding-inline:22px}
#chips .chip{flex-shrink:0;min-width:68px}
.contact-source{font-size:12px;opacity:.8;border-style:dashed}
.converted-price{display:block;color:var(--ink-soft);font-size:11px;line-height:1.5;margin-top:4px}
#disable-notifications{display:block;margin:0 auto 20px}
/* Search refinements belong to the result, not to a paid feature panel. */
.search-understanding { padding: 2px 16px 14px; color: var(--ink); }
.search-understanding p { margin: 0 0 8px; font-size: 14px; font-weight: 600; }
.search-condition-list, .search-alternative-options { display: flex; flex-wrap: wrap; gap: 8px; }
.search-condition-list span { padding: 5px 9px; border: 1px solid var(--border); border-radius: 8px; font-size: 12px; }
.search-alternatives { margin: 16px; padding: 16px; border: 1px solid var(--border); border-radius: 16px; }
.search-alternatives h3 { margin: 0; font-size: 16px; }
.search-alternative { min-height: 44px; padding: 10px 14px; border: 1px solid var(--border); border-radius: 12px; background: var(--surface); color: var(--ink); font: inherit; font-size: 14px; cursor: pointer; text-align: left; overflow-wrap: anywhere; }
.search-alternative:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
.my-header { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px; }
.account-feedback,.account-contact-setup,.contact-help { min-height:44px; padding:10px 13px; border:1px solid var(--border); border-radius:10px; color:var(--ink); background:var(--surface); font:inherit; font-size:12px; cursor:pointer; }
.account-summary { flex-wrap:wrap; }
.account-summary > div { flex:1; min-width:160px; }
.account-contact-setup { margin-left:auto; }
.account-result { max-width:868px; margin:0 auto 16px; padding:14px 18px; background:#edf3ed; color:#28553c; border:1px solid #bccdbc; border-radius:12px; font-size:14px; line-height:1.5; }
.my-item--published { background:color-mix(in srgb,var(--surface) 94%,#f2c94c); }
.account-result:focus { outline:none; }
.my-item-meta[data-status=needs_changes],.my-item-meta[data-status=under_review] { color:#9a412e; }
.my-item-content > small { line-height:1.5; color:var(--ink-soft); }
.feedback-success { color:#28553c; line-height:1.5; }
.feedback-history { margin-top:24px; }
.feedback-history h3 { font-size:15px; }
.contact-setup > button { margin:8px 8px 0 0; }
@media(max-width:600px){.account-result{margin:0 16px 16px}.account-contact-setup{margin-left:0}.my-header .my-title{font-size:24px}}
