/* Trödelmarkt: deliberately plain classifieds. White page, blue links, dense lists, nothing rounded. */
html.shell-market {
  --brand: #fff; --brand-ink: #111; --link: #0000cc; --page: #fff; --surface: #fff; --foot: #fff; --line: #ddd;
  --font: 'Archivo Narrow', Arial, sans-serif; --mono-font: 'Courier Prime', 'Courier New', monospace; --radius: 0;
}
html.shell-market body { font-size: 15px; line-height: 1.4; }
html.shell-market main { max-width: 1100px; padding-top: .6rem; }
.market-header { border-bottom: 1px solid #ccc; }
.market-header .svc-inner { min-height: 48px; }
.market-mark { font: 700 .82rem/1 var(--font); letter-spacing: .05em; color: #fff; background: #7a1fa2; padding: .35rem .45rem; }
.market-header .svc-brand small { color: #666; opacity: 1; font-size: .78rem; }
.market-header .svc-nav a { font-weight: 400; color: var(--link); padding: .3rem .45rem; font-size: .92rem; }
.market-header .svc-nav a:hover { background: none; text-decoration: underline; }
.svc a { color: var(--link); text-decoration: none; }
.svc a:visited { color: #551a8b; }
.svc a:hover { text-decoration: underline; }
.svc h1, .svc h2 { font-family: var(--font); }
.svc h2 { font-size: 1rem; margin: 0 0 .3rem; font-weight: 700; }
.market-footer { background: #fff; color: #555; border-top: 1px solid #ccc; margin-top: 2rem; padding: 1rem 0; }
.market-footer a { color: var(--link); }
.market-footer .legal { color: #777; border-top-color: #eee; }
.market-footer .vmt { color: #888; }
.cl-box { border: 1px solid #ccc; background: #f7f7f7; padding: .6rem .8rem; margin: 1rem 0; }
.cl-box ul { margin: .3rem 0 0; padding-left: 1.2rem; }
.cl-box li { margin: 0; }
.cl-go select { font: 15px var(--font); padding: .15rem .2rem; border: 1px solid #aaa; border-radius: 0; }
.cl-go button { font: 15px var(--font); padding: .15rem .6rem; border: 1px solid #aaa; background: #eee; cursor: pointer; }
.n { color: #888; font-size: .82em; }

/* home: town index */
.cl-intro { display: flex; justify-content: space-between; gap: 1rem; flex-wrap: wrap; align-items: center; border-bottom: 1px solid #eee; padding-bottom: .5rem; margin-bottom: 1rem; }
.cl-intro p { margin: 0; }
.cl-towns { columns: 4 200px; column-gap: 2rem; }
.cl-region { break-inside: avoid; margin-bottom: 1rem; }
.cl-region h2 { background: #eee; padding: .1rem .3rem; font-size: .95rem; }
.cl-region ul, .cl-links, .cl-sec ul, .cl-rows { list-style: none; padding: 0; margin: 0; }
.cl-region li, .cl-links li, .cl-sec li { margin: 0; line-height: 1.45; }
.cl-region a.big { font-weight: 700; }

/* town front page */
.cl-grid { display: grid; grid-template-columns: 170px minmax(0, 1fr) 150px; gap: 1.2rem; }
.cl-townname { font-size: 1.5rem; font-weight: 700; margin: 0 0 .4rem; color: #7a1fa2; }
.cl-post a { display: block; border: 1px solid #aaa; background: #f5f5f5; padding: .25rem .5rem; text-align: center; margin-bottom: .6rem; }
.cl-left .cl-links { margin-top: .6rem; }
.cl-sections { columns: 3 190px; column-gap: 1.2rem; }
.cl-sec { break-inside: avoid; margin-bottom: 1rem; }
.cl-sec h2 { background: #eee; text-align: center; padding: .1rem; text-transform: none; }
.cl-sec ul { columns: 1; }
.cl-recent { margin-top: .5rem; border-top: 1px solid #eee; padding-top: .5rem; }
.cl-right h2 { font-size: .95rem; }
.cl-rows li { padding: .2rem 0; border-bottom: 1px solid #f0f0f0; margin: 0; }
.cl-rows .d { color: #777; font-size: .9em; display: inline-block; min-width: 3.6em; }
.cl-rows .p { color: #080; font-weight: 700; }
.cl-rows .u { color: #080; font-size: .85em; }
.cl-rows .h { color: #777; font-size: .9em; }
.cl-rows .c { color: #999; font-size: .85em; }
.cl-rows .pic { color: #c60; font-size: .8em; }

/* category */
.cl-crumbs { font-size: .9rem; margin-bottom: .6rem; }
.cl-cat-grid { display: grid; grid-template-columns: 180px minmax(0, 1fr); gap: 1.2rem; }
.cl-links li.sechead { font-weight: 700; margin-top: .5rem; }
.cl-links a.current { font-weight: 700; color: #111; }
.cl-bar { background: #eee; padding: .25rem .5rem; margin-bottom: .4rem; }
.cl-none { color: #666; }

/* posting */
.cl-actions { display: flex; gap: .4rem; align-items: flex-start; margin: .3rem 0 .6rem; font-size: .9rem; }
.cl-reply summary { list-style: none; cursor: pointer; background: #fff; border: 1px solid #aaa; padding: .15rem .8rem; font-weight: 700; color: #111; }
.cl-reply summary::-webkit-details-marker { display: none; }
.cl-reply[open] summary { background: #eee; }
.cl-reply div { border: 1px solid #aaa; padding: .5rem .7rem; margin-top: .3rem; max-width: 420px; background: #fffbe6; }
.cl-fake { border: 1px solid #ddd; padding: .15rem .6rem; color: #888; }
.cl-title { font: 700 1.3rem/1.3 var(--font); margin: .4rem 0 .8rem; }
.cl-title .p { color: #080; }
.cl-title small { font-weight: 400; color: #666; font-size: .75em; }
.cl-post-grid { display: grid; grid-template-columns: minmax(0, 1fr) 230px; gap: 1.2rem; }
.cl-pic { max-width: 520px; margin: 0 0 .8rem; border: 1px solid #ccc; background: #fff; padding: 4px; }
.cl-pic svg { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; }
.cl-pic.flip svg { transform: scaleX(-1); }
/* six colourings of the drawings: wall, floor, article, its second colour, fabric; sky, hills and grass outdoors */
.pal-0 { --bg: #e9e2d3; --gd: #b89a74; --o: #7a4a2b; --o2: #4e2f1b; --p: #f4efe4; --sky: #d6e4ee; --hill: #b7c4a4; --grass: #8ea373; }
.pal-1 { --bg: #dfe6e1; --gd: #9c8266; --o: #2f4f6f; --o2: #1f3550; --p: #f1ece0; --sky: #e2e8ea; --hill: #a9b89a; --grass: #7f9868; }
.pal-2 { --bg: #efe4d6; --gd: #c2ab8a; --o: #6b2f2f; --o2: #3a2616; --p: #f7f1e3; --sky: #dfe7e4; --hill: #c0c2a0; --grass: #97a578; }
.pal-3 { --bg: #d9dde6; --gd: #8f7a63; --o: #3f5f3a; --o2: #26381f; --p: #efeadf; --sky: #cfdbe6; --hill: #aebda3; --grass: #86a06f; }
.pal-4 { --bg: #efe7cf; --gd: #a88e6c; --o: #8a6a3a; --o2: #5b3a24; --p: #fbf6ea; --sky: #e8e4d8; --hill: #bcc09b; --grass: #9aa77a; }
.pal-5 { --bg: #e4dcd4; --gd: #7d6a58; --o: #4a4a52; --o2: #2b2b30; --p: #f2ede4; --sky: #d9e1e8; --hill: #a4b39c; --grass: #7d9670; }
.cl-body p { font-size: 1rem; line-height: 1.55; max-width: 60ch; }
.cl-notices { color: #888; }
.cl-attrs { border: 1px solid #ddd; padding: .5rem .7rem; align-self: start; font-size: .92rem; }
.cl-attrs p { margin: 0 0 .25rem; }
.cl-attrs span { color: #777; }
.cl-meta { color: #777; margin-top: 1rem; }
@media (max-width: 760px) { .cl-grid, .cl-cat-grid, .cl-post-grid { grid-template-columns: 1fr; } .cl-right { display: none; } }

/* replies, favourites, flags, posting */
.cl-reply-form { display: grid; gap: .45rem; margin: 0 0 .6rem; max-width: 420px; }
.cl-reply-form label, .cl-post-form label { display: grid; gap: .15rem; font-size: .85rem; color: #444; }
.cl-reply-form textarea, .cl-reply-form input, .cl-post-form input, .cl-post-form select, .cl-post-form textarea { font: 15px Arial, sans-serif; border: 1px solid #aaa; padding: .3rem .4rem; border-radius: 0; }
.cl-reply-form button, .cl-post-form button, .cl-links-row button, .cl-flag button { font: 15px Arial, sans-serif; background: #eee; border: 1px solid #999; padding: .2rem .7rem; cursor: pointer; border-radius: 2px; }
.cl-act { margin-left: .4rem; }
.cl-flag { display: inline-block; margin-left: .4rem; }
.cl-flag summary { color: #c00; cursor: pointer; }
.cl-flag form { display: grid; gap: .2rem; background: #fff; border: 1px solid #ccc; padding: .6rem; position: absolute; z-index: 5; font-size: .88rem; }
.cl-flag label { display: flex; gap: .3rem; align-items: center; }
.cl-banner { background: #e8f5e3; border: 1px solid #9c9; padding: .35rem .6rem; margin: .4rem 0; }
.cl-banner.cl-off { background: #f5e3e3; border-color: #c99; }
.cl-thread { max-width: 680px; margin: 1rem 0; }
.cl-msg { border: 1px solid #ccc; padding: .6rem .8rem; margin: 0 0 .7rem; }
.cl-msg.me { background: #f7f7ff; margin-left: 2rem; }
.cl-msg.them { background: #fff; margin-right: 2rem; border-left: 4px solid #7a1fa2; }
.cl-hdr { font-size: .82rem; color: #666; margin: 0 0 .3rem; }
.cl-text { margin: 0; white-space: pre-wrap; }
.cl-sig { margin: .4rem 0 0; font-style: italic; }
.cl-arrange { max-width: 680px; }
.cl-links-row { display: flex; flex-wrap: wrap; gap: .5rem; align-items: center; }
.cl-post-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .6rem 1rem; max-width: 760px; border: 1px solid #ccc; padding: .8rem; }
.cl-post-form .wide { grid-column: 1 / -1; }
.cl-preview { border: 2px dashed #7a1fa2; padding: .8rem; margin: .8rem 0; }
@media (max-width: 640px) { .cl-post-form { grid-template-columns: 1fr; } .cl-msg.me { margin-left: 0; } .cl-msg.them { margin-right: 0; } .cl-flag form { position: static; } }
@media print { .market-header, .market-footer, .cl-links-row, .cl-crumbs { display: none !important; } }
