/* Explore: the community desk's sections, filled with the calendar's compact rows.
   One tint per section (data-tone), never per row. Loaded only by /places/. */

.places-jumps{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 22px}
.places-jumps a{display:flex;align-items:center;gap:7px;min-height:40px;padding:9px 13px;font-size:13px;line-height:1.2;border:1px solid #d8ddd8;border-radius:20px;background:#ffffff80;color:var(--navy)}
.places-jumps a:hover{background:#fff;border-color:#83958f;text-decoration:none}
.places-jumps small{font:10px var(--mono);color:var(--ink2)}

.places-group{margin:0 0 22px;border:1px solid var(--panel-line);border-radius:var(--panel-radius);overflow:hidden;background:var(--surface);scroll-margin-top:16px}
.places-group-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 21px;background:var(--tint);border-top:4px solid var(--accent);border-bottom:1px solid var(--panel-line)}
.places-group-head h2{font:600 29px/1.08 var(--display);color:var(--tone-ink);margin:0}
.places-group-head p{margin:5px 0 0;font-size:14px;line-height:1.45;color:var(--tone-ink);opacity:.85;max-width:70ch}
.places-group-count{font:600 30px/1 var(--display);color:var(--accent);opacity:.55}
.places-group-rows{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px;padding:4px 21px 8px}
.places-group:target .places-group-head{box-shadow:inset 0 0 0 2px var(--accent)}

/* A compact row: mark, name, category and town, one line of context, source, save. */
.places-group .place-row{grid-template-columns:40px minmax(0,1fr) 40px;gap:4px 12px;padding:13px 0}
.places-group .place-row>.save{grid-column:3;grid-row:1}
.place-row .cal-copy h3{font-size:18px}
.place-row .cal-cat{color:var(--tone-ink)}
.place-row .cal-copy>.source{margin-top:7px}
.place-row .source-copy{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 8px}
.place-row .source-copy small{margin-top:0}
.place-row-mark{width:40px;height:40px;border-radius:8px;background:#fff;border:1px solid var(--panel-line);display:grid;place-items:center;overflow:hidden}
.place-row-mark img{max-width:100%;max-height:100%;object-fit:contain;padding:3px}
.place-row-mark span{font:600 14px var(--display);color:var(--tone-ink)}
/* In two columns the last row of each column carries no bottom rule. */
.places-group-rows>.place-row:nth-last-child(1),.places-group-rows>.place-row:nth-last-child(2):nth-child(odd){border-bottom:0}

.places-more{border-top:1px solid var(--line);margin:0 21px}
.places-more>summary{cursor:pointer;list-style:none;display:flex;align-items:center;min-height:48px;font-weight:600;font-size:15px;color:var(--tone-ink)}
.places-more>summary::-webkit-details-marker{display:none}
.places-more>summary:after{content:'+';margin-left:8px;font:500 18px var(--mono);color:var(--accent)}
.places-more[open]>summary:after{content:'–'}
.places-more>summary:hover{text-decoration:underline;text-underline-offset:3px}
.places-more>.places-group-rows{padding:0 0 8px}
@media(max-width:860px){
.places-group-rows{grid-template-columns:1fr}
.places-group-rows>.place-row:nth-last-child(2):nth-child(odd){border-bottom:1px solid var(--line)}
}
@media(max-width:650px){
.places-group-head{padding:14px 16px}
.places-group-head h2{font-size:25px}
.places-group-head p{font-size:13px}
.places-group-rows{padding:2px 16px 6px}
.places-more{margin:0 16px}
.places-jumps a{min-height:44px;font-size:12px;padding:9px 11px}
.places-group .place-row{grid-template-columns:36px minmax(0,1fr) 44px;gap:4px 10px}
.place-row-mark{width:36px;height:36px}
.places-group .place-row>.save{width:44px;min-width:44px;height:44px;margin:-8px -10px 0 0}
}
@media print{.places-jumps,.filter-bar,.places-more>summary{display:none}.places-more>.places-group-rows{display:grid}.places-group{break-inside:auto;border-radius:0}.place-row{break-inside:avoid}}
