Summaries added — every column in COL_DESCRIPTIONS got a short (1–2 sentences) and a link to its reference row. Full desc text kept intact for the day-tab metric labels.
Popup rewired — renders the summary plus a "More about this column →" link, opening in a new tab.
Link styling — .col-info-more pinned below the summary so it stays visible if the text scrolls; centred on mobile with the rest.
Anchors on the reference page — 35 row ids in columns.html, one per column key.
New "Rows" row — the hour/interval header had a popup but no matching row on the reference page; added.
Landing highlight — tr:target gets a gold bar and tint, with scroll offset so the nav doesn't cover it.
This commit is contained in:
Fraxle
2026-08-03 18:06:09 +01:00
parent 2035edad23
commit 8f161dc8cb
18 changed files with 668 additions and 123 deletions
+48 -4
View File
@@ -722,8 +722,40 @@
text-transform: uppercase;
border: 1.5px solid #c9b08a;
margin-bottom: 18px;
display: flex;
align-items: center;
justify-content: center;
flex-wrap: wrap;
gap: 10px 14px;
}
.utci-status-msg { text-align: center; }
.utci-status-retry {
flex: 0 0 auto;
padding: 6px 14px;
border: 1.5px solid currentColor;
border-radius: 999px;
background: #fffcf2;
color: inherit;
font-family: inherit;
font-size: 11px;
font-weight: 700;
letter-spacing: 0.07em;
text-transform: uppercase;
cursor: pointer;
transition: background 0.2s, box-shadow 0.2s;
}
.utci-status-retry:hover:not(:disabled) { background: #fef3dc; }
.utci-status-retry:focus-visible {
outline: none;
box-shadow: 0 0 0 3px currentColor;
}
.utci-status-retry:disabled { cursor: default; opacity: 0.55; }
/* acquiring-data popup overlay */
.acquiring-overlay {
position: fixed;
@@ -1497,6 +1529,14 @@
width: 100%;
}
/* "The Week Ahead" — sits under "At a glance" in the rail. Separate panel
because it describes the whole forecast range, not the selected day, and
putting a week-scoped line inside a day-scoped box reads as an error. */
.insight-panel--week {
width: 100%;
margin-top: 10px;
}
/* ── Pro: Export day data ──────────────────────────────────────────────── */
.export-panel {
margin-top: 10px;
@@ -1721,7 +1761,8 @@
.glance-rail { grid-column: 1; grid-row: 1; }
.table-main { grid-column: 2; grid-row: 1; }
.insight-panel--glance .insight-row {
.insight-panel--glance .insight-row,
.insight-panel--week .insight-row {
display: grid;
grid-template-columns: 20px 1fr;
grid-template-areas:
@@ -1731,14 +1772,17 @@
row-gap: 1px;
align-items: start;
}
.insight-panel--glance .insight-icon {
.insight-panel--glance .insight-icon,
.insight-panel--week .insight-icon {
grid-area: icon;
padding-top: 1px;
}
.insight-panel--glance .insight-label {
.insight-panel--glance .insight-label,
.insight-panel--week .insight-label {
grid-area: label;
}
.insight-panel--glance .insight-value {
.insight-panel--glance .insight-value,
.insight-panel--week .insight-value {
grid-area: value;
text-align: left; /* value sits left-aligned under its label */
}