/* Shared fields, states, panels and metrics; global tokens remain in style.css. */
.data-page [hidden]{display:none!important}
.state-message{padding:var(--space-7);margin:0 0 var(--space-7);border-left:4px solid var(--color-brand)}
.state-message h2{margin:0;font-size:1.3rem}
.state-message p{color:var(--color-muted);margin:10px 0}
.state-message p:empty{display:none}
.section-title{margin:0 0 var(--space-4)!important;font-size:1.3rem!important}
.data-page .tool-section{margin-top:var(--space-6)}
.metric-card{height:100%;margin:0;padding:var(--space-5);border-top:3px solid var(--color-brand)}
.metric-card dt{font-size:.82rem;font-weight:750;color:var(--color-muted)}
.metric-card dd{margin:var(--space-2) 0 0;font:850 clamp(1.8rem,4vw,2.5rem)/1.1 var(--font-mono);color:var(--color-primary)}
.metric-card small{display:block;margin-top:10px;color:var(--color-muted);font-size:.75rem}
.content-panel{padding:var(--space-6);height:100%;min-width:0}
.content-panel h2{margin:0 0 18px;font-size:1.2rem;color:var(--color-primary);line-height:1.35}
.content-panel .source-note{margin:-6px 0 18px;font-size:.8rem}
@media(max-width:575px){.content-panel,.metric-card,.state-message{padding:18px}
}
@media(prefers-reduced-motion:reduce){.data-page *{scroll-behavior:auto}
}
.activity-logbook{margin-bottom:var(--space-6)}
.filter-panel--large .tool-field{min-width:0}
.filter-panel--large input,.filter-panel--large select{width:100%;min-width:0;max-width:100%;min-height:44px}
.filter-panel--large .source-note{margin:var(--space-4) 0}
.action-group{display:flex;flex-wrap:wrap;gap:10px}
.action-group button{min-height:44px}
.field-status{margin:var(--space-5) 0;font-size:.9rem}
.field-status p{margin:0 0 var(--space-3)}
@media(max-width:767px){
.action-group button{flex:1 1 auto}
}
.activity-country-flag{display:inline-block;width:20px;height:15px;object-fit:contain;vertical-align:middle;margin-right:6px;flex:none}
#activityMetrics>div{min-width:0}
#activityMetrics dd{font-size:clamp(1.8rem,3vw,2.5rem);overflow-wrap:anywhere}
#activityMetrics small{line-height:1.5;overflow-wrap:anywhere}
/* EA1REK-97/98: one compact map and server-paged logbook composition. */
.data-explorer{padding:var(--space-5);min-width:0}
.data-explorer-row>div{min-width:0}
.data-explorer .content-panel{padding:0}
.data-explorer :is(#logbookFilters,.tool-filters){margin-bottom:22px}
.data-explorer .content-panel h2{font-size:1.1rem;margin-bottom:var(--space-3)}
.data-explorer .field-status{font-size:.8rem;margin:var(--space-2) 0}
.data-explorer .field-status p{margin-bottom:var(--space-2)}
@media(max-width:767px){.data-explorer{padding:var(--space-4)}
}
/* Align the complete desktop map and logbook columns. */
@media(min-width:992px){
.data-explorer .activity-logbook-column{display:flex;align-items:stretch}
}
@media(min-width:992px){
.data-explorer .activity-logbook-column{display:block}
}
/* Independent filter/logbook cards; the map remains outside a card. */
.data-explorer{padding:0}
.data-explorer :is(#logbookFilters,.tool-filters){padding:var(--space-4);margin-bottom:22px}
.data-explorer :is(#logbookFilters,.tool-filters) .row{align-items:end}
.data-explorer :is(#logbookFilters,.tool-filters) .action-group{padding-inline:var(--space-3)}
@media(min-width:992px){
.data-explorer :is(#logbookFilters,.tool-filters) .row{display:grid;grid-template-columns:minmax(0,1.6fr) repeat(2,minmax(0,1fr)) repeat(2,minmax(0,.85fr)) auto;gap:var(--space-3);margin:0}
.data-explorer :is(#logbookFilters,.tool-filters) .row>*{width:auto;margin:0;padding:0;min-width:0}
.data-explorer :is(#logbookReset,.filter-action){min-height:44px}
}
@media(max-width:991px){.data-explorer :is(#logbookFilters,.tool-filters) .action-group{width:100%}
}
.data-explorer :is(#logbookFilters,.tool-filters) input:not([type=hidden]),.data-explorer :is(#logbookFilters,.tool-filters) select,.data-explorer :is(#logbookReset,.filter-action){height:44px;min-height:44px;box-sizing:border-box;margin:0}
.data-explorer :is(#logbookFilters,.tool-filters) .tool-field{margin-bottom:0}
.data-explorer .activity-logbook-column{position:relative}
@media(min-width:992px){.data-explorer :is(#logbookFilters,.tool-filters) .row{grid-template-columns:minmax(0,1.4fr) repeat(2,minmax(0,1fr)) repeat(2,minmax(0,.75fr)) minmax(0,1.25fr) auto}
}
/* Keep the complete filter prompts visible at realistic desktop widths. */
@media(min-width:1200px){
.data-explorer :is(#logbookFilters,.tool-filters) .row{grid-template-columns:minmax(160px,1.35fr) repeat(2,minmax(115px,.8fr)) minmax(160px,1fr) minmax(160px,1fr) minmax(175px,1.2fr) auto;gap:var(--space-3)}
}
@media(min-width:992px) and (max-width:1199px){
.data-explorer :is(#logbookFilters,.tool-filters) .row{grid-template-columns:repeat(3,minmax(0,1fr))}
.data-explorer :is(#logbookFilters,.tool-filters) .action-group{grid-column:3;justify-content:flex-end}
}
@media(max-width:575px){.data-explorer :is(#logbookFilters,.tool-filters) .tool-field:has(select),.data-explorer :is(#logbookFilters,.tool-filters) .tool-field:has(input[type=date]){width:100%}
}
/* Shared filter capability for tools with three primary fields. */
@media(min-width:992px){.data-explorer :is(#logbookFilters,.tool-filters)[data-fields="3"] .row{grid-template-columns:repeat(2,minmax(0,1fr)) auto}
}
.data-explorer :is(#logbookFilters,.tool-filters)[data-fields="3"] .source-note{margin-bottom:0}
/* Shared compact metric interpretation; metadata keeps its secondary hierarchy. */
.metric-card .metric-context{font-weight:700;color:var(--color-text)}
.metric-card .metric-context.is-success{color:var(--color-success)}
.metric-card .metric-context.is-warning{color:var(--color-warning)}
.metric-card .metric-context.is-danger{color:var(--color-danger)}
/* Disabled filter actions remain visually inactive, including pointer hover. */
.data-explorer .filter-action:disabled{color:var(--color-muted);border-color:var(--color-border);background:transparent}
/* EA1REK-97: one compact summary surface, preserving existing metric content. */
:is(#activityMetrics,.summary-metrics){display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:0;gap:0;}
:is(#activityMetrics,.summary-metrics)>div{width:auto;min-width:0;margin:0;padding:10px 16px}
:is(#activityMetrics,.summary-metrics)>div+div{border-left:1px solid var(--color-border)}
:is(#activityMetrics,.summary-metrics) .metric-card{padding:0;margin:0;border:0;background:transparent;height:100%}
:is(#activityMetrics,.summary-metrics) .metric-card dt{font-size:.75rem;line-height:1.35}
:is(#activityMetrics,.summary-metrics) .metric-card dd{margin:5px 0;font-size:clamp(1.65rem,2.5vw,2.15rem);line-height:1.15}
:is(#activityMetrics,.summary-metrics) .metric-card small{display:block;margin-top:4px;font-size:.73rem;line-height:1.4;overflow-wrap:anywhere}
@media(max-width:991px){
:is(#activityMetrics,.summary-metrics){grid-template-columns:repeat(2,minmax(0,1fr))}
:is(#activityMetrics,.summary-metrics)>div{padding:8px 12px}
:is(#activityMetrics,.summary-metrics)>div:nth-child(3){border-left:0}
:is(#activityMetrics,.summary-metrics)>div:nth-child(n+3){border-top:1px solid var(--color-border)}
}
@media(max-width:575px){
:is(#activityMetrics,.summary-metrics)>div{padding:8px 10px}
:is(#activityMetrics,.summary-metrics) .metric-card dt{font-size:.7rem}
:is(#activityMetrics,.summary-metrics) .metric-card dd{font-size:1.4rem}
:is(#activityMetrics,.summary-metrics) .metric-card small{font-size:.7rem}
}
.activity-secondary-value{font-weight:600;color:inherit}
/* Shared summary supports the actual number of relevant metrics. */
:is(#activityMetrics,.summary-metrics):has(>div:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}
/* Metric interpretation is a state summary, above secondary metadata. */
:is(#activityMetrics,.summary-metrics) .metric-card .metric-context{font-size:1.1rem;line-height:1.4;font-weight:700}
/* Interpreted status can lead a metric while the technical reading remains secondary. */
:is(#activityMetrics,.summary-metrics) .metric-card .metric-context.metric-primary{font-family:var(--font-sans);font-size:clamp(1.35rem,2vw,1.8rem);line-height:1.2;font-weight:800;text-transform:uppercase;overflow-wrap:anywhere}
:is(#activityMetrics,.summary-metrics) .metric-card .metric-technical{font-family:var(--font-mono);font-size:1.1rem;font-weight:600;color:var(--color-primary)}
/* Practical metric explanations use the existing secondary text scale. */
:is(#activityMetrics,.summary-metrics) .metric-card .metric-explanation{font-size:.9rem}
:is(#activityMetrics,.summary-metrics) .metric-card dd.metric-detail,.activity-records dd.metric-detail{margin:0;font:inherit;color:inherit}
/* Reserve the compact summary slot across loading, error and ready states. */
.activity-summary-slot{min-height:176px}
.activity-summary-slot .state-message{min-height:176px;box-sizing:border-box}
@media(max-width:991px){.activity-summary-slot{min-height:224px}
.activity-summary-slot .state-message{min-height:224px}
}
/* Loaded metrics determine their own height; reserve space only while pending. */
.activity-summary-slot:has(#activityDashboard:not([hidden])){min-height:0}

/* One accented metric/ranking surface; layouts remain contextual. */
:is(#activityMetrics,.summary-metrics),#activityDistributions,.activity-records{border:1px solid var(--color-border);border-top:3px solid var(--color-brand);background:var(--color-surface)}
