:root{--safe-top:env(safe-area-inset-top,0px);--accent:#4f46e5;--accent-contrast:#fff;--accent-soft:#eef2ff;--bg:#f6f7f9;--surface:#fff;--surface-2:#f0f1f4;--border:#e3e5ea;--text:#1b1d22;--text-muted:#6b7280;--danger:#dc2626;--danger-soft:#fef2f2;--ok:#16a34a;--radius:12px;--radius-sm:8px;--shadow:0 1px 2px #10121b0f, 0 4px 16px #10121b0f;--tap:44px;--font:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}@media (prefers-color-scheme:dark){:root{--accent:#818cf8;--accent-contrast:#14151a;--accent-soft:#23263a;--bg:#121317;--surface:#1b1d22;--surface-2:#23262d;--border:#2c2f37;--text:#e8e9ec;--text-muted:#9aa0aa;--danger:#f87171;--danger-soft:#2a1b1c;--ok:#4ade80;--shadow:0 1px 2px #0000004d, 0 4px 16px #0000004d}}*{box-sizing:border-box}html,body,#root{height:100%}body{font-family:var(--font);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.4}button{font-family:inherit;font-size:inherit;cursor:pointer}input,textarea,select{color:var(--text);font-family:inherit;font-size:16px}h1,h2,h3{margin:0;font-weight:650}a{color:var(--accent)}.btn{min-height:var(--tap);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);justify-content:center;align-items:center;gap:8px;padding:0 16px;font-weight:550;transition:background .12s,border-color .12s,opacity .12s;display:inline-flex}.btn:hover{background:var(--surface-2)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast)}.btn-primary:hover{background:var(--accent);opacity:.9}.btn-ghost{background:0 0;border-color:#0000}.btn-ghost:hover{background:var(--surface-2)}.btn-danger{color:var(--danger)}.btn-icon{min-width:var(--tap);min-height:var(--tap);padding:0}.field{width:100%;min-height:var(--tap);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);outline:none;padding:10px 12px;transition:border-color .12s}.field:focus{border-color:var(--accent)}textarea.field{resize:vertical;min-height:84px;line-height:1.5}input[type=date].field,input[type=time].field{text-align:left;min-width:0}input[type=date]::-webkit-date-and-time-value{text-align:left}input[type=time]::-webkit-date-and-time-value{text-align:left}@media (pointer:coarse){input[type=date].field,input[type=time].field{appearance:none}}.label{color:var(--text-muted);margin:0 0 6px;font-size:13px;font-weight:550;display:block}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.chip{background:var(--surface-2);border:1px solid var(--border);color:var(--text-muted);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:3px 10px;font-size:13px;display:inline-flex}.chip.selected{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.chip.overdue{background:var(--danger-soft);border-color:var(--danger);color:var(--danger)}.filter-chip{cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:manipulation}.chip.excluded{background:var(--danger-soft);border-color:var(--danger);color:var(--danger);text-decoration:line-through}.muted{color:var(--text-muted)}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.row{align-items:center;gap:10px;display:flex}.col{flex-direction:column;display:flex}.spread{justify-content:space-between}.wrap{flex-wrap:wrap}.gap-6{gap:6px}.gap-8{gap:8px}.gap-12{gap:12px}.grow{flex:1}.app{grid-template-columns:240px 1fr;min-height:100%;display:grid}.sidebar{border-right:1px solid var(--border);background:var(--surface);flex-direction:column;gap:4px;height:100vh;padding:16px 12px;display:flex;position:sticky;top:0}.sidebar .brand{align-items:center;gap:10px;padding:8px 12px 16px;font-size:18px;font-weight:700;display:flex}.navlink{min-height:var(--tap);border-radius:var(--radius-sm);color:var(--text);align-items:center;gap:12px;padding:10px 12px;font-weight:550;text-decoration:none;display:flex}.navlink:hover{background:var(--surface-2)}.navlink.active{background:var(--accent-soft);color:var(--accent)}.navlink .count{background:var(--surface-2);color:var(--text-muted);border-radius:999px;margin-left:auto;padding:1px 8px;font-size:12px}.navlink.active .count{background:var(--accent);color:var(--accent-contrast)}.main{flex-direction:column;min-width:0;display:flex}.topbar{z-index:10;padding:calc(12px + env(safe-area-inset-top,0px)) calc(20px + env(safe-area-inset-right,0px)) 12px calc(20px + env(safe-area-inset-left,0px));background:color-mix(in srgb, var(--bg) 85%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--border);align-items:center;gap:10px;display:flex;position:sticky;top:0}.topbar h1{font-size:20px}.content{flex:1;width:100%;max-width:780px;margin:0 auto;padding:20px}.tabbar{display:none}@media (width<=720px){.app{flex-direction:column;height:100dvh;display:flex;overflow:hidden}.sidebar{display:none}.main{-webkit-overflow-scrolling:touch;flex:1;min-height:0;overflow-y:auto}.content{padding:14px calc(14px + env(safe-area-inset-right,0px)) 84px calc(14px + env(safe-area-inset-left,0px))}.topbar{padding:calc(12px + env(safe-area-inset-top,0px)) calc(14px + env(safe-area-inset-right,0px)) 12px calc(14px + env(safe-area-inset-left,0px))}.tabbar{background:var(--surface);border-top:1px solid var(--border);padding-bottom:env(safe-area-inset-bottom);z-index:20;flex:none;grid-auto-columns:1fr;grid-auto-flow:column;display:grid}.tabbar a{color:var(--text-muted);white-space:nowrap;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-height:56px;padding:8px 2px;font-size:10.5px;text-decoration:none;display:flex;position:relative;overflow:hidden}.tabbar a.active{color:var(--accent)}.tabbar a .count{background:var(--accent);color:var(--accent-contrast);border-radius:999px;margin-left:6px;padding:0 5px;font-size:10px;line-height:16px;position:absolute;top:6px;left:50%}}.icon{flex:none;width:22px;height:22px}.icon-sm{width:18px;height:18px}.fab{right:calc(20px + env(safe-area-inset-right,0px));bottom:calc(84px + env(safe-area-inset-bottom,0px));background:var(--accent);width:56px;height:56px;color:var(--accent-contrast);box-shadow:var(--shadow);z-index:15;border:none;border-radius:999px;justify-content:center;align-items:center;font-size:28px;display:flex;position:fixed}@media (width>=721px){.fab{bottom:24px;right:24px}}.list{flex-direction:column;gap:8px;display:flex}.list.picks-after-obligations{margin-top:16px}.leftover-row{width:100%;color:var(--text);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);align-items:center;gap:8px;padding:6px 6px 6px 4px;font-size:14px;display:flex}.leftover-act{border-radius:var(--radius);cursor:pointer;width:36px;height:36px;color:var(--text-muted);background:0 0;border:1px solid #0000;flex:none;justify-content:center;align-items:center;display:inline-flex}.leftover-act:disabled{opacity:.4;cursor:default}.leftover-act.take:not(:disabled):hover{color:var(--accent);background:var(--accent-soft)}.leftover-act.skip:not(:disabled):hover{color:var(--danger);background:var(--danger-soft)}.leftover-title{overflow-wrap:anywhere;flex:1;min-width:0}.task{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);align-items:flex-start;gap:12px;padding:12px 14px;display:flex}.task .checkbox{border:2px solid var(--border);color:#0000;cursor:pointer;background:0 0;border-radius:999px;flex:none;justify-content:center;align-items:center;width:24px;height:24px;margin-top:1px;transition:all .12s;display:flex}.task .checkbox.checked{background:var(--ok);border-color:var(--ok);color:#fff}.task .body{cursor:pointer;flex:1;min-width:0}.drag-handle{width:28px;min-height:28px;color:var(--text-muted);cursor:grab;-webkit-user-select:none;user-select:none;border-radius:6px;flex:none;justify-content:center;align-items:center;margin-top:-1px;margin-left:-4px;display:flex}.drag-handle:hover{background:var(--surface-2);color:var(--text)}.drag-handle:active{cursor:grabbing}.task .num{color:var(--text-muted);font-variant-numeric:tabular-nums;margin-right:6px;font-weight:600}.task.done .num{text-decoration:none}.task .ttl{word-break:break-word;font-weight:550}.task.done .ttl{color:var(--text-muted);text-decoration:line-through}.task .meta{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.task .desc{color:var(--text-muted);word-break:break-word;-webkit-line-clamp:6;line-clamp:6;-webkit-box-orient:vertical;margin-top:2px;font-size:14px;display:-webkit-box;overflow:hidden}.empty{text-align:center;color:var(--text-muted);padding:48px 20px}.back-link{color:var(--text-muted);align-items:center;gap:4px;min-height:36px;font-size:14px;text-decoration:none;display:inline-flex}.back-link:hover{color:var(--accent)}.tabs{background:var(--surface-2);border-radius:var(--radius-sm);gap:4px;margin-bottom:12px;padding:3px;display:flex}.tab{min-height:38px;color:var(--text-muted);background:0 0;border:none;border-radius:6px;flex:1;font-weight:550}.tab.active{background:var(--surface);color:var(--text);box-shadow:var(--shadow)}.md{word-break:break-word;line-height:1.55}.md>:first-child{margin-top:0}.md>:last-child{margin-bottom:0}.md p{margin:0 0 10px}.md h2,.md h3,.md h4,.md h5,.md h6{margin:16px 0 8px;line-height:1.3}.md h2{font-size:19px}.md h3{font-size:17px}.md h4,.md h5,.md h6{font-size:15px}.md ul,.md ol{margin:0 0 10px;padding-left:22px}.md li{margin:3px 0}.md a{text-decoration:underline}.md code{background:var(--surface-2);border:1px solid var(--border);border-radius:5px;padding:1px 5px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9em}.md pre{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);margin:0 0 10px;padding:10px 12px;overflow-x:auto}.md pre code{background:0 0;border:none;padding:0;font-size:13px}.md blockquote{border-left:3px solid var(--border);color:var(--text-muted);margin:0 0 10px;padding:2px 0 2px 12px}.md hr{border:none;border-top:1px solid var(--border);margin:14px 0}.md-compact{font-size:14px;line-height:1.45}.md-compact p,.md-compact ul,.md-compact ol,.md-compact pre,.md-compact blockquote{margin:0 0 4px}.md-compact>:last-child{margin-bottom:0}.md-compact h2,.md-compact h3,.md-compact h4,.md-compact h5,.md-compact h6{margin:0 0 4px;font-size:14px;font-weight:700}.md-compact ul,.md-compact ol{padding-left:18px}.md-compact pre{padding:6px 8px}.md-compact hr{margin:6px 0}.md-editor{border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.md-toolbar{background:var(--surface-2);border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:2px;padding:4px;display:flex}.md-tool{min-width:34px;height:34px;color:var(--text);background:0 0;border:none;border-radius:6px;padding:0 8px;font-size:14px;line-height:1}.md-tool:hover{background:var(--surface)}.md-toggle{color:var(--accent);font-size:13px;font-weight:600}.md-editor textarea.field{border:none;border-radius:0}.md-editor textarea.field:focus{border:none}.md-preview{background:var(--surface);padding:10px 12px}.md-panes{align-items:stretch;min-width:0;display:flex}.md-panes>.field,.md-panes>.md-preview{flex:1;min-width:0}.md-editor.split .md-preview{border-left:1px solid var(--border)}.md-editor.fill{flex-direction:column;height:100%;min-height:0;display:flex}.md-editor.fill .md-panes{flex:1;min-height:0}.md-editor.fill textarea.field{resize:none;height:100%;min-height:0}.md-editor.fill .md-preview{overflow-y:auto}.rich-pane{background:var(--surface);flex-direction:column;flex:1;min-width:0;display:flex}.rich-pane .rich-content{outline:none;flex:1;padding:10px 12px}.rich-pane .rich-content:focus{outline:none}.md-editor.fill .rich-pane{height:100%;min-height:0;overflow-y:auto}.rich-content h1,.rich-content h2,.rich-content h3,.rich-content h4,.rich-content h5,.rich-content h6{margin:16px 0 8px;line-height:1.3}.rich-content h1{font-size:19px}.rich-content h2{font-size:17px}.rich-content h3,.rich-content h4,.rich-content h5,.rich-content h6{font-size:15px}.md-tool.is-active{background:var(--accent-soft);color:var(--accent)}.rich-content p.is-editor-empty:first-child:before{content:attr(data-placeholder);color:var(--text-muted);float:left;pointer-events:none;height:0}.pick-list{max-height:46vh;overflow-y:auto}.pick-row{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);width:100%;min-height:44px;color:var(--text);text-align:left;align-items:center;gap:10px;margin-bottom:4px;padding:8px 10px;display:flex}.pick-row:hover:not(:disabled){background:var(--surface-2);border-color:var(--accent)}.pick-row:disabled{opacity:.5}.pick-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.picker{position:relative}.picker-button{text-align:left;cursor:pointer;justify-content:space-between;align-items:center;gap:8px;display:flex}.picker-panel{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);box-shadow:var(--shadow);margin-top:6px;overflow:hidden}.picker-search{border-bottom:1px solid var(--border);background:var(--surface-2);align-items:center;gap:8px;padding:8px 10px;display:flex}.picker-search input{background:0 0;border:none;outline:none;flex:1;min-width:0}.picker-list{max-height:240px;overflow-y:auto}.picker-option{width:100%;min-height:42px;color:var(--text);text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;display:flex}.picker-option.active{background:var(--surface-2)}.picker-option[aria-selected=true]{color:var(--accent);font-weight:600}.picker-option.none{border-bottom:1px solid var(--border)}.picker-option-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.picker-empty{color:var(--text-muted);padding:14px 12px;font-size:14px}.sort-bar{margin-bottom:12px}.sort-caption{margin:0 2px 6px;font-size:12px;display:block}.sort-tabs{margin-bottom:0}.next-action{align-items:baseline;gap:6px;min-width:0;margin-top:5px;font-size:13px;display:flex}.next-label{text-transform:uppercase;letter-spacing:.04em;color:var(--accent);background:var(--accent-soft);border-radius:4px;flex:none;padding:1px 6px;font-size:11px;font-weight:650}.next-title{color:var(--text);text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.next-action.all-done{color:var(--ok)}.next-due{flex:none;padding:1px 8px;font-size:12px}.danger-zone{margin-top:22px}.danger-zone .btn{border-color:var(--border)}.danger-zone .btn:hover{background:var(--danger-soft);border-color:var(--danger)}.hints{border-top:1px solid var(--border);margin-top:16px;padding-top:12px}.hints p{color:var(--text-muted);margin:0 4px 6px;font-size:13px}.hints p:last-child{margin-bottom:0}.section-title{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin:20px 4px 8px;font-size:13px;font-weight:650}.section-title>svg{vertical-align:-2px;opacity:.85;width:15px;height:15px;margin-right:6px}.chip.carried{background:var(--accent-soft);color:var(--accent);white-space:nowrap;font-weight:600}.mit-picked .task{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 15%, var(--surface));animation:.7s ease-out mit-pick-pulse}@keyframes mit-pick-pulse{0%{background:color-mix(in srgb, var(--accent) 45%, var(--surface))}to{background:color-mix(in srgb, var(--accent) 15%, var(--surface))}}.overlay{z-index:100;overscroll-behavior:contain;background:#0006;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (width>=721px){.overlay{align-items:center}}.sheet{background:var(--surface);border-radius:var(--radius) var(--radius) 0 0;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;width:100%;max-width:520px;max-height:92dvh;padding:18px;padding-bottom:calc(18px + env(safe-area-inset-bottom,0px));overflow-y:auto}.sheet-actions{background:var(--surface);border-top:1px solid var(--border);margin:10px -18px 0;padding:12px 18px 2px}.focus-overlay{z-index:200;background:var(--bg);overscroll-behavior:contain;flex-direction:column;display:flex;position:fixed;inset:0}.focus-head{background:var(--surface);border-bottom:1px solid var(--border);padding:calc(8px + env(safe-area-inset-top,0px)) calc(12px + env(safe-area-inset-right,0px)) 8px calc(8px + env(safe-area-inset-left,0px));align-items:center;gap:8px;display:flex}.focus-title{min-width:0;font-size:16px;font-weight:650;line-height:1.2}.focus-sub{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:450;display:block;overflow:hidden}.focus-body{min-height:0;padding:12px calc(12px + env(safe-area-inset-right,0px)) calc(12px + env(safe-area-inset-bottom,0px)) calc(12px + env(safe-area-inset-left,0px));flex:1;display:flex}.focus-body .md-editor{flex:1;min-width:0}@media (width>=900px){.focus-body{padding:16px 24px 20px}}.project-desc{margin-bottom:4px}.project-desc .desc-body{cursor:text;max-height:15em;position:relative;overflow:hidden}.project-desc.clipped .desc-body:after{content:"";background:linear-gradient(to bottom, transparent, var(--bg));pointer-events:none;height:2.5em;position:absolute;bottom:0;left:0;right:0}.desc-more{color:var(--text-muted);font:inherit;cursor:pointer;background:0 0;border:0;margin:2px 4px 0;padding:0;font-size:13px;display:block}.desc-more:hover{color:var(--text);text-decoration:underline}.project-desc.full .desc-body{max-height:none}.desc-more{align-items:center;gap:4px;display:inline-flex}.inline-edit{width:100%}.inline-edit .field{min-height:40px}.desc-empty{color:var(--text-muted);gap:6px;margin-bottom:4px}.archived-banner{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:12px;padding:10px 14px;font-size:14px;display:flex}.file-row{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);align-items:center;gap:10px;margin-bottom:6px;padding:10px 14px;display:flex}.file-main{flex:1;min-width:0}.file-link{color:inherit;text-decoration:none}.file-link:hover .file-name{text-decoration:underline}.file-name{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.file-meta{color:var(--text-muted);font-variant-numeric:tabular-nums;margin-top:2px;font-size:12px;display:block}.project-files .empty{padding:20px;font-size:14px}.file-row.uploading{opacity:.85}.file-progress{background:var(--border);border-radius:999px;height:4px;margin-top:6px;display:block;overflow:hidden}.file-progress>span{background:var(--accent);height:100%;transition:width .15s linear;display:block}.project-files.dropping{outline:2px dashed var(--accent);outline-offset:6px;border-radius:var(--radius)}.project-files.dropping .file-row{opacity:.5}.file-drop-hint{opacity:.75;margin-top:8px;font-size:13px}.file-row.failed{border-color:var(--danger);opacity:1}.file-error{color:var(--danger);margin-top:2px;font-size:13px}button.file-link{text-align:left;font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}.preview-body{background:var(--bg);-webkit-overflow-scrolling:touch;flex:1;justify-content:center;align-items:center;min-height:0;padding:12px;display:flex;overflow:auto}.preview-body.is-pdf{padding:0;display:block}.preview-image{object-fit:contain;max-width:100%;max-height:100%}.pdf-host{flex-direction:column;align-items:center;gap:10px;padding:12px;display:flex}.pdf-page{border:1px solid var(--border);background:#fff;border-radius:4px;width:100%;max-width:900px;height:auto}.preview-note{color:var(--text-muted);text-align:center;padding:32px 20px}body.sheet-open,body.sheet-open .main{overflow:hidden}@media (width>=721px){.sheet{border-radius:var(--radius)}}.sheet h2,.form-row{margin-bottom:14px}.inline-add{gap:8px;margin-bottom:16px;display:flex}.spinner{border:2px solid var(--border);border-top-color:var(--accent);border-radius:999px;width:20px;height:20px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.center-screen{justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.toast{background:var(--danger-soft);color:var(--danger);border:1px solid var(--danger);border-radius:var(--radius-sm);z-index:60;max-width:90%;padding:10px 16px;position:fixed;bottom:96px;left:50%;transform:translate(-50%)}.task.meeting{background:var(--surface-2);border-style:dashed;align-items:center}.task.meeting .ttl{font-weight:500}.meeting-mark{width:24px;height:24px;color:var(--text-muted);flex:none;padding:3px}.today-summary{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 12px;margin-bottom:10px;display:flex}.plan-list{overscroll-behavior:contain;border:1px solid var(--border);border-radius:var(--radius-sm);max-height:46vh;padding:6px;overflow-y:auto}.plan-heading{background:var(--surface);color:var(--text-muted);padding:6px 8px 4px;font-size:13px;font-weight:600;position:sticky;top:-6px}.plan-option{border-radius:var(--radius-sm);width:100%;min-height:40px;color:var(--text);text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;gap:8px;padding:6px 10px;display:flex}.plan-option:hover{background:var(--surface-2)}.plan-option.selected{background:var(--accent-soft);color:var(--accent);font-weight:600}.plan-months{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.plan-month{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);min-height:46px;color:var(--text)}.plan-month:hover{background:var(--surface-2)}.plan-month:disabled{color:var(--text-muted);cursor:default;border-style:dashed}.plan-month:disabled:hover{background:var(--surface)}.plan-month.current{border-color:var(--accent)}.plan-month.selected{background:var(--accent-soft);border-color:var(--accent);color:var(--accent);font-weight:600}.chip.chip-plan{background:0 0;border-style:dashed}.search-field{margin-bottom:10px;position:relative}.search-field .field{padding-right:44px}.search-clear{min-width:32px;min-height:32px;color:var(--text-muted);position:absolute;top:50%;right:4px;transform:translateY(-50%)}.search-clear:hover{color:var(--text)}button.back-link{cursor:pointer;background:0 0;border:none;padding:0 4px 0 0}.cal-frame{margin-bottom:18px}.cal-group{border-radius:var(--radius-sm);margin-bottom:8px}.cal-day{color:var(--text-muted);text-transform:capitalize;margin:8px 4px 4px;font-size:13px;font-weight:600}.cal-day.muted{text-transform:none;font-style:italic;font-weight:500}.cal-group .list{margin-left:10px}.replan{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);margin-bottom:18px;padding:6px}.replan-head{width:100%;min-height:38px;color:var(--text-muted);text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;padding:0 6px;font-weight:600;display:flex}.replan-head:hover{color:var(--text)}.replan-item{margin:6px 0 10px}.replan-actions{flex-wrap:wrap;align-items:center;gap:6px;padding:4px 6px 0 34px;font-size:13px;display:flex}.replan-actions .btn{border-color:var(--border);min-height:30px;padding:4px 10px;font-size:13px}.plan-more{border:none;border-top:1px dashed var(--border);border-radius:0 0 var(--radius-sm) var(--radius-sm);width:100%;min-height:38px;color:var(--text-muted);text-align:left;cursor:pointer;background:0 0;margin-top:4px;padding:6px 10px;font-size:13px;display:block}.plan-more:hover{color:var(--accent)}.plan-ord{min-width:3.4em;color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:12px;display:inline-block}.plan-option.selected .plan-ord{color:inherit}.review-dots{gap:6px;display:flex}.review-dot{background:var(--border);border-radius:2px;width:22px;height:4px}.review-dot.done{background:var(--text-muted)}.review-dot.active{background:var(--accent)}.review-nav{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:8px;margin-top:18px;padding-top:12px;display:flex}.review-nav .btn-ghost{color:var(--text-muted);font-size:13px}.review-invite{border:1px dashed var(--border);border-radius:var(--radius-sm);color:var(--text-muted);justify-content:space-between;align-items:center;gap:10px;margin-top:22px;padding:10px 12px;font-size:13px;text-decoration:none;display:flex}.review-invite:hover{color:var(--text)}.review-invite.due{border-style:solid;border-color:var(--accent);color:var(--accent)}.btn.marked{color:var(--accent)}.density-toggle{width:100%;min-height:36px;color:var(--text-muted);text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;padding:0 4px;font-size:13px;font-weight:600;display:flex}.density-toggle:hover{color:var(--text)}.density{border:1px solid var(--border);border-radius:var(--radius-sm);margin-bottom:16px;padding:10px}.density-zooms{gap:6px;margin-bottom:10px;display:flex}.density-bars{gap:14px;padding-bottom:2px;display:flex;overflow-x:auto}.density-group{flex:none}.density-row{gap:6px;display:flex}.density-col{border-radius:var(--radius-sm);min-width:24px;color:inherit;flex-direction:column;flex:none;align-items:center;gap:3px;padding:4px 2px;text-decoration:none;display:flex}a.density-col,button.density-col{font:inherit;cursor:pointer;background:0 0;border:0}a.density-col:hover,button.density-col:hover{background:var(--surface-2)}a.density-col:hover .density-n,button.density-col:hover .density-n,a.density-col:hover .density-label,button.density-col:hover .density-label{color:var(--text)}a.density-col:active,button.density-col:active{background:var(--accent-soft)}.density-n{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:12px}.density-bar-wrap{align-items:flex-end;height:34px;display:flex}.density-bar{background:var(--accent);border-radius:3px 3px 0 0;width:12px}.density-zero{background:var(--border);border-radius:50%;width:5px;height:5px}.density-label{color:var(--text-muted);white-space:nowrap;font-size:11px}@media (width<=600px){.density-row{gap:3px}.density-bars{gap:10px}}.density-anytime{width:100%;font:inherit;color:var(--accent);text-align:center;cursor:pointer;background:0 0;border:0;margin-top:4px;padding:0;font-size:11px;text-decoration:none;display:block}.density-anytime:hover{text-decoration:underline}.feed-status{min-height:28px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;margin:6px 0 0;padding:2px 8px;font-size:12px;display:inline-flex}.feed-status:hover{color:var(--text)}.feed-status:disabled{opacity:.6;cursor:default}.density-busy{color:var(--text-muted);opacity:.85;white-space:nowrap;min-height:12px;font-size:10px}.density-dow{color:var(--text-muted);opacity:.75;font-size:10px;line-height:1.1}.density-col.weekend .density-dow,.density-col.weekend .density-label,.density-col.weekend .density-n{opacity:.5}
