:root{
  color-scheme: dark;
  --bg: #0b0d10;
  --card: #151922;
  --card-shadow: none;
  --muted: #8a93a5;
  --text: #e9edf3;
  --brand: #6aa1ff;
  --accent: #3dd68c;
  --border: #2a3140;
  --border-strong: #252b38;
  --surface: #0d1117;
  --surface-soft: #151922;
  --chip: #1f2430;
  --chip-on: #2f6fed;
  --placeholder: #6c7385;
  --header-overlay-1: rgba(11,13,16,.95);
  --header-overlay-2: rgba(11,13,16,.7);
  --status-open-text: #3dd68c;
  --status-open-bg: rgba(61,214,140,.12);
  --status-closed-text: #ff8a9c;
  --status-closed-bg: rgba(255,114,142,.16);
  --status-verified-text: #6aa1ff;
  --status-verified-bg: rgba(106,161,255,.16);
}
:root[data-theme="light"]{
  color-scheme: light;
  --bg: #f5f7fb;
  --card: #ffffff;
  --card-shadow: 0 20px 40px rgba(22,32,51,.08);
  --muted: #5c6780;
  --text: #111b2e;
  --brand: #356dff;
  --accent: #1f9e66;
  --border: #d5dbea;
  --border-strong: #c5cde3;
  --surface: #ffffff;
  --surface-soft: #eef2fc;
  --chip: #eef2fc;
  --chip-on: #356dff;
  --placeholder: #9aa3bb;
  --header-overlay-1: rgba(245,247,251,.95);
  --header-overlay-2: rgba(245,247,251,.7);
  --status-open-text: #1f9e66;
  --status-open-bg: rgba(31,158,102,.12);
  --status-closed-text: #d2374f;
  --status-closed-bg: rgba(210,55,79,.14);
  --status-verified-text: #356dff;
  --status-verified-bg: rgba(53,109,255,.14);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font:16px/1.4 system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, 'Helvetica Neue', Arial, 'Noto Sans', 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol';transition:background .3s ease,color .3s ease}
a{color:var(--brand);text-decoration:none}
a:hover{text-decoration:underline}
header{position:sticky;top:0;z-index:5;background:linear-gradient(180deg, var(--header-overlay-1), var(--header-overlay-2) 65%, transparent);backdrop-filter: blur(8px)}
.container{max-width:1200px;margin:0 auto;padding:16px}
.layout{display:flex;align-items:flex-start;gap:24px}
.filters{flex:0 0 320px;display:flex;flex-direction:column;gap:20px;position:sticky;top:16px;align-self:flex-start;background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:16px}
.filters__section+.filters__section{border-top:1px dashed var(--border);padding-top:16px;margin-top:4px}
.results{flex:1;display:flex;flex-direction:column;gap:16px}
.results .grid{margin-top:0}
.results .footer{margin-top:0}
.footer{display:flex;justify-content:space-between;align-items:center;margin-top:10px;gap:12px;flex-wrap:wrap}
.header-top{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.theme-switch{display:flex;gap:4px;border:1px solid var(--border);background:var(--surface);border-radius:999px;padding:4px}
.theme-switch__btn{appearance:none;border:0;background:transparent;color:var(--muted);padding:6px 14px;border-radius:999px;font-size:13px;font-weight:500;cursor:pointer;transition:background .2s ease,color .2s ease}
.theme-switch__btn[data-active="true"]{background:var(--brand);color:#fff}
.theme-switch__btn:focus-visible{outline:2px solid var(--brand);outline-offset:2px}
h1{font-size:22px;margin:0 0 8px 0;letter-spacing:.2px}
.controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;align-items:end}
.control--search{grid-column:1 / -1}
@media (max-width: 720px){.controls{grid-template-columns:1fr}}
.input, select, .btn{width:100%;padding:12px 12px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--text);outline:none;transition:background .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease}
.input:focus, select:focus, .btn:focus-visible{border-color:var(--brand);box-shadow:0 0 0 3px rgba(53,109,255,.25)}
.input::placeholder{color:var(--placeholder)}
fieldset{border:0;padding:0;margin:0}
.legend{font-size:12px;color:var(--muted);margin-bottom:6px}
.chips-block{display:flex;flex-direction:column;gap:8px}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{border:1px solid var(--border);background:var(--chip);color:var(--text);padding:8px 10px;border-radius:999px;cursor:pointer;font-size:13px;transition:background .2s ease,border-color .2s ease,color .2s ease}
.chip[data-active="true"]{background:var(--chip-on);border-color:var(--chip-on);color:white}
.grid{display:grid;grid-template-columns: repeat(3, 1fr);gap:14px;margin-top:14px}
@media (max-width: 1100px){.grid{grid-template-columns: repeat(2, 1fr)}}
@media (max-width: 720px){.grid{grid-template-columns: 1fr}}
.card{background:var(--card);border:1px solid var(--border-strong);border-radius:14px;padding:14px;display:flex;gap:12px;align-items:flex-start;box-shadow:var(--card-shadow)}
.badge{font-size:11px;padding:4px 8px;border-radius:999px;background:var(--surface);border:1px solid var(--border);color:var(--muted)}
.name{display:flex;gap:12px;align-items:flex-start;justify-content:space-between}
.name .title{flex:1;min-width:0}
.name>.small{white-space:nowrap}
.title{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.name h3{margin:0;font-size:18px}
.small{font-size:12px;color:var(--muted)}
.tags{display:flex;gap:8px;flex-wrap:wrap}
.tag{font-size:11px;background:var(--surface);border:1px solid var(--border);padding:4px 6px;border-radius:6px;color:var(--muted)}
.addr{margin:6px 0 2px 0}
.actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.map-action{display:flex;flex-direction:column;gap:4px;align-items:flex-start;width:100%}
.btn{border:1px solid var(--border);background:var(--surface);color:var(--text);padding:8px 10px;border-radius:8px;cursor:pointer}
.btn.primary{background:var(--brand);border-color:var(--brand);color:#fff}
.selected{font-size:13px;color:var(--muted)}
hr{border:0;border-top:1px dashed var(--border);margin:8px 0}
.kbd{display:inline-block;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:6px;padding:0 6px;font-size:12px}
.status{font-size:11px;font-weight:600;padding:4px 8px;border-radius:999px;letter-spacing:.3px;text-transform:uppercase}
.status[data-status="open"]{background:var(--status-open-bg);color:var(--status-open-text)}
.status[data-status="closed"]{background:var(--status-closed-bg);color:var(--status-closed-text)}
.status[data-status="verified"]{background:var(--status-verified-bg);color:var(--status-verified-text)}

@media (max-width: 960px){
  .layout{flex-direction:column}
  .filters{position:static;width:100%}
}
  
