* { box-sizing: border-box; }
body { margin: var(--dl-zero); background: var(--dl-page); color: var(--dl-ink); font-family: var(--dl-font); font-variant-numeric: tabular-nums lining-nums; }
.today-page { width: 100%; max-width: var(--dl-content-max); margin-inline: auto; padding: max(var(--dl-screen-margin), env(safe-area-inset-top)) max(var(--dl-screen-margin), env(safe-area-inset-right)) max(var(--dl-space-6), env(safe-area-inset-bottom)) max(var(--dl-screen-margin), env(safe-area-inset-left)); }
.today-header, .today-section { margin-block-end: var(--dl-section-gap); }
.today-eyebrow, .today-meta, .today-detail { color: var(--dl-muted); font-size: var(--dl-type-meta-size); line-height: var(--dl-type-meta-line); }
.today-eyebrow { font-weight: var(--dl-weight-bold); letter-spacing: var(--dl-letter-spacing); text-transform: uppercase; }
.today-title { margin: var(--dl-space-1) var(--dl-zero); font-size: var(--dl-type-screen-size); line-height: var(--dl-type-screen-line); font-weight: var(--dl-weight-title); }
.today-title-row { display: flex; align-items: center; gap: var(--dl-tile-gap); justify-content: space-between; }
.today-badge { background: var(--dl-card); border-radius: var(--dl-radius-pill); box-shadow: var(--dl-shadow-card); color: var(--dl-brass); font-size: var(--dl-type-chip-size); line-height: var(--dl-type-chip-line); font-weight: var(--dl-weight-bold); padding: var(--dl-space-2) var(--dl-space-3); }
.today-heading { margin: var(--dl-zero) var(--dl-zero) var(--dl-card-gap); font-size: var(--dl-type-section-size); line-height: var(--dl-type-section-line); font-weight: var(--dl-weight-bold); border-block-end: var(--dl-one-px) solid var(--dl-line); padding-block-end: var(--dl-space-2); }
.today-card, .today-row, .today-tile { background: var(--dl-card); border-radius: var(--dl-radius-card); box-shadow: var(--dl-shadow-card); }
.today-card { padding: var(--dl-card-padding); }
.today-loading-row { background: var(--dl-fill); border-radius: var(--dl-radius-card); display: block; min-block-size: var(--dl-row-min-height); }
.today-signed-out, .today-first-day { display: grid; gap: var(--dl-space-2); }
.today-signed-out-title { margin: var(--dl-zero); font-size: var(--dl-type-section-size); line-height: var(--dl-type-section-line); font-weight: var(--dl-weight-bold); }
.today-card + .today-card, .today-row + .today-row { margin-block-start: var(--dl-card-gap); }
.today-urgent { background: var(--dl-red); box-shadow: var(--dl-shadow-red); color: var(--dl-card); }
.today-needs { background: var(--dl-brassTint); box-shadow: var(--dl-shadow-brass); }
.today-yesterday { background: var(--dl-brassTint); }
.today-desk-stale { background: var(--dl-brassTint); box-shadow: var(--dl-shadow-brass); color: var(--dl-brass); }
.today-action { background: var(--dl-card); border: var(--dl-zero); border-radius: var(--dl-radius-card); box-shadow: var(--dl-shadow-button); color: var(--dl-ink); inline-size: var(--dl-full); min-block-size: var(--dl-control-primary-height); padding: var(--dl-card-padding); text-align: start; font: inherit; font-weight: var(--dl-weight-bold); }
.today-row { min-block-size: var(--dl-row-min-height); padding: var(--dl-card-padding); }
button.today-row { border: var(--dl-zero); color: inherit; font: inherit; inline-size: var(--dl-full); text-align: start; }
button.today-row.today-urgent { color: var(--dl-card); }
.today-row-title { margin: var(--dl-zero); font-size: var(--dl-type-row-size); line-height: var(--dl-type-row-line); font-weight: var(--dl-weight-bold); }
.today-row-detail { margin: var(--dl-space-1) var(--dl-zero) var(--dl-zero); font-size: var(--dl-type-detail-size); line-height: var(--dl-type-detail-line); }
.today-urgent-top { display: flex; align-items: baseline; justify-content: space-between; gap: var(--dl-space-2); }
.today-urgent-eyebrow { color: var(--dl-card); display: inline-flex; align-items: center; gap: var(--dl-space-1); font-size: var(--dl-type-chip-size); line-height: var(--dl-type-chip-line); font-weight: var(--dl-weight-bold); letter-spacing: var(--dl-letter-spacing); text-transform: uppercase; }
.today-urgent-eyebrow img { inline-size: var(--dl-icon-size); block-size: var(--dl-icon-size); filter: invert(var(--dl-one)); }
.today-urgent-time { color: var(--dl-card); opacity: var(--dl-opacity-muted); font-size: var(--dl-type-meta-size); line-height: var(--dl-type-meta-line); }
.today-urgent-summary { color: var(--dl-card); display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: var(--dl-two); overflow: hidden; margin: var(--dl-space-3) var(--dl-zero); font-size: var(--dl-type-section-size); line-height: var(--dl-type-section-line); font-weight: var(--dl-weight-bold); }
.today-urgent-line { block-size: var(--dl-one-px); background: var(--dl-card); opacity: var(--dl-opacity-hairline); }
.today-urgent-caller { color: var(--dl-card); margin: var(--dl-space-3) var(--dl-zero) var(--dl-zero); font-size: var(--dl-type-row-size); line-height: var(--dl-type-row-line); font-weight: var(--dl-weight-bold); }
.today-tag { display: inline-block; margin-block-start: var(--dl-space-2); border-radius: var(--dl-radius-pill); box-shadow: var(--dl-shadow-card); font-size: var(--dl-type-chip-size); line-height: var(--dl-type-chip-line); padding: var(--dl-space-1) var(--dl-space-2); }
.today-fields { display: grid; gap: var(--dl-space-2); grid-template-columns: var(--dl-two-grid); margin: var(--dl-space-3) var(--dl-zero) var(--dl-zero); }
.today-field { border: var(--dl-zero); border-radius: var(--dl-radius-small-control); box-shadow: var(--dl-shadow-card); padding: var(--dl-space-2); }
.today-field dt { color: var(--dl-muted); font-size: var(--dl-type-chip-size); line-height: var(--dl-type-chip-line); }
.today-field dd { margin: var(--dl-space-1) var(--dl-zero) var(--dl-zero); font-size: var(--dl-type-meta-size); line-height: var(--dl-type-meta-line); font-weight: var(--dl-weight-bold); }
.today-field-absent { border: var(--dl-border-dashed); color: var(--dl-faint); }
.today-field-absent dt, .today-field-absent dd { color: var(--dl-faint); }
.today-grid { display: grid; grid-template-columns: var(--dl-today-grid); gap: var(--dl-tile-gap); }
.today-tile { min-block-size: var(--dl-tile-min-height); padding: var(--dl-card-padding) var(--dl-tile-side-padding) var(--dl-tile-side-padding); }
button.today-tile { border: var(--dl-zero); color: var(--dl-ink); font: inherit; text-align: start; cursor: pointer; }
button.today-tile:active { background: var(--dl-segment); transition: background-color 80ms; }
.today-tile-count { display: block; font-size: var(--dl-type-tile-size); line-height: var(--dl-type-tile-line); font-weight: var(--dl-weight-bold); }
.today-tile-label { display: block; color: var(--dl-graphite); font-size: var(--dl-type-meta-size); line-height: var(--dl-type-meta-line); font-weight: var(--dl-weight-medium); }
.today-unknown { border: var(--dl-border-dashed); color: var(--dl-muted); }
.today-unknown-marker { display: inline-block; margin-inline-end: var(--dl-space-1); font-size: var(--dl-type-chip-size); line-height: var(--dl-type-chip-line); font-weight: var(--dl-weight-bold); }
.today-header-absent { border: var(--dl-border-dashed); color: var(--dl-faint); display: inline-block; padding-inline: var(--dl-space-1); }
.today-mark-absent { border: var(--dl-border-dashed); box-shadow: none; }
.today-empty { font-size: var(--dl-type-detail-size); line-height: var(--dl-type-detail-line); }
.today-sign-in-brand { display: grid; gap: var(--dl-space-2); margin-block-end: var(--dl-section-gap); }
.today-sign-in-brand img { inline-size: var(--dl-mark-size); block-size: var(--dl-mark-size); }
.today-sign-in-brand h1 { margin: var(--dl-zero); font-size: var(--dl-type-tile-size); line-height: var(--dl-type-tile-line); font-weight: var(--dl-weight-title); }
.today-sign-in-brand p { margin: var(--dl-zero); color: var(--dl-muted); font-size: var(--dl-type-meta-size); line-height: var(--dl-type-meta-line); }
