:root{--rail:#232c43;--rail-2:#2c3652;--rail-3:#3a4666;--rail-ink:#c3cadb;--rail-ink-2:#8994ad;--canvas:#fbfaf8;--panel:#fff;--panel-2:#f4f4f1;--panel-3:#eaeae5;--line:#e3e3dd;--line-2:#efefea;--ink:#1c2026;--ink-2:#5a626c;--ink-3:#8b929b;--accent:#e1562f;--accent-soft:#fceae3;--accent-ink:#b23d1b;--teal:#0e9b96;--teal-soft:#dff2f1;--todo:#9aa1ab;--todo-soft:#edeeef;--prog:#5b6ecc;--prog-soft:#e7eaf9;--done:#0e9b96;--done-soft:#dff2f1;--hold:#b07bc4;--hold-soft:#f3e9f7;--amber:#c8862a;--amber-soft:#fbf0dc;--danger:#d64545;--sh:0 1px 2px #1c20260d, 0 6px 16px -10px #1c202638}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--rail:#161c2b;--rail-2:#1f2739;--rail-3:#2b3549;--rail-ink:#afb8cc;--rail-ink-2:#77819a;--canvas:#12151a;--panel:#191d24;--panel-2:#1f242c;--panel-3:#272d36;--line:#2c333d;--line-2:#232931;--ink:#e8eaed;--ink-2:#a6aeb8;--ink-3:#79818c;--accent:#f0724d;--accent-soft:#3a1f16;--accent-ink:#f79878;--teal:#2fbdb6;--teal-soft:#12312f;--todo:#7a828c;--todo-soft:#252a31;--prog:#8494e0;--prog-soft:#1e2440;--done:#2fbdb6;--done-soft:#12312f;--hold:#c296d4;--hold-soft:#2c2233;--amber:#dfa954;--amber-soft:#32270f;--sh:0 1px 2px #00000073, 0 6px 16px -10px #000000b3}}:root[data-theme=dark]{--rail:#161c2b;--rail-2:#1f2739;--rail-3:#2b3549;--rail-ink:#afb8cc;--rail-ink-2:#77819a;--canvas:#12151a;--panel:#191d24;--panel-2:#1f242c;--panel-3:#272d36;--line:#2c333d;--line-2:#232931;--ink:#e8eaed;--ink-2:#a6aeb8;--ink-3:#79818c;--accent:#f0724d;--accent-soft:#3a1f16;--accent-ink:#f79878;--teal:#2fbdb6;--teal-soft:#12312f;--todo:#7a828c;--todo-soft:#252a31;--prog:#8494e0;--prog-soft:#1e2440;--done:#2fbdb6;--done-soft:#12312f;--hold:#c296d4;--hold-soft:#2c2233;--amber:#dfa954;--amber-soft:#32270f;--sh:0 1px 2px #00000073, 0 6px 16px -10px #000000b3}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--canvas);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter Tight,system-ui,-apple-system,Segoe UI,sans-serif;font-size:14px;line-height:1.5}h1,h2,h3,h4,.of{margin:0;font-family:Outfit,Inter Tight,sans-serif;line-height:1.2}.mn{font-variant-numeric:tabular-nums;font-family:IBM Plex Mono,monospace}:focus-visible{outline:2px solid var(--accent);outline-offset:1px;border-radius:3px}.boot{place-items:center;min-height:100%;padding:24px;display:grid}.boot-card{background:var(--panel);border:1px solid var(--line);box-shadow:var(--sh);border-radius:14px;width:100%;max-width:380px;padding:30px 34px}.boot-logo{background:var(--accent);border-radius:11px;width:40px;height:40px;margin-bottom:14px}.boot h1{letter-spacing:-.02em;margin:0;font-size:22px}.boot-sub{color:var(--ink-3);margin:3px 0 18px;font-size:13px}.boot-list{margin:0;padding:0;list-style:none}.boot-list li{border-top:1px solid var(--line-2);color:var(--ink-2);padding:9px 0 9px 26px;font-size:13.5px;position:relative}.boot-list li:before{content:"";border:2px solid var(--todo);border-radius:50%;width:12px;height:12px;position:absolute;top:13px;left:2px}.boot-list li[data-ok=true]{color:var(--ink)}.boot-list li[data-ok=true]:before{background:var(--done);border-color:var(--done)}.boot-list li[data-ok=false]{color:var(--danger)}.boot-list li[data-ok=false]:before{border-color:var(--danger)}.boot-time{color:var(--ink-3);font-variant-numeric:tabular-nums;margin:14px 0 0;font-size:11.5px}.auth{place-items:center;min-height:100%;padding:24px;display:grid}.auth-card{background:var(--panel);border:1px solid var(--line);box-shadow:var(--sh);border-radius:14px;width:100%;max-width:400px;padding:30px 34px}.auth-logo{background:var(--accent);border-radius:11px;width:40px;height:40px;margin-bottom:14px}.auth-card h1{letter-spacing:-.02em;margin:0;font-size:22px}.auth-sub{color:var(--ink-3);margin:3px 0 18px;font-size:13px}.field{margin-bottom:13px;display:block}.field>span{color:var(--ink-2);margin-bottom:4px;font-size:12px;font-weight:500;display:block}.field input{box-sizing:border-box;width:100%;font:inherit;color:inherit;background:var(--panel-2);border:1px solid var(--line);border-radius:8px;outline:none;padding:8px 11px}.field input:focus{border-color:var(--accent);background:var(--panel)}.field-hint{color:var(--amber);margin-top:4px;font-size:11.5px;display:block}.form-error{color:var(--danger);margin:4px 0 12px;font-size:13px}.form-notice{color:var(--ink-2);background:var(--teal-soft);border-left:3px solid var(--teal);border-radius:0 7px 7px 0;margin:4px 0 12px;padding:8px 11px;font-size:13px}.btn-primary{font:inherit;background:var(--accent);color:#fff;cursor:pointer;border:0;border-radius:8px;width:100%;padding:9px 14px;font-weight:500}.btn-primary:hover{filter:brightness(.94)}.btn-primary:disabled{opacity:.5;cursor:default}.btn-ghost{font:inherit;color:var(--accent);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:4px 8px;font-size:13px}.btn-ghost:hover{background:var(--accent-soft)}.auth-links{flex-wrap:wrap;justify-content:space-between;gap:16px;margin-top:16px;display:flex}.auth-links a{color:var(--accent);font-size:13px;text-decoration:none}.auth-links a:hover{text-decoration:underline}.home{flex-direction:column;min-height:100%;display:flex}.home-bar{background:var(--rail);color:#fff;justify-content:space-between;align-items:center;gap:12px;padding:10px 18px;display:flex}.home-brand{align-items:center;gap:9px;display:flex}.home-logo{background:var(--accent);border-radius:7px;width:24px;height:24px}.home-user{color:var(--rail-ink);align-items:center;gap:10px;font-size:13px;display:flex}.home-role{letter-spacing:.06em;text-transform:uppercase;background:var(--rail-2);border-radius:5px;padding:2px 7px;font-size:10.5px}.home-bar .btn-ghost{color:var(--rail-ink)}.home-bar .btn-ghost:hover{background:var(--rail-2);color:#fff}.home-body{flex-direction:column;flex:1;gap:14px;width:100%;max-width:640px;margin:0 auto;padding:28px 18px;display:flex}.home-card{background:var(--panel);border:1px solid var(--line);box-shadow:var(--sh);border-radius:12px;padding:20px 22px}.home-card h2{margin:0 0 8px;font-size:17px}.home-card p{color:var(--ink-2);margin:0 0 10px;font-size:13.5px}.invite-form{gap:8px;margin:12px 0;display:flex}.invite-form input{font:inherit;color:inherit;background:var(--panel-2);border:1px solid var(--line);border-radius:8px;outline:none;padding:7px 10px}.invite-form input:first-child{flex:1}.invite-form input[type=number]{width:64px}.invite-form input:focus{border-color:var(--accent)}.invite-form .btn-primary{width:auto}.invite-new{background:var(--accent-soft);border-radius:8px;align-items:center;gap:8px;margin:0 0 10px;padding:8px 11px;display:flex}.invite-new code{word-break:break-all;font-size:13px}.invite-table{border-collapse:collapse;width:100%;font-size:13px}.invite-table th{text-align:left;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-3);border-bottom:1px solid var(--line);padding:6px 8px;font-size:10.5px}.invite-table td{border-bottom:1px solid var(--line-2);padding:7px 8px}.diag{margin:12px 0;font-size:13px}.diag>div{border-bottom:1px solid var(--line-2);gap:10px;padding:5px 0;display:flex}.diag dt{color:var(--ink-3);min-width:84px;margin:0}.diag dd{color:var(--ink);word-break:break-all;margin:0}.diag-warn{color:var(--amber)}.sync-row{align-items:center;gap:11px;display:flex}.sync-dot{background:var(--done);border-radius:50%;flex:none;width:10px;height:10px}.sync-dot.syncing{background:var(--prog);animation:1s ease-in-out infinite syncpulse}.sync-dot.offline{background:var(--amber)}.sync-dot.error{background:var(--danger)}@media (prefers-reduced-motion:no-preference){@keyframes syncpulse{50%{opacity:.35}}}.sync-text{flex-direction:column;flex:1;display:flex}.sync-text b{font-size:13.5px}.sync-text span{color:var(--ink-3);font-size:11.5px}.qc-list{margin:6px 0 0;padding:0;list-style:none}.qc-list li{border-top:1px solid var(--line-2);align-items:center;gap:10px;padding:7px 0;display:flex}.qc-list li.done .qc-title{color:var(--ink-3);text-decoration:line-through}.qc-check{border:2px solid var(--todo);cursor:pointer;background:0 0;border-radius:50%;flex:none;width:17px;height:17px;padding:0}.qc-check:hover{border-color:var(--done)}.qc-check.on{background:var(--done);border-color:var(--done)}.qc-title{text-overflow:ellipsis;flex:1;min-width:0;font-size:13.5px;overflow:hidden}.qc-empty{color:var(--ink-3);margin:8px 0 0;font-size:12.5px}.shell{min-height:100%;display:flex}.rail{width:var(--rail-w,206px);background:var(--rail);color:var(--rail-ink);flex-direction:column;flex:none;height:100vh;transition:width .15s;display:flex;position:sticky;top:0;overflow:hidden}.rail.collapsed{border:0;padding:0;width:0!important}.rail-resize{cursor:col-resize;z-index:20;-webkit-user-select:none;user-select:none;width:6px;position:absolute;top:0;bottom:0;right:-3px}.rail-resize:after{content:"";background:0 0;border-radius:2px;width:2px;transition:background .15s;position:absolute;top:0;bottom:0;left:2px}.rail-resize:hover:after,.rail-resize.dragging:after{background:var(--accent)}.rail-expand{z-index:25;background:var(--rail);color:#fff;cursor:pointer;width:28px;height:28px;box-shadow:var(--sh);border:0;border-radius:7px;place-items:center;display:grid;position:fixed;top:10px;left:10px}.rail-expand:hover{background:var(--rail-2)}.rail-brand{color:#fff;align-items:center;gap:9px;padding:16px 14px 12px;display:flex}.rail-logo{background:var(--accent);border-radius:7px;flex:none;place-items:center;width:26px;height:26px;display:grid}.rail-logo svg{stroke:#fff;fill:none;stroke-width:2.1px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}.rail-brand b{color:#fff;letter-spacing:-.01em;font-family:Outfit,sans-serif;font-size:15.5px;font-weight:600}.ws{background:var(--rail-2);border-radius:8px;align-items:center;gap:8px;margin:0 10px 12px;padding:8px 10px;display:flex}.ws-av{background:var(--teal);color:#fff;border-radius:6px;flex:none;place-items:center;width:22px;height:22px;font-size:10.5px;font-weight:600;display:grid}.ws-t{min-width:0}.ws-t b{color:#fff;white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;font-weight:500;display:block;overflow:hidden}.ws-t i{color:var(--rail-ink-2);font-size:10.5px;font-style:normal}.navsec{flex:1;padding:0 8px;overflow-y:auto}.navlbl{letter-spacing:.13em;text-transform:uppercase;color:var(--rail-ink-2);padding:14px 8px 6px;font-size:9.5px;font-weight:600}.nav{width:100%;color:var(--rail-ink);font:inherit;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:7px;align-items:center;gap:9px;margin-bottom:1px;padding:7px 9px;font-size:13.5px;text-decoration:none;display:flex}.nav:hover{background:var(--rail-2);color:#fff}.nav.active{background:var(--rail-2);color:#fff;font-weight:500}.nav-muted{color:var(--rail-ink-2)}.nav svg{stroke:currentColor;fill:none;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:15px;height:15px}.nav>span:not(.cnt):not(.fdot){text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.nav .cnt{color:var(--rail-ink-2);flex:none;margin-left:auto;font-family:IBM Plex Mono,monospace;font-size:10.5px}.nav.active .cnt{color:var(--accent)}.nav .cnt.over{color:#d64545}.fdot{border-radius:3px;flex:none;width:9px;height:9px}.nav-add{padding:2px 4px 4px}.nav-add .inp.slim,.nav-add .inp{background:var(--rail-2);border:1px solid var(--rail-3);color:#fff;caret-color:#fff;border-radius:7px;width:100%;padding:6px 9px;font-size:13px}.nav-add .inp:focus{background:var(--rail-3);border-color:var(--accent)}.rail-foot{border-top:1px solid var(--rail-2);flex:none;padding:10px}.railcard{background:var(--rail-2);border-radius:9px;padding:10px 11px}.railcard .rt{letter-spacing:.1em;text-transform:uppercase;color:var(--rail-ink-2);margin-bottom:7px;font-size:10px;font-weight:600}.railcard .rr{margin-bottom:6px}.railcard .rr:last-child{margin-bottom:0}.rr-top{align-items:center;gap:8px;display:flex}.rr-top span{color:var(--rail-ink);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:11.5px;overflow:hidden}.rr-top b{color:#fff;font-family:IBM Plex Mono,monospace;font-size:11px}.mini{background:#ffffff1f;border-radius:4px;height:4px;margin-top:3px;overflow:hidden}.mini i{background:var(--teal);border-radius:4px;height:100%;display:block}.rail-none{color:var(--rail-ink-2);font-size:11.5px}.rail-sync{font:inherit;color:var(--rail-ink-2);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;width:100%;padding:6px 4px 0;font-size:12px;display:flex}.rail-sync:hover{color:var(--rail-ink)}.rail-user{align-items:baseline;gap:8px;padding:6px 4px 0;font-size:12.5px;display:flex}.rail-user>span{color:#fff;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.rail-out{font:inherit;color:var(--rail-ink-2);cursor:pointer;text-align:left;background:0 0;border:0;flex:none;padding:0;font-size:12px}.rail-out:hover{color:var(--accent)}.shell-body{flex:1;min-width:0}@media (width<=720px){.shell{flex-direction:column}.rail{width:100%;height:auto;position:static}.navsec{max-height:40vh}}.page{width:100%;padding:22px 32px 60px}.page-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.page-head h1{letter-spacing:-.02em;margin:0;font-size:22px}.page-sub{color:var(--ink-3);text-transform:uppercase;letter-spacing:.06em;margin:26px 0 10px;font-size:13px}.page-empty{color:var(--ink-3);font-size:13.5px}.page-hero-empty{background:var(--panel);border:1px dashed var(--line);text-align:center;border-radius:14px;max-width:440px;margin:40px auto;padding:40px}.page-hero-empty h2{margin:0 0 6px}.page-hero-empty p{color:var(--ink-2);margin:0 0 18px}.btn-primary.slim{width:auto;padding:7px 14px}.btn-primary.danger{background:var(--danger)}.btn-ghost.danger{color:var(--danger)}.btn-ghost.danger:hover{background:var(--accent-soft)}.crumb{color:var(--ink-3);margin-bottom:12px;font-size:13px;text-decoration:none;display:inline-block}.crumb:hover{color:var(--accent)}.inp{font:inherit;color:inherit;background:var(--panel-2);border:1px solid var(--line);box-sizing:border-box;border-radius:8px;outline:none;width:100%;padding:8px 11px}.inp:focus{border-color:var(--accent);background:var(--panel)}.inp.slim{padding:6px 9px;font-size:13px}.inp.big{padding:10px 12px;font-size:15px}.inp.bare{background:0 0;border:0;padding:4px 0;font-size:16px;font-weight:600}.inp.wide{grid-column:1/-1}.fld{min-width:0;margin-bottom:12px;display:block}.fld>span{color:var(--ink-3);text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px;font-size:11.5px;font-weight:600;display:block}.fld.inline{align-items:center;gap:8px;margin-bottom:10px;display:flex}.fld.inline>span{margin:0}.fld.inline .inp{width:auto}.ring{flex:none;position:relative}.ring svg{display:block;transform:rotate(-90deg)}.ring circle{fill:none;stroke-width:4px}.ring .ring-bg{stroke:var(--line)}.ring .ring-fg{stroke:var(--teal);stroke-linecap:round;transition:stroke-dasharray .3s}.ring b{place-items:center;font-size:11px;display:grid;position:absolute;inset:0}.spill{border-radius:20px;padding:2px 8px;font-size:11px;font-weight:600}.spill.todo{color:var(--todo);background:var(--todo-soft)}.spill.done{color:var(--done);background:var(--done-soft)}.spill.hold{color:var(--hold);background:var(--hold-soft)}.pflag{align-items:center;gap:4px;font-size:11.5px;font-weight:600;display:inline-flex}.pflag svg{width:12px;height:12px}.cbx{border:1.5px solid var(--line);background:var(--panel);cursor:pointer;border-radius:6px;flex:none;place-items:center;width:19px;height:19px;padding:0;display:grid}.cbx svg{fill:none;stroke:#fff;stroke-width:3px;opacity:0;width:12px;height:12px}.cbx:hover{border-color:var(--teal)}.cbx.on{background:var(--done);border-color:var(--done)}.cbx.on svg{opacity:1}.modal-back{z-index:60;background:#10131a73;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:var(--panel);box-shadow:var(--sh);border-radius:14px;outline:none;width:100%;max-width:420px;max-height:90vh;padding:20px 22px;overflow:auto}.modal.wide{max-width:560px}.modal-head{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.modal-head h2{margin:0;font-size:17px}.goal-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px;display:grid}.goal-card{background:var(--panel);border:1px solid var(--line);color:inherit;box-shadow:var(--sh);border-radius:12px;text-decoration:none;transition:transform .15s;display:block;overflow:hidden}.goal-card:hover{transform:translateY(-2px)}.goal-card.dim{opacity:.65}.goal-cover{height:54px}.goal-card-body{padding:12px 14px 14px}.goal-card-top{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.goal-card-top b{font-size:14.5px;line-height:1.35}.goal-card-meta{color:var(--ink-3);flex-wrap:wrap;align-items:center;gap:10px;margin-top:8px;font-size:12px;display:flex}.wiz-pips{gap:5px;margin:4px 0 14px;display:flex}.wpip{background:var(--line);border-radius:3px;flex:1;height:4px}.wpip.past{background:var(--teal)}.wpip.on{background:var(--accent)}.wstep{opacity:.35;pointer-events:none;border-top:1px solid var(--line-2);padding:10px 0}.wstep.on{opacity:1;pointer-events:auto}.wstep h3{margin:2px 0 10px;font-size:15px}.wnum{letter-spacing:.08em;color:var(--ink-3);font-size:10.5px;font-weight:700}.whint{color:var(--ink-3);margin:8px 0 0;font-size:12px}.wgrid{grid-template-columns:repeat(3,1fr);gap:7px;display:grid}.wopt{font:inherit;cursor:pointer;border:1px solid var(--line);background:var(--panel-2);color:var(--ink-2);border-radius:8px;padding:8px 6px;font-size:12.5px}.wopt.on{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-ink);font-weight:600}.wrow{gap:8px;display:flex}.wchips{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.wchip{font:inherit;cursor:pointer;border:1px solid var(--line);background:var(--panel);color:var(--ink-2);border-radius:16px;padding:4px 10px;font-size:12px}.wchip:hover{border-color:var(--teal);color:var(--teal)}.wiz-foot{justify-content:flex-end;gap:10px;margin-top:16px;display:flex}.gd-hero{color:#fff;box-shadow:var(--sh);border-radius:14px}.gd-hero-in{border-radius:inherit;background:linear-gradient(#0a0c122e,#0a0c1261);justify-content:space-between;align-items:center;gap:18px;padding:22px 24px;display:flex}.gd-hero h1{letter-spacing:-.02em;margin:2px 0 4px;font-size:22px}.gd-cat{letter-spacing:.08em;text-transform:uppercase;opacity:.85;font-size:11px;font-weight:700}.gd-desc{opacity:.92;max-width:60ch;margin:0 0 6px;font-size:13px}.gd-meta{opacity:.9;flex-wrap:wrap;gap:14px;font-size:12.5px;display:flex}.gd-hero .ring .ring-bg{stroke:#ffffff40}.gd-hero .ring .ring-fg{stroke:#fff}.gd-hero .ring b{color:#fff;font-size:14px}.gd-bar{justify-content:space-between;align-items:center;margin:12px 0 16px;display:flex}.gd-cols{grid-template-columns:minmax(0,1fr) minmax(300px,380px);align-items:start;gap:18px;display:grid}@media (width<=900px){.gd-cols{grid-template-columns:1fr}}@media (width>=1500px){.gd-cols{grid-template-columns:minmax(0,1fr) 420px}}.gd-main,.gd-side{flex-direction:column;gap:16px;min-width:0;display:flex}.gd-loose-h{color:var(--ink-3);text-transform:uppercase;letter-spacing:.06em;margin:18px 0 6px;font-size:12px}.gd-warn{color:var(--ink-2);font-size:13.5px}.ms-block{border-top:1px solid var(--line-2);padding:4px 0}.ms-row{align-items:center;gap:9px;padding:6px 0;display:flex}.ms-row b{font-size:13.5px}.ms-row b.done{color:var(--ink-3);text-decoration:line-through}.ms-toggle{font:inherit;cursor:pointer;color:var(--ink-3);background:0 0;border:0;width:20px;padding:2px}.ms-pct{color:var(--teal);background:var(--teal-soft);border-radius:12px;padding:1px 7px;font-size:11.5px;font-weight:700}.ms-due{color:var(--ink-3);font-size:11.5px}.ms-row .btn-ghost{opacity:0;margin-left:auto}.ms-row:hover .btn-ghost,.ms-row .btn-ghost:focus-visible{opacity:1}.ms-acts{padding-bottom:6px;padding-left:28px}.act-row{align-items:center;gap:9px;min-width:0;padding:5px 0;display:flex}.act-row.done .act-title{color:var(--ink-3);text-decoration:line-through}.act-open{font:inherit;cursor:pointer;color:inherit;text-align:left;background:0 0;border:0;align-items:center;gap:7px;min-width:0;padding:2px 0;display:flex}.act-open:hover .act-title{color:var(--accent)}.act-title{text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;overflow:hidden}.act-dot{border-radius:50%;flex:none;width:8px;height:8px}.act-sub{color:var(--ink-3);background:var(--panel-3);border-radius:10px;padding:1px 6px;font-size:11px}.act-due{color:var(--ink-3);flex:none;margin-left:auto;font-size:11.5px}.quick-add{margin:6px 0 2px}.quick-add.ms{margin-top:10px}.dig-head{font:inherit;cursor:pointer;color:inherit;text-align:left;background:0 0;border:0;align-items:baseline;gap:10px;width:100%;padding:0;display:flex}.dig-head span{color:var(--ink-3);font-size:12px}.dig-body{margin-top:14px}.prog-form{grid-template-columns:1fr 1fr auto;gap:7px;margin:12px 0;display:grid}.prog-list{margin:0;padding:0;list-style:none}.prog-list li{border-top:1px solid var(--line-2);flex-wrap:wrap;align-items:baseline;gap:10px;padding:7px 0;font-size:13px;display:flex}.prog-date{color:var(--ink-3);flex:0 0 52px;font-size:12px}.prog-note{color:var(--ink-2);width:100%;padding-left:62px;font-size:12.5px}.prog-chart{width:100%;height:auto;margin-top:6px}.chart-line{fill:none;stroke:var(--teal);stroke-width:2px}.chart-dot{fill:var(--teal)}.chart-target{stroke:var(--amber);stroke-width:1px;stroke-dasharray:4 4}.apanel{z-index:50;background:var(--panel);border-left:1px solid var(--line);width:min(400px,100vw);box-shadow:var(--sh);padding:16px 20px 30px;position:fixed;top:0;bottom:0;right:0;overflow-y:auto}.apanel-head{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.apanel-kind{letter-spacing:.08em;text-transform:uppercase;color:var(--accent);font-size:11px;font-weight:700}.apanel-title{align-items:center;gap:10px;margin-bottom:14px;display:flex}.apanel-grid{grid-template-columns:1fr 1fr;gap:0 12px;display:grid}.apanel-foot{border-top:1px solid var(--line-2);justify-content:flex-end;margin-top:6px;padding-top:12px;display:flex}.swatches{flex-wrap:wrap;gap:6px;display:flex}.swatch{cursor:pointer;border:2px solid #0000;border-radius:50%;width:22px;height:22px;padding:0}.swatch.none{background:var(--panel-2);border-color:var(--line);position:relative}.swatch.none:after{content:"✕";color:var(--ink-3);place-items:center;font-size:10px;display:grid;position:absolute;inset:0}.swatch.on{border-color:var(--ink);box-shadow:0 0 0 2px var(--panel)}.tag-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.tag{background:var(--panel-3);color:var(--ink-2);border-radius:14px;align-items:center;gap:5px;padding:3px 9px;font-size:12px;font-weight:500;display:inline-flex}.tag button{font:inherit;cursor:pointer;color:var(--ink-3);background:0 0;border:0;padding:0;font-size:10px}.tag button:hover{color:var(--danger)}.tag-row .inp.slim{width:110px}.sub-list{margin:0 0 8px;padding:0;list-style:none}.sub-list li{align-items:center;gap:9px;padding:4px 0;font-size:13.5px;display:flex}.sub-list li .done{color:var(--ink-3);text-decoration:line-through}.sub-list li .btn-ghost{opacity:0;margin-left:auto;padding:2px 6px}.sub-list li:hover .btn-ghost,.sub-list li .btn-ghost:focus-visible{opacity:1}@media (prefers-reduced-motion:reduce){.goal-card,.ring .ring-fg{transition:none}}.vswitch{background:var(--panel-2);border-radius:9px;gap:2px;padding:3px;display:flex}.vswitch button{font:inherit;color:var(--ink-2);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:5px 12px;font-size:13px}.vswitch button:hover{color:var(--ink)}.vswitch button.on{background:var(--panel);color:var(--ink);box-shadow:var(--sh);font-weight:600}.toolbar{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:7px;margin-bottom:14px;padding-bottom:12px;display:flex}.toolbar .inp.slim{width:auto}.tb-search{min-width:180px}.tb-count{color:var(--ink-3);margin-left:auto;font-size:12px}.trow{border-bottom:1px solid var(--line-2);border-radius:8px;align-items:center;gap:9px;min-width:0;padding:7px 8px;display:flex}.trow:hover{background:var(--panel-2)}.trow.sel{background:var(--accent-soft)}.trow.done .trow-title{color:var(--ink-3);text-decoration:line-through}.trow-sel{accent-color:var(--accent);cursor:pointer}.trow-main{font:inherit;cursor:pointer;color:inherit;text-align:left;background:0 0;border:0;flex:1;align-items:center;gap:8px;min-width:0;padding:2px 0;display:flex}.trow-main:hover .trow-title{color:var(--accent)}.trow-title{text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;overflow:hidden}.trow-goal{color:var(--teal);background:var(--teal-soft);text-overflow:ellipsis;white-space:nowrap;border-radius:10px;flex:none;max-width:160px;padding:1px 7px;font-size:11px;overflow:hidden}.trow-tag{color:var(--ink-2);background:var(--panel-3);border-radius:10px;flex:none;padding:1px 7px;font-size:11px}.trow-habit{color:var(--amber);font-size:13px}.trow-due{color:var(--ink-3);flex:none;font-size:11.5px}.trow-due.over{color:var(--danger);font-weight:600}.lgroup{margin-bottom:14px}.lgroup-head{font:inherit;cursor:pointer;color:inherit;text-align:left;background:0 0;border:0;border-radius:7px;align-items:center;gap:8px;width:100%;padding:6px 4px;display:flex}.lgroup-head:hover{background:var(--panel-2)}.lgroup-caret{color:var(--ink-3);width:12px}.lgroup-n{color:var(--ink-3);background:var(--panel-3);border-radius:10px;padding:1px 7px;font-size:11px;font-weight:700}.lgroup-body{padding-left:4px}.bulkbar{z-index:40;background:var(--rail);color:#fff;box-shadow:var(--sh);border-radius:11px;align-items:center;gap:10px;padding:9px 14px;display:flex;position:fixed;bottom:20px;left:50%;transform:translate(-50%)}.bulkbar .inp.slim{background:var(--rail-2);border-color:var(--rail-3);color:#fff;width:auto}.board{grid-template-columns:repeat(3,minmax(240px,1fr));align-items:start;gap:14px;display:grid}@media (width<=860px){.board{grid-template-columns:1fr}}.bcol{background:var(--panel-2);border-radius:12px;min-height:120px;padding:10px}.bcol.over{outline:2px dashed var(--accent);outline-offset:-3px}.bcol-head{justify-content:space-between;align-items:center;margin-bottom:9px;display:flex}.bcol-body{flex-direction:column;gap:8px;display:flex}.bcard{background:var(--panel);border:1px solid var(--line);cursor:grab;border-radius:10px;padding:10px 11px;position:relative;overflow:hidden}.bcard:active{cursor:grabbing}.bcard-bar{width:3px;position:absolute;top:0;bottom:0;left:0}.bcard-top{align-items:flex-start;gap:8px;display:flex}.bcard-title{font:inherit;cursor:pointer;color:inherit;text-align:left;background:0 0;border:0;padding:0;font-size:13.5px;line-height:1.35}.bcard-title:hover{color:var(--accent)}.bcard-meta{flex-wrap:wrap;align-items:center;gap:8px;margin-top:7px;display:flex}.bcard-tags{flex-wrap:wrap;gap:5px;margin-top:6px;display:flex}.bcard-move{width:100%;margin-top:8px;font-size:12px}.cal-wrap{grid-template-columns:minmax(0,1fr) 260px;align-items:start;gap:16px;display:grid}@media (width<=1000px){.cal-wrap{grid-template-columns:1fr}}.cal-bar{align-items:center;gap:8px;margin-bottom:10px;display:flex}.cal-bar b{min-width:150px;font-size:15px}.cal-grid{background:var(--line);border:1px solid var(--line);border-radius:10px;grid-template-columns:repeat(7,1fr);gap:1px;display:grid;overflow:hidden}.cal-dow{background:var(--panel-2);color:var(--ink-3);text-align:center;text-transform:uppercase;padding:6px;font-size:11px;font-weight:700}.cal-cell{background:var(--panel);flex-direction:column;gap:2px;min-height:92px;padding:4px 5px;display:flex}.cal-cell.out{background:var(--panel-2)}.cal-cell.out .cal-num{color:var(--ink-3);opacity:.6}.cal-cell.today{background:var(--accent-soft)}.cal-cell.today .cal-num{color:var(--accent-ink);font-weight:800}.cal-cell.over{outline:2px dashed var(--accent);outline-offset:-2px}.cal-num{color:var(--ink-2);font-size:11.5px;font-weight:600}.cal-item{cursor:grab;align-items:center;gap:5px;min-width:0;font-size:11.5px;display:flex}.cal-item button{font:inherit;cursor:pointer;color:inherit;text-align:left;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;padding:0;font-size:11.5px;overflow:hidden}.cal-item button:hover{color:var(--accent)}.cal-item.done button{color:var(--ink-3);text-decoration:line-through}.cal-item .cbx{border-radius:4px;width:14px;height:14px}.cal-item .cbx svg{width:9px;height:9px}.cal-more{color:var(--ink-3);font-size:10.5px}.cal-drawer{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:12px}.cal-drawer-tabs{gap:4px;margin-bottom:8px;display:flex}.cal-drawer-tabs button{font:inherit;background:var(--panel-2);color:var(--ink-2);cursor:pointer;border:0;border-radius:7px;align-items:center;gap:5px;padding:5px 9px;font-size:12.5px;display:flex}.cal-drawer-tabs button.on{background:var(--accent-soft);color:var(--accent-ink);font-weight:600}.cal-drawer-hint{color:var(--ink-3);margin:0 0 8px;font-size:11.5px}.cal-drawer-body{flex-direction:column;gap:4px;max-height:420px;display:flex;overflow-y:auto}.cal-ditem{border-bottom:1px solid var(--line-2);cursor:grab;align-items:center;gap:8px;padding:5px 0;font-size:13px;display:flex}.cal-ditem button:first-of-type{font:inherit;cursor:pointer;color:inherit;text-align:left;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;flex:1;min-width:0;padding:0;font-size:13px;overflow:hidden}.cal-ditem button:first-of-type:hover{color:var(--accent)}.mmap{flex-direction:column;gap:22px;display:flex}.mm-tree{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:14px 16px}.mm-node{align-items:center;gap:8px;padding:4px 0;display:flex}.mm-node.goal .mm-label{font-size:15px;font-weight:700}.mm-node.ms .mm-label{font-size:13.5px;font-weight:600}.mm-node.act .mm-label{font-size:13px}.mm-node.act.done .mm-label{color:var(--ink-3);text-decoration:line-through}.mm-label{font:inherit;cursor:pointer;color:inherit;text-align:left;background:0 0;border:0;padding:0}button.mm-label:hover{color:var(--accent)}.mm-caret{font:inherit;cursor:pointer;border:1px solid var(--line);background:var(--panel-2);width:18px;height:18px;color:var(--ink-2);border-radius:5px;flex:none;padding:0;line-height:1}.mm-children{border-left:2px solid var(--line);margin-left:9px;padding-left:16px}.mm-branch{padding:2px 0}.mm-add{font:inherit;border:1px dashed var(--line);color:var(--ink-3);cursor:pointer;background:0 0;border-radius:7px;margin:4px 0;padding:3px 10px;font-size:12px}.mm-add:hover{border-color:var(--accent);color:var(--accent)}.quick-add.mm{max-width:260px;margin:4px 0}.today-tabs{gap:2px;margin-bottom:16px;display:flex}.today-tabs .tab{font:inherit;color:var(--ink-2);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:6px 12px;font-size:13.5px;font-weight:500}.today-tabs .tab:hover{background:var(--panel-2);color:var(--ink)}.today-tabs .tab.on{background:var(--accent-soft);color:var(--accent);font-weight:600}.today{grid-template-columns:298px 1fr;align-items:start;gap:16px;display:grid}@media (width<=860px){.today{grid-template-columns:1fr}}.dcard{background:var(--panel);border:1px solid var(--line);border-radius:10px;overflow:hidden}.dchd{border-bottom:1px solid var(--line-2);justify-content:space-between;align-items:center;padding:11px 13px;display:flex}.dchd b{font-family:Outfit,sans-serif;font-size:14.5px;font-weight:600}.dchd .dchd-nav{gap:2px;display:flex}.dchd .dchd-nav button{cursor:pointer;width:26px;height:26px;color:var(--ink-2);background:0 0;border:0;border-radius:6px;place-items:center;font-size:14px;display:grid}.dchd .dchd-nav button:hover{background:var(--panel-2);color:var(--ink)}.dsec{padding:9px 13px}.dsec .sl{letter-spacing:.11em;text-transform:uppercase;color:var(--ink-3);margin-bottom:6px;font-size:10px;font-weight:600}.dsec.overdue{background:var(--amber-soft)}.dsec.overdue .sl{color:var(--amber)}.dact{border-radius:8px;align-items:flex-start;gap:9px;margin:0 -8px;padding:7px 8px;display:flex}.dact:hover{background:var(--panel-2)}.dact .dm{cursor:pointer;flex:1;min-width:0}.dact .dm .dt{font-size:13.5px;line-height:1.3}.dact.done .dm .dt{color:var(--ink-3);text-decoration:line-through}.dact .dm .ds{color:var(--ink-3);flex-wrap:wrap;align-items:center;gap:7px;margin-top:2px;font-size:11.5px;display:flex}.dact .dm .ds .mn{font-family:IBM Plex Mono,monospace}.gtag{color:var(--accent);background:var(--accent-soft);border-radius:4px;align-items:center;gap:3px;padding:1px 6px;font-size:10.5px;font-weight:500;display:inline-flex}.gtag svg{width:10px;height:10px}.day-glance{align-items:center;gap:14px;padding:4px 0;display:flex}.day-glance .ring b{font-family:Outfit,sans-serif;font-size:13px;font-weight:600}.day-glance-text{color:var(--ink-2);font-size:12.5px;line-height:1.45}.day-glance-text strong{color:var(--ink);font-family:Outfit,sans-serif;font-size:15px;display:block}.tstrip{background:var(--panel);border:1px solid var(--line);border-radius:10px;overflow:hidden}.tshd{border-bottom:1px solid var(--line);grid-template-columns:52px repeat(3,1fr);display:grid}.tshd>div{border-left:1px solid var(--line-2);padding:9px 10px}.tshd>div:first-child{border-left:0}.tshd .dn{font-family:Outfit,sans-serif;font-size:13px;font-weight:600}.tshd .dd{color:var(--ink-3);font-size:11px}.tshd .cur .dn{color:var(--accent)}.anytime{border-bottom:1px solid var(--line-2);grid-template-columns:52px repeat(3,1fr);min-height:36px;display:grid}.anytime .lbl{color:var(--ink-3);text-align:right;text-transform:uppercase;letter-spacing:.06em;padding:6px 4px 0;font-size:9.5px;font-weight:600}.anytime .cel{border-left:1px solid var(--line-2);padding:4px}.hrs{max-height:calc(100vh - 300px);position:relative;overflow-y:auto}.hrow{grid-template-columns:52px repeat(3,1fr);min-height:46px;display:grid}.hrow .hl{color:var(--ink-3);text-align:right;border-top:1px solid #0000;padding:2px 8px 0 0;font-family:IBM Plex Mono,monospace;font-size:10.5px}.hrow .cel{border-left:1px solid var(--line-2);border-top:1px solid var(--line-2);min-height:46px;padding:2px;position:relative}.hrow .cel:hover{background:var(--panel-2)}.blk{border-left:3px solid var(--accent);background:var(--accent-soft);cursor:pointer;border-radius:6px;margin-bottom:2px;padding:4px 7px;font-size:11.5px}.blk .bh{align-items:flex-start;gap:6px;display:flex}.blk .bt2{text-overflow:ellipsis;white-space:nowrap;flex:1;font-weight:500;line-height:1.25;overflow:hidden}.blk .bs{color:var(--ink-3);margin-top:1px;font-family:IBM Plex Mono,monospace;font-size:10.5px}.blk.done{opacity:.55}.blk.done .bt2{text-decoration:line-through}.nowline{border-top:1.5px solid var(--accent);z-index:3;pointer-events:none;height:0;position:absolute;left:52px;right:0}.nowline:before{content:"";background:var(--accent);border-radius:50%;width:7px;height:7px;position:absolute;top:-4px;left:-4px}.dash-nums{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:16px;display:grid}.numcard{background:var(--panel);border:1px solid var(--line);color:inherit;box-shadow:var(--sh);border-radius:12px;flex-direction:column;gap:2px;padding:14px 16px;text-decoration:none;display:flex}.numcard b{letter-spacing:-.03em;font-size:26px;line-height:1.1}.numcard b.good{color:var(--done)}.numcard b.bad{color:var(--danger)}.numcard span{color:var(--ink-3);font-size:12px}a.numcard:hover{border-color:var(--accent)}.dash-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));align-items:start;gap:14px;display:grid}.dash-hint{color:var(--ink-3);margin:0 0 10px;font-size:12px}.dash-rings{flex-wrap:wrap;gap:16px;display:flex}.dash-ring{color:inherit;flex-direction:column;align-items:center;gap:5px;width:92px;text-decoration:none;display:flex}.dash-ring span{text-align:center;color:var(--ink-2);font-size:11.5px;line-height:1.3}.dash-ring:hover span{color:var(--accent)}.dash-bars{margin-bottom:14px}.dash-bars h3{text-transform:uppercase;letter-spacing:.05em;color:var(--ink-3);margin:0 0 7px;font-size:11.5px}.dbar{align-items:center;gap:9px;margin-bottom:5px;display:flex}.dbar-label{width:74px;color:var(--ink-2);flex:none;font-size:12px}.dbar-track{background:var(--panel-3);border-radius:4px;flex:1;height:7px;overflow:hidden}.dbar-fill{background:var(--teal);border-radius:4px;height:100%}.dbar-n{color:var(--ink-3);text-align:right;width:22px;font-size:11.5px}.dash-att{border-bottom:1px solid var(--line-2);justify-content:space-between;align-items:center;gap:10px;padding:6px 0;font-size:13px;display:flex}.heat{gap:3px;display:grid}.heat-col{grid-template-rows:repeat(7,1fr);gap:3px;display:grid}.heat-cell{aspect-ratio:1;background:var(--panel-3);border-radius:2px}.heat-cell.l1{background:color-mix(in srgb, var(--teal) 30%, var(--panel-3))}.heat-cell.l2{background:color-mix(in srgb, var(--teal) 55%, var(--panel-3))}.heat-cell.l3{background:color-mix(in srgb, var(--teal) 78%, var(--panel-3))}.heat-cell.l4{background:var(--teal)}.habit-list{flex-direction:column;gap:14px;display:flex}.habit-card{max-width:900px}.habit-head{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.habit-head b{font-size:15px}.habit-meta{color:var(--ink-3);flex-wrap:wrap;align-items:center;gap:10px;margin-top:3px;font-size:12px;display:flex}.habit-today{color:var(--ink-3);align-items:center;gap:7px;font-size:12px;display:flex}.habit-stats{flex-wrap:wrap;gap:24px;margin:14px 0 12px;display:flex}.habit-stats>div{flex-direction:column;display:flex}.habit-stats b{letter-spacing:-.02em;font-size:20px}.habit-stats span{color:var(--ink-3);font-size:11px}button.heat-cell{cursor:pointer;border:0;padding:0}button.heat-cell:hover:not(:disabled){outline:1.5px solid var(--accent);outline-offset:1px}.heat-cell.now{outline:1.5px solid var(--ink-2);outline-offset:1px}.heat-cell.future{opacity:.3;cursor:default}.jrn-cols{grid-template-columns:minmax(280px,360px) minmax(0,1fr);align-items:start;gap:16px;display:grid}@media (width<=900px){.jrn-cols{grid-template-columns:1fr}}.jrn-feed{flex-direction:column;gap:12px;min-width:0;display:flex}.jrn-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:8px;display:flex}.jrn-head b{font-size:14.5px}.jrn-actions{flex:none;gap:2px;display:flex}.jrn-text{color:var(--ink-2);white-space:pre-wrap;max-width:70ch;margin:0;font-size:13.5px}.jrn-body{font-family:inherit}.fbar{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.ftile{font:inherit;cursor:pointer;border:1px solid var(--line);background:var(--panel);color:var(--ink-2);border-radius:10px;align-items:center;gap:7px;padding:7px 12px;font-size:13px;display:flex}.ftile:hover{border-color:var(--ink-3)}.ftile.on{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-ink);font-weight:600}.ftile.add{color:var(--ink-3);border-style:dashed}.ftile-glyph{border-radius:3px;flex:none;width:12px;height:12px}.ftile-lock{font-size:10px}.fmanage{margin:14px 0 0;padding:0;list-style:none}.fmanage li{border-top:1px solid var(--line-2);align-items:center;gap:9px;padding:7px 0;display:flex}.fmanage .inp.slim{flex:1}.fprivate{color:var(--ink-2);flex:none;align-items:center;gap:5px;font-size:12px;display:flex}.fprivate input{accent-color:var(--accent)}.toggle-row{border-top:1px solid var(--line-2);align-items:center;gap:9px;padding:7px 0;font-size:13.5px;display:flex}.toggle-row input{accent-color:var(--accent);width:16px;height:16px}.toggle-row input:disabled{opacity:.5}.toggle-row span:first-of-type{flex:1}.admin-wide{grid-column:1/-1}.admin-scroll{max-height:460px;overflow:auto}.admin-scroll .invite-table{min-width:560px}.privacy-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.stcat{margin-bottom:18px}.stcat-h{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3);margin:0 0 8px;font-size:11.5px}.stlist{margin:0 0 6px;padding:0;list-style:none}.strow{border-top:1px solid var(--line-2);flex-wrap:wrap;align-items:center;gap:8px;padding:6px 0;display:flex;position:relative}.strow-dot{cursor:pointer;border:0;border-radius:50%;flex:none;width:16px;height:16px;padding:0}.strow-swatches{z-index:5;background:var(--panel);border:1px solid var(--line);box-shadow:var(--sh);border-radius:10px;flex-wrap:wrap;gap:6px;width:160px;padding:8px;display:none;position:absolute;top:30px;left:0}.strow-swatches.open{display:flex}.strow-name-btn{font:inherit;cursor:pointer;color:inherit;text-align:left;background:0 0;border:0;border-radius:6px;padding:3px 6px;font-size:13.5px}.strow-name-btn:hover{background:var(--panel-2)}.strow-name{flex:1;min-width:120px}.strow-move{flex-direction:column;gap:1px;display:flex}.strow-move .mm-caret{width:16px;height:14px;font-size:9px}.strow-move .mm-caret:disabled{opacity:.3;cursor:default}.strow-delete{background:var(--panel-2);border-radius:8px;flex-wrap:wrap;flex-basis:100%;align-items:center;gap:8px;margin-top:4px;padding:8px 10px;font-size:12.5px;display:flex}.grp{margin-bottom:16px}.ghd{align-items:center;gap:9px;padding:5px 0 7px;display:flex}.ghd .spill{letter-spacing:.04em;text-transform:uppercase;background:var(--panel-3);color:var(--ink-2);border-radius:5px;padding:2.5px 9px}.gcnt{color:var(--ink-3);font-family:IBM Plex Mono,monospace;font-size:11.5px}.tblw{border:1px solid var(--line);background:var(--panel);border-radius:8px;overflow:hidden}.thd,.tr{grid-template-columns:1fr 108px 96px 104px 116px;align-items:center;display:grid}.thd{background:var(--panel-2);border-bottom:1px solid var(--line)}.thd div{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);padding:7px 12px;font-size:10.5px;font-weight:600}.tr{border-bottom:1px solid var(--line-2);position:relative}.tr:last-of-type{border-bottom:0}.tr:hover{background:var(--panel-2)}.tr.sel{background:var(--accent-soft)}.tr>div{align-items:center;min-width:0;height:38px;padding:0 12px;font-size:13.5px;display:flex}.tnm{gap:9px}.tnm .txt{white-space:nowrap;text-overflow:ellipsis;cursor:pointer;font:inherit;color:inherit;text-align:left;background:0 0;border:0;padding:0;overflow:hidden}.tnm .txt:hover{color:var(--accent)}.tr.done .tnm .txt,.tnm .txt.struck{color:var(--ink-3);text-decoration:line-through}.tname-edit{flex:1;min-width:0}.tsub{color:var(--ink-3);flex:none;font-family:IBM Plex Mono,monospace;font-size:11px}.trep{color:var(--ink-3);flex:none;display:inline-flex}.trep svg{stroke:currentColor;fill:none;stroke-width:1.8px;width:12px;height:12px}.dash{color:var(--ink-3)}.sdot{border:2px solid var(--todo);cursor:pointer;background:0 0;border-radius:50%;flex:none;place-items:center;width:15px;height:15px;padding:0;display:grid}.sdot svg{stroke:#fff;fill:none;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;opacity:0;width:9px;height:9px}.sdot.done{background:var(--done);border-color:var(--done)}.sdot.done svg{opacity:1}.sdot.prog{border-color:var(--prog);background:var(--prog-soft)}.hov{flex:none;gap:1px;margin-left:auto;display:none}.tr:hover .hov,.tr:focus-within .hov{display:flex}.hov button{width:22px;height:22px;color:var(--ink-3);cursor:pointer;background:0 0;border:0;border-radius:5px;place-items:center;padding:0;display:grid}.hov button:hover{background:var(--panel-3);color:var(--ink)}.hov svg{stroke:currentColor;fill:none;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:13px;height:13px}.gtag{background:var(--accent-soft);color:var(--accent-ink);white-space:nowrap;border-radius:4px;flex:none;align-items:center;gap:4px;max-width:100%;padding:1.5px 6px;font-size:11px;display:inline-flex;overflow:hidden}.gtag svg{stroke:currentColor;fill:none;stroke-width:2px;flex:none;width:10px;height:10px}.gtag.tag{background:var(--panel-3);color:var(--ink-2)}.dt{color:var(--ink-2);font-family:IBM Plex Mono,monospace;font-size:12.5px}.dt.over{color:#d64545}.addrow{border-top:1px solid var(--line-2);align-items:center;gap:8px;padding:7px 12px;display:flex}.addrow input{font:inherit;background:0 0;border:0;outline:none;flex:1;font-size:13.5px}.addrow input::placeholder{color:var(--ink-3)}.addrow .pl{width:15px;height:15px;color:var(--ink-3);flex:none;display:inline-flex}.addrow .pl svg{stroke:currentColor;fill:none;stroke-width:1.8px;width:15px;height:15px}.subrow{padding-left:34px!important}.subadd{flex:1;min-width:0;display:flex}.subadd .inp{flex:1;min-width:0}.tbar{flex-wrap:wrap;align-items:center;gap:6px;padding:10px 0;display:flex}.chip{color:var(--ink-2);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;align-items:center;gap:5px;padding:4px 9px;font-family:inherit;font-size:12.5px;display:inline-flex;position:relative}.chip:hover{background:var(--panel-2);color:var(--ink)}.chip:focus-within{outline:2px solid var(--accent);outline-offset:1px}.chip.act{background:var(--accent-soft);color:var(--accent-ink);border-color:#e1562f33}.chip.static{cursor:default}.chip.static:hover{color:var(--ink-2);background:0 0}.chip.static.act:hover{background:var(--accent-soft);color:var(--accent-ink)}.chip svg{stroke:currentColor;fill:none;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:13px;height:13px}.chip b{color:var(--ink);font-weight:600}.chip.act b{color:var(--accent-ink)}.chip select{opacity:0;cursor:pointer;width:100%;height:100%;font:inherit;position:absolute;inset:0}.srch{border:1px solid var(--line);background:var(--panel);border-radius:7px;align-items:center;gap:6px;padding:4px 9px;display:flex}.srch svg{width:13px;height:13px;stroke:var(--ink-3);fill:none;stroke-width:1.8px;flex:none}.srch input{font:inherit;background:0 0;border:0;outline:none;width:130px;font-size:12.5px}.spacer{flex:1}.page-head.col{display:block}.htop{justify-content:space-between;align-items:flex-end;gap:14px;display:flex}.htop h1{letter-spacing:-.02em;margin:0;font-size:24px;font-weight:600}.hsub{color:var(--ink-3);margin-top:2px;font-size:12.5px}.tabs{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:2px;margin-top:12px;padding-bottom:0;display:flex}.tab{font:inherit;color:var(--ink-2);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;border-radius:5px 5px 0 0;align-items:center;gap:6px;margin-bottom:-1px;padding:7px 11px;font-size:13px;display:flex}.tab:hover{background:var(--panel-2);color:var(--ink)}.tab.on{color:var(--ink);border-bottom-color:var(--accent);font-weight:500}.tab svg{stroke:currentColor;fill:none;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:14px;height:14px}.tbar .inp.slim{width:auto;max-width:150px;padding:4px 8px;font-size:12.5px}.tb-count{color:var(--ink-3);font-family:IBM Plex Mono,monospace;font-size:11.5px}.hov button.armed{color:var(--danger);background:var(--accent-soft)}
