:root{--bg:#f6f7f9;--card:#fff;--text:#16181d;--muted:#6b7280;--line:#e5e7eb;--accent:#2563eb;--ok:#16a34a;--warn:#d97706;--bad:#dc2626;--idle:#6b7280;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;font-family:ui-sans-serif,system-ui,-apple-system,sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#0f1115;--card:#181b21;--text:#e8eaee;--muted:#9aa1ac;--line:#2a2f38;--accent:#60a5fa}}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0}main{max-width:960px;padding:16px;padding-top:max(16px, env(safe-area-inset-top));flex-direction:column;gap:14px;margin:0 auto;display:flex}h1,h2,h3{margin:0}h2{font-size:1.25rem}h3{font-size:1rem}.row{align-items:center;gap:8px;display:flex}.between{justify-content:space-between}.stack{flex-direction:column;gap:10px;display:flex}.card{background:var(--card);border:1px solid var(--line);color:inherit;font:inherit;text-align:left;border-radius:12px;padding:14px}.grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;display:grid}.grid.metrics{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.project{cursor:pointer;flex-direction:column;gap:8px;display:flex}.project:hover{border-color:var(--accent)}.bar{background:var(--line);border-radius:99px;height:8px;overflow:hidden}.bar span{background:var(--accent);height:100%;transition:width .3s;display:block}.pill{background:var(--line);border-radius:99px;padding:2px 8px;font-size:.75rem}.pill.active{color:#fff;background:var(--ok)}.pill.blocked{color:#fff;background:var(--bad)}.pill.paused{color:#fff;background:var(--warn)}.pill.done{color:#fff;background:var(--idle)}.muted{color:var(--muted)}.small{margin:0;font-size:.85rem}.err{color:var(--bad);margin:0}input,select,button{font:inherit;border:1px solid var(--line);background:var(--bg);color:var(--text);border-radius:8px;min-height:44px;padding:10px 12px}.row input{flex:1;min-width:0}button{background:var(--accent);color:#fff;cursor:pointer;border-color:#0000}button:disabled{opacity:.5}button.ghost{color:var(--text);border-color:var(--line);background:0 0}.check{cursor:pointer}.check input{flex:none;width:20px;height:20px;min-height:auto}.done{color:var(--muted);text-decoration:line-through}.metric{border:1px solid var(--line);border-radius:8px;flex-direction:column;gap:2px;padding:10px;display:flex}.activity{border-top:1px solid var(--line);grid-template-columns:auto 1fr auto;align-items:baseline;gap:8px;padding:6px 0;display:grid}.activity:first-of-type{border-top:0}.login{flex-direction:column;gap:10px;width:100%;max-width:360px;margin:15vh auto 0;display:flex}.brand{color:var(--text);font-size:1.1rem;font-weight:700;text-decoration:none}code{font-size:.85em}.wrap{flex-wrap:wrap}.project{border-left:5px solid var(--line)}.accent{border-top:5px solid var(--line)}.tags{flex-wrap:wrap;gap:4px;display:flex}.tag{color:var(--muted);background:var(--bg);border:1px solid var(--line);border-radius:99px;padding:1px 8px;font-size:.75rem}.due{color:var(--muted);white-space:nowrap;font-size:.75rem}.due.soon{color:var(--warn);font-weight:600}.due.overdue{color:var(--bad);font-weight:600}.chips{flex-wrap:wrap;gap:6px;display:flex}.chips.scroll{scrollbar-width:none;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;padding-bottom:2px;overflow-x:auto}.chips.scroll::-webkit-scrollbar{display:none}.chip{--c:var(--accent);color:var(--text);border:1px solid var(--line);white-space:nowrap;background:0 0;border-radius:99px;min-height:36px;padding:6px 12px;font-size:.9rem}.chip.on{background:var(--c);border-color:var(--c);color:#fff}input[type=color]{cursor:pointer;width:44px;min-height:36px;padding:2px}.pill.src.git{color:#fff;background:#24292f}.pill.src.claude{color:#fff;background:#d97757}.pill.src.stage{color:#fff;background:#7c3aed}.stepper{--c:var(--accent);scrollbar-width:none;gap:4px;margin:0;padding:0;list-style:none;display:flex;overflow-x:auto}.stepper::-webkit-scrollbar{display:none}.stepper li{flex:1 0 auto}.stepper button{width:100%;color:var(--muted);background:0 0;border:0;flex-direction:column;align-items:center;gap:4px;min-height:auto;padding:4px;display:flex}.stepper .dot{border:2px solid var(--line);background:var(--card);border-radius:50%;place-items:center;width:26px;height:26px;font-size:.75rem;display:grid}.stepper .label{text-align:center;max-width:76px;font-size:.7rem;line-height:1.15}.stepper .past .dot{background:var(--c);border-color:var(--c);color:#fff}.stepper .now .dot{border-color:var(--c);color:var(--c);box-shadow:0 0 0 3px color-mix(in srgb, var(--c) 25%, transparent);font-weight:700}.stepper .now .label{color:var(--text);font-weight:600}.shell{min-height:100vh}.tabs{z-index:10;background:var(--card);border-color:var(--line);display:flex;position:fixed}.tabs .brand,.tabs .signout{display:none}.tab{color:var(--muted);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;min-height:52px;font-size:.7rem;text-decoration:none;display:flex}.tab .ticon{filter:grayscale();opacity:.7;font-size:1.25rem}.tab.on{color:var(--accent);font-weight:600}.tab.on .ticon{filter:none;opacity:1}@media (width<=767px){.tabs{border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom);bottom:0;left:0;right:0}.shell main{padding-bottom:calc(80px + env(safe-area-inset-bottom))}}@media (width>=768px){.tabs{border-right:1px solid var(--line);flex-direction:column;gap:2px;width:200px;padding:16px 10px;top:0;bottom:0;left:0}.tabs .brand{padding:4px 10px 14px;display:block}.tabs .signout{margin-top:auto;display:block}.tab{border-radius:8px;flex-direction:row;flex:none;justify-content:flex-start;gap:10px;min-height:40px;padding:8px 10px;font-size:.95rem}.tab:hover{background:var(--bg)}.tab.on{background:color-mix(in srgb, var(--accent) 12%, transparent)}.shell main{margin-left:200px}}.widgets{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px;display:grid}.widget{flex-direction:column;gap:10px;display:flex}.widget.wide{grid-column:1/-1}.wlist{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.wrow{width:100%;color:var(--text);border:0;border-top:1px solid var(--line);text-align:left;background:0 0;border-radius:0;align-items:center;gap:10px;min-height:44px;padding:8px 0;display:flex}.wlist li:first-child .wrow{border-top:0}.swatch{border-radius:3px;flex:none;width:10px;height:10px}.grow{flex-direction:column;flex:1;min-width:0;display:flex}.ellipsis{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:root{--water:#0ea5e9;--water-done:#16a34a}.ring{flex:none;display:block}.ring-track{stroke:var(--line)}.ring-fill{stroke:var(--water);transition:stroke-dasharray .5s}.ring-fill.done{stroke:var(--water-done)}.ring-big{fill:var(--text);font-size:1.4rem;font-weight:700}.ring-small{fill:var(--muted);font-size:.7rem}.water-hero .ring{margin:0 auto}.water-hero .ring-big{font-size:1.8rem}.water-hero .ring-small{font-size:.8rem}.center{text-align:center}.water-widget{align-items:center;gap:14px;display:flex}.water-actions{flex-direction:column;gap:8px;display:flex}.water-actions .row{flex-wrap:wrap;gap:6px}.water-actions .row button{min-height:38px;padding:6px 10px;font-size:.85rem}.water-main{background:var(--water);min-height:48px;font-weight:600}.wentry{border-top:1px solid var(--line);padding-top:6px}.wentry:first-of-type{border-top:0}.week{grid-template-columns:repeat(7,1fr);align-items:end;gap:8px;height:140px;display:grid}.wday{flex-direction:column;align-items:center;gap:4px;height:100%;display:flex}.wbar{background:var(--bg);border-radius:6px;flex:1;align-items:flex-end;width:100%;max-width:36px;display:flex;position:relative;overflow:hidden}.wbar span{background:var(--water);opacity:.8;border-radius:6px 6px 0 0;width:100%}.wbar span.met{background:var(--water-done)}.wbar i{border-top:2px dashed var(--muted);opacity:.5;position:absolute;left:0;right:0}@media (width<=380px){.water-widget{flex-direction:column}}textarea{font:inherit;border:1px solid var(--line);background:var(--bg);color:var(--text);resize:vertical;border-radius:8px;padding:10px 12px}.quickadd.compact{margin-top:4px}.chip .count{background:color-mix(in srgb, currentColor 18%, transparent);border-radius:99px;margin-left:6px;padding:0 6px;font-size:.75rem}.chip .count.bad{background:var(--bad);color:#fff}.tasks{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.task{border-top:1px solid var(--line);transition:opacity .25s,transform .25s}.task:first-child{border-top:0}.task.leaving{opacity:0;transform:translate(16px)}.task-main{align-items:flex-start;gap:10px;padding:8px 0;display:flex}.tick{border:2px solid var(--muted);color:#fff;background:0 0;border-radius:50%;flex:none;width:24px;height:24px;min-height:24px;margin-top:2px;padding:0;font-size:.8rem;line-height:1}.tick.p1{border-color:#0ea5e9}.tick.p2{border-color:var(--warn)}.tick.p3{border-color:var(--bad)}.tick.on,.task.leaving .tick{background:var(--ok);border-color:var(--ok)}.task-body{min-width:0;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;flex-direction:column;flex:1;gap:2px;min-height:auto;padding:0;display:flex}.task-body:disabled{cursor:default;opacity:1}.task-title{overflow-wrap:anywhere}.task.is-done .task-title{color:var(--muted);text-decoration:line-through}.prio.p1{color:#0ea5e9}.prio.p2{color:var(--warn)}.prio.p3{color:var(--bad)}.task-meta{color:var(--muted);flex-wrap:wrap;gap:4px 10px;font-size:.78rem;display:flex}.task-meta:empty{display:none}.tproj{align-items:center;gap:4px;display:inline-flex}.tproj i{border-radius:2px;width:8px;height:8px;display:inline-block}.editor{padding:0 0 12px 34px}button.danger{color:var(--bad);border-color:color-mix(in srgb, var(--bad) 40%, var(--line))}.alerts{z-index:20;left:16px;right:16px;top:max(12px, env(safe-area-inset-top));pointer-events:none;flex-direction:column;gap:8px;display:flex;position:fixed}.alert{pointer-events:auto;border-left:5px solid var(--warn);flex-direction:column;gap:8px;width:100%;max-width:520px;margin-left:auto;display:flex;box-shadow:0 8px 28px #0000002e}.alert .row button{min-height:36px;padding:6px 10px;font-size:.85rem}.steps{flex-direction:column;gap:4px;margin:0;padding-left:20px;display:flex}.warn{color:var(--warn);margin:0}.ok{color:var(--ok);margin:0}a.button{color:#fff;background:#229ed9;border-radius:8px;justify-content:center;align-items:center;min-height:44px;padding:10px 14px;font-weight:600;text-decoration:none;display:inline-flex}
