:root {
  --pine-0: #dedbd2;
  --pine-1: #dce7d8;
  --pine-2: #bdd5b6;
  --pine-3: #8fbb83;
  --pine-4: #579361;
  --pine-5: #1f5d3a;
  --pine-dark: #17472e;
}
.brand span { color: var(--pine-4); }
.pine-dashboard { min-height: 675px; }
.pine-toolbar { min-height: 52px; }
.pine-toolbar > div { align-items: baseline; display: flex; gap: 12px; }
.pine-toolbar .eyebrow { margin: 0; }
.pine-toolbar strong { font-family: Georgia, "Times New Roman", serif; font-size: 14px; font-weight: 400; }
.pine-toolbar > p { color: var(--muted); font-size: 8px; letter-spacing: .08em; margin: 0; text-transform: uppercase; }
.loading-mark { border-right-color: var(--pine-4); }
.meter i { background: linear-gradient(90deg, var(--pine-2), var(--pine-5)); }
.pine-scale-section { border-bottom: 1px solid var(--line); padding: 20px 24px; }
.pine-scale-section h2 { font-family: Georgia, "Times New Roman", serif; font-size: 22px; font-weight: 400; line-height: 1.05; margin: 0 0 9px; }
.pine-scale-section > p:last-child { color: var(--muted); font-family: Georgia, "Times New Roman", serif; font-size: 12px; line-height: 1.5; margin: 0; }
.pine-selection-value { align-items: baseline; display: flex; gap: 8px; margin-top: 14px; }
.pine-selection-value[hidden] { display: none; }
.pine-selection-value strong { color: var(--pine-dark); font-family: Georgia, "Times New Roman", serif; font-size: 44px; font-weight: 400; letter-spacing: -.04em; line-height: .8; }
.pine-selection-value span { color: var(--muted); font-size: 9px; line-height: 1.35; max-width: 120px; }
.pine-species { padding: 18px 24px; }
.pine-species > div { align-items: center; border-top: 1px solid rgba(150,144,134,.35); display: grid; gap: 10px; grid-template-columns: 9px 1fr; padding: 9px 0; }
.pine-species i { background: var(--pine-4); border-radius: 50%; height: 7px; width: 7px; }
.pine-species div:last-child i { background: var(--pine-2); }
.pine-species span { display: grid; }
.pine-species strong { font-family: Georgia, "Times New Roman", serif; font-size: 12px; font-style: italic; font-weight: 400; }
.pine-species small { color: var(--muted); font-size: 8px; margin-top: 2px; text-transform: uppercase; }
.grid-cell { transition: fill .22s ease, opacity .15s ease, stroke .15s ease; }
.legend { overflow-x: auto; }
.legend-item { flex: 0 0 auto; }
@media (max-width: 780px) {
  .pine-toolbar { align-items: flex-start; }
  .pine-toolbar > div { align-items: flex-start; flex-direction: column; gap: 2px; }
}
