:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#eee5df;--chrome:#fbf7f3;--surface:#fff;--surface-soft:#f4ebe5;--surface-muted:#e8ddd5;--surface-hover:#f4f0eb;--surface-active:#f6e4dc;--surface-raised:#fffaf6;--surface-warm:#fff7f1;--surface-header:#f2e8e1;--surface-header-strong:#f3e8df;--surface-drawer:#f4ece6;--row-alt:#faf4ef;--field-hover:#ffffff9e;--text:#22252a;--text-strong:#08090b;--text-muted:#5f6671;--line:#d6c8bf;--line-soft:#eadfd8;--line-faint:#ebe8e3;--line-hover:#c9b8ad;--menu-border:#d8d3cd;--panel-border:#cdbdb3;--popover-border:#d8c8bd;--shadow-subtle:0 1px 2px #402d2212, 0 12px 30px #402d220f;--shadow-panel:0 1px 2px #402d2214, 0 18px 42px #402d2212;--shadow-topbar:0 1px 0 var(--line), 0 8px 24px #402d220a;--shadow-popover:0 14px 38px #402d2229;--shadow-modal:0 24px 70px #402d2242;--shadow-drawer:-24px 0 70px #402d223d;--mobile-nav-bg:#fbf7f3f7;--shadow-mobile-nav:0 -8px 24px #402d2214;--blue:#d97863;--orange:#f05a1a;--green:#128a3a;--brand-mark:#111;--primary-bg:#060606;--primary-hover:#1c1c1c;--primary-text:#fff;--primary-border:#060606;--inverse-text:#fff;--focus-strong:#111;--selected-strong:#111;--icon-muted:#9a9590;--icon-soft:#77716b;--avatar-border:#a9adb5;--avatar-bg:#050505;--avatar-text:#fff;--status-border:#9aa0aa;--note-bg:#f4f0eb;--note-text:#5c5752;--note-muted:#77716b;--note-accent:#d9786366;--danger-line:#e1aa98;--danger-bg:#fff2ec;--danger-text:#8f2d18;--success-line:#b8cfbd;--success-bg:#edf8ef;--success-text:#126a2f;--warning-line:#f05a1a80;--warning-bg:#fff4ed;--warning-text:#a83f13;--calendar-marker:#111;--calendar-today-outline:#08090bd1;--heat-1:#f8e6df;--heat-2:#efc8bb;--heat-3:#d97863;--heat-3-border:#c56752;--heat-3-text:#fff;--backdrop:#080b0f57;--sans:"Malgun Gothic", "Segoe UI", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, sans-serif;--mono:"Geist Mono", "SFMono-Regular", Consolas, "Liberation Mono", ui-monospace, monospace;font-family:var(--sans);color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root[data-theme=warm-dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#120f0d;--chrome:#1a1412;--surface:#241c18;--surface-soft:#2d221d;--surface-muted:#3a2b25;--surface-hover:#342720;--surface-active:#3f241d;--surface-raised:#2a201b;--surface-warm:#2f221b;--surface-header:#33261f;--surface-header-strong:#3a2a22;--surface-drawer:#181210;--row-alt:#291f1a;--field-hover:#fff4ed14;--text:#eadbd2;--text-strong:#fff4ed;--text-muted:#b7a69c;--line:#4a382f;--line-soft:#352820;--line-faint:#2b211c;--line-hover:#735143;--menu-border:#4f3b32;--panel-border:#554035;--popover-border:#60463a;--shadow-subtle:0 0 0 1px #ff896b0a, 0 16px 40px #00000057;--shadow-panel:0 0 0 1px #ff896b0d, 0 22px 56px #0000006b;--shadow-topbar:0 1px 0 var(--line), 0 12px 30px #00000047;--shadow-popover:0 18px 44px #00000085;--shadow-modal:0 28px 78px #000000a8;--shadow-drawer:-24px 0 70px #0000008f;--mobile-nav-bg:#1a1412f7;--shadow-mobile-nav:0 -10px 28px #0000006b;--blue:#f07860;--orange:#ff8a3d;--green:#5fcf78;--brand-mark:#fff4ed;--primary-bg:#f07860;--primary-hover:#ff8a72;--primary-text:#1b0d09;--primary-border:#f07860;--inverse-text:#08120a;--focus-strong:#f5d6c8;--selected-strong:#f07860;--icon-muted:#98867a;--icon-soft:#c5b2a8;--avatar-border:#5a4b43;--avatar-bg:#f07860;--avatar-text:#1b0d09;--status-border:#6a5b52;--note-bg:#2f241f;--note-text:#d5c0b5;--note-muted:#c5b2a8;--note-accent:#f078607a;--danger-line:#914535;--danger-bg:#3d1d18;--danger-text:#ffb2a0;--success-line:#3f8f54;--success-bg:#15341f;--success-text:#b7f0c1;--warning-line:#ff8a3d8c;--warning-bg:#3c2518;--warning-text:#ffc19a;--calendar-marker:#f07860;--calendar-today-outline:#ffd6c8e6;--heat-1:#3a2420;--heat-2:#613429;--heat-3:#f07860;--heat-3-border:#f59a87;--heat-3-text:#1b0d09;--backdrop:#0000009e}:root[data-theme=dim]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#1c2128;--chrome:#222831;--surface:#2a3038;--surface-soft:#323943;--surface-muted:#3d4652;--surface-hover:#37404b;--surface-active:#3b3031;--surface-raised:#303742;--surface-warm:#332f32;--surface-header:#333a45;--surface-header-strong:#39414c;--surface-drawer:#20262e;--row-alt:#2d343e;--field-hover:#f1f5f914;--text:#d8dee6;--text-strong:#f2f5f8;--text-muted:#9faab7;--line:#46515e;--line-soft:#363f49;--line-faint:#2e3742;--line-hover:#657383;--menu-border:#444f5d;--panel-border:#515d6b;--popover-border:#596575;--shadow-subtle:0 0 0 1px #ffffff05, 0 14px 34px #00000047;--shadow-panel:0 0 0 1px #ffffff08, 0 20px 50px #00000057;--shadow-topbar:0 1px 0 var(--line), 0 10px 26px #0000003d;--shadow-popover:0 18px 44px #00000075;--shadow-modal:0 28px 78px #00000094;--shadow-drawer:-24px 0 70px #0000007a;--mobile-nav-bg:#222831f7;--shadow-mobile-nav:0 -10px 28px #00000057;--blue:#e47762;--orange:#f08a44;--green:#5ccb78;--brand-mark:#f2f5f8;--primary-bg:#e47762;--primary-hover:#f08b77;--primary-text:#190c09;--primary-border:#e47762;--inverse-text:#07130b;--focus-strong:#f0b6a8;--selected-strong:#e47762;--icon-muted:#8996a5;--icon-soft:#b5c0cc;--avatar-border:#596575;--avatar-bg:#e47762;--avatar-text:#190c09;--status-border:#6c7786;--note-bg:#303842;--note-text:#c5ced8;--note-muted:#b5c0cc;--note-accent:#e4776273;--danger-line:#a55245;--danger-bg:#3c2526;--danger-text:#ffb1a5;--success-line:#41875a;--success-bg:#1d3428;--success-text:#b9edc5;--warning-line:#f08a4485;--warning-bg:#3a2e24;--warning-text:#ffc292;--calendar-marker:#e47762;--calendar-today-outline:#f0b6a8e6;--heat-1:#3b2d31;--heat-2:#5d3533;--heat-3:#e47762;--heat-3-border:#ef9a89;--heat-3-text:#190c09;--backdrop:#05080c9e}:root[data-theme=true-black]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#000;--chrome:#050505;--surface:#101010;--surface-soft:#181818;--surface-muted:#242424;--surface-hover:#202020;--surface-active:#2a1714;--surface-raised:#151515;--surface-warm:#17110f;--surface-header:#191919;--surface-header-strong:#202020;--surface-drawer:#070707;--row-alt:#141414;--field-hover:#ffffff14;--text:#e8e8e8;--text-strong:#fff;--text-muted:#a8a8a8;--line:#353535;--line-soft:#242424;--line-faint:#1b1b1b;--line-hover:#5a5a5a;--menu-border:#333;--panel-border:#3c3c3c;--popover-border:#444;--shadow-subtle:0 0 0 1px #ffffff09, 0 16px 42px #000000b8;--shadow-panel:0 0 0 1px #ffffff0a, 0 22px 60px #000000d1;--shadow-topbar:0 1px 0 var(--line), 0 12px 30px #000000b8;--shadow-popover:0 18px 46px #000000db;--shadow-modal:0 30px 82px #000000eb;--shadow-drawer:-24px 0 70px #000000e0;--mobile-nav-bg:#050505fa;--shadow-mobile-nav:0 -10px 28px #000000c7;--blue:#ff765e;--orange:#ff8a3d;--green:#74e38a;--brand-mark:#fff;--primary-bg:#ff765e;--primary-hover:#ff927d;--primary-text:#160704;--primary-border:#ff765e;--inverse-text:#061009;--focus-strong:#ffd0c4;--selected-strong:#ff765e;--icon-muted:#9a9a9a;--icon-soft:#c7c7c7;--avatar-border:#4a4a4a;--avatar-bg:#ff765e;--avatar-text:#160704;--status-border:#686868;--note-bg:#181818;--note-text:#d1d1d1;--note-muted:#c7c7c7;--note-accent:#ff765e80;--danger-line:#a94c3d;--danger-bg:#2a1110;--danger-text:#ffb4a8;--success-line:#4a9f61;--success-bg:#102417;--success-text:#c0f4c9;--warning-line:#ff8a3d94;--warning-bg:#26180e;--warning-text:#ffc69b;--calendar-marker:#ff765e;--calendar-today-outline:#ffd0c4f0;--heat-1:#241614;--heat-2:#4a241f;--heat-3:#ff765e;--heat-3-border:#ff9b88;--heat-3-text:#160704;--backdrop:#000000c7}*{box-sizing:border-box}html,body,#root{min-height:100%}body{background:var(--bg);letter-spacing:0;margin:0;font-size:14px;line-height:1.35}button,input,select,textarea{letter-spacing:0}button:disabled{cursor:not-allowed;opacity:.48}button:hover{background:var(--surface-soft)}.button.primary:hover,.icon-button.strong:hover{background:var(--primary-hover)}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--blue);outline-offset:2px}.auth-loading{background:var(--bg);min-height:100svh;color:var(--text-strong);align-content:center;place-items:center;gap:12px;font-weight:700;display:grid}.hero-shell{background:var(--bg);min-height:100svh;color:var(--text);flex-direction:column;display:flex}.landing-nav{border-bottom:1px solid var(--line);background:var(--surface);justify-content:space-between;align-items:center;height:64px;padding:0 28px;display:flex}.landing-brand{color:var(--text-strong);align-items:center;gap:12px;font-size:18px;font-weight:700;display:flex}.brand-button{appearance:none;cursor:pointer;background:0 0;border:0;padding:0}.brand-button:hover{background:0 0}.hero-page{flex:1;place-items:center;min-height:calc(100svh - 64px);padding:48px 24px 72px;display:grid;position:relative}.hero-scroll{width:40px;height:40px;color:var(--text-muted);opacity:.65;cursor:pointer;background:0 0;border:0;border-radius:999px;place-items:center;transition:opacity .12s,color .12s;display:grid;position:absolute;bottom:18px;left:50%;transform:translate(-50%)}.hero-scroll:hover{opacity:1;color:var(--text-strong)}.hero-explain{border-top:1px solid var(--line);background:var(--surface);place-items:center;padding:104px 24px 112px;display:grid}.explain-inner{text-align:center;width:min(1000px,100%)}.explain-eyebrow{color:var(--text-muted);font:12px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;margin:0 0 20px}.explain-lead{max-width:780px;color:var(--text-strong);letter-spacing:-.02em;margin:0 auto;font-size:clamp(26px,4.2vw,40px);font-weight:700;line-height:1.12}.explain-body{max-width:600px;color:var(--text-muted);margin:20px auto 0;font-size:17px;line-height:1.6}.explain-diagram{max-width:1000px;margin:56px auto 0}.explain-diagram svg{width:100%;height:auto;color:var(--text-strong);display:block;overflow:visible}.explain-diagram text{font-family:var(--mono);fill:currentColor;font-size:13px}.explain-diagram .dlabel{fill:var(--text-muted);letter-spacing:.09em;font-size:11px}.explain-diagram .chip{fill:none;stroke:currentColor;stroke-width:1px;opacity:.55}.explain-diagram .chip-done{fill:var(--text-muted)}.explain-diagram .chip-hero{fill:#f4efe9}.explain-diagram .strike{stroke:var(--text-muted);stroke-width:1px}.explain-diagram .guide{stroke:currentColor;stroke-width:1px;opacity:.22}.explain-diagram .vpath{fill:none;stroke:#b23a26;stroke-width:2.25px}.explain-diagram .mpath{fill:none;stroke:var(--text-muted);stroke-width:1.25px}.explain-diagram .mstroke{fill:none;stroke:var(--text-muted);stroke-width:1px}.explain-diagram .mlabel{fill:var(--text-muted)}.explain-diagram .klabel{fill:var(--text-strong);font-weight:700}.explain-steps{text-align:center;grid-template-columns:3fr 4fr 3fr;gap:28px;max-width:1000px;margin:36px auto 0;display:grid}.explain-step{background:0 0;border:none;padding:0}.step-num{color:#9a2d1a;font:700 13px/1 var(--mono);letter-spacing:.04em;margin-bottom:8px;display:block}.explain-step h3{color:var(--text-strong);margin:0 0 6px;font-size:18px;font-weight:700}.explain-step p{color:var(--text-muted);margin:0;font-size:15px;line-height:1.55}.explain-contrast{background:var(--bg);border-radius:12px;grid-template-columns:1fr 1fr;max-width:620px;margin:48px auto 0;display:grid;overflow:hidden}.contrast-half{text-align:left;align-items:center;gap:12px;padding:22px 24px;display:flex}.contrast-half svg{width:30px;height:30px;color:var(--text-strong);flex:none}.contrast-half .mstroke{fill:none;stroke:var(--text-muted);stroke-width:1.5px}.contrast-half .dashed{stroke-dasharray:2.5 2.5}.contrast-half .strike{stroke:var(--text-muted);stroke-width:1.5px}.contrast-half .arrow{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.contrast-half p{margin:0;font-size:15px;line-height:1.4}.contrast-half.note p{color:var(--text-muted)}.contrast-half.task p{color:var(--text-strong);font-weight:600}@media (width<=680px){.explain-steps{grid-template-columns:1fr;gap:22px}.explain-contrast{grid-template-columns:1fr}.contrast-half.note{border-right:none;border-bottom:1px solid var(--line)}}.hero-copy{text-align:center;justify-items:center;gap:28px;width:min(760px,100%);display:grid}.hero-copy h1{color:var(--text-strong);margin:0;font-size:clamp(56px,10vw,128px);font-weight:700;line-height:.92}.modal-panel.auth-panel{width:min(400px,100vw - 32px)}.auth-panel .modal-header{background:0 0;border-bottom:none;min-height:0;padding:22px 22px 0}.auth-form{gap:16px;padding:18px 22px 20px}.auth-form label{gap:8px}.auth-form input{height:44px}.input-label-row{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.auth-alert{border:1px solid var(--line);border-radius:4px;margin:0;padding:10px 12px;font-size:13px;line-height:1.35}.auth-alert.error{border-color:var(--danger-line);background:var(--danger-bg);color:var(--danger-text)}.auth-alert.success{border-color:var(--success-line);background:var(--success-bg);color:var(--success-text)}.auth-actions{grid-template-columns:1fr;margin-top:2px}.auth-actions .button{justify-content:center;width:100%}.landing-footer{border-top:1px solid var(--line);background:var(--surface);min-height:64px;color:var(--text-muted);justify-content:space-between;align-items:center;gap:16px;padding:0 28px;font-size:13px;display:flex}.landing-footer nav{align-items:center;gap:6px;display:flex}.landing-footer button,.legal-back{appearance:none;color:var(--text-muted);font:inherit;cursor:pointer;background:0 0;border:0}.landing-footer button{border-radius:4px;min-height:34px;padding:0 8px}.landing-footer button:hover,.legal-back:hover{color:var(--text-strong);background:var(--surface-soft)}.legal-shell{background:var(--bg)}.legal-page{flex:1;width:min(820px,100vw - 40px);margin:0 auto;padding:42px 0 64px}.legal-back{border-radius:4px;min-height:34px;margin-bottom:18px;padding:0 8px}.legal-header{border-bottom:1px solid var(--line);margin-bottom:22px;padding-bottom:22px}.legal-header h1{color:var(--text-strong);margin:0;font-size:clamp(34px,7vw,62px);line-height:.95}.legal-header p{color:var(--text-muted);font:13px/1.2 var(--mono);margin:12px 0 0}.legal-content{gap:22px;display:grid}.legal-content section{border-bottom:1px solid var(--line-soft);padding-bottom:22px}.legal-content section:last-child{border-bottom:0}.legal-content h2{color:var(--text-strong);margin:0 0 8px;font-size:18px;line-height:1.2}.legal-content p{color:var(--text);margin:0;font-size:15px;line-height:1.65}.app-shell{background:var(--bg);min-height:100svh;color:var(--text);grid-template-columns:208px minmax(0,1fr);display:grid}.sidebar{border-right:1px solid var(--line);background:var(--chrome);flex-direction:column;height:100svh;display:flex;position:sticky;top:0}.brand{border-bottom:1px solid var(--line);background:var(--surface);height:64px;color:var(--text-strong);align-items:center;gap:12px;padding:0 20px;font-size:18px;font-weight:700;display:flex}.brand-mark{border:2px solid var(--brand-mark);width:20px;height:20px;display:inline-block;position:relative}.brand-mark:after{content:"";background:var(--brand-mark);width:6px;height:6px;position:absolute;bottom:2px;right:2px}.nav-list{gap:2px;padding:10px 8px;display:grid}.nav-item{appearance:none;color:var(--text-strong);min-height:44px;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:4px;align-items:center;gap:12px;padding:0 12px;display:flex}.nav-item.active{background:var(--surface-active);color:var(--blue);box-shadow:inset 2px 0 0 var(--blue)}.account-menu-wrap{border-top:1px solid var(--line);margin-top:auto;padding:8px;position:relative}.account-trigger{appearance:none;width:100%;min-height:46px;color:var(--text-strong);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:4px;align-items:center;gap:10px;padding:0 8px;display:flex}.account-trigger:hover,.account-trigger[aria-expanded=true]{background:var(--surface-hover)}.profile-email{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.account-dropdown,.typed-add-menu{z-index:25;border:1px solid var(--menu-border);background:var(--chrome);min-width:168px;box-shadow:none;border-radius:4px;gap:2px;padding:4px;display:grid;position:absolute}.account-dropdown{transform-origin:0 100%;animation:.15s cubic-bezier(.2,0,0,1) account-drop-up;bottom:calc(100% + 6px);left:8px;right:8px}.account-dropdown button,.typed-add-option{appearance:none;min-height:32px;color:var(--text-strong);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:3px;align-items:center;gap:9px;padding:0 12px;display:flex}.account-dropdown button:hover,.typed-add-option:hover{background:var(--surface-hover);color:var(--text-strong)}.account-dropdown svg,.typed-add-option svg{color:var(--icon-muted);flex:none}.account-menu-divider{background:var(--line-soft);height:1px;margin:4px 6px}.theme-menu-section{gap:2px;padding:2px 0;display:grid}.theme-menu-heading{color:var(--text-muted);font:11px/1 var(--mono);text-transform:uppercase;padding:4px 12px 2px}.theme-option-list{gap:2px;display:grid}.account-dropdown .theme-option{padding-left:8px}.account-dropdown .theme-option.active{background:var(--surface-soft)}.theme-option-check{width:16px;height:16px;color:var(--blue);flex:none;place-items:center;display:inline-grid}.account-dropdown .theme-option-check svg{color:var(--blue)}.theme-option span:last-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.typed-add-option.blocker svg{color:var(--blue)}.typed-add-divider{background:var(--line-soft);height:1px;margin:4px 6px}.account-menu-wrap.compact{border-top:0;margin:0;padding:0}.account-trigger.compact{justify-content:center;width:30px;height:30px;min-height:30px;padding:0}.account-trigger.compact .avatar{margin:0}.account-dropdown.compact{transform-origin:100% 0;width:208px;animation:.15s cubic-bezier(.2,0,0,1) nav-menu-down;inset:calc(100% + 7px) 0 auto auto}@keyframes account-drop-up{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes nav-menu-down{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.workspace{background:var(--bg);min-width:0;min-height:100svh}.topbar{border-bottom:1px solid var(--line);background:var(--surface);height:64px;box-shadow:0 1px 0 var(--line), 0 8px 24px #402d220a;z-index:3;grid-template-columns:minmax(220px,1fr) minmax(260px,420px) auto;align-items:center;gap:16px;padding:0 28px 0 20px;display:grid;position:sticky;top:0}.date-title{align-items:center;gap:12px;min-width:0;display:flex}.date-title h1{color:var(--text-strong);margin:0;font-size:22px;font-weight:700;line-height:1}.search-box{border:1px solid var(--line);height:38px;color:var(--text-muted);background:var(--surface-soft);border-radius:4px;align-items:center;gap:10px;padding:0 10px;display:flex}.search-box input{min-width:0;font:inherit;color:var(--text-strong);background:0 0;border:0;outline:0;flex:1}kbd{border:1px solid var(--line);color:var(--text-muted);background:var(--surface);font:11px/1 var(--mono);border-radius:3px;padding:3px 5px}.top-actions{align-items:center;gap:8px;display:flex}.add-menu-wrap{position:relative}.add-menu-wrap.align-right .typed-add-menu{left:auto;right:0}.top-add-button{width:38px;height:38px}.typed-add-menu{transform-origin:100% 0;animation:.15s cubic-bezier(.2,0,0,1) nav-menu-down;top:calc(100% + 6px);right:0}.button,.icon-button,.mini-add,.task-title-button,.task-actions button{appearance:none;font:inherit;border:1px solid var(--line);background:var(--surface);color:var(--text-strong);cursor:pointer;border-radius:4px}.button{white-space:nowrap;justify-content:center;align-items:center;gap:8px;height:38px;padding:0 12px;display:inline-flex}.button.primary,.icon-button.strong{background:var(--primary-bg);color:var(--primary-text);border-color:var(--primary-border)}.button.subtle{background:var(--surface-soft)}.icon-button,.mini-add{place-items:center;width:30px;height:30px;padding:0;display:inline-grid}.icon-button.quiet{color:var(--text-muted);background:0 0;border-color:#0000}.main-surface{background:var(--bg);padding:16px 28px 28px 20px}.sync-alert{border:1px solid var(--danger-line);background:var(--danger-bg);color:var(--danger-text);border-radius:4px;margin:12px 28px 0 20px;padding:10px 12px;font-size:13px}.guest-banner{border:1px solid var(--accent,var(--line));background:var(--surface);box-shadow:var(--shadow-subtle);color:var(--text);border-radius:4px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin:12px 28px 0 20px;padding:10px 14px;font-size:13px;display:flex}.guest-banner-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}@media (width<=640px){.guest-banner{margin:12px 16px 0}.guest-banner-actions{justify-content:flex-end;width:100%}}.quick-composer{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-subtle);border-radius:4px;grid-template-columns:minmax(220px,1fr) 180px 180px auto auto;gap:8px;margin:12px 28px 0 20px;padding:10px;display:grid}.quick-composer input,.quick-composer select{border:1px solid var(--line);height:36px;font:inherit;background:var(--surface);border-radius:4px;min-width:0;padding:0 10px}.check-label{color:var(--text-strong);align-items:center;gap:7px;display:flex}.eyebrow{color:var(--text-muted);font:12px/1 var(--mono);text-transform:uppercase}.today-stack,.calendar-view{gap:16px;display:grid}.today-cap-strip{border:1px solid var(--line);background:var(--surface);min-height:48px;box-shadow:var(--shadow-subtle);border-radius:4px;justify-content:space-between;align-items:center;gap:14px;padding:9px 14px;display:flex}.today-cap-lead{flex-direction:column;flex:1;gap:7px;min-width:0;display:flex}.today-cap-headline{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.today-cap-strip strong{color:var(--text-strong);font:700 15px/1 var(--mono)}.today-cap-load{color:var(--text-muted);font:12px/1 var(--mono)}.today-cap-meter{background:var(--line);border-radius:999px;width:100%;max-width:260px;height:4px;overflow:hidden}.today-cap-meter-fill{border-radius:inherit;background:#b23a26;min-width:0;height:100%;transition:width .26s}.today-cap-strip p{color:var(--text-muted);margin:0;font-size:13px}.today-cap-strip.warning{border-color:var(--warning-line);background:var(--warning-bg)}.today-cap-strip.warning strong,.today-cap-strip.warning p{color:var(--warning-text)}.today-cap-strip.warning .today-cap-meter-fill{background:var(--warning-text)}.streak-mark{color:var(--text-muted);font:12px/1 var(--mono);white-space:nowrap;align-items:baseline;gap:5px;display:inline-flex}.streak-flame{color:#b23a26;stroke:#b23a26;transform:translateY(2px)}.streak-count{color:#b23a26;font-weight:700}.streak-word{color:var(--text-muted)}.today-layout{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:16px;display:grid}.today-layout.focusmode{grid-template-columns:minmax(0,1fr) 40px}.project-grid{grid-template-columns:repeat(2,minmax(340px,1fr));align-items:start;gap:16px;display:grid}.loose-stream{border-left:1px solid var(--line-soft);min-width:0;color:var(--text);background:0 0;align-self:stretch}.loose-stream-header{border-bottom:1px solid var(--line-faint);min-height:38px;color:var(--text-muted);font:12px/1 var(--mono);text-transform:uppercase;justify-content:space-between;align-items:center;gap:10px;display:flex}.loose-stream-header strong{color:var(--text-muted);font:12px/1 var(--mono)}.loose-list{display:grid}.loose-empty{border-bottom:1px solid var(--line-faint);color:var(--text-muted);margin:0;padding:12px 0 12px 24px;font-size:13px}.loose-item{border-bottom:1px solid var(--line-faint);grid-template-columns:24px minmax(0,1fr) 24px;align-items:start;gap:0;min-height:44px;padding:8px 0;display:grid}.loose-icon{width:24px;min-height:24px;color:var(--icon-muted);place-items:center;display:grid}.loose-item.blocker .loose-icon{color:var(--blue)}.loose-text{resize:vertical;width:100%;min-height:26px;color:var(--text-strong);font:14px/1.45 var(--sans);background:0 0;border:0;outline:0;padding:2px 2px 0}.loose-item.ready .loose-text{font-weight:600}.loose-item.idea .loose-text{color:var(--icon-soft);font-style:italic}.loose-item.note{grid-template-columns:24px minmax(0,1fr);padding:10px 0}.loose-item.note .loose-text{border-left:2px solid var(--note-accent);background:var(--note-bg);min-height:96px;color:var(--note-text);border-radius:4px;padding:12px;line-height:1.6}.loose-delete{appearance:none;width:24px;height:24px;color:var(--text-muted);opacity:0;cursor:pointer;background:0 0;border:0;border-radius:3px;place-items:center;display:grid}.loose-item:hover .loose-delete,.loose-item:focus-within .loose-delete{opacity:1}.loose-delete:hover{background:var(--surface-hover);color:var(--text-strong)}.loose-yesterday-strip{border-bottom:1px solid var(--line-faint);background:var(--surface-warm)}.loose-yesterday-strip>header{border-bottom:1px solid var(--line-faint);min-height:34px;color:var(--text-muted);font:12px/1 var(--mono);text-transform:uppercase;justify-content:space-between;align-items:center;padding-left:24px;padding-right:0;display:flex}.loose-yesterday-item{border-bottom:1px solid var(--line-faint);gap:8px;padding:8px 0 9px 24px;display:grid}.loose-yesterday-item:last-child{border-bottom:0}.loose-yesterday-item strong{color:var(--text-strong);font-weight:500;display:block}.loose-yesterday-item span{color:var(--text-muted);font:12px/1.2 var(--mono)}.loose-yesterday-actions{gap:5px;display:flex}.loose-yesterday-actions button{border:1px solid var(--line);background:var(--surface);height:28px;color:var(--text-muted);border-radius:4px;align-items:center;gap:5px;padding:0 7px;font-size:12px;display:inline-flex}.loose-stream.rail{border-left:1px solid var(--line-faint);border-right:1px solid var(--line-faint);place-items:center;width:40px;min-height:320px;display:grid}.loose-stream.rail span{color:var(--text-muted);font:12px/1 var(--mono);white-space:nowrap;transform:rotate(90deg)}.completed-today{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-subtle);border-radius:4px;transition:opacity .16s,filter .16s,max-height .16s;overflow:hidden}.completed-today.minimized{max-height:60px}.completed-today.focus-blurred{opacity:.38;filter:blur(1.3px);pointer-events:none;-webkit-user-select:none;user-select:none}.completed-header{border-bottom:1px solid var(--line);background:var(--surface-header-strong);grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;gap:12px;min-height:58px;padding:10px 14px;display:grid}.completed-header h2{color:var(--text-strong);margin:3px 0 0;font-size:17px}.completed-count{border:1px solid var(--line);min-width:34px;height:30px;color:var(--green);background:var(--surface);font:13px/1 var(--mono);border-radius:4px;place-items:center;display:inline-grid}.completed-actions{align-items:center;gap:8px;display:flex}.completed-toggle:disabled{opacity:.7;cursor:default}.completed-list{display:grid}.completed-row{border-bottom:1px solid var(--line-soft);align-items:center;gap:10px;min-height:42px;padding:7px 14px;display:flex}.completed-row:last-child{border-bottom:0}.completed-check{background:var(--green);width:20px;height:20px;color:var(--inverse-text);border-radius:4px;flex:none;place-items:center;display:inline-grid}.completed-row strong{color:var(--text-muted);font-weight:500;text-decoration:line-through;display:block}.completed-row span:last-child{color:var(--text-muted);font:12px/1.2 var(--mono)}.empty-board{border:1px solid var(--line);background:var(--surface);min-height:260px;box-shadow:var(--shadow-subtle);text-align:center;border-radius:4px;align-content:center;place-items:center;gap:18px;padding:32px;display:grid}.empty-board div{justify-items:center;gap:10px;display:grid}.empty-board-icon{border:1px solid var(--line);background:var(--surface-soft);width:42px;height:42px;color:var(--text-muted);border-radius:4px;place-items:center;display:inline-grid}.empty-board h2{color:var(--text-strong);margin:0;font-size:18px}.empty-board p{max-width:340px;color:var(--text-muted);margin:0;line-height:1.45}.first-run{border:1px solid var(--line);background:var(--surface);max-width:520px;box-shadow:var(--shadow-subtle);border-radius:4px;gap:14px;margin:8px auto 0;padding:30px 32px;display:grid}.first-run-kicker{font:11px/1 var(--mono);letter-spacing:.08em;color:#b23a26}.first-run h2{color:var(--text-strong);margin:0;font-size:20px}.first-run>p{color:var(--text-muted);max-width:42ch;margin:0;line-height:1.5}.first-run-steps{color:var(--text-muted);gap:6px;margin:2px 0 4px;padding-left:20px;line-height:1.45;display:grid}.first-run-steps li::marker{color:#b23a26;font:12px/1 var(--mono)}.first-run-actions{flex-wrap:wrap;gap:10px;margin-top:4px;display:flex}.button.ghost{border-color:var(--line);color:var(--text-muted);background:0 0}.button.ghost:hover{color:var(--text-strong);border-color:var(--line-hover)}.yesterday-hint{border-bottom:1px solid var(--line-soft);color:var(--text-muted);font:11px/1.35 var(--mono);margin:0;padding:7px 14px}.project-grid.full-width{grid-template-columns:repeat(auto-fit,minmax(360px,1fr))}.project-card{border:1px solid var(--line);background:var(--surface);min-height:326px;box-shadow:var(--shadow-subtle);border-radius:4px;flex-direction:column;transition:opacity .16s,outline-color .16s,max-height .16s,transform .16s;display:flex;overflow:hidden}.shared-project{grid-column:1/-1}.project-card.focused-project{outline:2px solid var(--focus-strong);outline-offset:2px;z-index:2;position:relative}.project-card.collapsed-project{min-height:94px;max-height:94px;transform:none}.project-card.dimmed-project{opacity:.58}.project-card.preset-project{opacity:.66}.project-card.preset-project:focus-within,.project-card.preset-project:hover{opacity:.76}.project-card.collapsed-project .objective-row,.project-card.collapsed-project .yesterday-strip,.project-card.collapsed-project .section-matrix,.project-card.collapsed-project .context-counts{display:none}.project-card.collapsed-project .project-header{border-bottom-color:var(--line-soft)}.project-card.collapsed-project .focus-summary{display:flex}.focus-dimmed{opacity:.34;pointer-events:none;-webkit-user-select:none;user-select:none;transition:opacity .16s}.section-matrix{flex:1;display:block}.yesterday-strip{border-bottom:1px solid var(--line);background:var(--surface-warm)}.project-drawer>.yesterday-strip{border:1px solid var(--line);box-shadow:var(--shadow-subtle);border-radius:4px;margin:14px 16px;overflow:hidden}.yesterday-strip header{border-bottom:1px solid var(--line-soft);background:var(--surface-header);justify-content:space-between;align-items:center;gap:12px;min-height:34px;padding:0 14px;display:flex}.yesterday-strip header span{color:var(--text-muted);font-weight:700}.yesterday-strip header strong{color:var(--text-strong);font:13px/1 var(--mono)}.yesterday-list{display:grid}.yesterday-item{border-bottom:1px solid var(--line-soft);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;min-height:46px;padding:7px 10px 7px 14px;display:grid}.yesterday-item:last-child{border-bottom:0}.yesterday-item>div:first-child{min-width:0}.yesterday-item strong{color:var(--text-strong);white-space:nowrap;text-overflow:ellipsis;font-weight:500;display:block;overflow:hidden}.yesterday-item span{color:var(--text-muted);font:12px/1.35 var(--mono)}.yesterday-actions{align-items:center;gap:5px;display:flex}.yesterday-actions button{border:1px solid var(--line);background:var(--surface);min-width:74px;height:28px;color:var(--text-muted);border-radius:4px;justify-content:center;align-items:center;gap:5px;padding:0 8px;font-size:12px;display:inline-flex}.yesterday-actions button:hover{color:var(--text-strong);border-color:var(--line-hover)}.shared-project .section-matrix{display:block}.project-header,.project-title-row,.objective-row,.section-header,.task-row,.snapshot-line{align-items:center;display:flex}.project-header{border-bottom:1px solid var(--line);background:var(--surface-header);justify-content:space-between;min-height:54px;padding:0 14px}.focus-summary{min-height:38px;color:var(--text-muted);font:12px/1 var(--mono);align-items:center;gap:10px;padding:0 14px;display:none}.focus-summary span{white-space:nowrap;min-width:0}.project-title-row{gap:10px;min-width:0}.project-controls{flex:none;align-items:center;gap:6px;display:flex}.focus-toggle{color:var(--text-muted)}.focus-toggle.active{color:var(--inverse-text);background:var(--selected-strong);border-color:var(--selected-strong)}.focus-toggle.active:hover{background:var(--primary-hover)}.project-name-input,.view-heading h2{color:var(--text-strong);margin:0;font-weight:700}.project-name-input{width:min(260px,100%);min-width:0;font:700 18px/1.2 var(--sans);text-overflow:ellipsis;background:0 0;border:0;border-radius:3px;outline:0;padding:2px 3px}.project-name-input:hover,.project-name-input:focus,.objective-inline-field input:hover,.objective-inline-field input:focus,.drawer-title-input:hover,.drawer-title-input:focus{background:var(--field-hover);box-shadow:inset 0 -1px 0 var(--blue)}.project-avatar{background:var(--avatar-bg);width:28px;height:28px;color:var(--avatar-text);border-radius:4px;place-items:center;font-weight:700;display:none}.participant-count{border:1px solid var(--line);height:24px;color:var(--text-muted);font:12px/1 var(--mono);border-radius:4px;align-items:center;gap:5px;padding:0 7px;display:inline-flex}.start-date-chip{border:1px solid var(--line);background:var(--surface-raised);min-height:24px;color:var(--text-muted);font:11px/1 var(--mono);white-space:nowrap;border-radius:4px;align-items:center;padding:0 7px;display:inline-flex}.drag-muted{color:var(--text-muted)}.objective-row{border-bottom:1px solid var(--line-soft);background:var(--surface-raised);justify-content:space-between;gap:12px;min-height:40px;padding:0 14px}.objective-inline-field{flex:1;align-items:center;gap:12px;min-width:0;display:flex}.objective-row span,.objective-inline-field span,.section-header span,.view-heading p,.task-meta,.snapshot-line code,.timeline-event code{color:var(--text-muted)}.objective-row span,.objective-inline-field span,.section-header span{text-transform:none;white-space:nowrap;font-size:13px}.objective-row span,.objective-inline-field span{color:var(--text-muted);font-weight:600}.section-header span{font-weight:700}.objective-inline-field input{width:100%;min-width:0;color:var(--text-strong);font:500 13px/1.3 var(--sans);text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;border-radius:3px;outline:0;margin:0;padding:2px 3px;overflow:hidden}.section-block{border-bottom:1px solid var(--line);background:var(--surface);flex:1}.section-header{border-bottom:1px solid var(--line-soft);background:var(--surface-header);justify-content:space-between;height:34px;padding:0 14px}.section-header>div{align-items:center;gap:8px;display:flex}.section-header strong{font:13px/1 var(--mono)}.section-block.today .section-header,.section-block.today .section-header span,.task-row.today .tag{color:var(--text-strong)}.section-block.blocked .section-header,.section-block.blocked .section-header span,.task-row.blocked .tag{color:var(--orange)}.section-block.ready .section-header,.section-block.ready .section-header span,.task-row.ready .tag,.section-block.ideas .section-header,.section-block.ideas .section-header span,.task-row.ideas .tag{color:var(--text-muted)}.task-list{background:var(--surface);min-height:168px}.task-row{border-bottom:1px solid var(--line-soft);background:var(--surface);gap:9px;min-height:38px;padding:6px 14px}.task-edit-row{grid-template-columns:auto minmax(0,1fr) auto;align-items:start;display:grid}.inline-editor-main{gap:8px;min-width:0;display:grid}.inline-title-input,.inline-note-input,.modifier-fields input,.modifier-fields select{border:1px solid var(--line);background:var(--surface);width:100%;color:var(--text-strong);font:14px/1.35 var(--sans);border-radius:4px}.inline-title-input,.modifier-fields input,.modifier-fields select{height:34px;padding:0 9px}.inline-note-input{resize:vertical;min-height:58px;padding:8px 9px}.inline-edit-actions{flex:none;align-items:center;gap:6px;display:flex}.inline-edit-actions .button{height:32px;padding:0 10px}.task-row:last-child{border-bottom:0}.task-row:nth-of-type(2n){background:var(--row-alt)}.task-row:hover{background:var(--surface-soft)}.status-box{border:1px solid var(--status-border);background:var(--surface);width:18px;height:18px;color:var(--inverse-text);border-radius:3px;flex:none;place-items:center;padding:0;display:inline-grid}.status-box.ready{background:var(--green);border-color:var(--green)}.status-box.blocked{border-color:var(--orange)}@keyframes task-complete-settle{0%{opacity:1;transform:translateY(0)}45%{transform:translateY(1px)}to{opacity:.6;transform:translateY(0)}}@keyframes status-check-fill{0%{background:var(--surface);border-color:var(--status-border);color:var(--surface);transform:scale(1)}50%{transform:scale(1.14)}to{color:#fff;background:#b23a26;border-color:#b23a26;transform:scale(1)}}.task-row.completing{animation:.2s both task-complete-settle}.task-row.completing .status-box{animation:.2s both status-check-fill}@media (prefers-reduced-motion:reduce){.today-cap-meter-fill{transition:none}.task-row.completing,.task-row.completing .status-box{animation:none}}.task-main{flex:1;min-width:0}.task-title-button{width:100%;color:var(--text-strong);text-align:left;white-space:nowrap;text-overflow:ellipsis;background:0 0;border:0;padding:0;font-weight:500;display:block;overflow:hidden}.task-title-button:hover{color:var(--blue);background:0 0}.task-row.ready .task-title-button{color:var(--text-muted);text-decoration:line-through}.task-meta{flex-wrap:wrap;gap:7px;font-size:12px;line-height:1.35;display:flex}.tag{font:10px/1.4 var(--mono);text-transform:uppercase;border:1px solid;border-radius:3px;padding:1px 4px}.assignees{align-items:center;display:flex}.avatar{border:1px solid var(--avatar-border);width:24px;height:24px;color:var(--text-strong);background:var(--surface);font:11px/1 var(--mono);border-radius:50%;place-items:center;margin-left:-4px;display:inline-grid}.avatar:first-child{margin-left:0}.avatar.dark{background:var(--avatar-bg);color:var(--avatar-text);border-color:var(--avatar-bg);border-radius:4px}.task-row time{color:var(--text-muted);font:12px/1 var(--mono);white-space:nowrap}.task-actions{opacity:0;align-items:center;gap:4px;transition:opacity .14s;display:flex}.task-row:hover .task-actions,.task-row:focus-within .task-actions{opacity:1}.task-actions button{place-items:center;width:26px;height:26px;padding:0;display:inline-grid}.empty-copy{color:var(--text-muted);background:0 0;margin:0;padding:10px 14px;font-size:13px}.empty-add-row,.inline-add-row{appearance:none;border:0;border-bottom:1px solid var(--line-soft);width:100%;color:var(--text-muted);cursor:pointer;background:0 0}.empty-add-row{text-align:left;min-height:42px;font:13px/1.3 var(--sans);align-items:center;gap:9px;padding:6px 14px;display:flex}.inline-add-row{place-items:center start;min-height:34px;padding:0 14px;display:grid}.empty-add-row svg,.inline-add-row svg{flex:none}.empty-add-row:hover,.inline-add-row:hover{color:var(--blue);background:var(--surface-soft)}.inline-compose{align-items:center;gap:8px;width:100%;display:flex}.inline-compose-empty,.inline-compose-inline{border-bottom:1px solid var(--line-soft);min-height:42px;padding:5px 14px}.inline-compose-mini{width:auto}.inline-compose-input{appearance:none;border:1px solid var(--line);background:var(--surface);min-width:0;height:30px;color:var(--text-strong);font:13px/1.3 var(--sans);border-radius:4px;flex:auto;padding:0 9px}.inline-compose-input::placeholder{color:var(--text-muted)}.inline-compose-input:focus{border-color:#b23a26;outline:none}.inline-compose-mini .inline-compose-input{flex:0 150px;width:150px}.inline-compose-details{appearance:none;color:var(--text-muted);font:11px/1 var(--mono);letter-spacing:.02em;cursor:pointer;white-space:nowrap;background:0 0;border:0;flex:none;padding:4px 6px}.inline-compose-details:hover,.inline-compose-details:focus-visible{color:#b23a26}.more-copy{color:var(--text-muted);font:12px/1 var(--mono);border-top:1px solid var(--line-soft);margin:0;padding:9px 14px}.mobile-summary{display:none}.context-counts{background:var(--surface);flex-wrap:wrap;align-items:center;gap:8px;min-height:40px;margin-top:auto;padding:0 14px;display:flex}.context-chip{appearance:none;border:1px solid var(--line);background:var(--surface);min-height:24px;color:var(--text-muted);font:12px/1 var(--mono);white-space:nowrap;cursor:pointer;border-radius:4px;align-items:center;gap:5px;padding:0 7px;display:inline-flex}.context-chip.blocked{border-color:var(--line);color:var(--text-muted)}.context-chip.blocked svg{color:var(--orange)}.context-latest{color:var(--text-muted);font:12px/1 var(--mono);white-space:nowrap;margin-left:auto}.mobile-header,.mobile-nav{display:none}.stack-view,.history-view{gap:18px;display:grid}.view-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.view-heading h2{font-size:22px}.view-heading p{margin:6px 0 0}.snapshot-panel,.timeline-panel{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-subtle);border-radius:4px}.history-grid{grid-template-columns:360px minmax(0,1fr);align-items:start;gap:16px;display:grid}.snapshot-panel,.timeline-panel{padding:14px}.snapshot-panel h3,.timeline-panel h3{color:var(--text-strong);margin:0 0 12px;font-size:15px}.snapshot{border-top:1px solid var(--line-soft);padding:12px 0}.snapshot:first-of-type{border-top:0}.snapshot>strong{color:var(--text-strong);margin-bottom:8px;display:block}.snapshot-line{justify-content:space-between;gap:12px;min-height:26px}.snapshot-line span{color:var(--text-strong)}.snapshot-line code,.timeline-event code{font-family:var(--mono);font-size:12px}.snapshot-notes{border-top:1px solid var(--line-soft);gap:7px;margin-top:10px;padding-top:10px;display:grid}.snapshot-notes>span{color:var(--text-muted);font:11px/1 var(--mono);text-transform:uppercase}.snapshot-notes p{border-left:2px solid var(--note-accent);background:var(--note-bg);color:var(--note-text);border-radius:4px;margin:0;padding:10px 12px;line-height:1.6}.timeline-event{border-top:1px solid var(--line-soft);padding:12px 0}.timeline-event:first-of-type{border-top:0}.timeline-event>div{align-items:baseline;gap:10px;display:flex}.timeline-event strong{color:var(--text-strong);text-transform:capitalize}.timeline-event span,.timeline-event p{color:var(--text-muted)}.timeline-event p{margin:4px 0 6px}.settings-view{gap:18px;display:grid}.settings-panel{border:1px solid var(--line);background:var(--surface);width:min(720px,100%);box-shadow:var(--shadow-subtle);border-radius:4px}.settings-section{border-top:1px solid var(--line-soft);gap:12px;padding:16px;display:grid}.settings-section:first-child{border-top:0}.settings-section h3{color:var(--text-strong);margin:0;font-size:15px}.settings-section p{color:var(--text-muted);margin:0;line-height:1.45}.settings-row{border:1px solid var(--line-soft);background:var(--surface-raised);border-radius:4px;justify-content:space-between;align-items:center;gap:12px;min-height:38px;padding:0 10px;display:flex}.settings-row span{color:var(--text-muted);font:12px/1 var(--mono)}.settings-row strong{text-overflow:ellipsis;min-width:0;color:var(--text-strong);font-weight:600;overflow:hidden}.cap-control{grid-template-columns:minmax(0,1fr) 76px;align-items:center;gap:12px;display:grid}.cap-control input[type=range]{width:100%}.cap-control input[type=number]{border:1px solid var(--line);background:var(--surface);height:38px;color:var(--text-strong);font:14px/1 var(--mono);border-radius:4px;padding:0 10px}.calendar-heading{align-items:end}.calendar-controls{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.calendar-month{border:1px solid var(--line);background:var(--surface);min-height:34px;color:var(--text-strong);border-radius:4px;align-items:center;padding:0 10px;font-weight:700;display:inline-flex}.calendar-today-button{height:34px}.calendar-layout{grid-template-columns:minmax(0,1fr) minmax(340px,400px);align-items:start;gap:16px;display:grid}.calendar-panel,.calendar-summary{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-subtle);border-radius:4px}.calendar-panel{padding:8px;overflow:hidden}.calendar-weekdays,.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-weekdays{background:0 0;gap:6px}.calendar-weekdays span{min-height:28px;color:var(--text-muted);font:12px/1 var(--mono);place-items:center;display:grid}.calendar-grid{background:0 0;gap:5px}.calendar-day,.calendar-blank{background:var(--surface-raised);border:1px solid var(--line-soft);border-radius:4px;min-height:clamp(78px,16.6667svh - 48.6667px,104px)}.calendar-day{appearance:none;color:var(--text-strong);cursor:pointer;text-align:left;grid-template-rows:auto 1fr auto;justify-items:start;padding:10px;display:grid;position:relative}.calendar-day:hover{border-color:var(--line-hover)}.calendar-day-number{width:28px;height:28px;font:13px/1 var(--mono);border-radius:4px;place-items:center;display:inline-grid}.calendar-marker{background:var(--calendar-marker);border-radius:999px;align-self:end;width:7px;height:7px;margin:0 0 2px 2px}.calendar-day.today{outline:2px solid var(--calendar-today-outline);outline-offset:-2px}.calendar-day.selected{border-color:var(--selected-strong);box-shadow:inset 0 0 0 1px var(--selected-strong)}.calendar-day.heat-1{background:var(--heat-1)}.calendar-day.heat-2{background:var(--heat-2)}.calendar-day.heat-3{background:var(--heat-3);color:var(--heat-3-text)}.calendar-summary{gap:0;display:grid;overflow:hidden}.calendar-summary-section{border-top:1px solid var(--line-soft);gap:12px;padding:14px;display:grid}.calendar-summary-section:first-child{border-top:0}.calendar-summary h3,.calendar-section-heading h3{color:var(--text-strong);margin:0;font-size:15px}.calendar-section-heading{justify-content:space-between;align-items:center;gap:10px;min-width:0;display:flex}.calendar-section-heading span{color:var(--text-muted);font:12px/1 var(--mono);text-transform:uppercase}.calendar-stat{border-top:1px solid var(--line-soft);gap:3px;padding-top:12px;display:grid}.calendar-stat:first-of-type{border-top:0;padding-top:0}.calendar-stat strong{color:var(--text-strong);font-size:24px;line-height:1}.calendar-stat span{color:var(--text-muted)}.scheduled-editor-list{gap:8px;display:grid}.scheduled-editor-row{border:1px solid var(--line-soft);background:var(--surface-raised);border-radius:4px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px;display:grid}.scheduled-editor-row input,.scheduled-editor-row select,.scheduled-composer input,.scheduled-composer select{border:1px solid var(--line);background:var(--surface);min-width:0;height:34px;color:var(--text-strong);font:inherit;border-radius:4px;padding:0 9px}.scheduled-editor-row input:first-child{grid-column:1/-1}.scheduled-editor-row select,.scheduled-editor-row input[aria-label="Scheduled new project name"]{grid-column:1}.scheduled-editor-row .icon-button{grid-area:2/2}.scheduled-composer{gap:8px;display:grid}.scheduled-composer .button{width:100%}.calendar-day-popover{z-index:30;border:1px solid var(--popover-border);background:var(--surface-raised);width:min(320px,100vw - 24px);max-height:min(70svh,100svh - 24px);box-shadow:var(--shadow-popover);border-radius:4px;gap:10px;padding:10px;display:grid;position:fixed;overflow-y:auto}.calendar-popover-heading{justify-content:space-between;align-items:start;gap:12px;display:flex}.calendar-popover-heading>div{gap:3px;min-width:0;display:grid}.calendar-popover-heading strong{color:var(--text-strong);font-size:14px;line-height:1.15}.calendar-popover-heading span,.calendar-popover-subhead{color:var(--text-muted);font:11px/1 var(--mono);text-transform:uppercase}.calendar-popover-group{gap:8px;display:grid}.calendar-popover-stat{border:1px solid var(--line-soft);background:var(--surface);border-radius:4px;align-items:baseline;gap:8px;padding:10px;display:flex}.calendar-popover-stat strong{color:var(--text-strong);font:700 22px/1 var(--mono)}.calendar-popover-stat span{color:var(--text-muted);font-size:12px}.calendar-completed-list{gap:6px;display:grid}.calendar-completed-item{border:1px solid var(--line-soft);background:var(--surface);border-radius:4px;gap:3px;min-width:0;padding:8px;display:grid}.calendar-completed-item strong{color:var(--text-strong);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.calendar-completed-item span{color:var(--text-muted);font:11px/1.2 var(--mono);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.year-panel{gap:9px}.year-grid{gap:7px;display:grid;overflow:visible}.year-month-row{grid-template-columns:24px minmax(0,1fr);align-items:center;gap:6px;min-height:13px;display:grid}.year-month-label{color:var(--text-muted);font:10px/1 var(--mono);text-transform:uppercase}.year-month-row.current-month .year-month-label{color:var(--text-strong)}.year-month-days{grid-template-columns:repeat(31,minmax(0,1fr));gap:3px;min-width:0;display:grid}.year-day{appearance:none;aspect-ratio:1;border:1px solid var(--line-soft);background:var(--surface-raised);cursor:pointer;border-radius:3px;width:100%;min-width:0;height:auto;min-height:9px;padding:0}.year-day.blank{cursor:default;background:0 0;border-color:#0000}.year-day.heat-1{background:var(--heat-1)}.year-day.heat-2{background:var(--heat-2)}.year-day.heat-3{border-color:var(--heat-3-border);background:var(--heat-3)}.year-day.today{outline:1px solid var(--calendar-marker);outline-offset:1px}.year-day.selected{box-shadow:0 0 0 1px var(--selected-strong)}.modal-backdrop,.drawer-backdrop{z-index:40;background:var(--backdrop);position:fixed;inset:0}.modal-backdrop{place-items:center;padding:24px;display:grid}.modal-panel{border:1px solid var(--panel-border);background:var(--surface);width:min(560px,100vw - 32px);max-height:calc(100svh - 48px);box-shadow:var(--shadow-modal);border-radius:4px;overflow:auto}.modal-panel.wide{width:min(760px,100vw - 32px)}.modal-header{border-bottom:1px solid var(--line);background:var(--surface-header);justify-content:space-between;align-items:center;gap:12px;min-height:54px;padding:0 14px;display:flex}.modal-header h2{color:var(--text-strong);margin:0;font-size:17px;line-height:1.2}.modal-form{gap:12px;padding:14px;display:grid}.modal-form.two-column{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:12px}.modal-form label{color:var(--text-strong);gap:6px;font-weight:600;display:grid}.modal-form label>span{color:var(--text-muted);font:12px/1.2 var(--mono)}.modal-form input,.modal-form select,.modal-form textarea{border:1px solid var(--line);background:var(--surface);width:100%;color:var(--text-strong);font:14px/1.35 var(--sans);border-radius:4px}.modal-form input,.modal-form select{height:38px;padding:0 10px}.modal-form textarea{resize:vertical;min-height:86px;padding:9px 10px}.project-create-form{gap:14px}.choice-fieldset{border:1px solid var(--line-soft);background:var(--surface-raised);border-radius:4px;gap:10px;margin:0;padding:10px;display:grid}.choice-fieldset legend{color:var(--text-muted);font:12px/1 var(--mono);padding:0 4px}.date-field{border:1px solid var(--line);background:var(--surface);width:fit-content;min-height:34px;color:var(--text-strong);cursor:pointer;border-radius:4px;align-items:center;gap:8px;padding:0 12px;display:inline-flex;position:relative}.date-field:hover{background:var(--surface-soft)}.date-field:focus-visible{outline:2px solid var(--blue);outline-offset:2px}.date-field svg{color:var(--text-muted);flex:none}.date-field input[type=date]{opacity:0;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.project-mode-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.mode-choice{border:1px solid var(--line);background:var(--surface);border-radius:4px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:8px;min-width:0;padding:10px;display:grid}.mode-choice input{width:14px;height:14px;margin-top:2px}.mode-choice strong,.mode-choice small{display:block}.mode-choice strong{color:var(--text-strong);font-size:13px}.mode-choice small{color:var(--text-muted);margin-top:3px;font-size:12px;line-height:1.3}.mode-choice.disabled{opacity:.58}.modal-form .check-label.inline{min-height:38px;color:var(--text-strong);align-items:center;gap:8px;font-weight:500;display:flex}.modal-form .check-label.inline input{width:15px;height:15px}.wide-field{grid-column:1/-1}.modal-copy{border:1px solid var(--line-soft);background:var(--surface-soft);color:var(--text-strong);border-radius:4px;margin:0;padding:10px 12px}.modal-context{color:var(--text-muted);font:12px/1 var(--mono);margin:0}.modifier-toggle{appearance:none;border:1px solid var(--line);background:var(--surface-soft);width:fit-content;min-height:34px;color:var(--text-strong);font:inherit;cursor:pointer;border-radius:4px;align-items:center;gap:8px;padding:0 10px;display:inline-flex}.modifier-menu-wrap{width:fit-content;position:relative}.modifier-dropdown{z-index:6;border:1px solid var(--line-soft);background:var(--surface);box-shadow:var(--shadow-subtle);border-radius:4px;gap:2px;min-width:138px;padding:4px;display:grid;position:absolute;top:calc(100% + 6px);left:0}.modifier-dropdown button{appearance:none;min-height:34px;color:var(--text-strong);text-align:left;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:3px;align-items:center;gap:9px;padding:0 9px;display:flex}.modifier-dropdown button:hover,.modifier-dropdown button.active{background:var(--surface-soft)}.modifier-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.modifier-fields label{gap:5px;display:grid}.modifier-fields span{color:var(--text-muted);font:12px/1 var(--mono)}.modal-actions{justify-content:flex-end;align-items:center;gap:8px;padding-top:2px;display:flex}.modal-panel>.modal-actions{padding:0 14px 14px}.close-day-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;padding:14px;display:grid}.close-day-grid section{border:1px solid var(--line);background:var(--surface);border-radius:4px;padding:12px}.close-day-grid h3{color:var(--text-strong);margin:0 0 10px;font-size:14px}.close-day-item{border-top:1px solid var(--line-soft);gap:3px;min-height:42px;padding:9px 0;display:grid}.close-day-item:first-of-type{border-top:0;padding-top:0}.close-day-item strong{color:var(--text-strong);font-weight:500}.close-day-item span{color:var(--text-muted);font:12px/1.2 var(--mono)}.day-recap{flex-direction:column;gap:14px;padding:14px;display:flex}.day-recap-lead{align-items:baseline;gap:8px;margin:0;display:flex}.day-recap-count{color:var(--text-strong);font:700 26px/1 var(--mono)}.day-recap-word{color:var(--text-muted);font-size:13px}.day-recap-list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.day-recap-list li{border-top:1px solid var(--line-soft);align-items:baseline;gap:8px;padding:8px 0;display:flex}.day-recap-list li:first-child{border-top:0}.day-recap-list svg{color:#b23a26;flex:none;transform:translateY(2px)}.day-recap-title{color:var(--text-strong);min-width:0;font-weight:500}.day-recap-project{color:var(--text-muted);font:12px/1.2 var(--mono);white-space:nowrap;margin-left:auto}.day-recap-streak{border-top:1px solid var(--line);color:var(--text-muted);align-items:center;gap:7px;margin:0;padding-top:12px;font-size:13px;display:flex}.day-recap-streak svg{color:#b23a26}.day-recap-streak strong{color:#b23a26;font:700 15px/1 var(--mono)}.drawer-backdrop{z-index:35;justify-content:flex-end;display:flex}.project-drawer{border-left:1px solid var(--panel-border);background:var(--surface-drawer);width:min(640px,100vw);height:100svh;box-shadow:var(--shadow-drawer);overflow:auto}.drawer-header{z-index:2;border-bottom:1px solid var(--line);background:var(--surface);justify-content:space-between;align-items:center;gap:12px;min-height:68px;padding:12px 16px;display:flex;position:sticky;top:0}.drawer-title-input{width:min(320px,100%);color:var(--text-strong);font:700 22px/1 var(--sans);background:0 0;border:0;border-radius:3px;outline:0;margin:4px 0 0;padding:2px 3px}.drawer-header h2{color:var(--text-strong);margin:4px 0 0;font-size:22px;line-height:1}.drawer-objective{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-subtle);border-radius:4px;justify-content:space-between;align-items:start;gap:12px;margin:14px 16px;padding:12px;display:flex}.drawer-objective>div{min-width:0}.drawer-objective span{color:var(--text-muted);font:12px/1 var(--mono)}.drawer-objective p{color:var(--text-strong);margin:6px 0 0;font-size:16px;line-height:1.35}.drawer-sections,.drawer-panel{margin:14px 16px}.drawer-sections{gap:12px;display:grid}.project-drawer .section-block,.drawer-panel{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-subtle);border-radius:4px;overflow:hidden}.project-drawer .task-list{min-height:0}.drawer-panel{padding:12px}.drawer-footer{border-top:1px solid var(--line-soft);justify-content:flex-end;margin:24px 16px 16px;padding-top:14px;display:flex}.drawer-remove-project{appearance:none;color:var(--text-muted);font:inherit;cursor:pointer;background:0 0;border:0;padding:6px 4px;font-size:12px}.drawer-remove-project:hover,.drawer-remove-project.confirm{color:var(--blue)}.drawer-panel h3{color:var(--text-strong);margin:0 0 10px;font-size:14px}.scheduled-row{border-top:1px solid var(--line-soft);justify-content:space-between;align-items:center;gap:12px;min-height:46px;padding:9px 0;display:flex}.scheduled-row:first-of-type{border-top:0}.scheduled-row div{gap:3px;min-width:0;display:grid}.scheduled-row .task-title-button{color:var(--text-strong);white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.scheduled-row span{color:var(--text-muted);font:12px/1.2 var(--mono)}.timeline-event.compact{padding:10px 0}@media (width<=1220px){.today-layout:not(.focusmode){grid-template-columns:1fr}.today-layout:not(.focusmode) .loose-stream{border-left:0;border-top:1px solid var(--line-soft);padding-top:8px}.project-grid{grid-template-columns:repeat(auto-fit,minmax(340px,1fr))}}@media (width<=860px){.app-shell{padding-bottom:78px;display:block}.sidebar,.topbar{display:none}.mobile-header{background:var(--surface);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:14px;height:68px;padding:0 22px;display:flex}.mobile-title{gap:3px;min-width:0;display:grid}.mobile-header strong{color:var(--text-strong);font-size:24px;line-height:1}.mobile-header span{color:var(--text-strong);font-size:15px;line-height:1}.mobile-header-actions{flex:none;align-items:center;gap:8px;display:flex}.main-surface{padding:18px 20px 24px}.quick-composer{grid-template-columns:1fr;margin:0 20px 16px}.today-layout:not(.focusmode){display:block}.today-layout.focusmode{grid-template-columns:minmax(0,1fr) 40px;display:grid}.today-cap-strip{grid-template-columns:1fr;align-items:start;display:grid}.yesterday-item{grid-template-columns:1fr;align-items:start;padding:10px 22px}.yesterday-actions{grid-template-columns:repeat(3,minmax(0,1fr));width:100%;display:grid}.yesterday-actions button{width:100%;min-width:0}.completed-header{grid-template-columns:minmax(0,1fr) auto auto}.completed-actions{grid-column:1/-1;grid-template-columns:1fr 1fr;display:grid}.project-grid,.project-grid.full-width{grid-template-columns:1fr;gap:18px;display:grid}.project-card{border-radius:4px;min-height:330px}.project-card.focused-project{outline-offset:2px;outline-width:2px}.project-card.collapsed-project{min-height:104px;max-height:104px}.project-card.dimmed-project{opacity:.58}.shared-project,.shared-project .section-matrix{display:block}.project-header{min-height:64px;padding:0 22px}.project-avatar{display:grid}.project-name-input{width:100%;font-size:25px}.objective-row{padding:14px 22px 18px;display:block}.objective-inline-field{display:block}.objective-row span,.objective-inline-field span,.section-header span{text-transform:uppercase;letter-spacing:0;margin-bottom:10px;font-size:13px;display:block}.objective-inline-field input{white-space:nowrap;font-size:18px;line-height:1.35}.section-header{height:48px;padding:0 22px}.section-header span{margin:0}.task-row{gap:12px;min-height:58px;padding:8px 22px}.task-title-button{font-size:17px}.task-actions{display:none}.task-edit-row{grid-template-columns:auto minmax(0,1fr)}.task-edit-row .inline-edit-actions{grid-column:2}.modifier-fields,.calendar-layout{grid-template-columns:1fr}.calendar-day,.calendar-blank{min-height:76px}.calendar-day{padding:7px}.task-row time{font-size:13px}.secondary .task-list{display:none}.secondary .mobile-summary{min-height:48px;color:var(--text-strong);border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:center;padding:0 22px;display:flex}.context-latest{width:100%;margin-left:0;padding-top:2px}.view-heading,.history-grid{grid-template-columns:1fr;display:grid}.view-heading{gap:12px;margin-bottom:4px}.modal-backdrop{align-items:end;padding:12px}.modal-panel,.modal-panel.wide{width:100%;max-height:calc(100svh - 24px)}.modal-form.two-column,.close-day-grid{grid-template-columns:1fr}.modal-actions{grid-template-columns:1fr 1fr;display:grid}.project-mode-choices,.cap-control{grid-template-columns:1fr}.modal-actions .button{width:100%}.project-drawer{width:100vw}.drawer-header{min-height:64px;padding:12px 16px}.drawer-objective,.drawer-sections,.drawer-panel{margin-left:12px;margin-right:12px}.project-drawer .secondary .task-list{display:block}.project-drawer .secondary .mobile-summary{display:none}.mobile-nav{background:var(--mobile-nav-bg);border-top:1px solid var(--line);height:66px;box-shadow:var(--shadow-mobile-nav);z-index:10;grid-template-columns:repeat(3,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-nav button{color:var(--text-muted);font:12px/1 var(--sans);background:0 0;border:0;place-items:center;gap:3px;display:grid}.mobile-nav button.active{color:var(--text-strong);box-shadow:inset 0 2px 0 var(--blue)}.landing-nav,.landing-footer{padding-left:20px;padding-right:20px}.landing-footer{flex-direction:column;justify-content:center;align-items:flex-start;gap:4px;min-height:76px}.hero-page{min-height:min(620px,100svh - 140px);padding:42px 20px 58px}.legal-page{width:calc(100vw - 40px);padding-top:32px;padding-bottom:48px}.legal-header h1{font-size:42px}}.settings-danger{border-top:1px solid #be3c2840;padding-top:18px}.settings-danger h3{color:#b23a26}.button.danger{color:#fff;background:#b23a26;border:1px solid #b23a26}.button.danger:hover:not(:disabled){background:#9a3020;border-color:#9a3020}.button.danger:disabled{opacity:.55;cursor:not-allowed}.danger-confirm{flex-direction:column;gap:10px;margin-top:8px;display:flex}.danger-confirm label{font-size:.9rem}.danger-confirm input{font:inherit;border:1px solid #be3c2866;border-radius:8px;padding:8px 10px}.danger-actions{gap:10px;display:flex}.danger-error{color:#b23a26;margin:0;font-size:.88rem}@media (width<=520px){.main-surface{padding-left:16px;padding-right:16px}.mobile-header{padding:0 16px}.mobile-header strong{font-size:21px}.mobile-header span{font-size:14px}.landing-brand{font-size:17px}.landing-nav .button{height:38px;padding:0 10px}.hero-copy h1{font-size:clamp(52px,16vw,68px)}.task-row{grid-template-columns:auto minmax(0,1fr) auto}.task-row .assignees{display:none}}.auth-intro{color:var(--text-muted);margin:0 0 14px;font-size:13px;line-height:1.5}.field-optional{color:var(--text-muted);font-weight:400}.auth-link{color:#b23a26;font:inherit;cursor:pointer;background:0 0;border:none;padding:0;text-decoration:none}.auth-link:hover{text-decoration:underline}.forgot-link{cursor:pointer;color:var(--text-muted);font:12px/1 var(--sans);background:0 0;border:none;padding:0;text-decoration:none}.forgot-link:hover{color:#b23a26;text-decoration:underline}.auth-switch{text-align:center;color:var(--text-muted);margin:0;padding:0 22px 22px;font-size:13px}.auth-switch p{margin:0}.reset-page{justify-content:center;align-items:center;display:flex}.reset-panel{width:100%;max-width:380px}.profile-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:600;display:block;overflow:hidden}.settings-name{flex-direction:column;gap:8px;margin:12px 0;display:flex}.settings-name label{color:var(--text-muted);font:12px/1 var(--mono)}.settings-name-row{gap:8px;display:flex}.settings-name-row input{border:1px solid var(--line);background:var(--surface);color:var(--text-strong);font:inherit;border-radius:8px;flex:1;padding:8px 10px}.settings-switch{cursor:pointer;align-items:flex-start;gap:12px;display:flex}.settings-switch-copy{color:var(--text-muted);line-height:1.45}.switch-track{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:999px;flex:none;width:40px;height:22px;margin-top:2px;padding:0;transition:background-color .14s,border-color .14s;position:relative}.switch-track:disabled{cursor:default;opacity:.6}.switch-track.on{background:#b23a26;border-color:#b23a26}.switch-thumb{background:var(--text-muted);border-radius:50%;width:16px;height:16px;transition:transform .14s;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #0003}.switch-track.on .switch-thumb{background:#fff;transform:translate(18px)}.switch-track:focus-visible{outline-offset:2px;outline:2px solid #b23a26}@media (prefers-reduced-motion:reduce){.switch-track,.switch-thumb{transition:none}}
