/* PLAYUP v20: map, trust, report, pricing, share */
/* v20 list/map toggle */
.vt{display:inline-flex;border:1px solid var(--ln);border-radius:99px;padding:3px;gap:2px;background:var(--bg2);margin:0 0 12px}
.vt button{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:99px;font:600 13px var(--sans,system-ui);color:var(--tx2)}
.vt button[aria-pressed=true]{background:var(--c);color:var(--on-c)}.vt button:focus-visible{outline:2px solid var(--c);outline-offset:2px}
.pm{height:min(62vh,560px);min-height:340px;border-radius:18px;border:1px solid var(--ln);overflow:hidden;background:var(--bg2);z-index:0}
.pm-note{border:1px dashed var(--ln);border-radius:14px;padding:10px 14px;color:var(--tx2);margin:0 0 12px;font-size:14px}
.pm-popup .leaflet-popup-content-wrapper{background:var(--bg3);color:var(--tx);border-radius:16px;border:1px solid var(--ln)}
.pm-popup .leaflet-popup-tip{background:var(--bg3)}.pm-popup .leaflet-popup-content{margin:12px}
.pm-pop .card,.pm-pop .x-card{border:0;padding:0;background:none;box-shadow:none;margin:0}.pm-pop .card-img{display:none}.pm-pop h3{margin:4px 0;font-size:16px}
.leaflet-container{font:inherit}.leaflet-control-attribution{font-size:11px}
/* v20 trust badges */
.tbs{display:flex;flex-wrap:wrap;gap:6px}
.tb{display:inline-flex;align-items:center;gap:5px;font:600 12px var(--sans,system-ui);padding:5px 10px;border-radius:99px;border:1px solid var(--ln);color:var(--tx);background:var(--bg2)}
.tb.good{color:var(--live);border-color:currentColor}.tb.low{color:var(--warn);border-color:currentColor}.tb.muted{color:var(--mu)}
.pp-head{display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center}
.pp-av{width:84px;height:84px;border-radius:50%;object-fit:cover;border:2px solid var(--c);background:var(--bg2)}
.pp-head h1{margin:0;font-size:clamp(28px,5vw,44px)}.pp-head p{margin:4px 0 10px;color:var(--tx2)}
@media(max-width:640px){.pp-head{grid-template-columns:auto 1fr}.pp-head>.pu-rep{grid-column:1/-1;justify-self:start}}
.stars{display:flex;gap:4px}.stars button{all:unset;cursor:pointer;width:34px;height:34px;border-radius:10px;display:grid;place-items:center;border:1px solid var(--ln);font:700 14px var(--sans,system-ui);color:var(--tx2)}
.stars button[aria-pressed=true]{background:var(--c);color:var(--on-c);border-color:var(--c)}.stars button:focus-visible{outline:2px solid var(--c);outline-offset:2px}
.rate-f{display:grid;gap:14px}.rate-f .lab{font:600 13px var(--sans,system-ui);color:var(--tx2);margin-bottom:6px}
.pl-list{display:grid;gap:10px}.pl-list a{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:12px 14px;border:1px solid var(--ln);border-radius:14px;color:var(--tx);text-decoration:none;flex-wrap:wrap}.pl-list a:hover{border-color:var(--c)}
/* v20 highlights + share */
.hl-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}
.hl{position:relative;border-radius:14px;overflow:hidden;border:1px solid var(--ln);background:var(--bg2);margin:0}
.hl img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}.hl figcaption{padding:8px 10px;font-size:13px;color:var(--tx2);display:flex;justify-content:space-between;gap:6px}
.hl .pl{position:absolute;top:8px;left:8px;display:inline-flex;gap:5px;align-items:center;background:rgb(0 0 0/.65);color:#fff;font:600 11px var(--sans,system-ui);padding:4px 8px;border-radius:99px}
.hl.lock img{filter:grayscale(.7) brightness(.55)}.hl.lock .pl{background:var(--c);color:var(--on-c)}
.share-prev{max-width:100%;width:420px;border-radius:16px;border:1px solid var(--ln);display:block;margin-top:12px}
.pro-tag{display:inline-flex;align-items:center;gap:4px;font:800 10.5px var(--mono,monospace);letter-spacing:.14em;padding:3px 8px;border-radius:99px;background:var(--c);color:var(--on-c)}
/* v20 staff reports */
.sa-tabs{display:flex;gap:6px;padding:10px 22px 0;max-width:1400px;margin:0 auto;flex-wrap:wrap}
.sa-tabs button{font:700 14px var(--sans,system-ui);padding:9px 16px;border-radius:99px;border:1px solid var(--ln);background:transparent;color:var(--tx2);cursor:pointer;display:inline-flex;gap:8px;align-items:center}
.sa-tabs button[aria-pressed=true]{background:var(--c);color:var(--on-c);border-color:var(--c)}.sa-tabs button[aria-pressed=true] .x-pill{background:var(--bg);color:var(--tx)}
.rp-grid{grid-template-columns:minmax(260px,380px) 1fr!important}
@media(max-width:820px){.rp-grid{grid-template-columns:1fr!important}}
.rp-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.rp-i{all:unset;box-sizing:border-box;cursor:pointer;display:grid;gap:4px;width:100%;padding:10px 12px;border:1px solid var(--ln);border-radius:12px}
.rp-i.on,.rp-i:hover{border-color:var(--c)}.rp-i:focus-visible{outline:2px solid var(--c);outline-offset:2px}.rp-i small{color:var(--mu)}.rp-i .x-pill{justify-self:start}
.rp-open{color:var(--c)!important;border-color:currentColor!important}.rp-review{color:var(--warn)!important;border-color:currentColor!important}.rp-warned{color:var(--r)!important;border-color:currentColor!important}.rp-resolved{color:var(--live)!important;border-color:currentColor!important}
.rp-log{list-style:none;margin:0;padding:0;display:grid;gap:6px;font-size:13.5px}.rp-log small{color:var(--mu)}
.rp-sel{font:inherit;color:var(--tx);background:var(--bg2);border:1px solid var(--ln);border-radius:10px;padding:7px 10px}
[hidden]{display:none!important}
/* v20 pricing */
.pr-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}
.pr-card{display:flex;flex-direction:column;gap:6px}.pr-card .x-btn{align-self:flex-start;margin-top:auto}
.pr-pro{border-color:var(--c)!important;box-shadow:0 0 0 1px var(--c) inset}
.pr-price{font:900 italic clamp(28px,4vw,40px)/1.05 var(--disp);margin:6px 0}
.pr-ul{list-style:none;padding:0;margin:8px 0 14px;display:grid;gap:8px}.pr-ul li{display:flex;gap:8px;align-items:center}.pr-ul .pi{color:var(--live)}
.pr-t td,.pr-t th{text-align:left}.pr-y{color:var(--live)}.pr-n{color:var(--mu)}
.sp-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
