/* Workbench discovery is a reading directory: an open field, a map edge, and
   a rule-separated index. All colour, type, space and shape values come from
   the shared Cuenca tokens. */
.discover-page main { max-width:var(--page-max); padding:var(--s-6) var(--gutter) var(--s-8); margin:auto; }
.discover-intro { display:grid; grid-template-columns:minmax(0,5fr) minmax(0,7fr); gap:var(--col-gap); align-items:stretch; margin:calc(-1 * var(--s-6)) calc(-1 * var(--gutter)) var(--s-7); padding:var(--s-7) var(--gutter) var(--s-6); border-bottom:var(--zocalo-h) solid var(--zocalo-band); background:var(--lime); }
.discover-intro > div { align-self:center; max-width:var(--measure); }
.discover-intro h1 { margin:var(--s-2) 0 var(--s-4); }
.discover-intro .g-lede { max-width:32ch; }
.discover-scope { color:var(--ink-2); font:var(--t-dense)/var(--lh-dense) var(--sans); }
.discover-crosslinks { display:flex; flex-wrap:wrap; gap:var(--s-4); margin:calc(-1 * var(--s-5)) 0 var(--s-6); font:var(--t-dense)/var(--lh-dense) var(--sans); }
.discover-crosslinks a { display:inline-flex; align-items:center; min-height:var(--hit); }
.discover-map-frame { min-width:0; margin:0; overflow:hidden; background:var(--lime-sunken); border:1px solid var(--rule); border-bottom:var(--zocalo-h) solid var(--zocalo-band); }
.discover-map { min-width:0; margin:0; }
.discover-map svg { display:block; width:100%; min-height:calc(var(--s-9) * 4); height:100%; max-height:calc(var(--s-9) * 6); }
.discover-map-frame figcaption { padding:var(--s-2) var(--s-3); color:var(--ink-3); background:var(--lime-raised); font:var(--t-dense)/var(--lh-dense) var(--sans); }
.discover-map-key { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 var(--s-4); list-style:none; margin:0; padding:var(--s-3) var(--s-4); border-top:1px solid var(--rule); background:var(--lime-raised); }
.discover-map-key a { display:flex; align-items:center; gap:var(--s-2); min-height:var(--hit); color:var(--ink); font:var(--t-dense)/var(--lh-dense) var(--sans); text-decoration:none; }
.discover-map-key a:hover { color:var(--celeste); text-decoration:underline; }
.discover-map-key a > span { display:inline-grid; place-items:center; width:var(--hit); height:var(--hit); flex:none; background:var(--ochre-pale); color:var(--ink); font-weight:700; }
.discover-map-ground { fill:var(--lime-sunken); }
.discover-road { fill:none; stroke:var(--lime-raised); stroke-width:2; opacity:.92; }
.discover-marker { color:var(--celeste); }
.discover-marker circle { fill:var(--celeste); stroke:var(--lime-raised); stroke-width:3; }
.discover-marker text { fill:var(--ink); font:var(--t-dense)/var(--lh-dense) var(--sans); pointer-events:none; }
.discover-marker-number { fill:var(--ink-inverse)!important; font-weight:700!important; text-anchor:middle; }
.discover-marker:hover text { fill:var(--celeste); text-decoration:underline; }
.discover-north { fill:var(--ink-2); font:600 var(--t-dense)/var(--lh-dense) var(--sans); }
.discover-tools { display:grid; grid-template-columns:minmax(0,1fr) minmax(180px,.38fr) auto; align-items:end; gap:var(--col-gap); padding:var(--s-5) 0; border-top:2px solid var(--rule-strong); border-bottom:1px solid var(--rule); }
.discover-tools label { display:grid; gap:var(--s-2); font:700 var(--t-label)/var(--lh-dense) var(--sans); color:var(--ochre); text-transform:uppercase; letter-spacing:var(--track-label); }
.discover-tools .g-field { margin:0; }
.discover-count { margin:var(--s-4) 0 0; color:var(--ink-2); font:var(--t-dense)/var(--lh-dense) var(--sans); }
.discover-list { margin-top:var(--s-2); }
.discover-list > li { padding:0; }
.discover-list > li[hidden] { display:none; }
.discover-list > li > a { display:grid; grid-template-columns:minmax(120px,.22fr) minmax(0,1fr); column-gap:var(--s-4); align-items:baseline; padding:var(--s-5) 0; }
.discover-list > li > a > strong { grid-column:2; }
.discover-item-category { grid-column:1; grid-row:1 / span 3; align-self:start; padding-top:var(--s-1); color:var(--ochre); font:700 var(--t-label)/var(--lh-dense) var(--sans); text-transform:uppercase; letter-spacing:var(--track-label); }
.discover-list p { grid-column:2; margin:var(--s-2) 0 0; font:var(--t-dense)/var(--lh-dense) var(--sans); }
.discover-item-address { grid-column:2; margin-top:var(--s-2); color:var(--ink-3); font:var(--t-dense)/var(--lh-dense) var(--sans); }
.discover-empty { padding:var(--s-6) 0; color:var(--ink-2); font:var(--t-body)/var(--lh-body) var(--serif); }
.discover-provenance { margin-top:var(--s-7); max-width:var(--measure); }
.discover-provenance p { margin:0 0 var(--s-3); }
.discover-detail header { max-width:var(--measure); padding:var(--s-5) 0 var(--s-6); }
.discover-detail h1 { margin:var(--s-2) 0 var(--s-4); }
.discover-detail-grid { display:grid; grid-template-columns:minmax(0,7fr) minmax(calc(var(--s-9) * 3.25),4fr); gap:var(--col-gap); align-items:start; }
.discover-detail-grid .discover-map { position:sticky; top:var(--s-5); }
.discover-detail-grid .discover-map svg { min-height:420px; }
.discover-apparatus { min-width:0; padding-top:var(--s-2); font:var(--t-dense)/var(--lh-dense) var(--sans); }
.discover-apparatus dl { margin:0; border-top:2px solid var(--rule-strong); }
.discover-apparatus dl > div { padding:var(--s-4) 0; border-bottom:1px solid var(--rule); }
.discover-apparatus dt { color:var(--ochre); font:700 var(--t-label)/var(--lh-dense) var(--sans); letter-spacing:var(--track-label); text-transform:uppercase; }
.discover-apparatus dd { margin:var(--s-2) 0 0; overflow-wrap:anywhere; }
.discover-apparatus .g-actions { display:grid; gap:var(--s-2); margin:var(--s-5) 0; }
.discover-apparatus .g-actions .g-button { width:100%; text-align:center; }
.discover-apparatus .g-provenance { margin-top:var(--s-6); }
.discover-apparatus .g-provenance p { margin:0 0 var(--s-2); }
.discover-related { max-width:var(--measure); }
.discover-related h2 { margin-bottom:var(--s-4); }
@media (max-width:850px) {
 .discover-page main { padding-top:var(--s-5); }
 .discover-intro { display:flex; flex-direction:column; gap:var(--s-5); margin-top:calc(-1 * var(--s-5)); padding-top:var(--s-6); }
 .discover-map svg { min-height:calc(var(--s-9) * 3); }
 .discover-tools { grid-template-columns:1fr; gap:var(--s-4); }
 .discover-tools .g-button { width:100%; }
 .discover-list > li > a { grid-template-columns:1fr; gap:var(--s-2); }
 .discover-list > li > a > strong,.discover-list p,.discover-item-address { grid-column:1; }
 .discover-item-category { grid-column:1; grid-row:auto; }
 .discover-detail-grid { grid-template-columns:1fr; gap:var(--s-5); }
 .discover-detail-grid .discover-map { position:static; order:2; }
 .discover-detail-grid .discover-map svg { min-height:calc(var(--s-9) * 3); }
 .discover-map-key { grid-template-columns:1fr; }
 .discover-apparatus { order:1; }
}
@media (prefers-reduced-motion:no-preference) {
 .discover-intro > div { animation:discover-arrive var(--dur) var(--ease) both; }
 .discover-intro .discover-map { animation:discover-arrive var(--dur) var(--ease) both; }
 .discover-list a { transition:transform var(--dur) var(--ease); }
 .discover-list a:hover { transform:translateX(var(--s-2)); }
 @keyframes discover-arrive { from { opacity:0; transform:translateY(var(--s-2)); } to { opacity:1; transform:none; } }
}
