/* ARVYNO 0.9.130 — Home presentation only.
   Loaded last to override historical rules without changing other pages. */
.page[data-page="today"] {
  --home-space: 12px;
  --home-inset: 16px;
  gap: var(--home-space) !important;
  align-content: start !important;
  grid-auto-rows: max-content;
}
.page[data-page="today"] .today-hero {
  padding: 11px var(--home-inset) 10px !important;
  border-radius: 20px !important;
  box-shadow: 0 3px 12px rgba(54,47,40,.012) !important;
}
.page[data-page="today"] .today-hero-grid { gap: 10px !important; }
.page[data-page="today"] .today-hero h1 {
  font-size: clamp(23px, 5.8vw, 27px) !important;
  line-height: 1.08 !important;
  overflow-wrap: anywhere;
}
.page[data-page="today"] .today-hero .today-hero-summary {
  margin: 5px 0 0 !important;
  font-size: 12px !important;
}
.page[data-page="today"] .today-score { min-width: 68px !important; }
.page[data-page="today"] .today-score .score { font-size: 25px !important; }
.page[data-page="today"] .today-score .date { margin-top: 2px !important; }
.page[data-page="today"] .today-progress { height: 4px !important; margin-top: 8px !important; }
.page[data-page="today"] .today-tasks-card,
.page[data-page="today"] .today-finance-card,
.page[data-page="today"] .today-goals-card {
  height: auto !important;
  min-height: 0 !important;
  padding: 12px var(--home-inset) 16px !important;
  border-radius: 20px !important;
  box-shadow: 0 3px 12px rgba(54,47,40,.012) !important;
}
.page[data-page="today"] .today-section-header {
  min-height: 32px !important;
  margin: 0 0 8px !important;
  align-items: center !important;
}
.page[data-page="today"] .today-section-title {
  margin: 0 !important;
  padding: 0 !important;
  font-weight: 650 !important;
}
.page[data-page="today"] .today-section-add {
  position: relative !important;
  width: 32px !important;
  min-width: 32px !important;
  height: 32px !important;
  min-height: 32px !important;
  flex: 0 0 32px !important;
  margin: 0 !important;
  padding: 0 !important;
  font-size: 24px !important;
  font-weight: 400 !important;
  line-height: 1 !important;
}
/* A small visible plus retains a 44px touch target. */
.page[data-page="today"] .today-section-add::after {
  content: "" !important;
  display: block !important;
  position: absolute;
  inset: -6px;
}
.page[data-page="today"] .task-list,
.page[data-page="today"] .goal-list {
  min-height: 0 !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  gap: 0 !important;
}
.page[data-page="today"] .home-task-row {
  grid-template-columns: 32px minmax(0,1fr) !important;
  gap: 12px !important;
  min-height: 52px !important;
  padding: 4px 0 !important;
}
.page[data-page="today"] .home-task-main {
  min-height: 44px !important;
  grid-template-columns: minmax(0,1fr) 32px !important;
  gap: 8px !important;
}
.page[data-page="today"] .today-task-empty,
.page[data-page="today"] .today-goals-card .mini-empty {
  min-height: 0 !important;
  padding: 8px 0 4px !important;
}
.page[data-page="today"] .today-finance-grid { gap: 8px !important; }
.page[data-page="today"] .today-money-tile {
  padding: 10px 12px !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: rgba(143,159,138,.055) !important;
  box-shadow: none !important;
}
.page[data-page="today"] .today-money-tile.expense { background: rgba(167,143,122,.055) !important; }
.page[data-page="today"] .today-money-tile span { margin-bottom: 4px !important; font-size: 11px !important; }
.page[data-page="today"] .today-money-tile b { font-variant-numeric: tabular-nums; }
.page[data-page="today"] .today-net-row { padding-top: 8px !important; }
/* Existing goal markup: title + percent, value line, then a fine progress bar. */
.page[data-page="today"] .goals-simple-home-row { min-height: 56px; }
.page[data-page="today"] .goals-simple-home-leading { width: 32px; flex-basis: 32px; }
.page[data-page="today"] .goals-simple-home-icon { width: 24px; height: 24px; font-size: 14px; background: transparent; color: #8b857e; }
.page[data-page="today"] .goals-simple-home-main {
  min-height: 56px;
  padding: 7px 0 7px 12px;
  gap: 4px 8px;
}
.page[data-page="today"] .goals-simple-home-copy { display: contents; }
.page[data-page="today"] .goals-simple-home-copy > b { grid-area: 1 / 1; min-width: 0; font-size: 16px; font-weight: 550; }
.page[data-page="today"] .goals-simple-home-copy > small {
  grid-area: 2 / 1 / 3 / -1;
  margin: 0;
  color: #625f58;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.35;
  white-space: normal;
  overflow-wrap: anywhere;
  font-variant-numeric: tabular-nums;
}
.page[data-page="today"] .goals-simple-home-copy > .progress-track { grid-area: 3 / 1 / 4 / -1; height: 3px; margin-top: 2px; }
.page[data-page="today"] .goals-simple-home-side { grid-area: 1 / 2; padding: 0; font-size: 12px; }
.page[data-page="today"] .goals-simple-home-side > i { font-size: 18px; line-height: 1; }
/* Daily check remains independent from the button that opens the goal. */
.page[data-page="today"] .goals-simple-home-check { position: relative; }
.page[data-page="today"] .goals-simple-home-check::after { content: ""; position: absolute; inset: -7px; }
/* Only Home's active item changes; other pages keep their current navigation. */
.page[data-page="today"] ~ .bottom-nav .nav-item.active {
  background: transparent;
  box-shadow: none;
  color: var(--sage-dark);
}
.page[data-page="today"] ~ .bottom-nav .nav-item.active .nav-icon {
  border-radius: 9px;
  background: rgba(143,159,138,.10);
  box-shadow: 0 0 0 4px rgba(143,159,138,.10);
}
@media (max-width: 390px) {
  .page[data-page="today"] { --home-inset: 14px; }
}

/* Goal progress is a span in v0.9.128; give its existing width a box. */
.page[data-page="today"] .goals-simple-home-copy > .progress-track > .progress-bar { display: block; }
@media (max-width: 360px) {
  .page[data-page="today"] .today-money-tile { padding-inline: 10px !important; }
  .page[data-page="today"] .today-money-tile b { font-size: 15px !important; }
}

/* 0.9.130 — flat surfaces, a shared row grid and calm interaction states. */
.page[data-page="today"] .today-hero {
  background: #eef0e9 !important;
  border-color: transparent !important;
}
.page[data-page="today"] .today-hero h1 { font-weight: 600 !important; }
.page[data-page="today"] .today-hero .today-hero-summary { color: #736f67 !important; }
.page[data-page="today"] .today-score .score {
  font-size: 24px !important;
  font-weight: 600 !important;
  color: #5d705d !important;
}
.page[data-page="today"] .today-score .date {
  color: #736f67 !important;
  font-size: 11px !important;
}
.page[data-page="today"] .today-progress { background: #e0e5db !important; }
.page[data-page="today"] .today-tasks-card,
.page[data-page="today"] .today-finance-card,
.page[data-page="today"] .today-goals-card {
  background: #fff !important;
  border-color: transparent !important;
  backdrop-filter: none !important;
}
.page[data-page="today"] .home-task-copy .task-title { font-weight: 550 !important; }
.page[data-page="today"] .home-task-copy .task-meta,
.page[data-page="today"] .today-section-period,
.page[data-page="today"] .today-money-tile span,
.page[data-page="today"] .today-net-row span { color: #78736c !important; }
.page[data-page="today"] .today-section-period { font-size: 11px !important; }
.page[data-page="today"] .today-money-tile b,
.page[data-page="today"] .today-net-row b { font-weight: 650 !important; }
/* The title begins at the same x position for tasks and goals.
   Plus and chevron centers share the same trailing 32px column. */
.page[data-page="today"] .home-task-chevron {
  width: 32px !important;
  text-align: center !important;
  font-size: 20px !important;
}
.page[data-page="today"] .goals-simple-home-side { gap: 8px; }
.page[data-page="today"] .goals-simple-home-side > i {
  display: grid;
  place-items: center;
  width: 32px;
  font-size: 20px;
}
.page[data-page="today"] .home-task-row .check {
  position: relative;
  justify-self: center;
  border-color: #aaa99f;
  transition: background-color .14s ease, border-color .14s ease, box-shadow .14s ease;
}
.page[data-page="today"] .home-task-row .check::after {
  content: "";
  position: absolute;
  inset: -10px;
}
.page[data-page="today"] .home-task-row.done .check,
.page[data-page="today"] .goals-simple-home-check.done {
  background: #7f9d84;
  border-color: #7f9d84;
}
.page[data-page="today"] .home-task-row.done .task-title {
  color: #8a847c !important;
  text-decoration-thickness: 1px;
}
.page[data-page="today"] .goals-simple-home-check {
  border-color: #aaa99f;
  transition: background-color .14s ease, border-color .14s ease, box-shadow .14s ease;
}
.page[data-page="today"] .home-task-main,
.page[data-page="today"] .goals-simple-home-main {
  border-radius: 8px;
  transition: background-color .14s ease;
}
.page[data-page="today"] .today-section-title,
.page[data-page="today"] .today-section-add,
.page[data-page="today"] .today-money-tile,
.page[data-page="today"] .today-net-row,
.page[data-page="today"] .mini-empty button {
  transition: background-color .14s ease, opacity .14s ease;
}
.page[data-page="today"] .home-task-main:active,
.page[data-page="today"] .goals-simple-home-main:active {
  background: rgba(143,159,138,.09);
}
.page[data-page="today"] .today-section-add:active,
.page[data-page="today"] .today-section-title:active,
.page[data-page="today"] .today-money-tile:active,
.page[data-page="today"] .today-net-row:active,
.page[data-page="today"] .mini-empty button:active {
  transform: none !important;
  opacity: .7 !important;
}
.page[data-page="today"] .home-task-row .check:active,
.page[data-page="today"] .goals-simple-home-check:not(:disabled):active {
  box-shadow: 0 0 0 5px rgba(143,159,138,.10);
}
.page[data-page="today"] button:focus-visible,
.page[data-page="today"] ~ .bottom-nav .nav-item:focus-visible {
  outline: 2px solid #71866f;
  outline-offset: 3px;
}
.page[data-page="today"] ~ .bottom-nav .nav-item small { font-size: 11px !important; }
.page[data-page="today"] ~ .bottom-nav .nav-item:not(.active) { color: #78736c; }
@media (prefers-reduced-motion: reduce) {
  .page[data-page="today"] button { transition: none !important; }
}
