@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/0b1dc8ddaa74ba49-s.p.8624a701.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e629b5bc06499d58-s.8e66b869.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/1a099d89ee94ee96-s.f6ed4c33.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/fba5a26ea33df6a3-s.p.1bbdebe6.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/0b1dc8ddaa74ba49-s.p.8624a701.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/e629b5bc06499d58-s.8e66b869.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/1a099d89ee94ee96-s.f6ed4c33.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/fba5a26ea33df6a3-s.p.1bbdebe6.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(../media/0b1dc8ddaa74ba49-s.p.8624a701.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(../media/e629b5bc06499d58-s.8e66b869.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(../media/1a099d89ee94ee96-s.f6ed4c33.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(../media/fba5a26ea33df6a3-s.p.1bbdebe6.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/0b1dc8ddaa74ba49-s.p.8624a701.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/e629b5bc06499d58-s.8e66b869.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/1a099d89ee94ee96-s.f6ed4c33.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/fba5a26ea33df6a3-s.p.1bbdebe6.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans Fallback;src:local(Arial);ascent-override:98.88%;descent-override:21.15%;line-gap-override:0.0%;size-adjust:104.98%}.plus_jakarta_sans_21ec69bc-module__1Z7_Pa__className{font-family:Plus Jakarta Sans,Plus Jakarta Sans Fallback;font-style:normal}.plus_jakarta_sans_21ec69bc-module__1Z7_Pa__variable{--font-jakarta:"Plus Jakarta Sans","Plus Jakarta Sans Fallback"}
:root{--ground:#fff;--surface:#fff;--surface-2:#f5f7fa;--surface-3:#eef1f6;--border:#e3e7ed;--border-strong:#cdd4de;--border-field:#8692a2;--ink:#14171c;--ink-2:#3d4450;--ink-3:#565e6c;--ink-4:#666e7d;--accent:#0b6fd4;--accent-hover:#0959ad;--accent-soft:#e7f1fd;--accent-ink:#0a5fb8;--accent-strong:#0a5fb8;--on-accent:#fff;--success:#12a05f;--success-soft:#e8f7ef;--success-ink:#0a6b3c;--warning:#e08600;--warning-soft:#fff6e5;--warning-ink:#8a5300;--danger:#e03b31;--danger-soft:#fdedec;--danger-ink:#b3241c;--info:#1570cf;--info-soft:#e9f3fd;--info-ink:#0f5aa8;--purple:#6e44d3;--purple-soft:#f0ebfc;--purple-ink:#5a33b8;--pink:#c4399b;--pink-soft:#fcecf6;--pink-ink:#a32b80;--neutral-badge:#1d2530;--neutral-soft:#eef1f6;--badge-warning-bg:#e08600;--badge-warning-ink:#1d2530;--badge-success-bg:#12a05f;--badge-success-ink:#1d2530;--badge-danger-bg:#c62b22;--badge-danger-ink:#fff;--badge-purple-bg:#6e44d3;--badge-purple-ink:#fff;--r-xs:6px;--r-sm:8px;--r-md:10px;--r-lg:14px;--r-xl:18px;--r-pill:999px;--e-1:0 1px 2px #172b4d14;--e-2:0 1px 2px #172b4d14,0 6px 14px #172b4d17;--e-3:0 12px 32px #172b4d29;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:20px;--s-6:24px;--s-8:32px;--s-10:40px;--s-12:48px;--font-ui:var(--font-jakarta),-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",Arial,sans-serif;--font-mono:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,monospace;--fs-page:30px;--lh-page:1.2;--fs-h2:20px;--lh-h2:1.4;--fs-card:17px;--lh-card:1.35;--fs-body:14px;--lh-body:1.5;--fs-label:13px;--lh-label:1.4;--fs-cap:12px;--lh-cap:1.35;--focus:0 0 0 3px #0b79e547}@media (prefers-color-scheme:dark){:root{--ground:#0d1014;--surface:#171b21;--surface-2:#1e232b;--surface-3:#252b34;--border:#262c35;--border-strong:#39414d;--border-field:#667080;--ink:#f1f3f6;--ink-2:#d3d8e0;--ink-3:#98a1af;--ink-4:#838d9c;--accent:#3b96f5;--accent-hover:#5aa8f7;--accent-soft:#14293e;--accent-ink:#8cc3fa;--accent-strong:#3b96f5;--on-accent:#06121e;--success:#3bc98a;--success-soft:#102b20;--success-ink:#3bc98a;--warning:#f2b34b;--warning-soft:#2e230f;--warning-ink:#f2b34b;--danger:#f5736b;--danger-soft:#331815;--danger-ink:#f5736b;--info:#5faaf5;--info-soft:#12253a;--info-ink:#5faaf5;--purple:#a58bf0;--purple-soft:#221b3b;--purple-ink:#a58bf0;--pink:#e884c8;--pink-soft:#33172a;--pink-ink:#e884c8;--neutral-badge:#c9d0da;--neutral-soft:#262c35;--badge-warning-bg:#f2b34b;--badge-warning-ink:#06121e;--badge-success-bg:#3bc98a;--badge-success-ink:#06121e;--badge-danger-bg:#f5736b;--badge-danger-ink:#06121e;--badge-purple-bg:#a58bf0;--badge-purple-ink:#06121e;--e-1:0 1px 2px #00000073;--e-2:0 1px 2px #00000073,0 4px 12px #00000059;--e-3:0 10px 32px #0000008c;--focus:0 0 0 3px #3b96f559}}:root[data-theme=dark]{--ground:#0d1014;--surface:#171b21;--surface-2:#1e232b;--surface-3:#252b34;--border:#262c35;--border-strong:#39414d;--border-field:#667080;--ink:#f1f3f6;--ink-2:#d3d8e0;--ink-3:#98a1af;--ink-4:#838d9c;--accent:#3b96f5;--accent-hover:#5aa8f7;--accent-soft:#14293e;--accent-ink:#8cc3fa;--accent-strong:#3b96f5;--on-accent:#06121e;--success:#3bc98a;--success-soft:#102b20;--success-ink:#3bc98a;--warning:#f2b34b;--warning-soft:#2e230f;--warning-ink:#f2b34b;--danger:#f5736b;--danger-soft:#331815;--danger-ink:#f5736b;--info:#5faaf5;--info-soft:#12253a;--info-ink:#5faaf5;--purple:#a58bf0;--purple-soft:#221b3b;--purple-ink:#a58bf0;--pink:#e884c8;--pink-soft:#33172a;--pink-ink:#e884c8;--neutral-badge:#c9d0da;--neutral-soft:#262c35;--badge-warning-bg:#f2b34b;--badge-warning-ink:#06121e;--badge-success-bg:#3bc98a;--badge-success-ink:#06121e;--badge-danger-bg:#f5736b;--badge-danger-ink:#06121e;--badge-purple-bg:#a58bf0;--badge-purple-ink:#06121e;--e-1:0 1px 2px #00000073;--e-2:0 1px 2px #00000073,0 4px 12px #00000059;--e-3:0 10px 32px #0000008c;--focus:0 0 0 3px #3b96f559}:root[data-theme=light]{--ground:#fff;--surface:#fff;--surface-2:#f5f7fa;--surface-3:#eef1f6;--border:#e3e7ed;--border-strong:#cdd4de;--border-field:#8692a2;--ink:#14171c;--ink-2:#3d4450;--ink-3:#565e6c;--ink-4:#666e7d;--accent:#0b6fd4;--accent-hover:#0959ad;--accent-soft:#e7f1fd;--accent-ink:#0a5fb8;--accent-strong:#0a5fb8;--on-accent:#fff;--success:#12a05f;--success-soft:#e8f7ef;--success-ink:#0a6b3c;--warning:#e08600;--warning-soft:#fff6e5;--warning-ink:#8a5300;--danger:#e03b31;--danger-soft:#fdedec;--danger-ink:#b3241c;--info:#1570cf;--info-soft:#e9f3fd;--info-ink:#0f5aa8;--purple:#6e44d3;--purple-soft:#f0ebfc;--purple-ink:#5a33b8;--pink:#c4399b;--pink-soft:#fcecf6;--pink-ink:#a32b80;--neutral-badge:#1d2530;--neutral-soft:#eef1f6;--badge-warning-bg:#e08600;--badge-warning-ink:#1d2530;--badge-success-bg:#12a05f;--badge-success-ink:#1d2530;--badge-danger-bg:#c62b22;--badge-danger-ink:#fff;--badge-purple-bg:#6e44d3;--badge-purple-ink:#fff;--e-1:0 1px 2px #172b4d14;--e-2:0 1px 2px #172b4d14,0 6px 14px #172b4d17;--e-3:0 12px 32px #172b4d29;--focus:0 0 0 3px #0b79e547}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--ground);min-height:100vh;color:var(--ink-2);font-family:var(--font-ui);font-size:var(--fs-body);line-height:var(--lh-body);-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3,h4,p,figure{margin:0}ul,ol{margin:0;padding:0;list-style:none}img,svg{max-width:100%;display:block}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0}a{color:var(--accent-ink);text-decoration:none}a:hover{color:var(--accent-hover);text-decoration:underline}:focus-visible{outline:2px solid var(--accent-strong);outline-offset:2px}input:focus-visible,textarea:focus-visible,select:focus-visible,.o-input:focus-within{outline:none}input[type=checkbox]{width:20px;height:20px;accent-color:var(--accent);cursor:pointer;margin:2px}input[type=color]{border:1px solid var(--border-field);border-radius:var(--r-sm);cursor:pointer;background:0 0;width:40px;height:34px;padding:0}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.t-page{font-size:var(--fs-page);line-height:var(--lh-page);letter-spacing:-.02em;color:var(--ink);font-weight:600}.t-h2,.section-title{font-size:var(--fs-h2);line-height:var(--lh-h2);letter-spacing:-.01em;color:var(--ink);font-weight:600}.t-card{font-size:var(--fs-card);line-height:var(--lh-card);color:var(--ink);font-weight:600}.t-strong{font-size:var(--fs-body);color:var(--ink);font-weight:500}.t-body{font-size:var(--fs-body);line-height:var(--lh-body);color:var(--ink-3)}.t-label{font-size:var(--fs-label);line-height:var(--lh-label);color:var(--ink-2);font-weight:500}.t-cap,.muted{font-size:var(--fs-cap);line-height:var(--lh-cap);color:var(--ink-3);font-variant-numeric:tabular-nums}.t-micro{font-size:var(--fs-cap);line-height:var(--lh-cap);color:var(--ink-4);letter-spacing:.02em;font-weight:500}.row{align-items:center;gap:var(--s-3);flex-wrap:wrap;display:flex}.spacer{flex:1}.tabular{font-variant-numeric:tabular-nums}.danger{color:var(--danger)}.clamp2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.o-btn,.btn{justify-content:center;align-items:center;gap:var(--s-2);height:40px;padding:0 var(--s-4);border-radius:var(--r-md);font-size:var(--fs-body);white-space:nowrap;cursor:pointer;border:1px solid #0000;font-weight:500;line-height:1;transition:background-color .15s,border-color .15s,color .15s;display:inline-flex}.o-btn--primary,.btn{background:var(--accent);color:var(--on-accent)}.o-btn--primary:hover,.btn:hover{background:var(--accent-hover)}.o-btn--secondary,.btn.ghost{background:var(--surface);color:var(--ink-2);border-color:var(--border);box-shadow:var(--e-1)}.o-btn--secondary:hover,.btn.ghost:hover{background:var(--surface-2);border-color:var(--border-strong)}.o-btn--ghost{color:var(--ink-3);box-shadow:none;background:0 0}.o-btn--ghost:hover{background:var(--surface-2);color:var(--ink-2)}.o-btn--icon{border-radius:var(--r-pill);width:40px;padding:0}.o-btn--sm,.btn.small{height:36px;padding:0 var(--s-3);font-size:var(--fs-label)}.btn.danger{border-color:var(--danger);color:var(--danger);background:0 0}.btn.danger:hover{background:var(--danger-soft)}.o-btn[disabled],.btn:disabled{opacity:.6;cursor:not-allowed}.o-add,.add-new{justify-content:center;align-items:center;gap:var(--s-2);border:1px dashed var(--border-strong);border-radius:var(--r-lg);width:100%;height:46px;color:var(--ink-3);font-size:var(--fs-body);cursor:pointer;background:0 0;font-weight:500;display:flex}.o-add:hover,.add-new:hover{background:var(--surface-2);color:var(--ink-2);border-color:var(--ink-4)}.icon-btn{border-radius:var(--r-pill);width:40px;height:40px;color:var(--ink-3);justify-content:center;align-items:center;display:inline-flex}.icon-btn:hover{background:var(--surface-2);color:var(--ink-2)}.del{min-height:24px;padding:0 var(--s-1);color:var(--ink-4);font-size:var(--fs-cap);align-items:center;display:inline-flex}.del:hover{color:var(--danger-ink)}.confirm{gap:var(--s-2);font-size:var(--fs-cap);align-items:center;display:inline-flex}.confirm button:last-child{min-height:24px;padding:0 var(--s-1);color:var(--ink-3);align-items:center;display:inline-flex}.field{height:40px;padding:0 var(--s-3);background:var(--surface);border:1px solid var(--border-field);border-radius:var(--r-md);color:var(--ink)}.field::placeholder{color:var(--ink-4)}.field:focus{border-color:var(--accent);box-shadow:var(--focus);outline:none}.field:focus::placeholder,textarea:focus::placeholder,.o-input input:focus::placeholder{color:#0000}select.field{cursor:pointer}select.field option{background:var(--surface);color:var(--ink)}textarea,textarea.field{width:100%;height:auto;padding:var(--s-3);background:var(--surface);border:1px solid var(--border-field);border-radius:var(--r-md);color:var(--ink);line-height:var(--lh-body);resize:vertical}textarea:focus{border-color:var(--accent);box-shadow:var(--focus);outline:none}.o-input{align-items:center;gap:var(--s-2);width:100%;max-width:320px;height:40px;padding:0 var(--s-4);background:var(--surface-2);border:1px solid var(--border-field);border-radius:var(--r-pill);color:var(--ink-3);font-size:var(--fs-body);display:flex}.o-input:focus-within{background:var(--surface);border-color:var(--accent);box-shadow:var(--focus)}.o-input input{min-width:0;color:var(--ink);background:0 0;border:0;flex:1}.o-input input::placeholder{color:var(--ink-4)}.o-input input:focus{outline:none}.o-chip,.pill{align-items:center;gap:var(--s-2);height:32px;padding:0 var(--s-3);border:1px solid var(--border-strong);border-radius:var(--r-pill);background:var(--surface);color:var(--ink-2);font-size:var(--fs-label);cursor:pointer;font-weight:500;display:inline-flex}.o-chip:hover,.pill:hover{border-color:var(--ink-4)}.o-chip.on,.pill.on,.o-chip[aria-pressed=true],.pill[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-ink)}.o-chip .dot,.pill .dot{border-radius:var(--r-pill);flex:none;width:8px;height:8px}.o-tabs{align-items:center;gap:var(--s-6);border-bottom:1px solid var(--border);display:flex}.o-tab{align-items:center;gap:var(--s-2);padding:var(--s-3)2px;font-size:var(--fs-body);color:var(--ink-3);cursor:pointer;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;font-weight:500;display:inline-flex}.o-tab:hover{color:var(--ink-2)}.o-tab[aria-selected=true]{color:var(--ink);border-bottom-color:var(--ink)}.o-badge,.o-badge--quiet,.o-badge--warning,.o-badge--purple,.o-badge--success,.o-badge--danger,.count{min-width:22px;height:22px;padding:0 var(--s-2);border-radius:var(--r-pill);font-size:var(--fs-cap);font-variant-numeric:tabular-nums;justify-content:center;align-items:center;font-weight:600;display:inline-flex}.o-badge{background:var(--neutral-badge);color:var(--surface)}.o-badge--warning{background:var(--badge-warning-bg);color:var(--badge-warning-ink)}.o-badge--purple{background:var(--badge-purple-bg);color:var(--badge-purple-ink)}.o-badge--success{background:var(--badge-success-bg);color:var(--badge-success-ink)}.o-badge--danger{background:var(--badge-danger-bg);color:var(--badge-danger-ink)}.o-badge--quiet,.count{background:var(--neutral-soft);color:var(--ink-3)}.o-status{border-radius:var(--r-xs);height:26px;font-size:var(--fs-label);white-space:nowrap;align-items:center;gap:6px;padding:0 10px;font-weight:500;display:inline-flex}.o-status .dot{border-radius:var(--r-pill);background:currentColor;flex:none;width:9px;height:9px}.st-backlog{color:var(--ink-3);background:var(--neutral-soft)}.st-new{color:var(--info-ink);background:var(--info-soft)}.st-in_progress{color:var(--warning-ink);background:var(--warning-soft)}.st-waiting{color:var(--pink-ink);background:var(--pink-soft)}.st-review{color:var(--purple-ink);background:var(--purple-soft)}.st-done{color:var(--success-ink);background:var(--success-soft)}.o-tag,.chip,.tag{align-items:center;gap:var(--s-1);min-height:24px;padding:0 var(--s-2);border-radius:var(--r-xs);background:var(--neutral-soft);color:var(--ink-3);font-size:var(--fs-cap);white-space:nowrap;font-weight:500;display:inline-flex}.o-tag--info{color:var(--info-ink);background:var(--info-soft)}.o-tag--success,.chip.ok{color:var(--success-ink);background:var(--success-soft)}.o-tag--purple{color:var(--purple-ink);background:var(--purple-soft)}.o-tag--danger,.chip.danger{color:var(--danger-ink);background:var(--danger-soft)}.o-tag--pink{color:var(--pink-ink);background:var(--pink-soft)}.o-tag--warning{color:var(--warning-ink);background:var(--warning-soft)}.o-tag--more{color:var(--ink-3);background:var(--neutral-soft)}.o-tag--dot{color:var(--ink-2)}.o-tag--dot .dot{flex:none;width:8px;height:8px}.o-tag--live,.chip.live{color:var(--accent-ink);background:var(--accent-soft)}a.chip:hover{color:var(--accent-ink);background:var(--accent-soft);text-decoration:none}.tag.on,.chip[aria-pressed=true]{color:var(--accent-ink);background:var(--accent-soft);font-weight:600}.o-tag[aria-pressed=true]{font-weight:600;box-shadow:inset 0 0 0 1px}.tag-x{border-radius:var(--r-pill);width:24px;height:24px;color:inherit;font-size:var(--fs-body);justify-content:center;align-items:center;margin:0 -6px 0 0;line-height:1;display:inline-flex}.tag-x:hover{background:color-mix(in srgb,currentColor 18%,transparent)}.chips{flex-wrap:wrap;gap:6px;display:flex}.o-flag{font-size:var(--fs-label);color:var(--ink-2);align-items:center;gap:6px;display:inline-flex}.o-flag--high{color:var(--danger-ink)}.o-flag--medium{color:var(--warning-ink)}.o-flag--normal{color:var(--ink-3)}.dot{border-radius:var(--r-pill);width:8px;height:8px;display:inline-block}.o-avatar{border-radius:var(--r-pill);color:#fff;width:28px;height:28px;font-size:var(--fs-cap);letter-spacing:.02em;box-shadow:0 0 0 2px var(--surface);background:#1a63b5;flex:none;place-items:center;font-weight:600;display:grid}.o-avatar--a{background:#3e6fd1}.o-avatar--b{background:#b83368}.o-avatar--c{background:#c0562f}.o-avatar--d{background:#1c7d59}.o-avatar--e{background:#7c5cd6}.o-avatar--f{background:#8a6410}.o-avatar--sm{width:22px;height:22px;box-shadow:none;font-size:10px}.o-avatar--count{background:var(--neutral-soft);color:var(--ink-3)}.o-presence{display:inline-flex;position:relative}.o-presence:after{content:"";border-radius:var(--r-pill);background:var(--success);width:9px;height:9px;box-shadow:0 0 0 2px var(--surface);position:absolute;bottom:0;right:0}.o-presence.off:after{background:var(--danger)}.o-link-state{flex:none;position:relative}.o-link-state__btn{align-items:center;gap:var(--s-2);height:32px;padding:0 var(--s-2);border-radius:var(--r-pill);color:var(--ink-3);display:inline-flex}.o-link-state__btn:hover{background:var(--surface-2);color:var(--ink-2)}.o-link-state__panel{top:calc(100% + var(--s-2));z-index:40;gap:var(--s-2);width:300px;padding:var(--s-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--e-3);flex-direction:column;display:flex;position:absolute;right:0}.o-bell{display:inline-flex;position:relative}.o-bell__dot{min-width:18px;height:18px;padding:0 var(--s-1);border-radius:var(--r-pill);background:var(--badge-danger-bg);color:var(--badge-danger-ink);box-shadow:0 0 0 2px var(--surface);place-items:center;font-size:11px;font-weight:600;display:grid;position:absolute;top:-2px;right:-2px}.o-progress{gap:var(--s-2);flex-direction:column;display:flex}.o-progress__meta{justify-content:space-between;align-items:center;gap:var(--s-3);font-size:var(--fs-label);color:var(--ink-2);display:flex}.o-progress__meta .value{color:var(--ink-3);font-variant-numeric:tabular-nums}.o-progress__track,.bar{border-radius:var(--r-pill);background:var(--neutral-soft);height:6px;overflow:hidden}.bar{flex:1;min-width:80px}.o-progress__fill,.bar-fill{border-radius:var(--r-pill);background:var(--accent);height:100%}.bar-fill.over{background:var(--warning)}.bar-row{align-items:center;gap:var(--s-3);padding:var(--s-1)0;font-size:var(--fs-label);display:flex}.bar-row>span:first-child{min-width:140px}.o-card{gap:var(--s-4);padding:var(--s-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--e-1);cursor:pointer;flex-direction:column;transition:border-color .15s,box-shadow .15s;display:flex}.o-card__head,.o-card__marks{gap:var(--s-2);flex-direction:column;min-width:0;display:flex}.o-card__marks-row{align-items:center;gap:var(--s-1)var(--s-3);flex-wrap:wrap;display:flex}.o-mark{font-size:var(--fs-cap);color:var(--ink-2);white-space:nowrap;align-items:center;gap:5px;font-weight:500;display:inline-flex}.o-mark .dot{flex:none}.o-mark--overdue{color:var(--danger-ink);font-weight:600}.o-mark.o-flag--high{color:var(--danger-ink)}.o-mark.o-flag--medium{color:var(--warning-ink)}.o-mark.o-flag--normal{color:var(--ink-3)}.o-card:hover{border-color:var(--border-strong);box-shadow:var(--e-2)}.o-card.dragging{opacity:.45}.o-card.selected{border-color:var(--accent);box-shadow:var(--focus)}.o-card__top{align-items:flex-start;gap:var(--s-2);min-width:0;display:flex}.o-card__top input[type=checkbox]{flex:none;margin:4px 0 0}.o-card__title{color:var(--ink);word-break:break-word;font-size:16px;font-weight:600;line-height:1.35}.o-card__desc{font-size:var(--fs-label);color:var(--ink-3);-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.5;display:-webkit-box;overflow:hidden}.o-card__quote{-webkit-line-clamp:2;padding-left:var(--s-3);border-left:1px solid var(--border-strong);font-size:var(--fs-label);color:var(--ink-3);-webkit-box-orient:vertical;line-height:1.5;display:-webkit-box;overflow:hidden}.o-card__quote .where{color:var(--ink-4);font-weight:500}.o-card__quote .where:after{content:" · "}.o-card__foot{align-items:center;gap:var(--s-1)var(--s-3);padding-top:var(--s-3);border-top:1px solid var(--border);font-size:var(--fs-cap);color:var(--ink-3);font-variant-numeric:tabular-nums;flex-wrap:wrap;display:flex}.o-card__foot>span,.o-card__foot>a{align-items:center;gap:5px;display:inline-flex}.o-card__who{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.o-card__counters{align-items:center;gap:var(--s-2);color:var(--ink-4);flex-wrap:wrap;display:inline-flex}.o-card__counters>span{white-space:nowrap;align-items:center;gap:5px;display:inline-flex}.o-card__counters .is-unseen{color:var(--danger-ink);font-weight:600}.o-card__foot .accent{color:var(--accent-ink)}.o-table-wrap{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);overflow-x:auto}.o-table,.list{border-collapse:collapse;width:100%}.o-table th,.list th{padding:var(--s-3)var(--s-4);text-align:left;white-space:nowrap;background:var(--surface-2);border-bottom:1px solid var(--border);font-size:var(--fs-label);color:var(--ink-3);font-weight:500}.o-table td,.list td{padding:var(--s-3)var(--s-4);border-bottom:1px solid var(--border);font-size:var(--fs-body);color:var(--ink-2);vertical-align:middle}.o-table tr:last-child td,.list tr:last-child td{border-bottom:0}.o-table tbody tr:hover td,.list tbody tr:hover td{background:var(--surface-2)}.o-table .cell-title{align-items:center;gap:var(--s-2);color:var(--ink);flex-wrap:wrap;font-weight:500;display:flex}.o-table .col-narrow,.list .col-narrow{white-space:nowrap;width:1%}.cell-open{text-align:left;font:inherit;color:var(--ink);padding:0;font-weight:500}.cell-open:hover{color:var(--accent-ink);text-decoration:underline}.o-table .is-overdue{color:var(--danger-ink);font-weight:500}.fields-menu{align-items:center;gap:var(--s-3)var(--s-5);padding:var(--s-3)var(--s-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--e-1);flex-wrap:wrap;display:flex}.fields-menu__rule{background:var(--border-strong);width:1px;height:22px}.saved-view{padding:0 var(--s-1)0 var(--s-3);gap:0}.saved-view__apply{height:30px;color:inherit;font:inherit;align-items:center;display:inline-flex}.saved-view__del{min-width:24px;height:24px;padding:0 var(--s-1);border-radius:var(--r-pill);color:var(--ink-4);font-size:var(--fs-cap);justify-content:center;align-items:center;display:inline-flex}.saved-view__del:hover{background:var(--danger-soft);color:var(--danger-ink)}.chip-select{height:26px;padding:0 var(--s-1);color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;font-weight:500}.merge-list{gap:var(--s-2);margin:var(--s-3)0 0;flex-direction:column;padding:0;list-style:none;display:flex}.merge-list li{align-items:baseline;gap:var(--s-2);padding:var(--s-2)var(--s-3);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-sm);flex-wrap:wrap;display:flex}.board-hint{padding-top:var(--s-3)}.subtask-del{justify-content:center;min-width:24px}.o-group-head{align-items:center;gap:var(--s-3);width:100%;padding:var(--s-2)0;cursor:pointer;text-align:left;display:flex}.o-group-head .caret{color:var(--ink-4);display:inline-flex}.o-empty{justify-content:space-between;align-items:center;gap:var(--s-4);padding:var(--s-3)var(--s-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);font-size:var(--fs-body);color:var(--ink-3);flex-wrap:wrap;display:flex}.o-empty__left{align-items:center;gap:var(--s-3);display:inline-flex}.empty{padding:var(--s-4)var(--s-2);text-align:center;color:var(--ink-4);font-size:var(--fs-label)}.empty-state{align-items:center;gap:var(--s-2);text-align:center;color:var(--ink-3);flex-direction:column;padding:64px 20px;display:flex}.app{background:var(--ground);min-height:100vh;display:flex}.app__sidebar{width:232px;height:100vh;padding:var(--s-4)var(--s-3);background:var(--surface);border-right:1px solid var(--border);z-index:30;flex-direction:column;flex:none;align-self:flex-start;display:flex;position:sticky;top:0;overflow-y:auto}.app__brand{align-items:center;gap:var(--s-3);padding:var(--s-1)var(--s-3)var(--s-4);display:flex}.app__brand .mark{background:var(--ink);width:34px;height:34px;color:var(--surface);border-radius:11px;flex:none;place-items:center;display:grid}.app__brand .name{color:var(--ink);font-size:15px;font-weight:600;display:block}.app__brand .plan{font-size:var(--fs-cap);color:var(--ink-3);display:block}.o-nav{flex-direction:column;gap:2px;display:flex}.o-nav__section{padding:var(--s-4)var(--s-3)var(--s-1);font-size:var(--fs-cap);color:var(--ink-4);font-weight:500}.o-nav__item{align-items:center;gap:var(--s-3);height:38px;padding:0 var(--s-3);border-radius:var(--r-md);font-size:var(--fs-body);color:var(--ink-2);cursor:pointer;border:1px solid #0000;font-weight:500;display:flex}.o-nav__item:hover{background:var(--surface-2);color:var(--ink-2);text-decoration:none}.o-nav__item[aria-current=page]{background:var(--surface-3);border-color:var(--border);color:var(--ink)}.o-nav__item svg{color:var(--ink-4);flex:none}.o-nav__item[aria-current=page] svg{color:var(--ink)}.app__main{flex-direction:column;flex:1;min-width:0;display:flex}.app__topbar{z-index:20;align-items:center;gap:var(--s-4);padding:var(--s-3)var(--s-5);background:var(--surface);border-bottom:1px solid var(--border);display:flex;position:sticky;top:0}.app__content{gap:var(--s-5);padding:var(--s-5);flex-direction:column;min-width:0;display:flex}.app__pagehead{align-items:flex-start;gap:var(--s-4);flex-wrap:wrap;display:flex}.app__pagehead .t-body{margin-top:var(--s-1);max-width:640px}.app__burger,.app__scrim,.app__tabs{display:none}.o-board{align-items:flex-start;gap:var(--s-3);display:flex}.o-board__col{gap:var(--s-3);min-width:232px;max-width:340px;padding:var(--s-1);border-radius:var(--r-lg);flex-direction:column;flex:264px;min-height:120px;transition:background-color .15s;display:flex}.o-board__col.drop{background:var(--accent-soft);box-shadow:inset 0 0 0 2px var(--accent)}.o-board__col.folded{background:var(--surface-2);border:1px solid var(--border);flex:0 0 44px;align-self:flex-start;min-width:0;max-width:44px;min-height:132px;padding:0}.o-board__colhead{align-items:center;gap:var(--s-2);padding-bottom:var(--s-1);display:flex}.o-board__colhead .name{font-size:var(--fs-body);color:var(--ink);font-weight:600}.o-board__fold{border-radius:var(--r-xs);width:24px;height:24px;color:var(--ink-4);justify-content:center;align-items:center;display:inline-flex}.o-board__fold:hover{background:var(--surface-3);color:var(--ink-2)}.o-board__col.folded .o-board__colhead{align-items:center;gap:var(--s-3);padding:var(--s-2)0;flex-direction:column;width:100%;height:100%}.o-board__col.folded .name{writing-mode:vertical-rl;font-size:var(--fs-label);color:var(--ink-3);white-space:nowrap;font-weight:500}.o-board__col.folded .o-board__colhead>:last-child{margin-top:auto}.board-scroll{padding-bottom:var(--s-2);overflow-x:auto}.board-empty{align-items:flex-start;gap:var(--s-3);padding:var(--s-8);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--e-1);flex-direction:column;display:flex}.board-empty dl{gap:var(--s-2)var(--s-3);font-size:var(--fs-body);color:var(--ink-2);grid-template-columns:auto 1fr;margin:0;display:grid}.board-empty dt{color:var(--ink);white-space:nowrap;font-weight:600}.board-empty dd{margin:0}.o-list{gap:var(--s-5);flex-direction:column;display:flex}.o-list section,.simple-list{gap:var(--s-2);flex-direction:column;display:flex}.row-card{gap:var(--s-4);padding:var(--s-3)var(--s-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--e-1);cursor:pointer;flex-wrap:wrap;align-items:center;display:flex}.row-card:hover{border-color:var(--border-strong)}.row-main{flex:320px;min-width:0}.row-main strong{color:var(--ink)}.row-meta,.row-actions{gap:var(--s-3);font-size:var(--fs-cap);align-items:center;display:flex}.row-actions button{color:var(--ink-3);font-size:var(--fs-cap)}.row-actions button:hover{color:var(--ink)}.inbox-grid{gap:var(--s-4);grid-template-columns:repeat(auto-fill,minmax(300px,1fr));display:grid}.overlay{z-index:50;padding:var(--s-12)var(--s-6);background:#14223a80;justify-content:center;align-items:flex-start;display:flex;position:fixed;inset:0;overflow:auto}.modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);width:100%;max-width:560px;box-shadow:var(--e-3);flex-direction:column;display:flex;overflow:hidden}.modal.wide{max-width:980px}.modal-head{align-items:center;gap:var(--s-3);padding:var(--s-5)var(--s-6);border-bottom:1px solid var(--border);display:flex}.modal-head h2{font-size:var(--fs-h2);color:var(--ink);flex:1;font-weight:600}.modal-body{padding:var(--s-6);overflow:auto}.modal-foot{gap:var(--s-2);padding:var(--s-4)var(--s-6);background:var(--surface-2);border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;display:flex}.task-modal{max-width:1040px}.task-modal .modal-body{padding:0}.task-grid{grid-template-columns:minmax(0,1fr) 328px;max-height:min(680px,100vh - 220px);display:grid}.task-main{flex-direction:column;min-width:0;display:flex;overflow:auto}.task-section{gap:var(--s-3);padding:var(--s-5)var(--s-6);flex-direction:column;min-width:0;display:flex}.task-section+.task-section{border-top:1px solid var(--border)}.task-section__head{align-items:center;gap:var(--s-2);flex-wrap:wrap;display:flex}.task-body{max-width:64ch;color:var(--ink-2)}.src-card{gap:var(--s-2);padding:var(--s-3)var(--s-4);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);flex-direction:column;display:flex}.src-card__head{align-items:center;gap:var(--s-2);flex-wrap:wrap;display:flex}.src-card__text{font-size:var(--fs-label);color:var(--ink-2)}.sub-bar{border-radius:var(--r-pill);background:var(--neutral-soft);flex:1;max-width:160px;height:6px;overflow:hidden}.sub-bar__fill{border-radius:var(--r-pill);background:var(--accent);height:100%;display:block}.sub-list{gap:var(--s-1);flex-direction:column;display:flex}.sub-row{align-items:center;gap:var(--s-2);min-height:40px;padding:0 var(--s-3);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);display:flex}.sub-row:hover{background:var(--surface-2)}.sub-row label{align-items:center;gap:var(--s-2);cursor:pointer;flex:1;min-width:0;display:flex}.sub-row .done{color:var(--ink-3);text-decoration:line-through}.thread{gap:var(--s-2);flex-direction:column;display:flex}.thread-msg{gap:var(--s-3);padding:var(--s-3)var(--s-3);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);display:flex}.thread-msg.is-source{background:var(--accent-soft);border-color:var(--accent)}.thread-msg__body{gap:var(--s-1);min-width:0;font-size:var(--fs-label);color:var(--ink-2);flex-direction:column;display:flex}.task-side{gap:var(--s-5);padding:var(--s-5);background:var(--surface-2);border-left:1px solid var(--border);flex-direction:column;display:flex;overflow:auto}.side-group{gap:var(--s-2);flex-direction:column;min-width:0;display:flex}.side-group,.task-side .actions{padding-top:var(--s-4);border-top:1px solid var(--border)}.side-props{gap:var(--s-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.side-props .prop--wide{grid-column:1/-1}.task-side .prop{gap:var(--s-1);flex-direction:column;min-width:0;display:flex}.task-side .prop select,.task-side .prop input{width:100%;height:38px;padding:0 var(--s-2);background:var(--surface);border:1px solid var(--border-field);border-radius:var(--r-sm);color:var(--ink);font-size:var(--fs-body)}.task-side .prop select:focus,.task-side .prop input:focus{border-color:var(--accent);box-shadow:var(--focus);outline:none}.est-fields{align-items:center;gap:var(--s-1);display:flex}.est-fields input.num{text-align:center;width:56px}.time-form input.num{text-align:center;width:100%}.time-list{flex-direction:column;gap:2px;display:flex}.time-line{align-items:baseline;gap:var(--s-2);width:100%;padding:var(--s-1)var(--s-2);margin:0 calc(var(--s-2)*-1);width:calc(100% + var(--s-4));border-radius:var(--r-xs);font-size:var(--fs-label);text-align:left;display:flex}.time-line:hover{background:var(--surface-3)}.time-line .when{color:var(--ink-4);white-space:nowrap;font-variant-numeric:tabular-nums}.time-line .who{color:var(--ink-2);text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.time-line .ok{color:var(--success-ink);font-weight:600}.time-line .much{color:var(--ink);white-space:nowrap;font-weight:500}.time-total{padding-top:var(--s-3);border-top:1px solid var(--border)}.side-buttons{gap:var(--s-2);flex-direction:column;display:flex}.tag-add{height:24px;padding:0 var(--s-2)}.task-side .actions{gap:var(--s-2);flex-direction:column;display:flex}.task-side .actions .confirm{align-items:stretch;gap:var(--s-1);flex-direction:column}.picker-list{gap:var(--s-1);flex-direction:column;display:flex}.picker-option{align-items:center;gap:var(--s-3);min-height:40px;padding:0 var(--s-3);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);color:var(--ink);font-size:var(--fs-body);text-align:left;display:flex}.picker-option:hover{background:var(--surface-2);border-color:var(--border-strong)}.picker-option.on{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-ink);font-weight:500}.picker-option .dot{flex:none}.time-form{align-items:end;gap:var(--s-3);margin-top:var(--s-4);grid-template-columns:96px 96px minmax(0,1fr);display:grid}.time-form .prop{gap:var(--s-1);flex-direction:column;display:flex}.time-form .prop.grow{flex:1;min-width:0}.time-form input,.picker-list+* input{height:40px;padding:0 var(--s-3);background:var(--surface);border:1px solid var(--border-field);border-radius:var(--r-sm);color:var(--ink);font-size:var(--fs-body)}.danger-text{color:var(--danger)}.danger-text:hover{background:var(--danger-soft);color:var(--danger)}.task-head{align-items:flex-start;gap:var(--s-4);padding:var(--s-5)var(--s-6);border-bottom:1px solid var(--border);display:flex}.task-head__meta{gap:var(--s-2);flex-direction:column;flex:1;min-width:0;display:flex}.task-chips{align-items:center;gap:var(--s-2);flex-wrap:wrap;display:flex}.o-chip-pick{border-radius:var(--r-xs);min-height:26px;font-size:var(--fs-cap);white-space:nowrap;border:0;align-items:center;gap:6px;padding:0 10px;font-weight:500;display:inline-flex}.o-chip-pick:not(.o-status){background:var(--neutral-soft);color:var(--ink-2)}.o-chip-pick:not(.o-status):hover{background:var(--surface-3);color:var(--ink)}.o-chip-pick.o-status:hover{filter:brightness(.97)}.o-chip-pick .dot{flex:none;width:8px;height:8px}.o-chip-pick .mark{border-radius:2px;flex:none;width:8px;height:8px}.title-input{width:100%;padding:var(--s-1)var(--s-2);margin-left:calc(var(--s-2)*-1);border-radius:var(--r-md);letter-spacing:-.01em;color:var(--ink);resize:none;background:0 0;border:1px solid #0000;font-size:24px;font-weight:600;line-height:1.25;display:block;overflow:hidden}.title-input:hover{border-color:var(--border)}.title-input:focus{background:var(--surface);border-color:var(--accent);box-shadow:var(--focus)}.block{gap:var(--s-3);flex-direction:column;display:flex}.app__content>.block,.app__content>.two-col>.block{padding:var(--s-5);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--e-1)}.app__content>.block>h3,.app__content>.two-col>.block>h3{font-size:var(--fs-body);color:var(--ink);letter-spacing:0;font-weight:600}.block h3{gap:var(--s-2);font-size:var(--fs-cap);letter-spacing:.02em;color:var(--ink-4);align-items:center;font-weight:500;display:flex}.block h3 .btn.small{letter-spacing:0}.hint{font-size:var(--fs-label);color:var(--ink-3)}.props{gap:var(--s-3)var(--s-4);flex-wrap:wrap;display:flex}.props label{gap:var(--s-1);font-size:var(--fs-cap);color:var(--ink-4);flex-direction:column;display:flex}.props label.checkbox{color:var(--ink-2);font-size:var(--fs-label);flex-direction:row;align-items:center;gap:8px}.props select,.props input{min-width:140px;height:36px;padding:0 var(--s-2);background:var(--surface);border:1px solid var(--border-field);border-radius:var(--r-sm);color:var(--ink);font-size:var(--fs-label)}.props select:focus,.props input:focus{border-color:var(--accent);box-shadow:var(--focus);outline:none}.two-col{gap:var(--s-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.field-row{gap:var(--s-2);align-items:flex-start;display:flex}.inline-form{gap:var(--s-2);flex-wrap:wrap;align-items:center;display:flex}.inline-form .field{flex:1;min-width:140px}.time-row{gap:var(--s-3);padding:var(--s-2)0;border-bottom:1px solid var(--border);font-size:var(--fs-label);flex-wrap:wrap;align-items:center;display:flex}.time-row strong{color:var(--ink)}.time-row .note{white-space:pre-wrap}.time-row.editing{gap:var(--s-2)}.time-row.editing .field[type=date]{max-width:160px}.time-fields{align-items:center;gap:6px;display:inline-flex}.time-fields .field{text-align:center;width:64px}.total{color:var(--ink);font-weight:600}.events{gap:var(--s-1)var(--s-3);font-size:var(--fs-label);color:var(--ink-3);grid-template-columns:max-content max-content minmax(0,1fr) max-content;align-items:baseline;display:grid}.event{display:contents}.event .when{color:var(--ink-4);font-variant-numeric:tabular-nums}.event .what{color:var(--ink-2)}@media (max-width:640px){.events{grid-template-columns:minmax(0,1fr) max-content}}.rule-row{gap:var(--s-2);padding:var(--s-2)0;border-bottom:1px solid var(--border);font-size:var(--fs-label);flex-wrap:wrap;align-items:center;display:flex}.stats{gap:var(--s-3);grid-template-columns:repeat(auto-fit,minmax(170px,1fr));display:grid}.stat{gap:var(--s-1);padding:var(--s-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--e-1);flex-direction:column;display:flex}.stat-value{letter-spacing:-.02em;color:var(--ink);font-size:24px;font-weight:600}.stat-label{font-size:var(--fs-cap);color:var(--ink-3)}.tchart-grains{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);gap:2px;padding:2px;display:inline-flex}.tchart-grain{border-radius:var(--r-sm);font:inherit;font-size:var(--fs-label);letter-spacing:0;color:var(--ink-3);cursor:pointer;background:0 0;border:0;padding:4px 10px}.tchart-grain:hover{color:var(--ink)}.tchart-grain[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:var(--e-1)}.tchart-picks{gap:var(--s-2);flex-wrap:wrap;display:flex}.tchart-pick{border:1px solid var(--border);font-size:var(--fs-label);color:var(--ink-3);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:999px;align-items:center;gap:6px;padding:4px 12px 4px 8px;display:inline-flex}.tchart-pick[data-on]{border-color:var(--border-strong);background:var(--surface-2);color:var(--ink)}.tchart-pick input{width:13px;height:13px;accent-color:var(--accent);cursor:pointer}.tchart-dot{border-radius:50%;flex:none;width:8px;height:8px}.tchart-plot{gap:var(--s-2);height:220px;display:flex}.tchart-axis{flex-direction:column;flex:none;justify-content:space-between;width:40px;padding-bottom:18px;display:flex}.tchart-axis-row{height:0;position:relative}.tchart-axis-row i{color:var(--ink-4);white-space:nowrap;font-size:10px;font-style:normal;position:absolute;right:0;transform:translateY(-50%)}.tchart-cols{flex:1;align-items:flex-end;gap:3px;min-width:0;display:flex;position:relative}.tchart-cols:before{content:"";background-image:repeating-linear-gradient(to bottom,var(--border)0 1px,transparent 1px 25%);border-bottom:1px solid var(--border-strong);pointer-events:none;position:absolute;inset:0 0 18px}.tchart-col{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:4px;min-width:3px;height:100%;display:flex;position:relative}.tchart-group{flex:1;justify-content:center;align-items:flex-end;gap:2px;width:100%;display:flex}.tchart-bar{border-radius:var(--r-xs)var(--r-xs)0 0;flex:1;max-width:26px;min-height:2px;transition:height .18s}.tchart-tick{height:14px;color:var(--ink-4);white-space:nowrap;font-size:10px}.tchart-sums{gap:var(--s-2)var(--s-5);padding-top:var(--s-3);border-top:1px solid var(--border);flex-wrap:wrap;display:flex}.tchart-sum{align-items:baseline;gap:6px;display:flex}.tchart-sum .tchart-dot{align-self:center}.tchart-sum-name{font-size:var(--fs-label);color:var(--ink-3)}.tchart-sum-value{letter-spacing:-.01em;color:var(--ink);font-size:18px;font-weight:600}@media (max-width:720px){.tchart-plot{height:180px}.tchart-grains{width:100%}.tchart-grain{flex:1}}.calendar{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.cal-weekday{padding:var(--s-1)var(--s-2);font-size:var(--fs-cap);color:var(--ink-4);font-weight:500}.cal-cell{gap:var(--s-1);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);flex-direction:column;min-height:96px;padding:6px;display:flex}.cal-cell.other{opacity:.75;background:0 0}.cal-cell.today{border-color:var(--accent);background:var(--accent-soft)}.cal-day{font-size:var(--fs-cap);color:var(--ink-4)}.cal-task{align-items:center;gap:var(--s-1);min-height:24px;padding:var(--s-1)var(--s-2);text-align:left;font-size:var(--fs-cap);background:var(--surface-2);border-left:1px solid var(--border-strong);border-radius:var(--r-xs);color:var(--ink-2);line-height:1.3;display:flex}.cal-task .label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.cal-task .mark{flex:none;font-weight:600}.cal-task:hover{background:var(--surface-3)}.cal-task.done{color:var(--ink-3);text-decoration:line-through}.cal-task.overdue{border-left-color:var(--danger-ink);color:var(--danger-ink)}.toasts{right:var(--s-5);bottom:var(--s-5);z-index:70;gap:var(--s-2);flex-direction:column;display:flex;position:fixed}.toast{max-width:380px;padding:var(--s-3)var(--s-4);background:var(--ink);color:var(--surface);border-radius:var(--r-md);box-shadow:var(--e-3);font-size:var(--fs-body)}.toast.err{background:var(--badge-danger-bg);color:var(--badge-danger-ink)}.login{min-height:100vh;padding:var(--s-5);justify-content:center;align-items:center;display:flex}.login form{gap:var(--s-3);width:100%;max-width:360px;padding:var(--s-8);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--e-2);flex-direction:column;display:flex}.rich{white-space:pre-wrap;word-break:break-word;line-height:1.55}.rich p{margin:0}.rich .md-gap{height:var(--s-2);display:block}.rich .md-heading{color:var(--ink);margin-top:var(--s-1);font-weight:600}.rich ul{margin:var(--s-1)0 var(--s-1)18px}.rich li{margin:2px 0;list-style:outside}.rich blockquote{margin:var(--s-1)0;padding-left:var(--s-3);border-left:2px solid var(--border-strong);color:var(--ink-3)}.rich code{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-xs);font-family:var(--font-mono);padding:1px 5px;font-size:12.5px}.rich a{word-break:break-word}.copyable{font:inherit;color:var(--accent);border-bottom:1px dashed color-mix(in srgb,var(--accent)45%,transparent);padding:0}.copyable:hover{border-bottom-style:solid}.client-head{gap:var(--s-3);flex-wrap:wrap;align-items:center;display:flex}.client-head strong{color:var(--ink)}.client-totals{gap:var(--s-5);font-size:var(--fs-label);color:var(--ink-3);flex-wrap:wrap;display:flex}.client-totals strong{color:var(--ink)}.client-deals tbody tr{cursor:default}@media (max-width:1100px){.task-grid{grid-template-columns:minmax(0,1fr)}.task-side{border-left:0;border-top:1px solid var(--border)}.two-col{grid-template-columns:1fr}}@media (max-width:860px){.app__sidebar{box-shadow:var(--e-3);transition:transform .2s;position:fixed;top:0;left:0;transform:translate(-100%)}.app.menu .app__sidebar{transform:translate(0)}.app.menu .app__scrim{z-index:25;background:#14223a80;display:block;position:fixed;inset:0}.app__burger{display:inline-flex}.app__content{padding:var(--s-4);padding-bottom:84px}.app__tabs{z-index:25;background:var(--surface);border-top:1px solid var(--border);display:flex;position:fixed;bottom:0;left:0;right:0}.app__tabs a{justify-content:center;align-items:center;gap:var(--s-1);height:64px;color:var(--ink-4);flex-direction:column;flex:1;font-size:11px;font-weight:500;display:flex}.app__tabs a:hover{text-decoration:none}.app__tabs a[aria-current=page]{color:var(--ink)}.app__topbar{padding:var(--s-3)var(--s-4);flex-wrap:wrap}.o-board{flex-direction:column;align-items:stretch}.o-board__col{min-width:0;max-width:none}.o-board__col.folded{flex-direction:row;flex:none;max-width:none;min-height:0}.o-board__col.folded .o-board__colhead{padding:var(--s-2)var(--s-3);flex-direction:row;align-items:center;width:100%;height:auto}.o-board__col.folded .name{writing-mode:horizontal-tb}.o-board__col.folded .o-board__colhead>:last-child{margin-top:0;margin-left:auto}.board-scroll{overflow-x:visible}.inbox-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr))}.toasts{left:var(--s-4);right:var(--s-4);bottom:76px}.toast{max-width:none}.modal-body,.task-main,.task-side,.task-head,.overlay{padding:var(--s-4)}.calendar{gap:3px}.cal-cell{min-height:64px}}@media (max-width:560px){.app__pagehead .t-page{font-size:24px}.o-input{max-width:none}.calendar{font-size:var(--fs-cap);grid-template-columns:repeat(7,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.mention-field{flex:1;min-width:140px;display:block;position:relative}.mention-field .field{width:100%}.mention-tools{flex-wrap:wrap;align-items:center;gap:2px;margin-bottom:4px;display:flex}.mention-tool{border-radius:var(--r-sm,6px);min-width:26px;height:26px;color:var(--ink-3);font-size:var(--fs-label);justify-content:center;align-items:center;padding:0 6px;line-height:1;display:inline-flex}.mention-tool:hover,.mention-tool:focus-visible{background:var(--surface-2);color:var(--ink)}.mention-tool.tool-bold{font-weight:700}.mention-tool.tool-italic{font-style:italic}.mention-tool.tool-strike{text-decoration:line-through}.mention-hint{color:var(--ink-4);font-size:var(--fs-micro,11px);white-space:nowrap}.mention-input{resize:none;min-height:64px;max-height:220px;overflow-y:auto}.reply-form{align-items:flex-end}.reply-time{align-items:center;gap:var(--s-2);margin-top:var(--s-1);flex-basis:100%;display:flex}.reply-time .time-fields .field{width:56px;height:32px}.mention-box{z-index:5;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);max-height:240px;box-shadow:var(--e-3);flex-direction:column;display:flex;position:absolute;bottom:calc(100% + 6px);left:0;right:0;overflow-y:auto}.mention-box button{align-items:baseline;gap:var(--s-2);padding:var(--s-2)var(--s-3);text-align:left;font-size:var(--fs-label);color:var(--ink-2);display:flex}.mention-box button.on,.mention-box button:hover{background:var(--surface-2)}.mention-box strong{color:var(--ink)}input[type=number]{appearance:textfield}input[type=number]::-webkit-outer-spin-button{appearance:none;margin:0}input[type=number]::-webkit-inner-spin-button{appearance:none;margin:0}select,select.field,.props select,.task-side .prop select{appearance:none;cursor:pointer;background-image:linear-gradient(45deg,#0000 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,#0000 50%);background-position:right 15px top 50%,right 10px top 50%;background-repeat:no-repeat;background-size:5px 5px,5px 5px;padding-right:30px}input[type=date]::-webkit-calendar-picker-indicator{display:none}input[type=date]{appearance:none}.date-field{width:100%;display:inline-flex;position:relative}.date-field>button{align-items:center;gap:var(--s-2);width:100%;height:36px;padding:0 var(--s-3);background:var(--surface);border:1px solid var(--border-field,var(--border));border-radius:var(--r-sm);color:var(--ink);font-size:var(--fs-label);text-align:left;display:flex}.date-field>button:hover{border-color:var(--border-strong)}.date-field>button.empty{color:var(--ink-4)}.date-field svg{color:var(--ink-4);flex:none}.calendar-pop{z-index:60;width:268px;padding:var(--s-3);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--e-3);position:absolute;top:calc(100% + 6px);left:0}.calendar-pop .head{justify-content:space-between;align-items:center;gap:var(--s-2);margin-bottom:var(--s-2);font-size:var(--fs-label);color:var(--ink);font-weight:600;display:flex}.calendar-pop .head button{border-radius:var(--r-sm);width:28px;height:28px;color:var(--ink-3)}.calendar-pop .head button:hover{background:var(--surface-2);color:var(--ink)}.calendar-pop .grid{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.calendar-pop .wd{height:24px;color:var(--ink-4);place-items:center;font-size:11px;display:grid}.calendar-pop .day{border-radius:var(--r-sm);height:32px;font-size:var(--fs-label);color:var(--ink-2)}.calendar-pop .day:hover{background:var(--surface-2)}.calendar-pop .day.other{color:var(--ink-4)}.calendar-pop .day.today{box-shadow:inset 0 0 0 1px var(--border-strong)}.calendar-pop .day.on{background:var(--accent);color:var(--on-accent);font-weight:600}.calendar-pop .foot{gap:var(--s-2);margin-top:var(--s-2);padding-top:var(--s-2);border-top:1px solid var(--border);display:flex}.calendar-pop .foot button{border-radius:var(--r-sm);height:30px;font-size:var(--fs-label);color:var(--ink-3);flex:1}.calendar-pop .foot button:hover{background:var(--surface-2);color:var(--ink)}.time-note{gap:var(--s-1);margin-top:var(--s-4);flex-direction:column;display:flex}.time-note input,.time-note textarea{width:100%;height:40px;padding:0 var(--s-3);background:var(--surface);border:1px solid var(--border-field,var(--border));border-radius:var(--r-sm);color:var(--ink);font-size:var(--fs-body)}.time-note textarea{height:auto;min-height:84px;padding:var(--s-2)var(--s-3);resize:vertical;font-family:inherit;line-height:1.45}.time-note input:focus,.time-note textarea:focus{border-color:var(--accent);box-shadow:var(--focus);outline:none}.o-card .pick{opacity:0;transition:opacity .12s}.o-card:hover .pick,.o-card:focus-within .pick,.o-card.selected .pick{opacity:1}.feed{flex-direction:column;display:flex}.feed-row{align-items:baseline;gap:var(--s-3);padding:var(--s-2)0;border-bottom:1px solid var(--border);grid-template-columns:52px minmax(0,1fr) auto;display:grid}.feed-row:last-child{border-bottom:0}.feed-time{font-size:var(--fs-cap);color:var(--ink-4)}.feed-main{align-items:baseline;gap:var(--s-2);flex-wrap:wrap;min-width:0;display:flex}.feed-title{font-size:var(--fs-label);color:var(--ink);font-weight:500}.feed-actor{white-space:nowrap;color:var(--ink-4)}@media (max-width:860px){.feed-row{grid-template-columns:44px minmax(0,1fr)}.feed-actor{grid-column:2}}.task-section__head.as-toggle{align-items:center;gap:var(--s-2);text-align:left;cursor:pointer;width:100%;padding:0;display:flex}.task-section__head.as-toggle .caret{color:var(--ink-4);display:inline-flex}.task-section__head.as-toggle:hover .t-micro{color:var(--ink-2)}.task-section .feed-row{grid-template-columns:104px minmax(0,1fr) auto}.note-list{gap:var(--s-3);margin-top:var(--s-2);flex-direction:column;display:flex}.note-msg{gap:var(--s-2);align-items:flex-start;display:flex}.note-msg__body{min-width:0;padding:var(--s-2)var(--s-3);background:var(--surface-2);border-radius:var(--r-md);flex-direction:column;flex:1;gap:2px;display:flex}.note-msg.role-owner .note-msg__body{background:var(--surface);box-shadow:inset 0 0 0 1px var(--border)}.note-msg.role-agent .note-msg__body{background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--accent)}.quick-replies{gap:var(--s-2);margin-top:var(--s-3);flex-wrap:wrap;display:flex}.quick-replies__lesson{align-items:center;gap:var(--s-2);width:100%;padding:var(--s-2)var(--s-3);border-radius:var(--r-md);background:var(--surface-2);flex-wrap:wrap;display:flex}.quick-replies__lesson .t-cap{flex:1;min-width:200px}.note-msg__body .task-body,.note-msg__body p{font-size:var(--fs-label)}.inline-form textarea.field.grow{min-width:200px;height:auto;min-height:56px;padding:var(--s-2)var(--s-3);resize:vertical;flex:1;font-family:inherit;line-height:1.45}.bar-row.as-pick{width:100%;padding-left:var(--s-2);padding-right:var(--s-2);font:inherit;color:inherit;text-align:left;cursor:pointer;border-radius:var(--r-sm);background:0 0;border:0}.bar-row.as-pick:hover{background:var(--surface-2)}.bar-row.as-pick.on{background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--border-strong)}.bar-row.as-pick:focus-visible{box-shadow:var(--focus);outline:none}.o-table .as-link{color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.o-table .as-link:hover{color:var(--accent);text-decoration:underline}.o-table .as-link:focus-visible{box-shadow:var(--focus);border-radius:var(--r-sm);outline:none}.feed-row.as-link{text-align:left;cursor:pointer;border-radius:var(--r-sm);width:100%;padding-left:var(--s-2);padding-right:var(--s-2)}.feed-row.as-link:hover{background:var(--surface-2)}.feed-row.as-link:hover .feed-title{color:var(--accent)}.o-tabs.list-tabs{gap:var(--s-4);flex-wrap:wrap}.o-tabs.list-tabs .o-tab{gap:var(--s-2);padding:var(--s-2)2px var(--s-3)}.o-tabs.list-tabs .o-tab[aria-selected=false] .o-status{background:0 0;padding-left:0}.o-tabs.list-tabs .o-tab[aria-selected=false] .o-badge--quiet{color:var(--ink-4);background:0 0}.filter-bar .o-btn.on{border-color:var(--accent);color:var(--accent-ink)}.chip-x{opacity:.7;margin-left:2px;font-size:14px;line-height:1}.o-chip:hover .chip-x{opacity:1}.filter-panel{gap:var(--s-4);padding:var(--s-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--e-1);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.filter-field{gap:var(--s-1);flex-direction:column;min-width:0;display:flex}.filter-field.wide{grid-column:1/-1}.filter-field .field{width:100%}.filter-field .row{flex-wrap:wrap}.calendar-pop .presets{gap:var(--s-1);margin-bottom:var(--s-2);padding-bottom:var(--s-2);border-bottom:1px solid var(--border);flex-wrap:wrap;display:flex}.calendar-pop .presets button{border:1px solid var(--border);border-radius:var(--r-pill);height:26px;font-size:var(--fs-cap);color:var(--ink-2);padding:0 8px}.calendar-pop .presets button:hover{border-color:var(--accent);color:var(--accent-ink)}.date-field.range{min-width:190px}.date-field.range .calendar-pop{width:300px}.calendar-pop .day.in-range{background:var(--accent-soft);color:var(--accent-ink);border-radius:0}
