.market{width:min(100%,1160px);margin:0 auto}.has-app-shell .market.app-main{width:auto;max-width:none;margin:0;padding:calc(var(--topbar-height) + var(--space-8)) clamp(var(--space-4),4vw,64px) calc(96px + env(safe-area-inset-bottom))}.market>*{width:min(100%,1160px);margin-inline:auto}.market-hero,.page-heading{display:flex;align-items:end;justify-content:space-between;gap:var(--space-5);padding:clamp(20px,4vw,38px);border:1px solid var(--color-border);border-radius:var(--radius-xl);background:linear-gradient(125deg,#eef7f1 0%,#fff 72%);box-shadow:var(--shadow-sm)}.market-hero h1,.page-heading h1,.form-heading h1{margin:0;letter-spacing:-.025em}.market-hero p:not(.eyebrow),.page-heading p,.form-heading p{margin:var(--space-2) 0 0;color:var(--color-text-muted)}.eyebrow{margin:0 0 var(--space-1);color:var(--color-primary);font-size:.78rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.market-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--space-2)}.market-filters{display:grid;grid-template-columns:minmax(220px,1.6fr) minmax(160px,.8fr) minmax(160px,.8fr) auto auto;align-items:center;gap:var(--space-3);margin-top:var(--space-6);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-sm)}.check-filter{display:inline-flex;min-height:44px;align-items:center;gap:var(--space-2);white-space:nowrap;color:var(--color-text);font-weight:700}.check-filter input{width:18px;height:18px;accent-color:var(--color-primary)}.page-message{min-height:1.5em;margin-block:var(--space-4);color:var(--color-danger);font-weight:650}.listing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-5)}.listing-card{display:flex;min-width:0;flex-direction:column;overflow:hidden;color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-sm);text-decoration:none;transition:transform .16s ease,box-shadow .16s ease}.listing-card:hover{color:var(--color-text);box-shadow:var(--shadow-md);transform:translateY(-2px)}.listing-card:focus-visible{outline-offset:4px}.listing-card img,.main-image{display:block;width:100%;aspect-ratio:4/3;height:auto;background:linear-gradient(135deg,#dceee3,#f0f6f1);object-fit:cover}.listing-card>div{display:grid;gap:var(--space-2);padding:var(--space-4)}.listing-card h2{display:-webkit-box;margin:0;overflow:hidden;font-family:var(--font-body);font-size:1.06rem;line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:2}.listing-meta{display:flex;flex-wrap:wrap;gap:var(--space-2);color:var(--color-text-muted);font-size:.86rem}.price{margin:0;color:var(--color-primary-hover);font-size:1.12rem;font-weight:850}.status{display:inline-flex;width:fit-content;min-height:28px;align-items:center;padding:4px 9px;border:1px solid #d5dfd7;border-radius:999px;background:var(--color-surface-muted);color:#38574a;font-size:.76rem;font-weight:800}.status[data-status="SOLD"],.status[data-status="EXPIRED"]{border-style:dashed;background:#f6f3ed;color:#675a47}.status[data-status="RESERVED"]{border-color:#d9c695;background:#fff8e7;color:#71551a}.pagination{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-6)}.pagination button{min-width:44px;border:1px solid #b9d3c3;border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-primary);font-weight:800}.pagination button[aria-current="page"]{color:#fff;border-color:var(--color-primary);background:var(--color-primary)}.back-link{display:inline-flex;min-height:44px;align-items:center;margin-bottom:var(--space-5);font-weight:800;text-decoration:none}.detail-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(290px,.8fr);align-items:start;gap:clamp(var(--space-5),5vw,var(--space-10))}.detail-gallery{overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-sm)}.thumbnails{display:flex;gap:var(--space-2);padding:var(--space-3);overflow-x:auto;background:var(--color-surface-muted)}.thumbnails button{width:76px;min-width:76px;height:58px;padding:0;overflow:hidden;border:2px solid transparent;border-radius:var(--radius-sm);background:transparent}.thumbnails button[aria-current="true"]{border-color:var(--color-primary)}.thumbnails img{display:block;width:100%;height:100%;object-fit:cover}.listing-info{display:grid;gap:var(--space-4)}.listing-info h1{margin:0;letter-spacing:-.02em}.listing-description{margin:0;white-space:pre-wrap}.seller{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.seller .avatar{display:grid;width:42px;height:42px;place-items:center;overflow:hidden;border-radius:50%;background:var(--color-primary-soft);color:var(--color-primary-hover);font-weight:850}.seller .avatar img{width:100%;height:100%;object-fit:cover}.seller a{font-weight:850;text-decoration:none}.detail-actions,.mine-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.detail-actions>button,.mine-actions>button{min-height:42px}.form-heading{margin-bottom:var(--space-5)}.market-form{display:grid;max-width:760px;gap:var(--space-5)}.market-form fieldset{display:grid;gap:var(--space-4);margin:0;padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-sm)}.market-form legend{padding-inline:var(--space-2);color:var(--color-text);font-family:var(--font-display);font-size:1.25rem;font-weight:800}.market-form label{display:grid}.market-form .check-filter{display:inline-flex}.form-help{margin:-4px 0 0;color:var(--color-text-muted);font-size:.88rem}.existing-images{display:flex;flex-wrap:wrap;gap:var(--space-2)}.existing-images label{display:inline-flex;min-height:40px;align-items:center;gap:var(--space-2);padding:6px 10px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-muted);font-size:.9rem}.empty-state{grid-column:1/-1}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:1050px){.market-filters{grid-template-columns:minmax(190px,1fr) minmax(150px,.8fr) minmax(150px,.8fr)}.market-filters .check-filter,.market-filters button{justify-self:start}.listing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:900px){.has-app-shell .market.app-main{padding:calc(var(--topbar-height) + var(--space-5)) var(--space-4) calc(92px + env(safe-area-inset-bottom))}.market-hero,.page-heading{align-items:flex-start;flex-direction:column}.market-actions{justify-content:flex-start}.detail-grid{grid-template-columns:1fr}.listing-info{order:2}}@media(max-width:620px){.market-filters{grid-template-columns:1fr;padding:var(--space-3)}.market-filters .check-filter,.market-filters button{width:100%;justify-self:stretch}.market-filters button{justify-content:center}.listing-grid{grid-template-columns:1fr}.market-hero,.page-heading,.form-heading{padding:var(--space-5)}.market-actions,.market-actions>a{width:100%}.market-actions>a{justify-content:center}.listing-card img{aspect-ratio:16/10}.detail-grid{gap:var(--space-5)}.thumbnails button{width:66px;min-width:66px;height:52px}}

/* Marketplace reference layout: a quiet, compact portal view while all existing filters and listing APIs stay intact. */
body.market-reference { --sidebar-width: 252px; overflow-x: hidden; background: #fff; }
body.market-reference .site-sidebar { display: flex; flex-direction: column; padding: 10px 8px 14px; background: #fff; }
body.market-reference .site-brand { min-height: 48px; margin: 0 10px 24px; font-size: 0; }
body.market-reference .site-brand-mark { width: 38px; height: 34px; border-radius: 0; background: transparent; color: #628075; font-size: 1rem; }
body.market-reference .site-brand::after { color: #587268; content: "Schoonoord.info"; font: 700 8px/1.1 var(--font-body); letter-spacing: -.03em; }
body.market-reference .site-nav { gap: 3px; }
body.market-reference .site-nav a { min-height: 40px; gap: 11px; padding: 8px 12px; color: #55766a; font-size: .9rem; font-weight: 600; }
body.market-reference .site-nav a[aria-current="page"], body.market-reference .site-nav a:hover { background: #277353; color: #fff; }
body.market-reference .site-nav-label { margin: 24px 12px 8px; color: #8b9c95; font-size: .64rem; }
body.market-reference .site-sidebar-footer { margin-top: auto; padding: 14px 4px 0; }
body.market-reference .site-sidebar-footer a { font-size: .68rem; }
body.market-reference .site-topbar { min-height: 55px; padding: 7px 16px; background: rgba(255,255,255,.98); }
body.market-reference .site-topbar .search { width: min(322px, 45vw); min-height: 38px; padding-inline: 11px; border-radius: 8px; background: #f7f8f5; }
body.market-reference .site-topbar .search input { min-height: 34px; font-size: .84rem; }
body.market-reference .shell-icon-button { width: 36px; min-width: 36px; min-height: 36px; font-size: .92rem; }
body.market-reference .market.app-main { width: auto !important; margin-left: var(--sidebar-width); padding: 79px 25px 72px; background: #fff; }
body.market-reference .market > * { width: min(100%, 1230px); }
body.market-reference .market-hero { align-items: start; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
body.market-reference .market-hero .eyebrow { display: none; }
body.market-reference .market-hero h1 { font-size: clamp(2rem, 3.25vw, 2.35rem); letter-spacing: -.025em; }
body.market-reference .market-hero p:not(.eyebrow) { margin-top: 4px; color: #66877b; font-size: .95rem; }
body.market-reference .market-actions { align-self: center; }
body.market-reference .market-actions .button { min-height: 36px; padding: 8px 15px; border-radius: 8px; font-size: .78rem; }
body.market-reference .market-actions .button::before { margin-right: 8px; content: "+"; font-size: 1.2rem; font-weight: 400; line-height: 0; }
body.market-reference .market-actions .secondary, body.market-reference .check-filter, body.market-reference .market-filters button { position: absolute; width: 1px; height: 1px; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; }
body.market-reference .market-filters { grid-template-columns: minmax(0, 1fr) 176px 160px; gap: 12px; margin-top: 24px; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
body.market-reference .market-filters input, body.market-reference .market-filters select { min-height: 37px; padding: 7px 12px; border-color: #e1e4de; border-radius: 8px; background: #fff; box-shadow: 0 1px 3px rgba(23,48,37,.08); color: #234338; font-size: .8rem; }
body.market-reference .page-message { min-height: 0; margin: 0; }
body.market-reference .listing-grid { gap: 16px; margin-top: 30px; }
body.market-reference .listing-card { border-radius: 10px; box-shadow: none; }
body.market-reference .listing-card img { aspect-ratio: 1.55 / 1; }
body.market-reference .listing-card > div { gap: 7px; padding: 14px 16px 15px; }
body.market-reference .listing-card h2 { font-size: .95rem; }
body.market-reference .price { font-size: 1rem; }
body.market-reference .listing-meta { font-size: .75rem; }
body.market-reference .empty-state { display: grid; min-height: 300px; place-items: center; align-content: center; gap: 12px; color: #688277; font-size: .95rem; }
body.market-reference .empty-state::before { display: grid; width: 42px; height: 42px; place-items: center; border: 3px solid #cbd5cf; border-radius: 7px; color: #cbd5cf; content: "⌑"; font-size: 2rem; line-height: 1; }
@media(max-width:900px) { body.market-reference .market.app-main { width: 100%; margin-left: 0; padding: 78px 16px 88px; } body.market-reference .market-filters { grid-template-columns: minmax(0,1fr) 156px; } body.market-reference #market-sort { grid-column: 2; } }
@media(max-width:620px) { body.market-reference .market-hero { align-items: flex-start; } body.market-reference .market-actions { align-self: flex-start; margin-top: 14px; } body.market-reference .market-filters { grid-template-columns: 1fr; } body.market-reference #market-sort { grid-column: auto; } body.market-reference .market-filters input, body.market-reference .market-filters select { width: 100%; } body.market-reference .listing-grid { gap: 14px; } }
.market-form,.market-form fieldset{min-width:0}

/* Advertentie plaatsen: een kalme, ruime invoerpagina. */
body.market-reference .marketplace-form-page.market.app-main {
  padding-top: 102px;
}
.marketplace-form-page .back-link {
  min-height: auto;
  margin-bottom: 24px;
  color: #173a2b;
  font-size: .84rem;
  font-weight: 700;
}
.marketplace-form-page .form-heading { margin: 0 0 26px; }
.marketplace-form-page .form-heading h1 { color: #142f24; font-size: clamp(1.9rem,3vw,2.35rem); }
.marketplace-listing-form {
  display: grid;
  width: min(100%, 780px);
  max-width: none;
  gap: 20px;
}
.marketplace-listing-form .market-field { display: grid; gap: 8px; color: #102d21; font-size: .88rem; font-weight: 750; }
.marketplace-listing-form input:not([type="checkbox"]),.marketplace-listing-form textarea,.marketplace-listing-form select {
  width: 100%;
  min-height: 40px;
  padding: 9px 12px;
  border: 1px solid #e0e1dc;
  border-radius: 9px;
  outline: none;
  background: #fff;
  box-shadow: 0 1px 3px rgba(23,48,37,.05);
  color: #1e4031;
  font: 400 .9rem "DM Sans",Arial,sans-serif;
}
.marketplace-listing-form textarea { min-height: 100px; resize: vertical; }
.marketplace-listing-form .market-dimensions { display:grid; gap:8px; margin:0; padding:14px; border:1px solid #e0e6e1; border-radius:10px; }
.marketplace-listing-form .market-dimensions[hidden] { display:none; }
.marketplace-listing-form .market-dimensions legend { padding:0 4px; color:#18392a; font-size:.88rem; font-weight:750; }
.market-dimensions>div { display:grid; grid-template-columns:1fr 14px 1fr 14px 1fr; align-items:end; gap:7px; }
.market-dimensions label { display:grid; gap:6px; color:#405d50; font-size:.76rem; font-weight:700; }
.market-dimensions>div>span { padding-bottom:11px; color:#789084; text-align:center; }
.market-dimensions p { margin:0; color:#71867c; font-size:.72rem; }
.market-min-bid { width:min(100%,360px); }
.marketplace-listing-form input:focus,.marketplace-listing-form textarea:focus,.marketplace-listing-form select:focus { border-color: #8ab39f; box-shadow: 0 0 0 3px #eaf4ed; }
.marketplace-listing-form input::placeholder,.marketplace-listing-form textarea::placeholder { color: #7a9085; }
.market-form-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.market-price-row { display: grid; grid-template-columns: max-content minmax(240px,360px); justify-content: start; align-items: start; gap: 28px; }
.market-label { display: inline-flex; align-items: baseline; gap: 3px; }
.market-label b { color: #102d21; font: inherit; }
.market-free-toggle { display: grid; grid-template-rows: auto 40px; align-items: center; gap: 8px; color: #18392a; font-size: .88rem; font-weight: 750; cursor: pointer; }
.market-free-toggle b { font: inherit; }
.market-free-toggle input { position: absolute; opacity: 0; }
.market-free-toggle span { position: relative; width: 36px; height: 20px; align-self: center; border-radius: 999px; background: #e4e5e1; transition: background .16s ease; }
.market-free-toggle span::after { position: absolute; top: 3px; left: 3px; width: 14px; height: 14px; border-radius: 50%; background: #fff; box-shadow: 0 1px 2px rgba(0,0,0,.12); transition: transform .16s ease; content: ""; }
.market-free-toggle input:checked + span { background: #277353; }
.market-free-toggle input:checked + span::after { transform: translateX(16px); }
.market-price-field { min-width: 0; }
.market-photo-section { display: grid; justify-items: start; gap: 8px; }
.market-photo-section h2 { margin: 0; color: #102d21; font: 750 .88rem "DM Sans",Arial,sans-serif; }
.market-file-input { position: absolute; width: 1px; height: 1px; overflow: hidden; opacity: 0; }
.market-photo-upload { display: grid; width: 94px; height: 94px; place-items: center; align-content: center; gap: 4px; border: 2px dashed #e4e0d7; border-radius: 12px; color: #638278; cursor: pointer; }
.market-photo-upload:hover { border-color: #93b6a3; background: #f4faf5; color: #277353; }
.market-photo-upload span { font-size: 1.55rem; line-height: 1; }
.market-photo-upload small { font: 650 .75rem "DM Sans",Arial,sans-serif; }
.market-photo-section .form-help { margin: 0; color: #7d9288; font-size: .72rem; }
.marketplace-listing-form .existing-images { margin-top: 4px; }
.market-image-previews { display: flex; flex-wrap: wrap; gap: 10px; width: 100%; margin-top: 4px; }
.market-image-preview { position: relative; width: 112px; margin: 0; overflow: hidden; border: 1px solid #dce6df; border-radius: 10px; background: #fff; box-shadow: 0 1px 3px rgba(23,48,37,.06); cursor: grab; }
.market-image-preview:active { cursor: grabbing; }
.market-image-preview.is-dragging { opacity: .42; }
.market-image-preview.is-drop-target { outline: 2px solid #6d9f86; outline-offset: 2px; }
.market-image-preview img { display: block; width: 112px; height: 78px; object-fit: cover; }
.market-image-preview > div { display: flex; align-items: center; justify-content: space-between; gap: 4px; padding: 5px 6px; color: #668075; font: 650 .66rem "DM Sans",Arial,sans-serif; }
.market-image-remove { display: grid; width: 19px; height: 19px; place-items: center; padding: 0; border: 0; border-radius: 50%; background: #f6e9e7; color: #a74840; font: 700 1rem/1 Arial,sans-serif; cursor: pointer; }
.market-image-remove:hover { background: #efd6d3; }
.market-saved-section { margin-top:30px; }
.market-saved-section[hidden] { display:none; }
.market-saved-section h2 { margin:0 0 14px; color:#173a2b; font:700 1.12rem "DM Sans",Arial,sans-serif; }
.market-saved-section .listing-grid { margin-top:0; }
.market-detail-meta { display:flex; flex-wrap:wrap; gap:8px; color:#607a6d; font-size:.82rem; }
.market-detail-meta span { display:inline-flex; align-items:center; gap:4px; }
.market-bid-panel { display:grid; gap:10px; padding:16px; border:1px solid #d9e6dc; border-radius:12px; background:#f7fbf8; }
.market-bid-panel h2 { margin:0; color:#173a2b; font:700 1rem "DM Sans",Arial,sans-serif; }
.market-bid-panel p { margin:0; color:#5a7669; font-size:.82rem; }
.market-bid-form { display:flex; gap:8px; }
.market-bid-form input { min-width:0; flex:1; min-height:40px; padding:8px 10px; border:1px solid #c9dbce; border-radius:8px; }
.market-bid-form button,.market-save-button { min-height:40px; padding:8px 12px; border:1px solid #277353; border-radius:8px; background:#277353; color:#fff; font-weight:800; cursor:pointer; }
.market-save-button { background:#fff; color:#277353; }
#listing .detail-actions>button:not(.market-save-button):not(.report-trigger) { width:fit-content; min-height:40px; padding:9px 15px; border:1px solid #19724f; border-radius:8px; background:#19724f; color:#fff; font:800 .8rem "DM Sans",Arial,sans-serif; box-shadow:0 2px 4px rgba(18,91,61,.15); cursor:pointer; } #listing .detail-actions>button:not(.market-save-button):not(.report-trigger):hover { border-color:#126342; background:#126342; }
.market-bid-list { display:grid; gap:6px; margin:0; padding:0; list-style:none; }
.market-bid-list li { display:flex; justify-content:space-between; gap:10px; color:#557267; font-size:.78rem; }
.marketplace-submit { width: 100%; min-height: 44px; border: 0; border-radius: 9px; background: #9bbbaa; color: #fff; font: 800 .88rem "DM Sans",Arial,sans-serif; cursor: pointer; }
.marketplace-submit:hover { background: #277353; }
.marketplace-listing-form:has([name="free"]:checked) .market-price-field { opacity: .48; }
.marketplace-listing-form:has([name="free"]:checked) .market-price-field input { pointer-events: none; }
@media(max-width:620px) {
  body.market-reference .marketplace-form-page.market.app-main { padding-top: 84px; }
  .marketplace-form-page .back-link { margin-bottom: 18px; }
  .marketplace-form-page .form-heading { margin-bottom: 20px; }
  .market-form-columns,.market-price-row { grid-template-columns: 1fr; gap: 16px; }
  .market-dimensions>div { grid-template-columns:1fr; gap:8px; }
  .market-dimensions>div>span { display:none; }
  .market-price-row { align-items: start; }
  .market-photo-upload { width: 88px; height: 88px; }
}

/* Overzicht volgt dezelfde ritmiek als de evenementenkalender. */
body.market-reference .marketplace-page .listing-card .status { display:none; }
body.market-reference .market-actions .button::before { content: none; }
body.market-reference .market-filters {
  grid-template-columns: minmax(0,1fr) 176px auto;
  gap: 12px;
}
body.market-reference .market-filters button {
  position: static;
  width: auto;
  height: auto;
  min-height: 37px;
  margin: 0;
  overflow: visible;
  clip: auto;
  white-space: normal;
  color: #fff;
  border-color: #277353;
  background: #277353;
}
.my-listings-page .listing-card h2 a { color: inherit; text-decoration: none; }
.my-listings-page .listing-card h2 a:hover { color: var(--color-primary); text-decoration: underline; }
.my-listings-page .mine-actions { margin-top: 4px; }
.my-listings-page .mine-actions > button { flex: 1 1 auto; min-height: 44px; padding: 9px 12px; font-size: .82rem; font-style: normal; }
.my-listings-page .mine-actions > .danger-action { border-color: #e8b7b2; background: #fff4f2; color: #b33a2f; }
.my-listings-page .mine-actions > .danger-action:hover { border-color: #d98f87; background: #fde7e4; }
.market-load-more { display: flex; justify-content: center; margin-top: 30px; }
.market-load-more[hidden] { display: none; }
.market-load-more button { min-height: 40px; padding: 8px 18px; border: 1px solid #b9d3c3; border-radius: 8px; background: #fff; color: #277353; font: 800 .8rem "DM Sans",Arial,sans-serif; cursor: pointer; }
.market-load-more button:hover:not(:disabled) { border-color: #277353; background: #edf7ef; }
.market-load-more button:disabled { opacity: .65; cursor: wait; }
@media(max-width:900px) {
  body.market-reference .market-filters { grid-template-columns: minmax(0,1fr) 156px; }
  body.market-reference .market-filters button { grid-column: 2; }
}
@media(max-width:620px) {
  body.market-reference .market-filters { grid-template-columns: 1fr; }
  body.market-reference .market-filters button { width: 100%; grid-column: auto; }
}
