@font-face{font-family:Inter;font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/inter-latin-var-8kRkwJBP.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}:root{--color-bg:#eaeef6;--color-surface:#fff;--color-surface-alt:#f0f2f7;--color-overlay:#0f172a0a;--color-text:#111827;--color-text-muted:#4b5563;--color-text-subtle:#6b7280;--color-primary:#2563eb;--color-primary-hover:#1d4ed8;--color-primary-active:#1e40af;--color-on-primary:#fff;--color-group:#16a34a;--color-held:#b45309;--ghue-0:#16a34a;--ghue-1:#6366f1;--ghue-2:#d97706;--ghue-3:#0d9488;--ghue-4:#e11d48;--panel-bg:#fff;--card-bg:#fff;--color-border:#d1d5db;--color-border-strong:#9ca3af;--color-divider:#e5e7eb;--color-danger:#b91c1c;--color-danger-bg:#fef2f2;--color-danger-border:#f1b0b0;--color-danger-solid:#b91c1c;--color-danger-solid-hover:#991b1b;--color-on-danger:#fff;--color-success:#15803d;--color-success-bg:#f0fdf4;--color-success-border:#86efac;--color-subtask:#7c3aed;--color-focus-ring:#1d4ed8;--input-bg:#fff;--input-border:#c2c8d2;--input-border-hover:#9aa3b2;--input-border-focus:var(--color-primary);--input-placeholder:#8b93a1;--btn-secondary-bg:#fff;--btn-secondary-border:#c2c8d2;--btn-secondary-text:#1f2937;--btn-secondary-hover-bg:#f3f4f6;--btn-ghost-hover-bg:#0f172a0f;--shadow-card:0 1px 2px #0f172a0f, 0 12px 28px -8px #0f172a2e;--shadow-raise:0 2px 5px #0f172a29, 0 12px 26px -6px #0f172a4d;--shadow-focus:0 0 0 4px #2563eb2e;--radius-sm:8px;--radius-card:9px;--radius-md:12px;--radius-lg:16px;--radius-pill:999px;--font-sans:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji", sans-serif;--font-size-xs:.8125rem;--font-size-sm:.875rem;--font-size-md:1rem;--font-size-lg:1.25rem;--font-size-xl:1.75rem;--font-size-display:2.375rem;--line-tight:1.2;--line-normal:1.5;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-7:2rem;--space-8:2.5rem;--transition-fast:.12s ease;--transition-base:.18s ease;--transition-slow:.3s ease;--card-max-width:26rem;--control-height:2.875rem;--app-min-width:460px;--col-max-width:520px;--admin-max-width:880px;--login-max-width:980px}[data-theme=dark]{--color-bg:#0b1120;--color-surface:#151c2c;--color-surface-alt:#1c2436;--color-overlay:#ffffff0d;--color-text:#f3f5fa;--color-text-muted:#c0c7d4;--color-text-subtle:#98a1b3;--color-primary:#60a5fa;--color-primary-hover:#7cb4fb;--color-primary-active:#93c2fc;--color-on-primary:#0b1120;--color-group:#4ade80;--color-held:#fbbf24;--ghue-0:#4ade80;--ghue-1:#a5b4fc;--ghue-2:#fbbf24;--ghue-3:#5eead4;--ghue-4:#fb7185;--panel-bg:#0f1626;--card-bg:#1c2436;--color-border:#313a4f;--color-border-strong:#475066;--color-divider:#283146;--color-danger:#fca5a5;--color-danger-bg:#2a1416;--color-danger-border:#7f3a3a;--color-danger-solid:#dc2626;--color-danger-solid-hover:#b91c1c;--color-success:#4ade80;--color-success-bg:#12271a;--color-success-border:#2f6b44;--color-subtask:#a78bfa;--color-focus-ring:#93c2fc;--input-bg:#0f1626;--input-border:#3a445b;--input-border-hover:#4d5869;--input-border-focus:var(--color-primary);--input-placeholder:#7b8597;--btn-secondary-bg:#1c2436;--btn-secondary-border:#3a445b;--btn-secondary-text:#e7eaf1;--btn-secondary-hover-bg:#232c41;--btn-ghost-hover-bg:#ffffff14;--shadow-card:0 1px 2px #0006, 0 18px 40px -12px #0009;--shadow-raise:0 2px 5px #0000008c, 0 14px 30px -6px #000000ad;--shadow-focus:0 0 0 4px #60a5fa47}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]){--color-bg:#0b1120;--color-surface:#151c2c;--color-surface-alt:#1c2436;--color-overlay:#ffffff0d;--color-text:#f3f5fa;--color-text-muted:#c0c7d4;--color-text-subtle:#98a1b3;--color-primary:#60a5fa;--color-primary-hover:#7cb4fb;--color-primary-active:#93c2fc;--color-on-primary:#0b1120;--color-group:#4ade80;--color-border:#313a4f;--color-border-strong:#475066;--color-divider:#283146;--color-danger:#fca5a5;--color-danger-bg:#2a1416;--color-danger-border:#7f3a3a;--color-danger-solid:#dc2626;--color-danger-solid-hover:#b91c1c;--color-success:#4ade80;--color-success-bg:#12271a;--color-success-border:#2f6b44;--color-subtask:#a78bfa;--color-focus-ring:#93c2fc;--input-bg:#0f1626;--input-border:#3a445b;--input-border-hover:#4d5869;--input-border-focus:var(--color-primary);--input-placeholder:#7b8597;--btn-secondary-bg:#1c2436;--btn-secondary-border:#3a445b;--btn-secondary-text:#e7eaf1;--btn-secondary-hover-bg:#232c41;--btn-ghost-hover-bg:#ffffff14;--shadow-card:0 1px 2px #0006, 0 18px 40px -12px #0009;--shadow-raise:0 2px 5px #0000008c, 0 14px 30px -6px #000000ad;--shadow-focus:0 0 0 4px #60a5fa47}}.auth-layout{min-height:100svh;padding:var(--space-6);background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);justify-content:center;align-items:center;display:flex}.login-card{width:100%;max-width:var(--card-max-width);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:var(--space-7)}.login-card__header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-6);display:flex}.login-card__title{font-size:var(--font-size-xl);line-height:var(--line-tight);color:var(--color-text);margin:0}.login-card__subtitle{margin:var(--space-2) 0 0;color:var(--color-text-subtle);font-size:var(--font-size-sm)}.login-card__body{flex-direction:column;display:flex}.muted{color:var(--color-text-muted);font-size:var(--font-size-sm);line-height:var(--line-normal)}.auth-card__link-row{margin-top:1rem}.auth-brand{margin:0 0 var(--space-1);font-size:var(--font-size-sm);letter-spacing:.04em;color:var(--color-primary);font-weight:800;display:inline-block}.auth-brand--link{text-decoration:none}.auth-brand--link:hover{text-decoration:underline}.login-form{gap:var(--space-5);flex-direction:column;display:flex}.login-form__fields{gap:var(--space-4);flex-direction:column;display:flex}.login-form__meta{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.login-form__forgot,.login-form__footer-link{color:var(--color-primary);font-size:var(--font-size-sm);text-decoration:none}.login-form__forgot:hover,.login-form__footer-link:hover{text-decoration:underline}.login-form__footer{text-align:center;color:var(--color-text-subtle);font-size:var(--font-size-sm);margin:0}.alert{background:var(--color-danger-bg);border:1px solid var(--color-danger-border);color:var(--color-danger);border-radius:var(--radius-sm);padding:var(--space-3) var(--space-4);font-size:var(--font-size-sm)}.alert--info{background:var(--color-success-bg);border-color:var(--color-success-border);color:var(--color-success)}.field{gap:var(--space-2);flex-direction:column;display:flex}.field__label-row{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.field__label{font-size:var(--font-size-sm);color:var(--color-text-muted);font-weight:500}.field__control{align-items:center;display:flex;position:relative}.field__input{width:100%;height:var(--control-height);box-sizing:border-box;padding:0 var(--space-4);background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-sm);color:var(--color-text);font-size:var(--font-size-md);transition:border-color var(--transition-fast), box-shadow var(--transition-fast)}.field__input::placeholder{color:var(--input-placeholder)}.field__input:hover{border-color:var(--input-border-hover)}.field__input:focus{border-color:var(--input-border-focus);box-shadow:var(--shadow-focus);outline:none}.field__input--has-affix{padding-right:2.75rem}.field__input--error{border-color:var(--color-danger)}.field__affix{right:var(--space-2);width:2.75rem;height:2.75rem;color:var(--color-text-subtle);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;top:50%;transform:translateY(-50%)}.field__affix:hover{color:var(--color-text);background:var(--btn-ghost-hover-bg)}.field__affix svg{width:1.25rem;height:1.25rem}.field__error{color:var(--color-danger);font-size:var(--font-size-xs);margin:0}.field__hint{color:var(--color-text-subtle);font-size:var(--font-size-xs);margin:0}.btn{justify-content:center;align-items:center;gap:var(--space-2);height:var(--control-height);padding:0 var(--space-5);border-radius:var(--radius-sm);font-size:var(--font-size-md);cursor:pointer;transition:background var(--transition-fast), border-color var(--transition-fast);border:1px solid #0000;font-family:inherit;font-weight:600;text-decoration:none;display:inline-flex}.btn--full-width{width:100%}.btn--primary{background:var(--color-primary);color:var(--color-on-primary)}.btn--primary:hover:not(:disabled){background:var(--color-primary-hover)}.btn--secondary{background:var(--btn-secondary-bg);border-color:var(--btn-secondary-border);color:var(--btn-secondary-text)}.btn--secondary:hover:not(:disabled){background:var(--btn-secondary-hover-bg)}.btn--ghost{color:var(--color-text);background:0 0}.btn--ghost:hover:not(:disabled){background:var(--btn-ghost-hover-bg)}.btn:disabled{opacity:.6;cursor:not-allowed}.btn:focus-visible{box-shadow:var(--shadow-focus);outline:none}.btn__spinner{border:2px solid;border-top-color:#0000;border-radius:50%;width:1rem;height:1rem;animation:.6s linear infinite btn-spin}@keyframes btn-spin{to{transform:rotate(360deg)}}.divider{align-items:center;gap:var(--space-3);color:var(--color-text-subtle);font-size:var(--font-size-xs);display:flex}.divider__line{border:none;border-top:1px solid var(--color-divider);flex:1;height:0}.oauth-buttons{gap:var(--space-3);flex-direction:column;display:flex}.oauth-buttons__icon{width:1.25rem;height:1.25rem}.save-session{align-items:center;gap:var(--space-3);display:flex}.save-session .checkbox{min-height:44px}.save-session__select{height:2.25rem;padding:0 var(--space-2);background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-sm);color:var(--color-text);font-family:inherit;font-size:var(--font-size-sm)}.checkbox{align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--color-text-muted);cursor:pointer;display:inline-flex}.checkbox--inline{gap:var(--space-1)}.checkbox__input{width:1rem;height:1rem;accent-color:var(--color-primary);cursor:pointer}.theme-toggle{font:inherit;border:1px solid var(--color-border);border-radius:var(--radius-sm);width:2.75rem;height:2.75rem;color:var(--color-text-muted);cursor:pointer;background:0 0;justify-content:center;align-items:center;display:inline-flex}.theme-toggle:hover{background:var(--btn-ghost-hover-bg);color:var(--color-text)}.theme-toggle svg{width:1.25rem;height:1.25rem}.auth-layout{--la-bg:#eef2fb;--la-radius-card:26px;--la-radius-field:13px;--la-radius-oauth:15px;--la-control-h:52px;--la-grad-from:var(--color-primary,#2563eb);--la-grad-to:#06b6d4;--la-grad-strong:#1d4ed8;--la-shadow-card:0 24px 60px -26px #1e285047;--la-shadow-oauth:0 8px 20px -6px #1e326e38, 0 2px 5px #0f172a12;--la-shadow-toggle:0 6px 16px -5px #2563eb59, 0 2px 5px #0f172a14;--la-shadow-submit:0 16px 34px -8px #2563eb8c;background:var(--la-bg)}[data-theme=dark] .auth-layout{--la-bg:#0b1120;--la-grad-to:#22d3ee;--la-grad-strong:#3b82f6;--la-shadow-card:0 24px 60px -26px #0009;--la-shadow-oauth:0 8px 20px -6px #00000080, 0 2px 5px #0006;--la-shadow-toggle:0 6px 16px -5px #60a5fa66, 0 2px 5px #0006;--la-shadow-submit:0 16px 34px -8px #2563eb99}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]) .auth-layout{--la-bg:#0b1120;--la-grad-to:#22d3ee;--la-grad-strong:#3b82f6;--la-shadow-card:0 24px 60px -26px #0009;--la-shadow-oauth:0 8px 20px -6px #00000080, 0 2px 5px #0006;--la-shadow-toggle:0 6px 16px -5px #60a5fa66, 0 2px 5px #0006;--la-shadow-submit:0 16px 34px -8px #2563eb99}}.auth-layout .login-card{border-radius:var(--la-radius-card);box-shadow:var(--la-shadow-card);padding:30px 28px 26px}.auth-layout .login-card__title{font-size:var(--font-size-display,2.375rem);letter-spacing:-1px;background:linear-gradient(90deg, var(--la-grad-from), var(--la-grad-to));color:#0000;-webkit-background-clip:text;background-clip:text;padding-bottom:.06em;font-weight:800;line-height:1.1}.auth-layout .login-card__subtitle{font-weight:500}.auth-layout .theme-toggle{color:var(--color-primary);box-shadow:var(--la-shadow-toggle);transition:transform var(--transition-fast,.12s ease);border-radius:50%}.auth-layout .theme-toggle:hover{color:var(--color-primary);transform:translateY(-1px)}.auth-layout .oauth-buttons .btn{border-radius:var(--la-radius-oauth);height:50px;box-shadow:var(--la-shadow-oauth);transition:transform var(--transition-fast,.12s ease), box-shadow var(--transition-fast,.12s ease)}.auth-layout .oauth-buttons .btn:hover:not(:disabled){transform:translateY(-1px)}.auth-layout .divider{font-weight:600}.auth-layout .field__input{height:var(--la-control-h);border-radius:var(--la-radius-field)}.auth-layout .save-session__select{border-radius:10px}.auth-layout .login-form .btn--primary{border-radius:var(--radius-pill);background:linear-gradient(90deg, var(--la-grad-from), var(--la-grad-strong));height:54px;box-shadow:var(--la-shadow-submit);transition:transform var(--transition-fast,.12s ease), filter var(--transition-fast,.12s ease);font-weight:800}.auth-layout .login-form .btn--primary:hover:not(:disabled){background:linear-gradient(90deg, var(--la-grad-from), var(--la-grad-strong));filter:brightness(1.03);transform:translateY(-1px)}.auth-layout .login-form__forgot-row{text-align:center;margin:16px 0 0}.auth-layout .login-form__forgot-row .login-form__forgot{font-weight:600}.auth-layout .login-form__footer{font-weight:500}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.login-card--resizable{max-width:min(var(--login-max-width,980px), calc(100vw - 2 * var(--space-6)));position:relative}.login-card__header--menu .login-card__heading{flex:1}.login-body{gap:var(--space-5);grid-template-columns:1fr;grid-template-areas:"oauth""sep""creds";display:grid}.login-body__oauth{gap:var(--space-3);flex-direction:column;grid-area:oauth;display:flex}.login-body__sep{grid-area:sep;align-items:center;display:flex}.login-body__creds{gap:var(--space-5);flex-direction:column;grid-area:creds;min-width:0;display:flex}.login-body__other-head{margin:0 0 var(--space-2);text-align:center;color:var(--color-text-subtle);font-size:var(--font-size-sm);display:none}.login-body__rule{display:none}.login-card--resizable.is-split .login-body{grid-template-columns:minmax(0,1fr) 1px minmax(0,1fr);grid-template-areas:"creds sep oauth";align-items:start;gap:28px}.login-card--resizable.is-split .login-body__sep{justify-content:center;align-self:stretch}.login-card--resizable.is-split .login-body__sep .divider{display:none}.login-card--resizable.is-split .login-body__rule{background:var(--color-divider);width:1px;height:100%;display:block}.login-card--resizable.is-split .login-body__other-head{display:block}.login-card--resizable.is-split .login-form__meta{align-items:flex-start;gap:var(--space-2);flex-direction:column}.login-card__resize{cursor:ew-resize;touch-action:none;z-index:4;background:0 0;border:0;justify-content:center;align-items:center;width:18px;height:100%;display:flex;position:absolute;top:0;right:-8px}.login-card__resize:before{content:"";background:var(--color-border);border:1px solid var(--color-border);width:6px;height:52px;transition:background var(--transition-fast,.12s ease), border-color var(--transition-fast,.12s ease);border-radius:6px}.login-card__resize:hover:before{background:var(--color-text-subtle)}.login-card__resize:focus-visible{outline:none}.login-card__resize:focus-visible:before{box-shadow:var(--shadow-focus)}.login-card__resize.is-dragging:before{background:var(--color-primary);border-color:var(--color-primary)}body.login-resizing{-webkit-user-select:none;user-select:none;cursor:ew-resize}.layout-menu{position:relative}.layout-menu__trigger{border:1px solid var(--color-border);border-radius:var(--radius-sm);width:2.75rem;height:2.75rem;color:var(--color-text-muted);cursor:pointer;background:0 0;justify-content:center;align-items:center;font-size:1.25rem;line-height:1;display:inline-flex}.layout-menu__trigger:hover{background:var(--btn-ghost-hover-bg);color:var(--color-text)}.layout-menu__trigger:focus-visible{box-shadow:var(--shadow-focus);outline:none}.layout-menu__pop{top:calc(2.75rem + var(--space-2));z-index:6;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md,10px);min-width:210px;box-shadow:var(--shadow-card);padding:var(--space-2);position:absolute;left:0}.layout-menu__label{padding:var(--space-1) var(--space-2) var(--space-2);font-size:var(--font-size-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-subtle);margin:0}.layout-menu__opt{align-items:center;gap:var(--space-2);text-align:left;border-radius:var(--radius-sm);width:100%;padding:var(--space-2) var(--space-2);font-family:inherit;font-size:var(--font-size-sm);color:var(--color-text);cursor:pointer;background:0 0;border:0;display:flex}.layout-menu__opt:before{content:"";border:1px solid var(--color-border);border-radius:999px;flex:none;width:14px;height:14px}.layout-menu__opt:hover{background:var(--btn-ghost-hover-bg)}.layout-menu__opt[aria-checked=true]:before{background:var(--color-primary);border-color:var(--color-primary);box-shadow:inset 0 0 0 3px var(--color-surface)}.auth-layout .layout-menu__trigger{color:var(--color-primary);box-shadow:var(--la-shadow-toggle);transition:transform var(--transition-fast,.12s ease);border-radius:50%}.auth-layout .layout-menu__trigger:hover{color:var(--color-primary);transform:translateY(-1px)}@media (width<=560px){.login-card__resize{display:none}.login-card--resizable.is-split .login-body{gap:var(--space-5);grid-template-columns:1fr;grid-template-areas:"oauth""sep""creds"}.login-card--resizable.is-split .login-body__sep .divider{display:flex}.login-card--resizable.is-split .login-body__rule,.login-card--resizable.is-split .login-body__other-head{display:none}.login-card--resizable.is-split .login-form__meta{flex-direction:row;align-items:center}}:root{font-family:var(--font-sans,system-ui, sans-serif);color:var(--color-text,#111827);background:var(--color-bg,#f4f6fb)}*{box-sizing:border-box}button,input,select,textarea{font:inherit}body{background:var(--color-bg,#f4f6fb);min-height:100svh;color:var(--color-text,#111827);margin:0}#root{min-height:100svh}.app{width:100%;max-width:var(--app-width,var(--app-min-width,460px));background:var(--panel-bg,#edf0f6);border:1px solid var(--color-border,#e3e5e8);border-radius:var(--radius-lg,16px);padding:var(--space-6,1.5rem);box-shadow:var(--shadow-card);margin:48px auto;position:relative}.todo-header{justify-content:space-between;align-items:flex-start;gap:var(--space-4,1rem);margin-bottom:var(--space-5,1.25rem);flex-wrap:wrap;display:flex}.todo-header__actions{flex-wrap:nowrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.todo-header__actions .btn--icon,.todo-header__actions .theme-toggle{border:1px solid var(--color-border,#d1d5db);width:2.75rem;min-width:2.75rem;height:2.75rem;color:var(--color-text-subtle,#6b7280);box-shadow:none;background:0 0;border-radius:10px;padding:0}.todo-header__actions .btn--icon:hover,.todo-header__actions .theme-toggle:hover{background:var(--color-overlay,#0f172a0f);border-color:var(--color-border-strong,#9ca3af);color:var(--color-text,#111827)}.btn{white-space:nowrap}.btn--icon{justify-content:center;align-items:center;width:2.75rem;min-width:2.75rem;height:2.75rem;padding:0;display:inline-flex}.btn--icon .ic{width:1.25rem;height:1.25rem}.app h1{font-size:var(--font-size-lg,1.25rem);letter-spacing:-.01em;margin:0;font-weight:500}.note{margin:var(--space-1,.25rem) 0 0;color:var(--color-text-subtle,#6b7280);font-size:var(--font-size-sm,.875rem)}.error{color:var(--color-danger,#b91c1c);font-size:var(--font-size-sm,.875rem)}.add{gap:var(--space-2,.5rem);margin:var(--space-5,1.25rem) 0 var(--space-2,.5rem);display:flex}.add input{height:var(--control-height,2.875rem);padding:0 var(--space-4,1rem);border:1px solid var(--input-border,#c2c8d2);border-radius:var(--radius-sm,8px);background:var(--input-bg,#fff);color:var(--color-text,#111827);font-size:var(--font-size-md,1rem);flex:1}.add input:focus{border-color:var(--input-border-focus,#2563eb);box-shadow:var(--shadow-focus);outline:none}.add .btn--primary{align-items:center;display:inline-flex}.add .btn--primary:disabled{opacity:1}.todos{flex-direction:column;gap:5px;margin:0;padding:0;list-style:none;display:flex}.board--single{display:block}.board--multi{align-items:flex-start;gap:16px;display:flex}.board--multi>.col{min-width:0;max-width:var(--col-max-width,520px);flex:1 1 0}.board--multi>.col .todos{gap:var(--space-2,.5rem)}.zone-label{margin:0 0 var(--space-2,.5rem);text-transform:uppercase;letter-spacing:.08em;min-height:1rem;color:var(--color-text-subtle,#6b7280);padding:0 2px;font-size:.6875rem;font-weight:700}.zone-label--divider{margin:var(--space-5,1.25rem) 2px var(--space-4,1rem);align-items:center;gap:10px;min-height:0;display:flex}.zone-label--divider:before,.zone-label--divider:after{content:"";background:var(--color-divider,#e5e7eb);flex:1;height:1px}.todos li.zone-empty{padding:var(--space-3,.75rem) var(--space-4,1rem);color:var(--color-text-subtle,#9ca3af);font-size:var(--font-size-sm,.875rem);text-align:center;border:1px dashed var(--color-border,#d1d5db);box-shadow:none;background:0 0;align-items:center}.todos li.zone-empty:hover{border-color:var(--color-border,#d1d5db)}.board--single>.col-group>li.group-card:first-child,.board--multi .col-group>li.group-card:first-child{margin-top:0}.resize-handle{cursor:ew-resize;touch-action:none;z-index:5;background:0 0;border:none;justify-content:center;align-items:center;width:16px;padding:0;display:flex;position:absolute;top:0;bottom:0;right:-7px}.resize-handle__grip{background:var(--color-border-strong,#9ca3af);width:4px;height:44px;transition:background var(--transition-fast,.12s ease), height var(--transition-fast,.12s ease);border-radius:999px}.resize-handle:hover .resize-handle__grip,.resize-handle:focus-visible .resize-handle__grip{background:var(--color-primary,#2563eb);height:72px}.resize-handle:focus-visible{outline:2px solid var(--color-focus-ring,#1d4ed8);outline-offset:2px;border-radius:var(--radius-sm,8px)}.app-status{margin-top:var(--space-6,1.5rem);padding-top:var(--space-3,.75rem);border-top:1px solid var(--color-divider,#e5e7eb);gap:var(--space-3,.75rem);flex-direction:column;display:flex}.app-status__progress{background:var(--color-divider,#e5e7eb);border-radius:999px;height:6px;overflow:hidden}.app-status__progress-fill{border-radius:inherit;background:var(--color-primary,#2563eb);min-width:6px;height:100%;transition:width var(--transition-slow,.3s ease)}.app-status__stats{align-items:center;gap:var(--space-2,.5rem) var(--space-5,1.25rem);font-size:var(--font-size-sm,.875rem);color:var(--color-text-subtle,#6b7280);flex-wrap:wrap;display:flex}.app-status__stat{align-items:baseline;gap:.3rem;display:inline-flex}.app-status__stat strong{color:var(--color-text,#111827);font-variant-numeric:tabular-nums;font-weight:700}@media (width<=430px){.app-status__stats{justify-content:space-between;gap:var(--space-1,.25rem) .25rem;font-size:var(--font-size-xs,.75rem)}.app-status__stat{gap:.15rem}.app-status__pct{margin-left:.05rem;padding:.05rem .2rem;font-size:.6875rem}.resize-handle{width:12px;right:0}}.app-status__pct{color:var(--color-primary,#2563eb);background:color-mix(in srgb, var(--color-primary,#2563eb) 14%, transparent);border-radius:999px;margin-left:.4rem;padding:.05rem .45rem;font-size:.75rem;font-weight:700}.todos li{background:var(--card-bg,#fff);border:1px solid var(--color-divider,#e5e7eb);border-radius:var(--radius-card,9px);flex-direction:column;padding:0;display:flex;position:relative}.todos li:hover{border-color:var(--color-border,#d1d5db)}.todos li:not(.group-card):not(.group-empty):not(.drag-overlay-card):not(.standalone){box-shadow:var(--shadow-raise);transition:box-shadow var(--transition-fast,.12s ease), border-color var(--transition-fast,.12s ease)}.todos li.standalone{--sa-bg:#e0e7ff;--sa-ink:#111827;--sa-ink-subtle:#6b7280;--sa-primary:#1d4ed8;--sa-subtask:#7c3aed;--sa-danger:#b91c1c;--sa-held:#b45309;--sa-success:#15803d;--card-bg:var(--sa-bg);--color-overlay:#0f172a12;background:var(--card-bg);color:var(--sa-ink);border-color:color-mix(in srgb, var(--sa-bg) 78%, #1e293b)}.todos li.standalone:not(.drag-overlay-card){box-shadow:var(--shadow-raise);transition:box-shadow var(--transition-fast,.12s ease), border-color var(--transition-fast,.12s ease)}.todos li.standalone .description,.todos li.standalone .todo-confirm__label,.todos li.standalone .delete-confirm__label{color:color-mix(in srgb, var(--sa-ink) 62%, var(--sa-bg))}.todos li.standalone.completed .title{color:color-mix(in srgb, var(--sa-ink) 48%, var(--sa-bg))}.todos li.standalone .iconbtn,.todos li.standalone .delete--cancel{color:color-mix(in srgb, var(--sa-ink) 66%, var(--sa-bg))}.todos li.standalone .drag-handle{color:color-mix(in srgb, var(--sa-ink) 88%, var(--sa-bg))}.todos li.standalone .iconbtn:hover{color:var(--sa-ink)}.todos li .todo-top{align-items:center;gap:7px;padding:8px 12px 8px 9px;display:flex;position:relative}.ic{flex:none;display:block}.todos li .todo-actions{right:var(--space-2,.5rem);background:var(--card-bg,#fff);opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--transition-fast,.12s ease), visibility 0s linear var(--transition-fast,.12s);align-items:center;gap:1px;padding-left:18px;display:inline-flex;position:absolute;top:50%;transform:translateY(-50%)}.todos li .todo-actions:before{content:"";background:linear-gradient(to right, transparent, var(--card-bg,#fff));pointer-events:none;width:22px;position:absolute;top:0;bottom:0;left:-22px}.todos li>.todo-top:hover .todo-actions,.todos li:focus-visible>.todo-top .todo-actions{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s}.todos li:not(:has(.subtasks)):hover>.todo-top .todo-actions{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s}.todos li .todo-top:has(:focus-visible) .todo-actions{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s}@media (hover:hover) and (pointer:fine){.todos li:not(:has(.subtasks)):hover>.todo-top .title-line:has(.held-pill,.blocked-pill,.sub-pill,.ready-pill){flex-wrap:wrap;padding-right:min(12.5rem,42%)}.todos li>.todo-top:hover .title-line:has(.held-pill,.blocked-pill,.sub-pill,.ready-pill){flex-wrap:wrap;padding-right:min(12.5rem,42%)}.todos li .todo-top:has(:focus-visible) .title-line:has(.held-pill,.blocked-pill,.sub-pill,.ready-pill){flex-wrap:wrap;padding-right:min(12.5rem,42%)}.todos li:focus-visible>.todo-top .title-line:has(.held-pill,.blocked-pill,.sub-pill,.ready-pill){flex-wrap:wrap;padding-right:min(12.5rem,42%)}.todos li .todo-top:has([class*=__btn].is-open) .title-line:has(.held-pill,.blocked-pill,.sub-pill,.ready-pill){flex-wrap:wrap;padding-right:min(12.5rem,42%)}}@media (pointer:coarse){.todos li .todo-top{flex-wrap:wrap}.todos li .todo-actions{opacity:1;visibility:visible;pointer-events:auto;background:0 0;justify-content:flex-end;width:100%;padding-left:0;position:static;transform:none}.todos li .todo-actions:before{display:none}.todos li .iconbtn,.todos li .dep-menu__remove,.todos li .sub-menu__release{width:44px;height:44px}}.todos li .iconbtn{width:28px;height:28px;color:var(--color-text-subtle,#6b7280);border-radius:var(--radius-sm,8px);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex;position:relative}@media (hover:hover) and (pointer:fine){.todos li .todo-actions .iconbtn:after{content:"";position:absolute;inset:-8px 0}}.todos li .iconbtn .ic{width:17px;height:17px}.todos li .iconbtn:hover{background:var(--color-overlay,#0f172a0f);color:var(--color-text,#111827)}.todos li .iconbtn.del:hover{color:var(--color-danger,#b91c1c);background:0 0}.todos li .iconbtn.hold[aria-pressed=true]{color:var(--color-held,#b45309)}.todos li .iconbtn:disabled{opacity:.38;cursor:not-allowed}.todos li .iconbtn:disabled:hover{color:var(--color-text-subtle,#6b7280);background:0 0}.todos li .iconbtn:focus-visible{outline:2px solid var(--color-focus-ring,#1d4ed8);outline-offset:2px}.todos li .todo-confirm{align-items:center;gap:var(--space-2,.5rem);padding:var(--space-2,.5rem) var(--space-4,1rem) var(--space-3,.75rem) calc(var(--space-4,1rem) + 4px);border-top:1px solid var(--color-divider,#e5e7eb);flex-wrap:wrap;display:flex}.todos li .todo-confirm__label{font-size:var(--font-size-sm,.875rem);color:var(--color-text-subtle,#6b7280)}.todos li .todo-main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.todos li .title-line{align-items:center;gap:var(--space-2,.5rem);display:flex}.todos li .title{word-break:break-word}.todos li .description{font-size:var(--font-size-sm,.875rem);color:var(--color-text-subtle,#9ca3af);white-space:pre-wrap;word-break:break-word;margin:0}.todos li.completed .title{color:var(--color-text-subtle,#9ca3af);text-decoration:line-through}.todos li.completed .description{text-decoration:line-through}.todos li .delete{color:var(--color-danger,#b91c1c);min-height:44px;padding:0 var(--space-3,.75rem);font-size:var(--font-size-sm,.875rem);cursor:pointer;border-radius:var(--radius-sm,8px);background:0 0;border:none;align-items:center;display:inline-flex}.todos li .delete:hover{background:var(--color-danger-bg,#fee2e2)}.todos li .delete-confirm{align-items:center;gap:var(--space-2,.5rem);display:inline-flex}.todos li .delete-confirm__label{font-size:var(--font-size-sm,.875rem);color:var(--color-text-subtle,#9ca3af)}.todos li .delete--confirm{color:var(--color-on-danger,#fff);background:var(--color-danger-solid,#b91c1c)}.todos li .delete--confirm:hover{background:var(--color-danger-solid-hover,#991b1b)}.todos li .delete--cancel{color:var(--color-text,#1f2937)}.todos li .delete--cancel:hover{background:var(--color-divider,#ececf0)}.todos li .delete:focus-visible{outline:2px solid var(--color-focus-ring,#1d4ed8);outline-offset:2px}.todos li .held-pill{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--font-size-xs,.75rem);color:var(--color-held,#b45309);background:color-mix(in srgb, var(--color-held,#b45309) 14%, var(--card-bg,#fff));border-radius:999px;flex:none;padding:1px 7px}.todos li .drag-handle{width:28px;height:28px;font:inherit;color:var(--color-text,#111827);border-radius:var(--radius-sm,8px);cursor:grab;touch-action:none;opacity:.55;background:0 0;border:none;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.todos li .todo-top:hover .drag-handle,.todos li:focus>.todo-top .drag-handle{opacity:.9}.todos li .drag-handle:active{cursor:grabbing}.todos li .drag-handle:hover{background:var(--color-overlay,#0f172a0f)}.todos li .drag-handle:focus-visible{outline:2px solid var(--color-focus-ring,#1d4ed8);outline-offset:2px}.zone-head{justify-content:space-between;align-items:center;gap:var(--space-2,.5rem);display:flex}.zone-head--divider{margin:var(--space-5,1.25rem) 0 var(--space-4,1rem)}.zone-head--divider .zone-label--divider{flex:1;margin:0}.select-entry{font:inherit;letter-spacing:.03em;color:var(--color-primary,#2563eb);background:color-mix(in srgb, var(--color-primary,#2563eb) 10%, transparent);border:1px solid color-mix(in srgb, var(--color-primary,#2563eb) 22%, transparent);cursor:pointer;margin-bottom:var(--space-2,.5rem);border-radius:999px;flex:none;padding:3px 11px;font-size:.75rem;font-weight:700}.zone-head--divider .select-entry{margin-bottom:0}.select-entry:hover{background:color-mix(in srgb, var(--color-primary,#2563eb) 16%, transparent)}.col-single.selecting li .drag-handle,.col-single.selecting li .todo-actions{display:none}.todos li.selectable{cursor:pointer}.todos li.selected{outline:2.5px solid var(--color-primary,#2563eb);outline-offset:2px}.todos li.selected .sel-badge{z-index:3;background:var(--color-primary,#2563eb);width:20px;height:20px;box-shadow:0 0 0 2px var(--color-surface,#fff);border-radius:50%;position:absolute;top:-8px;left:-8px}.todos li.selected .sel-badge:after{content:"";border:solid var(--color-on-primary,#fff);border-width:0 2px 2px 0;width:4px;height:8px;position:absolute;top:4px;left:7px;transform:rotate(45deg)}.bulk-bar{justify-content:center;align-items:center;gap:var(--space-2,.5rem) var(--space-4,1rem);font-size:var(--font-size-sm,.875rem);color:var(--color-text-subtle,#6b7280);flex-wrap:wrap;display:flex}.bulk-bar__link{font:inherit;color:var(--color-primary,#2563eb);cursor:pointer;background:0 0;border:none;padding:4px 6px;font-weight:700}.bulk-bar__link:hover{text-decoration:underline}.bulk-bar__count{color:var(--color-text,#111827);font-weight:600}.bulk-bar__add{position:relative}.bulk-bar__addbtn{height:auto;font-size:var(--font-size-sm,.875rem);padding:7px 12px}.bulk-bar__addbtn:disabled{opacity:.5;cursor:not-allowed}.select-entry:focus-visible,.bulk-bar__link:focus-visible,.bulk-bar__cancel:focus-visible,.bulk-bar__addbtn:focus-visible,.todo-header__actions .theme-toggle:focus-visible{outline:2px solid var(--color-focus-ring,#1d4ed8);outline-offset:2px}.bulk-menu{z-index:50;background:var(--color-surface,#fff);border:1px solid var(--color-border,#d1d5db);border-radius:var(--radius-md,12px);min-width:12rem;box-shadow:var(--shadow-card,0 12px 28px -8px #0f172a47);flex-direction:column;gap:2px;padding:5px;display:flex;position:absolute;top:auto;bottom:calc(100% + 10px);right:0}.bulk-menu .group-menu__head{font-size:var(--font-size-xs,.8125rem);color:var(--color-text-subtle,#6b7280);margin:0;padding:4px 8px 6px;font-weight:500}.bulk-menu .group-menu__item{align-items:center;gap:var(--space-2,.5rem);width:100%;font:inherit;font-size:var(--font-size-sm,.875rem);color:var(--color-text,#111827);text-align:left;background:var(--color-surface-alt,#f0f2f7);border-radius:var(--radius-sm,8px);cursor:pointer;border:none;padding:8px 10px;display:flex}.bulk-menu .group-menu__item:hover,.bulk-menu .group-menu__item:focus-visible{background:color-mix(in srgb, var(--hue,var(--color-primary,#2563eb)) 16%, var(--color-surface-alt,#f0f2f7))}.bulk-menu .group-menu__item:focus-visible{outline:2px solid var(--color-focus-ring,#1d4ed8);outline-offset:-2px}.bulk-menu .group-menu__dot{background:var(--hue,var(--color-primary,#2563eb));border-radius:50%;flex:none;width:9px;height:9px}.bulk-bar__cancel{border-radius:var(--radius-sm,8px);width:30px;height:30px;color:var(--color-text-subtle,#6b7280);cursor:pointer;background:0 0;border:none;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.bulk-bar__cancel:hover{background:var(--color-overlay,#0f172a0f);color:var(--color-text,#111827)}.todos li:focus-visible{outline:2px solid var(--color-focus-ring,#1d4ed8);outline-offset:2px}.todos li.dragging,.group-todos li.dragging{border:1.5px dashed var(--color-primary,#2563eb);border-radius:var(--radius-sm,8px);background:color-mix(in srgb, var(--color-primary,#2563eb) 8%, transparent)}.todos li.dragging>*,.group-todos li.dragging>*{visibility:hidden}.todos li.dragging:before,.group-todos li.dragging:before{display:none}.todos li.group-card.drop-ready{outline:2px dashed var(--hue,var(--color-group,#16a34a));outline-offset:2px;background:color-mix(in srgb, var(--hue,var(--color-group,#16a34a)) 8%, transparent)}.todos li.group-card .group-drop-zone{flex-direction:column;display:flex}.todos li.group-card .group-drop-line{background:var(--color-primary,#2563eb);height:3px;box-shadow:0 0 0 2px color-mix(in srgb, var(--color-primary,#2563eb) 30%, transparent);pointer-events:none;z-index:2;border-radius:999px;position:absolute;left:0;right:0}.todos li.group-card .group-drop-line--before{top:-10px}.todos li.group-card .group-drop-line--after{bottom:-10px}.drag-overlay-list{margin:0;padding:0;list-style:none}.drag-overlay-card{pointer-events:none;background:var(--color-surface,#fff);cursor:grabbing;transform:scale(1.03)rotate(-2deg);box-shadow:0 18px 34px #0f172a47}.drag-overlay-grouplabel{padding:var(--space-2,.5rem) var(--space-4,1rem);font-size:var(--font-size-sm,.875rem);color:var(--color-text-subtle,#9ca3af);margin:0}.todos li.editing{padding:var(--space-3,.75rem) var(--space-4,1rem)}.todo-edit{gap:var(--space-2,.5rem);flex-direction:column;width:100%;display:flex}.todo-edit__title,.todo-edit__desc{width:100%;font:inherit;color:var(--color-text,#1f2937);background:var(--color-surface,#fff);border:1px solid var(--input-border,#d1d5db);border-radius:var(--radius-sm,8px);padding:var(--space-2,.5rem) var(--space-3,.75rem)}.todo-edit__desc{resize:vertical;min-height:2.5rem}.todo-edit__title:focus,.todo-edit__desc:focus{border-color:var(--input-border-focus,#2563eb);box-shadow:var(--shadow-focus);outline:none}.todo-edit__actions{gap:var(--space-2,.5rem);display:flex}.group-create{margin:0 0 var(--space-4,1rem)}.group-add-btn{border:1px solid var(--color-border,#d1d5db);height:34px;color:var(--color-text-subtle,#6b7280);border-radius:var(--radius-sm,8px);font:inherit;font-size:var(--font-size-sm,.875rem);cursor:pointer;background:0 0;align-items:center;gap:7px;padding:0 11px;display:inline-flex}.group-add-btn:hover{border-color:var(--color-text-subtle,#6b7280);color:var(--color-text,#111827)}.group-add-btn:focus-visible{outline:2px solid var(--color-focus-ring,#1d4ed8);outline-offset:2px}.group-create__form{align-items:center;gap:var(--space-2,.5rem);flex-wrap:wrap;display:flex}.group-create__form input[type=text],.group-create__form input:not([type]){min-height:40px;padding:0 var(--space-3,.75rem);border:1px solid var(--input-border,#d1d5db);border-radius:var(--radius-sm,8px);background:var(--color-surface,#fff);color:var(--color-text,#1f2937);font:inherit;flex:10rem}.group-create__held{align-items:center;gap:var(--space-1,.25rem);font-size:var(--font-size-sm,.875rem);color:var(--color-text-subtle,#6b7280);white-space:nowrap;display:inline-flex}.todos li.group-card{--rail:var(--hue,var(--color-group,#16a34a));margin-top:var(--space-5,1.25rem);background:0 0;border:none;border-radius:0;padding:0}.todos li.group-card:hover{box-shadow:none}.todos li.group-card:before{display:none}.todos li .group-head{align-items:center;gap:var(--space-2,.5rem);padding:0 var(--space-1,.25rem) var(--space-2,.5rem);background:0 0;flex-wrap:wrap;display:flex}.todos li .group-dot{background:var(--hue,var(--color-group,#16a34a));border-radius:50%;flex:none;width:7px;height:7px}.todos li.group-card .held-pill{color:var(--hue,var(--color-group,#16a34a));background:color-mix(in srgb, var(--hue,var(--color-group,#16a34a)) 12%, var(--card-bg,#fff))}.todos li .group-name{text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-subtle,#6b7280);font-size:.6875rem;font-weight:700}.todos li .count{color:var(--color-text-subtle,#6b7280);background:var(--color-surface-alt,#f0f2f7);border-radius:999px;padding:1px 8px;font-size:.6875rem;font-weight:600}.todos li .group-bar{height:2px;margin:0 2px var(--space-2,.5rem);background:var(--color-divider,#e5e7eb);border-radius:2px;overflow:hidden}.todos li .group-bar__fill{background:var(--hue,var(--color-group,#16a34a));height:100%;transition:width var(--transition-slow,.3s ease);border-radius:2px}.todos li .group-controls{justify-content:flex-end;align-items:center;gap:var(--space-1,.25rem);opacity:0;transition:opacity var(--transition-fast,.12s ease);flex-wrap:wrap;margin-left:auto;display:inline-flex}.todos li .group-head:hover .group-controls,.todos li .group-head:focus-within .group-controls,.todos li.group-card.confirming .group-controls{opacity:1}.todos li .group-rename{align-items:center;gap:var(--space-2,.5rem);flex-wrap:wrap;flex:1;display:flex}.todos li .group-rename input{min-height:40px;padding:0 var(--space-3,.75rem);border:1px solid var(--input-border,#d1d5db);border-radius:var(--radius-sm,8px);background:var(--color-surface,#fff);color:var(--color-text,#1f2937);font:inherit;flex:8rem}.todos li .group-todos{gap:var(--space-2,.5rem);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.todos li .group-empty{border:1px dashed var(--color-border,#d1d5db);border-radius:var(--radius-sm,8px);padding:var(--space-3,.75rem);text-align:center;color:var(--color-text-subtle,#9ca3af);font-size:var(--font-size-sm,.875rem)}.todos li .group-add{display:inline-flex;position:relative}:is(.todos li .todo-actions:has(.group-add__btn.is-open),.todos li .todo-actions:has(.dep-menu__btn.is-open),.todos li .todo-actions:has(.sub-menu__btn.is-open)){opacity:1;visibility:visible;pointer-events:auto;z-index:50}:is(.todos li:has(.group-add__btn.is-open),.todos li:has(.dep-menu__btn.is-open)){z-index:40;position:relative}.todos li .group-add__btn.is-open,.todos li .dep-menu__btn.is-open{background:var(--color-overlay,#0f172a0f);color:var(--color-text,#111827)}.todos li .group-menu{z-index:30;background:var(--color-surface,#fff);border:1px solid var(--color-border,#d1d5db);border-radius:var(--radius-md,12px);min-width:11rem;box-shadow:var(--shadow-card,0 12px 28px -8px #0f172a2e);padding:5px;position:absolute;top:calc(100% + 6px);right:0}.todos li .group-menu__head{font-size:var(--font-size-xs,.8125rem);color:var(--color-text-subtle,#6b7280);margin:0;padding:4px 8px 6px;font-weight:500}.todos li .group-menu__item{align-items:center;gap:var(--space-2,.5rem);width:100%;font-size:var(--font-size-sm,.875rem);color:var(--color-text,#111827);text-align:left;background:var(--color-surface-alt,#f0f2f7);border-radius:var(--radius-sm,8px);cursor:pointer;border:none;padding:8px 10px;display:flex}.todos li .group-menu__item+.group-menu__item{margin-top:4px}.todos li .group-menu__item:hover,.todos li .group-menu__item:focus-visible{background:color-mix(in srgb, var(--hue,var(--color-group,#16a34a)) 16%, var(--color-surface-alt,#f0f2f7))}.todos li .group-menu__item:focus-visible{outline:2px solid var(--color-focus-ring,#1d4ed8);outline-offset:-2px}.todos li .group-menu__dot{background:var(--hue,var(--color-group,#16a34a));border-radius:50%;flex:none;width:9px;height:9px}.todos li .blocked-pill{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--font-size-xs,.75rem);color:var(--color-danger,#b91c1c);background:color-mix(in srgb, var(--color-danger,#b91c1c) 12%, var(--card-bg,#fff));border-radius:999px;flex:none;padding:1px 7px}.todos li .dep-menu .group-menu{max-height:16rem;overflow-y:auto}.todos li .dep-menu__dep{cursor:default;justify-content:space-between}.todos li .dep-menu__dep.is-done .group-menu__name{color:var(--color-text-subtle,#6b7280);text-decoration:line-through}.todos li .dep-menu__remove{width:28px;height:28px;color:var(--color-text-subtle,#6b7280);border-radius:var(--radius-sm,8px);cursor:pointer;background:0 0;border:none;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.todos li .dep-menu__remove:hover,.todos li .dep-menu__remove:focus-visible{color:var(--color-danger,#b91c1c)}.todos li .dep-menu__empty{font-size:var(--font-size-sm,.875rem);color:var(--color-text-subtle,#6b7280);margin:0;padding:4px 10px 8px}.todos li .dep-menu__btn.is-blocked{color:var(--color-danger,#b91c1c)}.todos li .sub-pill{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--font-size-xs,.75rem);color:var(--color-primary,#1d4ed8);background:color-mix(in srgb, var(--color-primary,#1d4ed8) 12%, var(--card-bg,#fff));border-radius:999px;flex:none;padding:1px 7px}.todos li .ready-pill{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--font-size-xs,.75rem);color:var(--color-success,#15803d);background:color-mix(in srgb, var(--color-success,#15803d) 14%, var(--card-bg,#fff));border-radius:999px;flex:none;padding:1px 7px;animation:1.1s ease-in-out 2 ready-nudge}@keyframes ready-nudge{0%,to{transform:scale(1)}50%{transform:scale(1.12)}}@media (prefers-reduced-motion:reduce){.todos li .ready-pill{animation:none}}.todos li .subtasks{padding:var(--space-2,.5rem) var(--space-3,.75rem) var(--space-3,.75rem) var(--space-4,1rem);gap:var(--space-2,.5rem);flex-direction:column;margin:0;list-style:none;display:flex}.todos li .subtasks .subtask{margin-left:var(--space-3,.75rem);background:var(--color-surface-alt,#f0f2f7);position:relative}.todos li.standalone .subtasks .subtask{color:#111827;background:#f0f2f7;border-color:#d8dce6}.todos li.standalone .subtasks .subtask:after{border-color:#c3c9d6}.todos li .subtasks .subtask:after{content:"";left:calc(-1 * var(--space-3,.75rem));border-left:2px solid var(--color-divider,#e5e7eb);border-bottom:2px solid var(--color-divider,#e5e7eb);pointer-events:none;border-bottom-left-radius:8px;width:9px;position:absolute;top:-10px;bottom:50%}.todos li .dep-menu__btn{color:var(--color-primary,#1d4ed8)}.todos li .sub-menu__btn{color:var(--color-subtask,#7c3aed)}.todos li .group-menu__head--dep{color:var(--color-primary,#1d4ed8)}.todos li .group-menu__head--sub{color:var(--color-subtask,#7c3aed)}.todos li .sub-menu__btn.has-subs{font-weight:600}.todos li:has(.sub-menu__btn.is-open){z-index:40;position:relative}.todos li .sub-menu__btn.is-open{background:var(--color-overlay,#0f172a0f);color:var(--color-text,#111827)}.todos li .sub-menu .group-menu{max-height:18rem;overflow-y:auto}.todos li .sub-menu__kid{cursor:default;justify-content:space-between}.todos li .sub-menu__kid.is-done .group-menu__name{color:var(--color-text-subtle,#6b7280);text-decoration:line-through}.todos li .sub-menu__release{width:28px;height:28px;color:var(--color-text-subtle,#6b7280);border-radius:var(--radius-sm,8px);cursor:pointer;background:0 0;border:none;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.todos li .sub-menu__release:hover,.todos li .sub-menu__release:focus-visible{color:var(--color-primary,#1d4ed8)}.todos li .sub-menu__empty{font-size:var(--font-size-sm,.875rem);color:var(--color-text-subtle,#6b7280);margin:0;padding:4px 10px 8px}.todos li .delete--keep{color:var(--color-text,#1f2937);border:1px solid var(--color-border,#d1d5db)}.todos li .delete--keep:hover{background:var(--color-divider,#ececf0)}.todos li.standalone .iconbtn{color:var(--sa-ink-subtle)}.todos li.standalone .dep-menu__btn{color:var(--sa-primary)}.todos li.standalone .sub-menu__btn{color:var(--sa-subtask)}.todos li.standalone .dep-menu__btn.is-blocked,.todos li.standalone .iconbtn.del:hover{color:var(--sa-danger)}.todos li.standalone .iconbtn.hold[aria-pressed=true]{color:var(--sa-held)}.todos li.standalone .group-add__btn.is-open,.todos li.standalone .dep-menu__btn.is-open,.todos li.standalone .sub-menu__btn.is-open{color:var(--sa-ink)}.todos li.standalone .held-pill{color:#92400e;background:color-mix(in srgb, var(--sa-held) 14%, var(--sa-bg))}.todos li.standalone .blocked-pill{color:#991b1b;background:color-mix(in srgb, var(--sa-danger) 12%, var(--sa-bg))}.todos li.standalone .sub-pill{color:#1e40af;background:color-mix(in srgb, var(--sa-primary) 12%, var(--sa-bg))}.todos li.standalone .ready-pill{color:#166534;background:color-mix(in srgb, var(--sa-success) 14%, var(--sa-bg))}.todos li.standalone .delete--keep{color:var(--sa-ink);border-color:#b6bccb}.todos li.standalone .delete--keep:hover{background:color-mix(in srgb, var(--sa-ink) 8%, var(--sa-bg))}.todos li input[type=checkbox]:disabled{cursor:not-allowed;opacity:.5}.empty{padding:var(--space-3,.75rem) var(--space-4,1rem);color:var(--color-text-subtle,#9ca3af);align-items:center;border:1px dashed var(--color-border,#d1d5db)!important}.todos li.empty:before{display:none}.todos li .check{cursor:pointer;flex:none;justify-content:center;align-self:stretch;align-items:center;min-width:24px;display:inline-flex;position:relative}.todos li .check:before{content:"";width:40px;height:44px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}input[type=checkbox]{width:18px;height:18px;accent-color:var(--color-primary,#2563eb);cursor:pointer}.todos li .check input[type=checkbox]{appearance:none;border:1.5px solid var(--color-border-strong,#9ca3af);background-color:var(--card-bg,#fff);cursor:pointer;width:19px;height:19px;transition:background-color var(--transition-fast,.12s ease), border-color var(--transition-fast,.12s ease);z-index:1;border-radius:6px;position:relative}.todos li .check input[type=checkbox]:checked{background-color:var(--color-primary,#2563eb);border-color:var(--color-primary,#2563eb);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5l10 -10'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:12px}.todos li .check input[type=checkbox]:disabled{opacity:.5;cursor:not-allowed}.todos li .check input[type=checkbox]:focus-visible{outline:2px solid var(--color-focus-ring,#1d4ed8);outline-offset:2px}.admin{width:100%;max-width:var(--admin-max-width,880px);padding:0 var(--space-4,1rem);margin:48px auto}.admin h1{font-size:var(--font-size-xl,1.75rem);margin:0}.admin-panel{background:var(--color-surface,#fff);border:1px solid var(--color-border,#e3e5e8);border-radius:var(--radius-lg,16px);padding:var(--space-6,1.5rem);margin-bottom:var(--space-5,1.25rem);box-shadow:var(--shadow-card)}.admin-panel h2{margin:0 0 var(--space-4,1rem);font-size:var(--font-size-lg,1.25rem)}.admin-panel__head{justify-content:space-between;align-items:center;gap:var(--space-4,1rem);display:flex}.admin-panel__head h2{margin:0}.admin-panel__actions{margin-top:var(--space-4,1rem)}.admin-create{gap:var(--space-2,.5rem);flex-wrap:wrap;display:flex}.admin-credential{margin-top:var(--space-4,1rem);padding:var(--space-4,1rem);border:1px solid var(--color-primary,#2563eb);border-radius:var(--radius-sm,8px);background:var(--color-surface-alt,#f0f2f7)}.admin-credential p{margin:0 0 var(--space-2,.5rem)}.admin-credential code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--font-size-md,1rem);background:var(--color-overlay,#0f172a0f);border-radius:4px;padding:2px 6px;font-weight:600}.admin-credential__actions{gap:var(--space-2,.5rem);display:flex}.admin-create input{height:var(--control-height,2.875rem);padding:0 var(--space-4,1rem);border:1px solid var(--input-border,#c2c8d2);border-radius:var(--radius-sm,8px);background:var(--input-bg,#fff);color:var(--color-text,#111827);font-size:var(--font-size-md,1rem);flex:12rem}.admin-form{gap:var(--space-3,.75rem);margin-top:var(--space-4,1rem);flex-direction:column;display:flex}.admin-field{gap:var(--space-1,.25rem);font-size:var(--font-size-sm,.875rem);color:var(--color-text-subtle,#6b7280);flex-direction:column;display:flex}.admin-field input{height:var(--control-height,2.875rem);padding:0 var(--space-4,1rem);border:1px solid var(--input-border,#c2c8d2);border-radius:var(--radius-sm,8px);background:var(--input-bg,#fff);color:var(--color-text,#111827);font-size:var(--font-size-md,1rem)}.admin-check{align-items:center;gap:var(--space-2,.5rem);font-size:var(--font-size-md,1rem);color:var(--color-text,#111827);display:flex}.admin-table{border-collapse:collapse;width:100%;font-size:var(--font-size-sm,.875rem)}.admin-table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}.admin-table th,.admin-table td{text-align:left;padding:var(--space-3,.75rem) var(--space-3,.75rem);border-bottom:1px solid var(--color-divider,#e5e7eb);vertical-align:middle}.admin-table th{color:var(--color-text-subtle,#6b7280);font-weight:600}.admin-table__actions{gap:var(--space-2,.5rem);flex-wrap:wrap;justify-content:flex-start;display:flex}.admin-table .btn{min-height:44px;padding:0 var(--space-3,.75rem);font-size:var(--font-size-sm,.875rem)}.admin-confirm{align-items:center;gap:var(--space-2,.5rem);flex-wrap:wrap;display:inline-flex}.admin-confirm__label{font-size:var(--font-size-sm,.875rem);color:var(--color-danger,#b91c1c)}:root,[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}.btn--danger{background:var(--color-danger-solid,#b91c1c);border:1px solid var(--color-danger-solid,#b91c1c);color:var(--color-on-danger,#fff)}.btn--danger:hover{background:var(--color-danger-solid-hover,#991b1b);border-color:var(--color-danger-solid-hover,#991b1b)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}
