body.market-page{background:var(--bg,#f4f3ef);color:var(--ink,#0f172a)}
body.market-page [hidden]{display:none!important}
.bay-shell{margin:8px 0 28px;min-width:0;max-width:100%}
.bay-shell a,.bay-shell button,.bay-shell input,.bay-shell select,.bay-shell textarea{scroll-margin-top:96px;scroll-margin-bottom:88px}
.market-head{padding:4px 0 0}
.market-head h1{margin:0;font-size:clamp(1.7rem,6vw,2.4rem);letter-spacing:-.03em;color:var(--ink,#0f172a)}
.market-head p{margin:.2rem 0 0;color:var(--muted,#334155);font-size:.95rem;max-width:38rem}
.filters{position:sticky;top:var(--nav-h,64px);z-index:4;background:var(--bg,#f4f3ef);padding:4px 0 6px}
.search-row{display:flex;gap:8px;align-items:end}
.search-label{flex:1 1 auto;min-width:0}
.post-link{flex:0 0 auto;min-height:44px;display:inline-flex;align-items:center}
.filters label,.item-form label,#itemForm label{display:flex;flex-direction:column;gap:4px;font-weight:700;font-size:.85rem;color:var(--ink,#0f172a)}
.filters input,.filters select,#itemForm input,#itemForm textarea,#itemForm select,#offerForm input,#offerForm textarea,#offerForm select,.mail-form input,.mail-form textarea{font-size:16px;padding:8px 10px;min-height:44px;border:1px solid var(--line,#e2e8f0);border-radius:12px;background:var(--paper,#fff);color:var(--ink,#0f172a);width:100%;box-sizing:border-box}
.cat-tabs{display:flex;gap:8px;overflow-x:auto;width:100%;max-width:100%;min-width:0;padding:6px 0 4px;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.cat-tabs::-webkit-scrollbar{display:none}
.cat-tabs button{flex:0 0 auto;min-height:40px;padding:8px 14px;border-radius:999px;border:1px solid var(--line,#e2e8f0);background:var(--paper,#fff);color:var(--ink,#0f172a);font-weight:700;cursor:pointer}
.filter-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.lot-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-width:0}
.lot-card{display:flex;flex-direction:column;min-width:0;background:var(--paper,#fff);color:var(--ink,#0f172a);border:1px solid var(--line,#e2e8f0);border-radius:16px;overflow:hidden;text-decoration:none}
.lot-card.sold{opacity:.72}
.lot-photo,.lot-ph,.skel-photo{width:100%;aspect-ratio:5/4;object-fit:cover;background:var(--chip,#f1f5f9);display:block}
.gallery-slide img,.gallery-slide .lot-ph{width:100%;aspect-ratio:1;object-fit:cover;background:var(--chip,#f1f5f9);display:block}
.lot-ph{display:flex;align-items:center;justify-content:center;color:var(--muted,#334155);font-weight:700;font-size:.85rem}
.lot-body{display:flex;flex-direction:column;gap:3px;padding:8px 10px 10px;min-width:0}
.lot-price{margin:0;font-weight:800;font-size:1.05rem;color:var(--ink,#0f172a)}
.lot-title{margin:0;font-weight:700;font-size:.95rem;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
.lot-place,.lot-time{margin:0;color:var(--muted,#334155);font-size:.8rem;overflow-wrap:anywhere}
.lot-place{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.chips{display:flex;flex-wrap:wrap;gap:4px}
.chip{display:inline-flex;align-items:center;min-height:24px;padding:2px 8px;border-radius:999px;background:var(--chip,#f1f5f9);color:var(--ink,#0f172a);border:1px solid var(--line,#e2e8f0);font-size:.75rem;font-weight:700}
.chip.sold{background:var(--ink,#0f172a);color:var(--paper,#fff);border-color:transparent}
.empty-bay{margin:12px 0 20px;padding:28px 16px;text-align:center;background:var(--paper,#fff);border:1px solid var(--line,#e2e8f0);border-radius:16px;color:var(--ink,#0f172a)}
.empty-bay p{margin:.3rem 0}
#emptyTitle{font-size:1.15rem;font-weight:800}
.skel{border-radius:16px;overflow:hidden;background:var(--paper,#fff);border:1px solid var(--line,#e2e8f0);animation:skel 1.2s ease-in-out infinite}
.skel-line{height:12px;margin:8px 10px;border-radius:6px;background:var(--line,#e2e8f0)}
.skel-line.short{width:55%;margin-bottom:14px}
@keyframes skel{50%{opacity:.55}}
#formView,#detailView{padding:4px 0 20px}
#itemForm h2,#detailView h2{margin:0 0 8px;color:var(--ink,#0f172a)}
.step-label{margin:0 0 10px;font-weight:700;color:var(--muted,#334155)}
.hint,.price-readout{color:var(--muted,#334155);margin:4px 0 8px}
.price-readout{font-weight:800;font-size:1.35rem;color:var(--ink,#0f172a);min-height:1.4em}
.form-actions,.owner-tools,.detail-nav,.gal-nav{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.form-actions .btn,.owner-tools .btn,.detail-nav .btn,.gal-btn,.file-btn{min-height:44px}
.photo-box{border:1px solid var(--line,#e2e8f0);border-radius:16px;margin:8px 0;padding:10px 12px}
.photo-box legend{font-weight:700;padding:0 6px}
.photo-strip{display:flex;gap:8px;overflow-x:auto;padding:8px 0}
.photo-thumb{position:relative;flex:0 0 96px}
.photo-thumb img{width:96px;height:96px;object-fit:cover;border-radius:12px;background:var(--chip,#f1f5f9)}
.photo-thumb button{position:absolute;top:4px;right:4px;min-height:32px;min-width:32px;border-radius:999px}
.photo-preview{max-width:min(240px,100%);height:auto;margin:8px 0;border-radius:12px}
.preview{background:var(--paper,#fff);border:1px solid var(--line,#e2e8f0);border-radius:16px;padding:12px;color:var(--ink,#0f172a)}
.preview .detail-price{margin:.2em 0}
.detail-price{font-weight:800;font-size:clamp(1.6rem,5vw,2.2rem);margin:.15em 0;color:var(--ink,#0f172a)}
.desc{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--paper,#fff);border:1px solid var(--line,#e2e8f0);border-radius:16px;padding:12px;margin:12px 0;color:var(--ink,#0f172a)}
.meta{margin:8px 0 0;display:grid;gap:6px}
.meta div{display:flex;gap:8px;justify-content:space-between;align-items:baseline}
.meta dt{font-weight:700;color:var(--muted,#334155)}
.meta dd{margin:0;text-align:right;overflow-wrap:anywhere}
.gallery{position:relative;overflow:hidden;border-radius:16px;background:var(--chip,#f1f5f9);touch-action:pan-y}
.gallery-track{display:flex;width:100%}
.gallery-track[data-i="1"]{transform:translateX(-100%)}
.gallery-track[data-i="2"]{transform:translateX(-200%)}
.gallery-track[data-i="3"]{transform:translateX(-300%)}
.gallery-slide{flex:0 0 100%;width:100%;min-width:100%}
.gal-btn{position:absolute;top:50%;transform:translateY(-50%);min-width:44px;border-radius:999px;background:var(--paper,#fff);color:var(--ink,#0f172a);border:1px solid var(--line,#e2e8f0)}
.gal-prev{left:8px}
.gal-next{right:8px}
.dots{display:flex;justify-content:center;gap:6px;padding:8px}
.dots button{width:10px;height:10px;min-height:10px;padding:0;border-radius:999px;border:0;background:var(--line,#e2e8f0)}
.dots button[aria-current="true"]{background:var(--ink,#0f172a)}
.qa,.mail{margin-top:14px;background:var(--paper,#fff);border:1px solid var(--line,#e2e8f0);border-radius:16px;padding:12px;color:var(--ink,#0f172a)}
.qa h3,.mail h3{margin:0 0 8px}
.qa-list,.mail-list{display:flex;flex-direction:column;gap:8px}
.qa-card,.mail-card{background:var(--bg,#f4f3ef);border:1px solid var(--line,#e2e8f0);border-radius:12px;padding:8px 10px}
.qa-card header,.mail-card header{display:flex;gap:8px;flex-wrap:wrap;align-items:baseline}
.qa-kind{font-weight:800;font-size:.75rem;background:var(--chip,#f1f5f9);border-radius:999px;padding:2px 8px}
.qa-card p,.mail-card p{margin:.4em 0;white-space:pre-wrap;overflow-wrap:anywhere}
.qa-card time,.mail-card time{margin-left:auto;color:var(--muted,#334155);font-size:.85rem}
.sold-note{background:var(--chip,#f1f5f9);color:var(--ink,#0f172a);border-radius:12px;padding:10px;margin:0 0 8px;font-weight:700}
#offerForm,.mail-form{margin-top:8px}
.sync-banner{background:var(--paper,#fff);color:var(--ink,#0f172a);border:1px solid var(--line,#e2e8f0);border-radius:12px;padding:10px;margin:8px 0}
body.market-page #toast{z-index:95;bottom:calc(var(--task-h,46px) + 10px)}
html[data-theme] body.market-page,
html[data-theme] body.market-page .bay-shell,
html[data-theme] body.market-page .market-head,
html[data-theme] body.market-page .filters{background:var(--bg)!important;color:var(--ink)!important}
html[data-theme] body.market-page main.wrap a.lot-card:not(.btn):not(.choice):not(.brand){
  background:var(--paper)!important;color:var(--ink)!important;border-color:var(--line)!important;text-decoration:none!important
}
html[data-theme] body.market-page main.wrap a.lot-card:not(.btn) .lot-title,
html[data-theme] body.market-page main.wrap a.lot-card:not(.btn) .lot-price{color:var(--ink)!important;text-decoration:none!important}
html[data-theme] body.market-page .market-head p,
html[data-theme] body.market-page .hint,
html[data-theme] body.market-page .lot-place,
html[data-theme] body.market-page .lot-time,
html[data-theme] body.market-page .step-label,
html[data-theme] body.market-page .meta dt{color:var(--muted)!important}
html[data-theme] body.market-page a.lot-card,
html[data-theme] body.market-page .lot-card,
html[data-theme] body.market-page .lot-price,
html[data-theme] body.market-page .lot-title,
html[data-theme] body.market-page .empty-bay,
html[data-theme] body.market-page .preview,
html[data-theme] body.market-page .desc,
html[data-theme] body.market-page .qa,
html[data-theme] body.market-page .mail,
html[data-theme] body.market-page .detail-price,
html[data-theme] body.market-page .price-readout{background:var(--paper)!important;color:var(--ink)!important;border-color:var(--line)!important}
html[data-theme] body.market-page .qa-card,
html[data-theme] body.market-page .mail-card,
html[data-theme] body.market-page .chip,
html[data-theme] body.market-page .sold-note,
html[data-theme] body.market-page .lot-ph{background:var(--chip)!important;color:var(--ink)!important;border-color:var(--line)!important}
html[data-theme] body.market-page .chip.sold{background:var(--ink)!important;color:var(--paper)!important}
html[data-theme] body.market-page .cat-tabs button[aria-selected="true"]{background:var(--accent)!important;color:var(--accent-ink)!important;border-color:var(--accent)!important}
html[data-theme] body.market-page .filters input,
html[data-theme] body.market-page .filters select,
html[data-theme] body.market-page #itemForm input,
html[data-theme] body.market-page #itemForm textarea,
html[data-theme] body.market-page #itemForm select,
html[data-theme] body.market-page #offerForm input,
html[data-theme] body.market-page #offerForm textarea,
html[data-theme] body.market-page #offerForm select,
html[data-theme] body.market-page .mail-form input,
html[data-theme] body.market-page .mail-form textarea{background:var(--paper)!important;color:var(--ink)!important;border-color:var(--line)!important}
@media (min-width:720px){
 .lot-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
 .filter-row{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media (min-width:1100px){
 .lot-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media (max-width:900px){
 body.market-page #toast{bottom:calc(var(--dock-h,72px) + 10px)}
}
@media (prefers-reduced-motion:reduce){
 .skel{animation:none}
 .gallery-track{transition:none}
}
html[data-theme="retro"] body.market-page{background:#008080!important;color:#111827!important}
html[data-theme="retro"] body.market-page .bay-shell{background:#fffef2!important;border:3px ridge #fff;padding:8px}
html[data-theme="retro"] body.market-page .market-head,
html[data-theme="retro"] body.market-page .filters{background:#ffcc00!important;color:#111827!important;border-bottom:6px solid #cc0000}
html[data-theme="retro"] body.market-page .market-head h1{font-family:Tahoma,Verdana,sans-serif;color:#111827!important;background:transparent!important}
html[data-theme="retro"] body.market-page main.wrap a.lot-card:not(.btn),
html[data-theme="retro"] body.market-page .lot-card,
html[data-theme="retro"] body.market-page .empty-bay,
html[data-theme="retro"] body.market-page .qa,
html[data-theme="retro"] body.market-page .mail,
html[data-theme="retro"] body.market-page .desc,
html[data-theme="retro"] body.market-page .preview{background:#fff!important;color:#111827!important;border:2px solid #000080!important;border-radius:0!important}
html[data-theme="retro"] body.market-page .cat-tabs button{border-radius:0!important;background:#d4d0c8!important;color:#111827!important;border:2px solid #404040!important}
html[data-theme="retro"] body.market-page .cat-tabs button[aria-selected="true"]{background:#000080!important;color:#fff!important}
html[data-theme="retro"] body.market-page .lot-price,
html[data-theme="retro"] body.market-page .detail-price{color:#cc0000!important}
html[data-theme="retro"] body.market-page .chip{border-radius:0!important}
@media print{
 .filters,.owner-tools,#offerForm,.mail-form,#formView,.gal-btn{display:none!important}
}
