/* What's on finder, scoped to .finder so it sits inside the bridgeconnectors.org layout.
   Derived from the original apps.bridgeconnectors.org finder; site.css supplies fonts, buttons, header and footer. */
.finder{--color-teal:#3aabaa; --color-navy:#1d2048; --color-gold:#e8a023; --color-crimson:#8c1a4a;
  --color-cream:#f6f1eb; --color-white:#ffffff; --color-slate:#4a4a5a;
  --color-border:#ebe6e0; --color-border-light:#f2ede7;
  --color-teal-10:rgba(58,171,170,.10); --color-teal-20:rgba(58,171,170,.20);
  --color-gold-10:rgba(232,160,35,.12); --color-crimson-10:rgba(140,26,74,.10);
  
  
  --radius-sm:4px; --radius-md:8px; --radius-lg:10px; --radius-xl:16px; --radius-full:9999px;
  --shadow-xs:0 1px 3px rgba(0,0,0,.08); --shadow-sm:0 2px 8px rgba(0,0,0,.08); --shadow-md:0 4px 16px rgba(0,0,0,.10);
  --shadow-lg:0 8px 32px rgba(0,0,0,.12); --focus-ring:0 0 0 3px rgba(58,171,170,.35);
  --ease:200ms ease; --ease-hover:120ms ease;

  
  --bg:var(--color-cream); --surface:var(--color-white); --ink:var(--color-navy); --body:var(--color-slate);
  --muted:var(--color-slate); --line:var(--color-border);
  --fresh:var(--color-teal); --age:var(--color-gold); --stale:var(--color-crimson);
  --fresh-bg:var(--color-teal-10); --age-bg:var(--color-gold-10); --stale-bg:var(--color-crimson-10);
  
  --mapbg:#eef0e8; --road1:#e8a023; --road2:#ffffff; --road3:#ffffff; --casing:#d8d3cb; --water:#9cc7d6;
  color-scheme:light;}
.finder .intro{margin:0 0 4px}
.finder .proto{display:inline-block;background:var(--color-gold-10);color:var(--ink);border-radius:var(--radius-full);padding:3px 12px;font-size:12px;font-weight:500}
.finder .proto::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--color-gold);margin-right:8px;vertical-align:1px}
.finder .lead{font-size:16px;line-height:1.7;margin:12px 0 0;max-width:62ch}
.finder .search-panel{margin-top:24px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:24px;display:flex;flex-direction:column;gap:16px}
.finder .srow{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px;align-items:end}
.finder .srow .f-q{grid-column:1/-1}
.finder .sbtns{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px}
@media(min-width:760px){.finder .srow{grid-template-columns:2fr 1.1fr .8fr auto}.finder .srow .f-q,.finder .sbtns{grid-column:auto}}
.finder label.f{display:flex;flex-direction:column;gap:4px;font-size:12px;font-weight:500;color:var(--body)}
.finder input[type=search],.finder input[type=text],.finder select{font:inherit;font-size:15px;color:var(--ink);background:var(--color-white);border:1px solid var(--line);border-radius:var(--radius-md);padding:9px 12px;width:100%;box-shadow:var(--shadow-xs);transition:border-color var(--ease),box-shadow var(--ease)}
.finder input:focus,.finder select:focus{outline:none;border-color:var(--color-teal);box-shadow:var(--focus-ring)}
.finder input::placeholder{color:#7a7a88}
.finder #pc{text-transform:uppercase}
.finder .msg{font-size:14px;margin:0;color:var(--body)}
.finder .msg:empty{display:none}
.finder .msg.err{color:var(--color-crimson)}
.finder .chips{display:flex;flex-wrap:wrap;gap:8px}
.finder .chip{font:500 14px/1.3 var(--sans);border:1px solid var(--line);background:var(--color-white);color:var(--ink);border-radius:var(--radius-full);padding:6px 14px;cursor:pointer;transition:background var(--ease-hover),border-color var(--ease-hover),transform var(--ease-hover)}
.finder .chip:hover{border-color:var(--color-teal);background:var(--color-teal-10)}
.finder .chip:active{transform:scale(.97)}
.finder .chip small{color:var(--body);margin-left:4px;font-weight:400}
.finder .chip[aria-pressed="true"]{background:var(--color-navy);color:var(--color-white);border-color:var(--color-navy)}
.finder .chip[aria-pressed="true"] small{color:inherit;opacity:.8}
.finder .catnav{display:flex;flex-direction:column;gap:8px}
.finder .flab{font-size:12px;font-weight:500;color:var(--body)}
.finder .crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px;font-size:14px}
.finder .crumbs:empty{display:none}
.finder .crumbs button{font:500 14px/1.4 var(--sans);background:none;border:0;padding:0;color:var(--ink);text-decoration:underline;text-decoration-color:var(--color-teal);text-decoration-thickness:2px;text-underline-offset:3px;cursor:pointer}
.finder .crumbs [aria-current]{font-weight:600;color:var(--ink)}
.finder .crumbs .sep{color:var(--body)}
.finder .chip .more{margin-left:6px;font-weight:600}
.finder .none{font-size:14px;color:var(--body)}
.finder .row2{display:flex;flex-wrap:wrap;gap:10px 20px;align-items:center}
.finder .row2 label.f{flex-direction:row;align-items:center;gap:8px}
.finder .row2 select{width:auto;max-width:100%;min-width:0}
.finder .row2 label.f{max-width:100%;min-width:0}
@media (max-width:600px){.finder .row2 label.f{flex:1 1 100%}.finder .row2 label.f select{flex:1 1 auto}}
.finder .seg{display:inline-flex;border:1px solid var(--line);border-radius:var(--radius-md);overflow:hidden;background:var(--color-white)}
.finder .seg button{font:500 14px/1.2 var(--sans);background:transparent;color:var(--ink);border:0;padding:9px 14px;cursor:pointer;transition:background var(--ease-hover)}
.finder .seg button+button{border-left:1px solid var(--line)}
.finder .seg button:hover{background:var(--color-teal-10)}
.finder .seg button[aria-pressed="true"]{background:var(--color-navy);color:var(--color-white)}
.finder .tog{display:inline-flex;align-items:center;gap:8px;font-size:14px;color:var(--ink)}
.finder .tog input{width:18px;height:18px;accent-color:var(--color-teal)}
.finder .summary{display:flex;flex-wrap:wrap;align-items:center;gap:10px 20px;margin:24px 2px 16px}
.finder .count{font:700 22px/1.3 var(--sans);color:var(--ink)}
.finder .freshbar{flex:1 1 220px;display:flex;height:8px;border-radius:var(--radius-full);overflow:hidden;background:var(--line);min-width:180px}
.finder .freshbar span{display:block;height:100%}
.finder .fkey{font-size:12px;color:var(--body);display:flex;gap:14px;flex-wrap:wrap}
.finder .fkey i{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:5px;vertical-align:-1px}
.finder ol.list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr;gap:16px}
@media(min-width:860px){.finder ol.list{grid-template-columns:1fr 1fr;gap:24px}}
.finder .item{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:24px;overflow:hidden;transition:box-shadow var(--ease);display:flex;flex-direction:column}
.finder .item:hover{box-shadow:var(--shadow-md)}
.finder .item::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:var(--line)}
.finder .item.fresh::before{background:var(--fresh)}
.finder .item.age::before{background:var(--age)}
.finder .item.stale::before{background:var(--stale)}
.finder .ihead{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 12px;align-items:flex-start}
.finder .item h3{font:600 18px/1.35 var(--sans);color:var(--ink);flex:1 1 200px}
.finder .badge{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:500;border-radius:var(--radius-full);padding:3px 10px;white-space:nowrap;color:var(--ink)}
.finder .badge::before{content:"";width:7px;height:7px;border-radius:50%}
.finder .badge.fresh{background:var(--fresh-bg)}
.finder .badge.fresh::before{background:var(--fresh)}
.finder .badge.age{background:var(--age-bg)}
.finder .badge.age::before{background:var(--age)}
.finder .badge.stale{background:var(--stale-bg);color:var(--color-crimson)}
.finder .badge.stale::before{background:var(--stale)}
.finder .where{font-size:13px;color:var(--body);margin:6px 0 0;line-height:1.55}
.finder .desc{font-size:14px;line-height:1.65;margin:10px 0 0}
.finder .tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}
.finder .tag{font-size:12px;background:var(--color-teal-10);border-radius:var(--radius-full);padding:2px 10px;color:var(--ink)}
.finder .tag.dup{background:var(--color-gold-10)}
.finder .acts{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:auto;padding-top:14px;font-size:14px}
.finder .acts a{font-weight:500;overflow-wrap:anywhere}
.finder .acts a:first-child{font-weight:600}
.finder .empty{grid-column:1/-1;background:var(--surface);border:1px dashed var(--color-teal);border-radius:var(--radius-lg);padding:32px 24px;text-align:center;color:var(--body)}
.finder .empty button{font:600 15px/1.2 var(--sans);letter-spacing:.04em;margin-top:12px;background:var(--color-navy);color:var(--color-white);border:0;border-radius:var(--radius-md);padding:11px 18px;cursor:pointer}
.finder .empty button:active{transform:scale(.97)}
.finder .item.flash{box-shadow:var(--focus-ring),var(--shadow-md)}
.finder #map{height:min(58vh,480px);min-height:300px;border-radius:var(--radius-lg);border:1px solid var(--line);margin-top:6px;background:var(--mapbg);z-index:0}
.finder .leaflet-container{font-family:var(--sans);background:var(--mapbg)}
.finder .plabel{white-space:nowrap;color:var(--ink);font-size:12px;text-shadow:0 0 3px var(--mapbg),0 0 3px var(--mapbg),0 0 3px var(--mapbg);pointer-events:none;transform:translate(-50%,-50%)}
.finder .plabel.t0{font-size:16px;font-weight:700}
.finder .plabel.t1{font-size:14px;font-weight:600}
.finder .plabel.t3{font-size:11px;color:var(--body)}
.finder .plabel.nr{font-weight:700}
.finder .leaflet-popup-content-wrapper{border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}
.finder .leaflet-popup-content{margin:12px 14px;font-size:14px;line-height:1.4}
.finder .leaflet-popup-content-wrapper,.finder .leaflet-popup-tip{background:var(--surface);color:var(--body)}
.finder .pop ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.finder .pop button{font:500 14px/1.35 var(--sans);background:none;border:0;padding:0;color:var(--ink);text-decoration:underline;text-decoration-color:var(--color-teal);text-decoration-thickness:2px;text-underline-offset:3px;cursor:pointer;text-align:left}
.finder .pop i{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:6px}
.finder .pop .addr{color:var(--body);font-size:12px;margin:0 0 6px}
.finder .leaflet-control-attribution{background:rgba(255,255,255,.85)!important;color:var(--body)!important}
.finder .leaflet-control-attribution a{color:var(--ink)!important}
.finder .leaflet-bar a{background:var(--surface)!important;color:var(--ink)!important;border-color:var(--line)!important}
.finder .draftnote{margin:12px 0 0;font-size:13px;color:var(--ink);background:var(--color-gold-10);border-radius:var(--radius-md);padding:8px 12px;max-width:62ch}
.finder .item h3 a{color:inherit;text-decoration:none}
.finder .item h3 a:hover{text-decoration:underline;text-decoration-color:var(--color-teal)}
.finder .sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.finder .copylink{font-size:13px;padding:7px 12px;letter-spacing:.02em;order:9}
@media(max-width:640px){.finder .copylink{margin-left:0}}
.finder{color:var(--body);font-size:15px;line-height:1.7}
.finder .finder-in{padding-top:8px}
.finder .search-panel{margin-top:16px}
.finder .fnote{margin-top:40px;padding-top:18px;border-top:1px solid var(--line);font-size:12.5px;color:var(--muted);max-width:80ch}
.finder .fnote p{margin:0 0 8px}
.finder a{color:var(--color-navy);text-decoration-color:var(--color-teal);text-decoration-thickness:2px;text-underline-offset:3px}
