:root{
  --bg:#eef2f4;
  --bg-soft:#e4eaee;
  --panel:#ffffff;
  --panel-soft:rgba(255,255,255,.8);
  --panel-dark:#0f1d29;
  --panel-dark-2:#152635;
  --ink:#0d1a25;
  --ink-soft:#183247;
  --muted:#284154;
  --muted-strong:#22384b;
  --ink-on-dark:#f4f9fd;
  --ink-on-dark-soft:#e2edf5;
  --line:rgba(13,26,37,.18);
  --line-strong:rgba(13,26,37,.3);
  --link:#0c5270;
  --accent:#ff8a1d;
  --accent-2:#16d5cf;
  --accent-3:#8bd2ff;
  --success:#215e43;
  --danger:#9f3928;
  --surface:#071019;
  --surface-2:#102231;
  --surface-3:#173448;
  --shadow-sm:0 14px 36px rgba(7,22,34,.08);
  --shadow-md:0 20px 48px rgba(7,22,34,.14);
  --shadow-lg:0 28px 74px rgba(7,22,34,.18);
  --radius-sm:16px;
  --radius-md:22px;
  --radius-lg:30px;
  --radius-xl:36px;
  --font-body:"Manrope",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --font-display:"Space Grotesk","Manrope",system-ui,sans-serif;
  --edge-outline-dark:rgba(5,12,18,.9);
  --edge-outline-light:rgba(255,255,255,.88);
}

@media (max-width:980px){
  .billing-dashboard-grid,
  .billing-edit-grid,
  .billing-settings-grid,
  .billing-document-head,
  .billing-document-parties,
  .billing-document-bottom{
    grid-template-columns:1fr;
  }
  .billing-vat-snapshot,
  .billing-document-meta{
    grid-template-columns:1fr;
  }
  .billing-line-head{
    display:none;
  }
  .billing-line-grid{
    grid-template-columns:1fr 1fr;
    padding:12px;
    border:1px solid var(--line);
    border-radius:16px;
    background:#f7fafb;
  }
  .billing-line-grid input:nth-child(2){
    grid-column:1/-1;
  }
  .billing-period-form{
    grid-template-columns:1fr;
  }
  .billing-print-toolbar,
  .billing-print-actions{
    align-items:stretch;
    flex-direction:column;
  }
  .billing-document-number{
    text-align:left;
  }
  .bank-transfer-main,
  .bank-transfer-row,
  .bank-transfer-row.is-account,
  .bank-transfer-invoice-ref{
    grid-template-columns:1fr;
  }
  .bank-transfer-side-label{
    min-height:34px;
    border-right:0;
    border-bottom:1px solid #132230;
    writing-mode:horizontal-tb;
    transform:none;
  }
  .bank-transfer-left{
    border-right:0;
  }
  .bank-transfer-value.is-bic{
    border-left:0;
    border-top:1px solid #132230;
  }
  .bank-transfer-barcode-area{
    padding-left:0;
    padding-right:0;
  }
}

.print-job-list{
  display:grid;
  gap:12px;
}

.print-job-type-actions{
  display:grid;
  gap:8px;
  grid-template-columns:1fr;
}

.print-ad-main{
  display:flex;
  flex-direction:column;
  gap:18px;
}

.print-ad-main > form.admin-card{
  order:1;
}

.print-ad-main > .print-stock-browser{
  order:2;
}

.print-builder-form{
  padding-bottom:112px;
}

.print-template-grid{
  display:grid;
  gap:12px;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  margin-top:18px;
}

.print-template-card{
  display:grid;
  gap:8px;
  padding:16px 18px;
  border:1px solid rgba(20,56,44,.14);
  border-radius:18px;
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(245,248,251,.96));
  cursor:pointer;
}

.print-template-card input{
  margin:0;
}

.print-template-card strong{
  font-size:1rem;
  color:var(--ink);
}

.print-template-card span{
  font-size:.94rem;
  line-height:1.5;
  color:var(--muted-strong);
}

.print-workflow-rail{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin:18px 0 20px;
  padding:10px;
  border:1px solid rgba(10,28,43,.08);
  border-radius:24px;
  background:linear-gradient(135deg,rgba(247,251,252,.96),rgba(231,240,245,.86));
}

.print-workflow-step{
  appearance:none;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:4px 10px;
  align-items:center;
  min-width:0;
  width:100%;
  padding:12px;
  border:1px solid rgba(10,28,43,.08);
  border-radius:18px;
  background:rgba(255,255,255,.72);
  color:var(--ink);
  font:inherit;
  text-align:left;
  cursor:pointer;
}

.print-workflow-step:focus-visible{
  outline:3px solid rgba(255,138,29,.38);
  outline-offset:3px;
}

.print-workflow-step > span{
  display:inline-grid;
  place-items:center;
  grid-row:1 / span 2;
  width:30px;
  height:30px;
  border-radius:999px;
  background:#e8f0f5;
  color:#102335;
  font-weight:900;
  font-size:.88rem;
}

.print-workflow-step strong{
  overflow:hidden;
  color:#102335;
  font-size:.95rem;
  line-height:1.15;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.print-workflow-step em{
  overflow:hidden;
  color:#496171;
  font-style:normal;
  font-size:.82rem;
  line-height:1.25;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.print-workflow-step.is-active{
  border-color:rgba(255,151,43,.36);
  background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(255,242,222,.88));
  box-shadow:0 12px 26px rgba(255,151,43,.12);
}

.print-workflow-step.is-done > span{
  background:linear-gradient(135deg,var(--accent),#ffbf58);
  color:#071019;
}

[data-print-workflow-panel]{
  scroll-margin-top:118px;
}

.listing-check-grid{
  display:grid;
  gap:12px;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  }

.listing-check-card{
  display:grid;
  gap:6px;
  padding:14px 16px;
  border:1px solid rgba(20,56,44,.14);
  border-radius:18px;
  background:rgba(255,255,255,.92);
  color:var(--ink);
  cursor:pointer;
}

.listing-check-card input{
  margin:0;
}

.listing-check-card strong{
  font-size:.98rem;
}

.listing-check-card span,
.listing-check-card small{
  color:var(--muted-strong);
  line-height:1.45;
}

.listing-check-card em{
  font-style:normal;
  font-weight:800;
  color:var(--ink);
}

.listing-check-card.is-static{
  cursor:default;
}

.print-stock-browser,
.print-selected-section,
.print-layout-tuning{
  display:grid;
  gap:16px;
}

.print-layout-tuning .notice.is-room{
  background:#eef7ff;
  border-color:#b6d5ef;
  color:#1f4d74;
}

.print-layout-tuning .notice.is-over{
  background:#fff1ea;
  border-color:#ebb29a;
  color:#8a2f17;
}

.print-stock-filter-form{
  display:grid;
  gap:12px;
  grid-template-columns:repeat(3,minmax(0,1fr));
  align-items:end;
}

.print-stock-tablist{
  flex-wrap:nowrap;
  overflow:auto;
  padding-bottom:4px;
}

.print-catalog-status-row{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
  margin-top:-6px;
}

.print-stock-grid{
  display:grid;
  gap:16px;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
}

.print-selected-empty{
  margin:0;
}

.print-selected-empty[hidden]{
  display:none;
}

.print-stock-card{
  position:relative;
  display:grid;
  gap:0;
  border:1px solid rgba(10,28,43,.1);
  border-radius:26px;
  overflow:hidden;
  background:linear-gradient(180deg,#ffffff 0%,#f6f8fb 100%);
  box-shadow:0 16px 34px rgba(8,18,28,.08);
}

.print-stock-card.is-selected{
  border-color:rgba(255,138,29,.46);
  box-shadow:0 18px 42px rgba(255,138,29,.12);
}

.print-editor-card.is-editor-hidden{
  display:none;
}

.print-editor-card{
  scroll-margin-top:120px;
}

.print-editor-card.is-attention,
.print-slot-card.is-attention,
.print-stock-browser.is-attention{
  animation:printAttention 1.2s ease;
}

@keyframes printAttention{
  0%{box-shadow:0 0 0 0 rgba(255,138,29,.42),0 18px 42px rgba(255,138,29,.12);}
  45%{box-shadow:0 0 0 5px rgba(255,138,29,.2),0 18px 42px rgba(255,138,29,.16);}
  100%{box-shadow:0 0 0 0 rgba(255,138,29,0),0 16px 34px rgba(8,18,28,.08);}
}

.print-editor-slot-badge,
.print-catalog-slot-badge{
  position:absolute;
  top:10px;
  right:12px;
  z-index:3;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:30px;
  padding:5px 10px;
  border:1px solid rgba(255,138,29,.34);
  border-radius:999px;
  background:linear-gradient(135deg,var(--accent),#ffbf58);
  color:#071019;
  font-size:.8rem;
  font-weight:900;
  box-shadow:0 8px 18px rgba(255,138,29,.18);
}

.print-editor-slot-badge[hidden],
.print-catalog-slot-badge[hidden]{
  display:none;
}

.print-editor-card .print-stock-toggle,
.print-stock-card .print-stock-toggle{
  padding-right:118px;
}

.print-stock-toggle{
  display:flex;
  align-items:center;
  gap:10px;
  padding:12px 14px 0;
  color:var(--ink);
}

.print-stock-toggle input{
  margin:0;
}

.print-stock-toggle span{
  font-size:.82rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.print-stock-media{
  position:relative;
  aspect-ratio:1.22;
  overflow:hidden;
  background:#dbe5ec;
  margin-top:10px;
}

.print-stock-media::after{
  content:"";
  position:absolute;
  inset:auto 0 0 0;
  height:55%;
  background:linear-gradient(180deg,rgba(5,12,18,0) 0%,rgba(5,12,18,.82) 100%);
  pointer-events:none;
}

.print-stock-media .listing-image,
.print-stock-media .image-placeholder{
  width:100%;
  height:100%;
  object-fit:cover;
}

.print-stock-body,
.print-stock-editor{
  display:grid;
  gap:8px;
  padding:16px;
}

.print-stock-body strong{
  font-size:1rem;
  line-height:1.3;
  color:var(--ink);
}

.print-stock-body span{
  color:var(--muted-strong);
  line-height:1.45;
}

.print-stock-editor label{
  display:grid;
  gap:6px;
}

.print-stock-editor label > span{
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--muted-strong);
}

.print-stock-editor textarea{
  min-height:88px;
  resize:vertical;
}

.print-stock-image-picker{
  margin:0;
  padding:0;
  border:0;
  display:grid;
  gap:8px;
}

.print-stock-image-picker legend{
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--muted-strong);
}

.print-stock-image-options{
  display:grid;
  gap:10px;
  grid-template-columns:repeat(auto-fit,minmax(78px,1fr));
}

.print-stock-image-option{
  display:grid;
  gap:6px;
  padding:8px;
  border:1px solid rgba(10,28,43,.12);
  border-radius:16px;
  background:#fff;
  cursor:pointer;
}

.print-stock-image-option.is-selected{
  border-color:rgba(255,138,29,.58);
  box-shadow:0 10px 22px rgba(255,138,29,.12);
}

.print-stock-image-option input{
  margin:0;
}

.print-stock-image-option img{
  width:100%;
  aspect-ratio:1.08;
  object-fit:cover;
  border-radius:12px;
  display:block;
}

.print-stock-image-option span{
  font-size:.78rem;
  font-weight:700;
  color:var(--ink);
}

.print-slot-planner{
  display:grid;
  gap:18px;
  margin-bottom:18px;
}

.print-slot-toolbar{
  position:sticky;
  top:84px;
  z-index:12;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:12px 14px;
  border:1px solid rgba(10,28,43,.12);
  border-radius:18px;
  background:rgba(255,255,255,.94);
  backdrop-filter:blur(14px);
  box-shadow:0 12px 28px rgba(9,19,28,.1);
}

.print-slot-toolbar-actions{
  flex:1 1 auto;
  flex-wrap:nowrap;
  justify-content:flex-end;
  min-width:0;
  max-width:min(100%, 860px);
  overflow-x:auto;
  overscroll-behavior-inline:contain;
  padding-bottom:3px;
  scrollbar-width:thin;
}

.print-slot-toolbar-actions .btn{
  flex:0 0 auto;
}

.print-slot-save{
  box-shadow:0 10px 22px rgba(255,138,29,.18);
}

.print-slot-filter-toggle.is-active{
  border-color:rgba(255,138,29,.46);
  background:rgba(255,138,29,.12);
  color:#7a3500;
}

.print-slot-filter-toggle span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:24px;
  min-height:24px;
  padding:2px 7px;
  border-radius:999px;
  background:rgba(10,28,43,.08);
  color:inherit;
  font-size:.78rem;
  font-weight:900;
}

.print-slot-counts{
  display:grid;
  gap:2px;
}

.print-slot-counts strong{
  color:var(--ink);
  font-size:.96rem;
}

.print-slot-counts span{
  color:var(--muted-strong);
  font-size:.84rem;
}

.print-slot-drag-help{
  max-width:580px;
}

.print-layout-board{
  display:grid;
  gap:12px;
  padding:14px;
  border:1px solid rgba(10,28,43,.12);
  border-radius:24px;
  background:linear-gradient(180deg,#f8fafc,#eef4f8);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.72);
}

.print-layout-board-head{
  display:flex;
  justify-content:space-between;
  gap:14px;
  align-items:flex-start;
}

.print-layout-board-head h4{
  margin:0;
  color:var(--ink);
  font-size:1.05rem;
}

.print-layout-board-head p{
  margin:4px 0 0;
  color:var(--muted-strong);
  line-height:1.4;
}

.print-layout-board-grid{
  display:grid;
  grid-template-columns:repeat(var(--print-board-cols,4),minmax(0,1fr));
  gap:8px;
}

.print-layout-cell{
  position:relative;
  display:grid;
  grid-template-rows:minmax(74px,1fr) auto;
  min-width:0;
  min-height:138px;
  padding:0;
  border:1px solid rgba(10,28,43,.15);
  border-radius:16px;
  overflow:hidden;
  background:#fff;
  color:var(--ink);
  text-align:left;
  box-shadow:0 8px 18px rgba(9,19,28,.07);
  transition:border-color .16s ease, box-shadow .16s ease, transform .16s ease, opacity .16s ease;
}

.print-layout-cell.is-empty{
  background:linear-gradient(180deg,#fff,#f4f7fb);
}

.print-layout-cell.is-draggable{
  cursor:grab;
}

.print-layout-cell.is-dragging{
  opacity:.55;
  transform:scale(.985);
}

.print-layout-cell.is-drop-target{
  border-color:rgba(255,138,29,.7);
  box-shadow:0 14px 30px rgba(255,138,29,.18), 0 0 0 2px rgba(255,138,29,.18) inset;
  transform:translateY(-2px);
}

.print-layout-cell.is-active-slot{
  border-color:rgba(0,169,188,.72);
  box-shadow:0 14px 30px rgba(0,169,188,.16), 0 0 0 2px rgba(0,169,188,.18) inset;
}

.print-layout-cell-number{
  position:absolute;
  z-index:2;
  top:6px;
  left:6px;
  min-width:24px;
  height:24px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:rgba(7,16,25,.84);
  color:#fff;
  font-size:.74rem;
  font-weight:900;
}

.print-layout-cell-media{
  min-width:0;
  min-height:74px;
  background:#dbe5ec;
}

.print-layout-cell-media img{
  width:100%;
  height:100%;
  min-height:74px;
  object-fit:cover;
  display:block;
}

.print-layout-cell-body{
  display:grid;
  gap:2px;
  padding:7px 8px 8px;
}

.print-layout-cell-body strong{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:.78rem;
  line-height:1.18;
  color:var(--ink);
}

.print-layout-cell-body span{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:var(--muted-strong);
  font-size:.68rem;
  font-weight:700;
}

.print-layout-cell-body em{
  margin-top:2px;
  color:#1b6b7a;
  font-size:.66rem;
  font-style:normal;
  font-weight:900;
  letter-spacing:.03em;
  text-transform:uppercase;
}

.print-layout-cell:not(.is-empty):hover .print-layout-cell-body em,
.print-layout-cell:not(.is-empty):focus-visible .print-layout-cell-body em{
  color:#a34d00;
}

.print-slot-grid{
  display:grid;
  gap:12px;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
}

.print-slot-card{
  display:grid;
  gap:10px;
  padding:14px;
  border:1px solid rgba(10,28,43,.14);
  border-radius:20px;
  background:#fff;
  box-shadow:0 8px 18px rgba(9,19,28,.06);
  transition:border-color .16s ease, box-shadow .16s ease, transform .16s ease, opacity .16s ease;
}

.print-slot-card.is-empty{
  background:linear-gradient(180deg,#fbfdff,#f4f7fb);
}

.print-slot-card.is-draggable .print-slot-preview{
  cursor:grab;
}

.print-slot-card.is-dragging{
  opacity:.55;
  transform:scale(.985);
}

.print-slot-card.is-drop-target{
  border-color:rgba(255,138,29,.64);
  box-shadow:0 16px 32px rgba(255,138,29,.18), 0 0 0 2px rgba(255,138,29,.16) inset;
  transform:translateY(-2px);
}

.print-slot-card.is-active-slot{
  border-color:rgba(0,169,188,.68);
  box-shadow:0 14px 30px rgba(0,169,188,.14), 0 0 0 2px rgba(0,169,188,.14) inset;
}

.print-slot-planner.is-dragging .print-slot-card:not(.is-dragging){
  cursor:copy;
}

.print-slot-planner.is-dragging .print-layout-cell:not(.is-dragging){
  cursor:copy;
}

.print-slot-card-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}

.print-slot-card-top strong{
  font-size:.96rem;
  color:var(--ink);
}

.print-slot-preview{
  display:grid;
  grid-template-columns:74px minmax(0,1fr);
  gap:10px;
  align-items:center;
  min-height:74px;
  padding:8px;
  border:1px solid rgba(10,28,43,.1);
  border-radius:16px;
  background:#f8fafc;
}

.print-slot-preview.is-empty{
  grid-template-columns:1fr;
  border-style:dashed;
}

.print-slot-preview img{
  width:74px;
  height:58px;
  object-fit:cover;
  border-radius:10px;
  background:#dbe5ec;
}

.print-slot-preview div{
  display:grid;
  gap:3px;
  min-width:0;
}

.print-slot-preview strong{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:var(--ink);
}

.print-slot-preview span{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:var(--muted-strong);
  font-size:.82rem;
}

.print-slot-edit{
  color:var(--accent-strong);
  font-size:.82rem;
  font-weight:800;
  text-decoration:none;
}

.print-slot-edit:hover{
  text-decoration:underline;
}

.print-slot-card label{
  display:grid;
  gap:6px;
}

.print-slot-card label > span{
  font-size:.74rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--muted-strong);
}

.print-slot-search-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:8px;
  align-items:center;
}

.print-slot-search-clear{
  appearance:none;
  min-height:42px;
  padding:8px 12px;
  border:1px solid rgba(10,28,43,.16);
  border-radius:14px;
  background:#fff;
  color:var(--ink);
  font:inherit;
  font-size:.82rem;
  font-weight:900;
  cursor:pointer;
}

.print-slot-search-clear:hover,
.print-slot-search-clear:focus-visible{
  border-color:rgba(255,138,29,.44);
  background:#fff8ee;
  outline:0;
}

.print-slot-search-clear[hidden]{
  display:none;
}

.print-slot-suggestions{
  display:grid;
  gap:6px;
  padding:8px;
  border:1px solid rgba(10,28,43,.1);
  border-radius:16px;
  background:#f5f9fb;
}

.print-slot-suggestions[hidden]{
  display:none;
}

.print-slot-suggestion-summary{
  color:var(--muted-strong);
  font-size:.76rem;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
}

.print-slot-suggestion{
  appearance:none;
  display:grid;
  grid-template-columns:44px minmax(0,1fr);
  gap:8px;
  align-items:center;
  min-width:0;
  padding:6px;
  border:1px solid rgba(10,28,43,.1);
  border-radius:12px;
  background:#fff;
  color:var(--ink);
  font:inherit;
  text-align:left;
  cursor:pointer;
}

.print-slot-suggestion:hover,
.print-slot-suggestion:focus-visible,
.print-slot-suggestion.is-active{
  border-color:rgba(255,138,29,.42);
  box-shadow:0 8px 18px rgba(255,138,29,.12);
  outline:none;
}

.print-slot-suggestion.is-active{
  background:linear-gradient(180deg,#fff7ec,#fff);
}

.print-slot-suggestion img{
  width:44px;
  height:34px;
  border-radius:8px;
  object-fit:cover;
  background:#dbe5ec;
}

.print-slot-suggestion span{
  display:grid;
  gap:2px;
  min-width:0;
}

.print-slot-suggestion strong,
.print-slot-suggestion em{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.print-slot-suggestion strong{
  color:var(--ink);
  font-size:.84rem;
}

.print-slot-suggestion em{
  color:var(--muted-strong);
  font-size:.72rem;
  font-style:normal;
}

.print-slot-suggestion-empty{
  padding:10px 12px;
  border:1px dashed rgba(10,28,43,.16);
  border-radius:12px;
  background:rgba(255,255,255,.74);
  color:var(--muted-strong);
  font-size:.84rem;
  font-weight:800;
}

.print-slot-meta{
  margin:0;
  font-size:.85rem;
  line-height:1.35;
  color:var(--ink-soft);
}

.print-slot-card-actions{
  display:flex;
  justify-content:flex-end;
}

.print-slot-card-actions .btn{
  min-height:38px;
  padding:8px 12px;
  border-radius:14px;
  font-size:.82rem;
}

.print-slot-card-actions .btn:disabled{
  opacity:.48;
  cursor:not-allowed;
  transform:none;
}

.print-builder-floating-bar{
  position:fixed;
  left:50%;
  bottom:calc(18px + env(safe-area-inset-bottom, 0px));
  z-index:72;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  width:min(1040px, calc(100vw - 32px));
  margin:0;
  padding:14px 16px;
  border:1px solid rgba(255,138,29,.18);
  border-radius:22px;
  background:rgba(9,19,28,.92);
  backdrop-filter:blur(16px);
  box-shadow:0 18px 42px rgba(6,12,18,.28);
  transform:translateX(-50%);
}

.print-builder-floating-status{
  display:grid;
  gap:4px;
}

.print-builder-floating-status strong{
  font-size:1rem;
  font-weight:800;
  color:var(--ink-on-dark);
}

.print-builder-floating-status span{
  font-size:.84rem;
  color:var(--ink-on-dark-soft);
}

.print-builder-active-slot{
  appearance:none;
  display:inline-flex;
  align-items:center;
  width:max-content;
  max-width:100%;
  padding:4px 9px;
  border:1px solid rgba(0,169,188,.32);
  border-radius:999px;
  background:rgba(0,169,188,.14);
  color:#b7f7ff !important;
  font:inherit;
  font-size:.84rem;
  font-weight:900;
  text-align:left;
  cursor:pointer;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.print-builder-active-slot:hover,
.print-builder-active-slot:focus-visible{
  border-color:rgba(0,212,240,.62);
  background:rgba(0,169,188,.24);
  outline:0;
}

.print-builder-active-slot[hidden]{
  display:none;
}

.print-builder-floating-jumps{
  display:flex;
  justify-content:center;
  gap:8px;
  min-width:0;
}

.print-builder-jump{
  appearance:none;
  min-height:38px;
  padding:8px 12px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:999px;
  background:rgba(255,255,255,.08);
  color:var(--ink-on-dark);
  font:inherit;
  font-size:.82rem;
  font-weight:900;
  white-space:nowrap;
  cursor:pointer;
}

.print-builder-jump:hover,
.print-builder-jump:focus-visible{
  border-color:rgba(255,190,90,.44);
  background:rgba(255,190,90,.14);
  outline:0;
}

.print-builder-jump.is-active{
  border-color:rgba(255,190,90,.76);
  background:linear-gradient(135deg,var(--accent),#ffbf58);
  color:#071019;
  box-shadow:0 10px 22px rgba(255,138,29,.22);
}

.print-builder-collapse{
  appearance:none;
  min-height:48px;
  padding:10px 14px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:16px;
  background:rgba(255,255,255,.08);
  color:var(--ink-on-dark);
  font:inherit;
  font-weight:900;
  cursor:pointer;
}

.print-builder-collapse:hover,
.print-builder-collapse:focus-visible{
  border-color:rgba(255,190,90,.44);
  background:rgba(255,190,90,.14);
  outline:0;
}

.print-builder-floating-bar.is-compact{
  width:min(780px, calc(100vw - 32px));
  padding:10px 12px;
}

.print-builder-floating-bar.is-compact .print-builder-floating-jumps,
.print-builder-floating-bar.is-compact [data-print-builder-capacity],
.print-builder-floating-bar.is-compact .actions .btn.ghost{
  display:none;
}

.print-builder-floating-bar.is-over{
  border-color:rgba(223,91,69,.34);
}

.print-builder-floating-bar.is-dirty{
  border-color:rgba(255,190,90,.55);
  box-shadow:0 18px 42px rgba(6,12,18,.28), 0 0 0 1px rgba(255,190,90,.18) inset;
}

.print-builder-floating-bar.is-dirty .actions .btn[type="submit"]{
  box-shadow:0 0 0 1px rgba(255,190,90,.42),0 12px 26px rgba(255,138,29,.22);
  animation:printSavePulse 1.8s ease-in-out infinite;
}

@keyframes printSavePulse{
  0%,100%{transform:translateY(0);}
  50%{transform:translateY(-1px);}
}

.print-builder-dirty{
  display:inline-flex;
  align-items:center;
  width:max-content;
  padding:4px 9px;
  border:1px solid rgba(255,190,90,.34);
  border-radius:999px;
  background:rgba(255,190,90,.16);
  color:#ffe1a3 !important;
  font-size:.76rem !important;
  font-weight:800;
  letter-spacing:.02em;
}

.print-builder-dirty[hidden]{
  display:none;
}

.preview-toolbar{
  display:flex;
  justify-content:space-between;
  gap:16px;
  align-items:flex-start;
  flex-wrap:wrap;
  margin-bottom:16px;
}

.svg-preview-frame{
  padding:16px;
  border:1px solid rgba(20,56,44,.14);
  border-radius:26px;
  background:linear-gradient(180deg,#f8fafc,#eef3f7);
  overflow:auto;
}

.svg-preview-frame img{
  display:block;
  width:100%;
  height:auto;
  border-radius:18px;
  box-shadow:0 24px 48px rgba(11,19,28,.14);
}

.inventory-preview-shell{
  max-width:min(1520px, calc(100vw - 28px));
}

body.inventory-print-page .section-head h1,
body.inventory-print-page .section-head h2,
body.inventory-print-page .section-head strong{
  color:var(--ink-on-dark);
}

body.inventory-print-page .section-head .sub{
  color:var(--ink-on-dark-soft);
}

body.inventory-print-page .mini-kpi strong{
  color:var(--ink);
}

body.inventory-print-page .mini-kpi span{
  color:var(--muted-strong);
}

@media (max-width: 760px){
  .print-job-type-actions{
    grid-template-columns:1fr;
  }

  .print-stock-filter-form,
  .print-template-grid,
  .listing-check-grid,
  .print-stock-grid,
  .print-slot-grid,
  .print-layout-board-grid{
    grid-template-columns:1fr;
  }

  .preview-toolbar{
    align-items:stretch;
  }

  .print-builder-floating-bar{
    bottom:calc(88px + env(safe-area-inset-bottom, 0px));
    flex-direction:column;
    align-items:stretch;
    width:calc(100vw - 24px);
    padding:14px;
  }

  .print-builder-form{
    padding-bottom:300px;
  }

  .print-builder-floating-bar .actions{
    width:100%;
    display:grid;
    grid-template-columns:1fr 1fr;
  }

  .print-builder-floating-jumps{
    width:100%;
    overflow:auto;
    justify-content:flex-start;
    padding-bottom:2px;
  }

  .print-builder-jump{
    flex:0 0 auto;
  }

  .print-builder-floating-bar .actions .btn{
    justify-content:center;
  }

  .print-builder-floating-bar.is-compact{
    width:calc(100vw - 24px);
    flex-direction:row;
    align-items:center;
    padding:10px;
  }

  .print-builder-floating-bar.is-compact .actions{
    width:auto;
    grid-template-columns:auto auto;
  }

  .print-builder-floating-bar.is-compact .actions .btn,
  .print-builder-floating-bar.is-compact .print-builder-collapse{
    min-height:40px;
    padding:8px 10px;
    border-radius:14px;
    font-size:.82rem;
  }

  .print-slot-toolbar{
    top:72px;
    align-items:stretch;
    flex-direction:column;
  }

  .print-slot-toolbar .actions{
    width:100%;
    display:flex;
    justify-content:flex-start;
    overflow-x:auto;
  }

  .print-slot-toolbar-actions .btn{
    min-height:44px;
    padding:10px 14px;
  }

  .inventory-preview-shell{
    max-width:none;
    padding-inline:12px;
  }

  .svg-preview-frame{
    padding:10px;
    border-radius:20px;
  }

  .svg-preview-frame img{
    width:auto;
    min-width:720px;
    max-width:none;
    border-radius:12px;
  }
}

.sr-only-live{
  position:fixed;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  min-height:100vh;
  font-family:var(--font-body);
  line-height:1.6;
  color:var(--ink);
  background:
    linear-gradient(180deg,var(--surface) 0 920px,var(--bg) 920px 100%);
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:
    radial-gradient(circle at 12% 8%,rgba(22,213,207,.16),transparent 28%),
    radial-gradient(circle at 88% 11%,rgba(255,138,29,.16),transparent 24%),
    linear-gradient(rgba(255,255,255,.02) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.02) 1px,transparent 1px);
  background-size:auto,auto,72px 72px,72px 72px;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
h1,h2,h3,h4{
  margin:0;
  font-family:var(--font-display);
  line-height:1.04;
  letter-spacing:-.04em;
  color:var(--ink);
}
p{margin:0}
.container{width:min(1220px,92vw);margin:0 auto}
.section{padding:72px 0;position:relative}
.narrow{width:min(760px,92vw)}
.sub,.section p.sub,small{color:var(--muted-strong)}

[data-reveal]{
  opacity:0;
  transform:translateY(20px);
  transition:opacity .75s ease,transform .75s ease;
}
[data-reveal].is-visible{
  opacity:1;
  transform:none;
}

.site-header{
  position:sticky;
  top:0;
  z-index:50;
  border-bottom:1px solid rgba(255,255,255,.08);
  background:rgba(7,16,25,.76);
  backdrop-filter:blur(18px);
  transition:background .25s ease,border-color .25s ease,box-shadow .25s ease;
}
.site-header.scrolled{
  background:rgba(7,16,25,.9);
  box-shadow:0 12px 30px rgba(0,0,0,.22);
}
.header-inner{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
  min-height:82px;
}
.brand{
  display:flex;
  align-items:center;
  gap:14px;
  min-width:0;
  max-width:min(420px,46vw);
}
.brand-mark{
  width:60px;
  height:60px;
  border-radius:20px;
  flex:0 0 auto;
  overflow:visible;
  box-shadow:0 18px 36px rgba(10,22,34,.28);
}
.brand-mark img{
  width:100%;
  height:100%;
  object-fit:contain;
}
.brand-copy{
  display:flex;
  flex-direction:column;
  min-width:0;
}
.brand-copy strong{
  display:flex;
  align-items:flex-end;
  flex-wrap:nowrap;
  gap:0;
  white-space:nowrap;
  font-family:var(--font-display);
  font-size:clamp(1.24rem,1.45vw,1.52rem);
  line-height:.94;
  letter-spacing:-.05em;
  color:#f5f9fd;
}
.brand-word-primary{
  color:#f5f9fd;
}
.brand-word-secondary{
  color:#d9e6f1;
}
.brand-word-tld{
  margin-left:.15em;
  color:#8bd2ff;
  font-size:.9em;
}
.brand-copy em{
  display:block;
  font-style:normal;
  color:#bccdde;
  font-size:.76rem;
  margin-top:4px;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.brand-cluster{
  display:flex;
  align-items:center;
  gap:12px;
  min-width:0;
}
.main-nav{
  display:none;
  position:absolute;
  top:calc(100% + 10px);
  right:0;
  width:min(380px,calc(100vw - 28px));
  flex-direction:column;
  align-items:stretch;
  gap:6px;
  padding:12px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:26px;
  background:rgba(7,16,25,.97);
  backdrop-filter:blur(18px);
  box-shadow:0 24px 54px rgba(0,0,0,.34);
  max-height:min(74vh,620px);
  overflow-y:auto;
  overscroll-behavior:contain;
  scrollbar-width:thin;
  -webkit-overflow-scrolling:touch;
}
.main-nav.open{
  display:flex;
}
.help-switcher{
  position:relative;
}
.help-switcher summary{
  list-style:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:46px;
  height:46px;
  border-radius:999px;
  color:#f7fbff;
  font-size:1.08rem;
  font-weight:900;
  cursor:pointer;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.04);
}
.help-switcher summary::-webkit-details-marker{display:none}
.help-switcher[open] summary,
.help-switcher summary:hover{
  background:rgba(255,255,255,.08);
  color:#fff;
}
.help-switcher-menu{
  position:absolute;
  left:0;
  top:calc(100% + 10px);
  width:min(420px,90vw);
  display:grid;
  gap:14px;
  padding:16px;
  border-radius:22px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(7,16,25,.97);
  backdrop-filter:blur(16px);
  box-shadow:0 20px 42px rgba(0,0,0,.34);
  max-height:min(68vh,560px);
  overflow-y:auto;
  overscroll-behavior:contain;
  scrollbar-width:thin;
  -webkit-overflow-scrolling:touch;
}
.help-panel-head{
  display:grid;
  gap:6px;
}
.help-panel-head strong{
  color:#fff;
  font-size:1rem;
}
.help-panel-head p{
  margin:0;
  color:#c7d8e6;
  font-size:.92rem;
  line-height:1.55;
}
.help-section{
  display:grid;
  gap:8px;
}
.help-section h3{
  margin:0;
  color:#f5fbff;
  font-size:.9rem;
}
.help-section ul{
  margin:0;
  padding-left:18px;
  display:grid;
  gap:8px;
}
.help-section li{
  color:#c7d8e6;
  font-size:.9rem;
  line-height:1.55;
}
.lang-switcher{
  position:relative;
}
.lang-switcher summary{
  list-style:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:62px;
  padding:10px 14px;
  border-radius:999px;
  color:#eef6fd;
  font-size:.92rem;
  font-weight:800;
  cursor:pointer;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.04);
}
.lang-switcher summary::-webkit-details-marker{display:none}
.lang-switcher[open] summary,
.lang-switcher summary:hover{
  background:rgba(255,255,255,.08);
  color:#fff;
}
.lang-switcher-menu{
  position:absolute;
  right:0;
  top:calc(100% + 10px);
  min-width:180px;
  display:grid;
  gap:4px;
  padding:10px;
  border-radius:20px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(7,16,25,.96);
  backdrop-filter:blur(14px);
  box-shadow:0 20px 40px rgba(0,0,0,.26);
  max-height:min(62vh,420px);
  overflow-y:auto;
  overscroll-behavior:contain;
  scrollbar-width:thin;
  -webkit-overflow-scrolling:touch;
}
.lang-switcher-menu a{
  display:block;
  padding:9px 12px;
  border-radius:14px;
  color:#e7f0f7;
  font-size:.9rem;
  font-weight:700;
}
.lang-switcher-menu a[aria-current="true"]{
  background:rgba(22,213,207,.14);
  color:#fff;
}
.lang-switcher-menu a:hover{
  background:rgba(255,255,255,.08);
}
.main-nav a{
  padding:10px 14px;
  border-radius:18px;
  color:#eef6fd;
  font-size:.92rem;
  font-weight:800;
  white-space:nowrap;
  transition:background .2s ease,color .2s ease,transform .2s ease;
}
.main-nav a:hover{
  background:rgba(255,255,255,.08);
  color:#fff;
  transform:translateX(2px);
}
.main-nav a.nav-compare.has-items{
  background:rgba(22,213,207,.14);
  color:#fff;
}
.main-nav a.nav-watchlist.has-items{
  background:rgba(255,163,72,.16);
  color:#fff;
}
.main-nav a.nav-cta{
  background:linear-gradient(135deg,var(--accent),#ffbf58);
  color:#071019;
  box-shadow:0 12px 26px rgba(255,138,29,.28);
}
.main-nav a.nav-cta:hover{
  background:linear-gradient(135deg,#ff991f,#ffc96c);
}
.nav-toggle{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:48px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:999px;
  background:rgba(255,255,255,.08);
  color:#fff;
  padding:10px 16px 10px 13px;
  font-weight:800;
  box-shadow:0 14px 30px rgba(0,0,0,.16);
  overflow:visible;
}
.nav-toggle::after{
  content:"";
  position:absolute;
  inset:-4px;
  border-radius:999px;
  border:2px solid rgba(255,190,90,0);
  pointer-events:none;
  animation:menuAttentionRing 18s ease-in-out infinite;
}
.nav-toggle[aria-expanded="true"]{
  background:linear-gradient(135deg,rgba(255,138,29,.28),rgba(22,213,207,.14));
  border-color:rgba(255,190,90,.42);
}
.nav-toggle-bars{
  display:grid;
  gap:4px;
  width:22px;
}
.nav-toggle-bars span{
  display:block;
  height:2px;
  border-radius:999px;
  background:#f7fbff;
  box-shadow:0 1px 0 rgba(0,0,0,.18);
}
.nav-toggle-label{
  line-height:1;
}
@keyframes menuAttentionRing{
  0%,72%,100%{border-color:rgba(255,190,90,0);box-shadow:none;transform:scale(1);}
  76%{border-color:rgba(255,190,90,.9);box-shadow:0 0 0 4px rgba(255,190,90,.13);transform:scale(1.03);}
  79%{border-color:rgba(223,91,69,.78);box-shadow:0 0 0 7px rgba(223,91,69,.1);transform:scale(1);}
  83%{border-color:rgba(255,190,90,0);box-shadow:none;}
}
.install-prompt{
  position:fixed;
  left:50%;
  bottom:18px;
  z-index:120;
  width:min(680px,calc(100vw - 24px));
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
  padding:18px 20px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.1);
  background:linear-gradient(135deg,rgba(7,16,25,.98),rgba(14,31,44,.96));
  box-shadow:0 24px 48px rgba(0,0,0,.32);
  transform:translate(-50%,calc(100% + 30px));
  opacity:0;
  pointer-events:none;
  transition:transform .22s ease,opacity .22s ease;
}
.install-prompt.is-visible{
  transform:translate(-50%,0);
  opacity:1;
  pointer-events:auto;
}
.install-prompt-copy strong{
  display:block;
  color:#f5f9fd;
  font-size:1.02rem;
}
.install-prompt-copy p{
  margin:6px 0 0;
  color:#c8d8e5;
  font-size:.94rem;
  line-height:1.55;
}
.install-prompt-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  justify-content:flex-end;
}
.install-prompt-actions .btn{
  min-width:140px;
}

.hero{
  padding:54px 0 40px;
  position:relative;
  overflow:clip;
}
.hero::before{
  content:"";
  position:absolute;
  inset:-32px 0 18px;
  z-index:0;
  background:
    radial-gradient(circle at 14% 14%,rgba(22,213,207,.16),transparent 28%),
    radial-gradient(circle at 85% 12%,rgba(255,138,29,.18),transparent 24%),
    linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px),
    linear-gradient(135deg,#08131c 0%,#0b1824 46%,#111e2a 100%);
  background-size:auto,auto,72px 72px,72px 72px,auto;
  border-bottom:1px solid rgba(255,255,255,.05);
}
.hero > .container{
  position:relative;
  z-index:1;
}
.hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);
  gap:28px;
  align-items:start;
}
.hero-copy{
  padding-top:14px;
}
.eyebrow,
.section-kicker,
.signal-eyebrow,
.featured-kicker{
  display:inline-flex;
  align-items:center;
  gap:8px;
  border-radius:999px;
  padding:8px 14px;
  font-size:.78rem;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.eyebrow{
  color:#dbe8f4;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
  text-shadow:0 1px 0 rgba(0,0,0,.28);
}
.hero h1{
  margin-top:22px;
  font-size:clamp(3rem,7vw,5.7rem);
  color:#fff;
  max-width:760px;
  text-shadow:
    0 0 1px var(--edge-outline-dark),
    0 1px 0 var(--edge-outline-dark),
    1px 0 0 var(--edge-outline-dark),
    0 -1px 0 var(--edge-outline-dark),
    -1px 0 0 var(--edge-outline-dark),
    0 8px 28px rgba(0,0,0,.22);
}
.lead{
  margin-top:18px;
  font-size:1.08rem;
  color:var(--muted-strong);
  max-width:720px;
}
.hero .lead{
  color:#dbe7f3;
  text-shadow:0 1px 0 rgba(0,0,0,.24);
}
.hero .sub{
  color:#e2edf6;
  text-shadow:0 1px 0 rgba(0,0,0,.22);
}
.hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:28px;
}
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:12px 18px;
  border:1px solid transparent;
  border-radius:16px;
  background:linear-gradient(135deg,var(--accent),#ffbf58);
  color:#071019;
  font-weight:900;
  letter-spacing:-.01em;
  cursor:pointer;
  transition:transform .2s ease,box-shadow .2s ease,filter .2s ease,background .2s ease;
  box-shadow:0 14px 28px rgba(255,138,29,.18);
}
.btn:hover{
  transform:translateY(-1px);
  filter:brightness(1.01);
}
.btn.secondary{
  background:linear-gradient(135deg,var(--surface-2),var(--surface-3));
  color:#f0f8ff;
  box-shadow:0 14px 28px rgba(7,16,25,.18);
}
.btn.ghost{
  background:var(--panel);
  color:var(--ink);
  border-color:var(--line-strong);
  box-shadow:none;
}
.btn.danger{
  background:linear-gradient(135deg,#b94938,#e3654f);
  color:#fff;
}
.hero .btn.ghost{
  background:rgba(255,255,255,.08);
  color:#eff7ff;
  border-color:rgba(255,255,255,.12);
}

.stat-strip{
  margin-top:30px;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
}
.stat{
  padding:16px 18px;
  border-radius:22px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 18px 34px rgba(6,15,24,.12);
}
.stat strong{
  display:block;
  font-size:1.55rem;
  color:#fff;
  letter-spacing:-.04em;
}
.stat span{
  display:block;
  margin-top:4px;
  color:var(--ink-on-dark-soft);
  font-size:.9rem;
}

.hero-search-panel,
.signal-card,
.featured-stage,
.detail-hero{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.1);
  background:
    linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.03)),
    linear-gradient(135deg,rgba(10,24,38,.96),rgba(18,40,58,.9));
  color:#eef6fd;
  box-shadow:var(--shadow-lg);
}
.hero-search-panel{
  padding:24px;
  border-radius:30px;
}
.hero-search-panel::after,
.signal-card::after,
.featured-stage::after,
.detail-hero::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 88% 12%,rgba(255,138,29,.18),transparent 24%),
    radial-gradient(circle at 12% 14%,rgba(22,213,207,.15),transparent 26%);
  pointer-events:none;
}
.panel-top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
  margin-bottom:18px;
  position:relative;
  z-index:1;
}
.panel-top div{
  display:grid;
  gap:8px;
}
.panel-top span{
  color:#cfe0ec;
  font-size:.78rem;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.panel-top strong{
  max-width:420px;
  font-size:1.2rem;
  line-height:1.2;
  color:#fff;
}
.panel-top em{
  color:#e3edf5;
  font-style:normal;
  font-weight:800;
  white-space:nowrap;
}

.hero-search-grid{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.field-span-2{grid-column:1/-1}
label{
  display:block;
  margin-bottom:6px;
  font-size:.84rem;
  font-weight:800;
  color:var(--muted-strong);
}
.hero-search-panel label{color:#c8d8e6}
input,select,textarea{
  width:100%;
  border:1px solid rgba(13,26,37,.18);
  border-radius:16px;
  padding:13px 14px;
  font:inherit;
  color:var(--ink);
  background:rgba(255,255,255,.95);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7);
  outline:none;
  transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease;
}
input::placeholder,
textarea::placeholder{
  color:var(--muted-strong);
  opacity:1;
}
textarea{
  min-height:132px;
  resize:vertical;
}
input:focus,select:focus,textarea:focus{
  border-color:rgba(22,213,207,.8);
  box-shadow:0 0 0 4px rgba(22,213,207,.16);
}
input:disabled{
  color:var(--muted);
  background:#f2f5f7;
  cursor:not-allowed;
}

.hero-pill-row{
  position:relative;
  z-index:1;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:18px;
}
.hero-pill{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  min-width:160px;
  padding:11px 12px;
  border-radius:16px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.1);
}
.hero-pill span{
  color:#eef6fd;
  font-size:.9rem;
  font-weight:800;
}
.hero-pill strong{
  color:#fff;
  font-size:.88rem;
  letter-spacing:-.02em;
}

.hero-lower{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);
  gap:28px;
  margin-top:28px;
}
.featured-stage{
  min-height:430px;
  border-radius:34px;
}
.featured-stage > a,
.featured-stage > .image-placeholder{
  position:absolute;
  inset:0;
}
.featured-stage .listing-image,
.featured-stage .image-placeholder{
  width:100%;
  height:100%;
  object-fit:cover;
}
.featured-content{
  position:absolute;
  inset:auto 0 0 0;
  z-index:1;
  padding:24px 24px 22px;
  background:linear-gradient(180deg,transparent,rgba(7,16,25,.95));
}
.featured-content h2{
  margin-top:10px;
  color:#fff;
  font-size:clamp(1.6rem,3.5vw,2.35rem);
}
.featured-content p{
  margin-top:8px;
  color:var(--ink-on-dark-soft);
}
.featured-metrics{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:14px;
}
.featured-metrics span,
.detail-tag{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:9px 13px;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
  color:#eef7ff;
  font-size:.88rem;
  font-weight:800;
}
.featured-kicker{
  color:#d7e4ee;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
}
.signal-column{
  display:grid;
  gap:16px;
}
.signal-card{
  border-radius:28px;
  padding:22px;
}
.signal-card.light{
  color:var(--ink);
  background:
    radial-gradient(circle at 90% 12%,rgba(255,138,29,.14),transparent 24%),
    radial-gradient(circle at 12% 12%,rgba(22,213,207,.10),transparent 26%),
    linear-gradient(180deg,rgba(255,255,255,.98),rgba(246,250,252,.96));
  border:1px solid var(--line);
}
.signal-eyebrow,
.section-kicker{
  color:#7aa6c7;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.08);
}
.signal-card.light .signal-eyebrow,
.section-kicker{
  color:#245a78;
  background:rgba(22,213,207,.08);
  border-color:rgba(22,213,207,.16);
}
.signal-card h3{
  margin-top:14px;
  font-size:1.55rem;
  color:#fff;
}
.signal-card.light h3{color:var(--ink)}
.signal-card p{
  margin-top:10px;
  color:var(--ink-on-dark-soft);
}
.signal-card.light p{color:var(--ink-soft)}

.section-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:22px;
  margin-bottom:26px;
}
.section-head h2{
  margin-top:14px;
  font-size:clamp(2rem,4vw,3.3rem);
}
.section-head .sub{
  max-width:720px;
  margin-top:10px;
  font-size:1rem;
}
.active-filter-bar{
  display:flex;
  align-items:flex-start;
  gap:12px;
  margin:-8px 0 18px;
  flex-wrap:wrap;
}
.active-filter-label{
  color:var(--ink-soft);
  font-size:.82rem;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
  padding-top:10px;
}
.active-filter-chips{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.active-filter-chip{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 14px;
  border-radius:999px;
  border:1px solid rgba(24,44,61,.12);
  background:rgba(255,255,255,.94);
  color:var(--ink);
  box-shadow:var(--shadow-sm);
  font-weight:700;
  font-size:.95rem;
}
.active-filter-chip span{
  color:var(--ink-soft);
  font-weight:800;
}
.active-filter-chip.is-clear{
  background:rgba(22,42,58,.08);
  border-color:rgba(24,44,61,.08);
  color:var(--ink-soft);
}
.active-filter-chip:hover{
  transform:translateY(-1px);
  border-color:rgba(24,44,61,.18);
}
.results-action-strip{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  gap:14px;
  margin:0 0 18px;
}
.results-action-card{
  display:grid;
  gap:8px;
  align-content:start;
  min-height:100%;
  padding:16px 18px;
  border-radius:22px;
  text-decoration:none;
  color:var(--ink);
  background:linear-gradient(180deg,#f8fbfd,#eff5f9);
  border:1px solid var(--line);
  box-shadow:0 10px 24px rgba(12,30,44,.05);
}
.results-action-card strong{
  font-size:1.55rem;
  line-height:1;
}
.results-action-card p{
  margin:0;
  color:#294156;
  font-size:.92rem;
  line-height:1.5;
}
.results-action-card.is-primary{
  background:linear-gradient(135deg,rgba(13,53,84,.96),rgba(28,78,110,.92));
  border-color:rgba(120,178,212,.2);
  color:#fff;
}
.results-action-card.is-primary .eyebrow,
.results-action-card.is-primary p{
  color:rgba(236,246,252,.9);
}
.results-action-card.is-cta .inline-action-form{
  margin-top:4px;
}
.results-action-card:hover{
  border-color:rgba(64,132,191,.34);
  color:#0c5270;
}
.results-action-card.is-primary:hover{
  color:#fff;
}
.empty-recovery{
  display:grid;
  gap:16px;
  padding:24px;
  border-radius:26px;
  background:linear-gradient(180deg,#f8fbfd,#eef4f8);
  border:1px solid var(--line);
  box-shadow:0 14px 32px rgba(12,30,44,.06);
}
.empty-recovery h2{
  margin:0;
  font-size:1.4rem;
}
.empty-recovery p{
  margin:0;
  color:#294156;
}
.empty-recovery-suggestions{
  display:grid;
  gap:10px;
}
.empty-recovery-label{
  color:var(--ink-soft);
  font-size:.82rem;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.recently-viewed-shell{
  display:grid;
  gap:18px;
}
.recently-viewed-loading{
  margin:0;
  color:var(--ink-soft);
}
.recently-viewed-inline{
  margin-top:18px;
}
.recently-viewed-inline .listing-grid{
  margin-top:18px;
}

.category-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.category-card,
.price-card,
.detail-panel,
.contact-panel,
.form-card,
.admin-card,
.gallery,
.table-wrap,
.results-toolbar,
.seller-cta,
.route-card{
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,250,251,.95));
  border:1px solid var(--line);
  border-radius:30px;
  box-shadow:var(--shadow-sm);
}
.category-card{
  padding:22px;
  min-height:220px;
  position:relative;
  overflow:hidden;
}
.category-card::before{
  content:"";
  position:absolute;
  inset:0 auto auto 0;
  width:100%;
  height:4px;
  background:linear-gradient(90deg,var(--accent-2),var(--accent),transparent 82%);
}
.category-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:22px;
}
.category-count{
  display:inline-flex;
  align-items:center;
  padding:7px 12px;
  border-radius:999px;
  background:#eef6fa;
  color:#375b74;
  font-size:.8rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.category-arrow{
  color:var(--accent);
  font-weight:900;
  font-size:1.2rem;
}
.category-card strong{
  display:block;
  font-size:1.32rem;
}
.category-card > span{
  display:block;
  margin-top:10px;
  color:var(--muted-strong);
}
.category-children{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:18px;
}
.category-tag{
  display:inline-flex;
  align-items:center;
  padding:7px 10px;
  border-radius:999px;
  background:#f2f6f8;
  color:#566d81;
  font-size:.8rem;
  font-weight:800;
}

.route-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px;
}
.route-card{
  padding:28px;
}
.route-card h2{
  margin-top:16px;
  font-size:2.15rem;
}
.feature-list{
  display:grid;
  gap:12px;
  margin-top:18px;
}
.feature-list div{
  padding:14px 16px;
  border-radius:20px;
  background:#f2f6f9;
  border:1px solid rgba(8,18,28,.12);
  color:#22384b;
}
.feature-list strong{
  color:var(--ink);
}
.route-card.secondary{
  background:
    radial-gradient(circle at 92% 14%,rgba(255,138,29,.14),transparent 22%),
    radial-gradient(circle at 10% 12%,rgba(22,213,207,.11),transparent 24%),
    linear-gradient(180deg,rgba(255,255,255,.98),rgba(244,248,250,.96));
}

.pricing-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
}
.compact-pricing{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.price-card{
  padding:24px;
  display:flex;
  flex-direction:column;
  gap:14px;
}
.price-card .eyebrow{
  color:#17384d;
  background:#eef5f9;
  border-color:#cad9e4;
  text-shadow:none;
}
.price-card.recommended{
  border-color:rgba(255,138,29,.46);
  box-shadow:var(--shadow-md);
}
.price-card h2,.price-card h3{
  font-size:1.5rem;
}
.price-large{
  display:block;
  color:var(--ink);
  font-size:1.9rem;
  letter-spacing:-.04em;
}
.price-card ul{
  margin:0;
  padding-left:18px;
  color:#22384b;
}
.price-card li{
  margin:6px 0;
}
.old-price{
  color:var(--muted);
  font-size:1rem;
  margin-right:8px;
  text-decoration:line-through;
}
.pilot-banner{
  margin-top:22px;
  padding:16px 18px;
  border-radius:22px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
  color:#ebf4fb;
}
.pilot-banner strong{
  display:block;
  color:#fff;
}
.pilot-banner span{
  display:block;
  margin-top:4px;
  color:#f3f8fd;
}
.pilot-banner.wide{
  max-width:840px;
}
.pilot-price{
  padding:14px 16px;
  border-radius:20px;
  background:#f4fafb;
  border:1px solid rgba(22,213,207,.14);
}
.pilot-price span,.pilot-price small{
  color:var(--muted-strong);
  font-weight:800;
}
.pilot-price strong{
  display:block;
  margin:4px 0;
  font-size:1.45rem;
}

.results-toolbar{
  display:grid;
  grid-template-columns:1.7fr 1.2fr 1.2fr auto;
  gap:12px;
  align-items:end;
  padding:18px;
  margin-bottom:22px;
}
.results-toolbar > *{
  min-width:0;
}
.toolbar-group{
  display:flex;
  flex-direction:column;
  gap:6px;
  min-width:0;
}
.toolbar-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  justify-content:flex-end;
}
.view-mode-toggle{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}
.view-mode-toggle a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  padding:10px 12px;
  border-radius:16px;
  border:1px solid var(--line);
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(246,249,251,.95));
  color:var(--muted-strong);
  font-size:.88rem;
  font-weight:800;
  text-align:center;
}
.view-mode-toggle a.active{
  border-color:rgba(22,213,207,.26);
  background:rgba(22,213,207,.12);
  color:#0c5270;
}
.inline-action-form{
  display:grid;
  gap:10px;
}
.inline-action-form .btn{
  width:100%;
}
.saved-search-optin{
  align-items:flex-start;
  font-size:.84rem;
  line-height:1.35;
}
.saved-search-intent-fields{
  display:grid;
  gap:8px;
  padding:10px;
  border:1px solid rgba(24,44,61,.12);
  border-radius:8px;
  background:rgba(248,251,253,.86);
}
.saved-search-intent-fields label{
  display:grid;
  gap:5px;
  margin:0;
  color:#294156;
  font-size:.82rem;
  line-height:1.3;
}
.saved-search-intent-fields select,
.saved-search-intent-fields textarea{
  width:100%;
  min-width:0;
  border:1px solid rgba(24,44,61,.16);
  border-radius:8px;
  padding:8px 9px;
  background:#fff;
  color:#102030;
  font:inherit;
}
.saved-search-intent-fields textarea{
  resize:vertical;
}
.inquiry-intent-fields{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin:12px 0 14px;
  padding:12px;
  border:1px solid rgba(24,44,61,.12);
  border-radius:8px;
  background:#f8fbfd;
}
.inquiry-intent-fields label,
.inquiry-need-field{
  display:grid;
  gap:6px;
  margin:0;
  color:#294156;
  font-size:.86rem;
  line-height:1.35;
}
.inquiry-intent-fields .full,
.inquiry-need-field{
  grid-column:1/-1;
}
.inquiry-intent-fields select,
.inquiry-intent-fields textarea{
  width:100%;
  min-width:0;
  border:1px solid rgba(24,44,61,.16);
  border-radius:8px;
  padding:9px 10px;
  background:#fff;
  color:#102030;
  font:inherit;
}
.inquiry-intent-fields textarea{
  resize:vertical;
  min-height:82px;
}
.inquiry-need-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px 12px;
}
.quick-contact-form{
  display:grid;
  gap:12px;
}
.quick-contact-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.quick-contact-grid label{
  display:grid;
  gap:6px;
  margin:0;
  color:#294156;
  font-size:.88rem;
  font-weight:800;
}
.quick-contact-grid .full{
  grid-column:1/-1;
}
.quick-contact-grid input,
.quick-contact-grid textarea{
  width:100%;
  min-width:0;
  border:1px solid rgba(24,44,61,.16);
  border-radius:8px;
  padding:10px 11px;
  background:#fff;
  color:#102030;
  font:inherit;
  font-weight:600;
}
.quick-contact-grid textarea{
  min-height:112px;
  resize:vertical;
}
.quick-contact-consent{
  align-items:flex-start;
  padding:10px 0 0;
  color:#294156;
  font-weight:700;
}
.quick-contact-note{
  margin:0;
}
.quick-contact-login{
  margin-top:12px;
}
.inquiry-need-grid .checkbox-row{
  align-items:flex-start;
  font-size:.84rem;
  line-height:1.3;
}

.document-check-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px 12px;
  margin-top:10px;
}

.document-check-grid .checkbox-row{
  align-items:flex-start;
  margin:0;
  padding:9px 10px;
  border:1px solid rgba(24,44,61,.14);
  border-radius:8px;
  background:#f8fbfd;
  font-size:.86rem;
  line-height:1.3;
}

.listing-document-editor .sub,
.listing-availability-editor .sub{
  margin:0 0 10px;
}

.purchase-service-form{
  display:grid;
  gap:12px;
}
.purchase-service-type-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px 12px;
}
.purchase-service-type-grid .checkbox-row{
  align-items:flex-start;
  margin:0;
  padding:9px 10px;
  border:1px solid rgba(24,44,61,.14);
  border-radius:8px;
  background:#f8fbfd;
  font-size:.86rem;
  line-height:1.3;
}
.purchase-service-detail-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.purchase-service-detail-grid label{
  display:grid;
  gap:6px;
  margin:0;
  color:#294156;
  font-size:.86rem;
}
.purchase-service-detail-grid .full{
  grid-column:1/-1;
}
.purchase-service-detail-grid input,
.purchase-service-detail-grid select,
.purchase-service-detail-grid textarea,
.purchase-service-status-form input,
.purchase-service-status-form select{
  width:100%;
  min-width:0;
  border:1px solid rgba(24,44,61,.16);
  border-radius:8px;
  padding:9px 10px;
  background:#fff;
  color:#102030;
  font:inherit;
}
.purchase-service-detail-grid textarea{
  resize:vertical;
  min-height:84px;
}
.purchase-service-status-form{
  display:grid;
  grid-template-columns:minmax(150px,1fr);
  gap:8px;
  min-width:220px;
}

.listing-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.listing-grid.list-view{
  grid-template-columns:1fr;
}
.listing-grid.list-view .listing-card{
  display:grid;
  grid-template-columns:minmax(280px,340px) minmax(0,1fr);
  align-items:stretch;
}
.listing-grid.list-view .listing-media{
  height:100%;
  min-height:240px;
}
.listing-grid.list-view .listing-body{
  padding:22px;
}
.listing-grid.list-view .listing-body h3{
  font-size:1.45rem;
}
.listing-grid.list-view .spec-grid{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.listing-card{
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border-radius:28px;
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,250,251,.94));
  border:1px solid var(--line);
  box-shadow:var(--shadow-sm);
}
.listing-media-frame{
  position:relative;
}
.listing-media{
  position:relative;
  height:250px;
  background:#dce4ea;
  overflow:hidden;
}
.listing-media-share{
  position:absolute;
  top:14px;
  right:14px;
  z-index:2;
}
.listing-image{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .35s ease;
}
.listing-card:hover .listing-image{
  transform:scale(1.04);
}
.listing-price-chip,
.listing-status-chip{
  position:absolute;
  z-index:1;
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  padding:8px 12px;
  font-size:.8rem;
  font-weight:900;
  backdrop-filter:blur(10px);
}
.listing-price-chip{
  left:14px;
  bottom:14px;
  background:rgba(7,16,25,.9);
  color:#fff;
}
.listing-status-chip{
  top:14px;
  left:14px;
  background:rgba(255,255,255,.9);
  color:var(--ink);
}
.listing-status-chip.is-sold{
  background:rgba(255,241,236,.96);
  color:#9f341c;
  border:1px solid rgba(210,97,48,.24);
}
.listing-status-chip.is-new{
  background:rgba(234,255,241,.96);
  color:#1d6e39;
  border:1px solid rgba(52,163,95,.24);
}
.listing-status-chip.is-featured{
  background:rgba(255,248,230,.96);
  color:#8a5a00;
  border:1px solid rgba(214,157,35,.24);
}
.image-placeholder{
  display:grid;
  place-items:center;
  background:
    radial-gradient(circle at 22% 18%,rgba(22,213,207,.22),transparent 24%),
    radial-gradient(circle at 84% 18%,rgba(255,138,29,.25),transparent 28%),
    linear-gradient(135deg,#183043,#274c68);
  color:#eff7ff;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.listing-body{
  display:flex;
  flex-direction:column;
  gap:12px;
  flex:1;
  padding:18px;
}
.listing-meta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  color:#294156;
  font-size:.76rem;
  font-weight:900;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.listing-body h3{
  font-size:1.28rem;
  line-height:1.18;
}
.spec-line{
  color:#173247;
}
.spec-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.spec-grid span{
  padding:11px 12px;
  border-radius:18px;
  background:#f3f7f9;
  color:var(--muted-strong);
  font-size:.8rem;
}
.spec-grid strong{
  display:block;
  margin-top:2px;
  color:var(--ink);
  font-size:.98rem;
}
.listing-confidence-strip,
.listing-engagement-strip{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  padding:10px 12px;
  border:1px solid rgba(24,44,61,.11);
  border-radius:16px;
  background:#f8fbfd;
}
.listing-confidence-strip small,
.listing-engagement-strip small{
  color:var(--muted-strong);
  font-size:.78rem;
  line-height:1.35;
}
.listing-engagement-strip{
  background:#f6faf7;
  border-color:rgba(46,115,78,.16);
}
.owner-quick-edit{
  margin-top:2px;
  padding:14px;
  border-radius:22px;
  background:#f4f8fb;
  border:1px solid var(--line);
}
.owner-quick-edit-head{
  display:grid;
  gap:4px;
  margin-bottom:12px;
}
.owner-quick-edit-head strong{
  color:var(--ink);
  font-size:.92rem;
}
.owner-quick-edit-head span{
  color:var(--muted-strong);
  font-size:.84rem;
}
.owner-quick-edit-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  align-items:end;
}
.owner-quick-edit-grid label{
  margin:0;
}
.owner-quick-edit-grid label span{
  display:block;
  margin-bottom:6px;
  color:var(--muted-strong);
  font-size:.76rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.owner-quick-edit-grid input{
  padding:11px 12px;
  border-radius:14px;
}
.owner-quick-edit-submit{
  min-height:46px;
}
.card-bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-top:auto;
}
.card-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  flex-wrap:wrap;
}
.card-seller{
  display:grid;
  gap:2px;
}
.card-seller span{
  color:var(--muted-strong);
  font-size:.78rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.card-seller strong{
  color:var(--ink);
  font-size:.96rem;
}
.card-seller-link{
  color:var(--ink);
  text-decoration:underline;
  text-decoration-color:transparent;
  text-underline-offset:.16em;
  transition:text-decoration-color .18s ease,color .18s ease;
}
.card-seller-link:hover{
  color:#0c5270;
  text-decoration-color:rgba(12,82,112,.42);
}
.watchlist-toggle{
  min-width:0;
}
.watchlist-toggle.active{
  border-color:rgba(255,163,72,.28);
  background:rgba(255,163,72,.14);
  color:#9d5406;
}
.compare-toggle{
  min-width:0;
}
.compare-toggle.active{
  border-color:rgba(22,213,207,.28);
  background:rgba(22,213,207,.12);
  color:#0c5270;
}
.price{
  color:var(--ink);
}
.empty{
  padding:26px;
  border-radius:24px;
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,250,251,.94));
  border:1px dashed rgba(13,26,37,.2);
  color:var(--muted-strong);
}

.detail-page{
  padding-top:28px;
}
.detail-shell{
  display:grid;
  gap:24px;
}
.detail-related-stack{
  display:grid;
  gap:18px;
}
.detail-hero{
  display:grid;
  grid-template-columns:minmax(0,1fr) 300px;
  gap:24px;
  padding:28px;
  border-radius:34px;
  background:
    linear-gradient(160deg,rgba(7,16,25,.98) 0%,rgba(13,28,40,.96) 56%,rgba(24,48,64,.94) 100%);
  border:1px solid rgba(255,255,255,.08);
  box-shadow:var(--shadow-lg);
}
.detail-hero-copy{
  position:relative;
  z-index:1;
}
.detail-hero h1{
  margin-top:14px;
  font-size:clamp(2.4rem,4vw,4rem);
  color:#fff;
  text-shadow:
    0 0 1px var(--edge-outline-dark),
    0 1px 0 var(--edge-outline-dark),
    1px 0 0 var(--edge-outline-dark),
    0 -1px 0 var(--edge-outline-dark),
    -1px 0 0 var(--edge-outline-dark),
    0 12px 28px rgba(0,0,0,.32);
}
.detail-hero .listing-meta{
  justify-content:flex-start;
  flex-wrap:wrap;
  gap:10px;
  color:var(--ink-on-dark);
}
.detail-breadcrumb-trail,
.detail-location-pill{
  padding:8px 12px;
  border-radius:999px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.18);
  color:var(--ink-on-dark);
}
.detail-breadcrumb-trail{
  display:flex;
  align-items:center;
  gap:8px;
  max-width:100%;
  min-height:44px;
}
.detail-return-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:44px;
  padding:8px 14px;
  border-radius:999px;
  background:rgba(255,255,255,.16);
  border:1px solid rgba(255,255,255,.18);
  color:var(--ink-on-dark);
  font-weight:800;
  white-space:nowrap;
  box-shadow:0 12px 24px rgba(0,0,0,.16);
}
.detail-return-link::before{
  content:"←";
  font-weight:900;
}
.detail-return-link:hover{
  background:rgba(255,255,255,.22);
}
.detail-breadcrumb-trail a{
  color:inherit;
}
.detail-location-pill{
  display:inline-flex;
  align-items:center;
  min-height:44px;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:.82rem;
  font-weight:900;
}
.breadcrumb-links a{
  color:inherit;
  text-decoration:underline;
  text-decoration-color:transparent;
  text-underline-offset:.18em;
  transition:text-decoration-color .18s ease,opacity .18s ease;
}
.breadcrumb-links a:hover{
  opacity:1;
  text-decoration-color:rgba(255,255,255,.56);
}
.detail-subtitle{
  margin-top:10px;
  font-size:1.05rem;
  color:#edf5fb;
  text-shadow:
    0 0 1px rgba(5,12,18,.82),
    0 1px 0 rgba(5,12,18,.82),
    1px 0 0 rgba(5,12,18,.82),
    0 -1px 0 rgba(5,12,18,.82),
    -1px 0 0 rgba(5,12,18,.82);
}
.detail-tags{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:18px;
}
.detail-hero .detail-tag{
  background:rgba(255,255,255,.10);
  border-color:rgba(255,255,255,.16);
  color:#f5fbff;
}
.detail-hero .detail-tag.is-sold{
  background:rgba(255,241,236,.96);
  border-color:rgba(210,97,48,.24);
  color:#9f341c;
}
.detail-hero .detail-tag.is-new{
  background:rgba(234,255,241,.96);
  border-color:rgba(52,163,95,.24);
  color:#1d6e39;
}
.detail-price-box{
  position:relative;
  z-index:1;
  align-self:end;
  display:grid;
  gap:10px;
  padding:18px;
  border-radius:24px;
  background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.07));
  border:1px solid rgba(255,255,255,.16);
  box-shadow:0 18px 34px rgba(0,0,0,.22);
}
.detail-price-box span{
  color:#d7e6f2;
  font-size:.8rem;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.hero-price{
  font-size:2.15rem;
  color:#fff;
  line-height:1.15;
}
.detail-price-box small{
  color:var(--ink-on-dark-soft);
}
.detail-quick-actions{
  display:none;
}
.detail-quick-actions-head{
  display:grid;
  gap:10px;
}
.detail-quick-actions-head p{
  color:var(--muted-strong);
}
.detail-quick-actions-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-top:16px;
}
.detail-quick-form{
  display:block;
}
.detail-quick-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:100%;
  min-height:50px;
  padding:0 14px;
  border-radius:18px;
  border:1px solid var(--line);
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,250,251,.95));
  color:var(--ink);
  font-weight:800;
  text-align:center;
  box-shadow:var(--shadow-sm);
}
.detail-quick-button.is-primary{
  border-color:transparent;
  background:linear-gradient(135deg,var(--accent),#ffbf58);
  color:#071019;
}
.detail-quick-button.watchlist-toggle.active,
.detail-quick-button.compare-toggle.active{
  border-color:rgba(22,213,207,.36);
  background:linear-gradient(180deg,rgba(228,252,250,.98),rgba(240,250,249,.96));
  color:#0f4654;
}

.detail-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) 360px;
  gap:24px;
  align-items:start;
}
.detail-sidebar{
  display:grid;
  gap:18px;
}
.detail-panel,
.contact-panel,
.form-card,
.admin-card,
.gallery{
  padding:24px;
}
.detail-section-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:18px;
  margin-top:18px;
}
.detail-related-stack .listing-grid{
  margin-top:18px;
}
.detail-panel h2,
.contact-panel h2{
  font-size:1.65rem;
}
.detail-panel h3,
.contact-panel h3{
  font-size:1.12rem;
}
.detail-side-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-bottom:16px;
}
.detail-side-actions .btn{
  width:auto;
}
.share-icon-strip{
  display:flex;
  align-items:center;
  gap:10px;
}
.share-icon-strip.is-card{
  gap:8px;
}
.share-icon-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:42px;
  height:42px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(7,16,25,.68);
  color:#f7fbff;
  box-shadow:0 12px 30px rgba(4,10,16,.22);
  backdrop-filter:blur(12px);
  transition:transform .18s ease, filter .18s ease, background .18s ease, border-color .18s ease;
}
.share-icon-button:hover{
  transform:translateY(-1px);
  filter:brightness(1.04);
}
.share-icon-button svg{
  width:18px;
  height:18px;
  display:block;
}
.share-icon-button.is-whatsapp{
  background:rgba(17,107,60,.9);
  border-color:rgba(56,193,114,.45);
}
.share-icon-button.is-facebook{
  background:rgba(23,58,124,.9);
  border-color:rgba(91,131,222,.45);
}
.detail-price-share{
  margin-top:16px;
  padding-top:14px;
  border-top:1px solid rgba(255,255,255,.12);
}
.detail-price-share .share-icon-button{
  width:46px;
  height:46px;
}
.market-price-inline{
  display:grid;
  gap:4px;
  margin-top:14px;
  padding-top:14px;
  border-top:1px solid rgba(255,255,255,.12);
}
.market-price-inline span,
.market-price-inline small{
  color:rgba(244,249,253,.78);
  font-size:.82rem;
  font-weight:800;
}
.market-price-inline span{
  letter-spacing:.08em;
  text-transform:uppercase;
}
.market-price-inline strong{
  color:#fff;
  font-size:1rem;
}
.market-price-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(170px,1fr));
  gap:12px;
  margin-top:16px;
}
.market-price-grid div{
  display:grid;
  gap:6px;
  min-width:0;
  padding:14px 16px;
  border:1px solid rgba(13,26,37,.12);
  border-radius:18px;
  background:#f4f8fa;
}
.market-price-grid span{
  color:var(--muted-strong);
  font-size:.78rem;
  font-weight:900;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.market-price-grid strong{
  color:var(--ink);
  font-size:.98rem;
  line-height:1.3;
}
.gallery-main{
  position:relative;
  height:500px;
  border-radius:24px;
  overflow:hidden;
  background:#0e1d29;
}
.gallery-main img{
  width:100%;
  height:100%;
  object-fit:cover;
  cursor:zoom-in;
}
.thumbs{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
  margin-top:12px;
}
.thumb-button{
  display:block;
  border:2px solid transparent;
  background:transparent;
  padding:0;
  border-radius:16px;
  overflow:hidden;
  cursor:pointer;
}
.thumb-button img{
  width:100%;
  height:78px;
  object-fit:cover;
}
.thumb-button.active{
  border-color:var(--accent-2);
}
.gallery-nav{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  z-index:2;
  width:44px;
  height:44px;
  border:0;
  border-radius:999px;
  background:rgba(7,16,25,.76);
  color:#fff;
  font-size:1.8rem;
  cursor:pointer;
}
.gallery-prev{left:12px}
.gallery-next{right:12px}
.gallery-open,
.gallery-count{
  position:absolute;
  z-index:2;
  bottom:12px;
  border-radius:999px;
  font-weight:900;
}
.gallery-open{
  right:12px;
  border:0;
  padding:10px 14px;
  background:rgba(255,255,255,.92);
  color:var(--ink);
  cursor:pointer;
}
.gallery-count{
  left:12px;
  padding:8px 12px;
  background:rgba(7,16,25,.76);
  color:#fff;
  font-size:.86rem;
}
.gallery-lightbox{
  position:fixed;
  inset:0;
  z-index:10000;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:18px;
  background:rgba(4,10,15,.94);
}
.gallery-lightbox img{
  max-width:min(1200px,92vw);
  max-height:88vh;
  border-radius:20px;
  object-fit:contain;
  background:#09131b;
}
.gallery-lightbox-close,
.gallery-lightbox-nav{
  position:absolute;
  width:48px;
  height:48px;
  border:0;
  border-radius:999px;
  background:rgba(255,255,255,.92);
  color:#071019;
  cursor:pointer;
}
.gallery-lightbox-close{
  top:18px;
  right:18px;
  font-size:1.8rem;
}
.gallery-lightbox-nav{
  top:50%;
  transform:translateY(-50%);
  font-size:2rem;
}
.gallery-lightbox-nav.prev{left:18px}
.gallery-lightbox-nav.next{right:18px}
.gallery-lightbox-count{
  position:absolute;
  left:50%;
  bottom:18px;
  transform:translateX(-50%);
  padding:8px 12px;
  border-radius:999px;
  background:rgba(255,255,255,.92);
  color:#071019;
  font-weight:900;
}

.kv{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin-top:18px;
}
.kv div{
  padding:12px 14px;
  border-radius:18px;
  background:#f4f7f9;
}
.kv span{
  display:block;
  color:var(--muted-strong);
  font-size:.8rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.kv strong{
  display:block;
  margin-top:4px;
  color:var(--ink);
  font-size:1rem;
}
.description{
  margin-top:14px;
  white-space:pre-wrap;
  color:#1d3142;
  line-height:1.72;
}
.quiet-note{
  background:linear-gradient(180deg,rgba(243,248,250,.98),rgba(237,243,246,.95));
}
.quiet-note h3{
  color:var(--ink);
}

.seller-signal{
  background:
    radial-gradient(circle at 88% 12%,rgba(255,138,29,.14),transparent 24%),
    radial-gradient(circle at 12% 14%,rgba(22,213,207,.11),transparent 26%),
    linear-gradient(180deg,rgba(255,255,255,.98),rgba(244,248,250,.96));
}
.seller-page-shell{
  padding:40px 0 72px;
}
.seller-profile-hero{
  grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);
  align-items:start;
}
.seller-profile-hero .detail-subtitle{
  max-width:760px;
}
.seller-profile-meta{
  display:grid;
  gap:14px;
}
.seller-profile-meta div{
  padding:16px 18px;
  border-radius:24px;
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(245,249,252,.94));
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 18px 30px rgba(5,12,18,.12);
}
.seller-profile-meta span{
  display:block;
  color:var(--muted-strong);
  font-size:.8rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.seller-profile-meta strong{
  display:block;
  margin-top:6px;
  color:var(--ink);
  font-size:1rem;
  line-height:1.35;
  overflow-wrap:anywhere;
}
.seller-profile-meta a{
  color:inherit;
}
.seller-results{
  position:relative;
  margin-top:34px;
  padding-top:26px;
}
.seller-results::before{
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:220px;
  border-radius:34px;
  pointer-events:none;
  background:
    radial-gradient(circle at 18% 16%,rgba(22,213,207,.14),transparent 28%),
    radial-gradient(circle at 86% 14%,rgba(255,138,29,.14),transparent 24%),
    linear-gradient(180deg,rgba(7,16,25,.96) 0%,rgba(10,22,34,.92) 56%,rgba(10,22,34,0) 100%);
  z-index:0;
}
.seller-results > *{
  position:relative;
  z-index:1;
}
.seller-results .section-head h2{
  color:#f4f9fd;
  text-shadow:
    0 0 1px var(--edge-outline-dark),
    0 1px 0 var(--edge-outline-dark),
    1px 0 0 var(--edge-outline-dark),
    0 -1px 0 var(--edge-outline-dark),
    -1px 0 0 var(--edge-outline-dark),
    0 10px 24px rgba(0,0,0,.24);
}
.seller-results .section-head .sub{
  color:#cfdeea;
  text-shadow:
    0 0 1px rgba(5,12,18,.82),
    0 1px 0 rgba(5,12,18,.82),
    1px 0 0 rgba(5,12,18,.82),
    0 -1px 0 rgba(5,12,18,.82),
    -1px 0 0 rgba(5,12,18,.82),
    0 6px 16px rgba(0,0,0,.2);
}
.seller-toolbar{
  grid-template-columns:repeat(auto-fit,minmax(170px,1fr));
}
.seller-toolbar .toolbar-actions{
  grid-column:1/-1;
}
.seller-empty{
  margin-top:18px;
}
.seller-details{
  display:grid;
  gap:12px;
  margin-top:18px;
}
.seller-contact-stack{
  display:grid;
  gap:14px;
  margin-top:18px;
}
.seller-contact-card{
  padding:16px 18px;
  border-radius:22px;
  background:rgba(255,255,255,.82);
  border:1px solid rgba(17,44,65,.08);
  box-shadow:0 14px 24px rgba(8,17,26,.08);
}
.seller-contact-card.is-primary{
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(245,249,252,.95));
}
.seller-contact-company{
  margin:8px 0 4px;
  color:var(--ink);
  font-size:1.12rem;
}
.seller-contact-name{
  display:block;
  color:#102d43;
  font-size:1rem;
}
.seller-contact-kicker{
  display:block;
  color:var(--muted-strong);
  font-size:.74rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.12em;
}
.seller-contact-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:14px;
}
.seller-contact-actions .btn{
  width:auto;
}
.seller-contact-list{
  display:grid;
  gap:10px;
  margin-top:14px;
}
.seller-contact-mini{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  padding:12px 14px;
  border-radius:16px;
  background:#fff;
  border:1px solid rgba(17,44,65,.08);
}
.seller-contact-mini strong{
  color:var(--ink);
  font-size:.98rem;
}
.seller-contact-mini span,
.seller-contact-mini-head span{
  display:block;
  margin-top:3px;
  color:var(--muted-strong);
  font-weight:700;
}
.seller-contact-mini-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:8px;
  min-width:0;
}
.seller-contact-mini-actions a{
  display:inline-flex;
  align-items:center;
  min-height:32px;
  padding:6px 10px;
  border:1px solid var(--line);
  border-radius:999px;
  background:#f7fafb;
  color:#163d59;
  font-size:.84rem;
  font-weight:900;
  text-decoration:none;
  overflow-wrap:anywhere;
}
.seller-contact-mini-actions a:hover{
  text-decoration:underline;
}
.buyer-tools-panel .sub,
.contact-panel .sub{
  color:#334d63;
}
.buyer-tools-panel .detail-side-actions{
  margin-top:0;
  margin-bottom:0;
}
.seller-details p{
  display:grid;
  gap:4px;
}
.seller-details strong{
  color:var(--muted-strong);
  font-size:.78rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.1em;
}
.seller-details span,
.seller-details a{
  color:var(--ink);
  font-weight:700;
}
.seller-title-link{
  color:inherit;
  text-decoration:none;
}
.seller-title-link:hover{
  color:#13324a;
  text-decoration:underline;
  text-decoration-thickness:2px;
  text-underline-offset:.15em;
}

.listing-assist{
  position:fixed;
  right:24px;
  bottom:24px;
  z-index:1200;
  width:min(360px,calc(100vw - 32px));
  padding:18px;
  border:1px solid rgba(17,44,65,.12);
  border-radius:22px;
  background:rgba(255,255,255,.98);
  box-shadow:0 22px 60px rgba(5,12,18,.22);
}
.listing-assist.is-visible{
  display:block;
  animation:listingAssistIn .18s ease-out;
}
.listing-assist img{
  position:absolute;
  top:-32px;
  left:24px;
  width:72px;
  height:72px;
  border:4px solid #fff;
  border-radius:999px;
  object-fit:cover;
  box-shadow:0 14px 28px rgba(5,12,18,.2);
}
.listing-assist-close{
  position:absolute;
  top:-18px;
  right:10px;
  width:40px;
  height:40px;
  border:1px solid var(--line);
  border-radius:999px;
  background:#fff;
  color:var(--muted-strong);
  font-size:1.6rem;
  line-height:1;
  cursor:pointer;
}
.listing-assist-copy{
  display:grid;
  gap:6px;
  padding-top:24px;
}
.listing-assist-copy span{
  color:var(--muted-strong);
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.listing-assist-copy strong{
  color:var(--ink);
  font-size:1.08rem;
  line-height:1.25;
}
.listing-assist-copy p{
  margin:0;
  color:#334d63;
  line-height:1.45;
}
.listing-assist-actions{
  display:grid;
  gap:8px;
  margin-top:14px;
}
.listing-assist-actions .btn{
  width:100%;
}
@keyframes listingAssistIn{
  from{opacity:0; transform:translateY(12px)}
  to{opacity:1; transform:translateY(0)}
}

.notice,
.error{
  padding:14px 16px;
  border-radius:18px;
  margin:14px 0;
}
.notice{
  background:#eaf7ef;
  border:1px solid #add4bd;
  color:#1b4d31;
}
.error{
  background:#fff0eb;
  border:1px solid #e7a89a;
  color:#7f2417;
}
.soft-rule{
  border:0;
  border-top:1px solid var(--line);
  margin:22px 0;
}
.actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.checkbox-row{
  display:flex;
  align-items:center;
  gap:10px;
  font-weight:800;
}
.checkbox-row input{
  width:auto;
}
.form-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.form-grid .full{
  grid-column:1/-1;
}
.upload-preview{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:10px;
}
.upload-preview img{
  width:108px;
  height:82px;
  object-fit:cover;
  border-radius:14px;
}

.account-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) 360px;
  gap:22px;
  align-items:start;
}
.account-page-head h1{
  color:#f4f9fd;
  text-shadow:
    0 0 1px var(--edge-outline-dark),
    0 1px 0 var(--edge-outline-dark),
    1px 0 0 var(--edge-outline-dark),
    0 -1px 0 var(--edge-outline-dark),
    -1px 0 0 var(--edge-outline-dark),
    0 10px 24px rgba(0,0,0,.24);
}
.account-page-head .sub{
  color:#cfdeea;
  text-shadow:
    0 0 1px rgba(5,12,18,.82),
    0 1px 0 rgba(5,12,18,.82),
    1px 0 0 rgba(5,12,18,.82),
    0 -1px 0 rgba(5,12,18,.82),
    -1px 0 0 rgba(5,12,18,.82),
    0 6px 16px rgba(0,0,0,.2);
}
.muted-inline{
  display:inline-block;
  margin-top:8px;
  color:var(--muted-strong);
}
.contact-admin-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.contact-admin-card{
  display:grid;
  gap:14px;
  padding:20px;
  border-radius:24px;
  background:#f6fafc;
  border:1px solid var(--line);
}
.contact-admin-card h3{
  margin:0;
  font-size:1.2rem;
}
.message-stack{
  display:grid;
  gap:14px;
}
.seller-tools-strip{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:16px;
  margin:18px 0;
}
.seller-tools-card{
  display:grid;
  gap:8px;
  padding:20px 22px;
  border-radius:26px;
  text-decoration:none;
  color:var(--ink);
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(247,250,252,.95));
  border:1px solid rgba(14,31,46,.10);
  box-shadow:var(--shadow-sm);
}
.seller-tools-card strong{
  font-size:1.1rem;
}
.seller-tools-card span:last-child{
  color:var(--muted-strong);
}
.mini-kpi-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
  margin-bottom:18px;
}
.mini-kpi{
  display:grid;
  gap:8px;
}
.mini-kpi strong{
  font-size:2rem;
  color:var(--ink);
}
.mini-kpi span{
  color:var(--muted-strong);
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
  font-size:.8rem;
}
.inventory-quality-panel{
  margin-bottom:18px;
}
.inventory-quality-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.inventory-quality-card{
  display:grid;
  gap:8px;
  padding:18px 20px;
  border-radius:24px;
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(247,250,252,.95));
  border:1px solid rgba(14,31,46,.10);
  box-shadow:var(--shadow-sm);
  color:var(--ink);
}
.inventory-quality-card strong{
  font-size:1.9rem;
  line-height:1;
}
.inventory-quality-card span{
  color:var(--muted-strong);
  font-weight:800;
  letter-spacing:.05em;
  text-transform:uppercase;
  font-size:.8rem;
}
.inventory-quality-card.active{
  border-color:rgba(22,213,207,.36);
  box-shadow:0 14px 28px rgba(22,213,207,.10);
}
.inventory-quality-card.clear{
  background:linear-gradient(180deg,rgba(241,247,251,.98),rgba(248,250,251,.96));
}
.buyer-compose-layout{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);
  gap:18px;
  align-items:start;
}
.buyer-compose-main,
.buyer-compose-side{
  display:grid;
  gap:16px;
}
.buyer-channels,
.buyer-listing-picker{
  display:grid;
  gap:10px;
}
.outreach-listings{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:10px;
  max-height:320px;
  overflow:auto;
  padding-right:4px;
}
.choice-card{
  display:flex;
  align-items:flex-start;
  gap:10px;
  padding:12px 14px;
  border-radius:18px;
  background:#f4f8fb;
  border:1px solid var(--line);
}
.choice-card span{
  display:grid;
  gap:4px;
}
.choice-card em{
  color:var(--muted-strong);
  font-style:normal;
  font-size:.84rem;
}
.buyer-card{
  display:flex;
  align-items:flex-start;
  gap:12px;
  padding:12px 14px;
  border-radius:18px;
  background:#f4f8fb;
  border:1px solid var(--line);
}
.buyer-card-check input{
  margin-top:4px;
}
.buyer-card strong{
  display:block;
  color:var(--ink);
}
.buyer-card span{
  display:block;
  margin-top:4px;
  color:var(--muted-strong);
  font-size:.88rem;
}
.thread-details{
  margin-top:10px;
  border-top:1px solid var(--line);
  padding-top:10px;
}
.thread-details summary{
  cursor:pointer;
  color:var(--link);
  font-weight:800;
  list-style:none;
}
.thread-details summary::-webkit-details-marker{
  display:none;
}
.inquiry-thread{
  display:grid;
  gap:10px;
  margin-top:12px;
}
.thread-message{
  display:grid;
  gap:8px;
  padding:12px 14px;
  border-radius:18px;
  background:#f6fafc;
  border:1px solid var(--line);
}
.thread-message.own{
  background:#eef7ff;
  border-color:rgba(64,132,191,.2);
}
.thread-message-head{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:flex-start;
  color:var(--muted-strong);
  font-size:.82rem;
}
.thread-message-head strong{
  color:var(--ink);
  font-size:.92rem;
}
.thread-message p{
  margin:0;
  color:var(--ink);
  white-space:pre-wrap;
}
.thread-reply-form{
  display:grid;
  gap:10px;
  padding:14px;
  border-radius:18px;
  background:#fbfdff;
  border:1px solid var(--line);
}
.thread-reply-form textarea{
  min-height:110px;
}
.template-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:12px;
  margin-top:16px;
}
.template-card{
  display:grid;
  gap:8px;
  padding:16px;
  border-radius:22px;
  background:#f6fafc;
  border:1px solid var(--line);
}
.template-card.active{
  border-color:rgba(255,162,43,.45);
  box-shadow:0 0 0 1px rgba(255,162,43,.18), 0 16px 34px rgba(13,26,38,.08);
}
.template-card h3{
  margin:0;
  font-size:1rem;
}
.template-card p{
  margin:0;
  color:var(--muted-strong);
  font-size:.92rem;
}
.compare-page{
  padding-top:28px;
}
.compare-shell{
  display:grid;
  gap:24px;
}
.compare-card-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:18px;
}
.watchlist-signin-panel{
  margin-top:-4px;
}
.compare-card{
  display:flex;
  flex-direction:column;
  min-height:100%;
  border-radius:28px;
  overflow:hidden;
  border:1px solid var(--line);
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(247,250,252,.95));
  box-shadow:var(--shadow-sm);
}
.compare-card-media{
  display:block;
  height:220px;
  overflow:hidden;
}
.compare-card-media .listing-image{
  width:100%;
  height:100%;
  object-fit:cover;
}
.compare-card-body{
  display:grid;
  gap:12px;
  padding:18px;
}
.compare-card-body h2{
  font-size:1.28rem;
  line-height:1.14;
}
.compare-stat-list{
  display:grid;
  gap:8px;
}
.compare-stat-list div{
  display:flex;
  justify-content:space-between;
  gap:12px;
  padding:10px 12px;
  border-radius:16px;
  background:#f3f7f9;
}
.compare-stat-list span{
  color:var(--muted-strong);
  font-size:.84rem;
  font-weight:800;
}
.compare-stat-list strong{
  color:var(--ink);
  font-size:.92rem;
  text-align:right;
}
.compare-matrix-panel{
  overflow:hidden;
}
.compare-table-wrap{
  overflow:auto;
}
.compare-table{
  min-width:760px;
}
.compare-table th{
  width:170px;
  white-space:nowrap;
}
.compare-table td{
  min-width:180px;
}
.compare-request-panel textarea{
  min-height:150px;
}
.compare-clear-button{
  width:100%;
}
.compare-decision-panel{
  overflow:hidden;
}
.compare-decision-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:14px;
}
.compare-decision-card{
  display:grid;
  gap:10px;
  min-width:0;
  padding:16px;
  border-radius:18px;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:0 14px 32px rgba(12,30,44,.06);
}
.compare-decision-card.is-best{
  border-color:rgba(31,124,91,.32);
  background:#f3fbf6;
}
.compare-decision-card h3{
  margin:0;
  font-size:1rem;
  line-height:1.25;
}
.compare-decision-card h3 a{
  color:var(--ink);
  text-decoration:none;
}
.compare-decision-card p{
  margin:0;
  color:var(--muted-strong);
  font-size:.88rem;
}
.compare-score-meter{
  width:100%;
  height:9px;
  border-radius:999px;
  background:#e8eef3;
  overflow:hidden;
}
.compare-score-meter span{
  display:block;
  height:100%;
  min-width:8px;
  border-radius:inherit;
  background:linear-gradient(90deg,#1f7c5b,#3d91c7);
}
.compare-signal-list,
.compare-risk-list{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
}
.compare-signal-list span,
.compare-risk-list span{
  display:inline-flex;
  align-items:center;
  max-width:100%;
  padding:5px 8px;
  border-radius:999px;
  font-size:.75rem;
  font-weight:900;
  line-height:1.2;
}
.compare-signal-list span{
  color:#15533e;
  background:#dcf3e7;
}
.compare-risk-list span{
  color:#7a3d07;
  background:#fff2dd;
}
.watchlist-note-form{
  display:grid;
  gap:10px;
  padding:12px;
  border-radius:16px;
  background:#f7fafc;
  border:1px solid var(--line);
}
.watchlist-note-head{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
  gap:10px;
  align-items:end;
}
.watchlist-note-head strong{
  align-self:center;
  font-size:.95rem;
}
.watchlist-note-form label{
  display:grid;
  gap:5px;
  margin:0;
}
.watchlist-note-form label span{
  color:var(--muted-strong);
  font-size:.78rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.watchlist-note-form select,
.watchlist-note-form textarea{
  width:100%;
}
.watchlist-note-form textarea{
  min-height:92px;
  resize:vertical;
}
.watchlist-tracking-box{
  display:grid;
  gap:7px;
  padding:12px;
  border:1px solid rgba(12,82,112,.16);
  border-radius:16px;
  background:#eef6f8;
}
.watchlist-tracking-box.has-change{
  border-color:rgba(255,138,29,.34);
  background:#fff7ec;
}
.watchlist-tracking-head{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:center;
}
.watchlist-tracking-head strong{
  color:var(--ink);
  font-size:.94rem;
}
.watchlist-tracking-head span,
.watchlist-tracking-box p{
  margin:0;
  color:var(--muted-strong);
  font-size:.86rem;
  line-height:1.45;
}
.watchlist-tracking-box p strong{
  color:var(--ink);
}
.shortlist-decision-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:18px;
}
.shortlist-info-card{
  display:grid;
  gap:12px;
  padding:20px;
  border-radius:24px;
  background:linear-gradient(180deg,#f8fbfd,#eff5f9);
  border:1px solid var(--line);
}
.shortlist-info-card h2{
  margin:0;
  font-size:1.16rem;
  line-height:1.25;
}
.shortlist-info-card .sub{
  margin:0;
  color:#294156;
}
.shortlist-chip-list{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.shortlist-chip{
  display:grid;
  gap:2px;
  min-width:0;
  padding:12px 14px;
  border-radius:18px;
  text-decoration:none;
  color:var(--ink);
  background:#fff;
  border:1px solid var(--line);
  box-shadow:0 10px 24px rgba(12,30,44,.05);
}
.shortlist-chip strong{
  font-size:.94rem;
  line-height:1.25;
}
.shortlist-chip small{
  color:#4b6478;
  font-size:.79rem;
  font-weight:800;
  letter-spacing:.02em;
}
.shortlist-chip:hover{
  border-color:rgba(64,132,191,.34);
  color:#0c5270;
}
.message-card{
  display:grid;
  gap:10px;
  padding:18px;
  border-radius:22px;
  background:#f7fafc;
  border:1px solid var(--line);
}
.message-card.unread{
  background:#eef6ff;
  border-color:#bdd7ea;
  box-shadow:0 12px 32px rgba(13,37,56,.08);
}
.message-card header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}
.message-card h3{
  margin:0;
  font-size:1.08rem;
  line-height:1.25;
}
.message-meta{
  color:#294156;
  font-size:.82rem;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.message-body{
  color:#152d40;
  line-height:1.7;
  white-space:pre-wrap;
}
.message-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.message-actions form{
  margin:0;
}
.messages-layout{
  display:grid;
  grid-template-columns:260px minmax(0,1fr);
  gap:24px;
  align-items:start;
}
.messages-sidebar{
  display:grid;
  gap:18px;
  position:sticky;
  top:96px;
}
.messages-main{
  display:grid;
  gap:0;
}
.message-folder-nav{
  display:grid;
  gap:10px;
}
.message-folder-link{
  display:grid;
  gap:4px;
  padding:14px 16px;
  border-radius:18px;
  text-decoration:none;
  color:var(--ink);
  background:#f7fafc;
  border:1px solid var(--line);
}
.message-folder-link strong{
  font-size:1rem;
}
.message-folder-link span{
  color:#294156;
  font-size:.84rem;
}
.message-folder-link.active{
  background:linear-gradient(135deg,rgba(255,162,43,.18),rgba(255,226,184,.32));
  border-color:rgba(255,162,43,.35);
  box-shadow:0 16px 34px rgba(13,26,38,.08);
}
.message-folder-link.active strong,
.message-folder-link.active span{
  color:#173247;
}
.message-thread-stack{
  display:grid;
  gap:14px;
}
.message-thread-card{
  display:grid;
  gap:12px;
  padding:20px;
  border-radius:22px;
  background:#f7fafc;
  border:1px solid var(--line);
}
.message-thread-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}
.message-thread-head h3{
  margin:0;
  font-size:1.08rem;
  line-height:1.25;
}
.inquiry-intent-chip-list{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
}
.inquiry-intent-chip{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:5px 9px;
  border-radius:999px;
  background:#eaf4fb;
  color:#21445e;
  font-size:.78rem;
  font-weight:900;
}
.inquiry-intent-chip.is-alert{
  background:#fff0eb;
  color:#862d1f;
}
.message-attachments{
  display:grid;
  gap:8px;
}
.message-attachments strong{
  color:var(--ink);
  font-size:.9rem;
}
.message-attachment-list{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.message-attachment-item{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:9px 12px;
  border-radius:999px;
  background:#eef5fa;
  border:1px solid var(--line);
  color:var(--ink);
  text-decoration:none;
  font-size:.9rem;
  font-weight:700;
}
.message-attachment-item:hover{
  border-color:rgba(64,132,191,.26);
  color:#0c5270;
}
.sync-filter-bar{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:0 0 18px;
}
.sync-type-chip{
  display:inline-flex;
  align-items:center;
  min-height:42px;
  padding:10px 14px;
  border-radius:999px;
  background:#f2f7fa;
  border:1px solid var(--line);
  color:var(--muted-strong);
  font-weight:900;
}
.sync-type-chip.active{
  background:linear-gradient(135deg,var(--accent),#ffbf58);
  color:#071019;
  border-color:transparent;
}
.sync-issue-stack{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.sync-modal{
  position:fixed;
  inset:0;
  z-index:1200;
}
.sync-modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(5,12,18,.6);
  backdrop-filter:blur(6px);
}
.sync-modal-card{
  position:relative;
  width:min(760px,calc(100vw - 28px));
  max-height:min(82vh,920px);
  margin:6vh auto 0;
  padding:22px;
  border-radius:28px;
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(247,250,252,.96));
  border:1px solid var(--line);
  box-shadow:var(--shadow-lg);
  overflow:hidden;
}
.sync-modal-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
}
.sync-modal-head strong{
  display:block;
  font-size:1.3rem;
  color:var(--ink);
}
.sync-modal-close{
  min-width:110px;
}
.sync-progress-shell{
  margin-top:18px;
  display:grid;
  gap:10px;
}
.sync-progress-bar{
  width:100%;
  height:14px;
  border-radius:999px;
  background:#e8eff4;
  overflow:hidden;
}
.sync-progress-bar span{
  display:block;
  height:100%;
  border-radius:999px;
  background:linear-gradient(135deg,var(--accent),#ffbf58);
  transition:width .22s ease;
}
.sync-progress-meta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  color:var(--muted-strong);
  font-weight:800;
}
.sync-log{
  margin-top:16px;
  max-height:42vh;
  overflow:auto;
  padding:14px;
  border-radius:22px;
  background:#09131b;
  color:#e8f2fb;
  font:500 .92rem/1.55 "SFMono-Regular",Consolas,"Liberation Mono",Menlo,monospace;
}
.sync-log-row + .sync-log-row{
  margin-top:8px;
}
.sync-log-row.is-error{
  color:#ffd2c7;
}
.sync-log-row.is-warning{
  color:#ffe3a3;
}
.sync-log-row.is-complete{
  color:#baf7d2;
}
.sync-page-grid{
  display:grid;
  gap:18px;
}
.sync-page-source-card h2,
.sync-mode-card h2{
  margin:0 0 8px;
}
.sync-mode-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.sync-mode-card{
  display:grid;
  gap:12px;
}
.sync-protection-list{
  margin:0;
  padding-left:18px;
  color:var(--muted-strong);
}
.sync-protection-list li + li{
  margin-top:8px;
}
.inventory-sync-inline{
  margin-top:18px;
}
.modal-open{
  overflow:hidden;
}
.contact-lines{
  display:grid;
  gap:10px;
}
.contact-lines p{
  margin:0;
  display:grid;
  gap:4px;
}
.contact-lines strong{
  color:var(--muted-strong);
  font-size:.76rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.compact-form{
  gap:12px;
}
.inline-danger-form{
  margin:0;
}
.inline-assign-form{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:10px;
  align-items:end;
}
.data-table td.actions form.inline-assign-form{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:10px;
  align-items:end;
}
.inline-assign-form select{
  min-width:0;
}
.seller-cta{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
  gap:24px;
  padding:30px;
}
.seller-cta h2{
  margin-top:14px;
  font-size:clamp(2rem,4vw,3rem);
}
.seller-cta p{
  margin-top:14px;
  color:#1f3446;
}
.price-card small,
.seller-cta small{
  color:var(--muted-strong);
}
.price-card p,
.seller-cta p,
.message-meta,
.choice-card span,
.choice-card em{
  color:var(--muted-strong);
}
.account-page-head .sub{
  color:var(--ink-on-dark-soft);
  text-shadow:0 1px 0 rgba(5,12,18,.72);
}

.inventory-bookkeeping-grid{
  grid-template-columns:minmax(300px,.82fr) minmax(0,1.18fr);
  align-items:start;
}
.inventory-bookkeeping-picker{
  display:grid;
  gap:16px;
  margin-bottom:18px;
}
.inventory-bookkeeping-picker-form{
  display:grid;
  gap:14px;
}
.inventory-bookkeeping-picker-grid{
  display:grid;
  grid-template-columns:minmax(220px,.72fr) minmax(0,1.28fr) auto;
  gap:12px;
  align-items:end;
}
.inventory-bookkeeping-picker-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  justify-content:flex-end;
}
.inventory-bookkeeping-current{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
  padding:14px 16px;
  border-radius:18px;
  background:#eef5f9;
  border:1px solid rgba(12,82,112,.12);
}
.inventory-bookkeeping-current strong{
  font-size:1rem;
  letter-spacing:-.02em;
}
.inventory-bookkeeping-current span{
  display:inline-flex;
  align-items:center;
  padding:7px 10px;
  border-radius:999px;
  background:#fff;
  color:var(--muted-strong);
  font-size:.84rem;
  font-weight:800;
}
.inventory-bookkeeping-list,
.inventory-bookkeeping-form-card{
  display:grid;
  gap:16px;
}
.inventory-bookkeeping-list{
  position:sticky;
  top:104px;
  align-self:start;
}
.inventory-bookkeeping-list .message-stack{
  max-height:min(72vh,1100px);
  overflow:auto;
  padding-right:4px;
}
.inventory-bookkeeping-summary{
  margin-bottom:16px;
}
.inventory-print-shell{
  padding-top:36px;
}
.inventory-print-toolbar{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  margin-bottom:18px;
}
.inventory-print-card{
  display:grid;
  gap:18px;
  padding:24px 26px;
}
.inventory-print-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
}
.inventory-print-summary{
  display:grid;
  gap:8px;
  text-align:right;
  color:var(--muted-strong);
  font-weight:800;
}
.inventory-print-groups{
  display:grid;
  gap:18px;
}
.inventory-print-group{
  display:grid;
  gap:8px;
  break-inside:avoid;
}
.inventory-print-group-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:12px;
  padding-top:6px;
  border-top:2px solid rgba(13,26,37,.14);
}
.inventory-print-group:first-child .inventory-print-group-head{
  padding-top:0;
  border-top:0;
}
.inventory-print-group-head h3{
  font-size:1.04rem;
  letter-spacing:-.02em;
}
.inventory-print-lines{
  display:grid;
  gap:0;
}
.inventory-print-line{
  display:grid;
  gap:2px;
  padding:8px 0;
  border-top:1px solid rgba(13,26,37,.1);
}
.inventory-print-line:first-child{
  border-top:0;
}
.inventory-print-line-main{
  display:flex;
  align-items:baseline;
  flex-wrap:wrap;
  gap:8px;
}
.inventory-print-line-main strong{
  font-size:.98rem;
  letter-spacing:-.02em;
}
.inventory-print-line-title{
  color:var(--muted-strong);
  font-size:.88rem;
}
.inventory-print-line-meta,
.inventory-print-line-submeta{
  display:flex;
  flex-wrap:wrap;
  gap:6px 12px;
  color:#22384b;
  font-size:.83rem;
  line-height:1.35;
}
.inventory-print-line-submeta{
  color:#33495a;
}

.admin-layout{
  display:grid;
  grid-template-columns:260px minmax(0,1fr);
  gap:22px;
}
.admin-menu{
  padding:14px;
  border-radius:26px;
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,250,251,.95));
  border:1px solid var(--line);
  box-shadow:var(--shadow-sm);
  height:max-content;
}
.admin-menu a{
  display:block;
  padding:11px 12px;
  border-radius:14px;
  color:var(--muted-strong);
  font-weight:800;
}
.admin-menu a.active,
.admin-menu a:hover{
  background:#eef5f8;
  color:var(--ink);
}
.table-wrap{
  overflow:auto;
  padding:0;
}
.stacked-actions{
  display:grid;
  gap:10px;
}
.stacked-actions form{
  margin:0;
}
.data-table{
  width:100%;
  min-width:860px;
  border-collapse:collapse;
}
.data-table th,
.data-table td{
  padding:14px;
  border-bottom:1px solid var(--line);
  text-align:left;
  vertical-align:top;
}
.data-table th{
  color:var(--muted-strong);
  font-size:.8rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
  background:#f5f8fa;
}
.data-table tr:last-child td{
  border-bottom:0;
}
.data-table td.actions{
  min-width:238px;
}
.data-table td.actions,
.data-table td.actions form{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:flex-start;
}
.data-table td.actions .btn{
  white-space:nowrap;
}

.billing-dashboard-grid,
.billing-edit-grid,
.billing-settings-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  margin-bottom:18px;
}
.billing-feature-list{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.billing-feature-list span{
  padding:8px 10px;
  border-radius:999px;
  background:#eef5f8;
  border:1px solid var(--line);
  font-weight:800;
  color:var(--muted-strong);
  font-size:.86rem;
}
.billing-vat-snapshot{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin:14px 0;
}
.billing-vat-snapshot span,
.billing-total-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:12px 14px;
  border:1px solid var(--line);
  border-radius:16px;
  background:#f7fafb;
}
.billing-lines-card{
  margin-bottom:18px;
}
.billing-line-head,
.billing-line-grid{
  display:grid;
  grid-template-columns:90px minmax(200px,1fr) 86px 72px 110px 82px minmax(150px,.55fr);
  gap:10px;
  align-items:center;
}
.billing-line-head{
  color:var(--muted-strong);
  font-size:.78rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  margin-bottom:8px;
}
.billing-line-grid{
  margin-bottom:8px;
}
.billing-total-card{
  display:grid;
  gap:12px;
}
.billing-accounting-preview{
  display:grid;
  gap:5px;
  padding:10px 0;
  border-top:1px solid #d8e4ec;
  color:#52687b;
  font-size:.82rem;
}
.billing-accounting-preview strong{
  color:#132230;
}
.billing-total-row.is-grand{
  background:#eaf7ef;
  border-color:#add4bd;
  font-size:1.12rem;
}
.billing-period-form{
  display:grid;
  grid-template-columns:120px minmax(260px,1fr) auto;
  gap:12px;
  align-items:end;
}
.billing-print-shell{
  padding:34px 0 80px;
}
.billing-print-toolbar{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  margin-bottom:18px;
}
.billing-print-actions{
  display:flex;
  justify-content:flex-end;
  flex-wrap:wrap;
  gap:8px;
}
.billing-document{
  background:#fff;
  color:#132230;
  border:1px solid #d8e4ec;
  border-radius:18px;
  box-shadow:var(--shadow-sm);
  padding:34px;
}
.billing-document-head,
.billing-document-parties,
.billing-document-bottom{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:26px;
}
.billing-document-head{
  align-items:start;
  border-bottom:2px solid #132230;
  padding-bottom:18px;
  margin-bottom:22px;
}
.billing-document-head h1{
  margin:.1em 0 0;
  font-size:2.4rem;
}
.billing-document-number{
  text-align:right;
}
.billing-document-number span,
.billing-document-meta span,
.billing-document-totals span{
  display:block;
  color:#52687b;
  font-size:.78rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.billing-document-number strong{
  font-size:2rem;
}
.billing-document-parties{
  margin-bottom:22px;
}
.billing-document-parties h2{
  margin:0 0 8px;
  font-size:.9rem;
  color:#52687b;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.billing-document-parties span,
.billing-document-parties strong{
  display:block;
}
.billing-document-meta{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin-bottom:18px;
}
.billing-document-meta div{
  padding:12px;
  border:1px solid #d8e4ec;
  border-radius:12px;
}
.billing-document-subject{
  padding:12px 0;
  border-top:1px solid #d8e4ec;
}
.billing-document-lines{
  width:100%;
  border-collapse:collapse;
  margin-top:12px;
}
.billing-document-lines th,
.billing-document-lines td{
  padding:10px 8px;
  border-bottom:1px solid #d8e4ec;
  text-align:left;
  vertical-align:top;
}
.billing-document-lines th{
  font-size:.78rem;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:#52687b;
}
.billing-document-bottom{
  margin-top:22px;
  align-items:start;
}
.billing-document-totals{
  display:grid;
  gap:8px;
}
.billing-document-totals div{
  display:flex;
  justify-content:space-between;
  gap:16px;
}
.billing-document-totals .is-grand{
  border-top:2px solid #132230;
  padding-top:10px;
  font-size:1.25rem;
}
.billing-bank-transfer{
  margin-top:30px;
  border-top:2px solid #132230;
  color:#111;
  font-family:Arial,Helvetica,sans-serif;
  font-size:.8rem;
  page-break-inside:avoid;
}
.bank-transfer-main{
  display:grid;
  grid-template-columns:34px minmax(0,1.28fr) minmax(260px,.72fr);
  border-left:1px solid #132230;
  border-right:1px solid #132230;
  border-bottom:1px solid #132230;
  min-height:214px;
}
.bank-transfer-side-label{
  display:flex;
  align-items:center;
  justify-content:center;
  border-right:1px solid #132230;
  font-size:.66rem;
  font-weight:800;
  letter-spacing:.08em;
  line-height:1.45;
  text-align:center;
  writing-mode:vertical-rl;
  transform:rotate(180deg);
}
.bank-transfer-left,
.bank-transfer-right{
  min-width:0;
}
.bank-transfer-left{
  border-right:1px solid #132230;
}
.bank-transfer-row{
  display:grid;
  grid-template-columns:118px minmax(0,1fr);
  min-height:42px;
  border-bottom:1px solid #132230;
}
.bank-transfer-row:last-child{
  border-bottom:0;
}
.bank-transfer-row.is-account{
  grid-template-columns:118px minmax(0,1fr) 118px;
}
.bank-transfer-row.is-payer{
  min-height:74px;
}
.bank-transfer-row.is-signature,
.bank-transfer-row.is-from-account{
  min-height:34px;
}
.bank-transfer-label,
.bank-transfer-payment-label{
  padding:7px 8px;
  color:#293847;
  font-size:.68rem;
  font-weight:800;
  line-height:1.15;
}
.bank-transfer-label span,
.bank-transfer-payment-label span{
  display:block;
  font-weight:600;
}
.bank-transfer-value{
  padding:7px 10px;
  min-width:0;
}
.bank-transfer-value span{
  display:block;
}
.bank-transfer-value strong{
  display:block;
  overflow-wrap:anywhere;
}
.bank-transfer-value.is-bic{
  border-left:1px solid #132230;
}
.bank-transfer-value.is-bic span,
.bank-transfer-value:first-of-type > span:first-child{
  color:#293847;
  font-size:.68rem;
  font-weight:800;
  text-transform:uppercase;
}
.bank-transfer-invoice-ref{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  padding:12px 12px 44px;
}
.bank-transfer-invoice-ref span{
  display:block;
  color:#293847;
  font-size:.68rem;
  font-weight:800;
}
.bank-transfer-payment-grid{
  display:grid;
  grid-template-columns:80px minmax(0,1fr);
  align-items:center;
  border-top:1px solid #132230;
  border-bottom:1px solid #132230;
}
.bank-transfer-payment-grid > *{
  min-height:34px;
  border-bottom:1px solid #132230;
}
.bank-transfer-payment-grid > *:nth-last-child(-n+2){
  border-bottom:0;
}
.bank-transfer-payment-grid strong{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  padding:7px 10px;
  text-align:right;
}
.bank-transfer-terms{
  margin:0;
  padding:9px 12px;
  color:#293847;
  font-size:.66rem;
  line-height:1.25;
}
.bank-transfer-barcode-area{
  padding:7mm 20mm 0;
}
.billing-bank-barcode{
  display:block;
  width:105mm;
  max-width:100%;
  height:12mm;
  margin:0 auto;
  fill:#000;
}
@media print{
  .site-header,
  .site-footer,
  .billing-print-toolbar,
  .mobile-dock{display:none!important}
  body{background:#fff!important}
  .billing-print-shell{padding:0}
  .billing-document{border:0;box-shadow:none;border-radius:0;padding:0}
  .billing-bank-transfer{margin-top:18mm}
}
.pill{
  display:inline-flex;
  align-items:center;
  padding:6px 10px;
  border-radius:999px;
  background:#e9f6ef;
  color:#24553b;
  font-size:.78rem;
  font-weight:900;
}
.pill.off{
  background:#f9ece8;
  color:#8c3120;
}

.pagination{
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:12px;
  margin-top:28px;
}
.page-indicator{
  display:inline-flex;
  align-items:center;
  padding:11px 16px;
  border-radius:999px;
  background:#fff;
  border:1px solid var(--line);
  color:var(--muted-strong);
  font-weight:900;
}
#ilmoitukset{scroll-margin-top:110px}

.compact-hero{
  padding-bottom:54px;
}
.compact-hero h1{
  max-width:860px;
}

.site-footer{
  margin-top:56px;
  padding:34px 0 44px;
  background:linear-gradient(180deg,#0a141c,#091018);
  color:#e7f0f7;
  border-top:1px solid rgba(255,255,255,.06);
}
.footer-grid{
  display:grid;
  grid-template-columns:1.35fr 1fr 1fr 1fr;
  gap:22px;
}
.footer-brand p,
.site-footer p{
  margin-top:14px;
  color:#d1dfeb;
}
.site-footer strong{
  color:#fff;
}
.site-footer a{
  display:inline-flex;
  margin-top:12px;
  color:#dff5ff;
  font-weight:800;
}
.site-footer .brand-copy strong{color:#fff}
.site-footer .brand-copy em{color:#9db4c7}
.site-footer .brand{
  max-width:min(420px,100%);
}
.site-footer .brand-word-primary,
.site-footer .brand-word-secondary{
  color:#f6fbff;
}
.site-footer .brand-word-tld{
  color:#8bd2ff;
}
.latest-added-section{
  padding-top:18px;
}
.market-wall-section{
  padding-top:18px;
  overflow-x:clip;
}
.market-wall-section-top{
  padding-top:14px;
}
.latest-added-grid{
  align-items:stretch;
}
.market-wall-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:18px;
  min-width:0;
}
.market-wall-toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  min-width:0;
}
.market-wall-tabs{
  display:grid;
  gap:16px;
  min-width:0;
  position:relative;
}
.market-wall-tablist{
  display:flex;
  flex:1 1 auto;
  flex-wrap:nowrap;
  gap:10px;
  min-width:0;
  max-width:100%;
  overflow-x:auto;
  overflow-y:hidden;
  padding-bottom:4px;
  scrollbar-width:thin;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior-x:contain;
}
.market-wall-tab{
  display:inline-flex;
  flex:0 0 auto;
  align-items:center;
  justify-content:center;
  min-height:46px;
  padding:0 16px;
  border-radius:999px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.86);
  color:var(--ink);
  font-weight:800;
  box-shadow:var(--shadow-sm);
  gap:8px;
  white-space:nowrap;
}
.market-wall-tab.is-active{
  border-color:transparent;
  background:linear-gradient(135deg,var(--accent),#ffbf58);
  color:#071019;
}
.market-wall-tab-count{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:24px;
  height:24px;
  padding:0 7px;
  border-radius:999px;
  background:rgba(12,35,50,.1);
  color:inherit;
  font-size:.74rem;
  font-weight:900;
}
.market-wall-tab.is-active .market-wall-tab-count{
  background:rgba(7,16,25,.14);
}
.market-wall-tab-link{
  text-decoration:none;
}
.market-wall-filter-fab{
  position:absolute;
  top:6px;
  right:0;
  z-index:4;
  width:46px;
  height:46px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.24);
  background:rgba(9,19,27,.28);
  color:#f8fbff;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  box-shadow:0 12px 24px rgba(8,18,28,.18);
}
.market-wall-filter-fab svg{
  width:18px;
  height:18px;
}
.market-wall-filter-overlay{
  position:fixed;
  inset:0;
  z-index:30;
  background:rgba(5,12,18,.34);
  display:grid;
  place-items:end center;
  padding:24px 16px;
}
.market-wall-filter-overlay[hidden]{
  display:none !important;
}
.market-wall-filter-sheet{
  width:min(420px,100%);
  border-radius:22px;
  background:rgba(248,251,255,.96);
  border:1px solid rgba(12,35,50,.1);
  box-shadow:0 28px 54px rgba(8,18,28,.24);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  overflow:hidden;
}
.market-wall-filter-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:16px 18px 10px;
}
.market-wall-filter-head strong{
  font-size:1rem;
}
.market-wall-filter-close{
  width:36px;
  height:36px;
  border-radius:999px;
  border:1px solid var(--line);
  background:#fff;
  color:var(--ink);
  font-size:1.4rem;
  line-height:1;
}
.market-wall-filter-options{
  display:grid;
  gap:8px;
  padding:0 16px 16px;
}
.market-wall-filter-option{
  display:flex;
  align-items:center;
  justify-content:space-between;
  min-height:46px;
  padding:0 14px;
  border-radius:16px;
  border:1px solid var(--line);
  background:#fff;
  color:var(--ink);
  font-weight:700;
}
.market-wall-filter-option.is-active{
  border-color:transparent;
  background:linear-gradient(135deg,var(--accent),#ffbf58);
  color:#071019;
}
.market-wall-panel{
  display:block;
}
.market-wall-panel[hidden]{
  display:none !important;
}
.market-wall-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  justify-content:center;
  margin-top:18px;
}
.market-wall-card{
  position:relative;
  border-radius:26px;
  overflow:hidden;
  background:linear-gradient(180deg,#ffffff 0%,#f6f8fb 100%);
  border:1px solid rgba(10,28,43,.08);
  box-shadow:0 16px 34px rgba(8,18,28,.08);
  min-width:0;
  isolation:isolate;
}
.market-wall-card::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:4;
  border-radius:inherit;
  border:2px solid rgba(255,190,90,0);
  pointer-events:none;
}
.market-wall-card.is-interest-pulse::before{
  animation:marketInterestPulse 1.18s ease-in-out 1;
}
.market-wall-card.is-interest-pulse{
  box-shadow:0 18px 40px rgba(255,138,29,.18),0 16px 34px rgba(8,18,28,.08);
}
.market-wall-media{
  position:relative;
  display:block;
  aspect-ratio:1.22;
  overflow:hidden;
  background:#dbe5ec;
}
.market-wall-media::after{
  content:"";
  position:absolute;
  inset:auto 0 0 0;
  height:55%;
  background:linear-gradient(180deg,rgba(5,12,18,0) 0%,rgba(5,12,18,.82) 100%);
  pointer-events:none;
}
.market-wall-media .listing-image{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .28s ease;
}
.market-wall-card:hover .market-wall-media .listing-image{
  transform:scale(1.03);
}
.market-wall-price{
  position:absolute;
  left:14px;
  bottom:16px;
  z-index:2;
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:0 14px;
  border-radius:999px;
  background:rgba(7,16,25,.84);
  color:#fff;
  font-weight:900;
  box-shadow:0 12px 24px rgba(0,0,0,.24);
}
.market-wall-all{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:0 16px;
  border-radius:999px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.88);
  color:var(--ink);
  font-weight:800;
  box-shadow:var(--shadow-sm);
  white-space:nowrap;
}
.market-wall-chip{
  position:absolute;
  z-index:2;
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:0 12px;
  border-radius:999px;
  background:rgba(255,255,255,.94);
  color:#0c2332;
  font-size:.84rem;
  font-weight:800;
  box-shadow:0 10px 20px rgba(0,0,0,.12);
}
.market-wall-chip-year{
  top:14px;
  right:14px;
}
.market-wall-chip-metric{
  right:14px;
  bottom:16px;
  max-width:70%;
}
.market-wall-card .listing-status-chip{
  top:14px;
  left:14px;
}
.market-wall-body{
  display:grid;
  gap:8px;
  padding:16px 16px 18px;
  min-width:0;
}
.market-wall-meta{
  color:var(--muted-strong);
  font-size:.9rem;
  font-weight:700;
}
.market-wall-body h3{
  margin:0;
  font-size:1.02rem;
  line-height:1.25;
  min-width:0;
}
.market-wall-body h3 a{
  color:var(--ink);
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.market-wall-nudge{
  position:absolute;
  inset:0;
  z-index:5;
  display:grid;
  align-content:end;
  gap:10px;
  padding:14px;
  background:linear-gradient(180deg,rgba(7,16,25,0) 0%,rgba(7,16,25,.18) 28%,rgba(7,16,25,.92) 100%);
  color:#fff;
  opacity:0;
  pointer-events:none;
  transform:translateY(8px);
  transition:opacity .22s ease,transform .22s ease;
}
.market-wall-card.is-interest-detail .market-wall-nudge{
  opacity:1;
  transform:none;
  pointer-events:auto;
}
.market-wall-nudge-scroll{
  display:grid;
  gap:4px;
  max-height:76px;
  overflow:hidden;
}
.market-wall-card.is-interest-detail .market-wall-nudge-scroll{
  animation:marketNudgeText 5.2s linear .8s 1;
}
.market-wall-nudge-scroll strong{
  font-size:.98rem;
  line-height:1.2;
}
.market-wall-nudge-scroll span{
  color:#e8f2f9;
  font-size:.82rem;
  font-weight:700;
  line-height:1.35;
}
.market-wall-contact-badge{
  justify-self:start;
  display:inline-flex;
  align-items:center;
  min-height:32px;
  padding:0 12px;
  border-radius:999px;
  background:linear-gradient(135deg,var(--accent),#ffbf58);
  color:#071019;
  font-weight:900;
  box-shadow:0 12px 24px rgba(255,138,29,.26);
  opacity:0;
}
.market-wall-card.is-interest-detail .market-wall-contact-badge{
  animation:marketContactBadge 1.9s ease 5.2s 2;
}
.market-wall-nudge-actions{
  display:flex;
  gap:8px;
  opacity:0;
  transform:translateY(4px);
  transition:opacity .18s ease,transform .18s ease;
}
.market-wall-card.is-interest-detail:hover .market-wall-nudge-actions,
.market-wall-card.is-interest-detail:focus-within .market-wall-nudge-actions{
  opacity:1;
  transform:none;
}
.market-wall-nudge-actions a,
.market-wall-nudge-actions button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:36px;
  padding:0 13px;
  border:1px solid rgba(255,255,255,.22);
  border-radius:999px;
  background:rgba(255,255,255,.12);
  color:#fff;
  font-weight:900;
  cursor:pointer;
}
.market-wall-nudge-actions a{
  background:#fff;
  color:#071019;
}
.market-wall-nudge-actions button:hover,
.market-wall-nudge-actions a:hover{
  filter:brightness(1.06);
}
@keyframes marketInterestPulse{
  0%{border-color:rgba(255,190,90,0);box-shadow:none;}
  28%{border-color:rgba(255,190,90,.94);box-shadow:0 0 0 5px rgba(255,190,90,.15);}
  58%{border-color:rgba(223,91,69,.76);box-shadow:0 0 0 8px rgba(223,91,69,.1);}
  100%{border-color:rgba(255,190,90,0);box-shadow:none;}
}
@keyframes marketNudgeText{
  0%,24%{transform:translateY(0);}
  72%,100%{transform:translateY(-18px);}
}
@keyframes marketContactBadge{
  0%,100%{opacity:0;transform:scale(.96);}
  18%,78%{opacity:1;transform:scale(1);}
}
@media (prefers-reduced-motion: reduce){
  .nav-toggle::after,
  .print-builder-floating-bar.is-dirty .actions .btn[type="submit"],
  .market-wall-card.is-interest-pulse::before,
  .market-wall-card.is-interest-detail .market-wall-nudge-scroll,
  .market-wall-card.is-interest-detail .market-wall-contact-badge{
    animation:none!important;
  }
}
.parts-entry-section{
  padding-top:18px;
}
.parts-entry-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.parts-entry-card .category-count{
  background:rgba(22,213,207,.1);
  color:#245a78;
}
.parts-entry-card > span{
  color:var(--muted-strong);
}
.parts-signal-links{
  margin-top:18px;
}
.parts-signal-links .category-tag{
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  min-width:160px;
  color:#244d66;
}
.parts-signal-links .category-tag strong{
  color:#123249;
  font-size:.84rem;
}
.parts-brand-pills{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:18px;
  position:relative;
  z-index:1;
}
.parts-brand-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:0 14px;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.14);
  color:#eef6fd;
  font-weight:800;
  font-size:.92rem;
}
.parts-brand-pill:hover,
.parts-brand-pill:focus-visible{
  border-color:rgba(255,255,255,.28);
  background:rgba(255,255,255,.12);
}
.parts-brand-pill.active{
  background:linear-gradient(135deg,var(--accent-2),var(--accent));
  border-color:transparent;
  color:#07131c;
}
.mobile-dock{
  display:none;
}

details > summary{
  cursor:pointer;
  color:var(--muted-strong);
  font-weight:800;
}
details[open] > summary{margin-bottom:8px}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{
    animation:none !important;
    transition:none !important;
  }
  [data-reveal]{
    opacity:1;
    transform:none;
  }
}

@media (max-width:1100px){
  .hero-grid,
  .hero-lower,
  .detail-grid,
  .seller-cta,
  .account-grid,
  .admin-layout{
    grid-template-columns:1fr;
  }
  .detail-hero{
    grid-template-columns:1fr;
  }
  .category-grid,
  .listing-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .parts-entry-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .contact-admin-grid{
    grid-template-columns:1fr;
  }
  .document-check-grid,
  .purchase-service-type-grid,
  .purchase-service-detail-grid{
    grid-template-columns:1fr;
  }
  .mini-kpi-grid,
  .buyer-compose-layout{
    grid-template-columns:1fr;
  }
  .inventory-quality-grid{
    grid-template-columns:1fr;
  }
  .inventory-bookkeeping-grid{
    grid-template-columns:1fr;
  }
  .inventory-bookkeeping-list{
    position:static;
  }
  .inventory-bookkeeping-list .message-stack{
    max-height:42vh;
  }
  .inventory-bookkeeping-form-card{
    order:1;
  }
  .inventory-bookkeeping-list{
    order:2;
  }
  .inventory-bookkeeping-picker-grid{
    grid-template-columns:1fr;
  }
  .inventory-bookkeeping-picker-actions{
    justify-content:flex-start;
  }
  .inventory-print-head,
  .inventory-print-toolbar{
    display:grid;
  }
  .sync-mode-grid{
    grid-template-columns:1fr;
  }
  .sync-modal-card{
    margin-top:4vh;
  }
  .pricing-grid,
  .compact-pricing{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .results-toolbar{
    grid-template-columns:1fr 1fr;
  }
  .seller-profile-hero{
    grid-template-columns:1fr;
  }
  .seller-results::before{
    height:250px;
  }
  .toolbar-actions{
    grid-column:1/-1;
    justify-content:flex-start;
  }
  .inline-action-form{
    width:100%;
  }
}

@media (max-width:780px){
  body{
    padding-bottom:88px;
  }
  .inquiry-intent-fields,
  .inquiry-need-grid,
  .quick-contact-grid{
    grid-template-columns:1fr;
  }
  .print-workflow-rail{
    grid-template-columns:1fr;
  }
  .mobile-dock{
    position:fixed;
    inset:auto 0 0 0;
    z-index:60;
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:0;
    padding:8px 10px calc(8px + env(safe-area-inset-bottom));
    background:rgba(7,16,25,.96);
    border-top:1px solid rgba(255,255,255,.08);
    box-shadow:0 -18px 34px rgba(0,0,0,.22);
    backdrop-filter:blur(14px);
  }
  .mobile-dock-item{
    display:grid;
    justify-items:center;
    gap:5px;
    padding:6px 4px;
    color:#d4e3ef;
    text-align:center;
  }
  .mobile-dock-item.active{
    color:#fff;
  }
  .mobile-dock-icon{
    position:relative;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:40px;
    height:40px;
    border-radius:14px;
    background:rgba(255,255,255,.05);
  }
  .mobile-dock-item.active .mobile-dock-icon{
    background:linear-gradient(135deg,var(--accent),#ffbf58);
    color:#071019;
    box-shadow:0 10px 20px rgba(255,138,29,.22);
  }
  .mobile-dock-icon svg{
    width:22px;
    height:22px;
  }
  .mobile-dock-icon small{
    position:absolute;
    top:-4px;
    right:-4px;
    min-width:18px;
    height:18px;
    padding:0 4px;
    border-radius:999px;
    background:#16d5cf;
    color:#071019;
    font-size:.68rem;
    font-weight:900;
    line-height:18px;
    box-shadow:0 6px 14px rgba(22,213,207,.26);
  }
  .mobile-dock-label{
    font-size:.68rem;
    font-weight:800;
    line-height:1.15;
    max-width:100%;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .parts-entry-grid{
    grid-template-columns:1fr;
  }
}

@media print{
  .site-header,
  .site-footer,
  .mobile-dock,
  .no-print{
    display:none !important;
  }
  body.inventory-print-page{
    background:#fff;
    color:#000;
  }
  body.inventory-print-page::before{
    display:none !important;
  }
  .inventory-print-shell{
    padding:0;
  }
  .inventory-print-card,
  .inventory-print-card .admin-card{
    box-shadow:none !important;
    border-color:#d0d7de !important;
    background:#fff !important;
  }
  .inventory-print-card{
    padding:0;
    border:0 !important;
  }
  .inventory-print-line{
    padding:4px 0;
  }
  .inventory-print-line-main strong{
    font-size:10pt;
  }
  .inventory-print-line-title,
  .inventory-print-line-meta,
  .inventory-print-line-submeta,
  .inventory-print-summary,
  .inventory-print-head .sub{
    font-size:8.5pt;
    line-height:1.2;
  }
  .inventory-print-group{
    gap:4px;
  }
  .inventory-print-group-head{
    padding-top:6px;
    margin-top:2px;
  }
}

@media (max-width:1320px){
  .header-inner{
    gap:16px;
  }
  .brand{
    max-width:min(320px,34vw);
  }
  .brand-copy em{
    display:none;
  }
  .main-nav{
    gap:4px;
  }
  .main-nav a{
    padding:10px 12px;
    font-size:.88rem;
  }
}

@media (max-width:1120px){
  .main-nav{
    display:none;
    position:absolute;
    left:auto;
    right:0;
    top:78px;
    width:min(380px,calc(100vw - 24px));
    flex-direction:column;
    align-items:stretch;
    padding:10px;
    border-radius:22px;
    background:rgba(10,20,30,.98);
    border:1px solid rgba(255,255,255,.08);
    box-shadow:var(--shadow-lg);
  }
  .main-nav.open{display:flex}
  .nav-toggle{display:inline-flex}
  .help-switcher{
    width:100%;
  }
  .help-switcher summary{
    width:100%;
  }
  .help-switcher-menu{
    position:static;
    margin-top:8px;
    width:100%;
    max-height:min(48vh,360px);
  }
  .lang-switcher{
    width:100%;
  }
  .lang-switcher summary{
    width:100%;
  }
  .lang-switcher-menu{
    position:static;
    margin-top:8px;
    width:100%;
    max-height:min(46vh,320px);
  }
}

@media (max-width:860px){
  .section-head{align-items:flex-start;flex-direction:column}
  .active-filter-bar{
    flex-direction:column;
    align-items:stretch;
  }
  .active-filter-label{
    padding-top:0;
  }
  .messages-layout{
    grid-template-columns:1fr;
  }
  .messages-sidebar{
    position:static;
  }
  .stat-strip,
  .kv,
  .spec-grid,
  .form-grid,
  .route-grid,
  .category-grid,
  .listing-grid,
  .pricing-grid,
  .compact-pricing,
  .footer-grid{
    grid-template-columns:1fr;
  }
  .results-toolbar{
    grid-template-columns:1fr;
  }
  .data-table-stack{
    min-width:0;
    border-collapse:separate;
  }
  .data-table-stack thead{
    display:none;
  }
  .data-table-stack,
  .data-table-stack tbody,
  .data-table-stack tr,
  .data-table-stack td{
    display:block;
    width:100%;
  }
  .data-table-stack tr{
    padding:14px 16px;
    border-bottom:1px solid var(--line);
    background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,250,251,.95));
  }
  .data-table-stack tr:last-child{
    border-bottom:0;
  }
  .data-table-stack td{
    padding:8px 0;
    border-bottom:0;
  }
  .data-table-stack td::before{
    content:attr(data-label);
    display:block;
    margin-bottom:4px;
    color:var(--muted-strong);
    font-size:.76rem;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.08em;
  }
  .data-table-stack td.actions::before{
    margin-bottom:10px;
  }
  .seller-results{
    padding-top:22px;
  }
  .seller-results::before{
    height:286px;
  }
  .seller-results .section-head{
    margin-bottom:22px;
  }
  .hero-search-grid{
    grid-template-columns:1fr;
  }
  .detail-quick-actions{
    display:block;
    padding:20px;
    border-radius:24px;
    background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,250,251,.95));
    border:1px solid var(--line);
    box-shadow:var(--shadow-sm);
  }
  .field-span-2{grid-column:auto}
  .thumbs{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
  .listing-grid.list-view .listing-card{
    grid-template-columns:1fr;
  }
  .listing-grid.list-view .listing-media{
    min-height:220px;
  }
  .listing-grid.list-view .spec-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .owner-quick-edit-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .card-actions{
    width:100%;
    justify-content:stretch;
  }
  .card-actions .btn,
  .card-actions form{
    width:100%;
  }
  .card-actions form .btn{
    width:100%;
  }
}

@media (max-width:640px){
  body{
    background:linear-gradient(180deg,var(--surface) 0 1240px,var(--bg) 1240px 100%);
  }
  .market-wall-section-top{
    padding-top:8px;
  }
  .market-wall-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
  }
  .market-wall-toolbar{
    flex-direction:column;
    align-items:stretch;
    gap:10px;
    padding-right:58px;
  }
  .market-wall-tablist{
    gap:8px;
    overflow-x:auto;
    overflow-y:hidden;
    flex-wrap:nowrap;
    padding-bottom:4px;
    scrollbar-width:thin;
    -webkit-overflow-scrolling:touch;
  }
  .market-wall-tab{
    min-height:42px;
    padding:0 14px;
    white-space:nowrap;
    flex:0 0 auto;
  }
  .market-wall-actions{
    margin-top:14px;
    justify-content:flex-start;
  }
  .market-wall-filter-fab{
    top:2px;
    width:42px;
    height:42px;
  }
  .market-wall-filter-overlay{
    padding:18px 12px calc(88px + env(safe-area-inset-bottom));
  }
  .market-wall-card{
    border-radius:22px;
  }
  .market-wall-price{
    left:12px;
    bottom:12px;
    min-height:34px;
    padding:0 12px;
    font-size:.92rem;
  }
  .market-wall-chip{
    min-height:30px;
    padding:0 10px;
    font-size:.78rem;
  }
  .market-wall-chip-year{
    top:12px;
    right:12px;
  }
  .market-wall-chip-metric{
    right:12px;
    bottom:12px;
    max-width:62%;
  }
  .market-wall-body{
    padding:14px 14px 16px;
    gap:6px;
  }
  .market-wall-meta{
    font-size:.82rem;
  }
  .market-wall-body h3{
    font-size:.95rem;
  }
  .detail-page{
    padding-top:18px;
  }
  .detail-shell{
    gap:18px;
  }
  .detail-hero{
    gap:18px;
    padding:20px;
    border-radius:28px;
  }
  .detail-hero h1{
    margin-top:10px;
    font-size:clamp(2rem,8vw,3rem);
    line-height:1.06;
  }
  .detail-subtitle{
    font-size:1rem;
  }
  .detail-hero .listing-meta{
    gap:8px;
  }
  .detail-breadcrumb-trail{
    width:100%;
    justify-content:flex-start;
    align-items:flex-start;
    flex-wrap:wrap;
    border-radius:20px;
    padding:10px 12px;
  }
  .detail-breadcrumb-trail span[aria-hidden="true"]{
    opacity:.7;
  }
  .detail-location-pill{
    min-height:40px;
    padding:0 12px;
  }
  .detail-tags{
    gap:8px;
  }
  .detail-hero .detail-tag{
    font-size:.82rem;
    padding:8px 11px;
  }
  .detail-price-box{
    gap:8px;
    padding:16px;
    border-radius:22px;
  }
  .hero-price{
    font-size:1.8rem;
  }
  .detail-price-share{
    margin-top:2px;
  }
  .share-icon-strip.is-detail{
    gap:8px;
  }
  .share-icon-strip.is-detail .share-icon-button{
    width:40px;
    height:40px;
  }
  .detail-quick-actions{
    padding:16px;
    border-radius:22px;
  }
  .detail-quick-actions-head{
    gap:8px;
  }
  .detail-quick-actions-grid{
    grid-template-columns:1fr 1fr;
    gap:8px;
    margin-top:14px;
  }
  .detail-quick-button{
    min-height:46px;
    padding:0 12px;
    border-radius:16px;
    font-size:.92rem;
  }
  .header-inner{
    min-height:74px;
  }
  .brand{
    max-width:min(270px,68vw);
  }
  .brand-cluster{
    max-width:min(320px,76vw);
    flex:1;
  }
  .brand-mark{
    width:48px;
    height:48px;
    border-radius:16px;
  }
  .brand-copy strong{
    font-size:1.1rem;
  }
  .brand-copy em{display:none}
  .install-prompt{
    grid-template-columns:1fr;
    align-items:stretch;
    padding:16px;
    border-radius:22px;
  }
  .install-prompt-actions{
    justify-content:stretch;
  }
  .install-prompt-actions .btn{
    width:100%;
    min-width:0;
  }
  .hero{
    padding-top:32px;
  }
  .hero h1{
    font-size:clamp(2.5rem,11vw,4rem);
  }
  .seller-results::before{
    height:320px;
  }
  .btn,
  .toolbar-actions .btn,
  .actions .btn{
    width:100%;
  }
  .hero-actions .btn{
    width:auto;
  }
  .help-switcher summary{
    width:42px;
    height:42px;
  }
  .brand-cluster .help-switcher{
    width:auto;
  }
  .owner-quick-edit-grid,
  .inline-assign-form{
    grid-template-columns:1fr;
  }
  .message-thread-head{
    flex-direction:column;
  }
  .detail-side-actions{
    flex-direction:column;
  }
  .detail-side-actions .btn,
  .detail-side-actions form,
  .seller-contact-actions .btn{
    width:100%;
  }
  .seller-contact-mini{
    flex-direction:column;
  }
  .seller-contact-mini-actions{
    justify-content:flex-start;
    width:100%;
  }
  .listing-assist{
    right:14px;
    bottom:96px;
  }
  .sync-modal-card{
    width:min(100vw - 18px,760px);
    padding:18px;
  }
  .sync-modal-head,
  .sync-progress-meta{
    align-items:flex-start;
    flex-direction:column;
  }
  .data-table-stack tr{
    padding:14px;
  }
  .listing-media{
    height:220px;
  }
  .gallery-main{
    height:290px;
  }
  .thumbs{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .gallery-lightbox-nav{
    width:42px;
    height:42px;
  }
  .gallery-lightbox-close{
    width:42px;
    height:42px;
  }
}

.quote-terms-editor{
  border:1px solid var(--line);
  border-radius:18px;
  padding:16px;
  background:#f8fbfd;
}

.quote-terms-editor h2{
  margin:0 0 6px;
}

.quote-term-list{
  display:grid;
  gap:10px;
  margin-top:14px;
}

.quote-term-list p{
  margin:0;
  padding:10px 12px;
  border:1px solid var(--line);
  border-radius:14px;
  background:#fff;
}

.quote-term-list strong,
.quote-term-list span{
  display:block;
}

.quote-term-list strong{
  color:var(--muted);
  font-size:.82rem;
  margin-bottom:4px;
}

.quote-lifecycle-card{
  border-color:#b8d8c8;
  background:#f5fbf7;
}

.listing-trust-panel{
  grid-column:1/-1;
}

.listing-trust-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin-bottom:16px;
}

.listing-trust-head h2{
  margin:0 0 6px;
}

.listing-trust-score{
  min-width:132px;
  padding:14px 16px;
  border:1px solid var(--line);
  border-radius:18px;
  text-align:center;
  background:#f8fbfd;
}

.listing-trust-score strong{
  display:block;
  color:var(--ink);
  font-size:1.65rem;
  line-height:1;
}

.listing-trust-score span{
  display:block;
  margin-top:6px;
  color:var(--muted);
  font-size:.82rem;
  font-weight:800;
}

.listing-collapsible-panel{
  padding:16px 18px;
}

.listing-collapsible-summary{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding-right:34px;
  list-style:none;
  cursor:pointer;
}

.listing-collapsible-summary::-webkit-details-marker{
  display:none;
}

.listing-collapsible-summary::after{
  content:"";
  position:absolute;
  right:4px;
  top:50%;
  width:10px;
  height:10px;
  border-right:2px solid var(--muted-strong);
  border-bottom:2px solid var(--muted-strong);
  transform:translateY(-65%) rotate(45deg);
  transition:transform .18s ease;
}

.listing-collapsible-panel[open] > .listing-collapsible-summary::after{
  transform:translateY(-35%) rotate(225deg);
}

.listing-collapsible-copy{
  display:grid;
  gap:4px;
  min-width:0;
}

.listing-collapsible-title{
  color:var(--ink);
  font-size:1.05rem;
  font-weight:900;
  line-height:1.2;
}

.listing-collapsible-summary .sub,
.listing-collapsible-summary .section-kicker{
  margin:0;
}

.listing-collapsible-summary .listing-trust-score{
  min-width:102px;
  padding:9px 12px;
  border-radius:14px;
}

.listing-collapsible-summary .listing-trust-score strong{
  font-size:1.24rem;
}

.listing-collapsible-summary .listing-trust-score span{
  font-size:.72rem;
}

.listing-collapsible-body{
  margin-top:14px;
}

.listing-trust-score.trust-high,
.trust-score-badge.trust-high{
  border-color:#a8d7bd;
  background:#f2fbf6;
  color:#1f6a47;
}

.listing-trust-score.trust-medium,
.trust-score-badge.trust-medium{
  border-color:#d9c47d;
  background:#fff8df;
  color:#735b10;
}

.listing-trust-score.trust-low,
.trust-score-badge.trust-low{
  border-color:#e6b5aa;
  background:#fff3f0;
  color:#913d2f;
}

.listing-trust-score.opportunity-hot,
.opportunity-badge.opportunity-hot{
  border-color:#f0a66f;
  background:#fff3e8;
  color:#8a3d06;
}

.listing-trust-score.opportunity-warm,
.opportunity-badge.opportunity-warm{
  border-color:#d9c47d;
  background:#fff8df;
  color:#735b10;
}

.listing-trust-score.opportunity-watch,
.opportunity-badge.opportunity-watch{
  border-color:#93c8d4;
  background:#edf8fb;
  color:#175b68;
}

.listing-trust-score.opportunity-quiet,
.opportunity-badge.opportunity-quiet{
  border-color:var(--line);
  background:#f8fbfd;
  color:var(--muted);
}

.listing-trust-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}

.listing-trust-item{
  min-height:92px;
  padding:12px 14px;
  border:1px solid var(--line);
  border-radius:16px;
  background:#fff;
}

.listing-trust-item strong,
.listing-trust-item span,
.listing-trust-item small{
  display:block;
}

.listing-trust-item strong{
  color:var(--ink);
}

.listing-trust-item span{
  margin-top:4px;
  font-size:.78rem;
  font-weight:900;
  text-transform:uppercase;
}

.listing-trust-item small{
  margin-top:6px;
  color:var(--muted);
  line-height:1.35;
}

.listing-trust-item.is-ok{
  border-color:#b7dac6;
}

.listing-trust-item.is-ok span{
  color:#1f6a47;
}

.listing-trust-item.is-partial{
  border-color:#d9c47d;
}

.listing-trust-item.is-partial span{
  color:#735b10;
}

.listing-trust-item.is-missing{
  border-color:#e6b5aa;
}

.listing-trust-item.is-missing span{
  color:#913d2f;
}

.listing-trust-note{
  margin:14px 0 0;
}

.listing-readiness-actions{
  margin-top:14px;
}

.trust-score-badge{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 10px;
  border:1px solid var(--line);
  border-radius:999px;
  font-size:.78rem;
  font-weight:900;
  white-space:nowrap;
}

.opportunity-badge{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 10px;
  border:1px solid var(--line);
  border-radius:999px;
  font-size:.78rem;
  font-weight:900;
  white-space:nowrap;
}

.seller-trust-panel{
  margin-top:24px;
}

.seller-trust-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.seller-profile-confidence{
  margin:12px 0 16px;
  padding:12px 14px;
  border:1px solid var(--line);
  border-radius:16px;
  background:#f8fbfd;
}

.seller-profile-confidence strong,
.seller-profile-confidence span{
  display:block;
}

.seller-profile-confidence strong{
  color:var(--ink);
  font-size:.98rem;
}

.seller-profile-confidence span{
  margin-top:4px;
  color:var(--muted);
  font-size:.82rem;
  line-height:1.35;
}

.seller-profile-confidence.trust-high{
  border-color:#a8d7bd;
  background:#f2fbf6;
}

.seller-profile-confidence.trust-medium{
  border-color:#d9c47d;
  background:#fff8df;
}

.seller-profile-confidence.trust-low{
  border-color:#e6b5aa;
  background:#fff3f0;
}

.inventory-opportunity-panel,
.inventory-engagement-panel,
.inventory-buyer-confidence-panel,
.inventory-seller-trust-panel,
.inventory-purchase-readiness-panel,
.inventory-document-panel,
.inventory-availability-panel,
.inventory-demand-panel,
.inventory-quality-panel{
  margin-top:18px;
}

.inventory-purchase-readiness-line,
.inventory-buyer-confidence-line,
.inventory-document-line,
.inventory-availability-line,
.inventory-engagement-line{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px 8px;
  margin-top:6px;
}

.availability-confirm-form input[name="availability_note"]{
  min-width:min(240px, 100%);
}

.inventory-opportunity-line{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px 8px;
  margin-top:6px;
}

.inventory-opportunity-line .opportunity-action{
  color:#8a3d06;
  font-weight:800;
}

.listing-activity-panel{
  grid-column:1/-1;
}

.listing-activity-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}

.listing-activity-grid div{
  min-height:86px;
  padding:12px 14px;
  border:1px solid var(--line);
  border-radius:16px;
  background:#fff;
}

.listing-activity-grid span,
.listing-activity-grid strong{
  display:block;
}

.listing-activity-grid span{
  color:var(--muted);
  font-size:.78rem;
  font-weight:800;
  text-transform:uppercase;
}

.listing-activity-grid strong{
  margin-top:6px;
  color:var(--ink);
  font-size:1.55rem;
  line-height:1;
}

.inventory-trust-summary{
  display:flex;
  flex-wrap:wrap;
  gap:8px 14px;
  align-items:center;
  margin:0 0 14px;
  padding:12px 14px;
  border:1px solid var(--line);
  border-radius:16px;
  background:#f7fafb;
}

.inventory-trust-summary strong{
  color:var(--ink);
}

.inventory-trust-summary span{
  color:var(--muted);
}

.inventory-trust-line{
  display:flex;
  flex-wrap:wrap;
  gap:6px 8px;
  align-items:center;
  margin-top:8px;
}

@media (max-width:720px){
  .listing-trust-head{
    flex-direction:column;
  }

  .listing-trust-score{
    width:100%;
    text-align:left;
  }

  .listing-collapsible-summary{
    align-items:flex-start;
  }

  .listing-collapsible-summary .listing-trust-score{
    width:auto;
    min-width:86px;
    text-align:center;
  }

  .listing-collapsible-title{
    font-size:1rem;
  }

  .listing-trust-grid{
    grid-template-columns:1fr;
  }

  .listing-activity-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
