@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&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;--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: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);font-size:.68rem;font-weight:600}h1{letter-spacing:-.03em;margin:0;font-size:clamp(1.85rem,4vw,2.35rem);font-weight:650;line-height:1.1}.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}.parent-link{color:var(--muted);margin:-.4rem 0 1rem;font-size:.88rem}.controls{background:color-mix(in srgb, var(--paper) 90%, transparent);border:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 8px 24px -20px var(--shadow);animation:rise .54s var(--ease) both;flex-wrap:wrap;align-items:flex-end;gap:.65rem .85rem;margin-bottom:1.1rem;padding:.75rem .85rem;animation-delay:40ms;display:flex}.segs{border:1px solid var(--line-strong);background:var(--paper);display:inline-flex;overflow:hidden}.seg{appearance:none;border:0;border-right:1px solid var(--line-strong);cursor:pointer;text-transform:uppercase;letter-spacing:.1em;transition:background .15s var(--ease), color .15s var(--ease);background:0 0;padding:.42rem .65rem;font-size:9px;font-weight:650}.seg:last-child{border-right:0}.seg:hover{background:var(--hover)}.seg.on{background:var(--fg);color:var(--paper)}.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);letter-spacing:.01em;text-transform:none;color:var(--fg);transition:border-color .15s var(--ease);outline:none;padding:.4rem .55rem;font-size:13px;font-weight:500}.ctl select:focus,.ctl input:focus{border-color:var(--fg)}.ghost{appearance:none;border:1px solid var(--line-strong);cursor:pointer;text-transform:uppercase;letter-spacing:.08em;transition:background .15s var(--ease), color .15s var(--ease), transform .12s var(--ease);background:0 0;padding:.42rem .65rem;font-size:10px;font-weight:650}.ghost:hover{background:var(--fg);color:var(--paper)}.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 var(--line-strong);background:var(--paper);margin:0 0 1rem;padding:.75rem .9rem}.banner .hint{color:var(--muted);margin-top:.35rem;font-size:12px;display:block}.list.dim{opacity:.4}.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;padding:.85rem 1rem .85rem calc(.65rem + (var(--depth) * var(--indent)));background:var(--paper);border:1px solid var(--line);box-shadow:0 6px 18px -16px var(--shadow);transition:background .14s var(--ease), border-color .14s var(--ease), transform .16s var(--ease), box-shadow .16s var(--ease);animation:rise .36s var(--ease) both;border-radius:2px;align-items:center;gap:.55rem;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(--fg) 22%, var(--line));box-shadow:0 10px 24px -16px var(--shadow);transform:translateY(-1px)}.todo:hover .todo-chevron{color:var(--fg);transform:translate(2px)}.todo.is-child{border-left:2px solid color-mix(in srgb, var(--fg) 28%, var(--line));background:color-mix(in srgb, var(--paper) 92%, 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.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-chevron{width:1.75rem;height:1.75rem;color:var(--muted);transition:color .14s var(--ease), transform .16s var(--ease);flex:none;justify-content:center;align-self:center;align-items:center;text-decoration:none;display:inline-flex}.todo-chevron:hover{opacity:1;color:var(--fg)}.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}.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);letter-spacing:.04em;color:var(--fg);background:color-mix(in srgb, var(--sand) 45%, var(--paper));align-items:center;padding:.1rem .4rem;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:.08em;font-size:9px}.pill.prio-urgent{border-color:var(--fg);background:var(--fg);color:var(--paper)}.pill.prio-high{border-color:var(--fg)}.pill.prio-low{opacity:.8}.detail-card{background:var(--paper);border:1px solid var(--line);box-shadow:0 14px 36px -22px var(--shadow);animation:rise .42s var(--ease) both;padding:1.5rem 1.4rem 1.35rem}.detail-head{flex-direction:column;gap:.55rem;margin-bottom:1rem;display:flex}.detail-head h1{font-size:clamp(1.55rem,3.5vw,2rem)}.status{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);border:1px solid;align-self:flex-start;padding:.16rem .4rem;font-size:9px;font-weight:650;display:inline-flex}.status-open{color:var(--fg)}.detail-prose{color:var(--muted);margin:0 0 .85rem}.quote{border-left:2px solid var(--fg);color:var(--muted);margin:0 0 1.25rem;padding:.65rem 0 .65rem .9rem;font-size:.98rem}.facts{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.85rem 1.1rem;margin:0 0 1.35rem;display:grid}.facts dt{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:.2rem;font-size:10px;font-weight:650}.facts dd{margin:0;font-size:.92rem;font-weight:500}.facts select{appearance:none;background:var(--cream);border:1px solid var(--line);padding:.3rem .45rem;font-size:.9rem}.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);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);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:var(--fg);box-shadow:inset 3px 0 0 var(--fg)}.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{resize:vertical;border:1px solid var(--line);background:var(--paper);width:100%;min-height:5.5rem;color:var(--fg);font:inherit;letter-spacing:.01em;margin:0;padding:.65rem .7rem;font-size:.88rem;line-height:1.45;display:block}.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 h2{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0 0 .55rem;font-size:.72rem;font-weight:650}.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}.detail-actions{flex-wrap:wrap;gap:.45rem;padding-top:.25rem;display:flex}.detail-actions button,.ellis{appearance:none;border:1px solid var(--line-strong);cursor:pointer;letter-spacing:.06em;text-transform:uppercase;transition:background .15s var(--ease), color .15s var(--ease), transform .12s var(--ease), box-shadow .15s var(--ease);background:0 0;padding:.5rem .75rem;font-size:11px;font-weight:650}.detail-actions button:hover{background:var(--fg);color:var(--paper)}.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)}.ellis{background:var(--ellis-fill);border-color:var(--ellis-fill);color:var(--ellis-fg);text-transform:none;letter-spacing:.02em;font-size:12px;font-weight:600}.ellis:hover{color:var(--ellis-fg);box-shadow:0 12px 22px -14px var(--shadow);background:#2a2824;border-color:#2a2824;transform:translateY(-1px)}@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}.facts{grid-template-columns:1fr 1fr}}.auth-bar{z-index:2;max-width:760px;color:var(--muted);justify-content:flex-end;align-items:center;gap:.75rem;margin:0 auto;padding:1rem 1.25rem 0;font-size:.85rem;display:flex;position:relative}.auth-email{text-overflow:ellipsis;white-space:nowrap;max-width:16rem;overflow:hidden}.auth-out{appearance:none;border:1px solid var(--line);cursor:pointer;color:var(--fg);background:0 0;border-radius:4px;padding:.25rem .55rem}.auth-out:hover{background:var(--hover)}.login-shell{max-width:420px}.login-card{animation:rise .48s var(--ease) both;flex-direction:column;gap:1rem;padding:1.5rem 0;display:flex}.login-spam-tip{color:#b42318;letter-spacing:.02em;margin:0;font-size:.9rem;line-height:1.35}.login-spam-tip strong{font-weight:700}.login-primary,.login-secondary{appearance:none;cursor:pointer;border-radius:4px;padding:.7rem 1rem;font-weight:500}.login-primary{border:1px solid var(--line-strong);background:var(--ellis-fill);color:var(--ellis-fg);width:100%}.login-primary:hover:not(:disabled){opacity:.88}.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)}.login-form{flex-direction:column;gap:.75rem;display:flex}.login-hint,.login-error{margin:0;font-size:.9rem}.login-error{color:#8a2f1f}.muted{color:var(--muted)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
