:root {
  color-scheme: light;
  --ink: #152a3e;
  --ink-soft: #496174;
  --muted: #8191a0;
  --navy: #102b45;
  --navy-deep: #0a2036;
  --blue: #345fe3;
  --blue-dark: #244bc0;
  --blue-soft: #edf2ff;
  --mint: #d7f3df;
  --line: #e2e8ee;
  --paper: #ffffff;
  --canvas: #f5f7fa;
  --green: #207a51;
  --amber: #91620c;
  --shadow: 0 18px 50px rgba(29, 52, 76, .08);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 96px; }
body { margin: 0; background: var(--canvas); color: var(--ink); font-size: 15px; line-height: 1.55; }
a { color: var(--blue); text-decoration: none; }
a:hover { color: var(--blue-dark); }
button, input, select, textarea { font: inherit; }
button, input[type="submit"] { cursor: pointer; }
img { max-width: 100%; display: block; }
h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { line-height: 1.15; letter-spacing: -.035em; }
h1 { font-size: clamp(2.1rem, 4vw, 3.55rem); }
h2 { font-size: clamp(1.5rem, 2.2vw, 2.1rem); }
h3 { font-size: 1.16rem; }
.muted, .small-print { color: var(--muted); }
.small-print { font-size: .82rem; }
.eyebrow { color: #6b7e90; font-size: .73rem; font-weight: 750; letter-spacing: .12em; text-transform: uppercase; margin: 0 0 .6rem; }
.lead { color: var(--ink-soft); font-size: 1.07rem; max-width: 660px; }
.site-shell { width: min(1320px, calc(100% - 64px)); margin: 0 auto; min-height: calc(100vh - 154px); padding: 28px 0 84px; }

.topbar { background: var(--paper); border-bottom: 1px solid rgba(20, 48, 73, .08); position: sticky; top: 0; z-index: 1000; }
.topbar-inner { min-height: 74px; width: min(1440px, calc(100% - 64px)); margin: auto; display: flex; align-items: center; gap: 44px; }
.brand { display: inline-flex; align-items: center; gap: 10px; color: var(--navy); font-size: 1rem; font-weight: 850; letter-spacing: .04em; white-space: nowrap; }
.brand:hover { color: var(--navy); }
.brand-mark { width: 34px; height: 34px; display: grid; place-items: center; color: #fff; background: var(--blue); border-radius: 10px 10px 10px 3px; font-size: .84rem; letter-spacing: -.05em; }
.primary-nav { display: flex; align-items: center; gap: 30px; flex: 1; height: 74px; }
.primary-nav a { color: #6e7f90; font-size: .9rem; font-weight: 600; height: 100%; display: inline-flex; align-items: center; position: relative; }
.primary-nav a:hover, .primary-nav a.is-current { color: var(--navy); }
.primary-nav a.is-current::after { content: ""; position: absolute; bottom: 0; height: 3px; background: var(--blue); left: 0; right: 0; border-radius: 4px 4px 0 0; }
.topbar-actions { display: flex; align-items: center; gap: 10px; }
.topbar-account { max-width: 180px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--ink-soft); font-size: .8rem; margin-right: 6px; }
.topbar-actions form { margin: 0; }
.button { min-height: 46px; padding: 0 19px; display: inline-flex; align-items: center; justify-content: center; border: 1px solid transparent; border-radius: 9px; font-weight: 700; font-size: .9rem; transition: .15s ease; white-space: nowrap; }
.button:hover { transform: translateY(-1px); }
.button:disabled, .button[aria-disabled="true"] { opacity: .48; cursor: not-allowed; transform: none; }
.button--primary { background: var(--blue); color: white; box-shadow: 0 7px 18px rgba(52, 95, 227, .2); }
.button--primary:hover { color: white; background: var(--blue-dark); }
.button--outline { color: var(--ink); background: white; border-color: var(--line); }
.button--outline:hover, .button--quiet:hover { border-color: #c2d0df; background: #f9fbfd; color: var(--navy); }
.button--quiet { color: var(--ink-soft); background: transparent; border-color: transparent; }
.button--dark { background: var(--navy); color: white; }
.button--dark:hover { color: white; background: #1b4161; }
.button--small { min-height: 38px; padding: 0 13px; font-size: .82rem; }
.button--wide { width: 100%; }
.text-link { font-weight: 700; font-size: .88rem; }
.text-link-button { border: 0; background: transparent; color: var(--blue); padding: 0; font-weight: 700; }
.centered-link { display: block; text-align: center; margin-top: 14px; font-size: .88rem; font-weight: 650; }
.site-footer { border-top: 1px solid var(--line); background: #fff; }
.footer-inner { min-height: 78px; width: min(1320px, calc(100% - 64px)); margin: auto; display: flex; align-items: center; justify-content: space-between; color: var(--ink-soft); font-size: .82rem; }

.flash { border-radius: 9px; padding: 12px 16px; margin: 0 0 24px; font-weight: 600; }
.flash--notice { color: #145d3e; background: #e7f5ed; border: 1px solid #c8e8d3; }
.flash--alert { color: #814510; background: #fff4e4; border: 1px solid #f1d9b6; }
.page-heading { margin: 26px 0 38px; }
.page-heading h1 { margin-bottom: 10px; }
.page-heading--split { display: flex; justify-content: space-between; align-items: end; gap: 30px; }
.page-heading--compact { margin-bottom: 28px; }
.breadcrumb { display: flex; gap: 11px; align-items: center; color: var(--muted); font-size: .82rem; margin: 5px 0 22px; }

/* Marketplace search */
.market-hero { min-height: 310px; display: flex; align-items: center; justify-content: space-between; position: relative; overflow: hidden; padding: 18px 7% 42px; background: linear-gradient(115deg, #102b45 0%, #183c5c 63%, #214e69 100%); color: white; border-radius: 15px; margin-bottom: -5px; }
.market-hero-copy { position: relative; z-index: 2; max-width: 710px; }
.market-hero .eyebrow { color: #b4c6d5; }
.eyebrow-dot, .live-dot { width: 7px; height: 7px; border-radius: 50%; display: inline-block; background: #a8db67; margin: 0 8px 1px 0; }
.market-hero h1 { max-width: 700px; margin: 0 0 13px; color: white; font-size: clamp(2.45rem, 4.8vw, 4.2rem); line-height: 1.02; }
.hero-description { color: #cad8e4; font-size: 1.08rem; max-width: 610px; margin-bottom: 23px; }
.hero-proof { display: flex; align-items: center; gap: 17px; color: #bed0dc; font-size: .82rem; }
.hero-proof strong { color: #fff; font-size: 1rem; }
.proof-divider { height: 16px; width: 1px; background: #56738a; }
.hero-orbit { position: absolute; right: 7%; top: 8px; width: 340px; height: 300px; display: grid; place-items: center; opacity: .82; }
.orbit-ring { border: 1px solid rgba(163, 201, 225, .22); border-radius: 50%; position: absolute; transform: rotate(-25deg); }
.orbit-ring--one { width: 260px; height: 130px; }
.orbit-ring--two { width: 300px; height: 200px; transform: rotate(42deg); }
.orbit-core { display: flex; justify-content: center; align-items: center; gap: 4px; width: 112px; height: 112px; color: white; background: radial-gradient(circle at 36% 30%, #5c81fa, #345fe3 60%, #2345a7); border: 5px solid rgba(255,255,255,.12); border-radius: 32px 32px 32px 7px; box-shadow: 0 24px 50px rgba(3, 14, 30, .25); transform: rotate(-8deg); }
.orbit-core span { font-size: 1.65rem; font-weight: 700; }
.orbit-core strong { font-size: 1.8rem; color: #d7f3a0; }
.orbit-point { position: absolute; width: 15px; height: 15px; border-radius: 50%; background: #b9de78; box-shadow: 0 0 0 7px rgba(185, 222, 120, .12); }
.orbit-point--one { right: 32px; top: 72px; }.orbit-point--two { left: 22px; bottom: 76px; width: 10px; height: 10px; }.orbit-point--three { right: 50px; bottom: 31px; width: 8px; height: 8px; }
.search-panel { position: relative; z-index: 4; background: white; border-radius: 14px; box-shadow: var(--shadow); padding: 27px 31px 25px; margin: 0 28px 45px; }
.search-panel-heading { display: flex; justify-content: space-between; align-items: start; }
.search-panel-heading h2 { font-size: 1.33rem; margin-bottom: 21px; }
.search-panel-step { color: #b6c2cc; font-size: .78rem; font-weight: 800; letter-spacing: .06em; }.search-panel-step span { color: #dae1e7; }
.search-primary-row { display: grid; grid-template-columns: minmax(220px, 1.5fr) minmax(105px, .66fr) minmax(195px, 1.15fr) minmax(165px, .95fr) 145px; gap: 12px; align-items: end; }
.field { min-width: 0; display: flex; flex-direction: column; gap: 7px; margin-bottom: 16px; }
.field label, .filter-fieldset legend { color: #54697b; font-size: .81rem; font-weight: 700; }
.field input, .field select, .field textarea, .search-form select, .search-form input:not([type=checkbox]):not([type=submit]), .admin-inline-form select { width: 100%; min-height: 45px; border: 1px solid #dbe3eb; border-radius: 8px; background: #fff; padding: 10px 12px; color: var(--ink); outline: none; transition: border .15s, box-shadow .15s; }
.field textarea { resize: vertical; min-height: 120px; }
.field input:focus, .field select:focus, .field textarea:focus, .search-form input:focus, .search-form select:focus { border-color: #7c9cf7; box-shadow: 0 0 0 3px rgba(52,95,227,.12); }
.field--location .input-with-icon { position: relative; }.input-with-icon > span { position: absolute; left: 13px; top: 8px; font-size: 1.25rem; color: var(--blue); }.input-with-icon input { padding-left: 40px!important; }
.quantity-input { display: flex; }.quantity-input input { border-radius: 8px 0 0 8px!important; }.quantity-input select { width: 96px; border-left: 0; border-radius: 0 8px 8px 0; }
.search-submit { min-height: 45px; margin-bottom: 16px; }
.search-filters-row { border-top: 1px solid #edf0f3; margin-top: 4px; padding-top: 17px; display: flex; gap: 28px; align-items: center; }
.filter-fieldset { border: 0; padding: 0; margin: 0; min-width: 0; }.filter-fieldset legend { margin-bottom: 8px; }.filter-fieldset legend span { color: #9aa8b4; font-weight: 500; }
.chip-options { display: flex; gap: 7px; flex-wrap: wrap; }.filter-chip { position: relative; cursor: pointer; }.filter-chip input { position: absolute; opacity: 0; pointer-events: none; }.filter-chip span { display: inline-flex; align-items: center; min-height: 32px; padding: 0 12px; border: 1px solid #e1e7ed; border-radius: 7px; color: #607384; font-size: .78rem; font-weight: 600; }.filter-chip input:checked + span { color: var(--blue-dark); border-color: #9db2fa; background: #f0f4ff; }
.advanced-filters { margin-left: auto; color: var(--blue); font-size: .82rem; font-weight: 700; }.advanced-filters summary { cursor: pointer; list-style: none; }.advanced-filters summary::-webkit-details-marker { display: none; }.advanced-filters summary span { margin-left: 7px; font-size: 1rem; }
.advanced-filter-grid { display: grid; grid-template-columns: repeat(3, minmax(150px, 1fr)); gap: 18px; position: absolute; left: 31px; right: 31px; top: calc(100% - 8px); padding: 22px; background: white; box-shadow: var(--shadow); border: 1px solid var(--line); border-radius: 0 0 12px 12px; z-index: 12; }
.tag-options { display: grid; gap: 7px; max-height: 190px; overflow: auto; }.tag-options label { display: flex; gap: 8px; color: var(--ink-soft); font-size: .8rem; }.tag-options input, .reference-option input, .check-toggle input { accent-color: var(--blue); }
.results-layout { display: grid; grid-template-columns: minmax(0, 1.7fr) minmax(320px, .78fr); gap: 28px; align-items: start; }
.results-toolbar { display: flex; justify-content: space-between; align-items: end; gap: 20px; margin-bottom: 19px; }.results-toolbar .eyebrow { margin-bottom: 4px; }.results-toolbar h2 { margin: 0; font-size: 1.5rem; }
.results-toolbar-actions { display: flex; align-items: center; gap: 13px; }.inline-alert-form { margin: 0; }.sort-select { display: flex; align-items: center; gap: 7px; color: #8594a1; font-size: .77rem; }.sort-select select { border: 0; background: transparent; color: var(--ink); font-weight: 700; padding: 5px; }
.listing-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.listing-card { min-width: 0; overflow: hidden; background: var(--paper); border: 1px solid #e7ebef; border-radius: 12px; transition: transform .16s, box-shadow .16s; }.listing-card:hover { transform: translateY(-2px); box-shadow: 0 15px 30px rgba(23,43,63,.09); }
.listing-card-image { height: 188px; position: relative; display: block; overflow: hidden; background: linear-gradient(145deg,#dce7ed,#bacdd3); }.listing-card-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .3s; }.listing-card:hover .listing-card-image img { transform: scale(1.025); }
.image-placeholder { display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 2px; height: 100%; color: #648396; background: linear-gradient(140deg,#e1ebee,#cbdade); }.image-placeholder > span { font-size: 2.4rem; }.image-placeholder small { font-size: .74rem; }
.new-badge, .offer-badge { position: absolute; top: 12px; border-radius: 5px; padding: 5px 8px; font-size: .68rem; font-weight: 750; box-shadow: 0 3px 10px rgba(0,0,0,.08); }.new-badge { left: 12px; color: #345b18; background: #e2f3c5; }.offer-badge { right: 12px; background: rgba(255,255,255,.94); color: var(--ink-soft); }
.listing-card-content { padding: 17px 18px 15px; }.listing-card-overline { display: flex; justify-content: space-between; gap: 8px; align-items: center; color: #8091a0; font-size: .68rem; text-transform: uppercase; letter-spacing: .045em; font-weight: 750; }.listing-card-overline span:first-child { color: #398061; }
.listing-card h3 { margin: 9px 0 7px; font-size: 1.12rem; line-height: 1.3; }.listing-card h3 a { color: var(--ink); }.listing-location { color: #687c8e; font-size: .8rem; margin: 0 0 13px; }.listing-location > span:first-child { color: var(--blue); font-size: 1rem; }
.listing-card-stats { display: flex; gap: 18px; min-height: 31px; align-items: center; color: #748696; font-size: .75rem; }.listing-card-stats strong { color: var(--ink); font-size: .88rem; }
.listing-card-tags { display: flex; gap: 5px; flex-wrap: wrap; margin: 10px 0 11px; }.temperature-tag { display: inline-block; border-radius: 5px; padding: 3px 7px; background: #eff3f7; color: #657a8c; font-size: .69rem; font-weight: 650; }
.listing-card-footer { border-top: 1px solid #edf0f3; padding-top: 11px; display: flex; align-items: center; justify-content: space-between; color: #7b8b99; font-size: .72rem; }.listing-card-footer .text-link { font-size: .76rem; }
.favorite-action { margin-top: 12px; border: 0; background: none; color: #51687b; padding: 0; font-size: .78rem; font-weight: 650; }.favorite-action:hover { color: var(--blue); }
.map-column { background: white; border: 1px solid var(--line); border-radius: 12px; padding: 17px; position: sticky; top: 98px; }.map-heading { display: flex; justify-content: space-between; align-items: center; padding: 0 2px 13px; }.map-heading .eyebrow { margin: 0 0 3px; font-size: .68rem; }.map-heading strong { color: var(--ink); font-size: .9rem; }.map-count { min-width: 30px; height: 30px; display: grid; place-items: center; border-radius: 50%; background: var(--blue-soft); color: var(--blue); font-size: .77rem; font-weight: 800; }
.market-map { width: 100%; height: 515px; border-radius: 8px; background: #e9eef1; overflow: hidden; z-index: 1; }.detail-map { height: 310px; border-radius: 9px; background: #e9eef1; overflow: hidden; z-index: 1; }.map-caption { color: #8b9aa6; font-size: .7rem; margin: 9px 2px 0; }.map-legend { display: flex; gap: 18px; margin: 12px 2px 0; color: #718291; font-size: .7rem; }.map-legend span { display: inline-flex; align-items: center; gap: 6px; }.map-legend i { width: 8px; height: 8px; display: inline-block; border-radius: 50%; background: var(--blue); }.map-legend .legend-circle { background: #dce6ff; border: 1px solid var(--blue); width: 11px; height: 11px; }
.map-popup-link { display: block; padding: 5px 0; font-size: .8rem; }.leaflet-popup-content-wrapper { border-radius: 8px!important; }.leaflet-container { font: inherit; }
.pagination { display: flex; justify-content: center; align-items: center; gap: 18px; margin: 28px 0 0; color: #788999; font-size: .82rem; }.empty-state { padding: 60px 30px; text-align: center; background: white; border: 1px dashed #dbe3e9; border-radius: 12px; }.empty-state h2, .empty-state h3 { margin-bottom: 8px; }.empty-state p { color: var(--muted); max-width: 470px; margin: 0 auto 21px; }.empty-state--wide { margin-top: 5px; }.empty-icon { display: block; font-size: 2.1rem; color: #8ba5b4; margin-bottom: 9px; }

/* Authentication */
.auth-layout { max-width: 1070px; margin: 48px auto; display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(310px, .7fr); background: white; border-radius: 15px; box-shadow: var(--shadow); overflow: hidden; }.auth-panel { padding: 48px clamp(28px, 5vw, 68px); }.auth-panel h1 { font-size: clamp(2rem, 3.5vw, 2.8rem); margin-bottom: 13px; }.auth-panel .lead { margin-bottom: 28px; font-size: .98rem; }.auth-aside { padding: 48px 40px; color: white; background: linear-gradient(150deg,#102b45,#1b4565); position: relative; overflow: hidden; }.auth-aside::after { content: ""; position: absolute; right: -80px; bottom: -140px; width: 280px; height: 280px; border: 1px solid rgba(255,255,255,.15); border-radius: 50%; box-shadow: 0 0 0 30px rgba(255,255,255,.035),0 0 0 60px rgba(255,255,255,.025); }.auth-aside h2 { margin: 9px 0 16px; font-size: 1.9rem; max-width: 340px; }.auth-aside p { color: #c1d2de; font-size: .92rem; }.auth-aside .eyebrow { color: #b7ca72; }.auth-aside-icon { display: grid; place-items: center; width: 45px; height: 45px; background: rgba(255,255,255,.13); border-radius: 12px; font-size: 1.4rem; margin-bottom: 34px; }.stat-line { display: flex; gap: 11px; align-items: baseline; margin-top: 45px; color: #cfdae2; font-size: .78rem; }.stat-line strong { color: #fff; font-size: 1.35rem; }.auth-aside--signup { background: linear-gradient(150deg,#204b60,#1a634e); }.auth-layout--signup { margin: 28px auto; }.auth-layout--signup .auth-panel { padding-top: 37px; padding-bottom: 37px; }.auth-layout--signup .auth-aside { padding-top: 49px; }.auth-layout--signup h1 { font-size: clamp(1.9rem,3.2vw,2.5rem); }
.stack-form { display: flex; flex-direction: column; gap: 2px; }.stack-form .button { margin-top: 8px; }.form-footnote { margin: 23px 0 0; color: #7b8d9b; font-size: .84rem; text-align: center; }.form-divider { border-top: 1px solid var(--line); margin: 9px 0 14px; text-align: center; }.form-divider span { color: #8795a1; display: inline-block; background: white; padding: 0 12px; transform: translateY(-11px); font-size: .75rem; }
.field-row { display: flex; gap: 12px; }.field-row > .field { flex: 1; }.field-hint { color: #8b99a5; font-size: .73rem; margin: -2px 0 0; }.field-error { color: #ad3b35; font-size: .75rem; margin: 0; }.check-list { list-style: none; margin: 30px 0; padding: 0; display: grid; gap: 16px; position: relative; z-index: 1; }.check-list li { color: #edf5f6; }.check-list li::before { content: "✓"; color: #b7df76; font-weight: 800; margin-right: 11px; }

/* Dashboard and forms */
.trial-banner { display: flex; justify-content: space-between; align-items: center; gap: 22px; padding: 22px 28px; margin: -9px 0 29px; background: #edf4ff; border: 1px solid #d5e3ff; border-radius: 12px; }.trial-banner h2 { font-size: 1.6rem; margin: 0 0 3px; }.trial-banner p { margin: 0; color: #6d7e8c; font-size: .83rem; }.trial-banner--urgent { background: #fff3e4; border-color: #f2d9b7; }.trial-price { color: var(--navy); font-size: 1.4rem; font-weight: 800; white-space: nowrap; }.trial-price small { display: block; color: #758594; font-size: .72rem; font-weight: 600; }
.dashboard-grid { display: grid; grid-template-columns: minmax(0,1fr) 300px; gap: 28px; align-items: start; }.dashboard-main { min-width: 0; }.section-heading { display: flex; align-items: end; justify-content: space-between; gap: 18px; margin-bottom: 16px; }.section-heading .eyebrow { margin-bottom: 5px; }.section-heading h2 { margin: 0; font-size: 1.45rem; }.section-heading--spaced { margin-top: 40px; }.listing-table, .request-list { background: white; border: 1px solid var(--line); border-radius: 11px; overflow: hidden; }.listing-row { display: flex; gap: 14px; align-items: center; padding: 13px 16px; border-bottom: 1px solid #edf0f3; }.listing-row:last-child { border-bottom: 0; }.listing-thumb { width: 88px; height: 65px; flex: 0 0 88px; border-radius: 7px; overflow: hidden; display: grid; place-items: center; background: #e6eef0; color: #8099a6; font-size: 1.6rem; }.listing-thumb img { width: 100%; height: 100%; object-fit: cover; }.listing-row-info { flex: 1; min-width: 0; display: grid; gap: 3px; }.listing-row-info > strong { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }.listing-row-info > strong a { color: var(--ink); }.listing-row-info > span { color: #81909d; font-size: .76rem; }.listing-row-side { display: grid; text-align: right; color: #7f8d99; font-size: .67rem; }.listing-row-side strong { color: var(--blue); font-size: 1.05rem; }.listing-row-side small { color: #8595a4; font-size: .68rem; }
.status-pill { display: inline-flex; width: fit-content; border-radius: 20px; background: #eef2f5; color: #637687; padding: 3px 9px; font-size: .67rem; font-weight: 700; }.status-pill--published { background: #e6f4eb; color: #36734f; }.status-pill--draft { background: #f0f3f5; }.status-pill--archived, .status-pill--expired { background: #fceceb; color: #a34b44; }
.dashboard-side { display: grid; gap: 14px; }.side-card { background: white; border: 1px solid var(--line); border-radius: 11px; padding: 20px; }.side-card h3 { margin: 4px 0 12px; }.side-card p { color: #778896; font-size: .82rem; }.side-card--tint { background: #eaf1ff; border-color: #dce6ff; }.side-card--tint h3 { color: var(--navy); }.side-metric { display: flex; justify-content: space-between; gap: 12px; border-top: 1px solid #edf0f3; padding: 11px 0; color: #7d8b98; font-size: .78rem; }.side-metric strong { color: var(--ink); text-align: right; overflow-wrap: anywhere; }.compact-link { display: block; padding: 7px 0; border-top: 1px solid #edf0f3; font-size: .8rem; font-weight: 650; }.empty-inline { color: #81909c; font-size: .84rem; padding: 13px 0; }
.request-row { display: flex; align-items: center; gap: 13px; padding: 13px 15px; color: var(--ink); border-bottom: 1px solid #edf0f3; }.request-row:last-child { border-bottom: 0; }.request-row:hover { background: #f8faff; color: var(--ink); }.request-avatar { width: 34px; height: 34px; display: grid; place-items: center; flex: 0 0 34px; color: #4771db; background: #edf2ff; border-radius: 50%; font-size: .83rem; font-weight: 800; }.request-row > span:nth-child(2) { min-width: 0; flex: 1; display: grid; gap: 3px; }.request-row small { color: #82909c; font-size: .73rem; }.request-row--large { padding: 18px; }.request-row-main { display: grid; gap: 4px; min-width: 0; flex: 1; }.request-row-main strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.request-list--full { box-shadow: 0 5px 20px rgba(25,48,69,.03); }.requests-page-layout { max-width: 980px; }
.form-steps { display: flex; gap: 0; overflow: auto; background: white; border: 1px solid var(--line); border-radius: 10px; margin: 0 0 19px; }.form-steps a { display: flex; align-items: center; gap: 8px; min-height: 56px; padding: 0 18px; color: #708292; font-size: .8rem; font-weight: 650; white-space: nowrap; }.form-steps a:hover { background: #f7f9ff; }.form-steps a span { color: var(--blue); font-size: .69rem; font-weight: 800; }
.listing-form-layout { display: grid; grid-template-columns: minmax(0,1fr) 310px; align-items: start; gap: 23px; }.listing-form-main { min-width: 0; }.listing-form { display: grid; gap: 16px; }.form-section { scroll-margin-top: 100px; padding: 26px 28px; background: white; border: 1px solid var(--line); border-radius: 11px; }.form-section-heading { display: flex; gap: 16px; align-items: flex-start; margin-bottom: 21px; }.form-section-heading h2 { margin: 0 0 6px; font-size: 1.37rem; }.form-section-heading p:last-child { margin: 0; color: #8593a0; font-size: .8rem; }.section-number { width: 37px; height: 37px; display: grid; place-items: center; flex: 0 0 37px; border-radius: 9px; color: var(--blue); background: #eef3ff; font-size: .8rem; font-weight: 850; }.form-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 14px; }.field--full { grid-column: 1/-1; }.field--compact { max-width: 250px; margin-top: 15px; margin-bottom: 0; }
.zone-editor { overflow: hidden; border: 1px solid #e4eaf0; border-radius: 9px; }.zone-editor-head, .zone-editor-row { display: grid; grid-template-columns: 1.05fr 1fr 1fr 1.1fr; gap: 8px; align-items: center; padding: 10px 12px; }.zone-editor-head { background: #f5f7fa; color: #778896; font-size: .72rem; font-weight: 750; }.zone-editor-row { border-top: 1px solid #edf0f3; }.zone-editor-row > strong { font-size: .82rem; }.zone-editor-row .field { margin: 0; }.zone-editor-row .field input { min-height: 40px; padding: 8px; font-size: .78rem; }.zone-extra-fields { grid-column: 1/-1; display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; padding: 7px 0 2px; }.zone-extra-fields .field { margin: 0; }.zone-extra-fields .field label { font-size: .69rem; }.zone-extra-fields .field input { min-height: 39px; }.check-toggle { display: inline-flex; gap: 8px; align-items: center; color: #596f81; font-size: .78rem; }.zone-extra-fields .check-toggle { padding: 5px 0; }
.reference-groups { display: grid; gap: 20px; }.reference-group h3 { color: #465d70; font-size: .85rem; margin-bottom: 10px; }.reference-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }.reference-option { display: flex; align-items: center; gap: 9px; min-height: 42px; padding: 6px 10px; border: 1px solid #e7ecf1; border-radius: 7px; cursor: pointer; color: #5d7182; font-size: .78rem; }.reference-option:hover { background: #f9fbff; border-color: #d5e0fb; }.reference-option input { position: absolute; opacity: 0; }.reference-check { width: 17px; height: 17px; display: grid; place-items: center; border: 1px solid #cfd8e1; border-radius: 4px; color: transparent; font-size: .68rem; }.reference-option input:checked + .reference-check { color: white; background: var(--blue); border-color: var(--blue); }
.upload-dropzone { min-height: 138px; border: 1px dashed #b8c8d4; border-radius: 9px; display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 4px; position: relative; background: #fbfcfd; color: #657a8c; font-size: .8rem; }.upload-dropzone input { position: absolute; inset: 0; opacity: 0; width: 100%; height: 100%; cursor: pointer; }.upload-dropzone strong { color: var(--blue); font-size: .92rem; }.upload-dropzone span { color: #929fa9; font-size: .72rem; }.uploaded-photos { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 13px; }.uploaded-photos figure { margin: 0; width: 120px; }.uploaded-photos img { width: 120px; height: 82px; object-fit: cover; border-radius: 6px; }.uploaded-photos figcaption { color: #81909b; font-size: .66rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.form-submit-bar { position: sticky; bottom: 12px; z-index: 6; display: flex; justify-content: flex-end; gap: 10px; padding: 12px; background: rgba(255,255,255,.94); border: 1px solid var(--line); border-radius: 10px; box-shadow: 0 8px 24px rgba(20,42,65,.09); backdrop-filter: blur(10px); }.listing-form-aside { display: grid; gap: 14px; position: sticky; top: 96px; }.form-preview-card, .quality-card, .ai-card, .subscription-card { background: white; border: 1px solid var(--line); border-radius: 11px; overflow: hidden; }.preview-label { padding: 13px 15px; color: #718394; font-size: .7rem; text-transform: uppercase; font-weight: 800; letter-spacing: .08em; }.live-dot { background: #48a86f; }.preview-image { min-height: 123px; display: grid; place-items: center; color: #78909f; font-size: 2rem; background: linear-gradient(135deg,#d9e7e9,#c6d6dd); }.preview-content { padding: 15px; }.preview-location { color: #8493a0; font-size: .72rem; }.preview-content h3 { margin: 6px 0 13px; font-size: .97rem; }.preview-capacity { display: flex; align-items: baseline; gap: 7px; margin-bottom: 12px; }.preview-capacity strong { font-size: 1.1rem; }.preview-capacity span { color: #8694a0; font-size: .7rem; }
.quality-card { padding: 17px; }.quality-card-heading { display: flex; justify-content: space-between; align-items: start; }.quality-card-heading .eyebrow { font-size: .67rem; }.quality-card-heading strong { color: var(--blue); font-size: 1.1rem; }.quality-card-heading small { color: #94a0aa; font-size: .68rem; }.quality-track { height: 5px; background: #edf0f3; border-radius: 4px; margin: 10px 0 12px; overflow: hidden; }.quality-track span { display: block; height: 100%; background: linear-gradient(90deg,#56a878,#b8d96c); border-radius: inherit; }.quality-card ul { list-style: none; padding: 0; margin: 0; display: grid; gap: 7px; color: #718290; font-size: .7rem; }
.ai-card { display: flex; gap: 12px; padding: 17px; background: #eff3ff; border-color: #dce5ff; }.ai-card-icon { width: 30px; height: 30px; flex: 0 0 30px; display: grid; place-items: center; background: #dce6ff; color: var(--blue); border-radius: 8px; }.ai-card h3 { font-size: .93rem; margin: 0 0 6px; }.ai-card p:not(.eyebrow) { color: #77899a; font-size: .72rem; margin-bottom: 12px; }.ai-card .eyebrow { font-size: .63rem; margin-bottom: 4px; }.ai-card > div:last-child { min-width: 0; flex: 1; }.ai-card .button { min-height: 39px; padding: 0 10px; font-size: .77rem; white-space: normal; }.subscription-card { padding: 17px; display: grid; gap: 4px; }.subscription-card .eyebrow { margin: 0; }.subscription-card strong { font-size: .94rem; }.subscription-card span:last-child { color: #82909b; font-size: .74rem; }

/* Listing detail, contact, administration */
.listing-detail-layout { display: grid; grid-template-columns: minmax(0,1fr) 325px; gap: 30px; align-items: start; }.listing-detail-main { min-width: 0; }.detail-gallery { display: grid; grid-template-columns: minmax(0,1.55fr) minmax(150px,.55fr); gap: 8px; height: 360px; overflow: hidden; border-radius: 12px; background: #e5edef; }.gallery-main { min-width: 0; position: relative; overflow: hidden; }.gallery-main img { width: 100%; height: 100%; object-fit: cover; }.gallery-count { position: absolute; left: 14px; bottom: 14px; border-radius: 6px; padding: 6px 9px; color: white; background: rgba(11,30,48,.72); font-size: .72rem; }.gallery-thumbnails { display: grid; grid-template-rows: repeat(2,1fr); gap: 8px; overflow: hidden; }.gallery-thumbnails img { width: 100%; height: 100%; object-fit: cover; }.gallery-empty { grid-column: 1/-1; display: grid; place-items: center; align-content: center; color: #77909d; background: linear-gradient(140deg,#dce8e9,#c8d8de); }.gallery-empty span { font-size: 3rem; }.gallery-empty p { margin: 0; font-size: .8rem; }.detail-heading { display: flex; align-items: start; justify-content: space-between; gap: 20px; margin: 25px 0 20px; }.detail-heading h1 { font-size: clamp(1.85rem,3vw,2.65rem); margin: 7px 0; }.new-badge--large { position: static; margin-top: 22px; white-space: nowrap; }.key-stats { display: grid; grid-template-columns: repeat(3,1fr); border: 1px solid var(--line); background: white; border-radius: 10px; overflow: hidden; margin-bottom: 34px; }.key-stats > div { min-height: 88px; display: grid; align-content: center; gap: 3px; padding: 14px 17px; border-right: 1px solid #edf0f3; border-bottom: 1px solid #edf0f3; }.key-stats > div:nth-child(3n) { border-right: 0; }.key-stats > div:nth-last-child(-n+3) { border-bottom: 0; }.key-stats span { color: #8593a0; font-size: .7rem; }.key-stats strong { font-size: .94rem; }.detail-section { margin: 36px 0; }.detail-section .section-heading { margin-bottom: 17px; }.detail-section .section-heading h2 { font-size: 1.45rem; }.zone-table { border: 1px solid var(--line); border-radius: 9px; overflow: hidden; background: white; }.zone-table-head,.zone-table-row { display: grid; grid-template-columns: 1.4fr 1fr 1fr .7fr; gap: 10px; align-items: center; padding: 13px 16px; }.zone-table-head { color: #82919d; background: #f5f7f9; font-size: .72rem; font-weight: 750; }.zone-table-row { border-top: 1px solid #edf0f3; font-size: .81rem; }.zone-table-row > strong { color: var(--blue); }.temperature-dot { display: inline-block; width: 8px; height: 8px; margin-right: 8px; border-radius: 50%; background: #8ab5e2; }.temperature-dot--chilled { background: #72a9ed; }.temperature-dot--frozen { background: #6785db; }.temperature-dot--outdoor { background: #86ad62; }
.description-copy { color: #566b7c; background: white; border: 1px solid var(--line); border-radius: 9px; padding: 20px 22px; }.description-copy p:last-child { margin-bottom: 0; }.feature-groups { display: grid; gap: 17px; }.feature-group h3 { font-size: .86rem; color: #566b7d; margin: 0 0 9px; }.feature-tags { display: flex; gap: 8px; flex-wrap: wrap; }.feature-tag { display: inline-flex; gap: 7px; align-items: center; background: white; border: 1px solid #e5eaf0; border-radius: 7px; padding: 7px 10px; color: #586e7f; font-size: .78rem; }.feature-tag i { color: #419465; font-style: normal; }.detail-meta-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 12px; margin-top: 17px; }.detail-meta-grid > div { display: grid; gap: 4px; padding: 14px; background: white; border: 1px solid var(--line); border-radius: 8px; }.detail-meta-grid span { color: #8593a0; font-size: .69rem; }.detail-meta-grid strong { font-size: .8rem; }.location-section .muted { margin: 7px 0 0; font-size: .8rem; }.nearby-list { background: white; border: 1px solid var(--line); border-radius: 9px; overflow: hidden; }.nearby-link { display: flex; align-items: center; justify-content: space-between; padding: 13px 16px; border-bottom: 1px solid #edf0f3; color: var(--ink); }.nearby-link:last-child { border-bottom: 0; }.nearby-link span { display: grid; gap: 3px; }.nearby-link small { color: #85929d; }.nearby-link i { color: var(--blue); font-style: normal; }
.detail-sidebar { position: sticky; top: 96px; display: grid; gap: 13px; }.contact-card { padding: 21px; background: white; border: 1px solid var(--line); border-radius: 11px; box-shadow: 0 8px 26px rgba(24,47,70,.05); }.contact-card .eyebrow { margin-bottom: 13px; }.company-profile { display: flex; gap: 10px; align-items: center; }.company-avatar { width: 38px; height: 38px; flex: 0 0 38px; display: grid; place-items: center; color: #325dc9; background: #eef3ff; border-radius: 11px; font-size: .93rem; font-weight: 800; }.company-profile > span:last-child { min-width: 0; display: grid; gap: 2px; }.company-profile strong { font-size: .85rem; }.company-profile small { color: #4f9870; font-size: .7rem; }.contact-card-rule { border-top: 1px solid #edf0f3; margin: 18px 0; }.contact-card h2 { font-size: 1.24rem; margin-bottom: 16px; }.contact-card .button { margin: 5px 0; }.privacy-note { display: flex; align-items: center; gap: 7px; margin: 15px 0 0; color: #8a99a5; font-size: .67rem; }.privacy-note span { color: #478f6a; }.phone-reveal { text-align: center; margin: 12px 0 0; }.phone-reveal-button { border: 0; padding: 3px; color: var(--blue); background: transparent; font-weight: 700; font-size: .82rem; }.revealed-phone { display: block; padding: 8px; color: var(--navy); font-weight: 800; }.detail-reference-card { display: grid; gap: 4px; }.detail-reference-card strong { color: var(--navy); font-size: 1.1rem; }.detail-reference-card > span:last-child { color: #8795a1; font-size: .72rem; }.detail-share-card { display: flex; justify-content: space-between; align-items: center; gap: 10px; }.detail-share-card .eyebrow { margin: 0; }
.report-section { display: flex; align-items: start; justify-content: space-between; gap: 15px; padding: 16px; border-top: 1px solid var(--line); color: #7b8b98; font-size: .78rem; }.report-section p { margin: 3px 0; }.report-form { display: grid; gap: 6px; width: min(350px,65%); }.report-form input:not([type=submit]),.report-form textarea { border: 1px solid var(--line); border-radius: 6px; padding: 7px; font-size: .75rem; }.report-form .text-link-button { justify-self: end; }
.contact-form-section { display: grid; grid-template-columns: .7fr 1.3fr; gap: 38px; margin: 40px 0; padding: 29px; background: #eaf0ff; border: 1px solid #dce5fd; border-radius: 12px; }.contact-form-copy h2 { font-size: 1.6rem; }.contact-form-copy p:not(.eyebrow) { color: #718395; font-size: .85rem; }.contact-request-form { padding: 19px; background: white; border-radius: 9px; }.contact-request-form .field-row { gap: 10px; }.contact-request-form .field { margin-bottom: 12px; }.contact-request-form .button { margin-top: 2px; }
.contact-detail-layout { display: grid; grid-template-columns: minmax(0,1fr) 320px; gap: 28px; align-items: start; }.contact-detail-main { background: white; border: 1px solid var(--line); border-radius: 11px; padding: 30px; }.contact-detail-main h1 { font-size: 2.1rem; margin: 6px 0 8px; }.contact-detail-main .lead { font-size: .84rem; }.request-message { border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); padding: 22px 0; margin: 22px 0; color: #536a7c; }.request-message .eyebrow { color: #82909b; }.contact-specs { display: grid; grid-template-columns: repeat(3,1fr); gap: 11px; }.contact-specs > div { display: grid; gap: 3px; padding: 12px; background: #f7f9fb; border-radius: 7px; }.contact-specs span { color: #81909d; font-size: .68rem; }.contact-specs strong { font-size: .85rem; }.contact-detail-side h2 { font-size: 1.2rem; }
.report-list { display: grid; gap: 12px; }.report-card { display: grid; grid-template-columns: 1.1fr .9fr; gap: 25px; background: white; border: 1px solid var(--line); border-radius: 10px; padding: 20px; }.report-card h2 { margin: 9px 0; font-size: 1.13rem; }.report-card p { color: #778895; font-size: .81rem; }.report-card-actions { display: grid; align-content: center; gap: 14px; }.admin-inline-form { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }.admin-inline-form select { min-height: 38px; width: auto; font-size: .76rem; }.admin-edit-form { max-width: 560px; padding: 25px; background: white; border: 1px solid var(--line); border-radius: 10px; }.admin-edit-form .button { margin-top: 12px; }
.admin-link-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 14px; }.admin-link-card { min-height: 106px; display: flex; align-items: center; gap: 11px; padding: 16px; background: white; border: 1px solid var(--line); border-radius: 10px; color: var(--ink); }.admin-link-card:hover { border-color: #b9cafa; box-shadow: 0 8px 20px rgba(29,52,76,.06); color: var(--ink); }.admin-link-card > span:nth-child(2) { flex: 1; min-width: 0; display: grid; gap: 4px; }.admin-link-card small { color: #8795a1; font-size: .69rem; }.admin-link-card i { color: var(--blue); font-style: normal; }.admin-icon { width: 34px; height: 34px; display: grid; place-items: center; color: var(--blue); background: #edf2ff; border-radius: 8px; }.admin-recent-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 15px; margin-top: 25px; }.admin-recent-grid .section-heading { align-items: center; }.admin-recent-grid .section-heading h2 { font-size: 1.08rem; }.admin-compact-row { display: flex; justify-content: space-between; gap: 12px; padding: 9px 0; border-top: 1px solid #edf0f3; font-size: .76rem; }.admin-compact-row span { color: #8594a0; }.admin-table { background: white; border: 1px solid var(--line); border-radius: 10px; overflow: hidden; }.admin-table-head,.admin-table-row { display: grid; grid-template-columns: 1.35fr .8fr .8fr 1.3fr; gap: 12px; align-items: center; padding: 12px 15px; }.admin-table-head { background: #f5f7f9; color: #7c8c99; font-size: .7rem; font-weight: 800; }.admin-table-row { border-top: 1px solid #edf0f3; font-size: .78rem; }.admin-table-row > span:first-child { display: grid; gap: 3px; }.admin-table-row small { color: #8795a1; }.admin-table-row a { font-weight: 700; }
.alert-list { max-width: 900px; display: grid; gap: 10px; }.alert-row { display: flex; align-items: center; gap: 14px; padding: 17px 18px; background: white; border: 1px solid var(--line); border-radius: 9px; }.alert-icon { width: 37px; height: 37px; display: grid; place-items: center; color: var(--blue); background: #edf2ff; border-radius: 9px; }.alert-row > div { flex: 1; display: grid; gap: 3px; }.alert-row small { color: #82919e; font-size: .75rem; }.favorite-item { position: relative; }.favorite-remove { display: flex; justify-content: end; margin-top: -10px; margin-bottom: 15px; font-size: .76rem; }.listing-grid--favorites { align-items: start; }

@media (max-width: 1120px) {
  .search-primary-row { grid-template-columns: minmax(180px,1.4fr) minmax(100px,.65fr) minmax(175px,1.1fr) 145px; }.field--date { display: none; }
  .results-layout { grid-template-columns: minmax(0,1.35fr) minmax(290px,.8fr); gap: 18px; }.listing-detail-layout { grid-template-columns: minmax(0,1fr) 290px; gap: 20px; }.admin-link-grid { grid-template-columns: repeat(2,1fr); }
}
@media (max-width: 850px) {
  .site-shell { width: min(100% - 36px, 720px); padding-top: 20px; }.topbar-inner { width: calc(100% - 36px); min-height: 65px; gap: 20px; }.primary-nav { gap: 16px; height: 65px; }.primary-nav a { font-size: .82rem; }.topbar-account { display: none; }.footer-inner { width: calc(100% - 36px); }
  .market-hero { min-height: 280px; padding: 30px; }.hero-orbit { right: -115px; opacity: .35; }.search-panel { margin: 0 0 32px; padding: 22px; }.search-primary-row { grid-template-columns: 1fr 1fr; }.field--location { grid-column: 1/-1; }.search-submit { margin-bottom: 16px; }.search-filters-row { display: grid; gap: 15px; }.advanced-filters { margin-left: 0; }.advanced-filter-grid { position: static; grid-template-columns: repeat(2,minmax(0,1fr)); margin-top: 14px; padding: 14px; box-shadow: none; border-radius: 9px; }
  .results-layout { grid-template-columns: 1fr; }.map-column { position: static; order: -1; }.market-map { height: 350px; }.listing-grid { gap: 12px; }.listing-card-image { height: 160px; }.dashboard-grid { grid-template-columns: 1fr; }.dashboard-side { grid-template-columns: repeat(2,1fr); }.listing-form-layout { grid-template-columns: 1fr; }.listing-form-aside { position: static; grid-template-columns: repeat(2,minmax(0,1fr)); }.form-preview-card { grid-row: span 2; }.listing-detail-layout { grid-template-columns: 1fr; }.detail-sidebar { position: static; grid-row: 1; }.contact-card { display: grid; grid-template-columns: 1fr 1fr; gap: 0 14px; }.contact-card .eyebrow,.company-profile,.contact-card-rule,.contact-card h2,.contact-card > p,.contact-card .privacy-note { grid-column: 1/-1; }.contact-card .button { grid-column: span 1; }.contact-sidebar { position: static; }.contact-form-section { grid-template-columns: 1fr; gap: 12px; }.contact-detail-layout { grid-template-columns: 1fr; }.contact-detail-side { grid-row: 1; }.auth-layout { margin: 22px auto; }.admin-table-head,.admin-table-row { grid-template-columns: 1.1fr .9fr .8fr; }.admin-table-head span:last-child { display: none; }.admin-table-row > span:last-child { grid-column: 1/-1; }
}
@media (max-width: 560px) {
  .site-shell { width: calc(100% - 28px); padding-bottom: 52px; }.topbar-inner { width: calc(100% - 24px); gap: 10px; }.brand { font-size: .86rem; gap: 7px; }.brand-mark { width: 30px; height: 30px; }.primary-nav { gap: 11px; }.primary-nav a { font-size: .72rem; }.topbar-actions { gap: 3px; }.topbar-actions .button { min-height: 34px; padding: 0 8px; font-size: .7rem; }.topbar-actions .button--primary { display: none; }.footer-inner { width: calc(100% - 28px); font-size: .7rem; gap: 12px; }.footer-inner span:last-child { text-align: right; }
  .market-hero { padding: 27px 22px; min-height: 300px; border-radius: 11px; }.market-hero h1 { font-size: 2.55rem; }.hero-description { font-size: .9rem; }.hero-proof { align-items: start; gap: 10px; flex-direction: column; }.proof-divider { display: none; }.hero-orbit { right: -150px; top: 50px; }.search-panel { padding: 19px 15px; border-radius: 10px; }.search-panel-heading h2 { font-size: 1.15rem; }.search-primary-row { grid-template-columns: 1fr 1fr; gap: 8px; }.field--quantity { grid-column: 1/-1; }.search-submit { grid-column: 1/-1; width: 100%; }.field--radius { grid-column: 1; }.field--date { display: none; }.search-filters-row { padding-top: 12px; }.chip-options { gap: 5px; }.filter-chip span { padding: 0 8px; font-size: .7rem; }.advanced-filter-grid { grid-template-columns: 1fr; }
  .results-toolbar { align-items: start; flex-direction: column; gap: 12px; }.results-toolbar-actions { width: 100%; justify-content: space-between; }.listing-grid { grid-template-columns: 1fr; }.listing-card-image { height: 200px; }.map-column { padding: 11px; }.market-map { height: 290px; }.page-heading--split { display: block; }.page-heading--split > .button,.page-heading--split > a.button { margin-top: 12px; }.page-heading h1 { font-size: 2.3rem; }.page-heading .lead { font-size: .9rem; }.trial-banner { padding: 17px; align-items: start; }.trial-price { font-size: 1.1rem; }.dashboard-side { grid-template-columns: 1fr; }.listing-row { padding: 11px; gap: 9px; }.listing-thumb { width: 60px; height: 54px; flex-basis: 60px; }.listing-row-info > span:nth-child(2) { max-width: 190px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.listing-row-side { display: none; }
  .form-steps a { min-height: 48px; padding: 0 12px; font-size: .73rem; }.form-steps a span { display: none; }.form-section { padding: 20px 15px; }.form-section-heading { gap: 10px; }.section-number { width: 31px; height: 31px; flex-basis: 31px; }.form-grid { grid-template-columns: 1fr; }.field--full { grid-column: auto; }.field-row { gap: 8px; }.zone-editor-head,.zone-editor-row { grid-template-columns: .9fr 1fr 1fr; gap: 6px; padding: 8px; }.zone-editor-head span:last-child,.zone-editor-row > .field:nth-of-type(3) { display: none; }.zone-editor-row .field input { font-size: .7rem; padding: 6px; }.zone-extra-fields { grid-template-columns: repeat(2,1fr); }.reference-grid { grid-template-columns: 1fr; }.form-submit-bar { bottom: 5px; padding: 8px; gap: 6px; }.form-submit-bar .button { padding: 0 10px; min-height: 42px; font-size: .72rem; white-space: normal; }
  .listing-form-aside { grid-template-columns: 1fr; }.form-preview-card { grid-row: auto; }.listing-detail-layout { gap: 14px; }.detail-sidebar { grid-row: auto; }.contact-card { display: block; }.detail-gallery { height: 240px; grid-template-columns: 1fr; }.gallery-thumbnails { display: none; }.detail-heading { display: block; }.new-badge--large { display: inline-block; margin-top: 5px; }.key-stats { grid-template-columns: repeat(2,1fr); }.key-stats > div:nth-child(3n) { border-right: 1px solid #edf0f3; }.key-stats > div:nth-child(2n) { border-right: 0; }.key-stats > div:nth-last-child(-n+3) { border-bottom: 1px solid #edf0f3; }.key-stats > div:nth-last-child(-n+2) { border-bottom: 0; }.zone-table-head,.zone-table-row { grid-template-columns: 1.1fr .9fr .9fr; gap: 6px; padding: 11px 9px; font-size: .68rem; }.zone-table-head span:last-child,.zone-table-row span:last-child { display: none; }.detail-meta-grid { grid-template-columns: 1fr; }.contact-form-section { padding: 18px 13px; }.contact-request-form { padding: 13px; }.contact-request-form .field-row { flex-direction: column; gap: 0; }.report-section { display: grid; }.report-form { width: 100%; }.contact-detail-main { padding: 20px 15px; }.contact-specs { grid-template-columns: repeat(2,1fr); }.auth-layout { grid-template-columns: 1fr; }.auth-panel { padding: 31px 21px; }.auth-aside { padding: 28px 22px; }.auth-aside h2 { font-size: 1.55rem; }.auth-layout--signup { margin: 8px auto; }.field-row { flex-direction: column; gap: 0; }.admin-link-grid,.admin-recent-grid { grid-template-columns: 1fr; }.admin-table-head { display: none; }.admin-table-row { grid-template-columns: 1fr 1fr; padding: 12px; }.admin-table-row > span:last-child { grid-column: 1/-1; }.admin-inline-form { align-items: stretch; }.admin-inline-form select { flex: 1; }.report-card { grid-template-columns: 1fr; }.report-card-actions { border-top: 1px solid var(--line); padding-top: 12px; }.alert-row { padding: 13px; gap: 9px; }.listing-grid--favorites { grid-template-columns: 1fr; }
}
