/* Day view. Read-only cards in the nutrition style: 44px fold rows, 8px gaps.
   Text stays on the solid card colour so it stays readable over the shell art. */

.day-view {
  display: flex;
  flex-direction: column;
  gap: var(--jn-gap, 8px);
  width: 100%;
  max-width: 100%;
  min-width: 0;
  color: var(--dx-text);
  overflow-wrap: anywhere;
}

.day-view,
.day-view * {
  box-sizing: border-box;
  min-width: 0;
}

.day-fold {
  max-width: 100%;
  background: var(--dx-card-solid);
  color: var(--dx-text);
}

.day-view .fold,
.day-view .jn-card {
  margin: 0;
}

.day-view .fold-emoji {
  flex: none;
  font-size: 1rem;
  line-height: 1;
}

.day-view .day-fold:not(.is-open) .fold-line {
  flex: 1 1 auto;
}

.day-fold-body {
  max-width: 100%;
  padding-top: 2px;
}

.day-field {
  margin: 0 0 6px;
  max-width: 100%;
}

.day-field:last-child {
  margin-bottom: 0;
}

.day-label-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px;
  max-width: 100%;
}

.day-label {
  margin: 0;
  color: var(--jn-muted, #4b453f);
  font-size: 0.85rem;
  font-weight: 600;
  line-height: 1.35;
}

.day-copy,
.day-note,
.day-missing,
.day-list,
.day-carry-text {
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: break-word;
}

.day-copy {
  margin: 1px 0 0;
  line-height: 1.35;
  white-space: pre-wrap;
}

.day-list {
  margin: 1px 0 0;
  padding-left: 1.2rem;
}

.day-list li {
  margin: 0;
  line-height: 1.35;
}

.day-priorities li {
  line-height: 1.35;
}

.day-note,
.day-missing {
  margin: 4px 0 0;
  color: var(--jn-muted, #4b453f);
  line-height: 1.35;
}

.day-label-row .day-label {
  flex: 1 1 0;
  min-width: 0;
}

.day-sub-emoji {
  margin-right: 0.28em;
  font-size: 0.95rem;
  line-height: 1;
}

:root {
  --day-pill-bg: #dbeafe;
  --day-pill-line: #2563eb;
  --day-tint-focus: #e8eefb;
  --day-tint-priorities: #e6f5f2;
  --day-tint-skip: #f3e9fb;
  --day-tint-grateful: #f1f6e4;
  --day-tint-great: #e7f4fb;
  --day-tint-obstacle: #eef0f3;
  --day-tint-affirm: #fbf6e8;
}

html.dark {
  --day-pill-bg: #1e3a5f;
  --day-pill-line: #93c5fd;
  --day-tint-focus: #17243a;
  --day-tint-priorities: #132e2b;
  --day-tint-skip: #2a2038;
  --day-tint-grateful: #243016;
  --day-tint-great: #142838;
  --day-tint-obstacle: #262a30;
  --day-tint-affirm: #332b16;
}

.day-view .day-accent {
  padding: 4px 8px 5px;
  border-left: 3px solid var(--day-accent, var(--jn-s4));
  border-radius: 0 8px 8px 0;
  background: var(--day-tint, transparent);
  color: inherit;
}

.day-view .day-accent[data-accent="focus"] { --day-accent: var(--jn-s0); --day-tint: var(--day-tint-focus); }
.day-view .day-accent[data-accent="priorities"] { --day-accent: var(--jn-s1); --day-tint: var(--day-tint-priorities); }
.day-view .day-accent[data-accent="skip"] { --day-accent: var(--jn-s2); --day-tint: var(--day-tint-skip); }
.day-view .day-accent[data-accent="grateful"] { --day-accent: var(--jn-s6); --day-tint: var(--day-tint-grateful); }
.day-view .day-accent[data-accent="great"] { --day-accent: var(--jn-s5); --day-tint: var(--day-tint-great); }
.day-view .day-accent[data-accent="obstacle"] { --day-accent: var(--jn-s4); --day-tint: var(--day-tint-obstacle); }
.day-view .day-accent[data-accent="affirm"] { --day-accent: var(--jn-s3); --day-tint: var(--day-tint-affirm); }

.day-view .day-focus-pill {
  display: inline-block;
  max-width: 100%;
  margin: 2px 0 0;
  padding: 1px 10px;
  border: 1px solid var(--day-pill-line, #2563eb);
  border-radius: 999px;
  background: var(--day-pill-bg, #dbeafe);
  color: inherit;
  font-weight: 600;
  line-height: 1.35;
  overflow-wrap: anywhere;
  word-break: break-word;
}

.day-chips {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  margin: 0 0 6px;
  max-width: 100%;
}

.day-view .jn-chip {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  height: 28px;
  max-height: 28px;
  max-width: 100%;
  padding: 0 8px;
  border: 1px solid var(--jn-line, #4b453f);
  border-radius: 999px;
  background: var(--dx-card-solid, #fff);
  color: var(--dx-text, #0d0b08);
  font-size: 0.8rem;
  font-weight: 600;
  line-height: 1;
  white-space: nowrap;
}

.day-view .jn-dots {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  flex: none;
}

.day-view .jn-dot {
  display: block;
  width: 8px;
  height: 8px;
  min-width: 8px;
  flex: none;
  border: 1.5px solid var(--jn-dot-off, var(--jn-muted, #4b453f));
  border-radius: 50%;
  background: transparent;
}

.day-view .jn-dot.on {
  border-color: var(--jn-dot-on, #1d4ed8);
  background: var(--jn-dot-on, #1d4ed8);
}

.day-eve-dots {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  flex: none;
  margin-left: auto;
}

.day-fold.is-open .day-eve-dots {
  display: none;
}

.day-yesterday {
  margin-top: 8px;
}

.day-carry-list {
  list-style: none;
  margin: 4px 0 0;
  padding: 0;
}

.day-carry {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 8px;
  min-height: var(--jn-tap, 32px);
  margin: 0 0 6px;
}

.day-carry-mark {
  flex: none;
  width: 1.25rem;
  line-height: 1;
  text-align: center;
}

.day-carry-text {
  flex: 1 1 auto;
  line-height: 1.35;
}

.day-view a:focus-visible,
.day-view button:focus-visible {
  outline: 3px solid var(--dx-accent);
  outline-offset: 2px;
}

.day-view .sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.day-reflect {
  margin: 0;
  padding: 0;
  min-width: 0;
  max-width: 100%;
}

@media (prefers-reduced-motion: reduce) {
  .day-view *,
  .day-view *::before,
  .day-view *::after {
    animation: none !important;
    transition: none !important;
    scroll-behavior: auto !important;
  }
}
