.week-shell { display: grid; grid-template-columns: 330px minmax(0,1fr); gap: 18px; align-items: start; }
.week-navigation { grid-column: 1/-1; display: grid; grid-template-columns: 42px 1fr 42px; gap: 12px; align-items: center; padding: 15px 18px; border: 1px solid var(--line); border-radius: 15px; background: white; text-align: center; }
.week-navigation a { display: grid; place-items: center; width: 40px; height: 40px; border: 1px solid var(--line); border-radius: 11px; color: var(--green-dark); text-decoration: none; font-size: 25px; }
.week-navigation small,.week-navigation b { display: block; }.week-navigation small { margin-bottom: 3px; color: var(--muted); font-size: 10px; letter-spacing: .08em; }
.week-days { display: grid; gap: 8px; }
.week-day { display: grid; grid-template-columns: 1fr auto; gap: 3px 12px; padding: 13px 15px; border: 1px solid var(--line); border-radius: 13px; background: white; color: var(--ink); text-decoration: none; }
.week-day span { font-weight: 700; }.week-day b { color: var(--muted); }.week-day small { grid-column: 1/-1; color: var(--muted); font-size: 11px; }
.week-day.selected { border-color: #83ae90; box-shadow: 0 0 0 3px rgba(53,123,74,.09); }.week-day.today { background: #eef6ed; }.week-day.complete { background: #f1f8f2; }.week-day.complete small { color: var(--green-dark); }.week-day.past:not(.complete) { background: #fbf7f0; border-color: #eee2ce; }.week-day.past:not(.complete) small { color: #8a704a; }
.week-detail { min-width: 0; }.day-summary { display: grid; grid-template-columns: auto 1fr; gap: 22px; align-items: center; margin-bottom: 12px; padding: 18px 20px; border: 1px solid #d8e7dc; border-radius: 15px; background: linear-gradient(100deg,#edf6ef,#fbfdfb); }.day-summary small { color: var(--green-dark); font-weight: 750; letter-spacing: .08em; }.day-summary h2 { margin: 4px 0 0; font-size: 20px; }.day-encouragement b,.day-encouragement span { display: block; }.day-encouragement span { margin-top: 4px; color: var(--muted); font-size: 12px; line-height: 1.5; }
.week-task-list { padding-top: 18px; }.week-task.is-missed { opacity: .86; }.week-status { display: grid; place-items: center; width: 26px; height: 26px; border-radius: 50%; font-size: 18px; }.week-status.missed { background: #f7eddd; color: #9b7747; }.week-status.dismissed { background: #eef0ef; color: #778079; }.week-status.planned { background: #edf4ef; color: var(--green); }
.gentle-actions { position: relative; }.gentle-actions>summary { display: grid; place-items: center; width: 32px; height: 32px; border: 1px solid var(--line); border-radius: 9px; background: white; color: var(--muted); cursor: pointer; list-style: none; }.gentle-actions>summary::-webkit-details-marker { display: none; }.gentle-actions>div { z-index: 20; position: absolute; top: 38px; right: 0; width: 250px; padding: 13px; border: 1px solid var(--line); border-radius: 12px; background: white; box-shadow: 0 12px 35px rgba(24,55,39,.16); }.gentle-actions form { display: grid; gap: 8px; }.gentle-actions form+form { margin-top: 9px; padding-top: 9px; border-top: 1px solid var(--line); }.gentle-actions label { display: grid; gap: 5px; color: var(--muted); font-size: 11px; }.gentle-actions input { padding: 8px; border: 1px solid var(--line); border-radius: 8px; }.quiet-action { border: 0; background: transparent; color: #7c6b55; cursor: pointer; text-align: left; }

@media (max-width: 900px) {
    .week-shell { grid-template-columns: 1fr; }.week-navigation,.week-days,.week-detail { grid-column: 1; grid-row: auto; }.week-days { grid-template-columns: repeat(7,minmax(145px,1fr)); overflow-x: auto; padding: 3px; }.week-day { min-width: 145px; }
}

@media (max-width: 600px) {
    .week-actions .filter-bar { display: none; }.week-actions { flex-direction: row; justify-content: flex-end; }.week-navigation { grid-template-columns: 38px 1fr 38px; padding: 11px; }.day-summary { grid-template-columns: 1fr; gap: 8px; }.week-task-list { padding: 15px; }.gentle-actions>div { position: fixed; top: auto; right: 15px; bottom: 92px; left: 15px; width: auto; }
}
