@import "https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,400&family=Fraunces:opsz,wght@9..144,480;9..144,560;9..144,640&display=swap";:root{--sand:#f4f0e9;--sand-deep:#ebe6dc;--cream:#f9f6f1;--paper:#fcfbf8;--fg:#1a1917;--muted:#736e66;--line:#e4ddd2;--line-strong:#1a1917;--hover:#1a19170a;--shadow:#372a1814;--ellis-fill:#1a1917;--ellis-fg:#fcfbf8;--login-tip-blue:#2a5494;--accent:#b4562a;--accent-strong:#96431e;--accent-soft:#b4562a1c;--ok:#48734d;--ok-soft:#48734d21;--warn:#9c661b;--warn-soft:#9c661b21;--danger:#a03a2c;--danger-soft:#a03a2c1a;--r-sm:8px;--r-md:12px;--r-lg:18px;--r-pill:999px;--shadow-sm:0 1px 2px #372a180d, 0 3px 10px -6px #372a181a;--shadow-md:0 2px 4px #372a180d, 0 12px 28px -14px #372a182e;--shadow-lg:0 2px 6px #372a180d, 0 24px 48px -20px #372a1838;--font-display:"Fraunces", Georgia, "Times New Roman", serif;--ease-spring:cubic-bezier(.34, 1.4, .44, 1);--login-gap-card:1rem;--login-gap-form:.75rem;--login-gap-stack:.45rem;--account-gap-section:1.75rem;--account-gap-stack:.65rem;--account-gap-panel:.85rem;--font:"DM Sans", ui-sans-serif, system-ui, sans-serif;--ease:cubic-bezier(.22, 1, .36, 1);--indent:1.35rem;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%}body{background:radial-gradient(1000px 520px at 10% -10%, #fffcf7 0%, transparent 60%), linear-gradient(180deg, var(--cream) 0%, var(--sand) 55%, var(--sand-deep) 100%);color:var(--fg);font-family:var(--font);font-optical-sizing:auto;letter-spacing:.015em;-webkit-font-smoothing:antialiased;background-attachment:fixed;margin:0;font-size:15px;line-height:1.5}body:after{content:"";pointer-events:none;z-index:0;height:75vh;animation:aurora 22s var(--ease) infinite alternate;background:radial-gradient(560px 360px at 84% 4%,#b4562a13,#0000 70%),radial-gradient(680px 420px at 10% -8%,#2a54940e,#0000 70%),radial-gradient(480px 320px at 52% -2%,#c6983e12,#0000 70%);position:fixed;inset:-12% -8% auto}@keyframes aurora{0%{opacity:.9;transform:translate(-1.5%,-1%)scale(1)}to{opacity:1;transform:translate(1.5%,2.5%)scale(1.07)}}::selection{background:color-mix(in srgb, var(--accent) 24%, transparent)}:focus-visible{outline:2px solid color-mix(in srgb, var(--accent) 70%, transparent);outline-offset:2px}*{scrollbar-width:thin;scrollbar-color:color-mix(in srgb, var(--muted) 45%, transparent) transparent}body:before{content:"";pointer-events:none;opacity:.018;z-index:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}button,input,select{font:inherit;color:inherit}a{color:var(--fg);text-underline-offset:.18em;transition:opacity .15s var(--ease)}a:hover{opacity:.55}.shell{z-index:1;max-width:760px;margin:0 auto;padding:3rem 1.25rem 5rem;position:relative}.top{animation:rise .48s var(--ease) both;margin-bottom:1.5rem}.top.compact{margin-bottom:1.15rem}.brand{flex-direction:column;gap:.3rem;display:flex}.mark{letter-spacing:.2em;text-transform:uppercase;color:var(--muted);align-items:center;gap:.45rem;font-size:.68rem;font-weight:650;display:inline-flex}.mark:before{content:"";background:linear-gradient(135deg, var(--accent), #d99a4e);width:.5rem;height:.5rem;box-shadow:0 0 0 3px var(--accent-soft);border-radius:50%}h1{font-family:var(--font-display);letter-spacing:-.02em;background:linear-gradient(120deg, var(--fg) 55%, color-mix(in srgb, var(--accent) 55%, var(--fg)) 100%);-webkit-text-fill-color:transparent;color:var(--fg);-webkit-background-clip:text;background-clip:text;margin:0;padding-bottom:.14em;font-size:clamp(2rem,4.2vw,2.6rem);font-weight:560;line-height:1.22;overflow:visible}.lede{color:var(--muted);margin:.65rem 0 0;font-size:.95rem}.lede.tight{letter-spacing:.02em;margin-top:.4rem;font-size:.88rem}.back{letter-spacing:.02em;animation:rise .32s var(--ease) both;margin-bottom:1.25rem;font-size:.85rem;font-weight:600;text-decoration:none;display:inline-block}.back:hover{opacity:.6}.crumbs{color:var(--muted);animation:rise .32s var(--ease) both;flex-wrap:wrap;align-items:center;gap:.35rem .45rem;margin:0 0 1.1rem;font-size:.82rem;line-height:1.35;display:flex}.crumb{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;max-width:12rem;font-weight:550;text-decoration:none;overflow:hidden}a.crumb:hover{color:var(--fg);opacity:.75}.crumb.current{color:var(--fg);max-width:16rem}.crumb-sep{opacity:.5;-webkit-user-select:none;user-select:none}.parent-link{color:var(--muted);margin:-.4rem 0 1rem;font-size:.88rem}.controls{background:color-mix(in srgb, var(--paper) 86%, transparent);border:1px solid var(--line);border-radius:var(--r-lg);-webkit-backdrop-filter:blur(14px)saturate(1.15);box-shadow:var(--shadow-sm);animation:rise .54s var(--ease) both;flex-wrap:wrap;align-items:flex-end;gap:.65rem .85rem;margin-bottom:1.1rem;padding:.8rem .9rem;animation-delay:40ms;display:flex}.segs{border:1px solid var(--line);border-radius:var(--r-pill);background:color-mix(in srgb, var(--sand) 60%, var(--paper));gap:2px;padding:3px;display:inline-flex;box-shadow:inset 0 1px 2px #372a180d}.seg{appearance:none;border-radius:var(--r-pill);cursor:pointer;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);transition:background .18s var(--ease), color .18s var(--ease), box-shadow .18s var(--ease);background:0 0;border:0;padding:.42rem .7rem;font-size:9px;font-weight:650}.seg:hover{background:var(--hover);color:var(--fg)}.seg.on{background:var(--fg);color:var(--paper);box-shadow:0 2px 8px -2px #1a191773}.ctl{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);flex-direction:column;gap:.2rem;font-size:10px;font-weight:600;display:flex}.ctl.grow{flex:160px;min-width:140px}.ctl select,.ctl input{appearance:none;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-sm);letter-spacing:.01em;text-transform:none;color:var(--fg);transition:border-color .15s var(--ease), box-shadow .15s var(--ease);outline:none;padding:.45rem .6rem;font-size:13px;font-weight:500}.ctl select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%23736e66' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right .6rem center;background-repeat:no-repeat;padding-right:1.7rem}.ctl select:focus,.ctl input:focus{border-color:color-mix(in srgb, var(--accent) 65%, var(--line));box-shadow:0 0 0 3px var(--accent-soft)}.ghost{appearance:none;border:1px solid var(--line-strong);border-radius:var(--r-pill);cursor:pointer;text-transform:uppercase;letter-spacing:.08em;transition:background .15s var(--ease), color .15s var(--ease), box-shadow .15s var(--ease), transform .15s var(--ease-spring);background:0 0;padding:.45rem .8rem;font-size:10px;font-weight:650}.ghost:hover{background:var(--fg);color:var(--paper);transform:translateY(-1px);box-shadow:0 8px 18px -10px #1a191780}.ghost:disabled{opacity:.35;cursor:default}.ghost:active{transform:scale(.97)}.refresh{align-self:flex-end;margin-left:auto}.refresh.is-busy{animation:.9s infinite pulse}.banner{border:1px solid color-mix(in srgb, var(--danger) 40%, var(--line));border-radius:var(--r-md);background:color-mix(in srgb, var(--paper) 92%, var(--danger));box-shadow:var(--shadow-sm);margin:0 0 1rem;padding:.75rem .9rem}.banner .hint{color:var(--muted);margin-top:.35rem;font-size:12px;display:block}.list.dim{opacity:.4}.list.dim .empty{animation:1.4s ease-in-out infinite pulse}.empty{color:var(--muted);margin:2.5rem 0}.todo-list{animation:rise .42s var(--ease) both;flex-direction:column;gap:.65rem;margin:0;padding:0;list-style:none;display:flex}.todo{--depth:0;margin-left:calc(var(--depth) * 1.75rem);background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-sm);transition:background .14s var(--ease), border-color .14s var(--ease), transform .2s var(--ease-spring), box-shadow .2s var(--ease);animation:rise .36s var(--ease) both;align-items:center;gap:.55rem;padding:.85rem 1rem .85rem .65rem;display:flex;position:relative}.todo:first-child{animation-delay:20ms}.todo:nth-child(2){animation-delay:40ms}.todo:nth-child(3){animation-delay:60ms}.todo:nth-child(4){animation-delay:80ms}.todo:nth-child(5){animation-delay:.1s}.todo:hover{border-color:color-mix(in srgb, var(--accent) 32%, var(--line));box-shadow:var(--shadow-md);transform:translateY(-2px)}.todo.is-child{border-left:2px solid color-mix(in srgb, var(--accent) 50%, var(--line));background:color-mix(in srgb, var(--paper) 88%, var(--sand))}.todo-disclose{appearance:none;width:1.5rem;height:1.5rem;color:var(--muted);cursor:pointer;transition:color .14s var(--ease), background .14s var(--ease);background:0 0;border:0;border-radius:2px;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.todo-disclose:hover{color:var(--fg);background:var(--hover)}.todo-disclose.spacer{cursor:default;pointer-events:none;visibility:hidden}.todo-disclose.child-mark{cursor:default;pointer-events:none;color:var(--fg);opacity:.45;font-size:1.35rem;font-weight:700;line-height:1}.todo.has-children:not(.is-expanded) .todo-title{font-weight:650}.todo.status-done .todo-title{color:var(--muted);text-decoration:line-through}.todo.status-dismissed{opacity:.55}.todo-body{min-width:0;color:inherit;flex-direction:column;flex:1;gap:.28rem;padding:.05rem 0;text-decoration:none;display:flex}.todo-body:hover{opacity:1;cursor:pointer}.todo-title{letter-spacing:-.015em;font-size:1rem;font-weight:600;line-height:1.35}.todo-preview{color:var(--muted);letter-spacing:.01em;font-size:.86rem;line-height:1.4}.todo-meta{flex-wrap:wrap;gap:.3rem;margin-top:.15rem;display:flex}.pill{border:1px solid var(--line);border-radius:var(--r-pill);letter-spacing:.04em;color:var(--fg);background:color-mix(in srgb, var(--sand) 45%, var(--paper));align-items:center;padding:.12rem .48rem;font-size:10px;font-weight:600;display:inline-flex}.pill.muted{color:var(--muted);font-weight:500}.pill.status-pill{text-transform:uppercase;letter-spacing:.1em;background:color-mix(in srgb, var(--fg) 6%, var(--paper));color:var(--muted);border:0;padding:.14rem .45rem;font-size:.68rem;font-weight:650}.pill.status-pill.status-open{background:var(--accent-soft);color:var(--accent-strong);opacity:1}.pill.status-pill.status-done{background:var(--ok-soft);color:var(--ok);opacity:1}.pill.status-pill.status-wrong_redo{background:var(--warn-soft);color:var(--warn);opacity:1}.pill.prio-urgent{border-color:var(--danger);background:var(--danger);color:#fdf8f4}.pill.prio-high{border-color:color-mix(in srgb, var(--warn) 55%, var(--line));background:var(--warn-soft);color:var(--warn)}.pill.prio-low{opacity:.8}.detail-card{background:linear-gradient(180deg, var(--paper) 0%, color-mix(in srgb, var(--paper) 96%, var(--sand)) 100%);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);animation:rise .42s var(--ease) both;padding:1.6rem 1.5rem 1.4rem}.detail-head{grid-template-columns:1fr auto;grid-template-areas:"status overflow""title title";align-items:start;gap:.55rem .75rem;margin-bottom:1rem;display:grid}.detail-head .status{grid-area:status}.detail-head h1{grid-area:title;margin:0;font-size:clamp(1.55rem,3.5vw,2rem)}.status{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);background:0 0;border:0;align-self:flex-start;margin:0;padding:0;font-size:.72rem;font-weight:650;line-height:1.2;display:inline-flex}.detail-overflow{z-index:30;grid-area:overflow;justify-self:end;position:relative}.overflow-trigger{border:1px solid var(--line);border-radius:var(--r-pill);color:var(--fg);cursor:pointer;width:2.1rem;height:2.1rem;transition:border-color .15s var(--ease), background .15s var(--ease);background:0 0;padding:0;font-size:1.25rem;line-height:1}.overflow-trigger:hover:not(:disabled){background:var(--hover);border-color:var(--fg)}.overflow-menu{z-index:50;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);min-width:13.5rem;box-shadow:var(--shadow-md);animation:overflow-in .17s var(--ease) both;margin:0;padding:.35rem;list-style:none;position:absolute;top:calc(100% + .35rem);right:0}.overflow-menu button{border-radius:var(--r-sm)}@keyframes overflow-in{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.overflow-menu button{text-align:left;width:100%;color:var(--fg);font:inherit;cursor:pointer;background:0 0;border:0;padding:.55rem .65rem;font-size:.92rem;display:block}.overflow-menu button:hover:not(:disabled){background:color-mix(in srgb, var(--fg) 6%, transparent)}.overflow-menu button:disabled{opacity:.45;cursor:not-allowed}.retry-banner{border:1px solid var(--line);border-radius:var(--r-md);color:var(--muted);margin:0 0 1rem;padding:.65rem .8rem;font-size:.92rem}.retry-banner.is-error{color:var(--danger);border-color:color-mix(in srgb, var(--danger) 45%, var(--line));background:color-mix(in srgb, var(--paper) 94%, var(--danger))}.status-open{color:var(--muted)}.status-done{color:var(--muted);opacity:.75}.status-dismissed{color:var(--muted);opacity:.55;text-decoration:line-through;text-decoration-thickness:1px}.status-wrong_redo{color:var(--muted);opacity:.85}.subtasks .status{letter-spacing:.1em;opacity:.85;flex-shrink:0;font-size:.68rem;font-weight:600}.detail-prose{color:var(--muted);margin:0 0 .85rem}.quote{border-left:3px solid var(--accent);border-radius:0 var(--r-sm) var(--r-sm) 0;background:color-mix(in srgb, var(--accent-soft) 55%, transparent);color:color-mix(in srgb, var(--muted) 80%, var(--fg));margin:0 0 1.25rem;padding:.7rem .9rem;font-size:.98rem}.detail-edit{background:var(--cream);border:1px solid var(--line);border-radius:var(--r-md);margin:0 0 1.35rem;padding:1rem 1rem .9rem}.detail-accordion{padding:0}.detail-accordion-summary{cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;gap:.75rem;padding:.85rem 1rem;list-style:none;display:flex}.detail-accordion-summary::-webkit-details-marker{display:none}.detail-accordion-title{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);align-items:center;gap:.45rem;font-size:.72rem;font-weight:700;display:flex}.detail-accordion-title:before{content:"▸";color:var(--accent);transition:transform .18s var(--ease-spring);font-size:.85rem;line-height:1}.detail-accordion[open] .detail-accordion-title:before{transform:rotate(90deg)}.detail-accordion-meta{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;text-align:right;min-width:0;max-width:65%;font-size:.82rem;overflow:hidden}.detail-accordion-body{border-top:1px solid color-mix(in srgb, var(--line) 80%, var(--fg));padding:0 1rem .9rem}.detail-accordion-body .empty.tight:first-child,.detail-accordion-body .retry-banner:first-child{margin-top:.75rem}.detail-accordion-body .todo-list.compact{margin-top:.65rem}.detail-accordion-body .k-inline-form,.detail-accordion-body .edit-fields{margin-top:.75rem}.detail-accordion-body .edit-field-full{margin-top:.85rem}.edit-fields{grid-template-columns:1fr;gap:.75rem;display:grid}@media (width>=520px){.edit-fields{grid-template-columns:repeat(3,1fr)}}.edit-field{flex-direction:column;gap:.3rem;min-width:0;display:flex}.edit-field-full{border-top:1px solid color-mix(in srgb, var(--line) 80%, var(--fg));margin-top:.85rem;padding-top:.85rem}.edit-field label{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:10px;font-weight:650}.edit-control{appearance:none;box-sizing:border-box;background:var(--paper);border:1px solid var(--line);width:100%;color:var(--fg);border-radius:var(--r-sm);transition:border-color .14s var(--ease), box-shadow .14s var(--ease);padding:.45rem .55rem;font-family:inherit;font-size:.92rem;font-weight:500;display:block}.edit-control:focus{border-color:color-mix(in srgb, var(--accent) 60%, var(--line));box-shadow:0 0 0 3px var(--accent-soft);outline:none}.edit-control:disabled{opacity:.6;cursor:not-allowed}.edit-textarea{resize:vertical;min-height:4.5rem;line-height:1.45}.detail-meta{border-top:1px solid var(--line);margin-top:1.25rem;padding-top:1rem}.meta-list{flex-wrap:wrap;gap:.45rem 1.25rem;margin:0;padding:0;list-style:none;display:flex}.meta-item{color:var(--muted);align-items:baseline;gap:.35rem;font-size:.82rem;display:inline-flex}.meta-item dt{letter-spacing:.08em;text-transform:uppercase;color:color-mix(in srgb, var(--muted) 85%, var(--fg));font-size:10px;font-weight:650}.meta-item dd{word-break:break-all;margin:0;font-weight:500}.thread-panel{border-top:1px solid var(--line);margin:0 0 1.35rem;padding-top:1.1rem}.thread-panel-head{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.thread-toggle{appearance:none;border:1px solid var(--line-strong);border-radius:var(--r-sm);cursor:pointer;letter-spacing:.06em;text-transform:uppercase;transition:background .15s var(--ease), color .15s var(--ease);background:0 0;flex-direction:column;align-items:flex-start;gap:.15rem;padding:.5rem .75rem;font-size:11px;font-weight:650;display:inline-flex}.thread-toggle:hover{background:var(--fg);color:var(--paper)}.thread-toggle:hover .thread-toggle-hint{color:color-mix(in srgb, var(--paper) 75%, transparent)}.thread-toggle-hint{letter-spacing:.02em;text-transform:none;color:var(--muted);font-size:10px;font-weight:500}.thread-panel-body{animation:rise .28s var(--ease) both;margin-top:.85rem}.gmail-secondary{color:var(--muted);font-size:.8rem;font-weight:500}.thread-empty{color:var(--muted);margin:.5rem 0 0;font-size:.9rem}.text-retry{appearance:none;color:var(--fg);font:inherit;text-underline-offset:.15em;cursor:pointer;background:0 0;border:0;margin:0;padding:0;font-weight:600;text-decoration:underline}.thread-msg{background:color-mix(in srgb, var(--sand) 30%, var(--paper));border:1px solid var(--line);border-radius:var(--r-md);margin:0 0 .75rem;padding:.75rem .85rem}.thread-msg.dir-outbound{background:color-mix(in srgb, var(--cream) 70%, var(--paper))}.thread-msg.is-source{border-color:color-mix(in srgb, var(--accent) 60%, var(--line));box-shadow:inset 3px 0 0 var(--accent)}.thread-msg header{color:var(--muted);flex-wrap:wrap;align-items:baseline;gap:.35rem .65rem;margin-bottom:.4rem;font-size:.8rem;display:flex}.thread-msg .dir{text-transform:uppercase;letter-spacing:.1em;color:var(--fg);border:1px solid var(--line);padding:.08rem .32rem;font-size:9px;font-weight:650}.thread-msg .source-tag{text-transform:uppercase;letter-spacing:.08em;background:var(--fg);color:var(--paper);padding:.08rem .32rem;font-size:9px;font-weight:650}.thread-msg .who{color:var(--fg);text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:100%;font-weight:550;overflow:hidden}.thread-msg .subj{margin:0 0 .45rem;font-size:.86rem;font-weight:550}.thread-body{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--paper);width:100%;color:var(--fg);font:inherit;letter-spacing:.01em;white-space:pre-wrap;word-break:break-word;max-height:min(28rem,60vh);margin:0;padding:.65rem .7rem;font-size:.88rem;line-height:1.45;display:block;overflow:auto}.thread-body:focus{outline:1px solid color-mix(in srgb, var(--fg) 35%, var(--line))}.subtasks{border-top:1px solid var(--line);margin:0 0 1.35rem;padding-top:1rem}.subtasks-head{align-items:center;gap:.35rem;margin-bottom:.55rem;display:flex}.subtasks-head h2{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0;font-size:.72rem;font-weight:650;line-height:1}.subtasks-view-menu{flex-shrink:0;align-items:center;display:flex;position:relative}.view-eye{width:1.35rem;height:1.35rem;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;place-items:center;padding:0;line-height:0;display:inline-grid}.view-eye:hover{color:var(--fg);border-color:var(--line)}.view-menu{min-width:8.5rem;left:0;right:auto}.view-menu button.is-active{font-weight:700}.subtasks ul{margin:0;padding:0;list-style:none}.subtasks li{border-bottom:1px solid var(--line);padding:.45rem 0;padding-left:var(--indent);justify-content:space-between;align-items:center;gap:.75rem;display:flex}.subtasks li:last-child{border-bottom:0}.subtasks-gantt,.gantt{margin-top:.35rem}.gantt-scroll{border:1px solid var(--line);border-radius:var(--r-md);background:color-mix(in srgb, var(--paper) 92%, #ebe8e1);box-shadow:var(--shadow-sm);overflow-x:auto}.gantt-grid{--gantt-label-w:min(11.5rem, 34vw);--gantt-day-w:2.15rem;min-width:calc(var(--gantt-label-w) + (var(--gantt-days,8) * var(--gantt-day-w)));grid-template-columns:var(--gantt-label-w) 1fr;display:grid}.gantt-corner{z-index:3;background:var(--paper);border-bottom:1px solid var(--line);border-right:1px solid var(--line);position:sticky;left:0}.gantt-head{grid-template-columns:repeat(var(--gantt-days,8), minmax(var(--gantt-day-w), 1fr));border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--paper) 80%, #e4e0d8);display:grid}.gantt-col-head{color:var(--muted);border-right:1px solid color-mix(in srgb, var(--line) 80%, transparent);flex-direction:column;justify-content:flex-end;align-items:center;gap:.05rem;min-height:2.6rem;padding:.4rem .1rem .35rem;font-size:.62rem;display:flex;position:relative}.gantt-moy{letter-spacing:.04em;text-transform:uppercase;color:var(--fg);opacity:.7;font-size:.55rem;font-weight:650;position:absolute;top:.2rem;left:.15rem}.gantt-col-head.is-weekend{background:color-mix(in srgb, var(--line) 35%, transparent)}.gantt-col-head.is-today{color:var(--accent-strong);box-shadow:inset 0 -2px 0 var(--accent);font-weight:700}.gantt-dow{text-transform:uppercase;letter-spacing:.06em;opacity:.8}.gantt-dom{font-variant-numeric:tabular-nums;font-size:.72rem}.gantt-body-row{display:contents}.gantt-name{z-index:2;border-bottom:1px solid var(--line);border-right:1px solid var(--line);background:var(--paper);align-items:center;min-height:2.55rem;padding:.45rem .55rem;display:flex;position:sticky;left:0}.kind-parent .gantt-name{background:color-mix(in srgb, var(--ellis-fill) 6%, var(--paper))}.gantt-name-text{color:var(--fg);text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.82rem;text-decoration:none;overflow:hidden}a.gantt-name-text:hover{text-decoration:underline}.gantt-name-text em{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-top:.1rem;font-size:.62rem;font-style:normal;display:block}.gantt-lanes{grid-template-columns:repeat(var(--gantt-days,8), minmax(var(--gantt-day-w), 1fr));border-bottom:1px solid var(--line);align-items:stretch;min-height:2.55rem;display:grid;position:relative}.kind-parent .gantt-lanes{background:color-mix(in srgb, var(--ellis-fill) 4%, transparent)}.gantt-cell{border-right:1px solid color-mix(in srgb, var(--line) 70%, transparent)}.gantt-cell.is-weekend{background:color-mix(in srgb, var(--line) 28%, transparent)}.gantt-cell.is-today{background:color-mix(in srgb, var(--accent) 8%, transparent)}.gantt-today-line{background:var(--accent);z-index:1;pointer-events:none;width:2px;margin-left:-1px;position:absolute;top:0;bottom:0}.gantt-bar{height:1.15rem;color:var(--ellis-fg);box-shadow:0 1px 0 color-mix(in srgb, var(--shadow) 35%, transparent);z-index:2;box-sizing:border-box;background:linear-gradient(135deg,#23211e 0%,#413b32 100%);border-radius:4px;align-items:center;padding:0 .35rem;display:flex;position:absolute;top:50%;overflow:hidden;transform:translateY(-50%)}.gantt-bar.is-parent{opacity:.5;background:color-mix(in srgb, var(--fg) 55%, var(--ellis-fill));border-radius:1px;height:.55rem}.gantt-bar.status-done{background:linear-gradient(135deg, var(--ok), color-mix(in srgb, var(--ok) 70%, var(--fg)))}.gantt-bar.status-dismissed,.gantt-bar.status-wrong_redo{background:color-mix(in srgb, var(--muted) 75%, var(--fg));opacity:.7}.gantt-bar.is-undated{border-radius:2px;justify-content:center;height:.7rem;padding:0;width:.7rem!important}.gantt-bar-label{letter-spacing:.02em;white-space:nowrap;text-overflow:ellipsis;font-size:.62rem;font-weight:650;overflow:hidden}.gantt-bar.is-undated .gantt-bar-label,.gantt-bar.is-parent .gantt-bar-label{display:none}.gantt-hint{color:var(--muted);margin:.55rem 0 0;font-size:.72rem}.close-parent-modal{max-width:420px}.detail-actions{flex-wrap:wrap;gap:.45rem;padding-top:.25rem;display:flex}.detail-actions button{appearance:none;border:1px solid var(--line-strong);border-radius:var(--r-sm);cursor:pointer;letter-spacing:.06em;text-transform:uppercase;transition:background .15s var(--ease), color .15s var(--ease), transform .15s var(--ease-spring), box-shadow .15s var(--ease);background:0 0;padding:.5rem .8rem;font-size:11px;font-weight:650}.detail-actions button:hover{background:var(--fg);color:var(--paper);transform:translateY(-1px);box-shadow:0 8px 18px -10px #1a191780}.detail-actions button.quiet{border-color:var(--line);color:var(--muted);text-transform:uppercase}.detail-actions button.quiet:hover{border-color:var(--fg);color:var(--paper);background:var(--fg)}.detail-actions button.ellis{color:var(--ellis-fg);text-transform:none;letter-spacing:.02em;background:linear-gradient(135deg,#23211e 0%,#3d382f 100%);border-color:#0000;font-size:12px;font-weight:600;box-shadow:0 6px 16px -8px #1a191780}.detail-actions button.ellis:hover{color:var(--ellis-fg);background:linear-gradient(135deg,#2a2723 0%,#4a4438 100%);border-color:#0000;transform:translateY(-1px);box-shadow:0 14px 26px -12px #1a19178c}.detail-actions button.ellis:disabled{opacity:.45;box-shadow:none;cursor:not-allowed;transform:none}.ellis-modal-backdrop{z-index:40;-webkit-backdrop-filter:blur(6px);animation:fade-in .18s var(--ease) both;background:#1a191766;place-items:center;padding:1.25rem;display:grid;position:fixed;inset:0}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.ellis-modal{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);width:min(560px,100%);max-height:min(88vh,720px);box-shadow:var(--shadow-lg);animation:rise .22s var(--ease);flex-direction:column;gap:.85rem;padding:1.25rem 1.35rem 1.1rem;display:flex;overflow:auto}.ellis-modal-head h2{font-family:var(--font-display);letter-spacing:-.01em;margin:0;font-size:1.25rem;font-weight:560}.ellis-modal-sub{color:var(--muted);margin:.2rem 0 0;font-size:.85rem}.ellis-wait{color:var(--muted);margin:0;font-size:.9rem;animation:1.6s ease-in-out infinite pulse}.ellis-draft,.ellis-draft-edit{white-space:pre-wrap;border:1px solid var(--line);border-radius:var(--r-sm);background:#faf9f6;flex:1;min-height:220px;max-height:42vh;padding:.85rem .95rem;font-family:inherit;font-size:.95rem;line-height:1.45;overflow:auto}.ellis-draft-edit{resize:vertical;box-sizing:border-box;width:100%}.ellis-error{color:var(--danger);margin:0;font-size:.88rem}.ellis-modal-actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}.ellis-modal-actions button{font:inherit;letter-spacing:.04em;text-transform:uppercase;border:1px solid var(--fg);border-radius:var(--r-sm);color:var(--fg);cursor:pointer;transition:background .15s var(--ease), color .15s var(--ease), transform .15s var(--ease-spring);background:0 0;padding:.55rem .9rem;font-size:12px;font-weight:600}.ellis-modal-actions button:hover:not(:disabled){transform:translateY(-1px)}.ellis-modal-actions button.ellis{color:var(--ellis-fg);text-transform:none;letter-spacing:.02em;background:linear-gradient(135deg,#23211e 0%,#3d382f 100%);border-color:#0000;box-shadow:0 6px 16px -8px #1a191780}.ellis-modal-actions button.quiet{border-color:var(--line);color:var(--muted)}.ellis-modal-actions button:disabled{opacity:.45;cursor:not-allowed}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.45}}@media (width<=640px){.shell{padding-top:2rem}.refresh{margin-left:0}}.auth-bar{z-index:20;width:calc(100% - 2.5rem);max-width:730px;color:var(--muted);background:color-mix(in srgb, var(--paper) 80%, transparent);-webkit-backdrop-filter:blur(16px)saturate(1.2);border:1px solid var(--line);border-radius:var(--r-pill);box-shadow:var(--shadow-sm);animation:rise .42s var(--ease) both;justify-content:flex-start;align-items:center;gap:.75rem;margin:.9rem auto 0;padding:.45rem .55rem .45rem .9rem;font-size:.85rem;display:flex;position:sticky;top:.85rem}.auth-email{text-overflow:ellipsis;white-space:nowrap;max-width:16rem;overflow:hidden}.auth-out{appearance:none;border:1px solid var(--line);border-radius:var(--r-pill);cursor:pointer;color:var(--fg);transition:background .15s var(--ease), border-color .15s var(--ease);background:0 0;padding:.3rem .7rem}.auth-out:hover{background:var(--hover);border-color:color-mix(in srgb, var(--fg) 30%, var(--line))}.login-shell{max-width:420px}.login-card{gap:var(--login-gap-card);animation:rise .48s var(--ease) both;flex-direction:column;padding:1.5rem 0;display:flex}.login-mode{border:1px solid var(--line);border-radius:var(--r-pill);background:color-mix(in srgb, var(--sand) 55%, var(--paper));grid-template-columns:1fr 1fr;gap:.3rem;padding:.28rem;display:grid;box-shadow:inset 0 1px 2px #372a180d}.login-mode button{appearance:none;color:var(--muted);border-radius:var(--r-pill);cursor:pointer;transition:background .18s var(--ease), color .18s var(--ease), box-shadow .18s var(--ease);background:0 0;border:none;padding:.55rem .75rem;font-weight:550}.login-mode button.login-mode-active{background:var(--ellis-fill);color:var(--ellis-fg);box-shadow:0 3px 10px -4px #1a191780}.login-divider{text-align:center;color:var(--muted);margin:0;font-size:.8rem}.login-switch{text-align:center;color:var(--muted);margin:0;font-size:.9rem}.login-switch .linkish{appearance:none;color:var(--fg);cursor:pointer;background:0 0;border:none;padding:0;font-weight:600;text-decoration:underline}.login-form{gap:var(--login-gap-form);flex-direction:column;display:flex}.login-form .ctl,.login-form .ctl.grow{flex:none;width:100%;min-width:0}.login-email-stack{gap:var(--login-gap-stack);flex-direction:column;display:flex}.login-spam-block{text-align:center;margin:0;padding:0 .05rem}.login-spam-tip{color:var(--login-tip-blue);letter-spacing:.02em;margin:0;font-size:.9rem;line-height:1.35}.login-spam-tip strong{font-weight:800}.login-spam-sub{color:var(--muted);margin:.25rem 0 0;font-size:.78rem;line-height:1.45}.login-primary,.login-secondary{appearance:none;border-radius:var(--r-sm);cursor:pointer;transition:background .16s var(--ease), box-shadow .16s var(--ease), transform .16s var(--ease-spring), opacity .16s var(--ease);padding:.7rem 1rem;font-weight:550}.login-primary{color:var(--ellis-fg);background:linear-gradient(135deg,#23211e 0%,#3d382f 100%);border:1px solid #0000;width:100%;box-shadow:0 8px 20px -10px #1a19178c}.login-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 14px 28px -12px #1a19178c}.login-primary:disabled,.login-secondary:disabled{opacity:.5;cursor:not-allowed}.login-secondary{border:1px solid var(--line-strong);background:var(--paper);color:var(--fg);width:100%}.login-secondary:hover:not(:disabled){background:var(--hover);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.login-hint,.login-error{margin:0;font-size:.9rem}.login-error{color:var(--danger)}.muted{color:var(--muted)}.auth-nav{letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:.2rem;margin-right:auto;font-size:.8rem;font-weight:600;display:flex}.auth-nav a{color:var(--muted);opacity:1;border-radius:var(--r-pill);transition:background .16s var(--ease), color .16s var(--ease);padding:.32rem .65rem;text-decoration:none}.auth-nav a:hover{color:var(--fg);background:var(--hover);opacity:1}.auth-nav a.is-active{color:var(--paper);background:var(--fg);box-shadow:0 2px 8px -2px #1a191773}.todo.status-archived .todo-title{color:var(--muted);text-decoration:line-through}.todo.status-archived{opacity:.55}.k-inline-form{background:color-mix(in srgb, var(--paper) 88%, transparent);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);animation:rise .36s var(--ease) both;flex-wrap:wrap;align-items:flex-end;gap:.65rem .85rem;margin-bottom:1.1rem;padding:.8rem .9rem;display:flex}.k-inline-form.stack{flex-direction:column;align-items:stretch}.k-inline-form textarea{appearance:none;background:var(--paper);border:1px solid var(--line);width:100%;font:inherit;letter-spacing:.01em;color:var(--fg);resize:vertical;border-radius:var(--r-sm);transition:border-color .15s var(--ease), box-shadow .15s var(--ease);outline:none;padding:.45rem .55rem;font-size:13px;font-weight:500}.k-inline-form textarea:focus{border-color:color-mix(in srgb, var(--accent) 65%, var(--line));box-shadow:0 0 0 3px var(--accent-soft)}.account-main{gap:var(--account-gap-section);flex-direction:column;display:flex}.account-section{gap:var(--account-gap-stack);flex-direction:column;display:flex}.account-section-title{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0;font-size:.72rem;font-weight:650}.account-panel{gap:var(--account-gap-panel);background:color-mix(in srgb, var(--paper) 90%, transparent);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);animation:rise .36s var(--ease) both;flex-direction:column;padding:1.05rem 1rem;display:flex}.account-panel .ctl,.account-panel .ctl.grow{flex:none;width:100%;min-width:0}.account-profile-form{gap:var(--account-gap-panel);flex-direction:column;display:flex}.account-readonly{opacity:.72;cursor:not-allowed}.account-mfa-current{border-bottom:1px solid var(--line);flex-direction:column;gap:.75rem;padding:.85rem 0;display:flex}.account-mfa-current-body{flex-direction:column;gap:.35rem;display:flex}.account-mfa-number{letter-spacing:.02em;font-size:1.05rem;font-weight:600}.account-mfa-actions{flex-wrap:wrap;gap:.5rem;display:flex}.account-mfa-actions .login-secondary,.account-mfa-actions .ghost{width:auto;min-width:6.5rem}.account-panel .empty{margin:0}.account-mfa-list{margin:0;padding:0;list-style:none}.account-mfa-list .todo{margin-bottom:.5rem}.account-mfa-list .todo:last-child{margin-bottom:0}.account-form-actions{flex-direction:column;gap:.5rem;margin-top:.15rem;display:flex}.k-check{color:var(--fg);align-items:center;gap:.45rem;font-size:.85rem;display:flex}.k-detail-meta{margin-top:.65rem}.k-detail-actions{flex-wrap:wrap;gap:.45rem;margin-top:.85rem;display:flex}.k-section{animation:rise .42s var(--ease) both;margin-top:1.5rem}.k-section-title{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 .65rem;font-size:.68rem;font-weight:650}.k-tree{margin:0;padding:0;list-style:none}.k-tree .k-tree{border-left:1px solid var(--line);margin-left:1.1rem;padding-left:.35rem}.k-tree-row{appearance:none;text-align:left;cursor:pointer;width:100%;font:inherit;color:inherit;transition:background .14s var(--ease), border-color .14s var(--ease);border-radius:2px;border-radius:var(--r-sm);background:0 0;border:1px solid #0000;align-items:baseline;gap:.5rem;margin-bottom:.2rem;padding:.4rem .55rem;display:flex}.k-tree-row:hover{background:var(--hover)}.k-tree-row.is-on{background:var(--paper);border-color:color-mix(in srgb, var(--accent) 55%, var(--line));box-shadow:var(--shadow-sm)}.k-tree-id{font-variant-numeric:tabular-nums;color:var(--muted);flex-shrink:0;font-size:.7rem}.k-tree-title{min-width:0;font-size:.92rem;font-weight:550}.k-node-body{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-sm);margin-top:.75rem;padding:.85rem 1rem}.k-node-body header{align-items:baseline;gap:.5rem;margin-bottom:.35rem;display:flex}.k-node-body pre{white-space:pre-wrap;word-break:break-word;background:color-mix(in srgb, var(--sand) 55%, var(--paper));border:1px solid var(--line);max-height:28rem;margin:.5rem 0 0;padding:.75rem;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:.8rem;line-height:1.45;overflow:auto}.k-section-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem;margin-bottom:.65rem;display:flex}.k-section-head .k-section-title{margin-bottom:0}.k-view-toggle .seg{padding:.28rem .5rem}.md{background:color-mix(in srgb, var(--sand) 55%, var(--paper));border:1px solid var(--line);border-radius:var(--r-md);color:var(--fg);max-height:28rem;margin:.5rem 0 0;padding:.75rem 1rem;font-size:.92rem;line-height:1.55;overflow:auto}.md>:first-child{margin-top:0}.md h1,.md h2,.md h3,.md h4{letter-spacing:-.015em;margin:1.1rem 0 .5rem;font-weight:650;line-height:1.3}.md h1{font-size:1.25rem}.md h2{font-size:1.1rem}.md h3{font-size:1rem}.md h4{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:.92rem}.md p{margin:.6rem 0}.md ul,.md ol{margin:.5rem 0;padding-left:1.35rem}.md li{margin:.25rem 0}.md a{text-underline-offset:.15em;text-decoration:underline}.md strong{font-weight:650}.md blockquote{border-left:3px solid var(--accent);border-radius:0 var(--r-sm) var(--r-sm) 0;color:var(--muted);background:color-mix(in srgb, var(--sand) 40%, transparent);margin:.75rem 0;padding:.4rem .9rem}.md code{background:color-mix(in srgb, var(--sand) 55%, var(--paper));border-radius:2px;padding:.1rem .3rem;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:.85em}.md pre{background:color-mix(in srgb, var(--sand) 55%, var(--paper));border:1px solid var(--line);margin:.75rem 0;padding:.75rem;overflow:auto}.md pre code{background:0 0;padding:0}.md table{border-collapse:collapse;width:100%;margin:.75rem 0;font-size:.86rem}.md th,.md td{border:1px solid var(--line);text-align:left;padding:.4rem .55rem}.md th{background:color-mix(in srgb, var(--sand) 45%, var(--paper));font-weight:650}.md hr{border:0;border-top:1px solid var(--line);margin:1.1rem 0}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
