/* Keep routine status beside its action. Details are user-opened, never timed. */
.checkin-card,.reflection-card{min-height:0;align-self:start}
.checkin-footer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}
.draft-state-slot{min-width:0;min-height:48px;display:flex;align-items:center}
.draft-state{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:48px;max-width:100%;padding:8px 10px;border:1px solid #dddcd2;border-radius:9px;background:#f7f5ee;color:#536153;font-size:.82rem;line-height:1.5;text-align:left;overflow-wrap:anywhere}
.draft-state:hover{background:#eeeee5;border-color:#99af9d}
.draft-state>.icon{width:16px;height:16px}
.draft-state>.icon:last-child{width:13px;height:13px}
.draft-state.is-warning{background:#fff5df;border-color:#cfb178;color:#72511f}
.draft-change-note{margin:10px 0 0;padding:0 0 0 10px;border-left:3px solid #b6832b;color:#70501d;font-size:.82rem;line-height:1.7;overflow-wrap:anywhere;word-break:keep-all}
.draft-change-note[hidden]{display:none}
.goal-save-toolbar{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-top:22px}
.goal-save-toolbar>.btn{width:auto;min-width:0;flex:0 1 auto;font-size:.88rem;padding:12px 14px}
.goal-save-toolbar>.draft-state-slot{flex:1 1 105px}
.goal-save-toolbar .saved-note{font-size:.82rem;line-height:1.6}
.draft-selection{display:grid;gap:6px;margin:0 0 18px;padding:14px 16px;border:1px solid #d9e2d2;border-radius:12px;background:#f3f6ed;overflow-wrap:anywhere}
.draft-selection>span,.draft-selection>small{font-size:.82rem;color:#58664e}
.draft-selection>strong{font-size:1.1rem;color:#2e513b}
.draft-selection+.draft-change-note{margin:0 0 16px}
.draft-confirm-dialog{width:420px}
.draft-confirm-dialog .dialog-header{position:static;margin-bottom:16px}
.draft-confirm-dialog .dialog-header h2{font-size:1.25rem;line-height:1.6}
.draft-confirm-dialog .dialog-description{font-size:.9rem}
.draft-confirm-dialog .dialog-actions{position:static;flex-wrap:wrap;margin-top:20px;box-shadow:none}
.draft-confirm-dialog .dialog-actions>.btn{flex:1 1 130px;font-size:.88rem;min-height:48px}
.draft-confirm-dialog::backdrop{background:#25382c55}

/* Calculation/source explanations share one disclosure instead of two panels. */
.record-guide-details{grid-column:1/-1;min-width:0;border-block:1px solid #d6ded1;color:var(--muted)}
.record-guide-details>summary{display:flex;align-items:center;gap:10px;min-height:48px;padding:9px 4px;cursor:pointer;list-style:none;font-size:.85rem;font-weight:700;overflow-wrap:anywhere}
.record-guide-details>summary::-webkit-details-marker{display:none}
.record-guide-details>summary>.icon{width:18px;height:18px}
.record-guide-details>summary>.icon:last-child{margin-left:auto;transition:transform .15s ease}
.record-guide-details[open]>summary>.icon:last-child{transform:rotate(90deg)}
.record-guide-details>summary:focus-visible{outline:3px solid #bd7d2a;outline-offset:3px;border-radius:4px}
.record-guide-body{padding:4px 4px 14px;font-size:.85rem;line-height:1.8;word-break:keep-all;overflow-wrap:anywhere}
.record-guide-body>p+p{margin-top:10px}
.record-guide-body .record-source-summary{margin:14px 0 0;background:#f7f8f1}
.record-guide-body .record-source-summary p,.record-guide-body .record-source-summary .text-button{font-size:.8rem}
.record-guide-body .record-source-summary .text-button{min-height:48px}
.day-detail{min-height:0;align-self:start}
.day-detail .empty-content{margin:20px 0 0}
.day-detail .empty-illustration{width:48px;height:48px;margin:0 auto 12px}
.day-detail .empty-illustration>.icon{width:25px;height:25px}
.day-detail .empty-content p{margin-bottom:12px}
.day-detail .history-return{margin-top:12px;align-self:flex-start}
.records-layout{align-items:start}
.goals-layout>form.card{align-self:start}
.goals-layout{grid-template-columns:minmax(0,680px);justify-content:center;gap:12px}
@media(max-width:360px){
  .checkin-footer{gap:8px}
  .checkin-footer>.btn{padding-inline:12px}
  .draft-state{gap:5px;padding-inline:8px}
  .draft-state>.icon:last-child{display:none}
}
@media(prefers-reduced-motion:reduce){.record-guide-details>summary>.icon:last-child{transition:none}}
