:root{--text:#1f2933;--muted:#5f6b76;--line:#e1e5ea;--accent:#0b6bcb;--done:#1a7f4b;--warn:#a4370a;--surface:#fff;--page:#f5f8fb}body{background:var(--page);color:var(--text);margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}.app{max-width:56rem;margin:0 auto;padding:1.5rem 1rem 3rem}.app h1{margin:0 0 1rem;font-size:.875rem;font-weight:600}.plan,.task-detail,.plan-status{background:var(--surface);border:1px solid var(--line);border-radius:.75rem;padding:1.25rem 1.5rem}.plan h2,.task-detail h2{margin:0 0 .25rem;font-size:1.25rem}.plan-intro{color:var(--muted);margin:0 0 1rem}.task-list{margin:0;padding:0;list-style:none}.task-row{border-top:1px solid var(--line);gap:.75rem;padding:.875rem 0;display:flex}.task-state{border:1.5px solid var(--muted);text-align:center;width:1.25rem;height:1.25rem;color:var(--surface);border-radius:50%;flex:none;font-size:.75rem;line-height:1.25rem}.task-state--complete{background:var(--done);border-color:var(--done)}.task-row--internal .task-state{border-radius:.25rem}.task-row--internal.task-row .task-row-title{color:var(--muted)}.task-row-body{flex-direction:column;gap:.2rem;min-width:0;display:flex}.task-row-title{color:var(--text);font-weight:600;text-decoration:none}.task-row-title:hover{text-decoration:underline}.task-row-title:focus-visible{text-decoration:underline}.task-row-meta{color:var(--muted);margin:0;font-size:.875rem}.task-marks{flex-wrap:wrap;gap:.375rem;display:flex}.task-mark{background:var(--page);border:1px solid var(--line);border-radius:1rem;padding:.125rem .5rem;font-size:.75rem;font-weight:600}.task-mark--past-due{color:var(--warn);border-color:var(--warn)}.task-mark--date-changed{color:var(--accent);border-color:var(--accent)}.task-detail-eyebrow{color:var(--muted);margin:0 0 .5rem}.task-detail-description{white-space:pre-line;background:var(--page);border:1px solid var(--line);border-radius:.5rem;margin:1rem 0;padding:.875rem 1rem}.task-actions{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:1rem;display:flex}.task-actions p{color:var(--warn);flex-basis:100%;margin:.25rem 0 0}button{font:inherit;border:1px solid var(--line);background:var(--surface);color:var(--accent);cursor:pointer;border-radius:.375rem;padding:.375rem .875rem}.button-primary{background:var(--accent);border-color:var(--accent);color:var(--surface)}button:disabled{opacity:.6;cursor:default}.back-link{color:var(--accent);margin-bottom:.75rem;display:inline-block}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}
