:root{--bg:#f3f5f7;--surface:#fff;--ink:#1b2230;--muted:#5d6676;--line:#d9dee6;--accent:#1f5f7a;--accent-ink:#fff;--danger:#b42318;--win:#1a7f4b;--q-do:#c2410c;--q-schedule:#2259a0;--q-delegate:#9a6a08;--q-drop:#6b7280;--quad-fill-do:#f05a14;--quad-fill-schedule:#2f6fe0;--quad-fill-delegate:#d99a00;--quad-fill-drop:#7a8699;--quad-tint:.28;--font-display:"Bricolage Grotesque", "Avenir Next", "Segoe UI", sans-serif;--font-body:"IBM Plex Sans", "Helvetica Neue", Arial, sans-serif;--font-data:"IBM Plex Mono", ui-monospace, Menlo, monospace;--radius:10px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#12161d;--surface:#1a2029;--ink:#e6e9ef;--muted:#9aa3b2;--line:#2c3442;--accent:#6cb4d1;--accent-ink:#0d1218;--danger:#f2877b;--win:#5fd08f;--q-do:#f08a55;--q-schedule:#7aa8e6;--q-delegate:#e0b44f;--q-drop:#9aa3b2;--quad-tint:.28;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#12161d;--surface:#1a2029;--ink:#e6e9ef;--muted:#9aa3b2;--line:#2c3442;--accent:#6cb4d1;--accent-ink:#0d1218;--danger:#f2877b;--win:#5fd08f;--q-do:#f08a55;--q-schedule:#7aa8e6;--q-delegate:#e0b44f;--q-drop:#9aa3b2;--quad-tint:.28;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);font:15px/1.5 var(--font-body);margin:0}[hidden]{display:none!important}.page{max-width:1080px;padding-block:20px 48px;padding-left:max(16px, env(safe-area-inset-left,0px));padding-right:max(16px, env(safe-area-inset-right,0px));gap:16px;margin:0 auto;display:grid}main{gap:16px;display:grid}h1,h2{font-family:var(--font-display);text-wrap:balance;margin:0}h1{letter-spacing:-.01em;font-size:1.75rem;font-weight:700}h2{font-size:1.05rem;font-weight:700}.masthead{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 16px;display:flex}.masthead-side{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.theme-toggle{padding:4px 12px;font-size:.85rem;font-weight:500}.storage-mode{color:var(--muted);margin:0;font-size:.85rem}.storage-mode.warning{border:1px solid var(--danger);border-radius:var(--radius);color:var(--danger);flex-basis:100%;padding:10px 14px;font-size:.95rem;font-weight:600}.status{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);margin:0;padding:10px 14px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:16px}input[type=text],input[type=date],input[type=time],select{width:100%;min-width:0;font:inherit;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:9px 11px}input:disabled{opacity:.5}input[type=range]{width:100%;accent-color:var(--accent)}input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent);flex:none;margin:2px 0 0}button{font:inherit;border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;border-radius:8px;padding:8px 14px;font-weight:600}button[type=submit]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}button:disabled{opacity:.6;cursor:progress}button.danger{color:var(--danger);border-color:var(--danger)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}label{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-size:.8rem;font-weight:600}.field-error{color:var(--danger);margin:4px 0 0;font-size:.85rem}.capture{grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,.8fr) minmax(0,1.3fr);align-items:start;gap:12px 16px;display:grid}.capture-field-follow-up{align-self:end}.capture-field-label{grid-column:span 2}.follow-up{align-items:center;gap:8px;min-height:40px;display:flex}.follow-up label{letter-spacing:0;text-transform:none;color:var(--ink);font-size:.85rem;font-weight:500}.capture-field{gap:6px;min-width:0;display:grid}.capture-actions{align-self:end;gap:6px;min-width:0;display:grid}.capture-actions button{margin-bottom:1px;padding-block:9px}.capture-idea{align-items:center;gap:8px;display:flex}.capture-idea label{letter-spacing:0;text-transform:none;color:var(--ink);font-size:.85rem;font-weight:500}.slider{align-items:center;gap:10px;min-height:40px;display:flex}.score-value{font-family:var(--font-data);font-variant-numeric:tabular-nums;text-align:right;min-width:3ch}@media (width<=760px){.capture{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.capture-field-text,.capture-field-follow-up,.capture-field-label,.capture-actions{grid-column:1/-1}}.quadrants{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}@media (width<=640px){.quadrants{grid-template-columns:minmax(0,1fr)}}.quadrant{--q:var(--q-drop);background:var(--surface);border:1px solid var(--line);border-top:4px solid var(--q);border-radius:var(--radius);min-width:0;padding:14px 16px}.quadrant[data-quadrant=DO]{--q:var(--q-do)}.quadrant[data-quadrant=SCHEDULE]{--q:var(--q-schedule)}.quadrant[data-quadrant=DELEGATE]{--q:var(--q-delegate)}.quadrant header{grid-template-columns:1fr auto;align-items:baseline;gap:0 8px;margin-bottom:8px;display:grid}.quadrant h2{color:var(--q)}.quadrant .count{font-family:var(--font-data);font-variant-numeric:tabular-nums;color:var(--muted)}.quadrant .rule{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);grid-column:1/-1;margin:0;font-size:.78rem}.matrix{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);gap:8px;margin:0;padding:12px;display:grid;position:relative}.matrix svg{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;width:100%;max-width:560px;height:auto;font-family:var(--font-body);justify-self:center}.matrix .quad{fill:var(--qf);fill-opacity:var(--quad-tint)}.matrix .quad-do,.matrix .quad-name-do{--q:var(--q-do);--qf:var(--quad-fill-do)}.matrix .quad-schedule,.matrix .quad-name-schedule{--q:var(--q-schedule);--qf:var(--quad-fill-schedule)}.matrix .quad-delegate,.matrix .quad-name-delegate{--q:var(--q-delegate);--qf:var(--quad-fill-delegate)}.matrix .quad-drop,.matrix .quad-name-drop{--q:var(--q-drop);--qf:var(--quad-fill-drop)}.matrix .quad-name{letter-spacing:.04em;text-transform:uppercase;fill:color-mix(in srgb, var(--q) 70%, var(--ink));font-size:12px;font-weight:600}.matrix .mid-line,.matrix .frame{stroke:var(--line);stroke-width:1px;fill:none}.matrix .mid-line{stroke:var(--muted);stroke-opacity:.6}.matrix .axis-title{fill:var(--muted);font-size:12px}.matrix .dot{cursor:pointer}.matrix .dot .mark{stroke:var(--surface);stroke-width:1.5px;stroke-linejoin:round}.matrix .dot .ring{fill:none;stroke:var(--ink);stroke-width:2.5px}.matrix .dot:focus-visible{outline:none}.matrix .dot.selected .mark{stroke:var(--ink);stroke-width:2.5px}.matrix .dot:focus-visible .mark{stroke:var(--accent);stroke-width:3px}.matrix-caption{min-height:1.5em;color:var(--muted);text-align:center;overflow-wrap:anywhere;font-size:.9rem}.matrix-caption.has-card{text-align:left}.caption-card{background:var(--bg);border-left:5px solid var(--line);border-radius:0;gap:4px;padding:10px 14px;display:grid}.caption-card p{margin:0}.caption-title{font-family:var(--font-display);color:var(--ink);font-size:1.2rem;font-weight:500}.caption-meta{color:var(--muted);align-items:center;gap:6px;font-size:.9rem;display:flex}.caption-label{color:var(--ink);font-size:1.25rem;font-weight:600}.matrix-legend{flex-wrap:wrap;justify-content:center;gap:6px 16px;margin:0;padding:0;font-size:.85rem;list-style:none;display:flex}.matrix-legend li{align-items:center;gap:6px;display:inline-flex}.task-list{margin:0;padding:0;list-style:none;display:grid}.task{border-top:1px solid var(--line);grid-template-columns:auto minmax(0,1fr);gap:2px 10px;padding:8px 0;display:grid}.task:first-child{border-top:0}.task-text{overflow-wrap:anywhere}.task .task-edit{grid-column:2;justify-self:start;padding:2px 10px;font-size:.8rem;font-weight:500}.task.editing{grid-template-columns:minmax(0,1fr)}.task-edit-form{gap:8px;display:grid}.task-edit-form .slider label{min-width:7.5em}.task-edit-dates{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.task-edit-dates input[type=date],.task-edit-dates input[type=time]{width:auto}.task-edit-actions{gap:8px;display:flex}.task-meta{color:var(--muted);flex-wrap:wrap;grid-column:2;gap:4px 12px;font-size:.82rem;display:flex}.task-label{align-items:center;gap:6px;display:inline-flex}.next-up{background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--q-do);border-radius:0;padding:12px 16px}.next-up h2{letter-spacing:.06em;text-transform:uppercase;color:var(--q-do);margin-bottom:4px;font-size:.8rem}.next-up .task-text{font-family:var(--font-display);font-size:1.2rem;font-weight:500}.task-scores,.task-date{font-family:var(--font-data);font-variant-numeric:tabular-nums}.task-date.follow-up{border:1px dashed var(--muted);border-radius:999px;padding:0 6px}.empty{color:var(--muted);padding:6px 0;font-size:.9rem}.done-toggle{align-items:center;gap:8px;margin-top:16px;display:flex}.done-toggle label{text-transform:none;letter-spacing:0;font-size:.9rem}.done-list{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin-top:8px;padding:8px 16px}.done-list .task-text{color:var(--muted);text-decoration:line-through}.labels-panel summary{cursor:pointer;list-style-position:inside}.labels-panel summary h2{display:inline}#labels{gap:12px;margin-top:12px;display:grid}.label-new{flex-wrap:wrap;gap:8px;display:flex}.label-new input{flex:200px;width:auto}.label-new .field-error{flex-basis:100%}.label-list{margin:0;padding:0;list-style:none;display:grid}.label-row{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:8px;padding:8px 0;display:flex}.label-row:first-child{border-top:0}.label-row input{flex:180px;width:auto}.label-name{overflow-wrap:anywhere;flex:auto;min-width:0}.color-dot{border-radius:50%;flex:none;width:12px;height:12px;display:inline-block}.color-dot.mark{border-radius:0}.color-dot.mark svg{width:100%;height:100%;display:block}.color-dot.striped{background:repeating-linear-gradient(45deg, var(--muted) 0 2.4px, #fff 2.4px 4px)}.color-button{justify-content:center;align-items:center;width:34px;height:34px;padding:0;display:inline-flex}.color-button .color-dot{width:16px;height:16px}.color-picker{flex-basis:100%;grid-template-columns:repeat(auto-fill,minmax(28px,1fr));gap:6px;padding:8px 0 4px;display:grid}.swatch{aspect-ratio:1;background:var(--surface);border:2px solid var(--line);border-radius:6px;place-items:center;max-width:100%;padding:0;display:grid}.swatch .color-dot{width:18px;height:18px}.swatch[aria-pressed=true]{border-color:var(--ink);box-shadow:inset 0 0 0 2px var(--surface)}.label-confirm{color:var(--muted);font-size:.85rem}.label-row .field-error{flex-basis:100%}.label-archived summary{color:var(--muted);cursor:pointer}.label-archived ul{margin:6px 0 0;padding:0;list-style:none;display:grid}.label-archived .label-name{color:var(--muted)}.export{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.export button.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.export-note{color:var(--muted);flex-basis:100%;margin:0;font-size:.85rem}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.task-actions{flex-wrap:wrap;grid-column:2;gap:6px;display:flex}.task .task-star{padding:2px 10px;font-size:.85rem;font-weight:500;line-height:1.4}.task .task-star.picked{color:var(--accent);border-color:var(--accent)}.confirm-done{flex-wrap:wrap;grid-column:2;align-items:center;gap:6px 8px;font-weight:600;display:flex}.confirm-done button{padding:4px 12px;font-size:.85rem}.confirm-done .confirm-yes{background:var(--win);border-color:var(--win);color:var(--surface)}.today-card{background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:0;padding:12px 16px}.today-card.all-done{border-left-color:var(--win)}.today-card header{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.today-card h2{letter-spacing:.06em;text-transform:uppercase;color:var(--accent);margin-bottom:4px;font-size:.8rem}.today-progress{font-family:var(--font-data);font-variant-numeric:tabular-nums;color:var(--muted);margin:0}.today-message{color:var(--danger);margin:4px 0;font-size:.9rem}.today-cheer{font-family:var(--font-display);color:var(--win);margin:4px 0 8px;font-size:1.15rem;font-weight:500;position:relative}.today-card .task.is-done .task-text{color:var(--muted);text-decoration:line-through}.burst{pointer-events:none;position:absolute;top:50%;left:1.5em}.burst-dot{background:var(--win);opacity:0;border-radius:50%;width:7px;height:7px;margin:-3.5px;position:absolute}@media (prefers-reduced-motion:no-preference){.today-card .just-done input:checked{animation:.45s ease-out check-pop}.burst-dot{animation:.9s ease-out burst-out}}@keyframes check-pop{0%{transform:scale(1)}40%{transform:scale(1.6)}to{transform:scale(1)}}@keyframes burst-out{0%{opacity:1;transform:rotate(var(--angle)) translateX(0)}to{opacity:0;transform:rotate(var(--angle)) translateX(56px)}}.tabs{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:6px;display:flex}.tab{color:var(--muted);background:0 0;border:1px solid #0000;border-bottom:0;border-radius:8px 8px 0 0;margin-bottom:-1px;padding:8px 14px}.tab[aria-selected=true]{background:var(--surface);border-color:var(--line);color:var(--ink)}.view:not([hidden]){gap:16px;display:grid}.shelf-panel h2{margin-bottom:4px}.task.shelf-task{grid-template-columns:minmax(0,1fr)}.shelf-task .task-meta,.shelf-task .task-actions{grid-column:1}.shelf-task .task-actions button,.task .task-drop{padding:2px 10px;font-size:.8rem;font-weight:500}.shelf-note,.list-notice{color:var(--muted);margin:0;font-size:.9rem}.shelf-note:empty{display:none}.shelf-task .shelf-delete{color:var(--danger)}.shelf-confirm{flex-wrap:wrap;grid-column:1;align-items:center;gap:6px 8px;font-weight:600;display:flex}.shelf-confirm button{padding:4px 12px;font-size:.85rem}.shelf-confirm .confirm-delete{background:var(--danger);border-color:var(--danger);color:var(--surface)}.dot-menu{z-index:2;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);gap:2px;min-width:11rem;padding:6px;display:grid;position:absolute;box-shadow:0 6px 20px #0000002e}.dot-menu button{text-align:left;justify-self:stretch}.dot-menu p{margin:4px 6px;font-weight:600}.dot-menu .dot-menu-drop{color:var(--danger)}.dot-menu .chooser-title{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin:2px 6px 4px;font-size:.8rem;font-weight:600}.dot-menu .chooser-row{overflow-wrap:anywhere;align-items:center;gap:8px;display:flex}
