/* Hermes feature request queue */
.feedback-save:disabled { opacity:.55; cursor:wait; }
.feedback-status.error { color:#b42318; }
.feedback-recent { margin-top:14px; padding-top:12px; border-top:1px solid var(--line); color:var(--muted); font-size:11px; line-height:1.5; }
.feedback-recent p { margin:5px 0; }

/* Site-wide readability pass */
:root {
  --muted:#475467;
  --text-caption:.75rem;
  --text-secondary:.875rem;
  --text-body:1rem;
  --leading-body:1.6;
}
body {
  font-size:var(--text-body);
  line-height:var(--leading-body);
  font-kerning:normal;
  text-rendering:optimizeLegibility;
}
h2 { font-size:1.875rem; }
.action-card h2 { font-size:2.125rem; }
.eyebrow,.hero-kicker,.section-label {
  font-size:var(--text-caption);
  line-height:1.45;
}
.share-button { font-size:.8125rem; }
.hero-bottom p {
  color:#e4e7ec;
  font-size:.9375rem;
  line-height:1.7;
}
.date-stamp,.day-no,.stay-meta b,.schedule-items time,.expense-totals strong,.action-clock strong,.weather-reading strong {
  font-variant-numeric:tabular-nums;
}
.action-item { min-height:72px; }
.action-item b { font-size:.9375rem; }
.action-item small {
  margin-top:4px;
  font-size:.8125rem;
  line-height:1.5;
  opacity:.82;
}
.day-card b,.day-more { font-size:var(--text-caption); }
.day-card h3 { font-size:1.125rem; }
.day-card p {
  font-size:var(--text-secondary);
  line-height:1.65;
}
.pill,.stay-card .mono,.stay-meta span {
  font-size:var(--text-caption);
}
.stay-section .section-label,.stay-card .mono,.address,.stay-cost span {
  color:#d0d5dd;
}
.stay-phone { margin:12px 0 0; font-size:var(--text-secondary); color:var(--muted); }
.stay-phone a { color:var(--ink); font-weight:700; text-decoration:underline; text-underline-offset:3px; }
.stay-card h3 {
  font-size:1.375rem;
  line-height:1.15;
}
.address {
  font-size:var(--text-secondary);
  line-height:1.7;
}
.stay-meta b { font-size:1rem; }
.stay-cost span { font-size:.8125rem; }
.person b { font-size:var(--text-secondary); }
.person small {
  font-size:var(--text-caption);
  line-height:1.5;
}
.ticket-header a { font-size:var(--text-caption); }
.status-row {
  min-height:56px;
  font-size:var(--text-secondary);
}
.status-row span:last-child { font-size:.8125rem; }
.event-note b,.todo-card span,.cost-card span {
  font-size:var(--text-caption);
}
.event-note p,.todo-card p,.muted-note {
  font-size:var(--text-secondary);
  line-height:1.65;
}
.todo-card em,.cost-card small { font-size:var(--text-caption); }
.footer p {
  font-size:var(--text-secondary);
  line-height:1.55;
}
.footer span { font-size:var(--text-caption); }
.copy-address { font-size:var(--text-caption); }
.bottom-nav a {
  min-height:59px;
  height:59px;
  align-self:center;
  padding:4px 0 0;
  border-radius:16px;
  justify-content:center;
  font-size:var(--text-caption);
}
.bottom-nav a[href="flights.html"] { font-size:.6875rem; }
.feedback-panel-head .eyebrow,.feedback-status { font-size:var(--text-caption); }
.feedback-lede {
  font-size:var(--text-secondary);
  line-height:1.6;
}
.feedback-panel textarea {
  font-size:1rem;
  line-height:1.6;
}
.feedback-actions button { font-size:.8125rem; }
.schedule-day-head span { font-size:var(--text-caption); }
.schedule-items li {
  font-size:.9375rem;
  line-height:1.5;
}
.schedule-items time { font-size:var(--text-caption); }
.schedule-items small,.schedule-note {
  font-size:.8125rem;
  line-height:1.6;
}
.event-tabs a { font-size:var(--text-caption); }
.official-button {
  font-size:var(--text-secondary);
  line-height:1.4;
}
.official-inline { font-size:.8125rem; }
.event-media-head span,.event-media-head strong,.event-media-head small {
  font-size:var(--text-caption);
}
.event-media-card figcaption {
  font-size:var(--text-caption);
  line-height:1.5;
}
.event-media-card figcaption span { font-size:.6875rem; }
.check-list > div {
  min-height:54px;
  font-size:var(--text-secondary);
  line-height:1.5;
}
.check-list b { font-size:var(--text-caption); }
.check-list em { font-size:.6875rem; }
.link-card p,.section-intro {
  font-size:.9375rem;
  line-height:1.65;
}
.link-card a { font-size:.8125rem; }
.date-col > div {
  font-size:.8125rem;
  line-height:1.55;
}
.date-col > div small { font-size:var(--text-caption); }
.traveler { font-size:.8125rem; }
.flight-cell strong { font-size:var(--text-secondary); }
.expense-form label { font-size:var(--text-caption); }
.expense-form input,.expense-form select {
  min-height:46px;
  font-size:1rem;
  line-height:1.4;
}
.form-message { font-size:var(--text-secondary); }
.expense-item-main b { font-size:.9375rem; }
.expense-item-main small {
  font-size:.8125rem;
  line-height:1.55;
}
.expense-actions button { font-size:var(--text-caption); }
.empty-expenses { font-size:.9375rem; }
.dashboard-kicker,.dashboard-label,.dashboard-live {
  font-size:var(--text-caption);
  line-height:1.4;
}
.action-dashboard-card { padding:14px 12px; }
.action-clock strong {
  margin-top:10px;
  font-size:clamp(1.5rem,6.4vw,2rem);
  line-height:1;
  letter-spacing:-.06em;
  white-space:nowrap;
}
.action-clock time {
  color:#e4e7ec;
  font-size:var(--text-caption);
  line-height:1.5;
}
.action-weather > span:last-child {
  color:#e4e7ec;
  font-size:.8125rem;
}
.weather-meta,.dashboard-status {
  color:#d0d5dd;
  font-size:var(--text-caption);
  line-height:1.55;
}
@media (max-width:420px) {
  .action-dashboard-grid { grid-template-columns:1fr; }
  .action-clock strong { font-size:2rem; }
}
@media (max-width:380px) {
  .dashboard-kicker,.dashboard-label,.dashboard-live,.weather-meta,.dashboard-status { font-size:var(--text-caption); }
}

