/* The Summary leads with results; targets remain supporting information. */
.summary-cards{margin-bottom:12px;gap:16px}
.summary-metric{min-height:167px;display:flex;flex-direction:column;justify-content:space-between}
.summary-metric .kpi-label{font-weight:600;color:#596a87}
.summary-metric .kpi-value{font-size:clamp(1.4rem,2vw,2.4rem);line-height:1.25;letter-spacing:-.8px;font-variant-numeric:tabular-nums;margin:17px 0 13px;overflow-wrap:anywhere}
.summary-metric .kpi-note{display:flex;flex-wrap:wrap;align-items:center;gap:5px 9px;font-size:.78rem;line-height:1.6;min-height:26px}
.summary-ratio{font-variant-numeric:tabular-nums;white-space:nowrap}
.summary-achieved{font-size:.72rem;font-weight:600;color:#426285;background:#ffffff9c;padding:2px 6px;border-radius:5px}
.summary-context{display:flex;align-items:baseline;justify-content:space-between;gap:18px;margin:0 0 24px;padding:0 2px;font-size:.78rem;line-height:1.7;color:#71809a}
.summary-context a{color:#4262b7;white-space:nowrap;font-weight:600;padding:6px 0}
.filters .date-filter{min-width:154px;flex:1.1}
.filters .date-filter input{background:#f7faff;border-color:#bfd0ef;min-width:0;width:100%}
#filterError{color:#b2374c;line-height:1.6}
.top-content-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;padding:0 24px 24px;align-items:start}
.top-content-card{min-width:0;background:#fff;border:1px solid #e2e9f4;border-radius:12px;overflow:hidden}
.top-content-visual{display:block;position:relative;aspect-ratio:3/4;background:#101d33;overflow:hidden}
.top-content-visual img{display:block;width:100%;height:100%;object-fit:contain;transition:transform .2s ease}
.top-content-visual:hover img{transform:scale(1.025)}
.top-position{position:absolute;top:10px;left:10px;min-width:28px;height:28px;display:grid;place-items:center;background:#fff;color:#283f69;font-size:.75rem;font-weight:750;border-radius:7px;box-shadow:0 3px 10px #0002}
.image-kind{position:absolute;bottom:9px;left:9px;padding:5px 7px;background:#0c172cce;color:#edf3ff;font-size:.62rem;line-height:1.2;border-radius:5px;backdrop-filter:blur(5px)}
.image-unavailable{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;padding:16px;text-align:center;font-size:.82rem;color:#647a9e;line-height:1.6}
.image-unavailable small{font-size:.7rem;color:#4265b4}
.top-content-visual.no-image{background:#eff4fc}
.top-content-visual.has-image .image-unavailable{display:none}
.top-content-copy{padding:14px 12px}
.top-content-copy>small{font-size:.65rem;color:#6880a1;text-transform:uppercase;letter-spacing:.4px}
.top-content-copy h3{font-family:inherit;font-size:.8rem;line-height:1.5;font-weight:650;margin:5px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.top-content-copy>p{font-size:.7rem;line-height:1.55;color:#7c8ba3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.2em}
.top-content-numbers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 8px;padding:13px 0 10px;margin-top:10px;border-top:1px solid #ecf0f7;font-variant-numeric:tabular-nums}
.top-content-numbers strong{grid-column:1/-1;font-size:1.05rem;color:#365dda;font-weight:700}
.top-content-numbers span{font-size:.76rem;color:#445a7b}
.top-content-numbers small{display:block;font-size:.65rem;font-weight:400;color:#7d8da6;margin-top:3px}
.top-content-detail{display:block;width:100%;text-align:left;background:transparent;border:0;border-top:1px solid #eef2f8;padding:11px 0 0;color:#4262ab;font-size:.72rem;min-height:38px}
.detail-content-image{display:block;width:100%;max-height:420px;object-fit:contain;background:#10203b;border-radius:10px;margin-bottom:20px}
.top-content-grid>.empty{grid-column:1/-1}
@media(max-width:1250px){.top-content-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.summary-cards{gap:12px}.summary-metric{padding:18px 15px}}
@media(max-width:800px){.top-content-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;padding:0 17px 18px}.summary-context{flex-direction:column;gap:2px}.summary-metric .kpi-value{font-size:clamp(1.35rem,4vw,1.9rem)}.summary-metric{min-height:162px}.summary-metric .kpi-note{font-size:.73rem}.filters .date-filter{min-width:0;flex-basis:calc(50% - 10px)}.top-content-copy{padding:13px}}
@media(max-width:420px){.top-content-grid{grid-template-columns:1fr}.top-content-visual{aspect-ratio:4/3}.top-content-copy h3{font-size:.9rem}.top-content-copy>p{min-height:0}.top-content-numbers{grid-template-columns:1.3fr 1fr 1fr}.top-content-numbers strong{grid-column:auto}.summary-metric{padding:16px 12px}.summary-achieved{font-size:.65rem}.summary-metric .kpi-value{letter-spacing:-.6px}.summary-metric .kpi-label{font-size:.75rem}}
