/* Listed so far (LIVE 2026-10-23): unverified cities. Uses the page's own tokens and row parts (.vgroup, .vrow, .vname, .vaddr, .sugg). */
.ls-note{margin:.1rem 0 .6rem;font-size:.875rem;line-height:1.45;color:var(--color-text-muted)}
.ls-note b{color:var(--color-text);font-weight:600}

/* a listed group: the category colour stays, the line is dashed until PaddleClub checks it */
.vgroup-listed{border-style:dashed}
.vgroup-listed summary{border-left-style:dashed}
.vgroup-listed .vg-count{font-weight:600}
.vgroup-listed .ls-nc{font-weight:500;font-style:italic;color:var(--color-text-muted)}

.ls-list{list-style:none;margin:0;padding:0}
.ls-list .vrow:last-child{border-bottom:none}
.ls-row{align-items:center;padding:.55rem 0}
.ls-row .vname{flex:1 1 0;min-width:0;font-weight:600}
.ls-row .vaddr{order:3;margin-top:-.1rem}
.ls-row .ls-meta{color:var(--color-text)}
.ls-row.ls-open{background:linear-gradient(var(--color-accent-lt),var(--color-accent-lt)) 0 0/100% 100% no-repeat;margin:0 -.6rem;padding-left:.6rem;padding-right:.6rem;border-radius:var(--radius-sm)}

/* the check: quiet until used, 44px to tap */
.ls-check{order:2;flex:none;min-height:44px;min-width:44px;padding:0 .9rem;margin:-.3rem 0;border:1px solid var(--color-border);border-radius:999px;background:var(--color-surface);
  font:600 .8125rem var(--font-sans);color:var(--color-accent);cursor:pointer;transition:border-color .15s,background-color .15s}
.ls-check:hover{border-color:var(--color-accent)}
.ls-check[aria-expanded="true"]{background:var(--color-accent);border-color:var(--color-accent);color:#fff}
.ls-check:focus-visible,.ls-act:focus-visible,.ls-more:focus-visible,.ls-cancel:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}
.ls-tick{order:2;flex:none;display:inline-flex;align-items:center;gap:.3rem;min-height:44px;margin:-.3rem 0;font:600 .8125rem var(--font-sans);color:var(--color-success)}
.ls-tick svg{width:1rem;height:1rem}

.ls-panel{order:4;flex-basis:100%;display:grid;gap:.55rem;padding:.6rem 0 .35rem}
.ls-panel[hidden]{display:none}
.ls-q{margin:0;font-size:.875rem;font-weight:600;color:var(--color-text)}
.ls-acts{display:flex;flex-wrap:wrap;gap:.5rem}
.ls-act{flex:1 1 9.5rem;min-height:44px;padding:.5rem .8rem;border:1px solid var(--color-accent);border-radius:var(--radius-sm);background:var(--color-surface);
  font:600 .875rem var(--font-sans);color:var(--color-accent-dark);cursor:pointer;text-align:center}
.ls-act:hover{background:var(--color-accent-lt)}
.ls-act[aria-expanded="true"]{background:var(--color-accent-dark);border-color:var(--color-accent-dark);color:#fff}
.ls-act:disabled,.ls-send:disabled{opacity:.6;cursor:default}
.ls-fix{display:grid;gap:.35rem}
.ls-fix[hidden]{display:none}
.ls-fix label{font-size:.875rem;font-weight:600}
.ls-fix textarea{resize:vertical;min-height:4.2rem;line-height:1.4}
.ls-fixb{display:flex;align-items:center;gap:.75rem}
.ls-fixb .ls-send{min-height:44px;background:var(--color-surface);border-color:var(--color-accent);color:var(--color-accent-dark)}
.ls-cancel{min-height:44px;padding:0 .4rem;background:none;border:0;font:600 .875rem var(--font-sans);color:var(--color-text-muted);text-decoration:underline;cursor:pointer}
.ls-row .pt-err{order:5;flex-basis:100%;margin:.2rem 0 0}
.ls-ok{order:5;flex-basis:100%;margin:.25rem 0 0;font-size:.875rem;font-weight:600;color:var(--color-success)}
.ls-ok:focus{outline:none}

.ls-more{display:block;width:100%;min-height:44px;margin:.1rem 0 .2rem;background:none;border:0;border-top:1px solid var(--color-border);
  font:600 .875rem var(--font-sans);color:var(--color-accent);cursor:pointer;text-align:left;padding:.5rem 0}
.ls-more:hover{text-decoration:underline}
.vrows .sugg .sugg-open{margin-top:.1rem}
.ls-hidden{margin:.1rem 0 0;padding:.3rem 0 0;font-size:.8125rem;color:var(--color-text-muted)}
@media (prefers-reduced-motion:reduce){.ls-check{transition:none}}

/* optional source link: one quiet line until used */
.ls-src{display:grid;gap:.35rem}
.ls-srcopen{justify-self:start;min-height:44px;padding:0;background:none;border:0;font:500 .8125rem var(--font-sans);color:var(--color-text-muted);cursor:pointer;text-align:left}
.ls-srcopen span{font-weight:600;color:var(--color-accent);text-decoration:underline;text-underline-offset:2px}
.ls-srcopen:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}
.ls-srcf{display:grid;gap:.3rem}
.ls-srcf[hidden]{display:none}
.ls-srcf label{font-size:.875rem;font-weight:600}
.ls-srcf .in{font-size:1rem}
.ls-srch{margin:0;font-size:.75rem;color:var(--color-text-muted)}
