:root{--text:#172b4d;--text-subtle:#44546f;--text-subtlest:#626f86;--text-inverse:#fff;--text-danger:#ae2e24;--text-success:#216e4e;--link:#0c66e4;--page-bg:#fff;--surface:#fff;--surface-sunken:#f7f8f9;--list-bg:#f1f2f4;--neutral:#091e420f;--neutral-hover:#091e4224;--neutral-pressed:#091e424f;--subtle-hover:#091e420f;--border:#091e4224;--border-input:#8590a2;--focus:#388bff;--brand:#0c66e4;--brand-hover:#05c;--brand-pressed:#09326c;--brand-subtle:#e9f2ff;--danger:#c9372c;--danger-hover:#ae2e24;--success:#1f845a;--success-hover:#216e4e;--warning-bg:#f5cd47;--warning-text:#533f04;--overdue-bg:#ffd5d2;--overdue-text:#ae2e24;--header-overlay:#0000003d;--board-header-overlay:#00000029;--on-board-hover:#fff3;--radius-sm:3px;--radius:8px;--radius-lg:12px;--shadow-card:0 1px 1px #091e4240, 0 0 1px #091e424f;--shadow-raised:0 8px 12px #091e4226, 0 0 1px #091e424f;--shadow-overlay:0 8px 12px #091e4226, 0 0 1px #091e424f;--app-header-h:48px;--list-width:272px;--font:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Noto Sans", Ubuntu, "Droid Sans", "Helvetica Neue", sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%}body{font-family:var(--font);color:var(--text);background:var(--page-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-size:14px;line-height:20px}h1,h2,h3,h4,p{margin:0}a{color:var(--link);text-decoration:none}a:hover{text-decoration:underline}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--focus);outline-offset:1px}.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}.btn{border-radius:var(--radius-sm);background:var(--neutral);height:32px;color:var(--text);white-space:nowrap;border:0;justify-content:center;align-items:center;gap:6px;padding:6px 12px;font-weight:500;line-height:20px;transition:background-color 80ms;display:inline-flex}.btn:hover{background:var(--neutral-hover)}.btn:active{background:var(--neutral-pressed)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--brand);color:var(--text-inverse)}.btn-primary:hover{background:var(--brand-hover)}.btn-primary:active{background:var(--brand-pressed)}.btn-danger{background:var(--danger);color:var(--text-inverse)}.btn-danger:hover{background:var(--danger-hover)}.btn-subtle{background:0 0}.btn-subtle:hover{background:var(--subtle-hover)}.btn-block{justify-content:flex-start;width:100%}.btn-sm{height:28px;padding:4px 8px}.icon-btn{border-radius:var(--radius);width:32px;height:32px;color:var(--text-subtle);background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.icon-btn:hover{background:var(--subtle-hover);color:var(--text)}.input,.textarea,.select{border:1px solid var(--border-input);border-radius:var(--radius-sm);background:var(--surface);outline:none;width:100%;padding:6px 8px;line-height:20px;transition:border-color 80ms,box-shadow 80ms;display:block}.input:focus,.textarea:focus,.select:focus{border-color:var(--focus);box-shadow:inset 0 0 0 1px var(--focus)}.textarea{resize:vertical;min-height:80px}.select{appearance:auto;height:36px}.field{flex-direction:column;gap:4px;margin-bottom:12px;display:flex}.field-label{color:var(--text-subtle);font-size:12px;font-weight:700;line-height:16px}.field-error{color:var(--text-danger);font-size:12px}.avatar{color:#fff;letter-spacing:.2px;-webkit-user-select:none;user-select:none;border-radius:50%;flex:none;justify-content:center;align-items:center;font-weight:700;line-height:1;display:inline-flex}.avatar-inactive{filter:grayscale();opacity:.55}.popover{z-index:1000;border-radius:var(--radius);background:var(--surface);max-height:calc(100vh - 16px);box-shadow:var(--shadow-overlay);color:var(--text);position:fixed;overflow-y:auto}.popover-header{justify-content:center;align-items:center;height:40px;padding:4px 8px;display:flex;position:relative}.popover-title{color:var(--text-subtle);text-overflow:ellipsis;white-space:nowrap;padding:0 32px;font-size:14px;font-weight:600;overflow:hidden}.popover-close{position:absolute;top:4px;right:6px}.popover-body{padding:4px 12px 12px}.popover-section-title{color:var(--text-subtle);margin:12px 0 6px;font-size:12px;font-weight:700}.popover-menu{flex-direction:column;margin:0 -12px;display:flex}.popover-menu>button{text-align:left;background:0 0;border:0;align-items:center;gap:8px;padding:6px 12px;line-height:20px;display:flex}.popover-menu>button:hover{background:var(--subtle-hover)}.popover-menu>button.danger{color:var(--text-danger)}.modal-overlay{z-index:900;background:#091e42a3;justify-content:center;align-items:flex-start;padding:48px 16px;display:flex;position:fixed;inset:0;overflow-y:auto}.modal{border-radius:var(--radius-lg);background:var(--surface-sunken);width:100%;box-shadow:var(--shadow-overlay);position:relative}.toaster{z-index:1100;flex-direction:column;gap:8px;max-width:min(420px,100vw - 32px);display:flex;position:fixed;bottom:16px;left:16px}.toast{border-radius:var(--radius);color:#fff;box-shadow:var(--shadow-raised);text-align:left;background:#172b4d;border:0;padding:10px 14px;animation:.16s ease-out toast-in}.toast-error{background:var(--danger)}.toast-success{background:var(--success)}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}}.spinner{border:2px solid var(--neutral-hover);border-top-color:var(--brand);border-radius:50%;width:20px;height:20px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.boot-screen{justify-content:center;align-items:center;height:100%;display:flex}kbd{background:var(--surface);min-width:20px;height:20px;box-shadow:inset 0 -1px 0 var(--border), 0 0 0 1px var(--border);color:var(--text-subtle);font:600 11px/1 var(--font);border-radius:4px;justify-content:center;align-items:center;padding:0 5px;display:inline-flex}.modal.hdr-profile{background:var(--surface);overflow:hidden}.hdr-profile-header{align-items:center;gap:12px;padding:20px 16px 12px 24px;display:flex}.hdr-profile-heading{flex:1;min-width:0}.hdr-profile-heading h2{font-size:20px;font-weight:600;line-height:24px}.hdr-profile-heading p{color:var(--text-subtlest);text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:16px;overflow:hidden}.hdr-profile-section{padding:16px 24px 20px}.hdr-profile-section+.hdr-profile-section{border-top:1px solid var(--border)}.hdr-profile-section h3{margin-bottom:12px;font-size:14px;font-weight:600}.hdr-profile-hint{color:var(--text-subtlest);font-size:12px}.hdr-profile-form-error{border-radius:var(--radius-sm);color:var(--text-danger);background:#ffeceb;margin-bottom:12px;padding:8px 12px}@media (width<=600px){.modal-overlay:has(>.hdr-profile){padding:0}.modal.hdr-profile{border-radius:0;min-height:100%}}.modal.kb-dialog{background:var(--surface);overflow:hidden}.kb-header{justify-content:space-between;align-items:center;padding:16px 16px 8px 24px;display:flex}.kb-header h2{font-size:20px;font-weight:600;line-height:24px}.kb-body{padding:0 24px 8px}.kb-intro,.kb-note{color:var(--text-subtle);font-size:13px;line-height:20px}.kb-intro kbd{vertical-align:1px}.kb-note{color:var(--text-subtlest);margin-top:16px;font-size:12px}.kb-section{color:var(--text-subtlest);letter-spacing:.04em;text-transform:uppercase;margin:20px 0 4px;font-size:11px;font-weight:700}.kb-list{margin:0;padding:0;list-style:none}.kb-row{border-bottom:1px solid var(--border);padding:6px 0}.kb-row:last-child{border-bottom:0}.kb-row-main{align-items:center;gap:8px;display:flex}.kb-label{flex-direction:column;flex:1;min-width:0;display:flex}.kb-desc{color:var(--text-subtlest);font-size:12px;line-height:16px}.kb-binding{border-radius:var(--radius);background:var(--neutral);min-width:96px;height:32px;color:var(--text);border:0;flex:none;justify-content:center;align-items:center;padding:0 8px;font-size:13px;transition:background-color 80ms;display:inline-flex}.kb-binding:hover{background:var(--neutral-hover)}.kb-binding.is-off{color:var(--text-subtlest);font-style:italic}.kb-binding.is-recording{background:var(--brand-subtle);box-shadow:inset 0 0 0 2px var(--focus);color:var(--brand);font-weight:600}.kb-keys{gap:3px;display:inline-flex}.kb-row-actions{flex:none;justify-content:flex-end;width:64px;display:flex}.kb-msg{margin:4px 0 2px;font-size:12px;line-height:16px}.kb-msg-error{color:var(--text-danger)}.kb-msg-warning{color:var(--warning-text)}.kb-fixed li{color:var(--text-subtle);justify-content:space-between;align-items:center;gap:8px;padding:6px 72px 6px 0;display:flex}.kb-footer{border-top:1px solid var(--border);align-items:center;gap:12px;padding:12px 24px 16px;display:flex}.kb-status{text-align:right;color:var(--text-subtlest);flex:1;font-size:12px}@media (width<=480px){.kb-body,.kb-footer{padding-left:16px;padding-right:16px}.kb-binding{min-width:72px}.kb-fixed li{padding-right:0}.kb-footer{flex-wrap:wrap}.kb-status{text-align:left}}.modal.nd-dialog{background:var(--surface);overflow:hidden}.nd-header{justify-content:space-between;align-items:center;padding:16px 16px 4px 24px;display:flex}.nd-header h2{font-size:20px;font-weight:600;line-height:24px}.nd-body{padding:0 24px 20px}.nd-section{padding:16px 0}.nd-section+.nd-section,.nd-loading+.nd-section,.nd-problem+.nd-section{border-top:1px solid var(--border)}.nd-section-title{color:var(--text-subtlest);letter-spacing:.04em;text-transform:uppercase;margin-bottom:8px;font-size:11px;font-weight:700;line-height:16px}.nd-text{color:var(--text-subtle)}.nd-muted{color:var(--text-subtlest)}.nd-hint{color:var(--text-subtlest);font-size:12px;line-height:16px}.nd-zone,.nd-field+.nd-hint{margin-top:4px}.nd-loading{justify-content:center;padding:32px 0;display:flex}.nd-problem{border-radius:var(--radius-sm);color:var(--text-danger);background:#ffeceb;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:8px 0;padding:8px 12px;display:flex}.nd-problem p{flex:1;min-width:12em}.nd-device{flex-direction:column;align-items:flex-start;gap:12px;display:flex}.nd-device-on{flex-flow:wrap;justify-content:space-between;align-items:center}.nd-on{color:var(--text-success);align-items:center;gap:8px;font-weight:600;display:inline-flex}.nd-device-actions{flex-wrap:wrap;gap:8px;display:flex}.nd-blocked{border-radius:var(--radius-sm);color:var(--warning-text);background:#fff7d6;padding:8px 12px}.nd-steps{color:var(--text);margin:8px 0 0;padding-left:22px}.nd-steps li+li{margin-top:4px}.nd-step-icon{vertical-align:-3px;color:var(--link)}.nd-list{margin:0;padding:0;list-style:none}.nd-row{border-bottom:1px solid var(--border);padding:8px 0}.nd-row:last-child{border-bottom:0}.nd-row-main{align-items:center;gap:12px;display:flex}.nd-row-text{flex-direction:column;flex:1;min-width:0;display:flex}.nd-row-text label{cursor:pointer}.nd-row-extra{border-left:2px solid var(--border);flex-direction:column;gap:6px;margin:8px 0 4px;padding-left:12px;display:flex}.nd-switch{background:var(--border-input);cursor:pointer;appearance:none;border-radius:10px;flex:none;width:32px;height:20px;margin:0;transition:background-color .12s;position:relative}.nd-switch:before{content:"";background:#fff;border-radius:50%;width:14px;height:14px;transition:transform .12s;position:absolute;top:3px;left:3px;box-shadow:0 1px 1px #091e4240}.nd-switch:hover{background:var(--text-subtlest)}.nd-switch:checked{background:var(--success)}.nd-switch:checked:hover{background:var(--success-hover)}.nd-switch:checked:before{transform:translate(12px)}.nd-field{flex-direction:column;align-items:flex-start;gap:4px;display:flex}.nd-field-label{color:var(--text-subtle);font-size:12px;font-weight:700;line-height:16px}.nd-field-row{flex-wrap:wrap;align-items:flex-end;gap:8px 16px;display:flex}.nd-select{width:auto;min-width:180px;max-width:100%}.nd-time{width:120px;height:36px}.nd-check{cursor:pointer;align-items:center;gap:8px;height:36px;display:inline-flex}.nd-check input{width:16px;height:16px;accent-color:var(--brand);margin:0}.nd-devices{margin:0;padding:0;list-style:none}.nd-device-row{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:6px 0;display:flex}.nd-device-row:last-child{border-bottom:0}.nd-device-text{flex-direction:column;flex:1;min-width:0;display:flex}.nd-device-name{overflow-wrap:anywhere;flex-wrap:wrap;align-items:center;gap:4px 8px;font-weight:500;display:flex}.nd-badge{border-radius:var(--radius-sm);background:var(--brand-subtle);color:var(--brand);padding:0 6px;font-size:11px;font-weight:700;line-height:18px}.nd-device-row .icon-btn{flex:none}.nd-device-row .icon-btn:disabled{opacity:.5;cursor:progress}@media (prefers-reduced-motion:reduce){.nd-switch,.nd-switch:before{transition:none}}@media (width<=600px){.modal-overlay:has(>.nd-dialog){padding:0}.modal.nd-dialog{border-radius:0;min-height:100%}.nd-header{padding-left:16px}.nd-body{padding:0 16px 16px}}.hdr{z-index:20;height:var(--app-header-h);color:var(--text-subtle);flex:none;justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;display:flex;position:relative}.hdr-default{background:var(--surface);border-bottom:1px solid var(--border)}.hdr-board{background:var(--header-overlay);color:var(--text-inverse);border-bottom:1px solid #ffffff29}.hdr-left,.hdr-right{align-items:center;gap:4px;min-width:0;display:flex}.hdr-right{gap:6px}.hdr-nav{align-items:center;gap:4px;display:flex}.hdr-logo{border-radius:var(--radius-sm);height:32px;color:inherit;flex:none;align-items:center;gap:6px;padding:0 6px;transition:background-color 80ms;display:inline-flex}.hdr-logo:hover{background:var(--neutral-hover);text-decoration:none}.hdr-mark{flex:none;display:block}.hdr-wordmark{letter-spacing:-.2px;white-space:nowrap;font-size:17px;font-weight:700}.hdr-link{border-radius:var(--radius-sm);height:32px;color:inherit;white-space:nowrap;align-items:center;gap:6px;padding:0 10px;font-weight:500;transition:background-color 80ms,color 80ms;display:inline-flex}.hdr-link:hover{background:var(--neutral-hover);text-decoration:none}.hdr-link.is-active{background:var(--brand-subtle);color:var(--brand)}.hdr-avatar-btn{background:0 0;border:0;border-radius:50%;flex:none;justify-content:center;align-items:center;width:32px;height:32px;padding:0;transition:background-color 80ms;display:inline-flex}.hdr-avatar-btn:hover,.hdr-avatar-btn[aria-expanded=true]{background:var(--neutral-hover)}.hdr-board .hdr-logo:hover,.hdr-board .hdr-link:hover,.hdr-board .hdr-avatar-btn:hover,.hdr-board .hdr-avatar-btn[aria-expanded=true]{background:var(--on-board-hover)}.hdr-board .hdr-link.is-active{color:var(--text-inverse);background:#ffffff4d}.hdr-saving{color:var(--text-subtlest);white-space:nowrap;align-items:center;gap:6px;padding:0 6px;font-size:12px;animation:.15s ease-out hdr-fade-in;display:inline-flex}.hdr-board .hdr-saving{color:#ffffffd9}.hdr-saving-icon{animation:.9s linear infinite spin}.hdr-offline{min-width:0;height:28px;color:var(--warning-text);white-space:nowrap;background:#fff7d6;border-radius:14px;align-items:center;gap:6px;padding:0 10px;font-size:12px;font-weight:600;animation:.15s ease-out hdr-fade-in;display:inline-flex}.hdr-offline>span{text-overflow:ellipsis;overflow:hidden}@keyframes hdr-fade-in{0%{opacity:0}}.hdr-account{border-bottom:1px solid var(--border);align-items:center;gap:10px;margin-bottom:8px;padding:4px 0 12px;display:flex}.hdr-account-text{min-width:0}.hdr-account-name,.hdr-account-email{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.hdr-account-name{font-weight:600}.hdr-account-email{color:var(--text-subtlest);font-size:12px;line-height:16px}.hdr-menu>button:disabled{color:var(--text-subtle);cursor:progress}.hdr-menu-sep{border:0;border-top:1px solid var(--border);width:100%;margin:8px 0}@media (width<=900px){.hdr-offline-long{display:none}}@media (width<=560px){.hdr{padding:8px}.hdr-link-text{display:none}.hdr-right .hdr-link{padding:0 8px}}@media (width<=350px){.hdr-wordmark{display:none}}.hdr-logout-confirm p{color:var(--text-subtle);margin-bottom:12px}.hdr-logout-actions{gap:8px;display:flex}.hdr-logout-actions>.btn-danger{flex:1}.hdr-menu-kbd{margin-left:auto}.auth-page{background:radial-gradient(circle at 12% 18%,#0c66e41a 0,#0000 42%),radial-gradient(circle at 88% 82%,#6e5dc61a 0,#0000 45%),linear-gradient(160deg,#f4f8ff 0%,#eef4ff 55%,#e9f2ff 100%);flex-direction:column;justify-content:center;align-items:center;min-height:100%;padding:48px 16px 24px;display:flex}.auth-card{border-radius:var(--radius);background:var(--surface);width:100%;max-width:400px;padding:32px 40px;box-shadow:0 8px 24px #091e421f,0 0 1px #091e424f}.auth-logo{color:var(--text);letter-spacing:-.4px;justify-content:center;align-items:center;gap:8px;margin-bottom:24px;font-size:26px;font-weight:700;line-height:34px;display:flex}.auth-title{color:var(--text-subtle);text-align:center;margin-bottom:20px;font-size:16px;font-weight:600;line-height:20px}.auth-subtitle{color:var(--text-subtle);text-align:center;margin:-12px 0 20px}.auth-card .input{height:40px;padding:8px 10px}.auth-card .input[readonly]{background:var(--surface-sunken);border-color:var(--border);color:var(--text-subtle)}.auth-card .input[aria-invalid=true]{border-color:var(--danger)}.auth-submit{width:100%;height:40px;margin-top:4px}a.auth-submit:hover{text-decoration:none}.auth-error{border-radius:var(--radius-sm);color:var(--text-danger);background:#ffeceb;align-items:flex-start;gap:8px;margin-bottom:12px;padding:8px 12px;display:flex}.auth-error svg{flex:none;margin-top:2px}.auth-note{border-top:1px solid var(--border);color:var(--text-subtlest);text-align:center;margin-top:24px;padding-top:16px;font-size:12px;line-height:16px}.auth-note p+p{margin-top:4px}.auth-footer{color:var(--text-subtlest);margin-top:24px;font-size:12px}.auth-loading{justify-content:center;padding:24px 0;display:flex}.auth-status{text-align:center;flex-direction:column;align-items:center;gap:12px;display:flex}.auth-status .auth-title{color:var(--text);margin-bottom:0}.auth-status p{color:var(--text-subtle)}.auth-status-icon,.auth-muted{color:var(--text-subtlest)}.auth-link{font-size:14px}.auth-confirm{border-radius:var(--radius-sm);background:#fff7d6;width:100%;padding:12px}.auth-status .auth-confirm p{color:var(--warning-text);margin-bottom:12px}.auth-confirm-actions{gap:8px;display:flex}.auth-confirm-actions>.btn-danger{flex:1}@media (width<=480px){.auth-page{justify-content:flex-start;padding-top:32px}.auth-card{padding:24px 20px}}.np-bar{border-bottom:1px solid var(--border);background:var(--brand-subtle);color:var(--text);flex-wrap:wrap;align-items:center;gap:8px 12px;padding:8px 16px;display:flex}.np-icon{color:var(--brand);flex:none}.np-text{flex:200px;min-width:0}.np-actions{gap:8px;margin-left:auto;display:flex}.board-page:has(.np-board){padding-top:calc(var(--app-header-h) + var(--board-hdr-h) + var(--np-bar-h,0px))}.board-top .np-bar :focus-visible{outline-color:var(--focus)}@media (width<=520px){.np-bar{padding:8px 12px}}.home-page{background:var(--page-bg);flex-direction:column;min-height:100%;display:flex}.home-container{gap:32px;width:100%;max-width:1100px;margin:0 auto;padding:40px 16px 48px;display:flex}.home-sidebar{flex:none;width:232px}.home-nav{flex-direction:column;gap:4px;display:flex;position:sticky;top:40px}.home-nav-item{border-radius:var(--radius);height:36px;color:var(--text);align-items:center;gap:10px;padding:0 10px;font-weight:500;transition:background-color 80ms,color 80ms;display:flex}.home-nav-item:hover{background:var(--subtle-hover);text-decoration:none}.home-nav-item.is-active{background:var(--brand-subtle);color:var(--brand)}.home-main{flex:1;min-width:0}.home-section-title{color:var(--text-subtle);text-transform:uppercase;align-items:center;gap:10px;margin-bottom:16px;font-size:16px;font-weight:700;line-height:24px;display:flex}.home-empty{color:var(--text-subtlest);margin:-4px 0 16px}.home-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px;margin:0;padding:0;list-style:none;display:grid}.home-tile{border-radius:var(--radius);height:96px;color:var(--text-inverse);background-size:cover;padding:8px 12px;display:block;position:relative;overflow:hidden}.home-tile:before,.home-tile:after{content:"";position:absolute;inset:0}.home-tile:before{background:linear-gradient(#0000005c 0,#00000052 60%,#00000029 100%)}.home-tile:after{background:0 0;transition:background-color .1s}.home-tile:hover{text-decoration:none}.home-tile:hover:after{background:#00000029}.home-tile-title{z-index:1;overflow-wrap:anywhere;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;font-size:16px;font-weight:700;line-height:20px;display:-webkit-box;position:relative;overflow:hidden}.home-tile-create{background:var(--neutral);width:100%;color:var(--text-subtle);text-align:center;border:0;justify-content:center;align-items:center;transition:background-color .1s;display:flex}.home-tile-create:before,.home-tile-create:after{display:none}.home-tile-create:hover,.home-tile-create[aria-expanded=true]{background:var(--neutral-hover)}.home-preview{border-radius:var(--radius-sm);width:200px;height:120px;margin:4px auto 0;transition:background .12s;overflow:hidden}.home-preview svg{display:block}.home-swatches{grid-template-columns:repeat(7,1fr);gap:6px;display:grid}.home-swatch{border-radius:var(--radius-sm);height:32px;color:var(--text-inverse);border:0;justify-content:center;align-items:center;padding:0;transition:filter 80ms;display:flex}.home-swatch:hover{filter:brightness(.88)}.home-title-field{margin-top:16px}.home-required{color:var(--text-danger)}.home-hint{color:var(--text-subtle);font-size:12px;line-height:16px}.home-create-btn{width:100%}@media (width<=900px){.home-sidebar{display:none}.home-container{padding:24px 16px 40px}}@media (width<=480px){.home-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}.home-tile{height:88px}}.cm-modal{animation:.12s ease-out cm-in}@keyframes cm-in{0%{opacity:0;transform:translateY(8px)}}.cm{border-radius:inherit;outline:none;padding:20px 16px 16px;position:relative}.cm-close{z-index:1;position:absolute;top:12px;right:12px}.cm-header{grid-template-columns:32px minmax(0,1fr);column-gap:8px;margin-bottom:20px;padding-right:40px;display:grid}.cm-check{border:2px solid var(--text-subtlest);width:20px;height:20px;color:var(--text-inverse);background:0 0;border-radius:50%;justify-content:center;justify-self:center;align-items:center;margin-top:6px;padding:0;transition:background-color .1s,border-color .1s,transform .1s;display:inline-flex}.cm-check:hover{border-color:var(--text);background:var(--subtle-hover)}.cm-check:active{transform:scale(.9)}.cm-check.is-done{border-color:var(--success);background:var(--success)}.cm-check.is-done:hover{border-color:var(--success-hover);background:var(--success-hover)}.cm-title{border-radius:var(--radius-sm);width:calc(100% + 8px);color:var(--text);overflow-wrap:anywhere;resize:none;background:0 0;border:0;outline:none;margin:0 0 0 -8px;padding:4px 8px;font-size:20px;font-weight:600;line-height:24px;transition:background-color 80ms;display:block;overflow:hidden}.cm-title:focus{background:var(--surface);box-shadow:inset 0 0 0 2px var(--focus)}.cm-inlist{color:var(--text-subtle);flex-wrap:wrap;grid-column:2;align-items:center;gap:6px;margin-top:4px;display:flex}.cm-inlist-btn{border-radius:var(--radius-sm);background:var(--neutral);max-width:100%;height:24px;color:var(--text);border:0;align-items:center;gap:2px;padding:0 4px 0 8px;font-weight:500;transition:background-color 80ms;display:inline-flex}.cm-inlist-btn:hover{background:var(--neutral-hover)}.cm-inlist-btn span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cm-body{grid-template-columns:minmax(0,1fr) 168px;gap:16px;display:grid}.cm-main{min-width:0}.cm-meta{flex-wrap:wrap;gap:16px 24px;margin:0 0 24px 40px;display:flex}.cm-meta-label,.cm-side-title{color:var(--text-subtle);font-size:12px;font-weight:600;line-height:16px}.cm-meta-label{margin-bottom:6px}.cm-members{flex-wrap:wrap;gap:4px;display:flex}.cm-round-btn{background:var(--neutral);width:32px;height:32px;color:var(--text-subtle);border:0;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:background-color 80ms;display:inline-flex}.cm-round-btn:hover{background:var(--neutral-hover);color:var(--text)}.cm-due-btn{gap:8px;padding-right:8px}.cm-due-chip{border-radius:var(--radius-sm);padding:0 4px;font-size:12px;font-weight:600;line-height:16px}.cm-due-overdue{background:var(--overdue-bg);color:var(--overdue-text)}.cm-due-due-soon{background:var(--warning-bg);color:var(--warning-text)}.cm-due-complete{background:var(--success);color:var(--text-inverse)}.cm-due-reminder{color:var(--text-subtle);align-items:center;gap:4px;margin-top:4px;font-size:12px;line-height:16px;display:flex}.cm-due-reminder svg{flex:none}.cm-section{margin-bottom:24px}.cm-section-head{grid-template-columns:32px minmax(0,1fr) auto;align-items:center;column-gap:8px;min-height:32px;margin-bottom:8px;display:grid}.cm-section-icon{color:var(--text-subtle);justify-self:center}.cm-section-title{font-size:16px;font-weight:600;line-height:20px}.cm-section-body{margin-left:40px}.cm-desc-placeholder{border-radius:var(--radius-sm);background:var(--neutral);width:100%;min-height:56px;color:var(--text);text-align:left;border:0;align-items:flex-start;padding:8px 12px;font-weight:500;transition:background-color 80ms;display:flex}.cm-desc-placeholder:hover{background:var(--neutral-hover)}.cm-desc{white-space:pre-wrap;overflow-wrap:anywhere}.cm-desc a{text-decoration:underline}.cm-desc-textarea{resize:vertical;min-height:108px}.cm-editor-actions{gap:4px;margin-top:8px;display:flex}.cm-att-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.cm-att{border-radius:var(--radius);grid-template-columns:112px minmax(0,1fr);align-items:center;gap:12px;margin:0 -4px;padding:4px;transition:background-color 80ms;display:grid}.cm-att:hover{background:var(--subtle-hover)}.cm-att-thumb{border-radius:var(--radius-sm);background:var(--neutral);justify-content:center;align-items:center;width:112px;height:80px;display:flex;overflow:hidden}a.cm-att-thumb:hover{text-decoration:none}.cm-att-thumb img{object-fit:cover;width:100%;height:100%;display:block}.cm-att-ext{letter-spacing:.5px;color:var(--text-subtle);font-size:16px;font-weight:700}.cm-att-info{flex-direction:column;gap:2px;min-width:0;display:flex}.cm-att-name{color:var(--text);overflow-wrap:anywhere;font-weight:600}.cm-att-meta,.cm-att-error,.cm-att-actions{font-size:12px;line-height:16px}.cm-att-meta{color:var(--text-subtle)}.cm-att-error{color:var(--text-danger)}.cm-att-actions{gap:12px;margin-top:2px;display:flex}.cm-att-actions a,.cm-att-actions button{color:var(--text-subtle);background:0 0;border:0;padding:0;font-size:12px;line-height:16px;text-decoration:underline}.cm-att-actions a:hover,.cm-att-actions button:hover{color:var(--text)}.cm-att-upload.is-failed .cm-att-thumb{background:var(--overdue-bg)}.cm-att-upload.is-failed .cm-att-ext{color:var(--overdue-text)}.cm-progress{background:var(--neutral-hover);border-radius:3px;max-width:240px;height:6px;margin-top:4px;overflow:hidden}.cm-progress-bar{border-radius:inherit;background:var(--brand);height:100%;transition:width .15s}.cm-att-empty{border:1px dashed var(--border-input);border-radius:var(--radius);width:100%;color:var(--text-subtle);text-align:center;background:0 0;padding:14px 12px;transition:background-color 80ms,color 80ms;display:block}.cm-att-empty:hover{background:var(--subtle-hover);color:var(--text)}.cm-sidebar{flex-direction:column;gap:8px;display:flex}.cm-side-title{margin-bottom:-4px}.cm-side-title:not(:first-child){margin-top:16px}.cm-side-danger:hover{background:var(--overdue-bg);color:var(--text-danger)}.cm-footer{color:var(--text-subtlest);margin:8px 0 0 40px;font-size:12px;line-height:16px}.cm-drop{z-index:2;border:2px dashed var(--brand);border-radius:inherit;color:var(--brand);pointer-events:none;background:#e9f2ffeb;justify-content:center;align-items:center;gap:8px;font-size:16px;font-weight:600;animation:.1s ease-out cm-fade;display:flex;position:absolute;inset:0}@keyframes cm-fade{0%{opacity:0}}.cm-member-list{margin:0 -4px;padding:0;list-style:none}.cm-member-row{border-radius:var(--radius-sm);text-align:left;background:0 0;border:0;align-items:center;gap:8px;width:100%;padding:4px;display:flex}.cm-member-row:hover{background:var(--subtle-hover)}.cm-member-text{flex-direction:column;flex:1;min-width:0;display:flex}.cm-member-name,.cm-member-email{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cm-member-email{color:var(--text-subtle);font-size:12px;line-height:16px}.cm-member-check{color:var(--text-subtle);flex:none}.cm-pop-empty{color:var(--text-subtle);padding:4px 0}.cm-quick-picks{flex-wrap:wrap;gap:4px;margin:4px 0 12px;display:flex}.cm-date-inputs{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:8px;display:grid}.cm-date-inputs .input{padding-right:4px}.cm-pop-hint{color:var(--text-subtle);font-size:12px;line-height:16px}.cm-pop-buttons{flex-direction:column;gap:8px;display:flex}.cm-confirm-text{margin-bottom:12px}.cm-btn-full{width:100%}@media (pointer:coarse),(width<=640px){.cm-att-actions{gap:4px;margin-left:-8px}.cm-att-actions a,.cm-att-actions button{border-radius:var(--radius-sm);align-items:center;min-height:36px;padding:0 8px;display:inline-flex}}@media (width<=720px){.cm-body{grid-template-columns:minmax(0,1fr)}.cm-sidebar{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));display:grid}.cm-side-title{grid-column:1/-1}.cm-side-title:not(:first-child){margin-top:8px}}@media (width<=640px){.modal-overlay:has(>.cm-modal){padding:0}.cm-modal{border-radius:0;min-height:100%}.cm{padding:16px 12px}.cm-meta,.cm-section-body,.cm-footer{margin-left:0}}.auto-panel{--auto-warn-bg:#fff7d6;--auto-warn-text:#7f5f01;top:var(--app-header-h);z-index:800;background:var(--surface);width:400px;max-width:100vw;box-shadow:var(--shadow-overlay);color:var(--text);outline:none;flex-direction:column;animation:.15s ease-out auto-slide-in;display:flex;position:fixed;bottom:0;right:0}@keyframes auto-slide-in{0%{transform:translate(100%)}}.auto-header{border-bottom:1px solid var(--border);flex:none;align-items:center;gap:8px;height:48px;padding:0 8px 0 16px;display:flex}.auto-header-icon{color:var(--text-subtle)}.auto-title{flex:1;font-size:16px;font-weight:600;line-height:20px}.auto-body{overscroll-behavior:contain;flex:1;padding:12px 16px 24px;overflow-y:auto}.auto-intro{color:var(--text-subtle);margin-bottom:16px}.auto-label{color:var(--text-subtle);font-size:12px;font-weight:700;line-height:16px}.auto-count{background:var(--neutral);text-align:center;border-radius:9px;min-width:18px;margin-left:6px;padding:0 5px;font-weight:600;display:inline-block}.auto-section-head{justify-content:space-between;align-items:center;gap:8px;min-height:28px;margin-bottom:8px;display:flex}.auto-footnote{color:var(--text-subtlest);margin-top:4px;font-size:12px;line-height:16px}.auto-rules{flex-direction:column;gap:8px;display:flex}.auto-rule{border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-card), inset 0 0 0 1px var(--border);padding:10px 12px 6px;transition:background-color .12s}.auto-rule-off{background:var(--surface-sunken)}.auto-rule-off .auto-rule-text{opacity:.55}.auto-rule-flash{animation:1.4s ease-out auto-flash}@keyframes auto-flash{0%{box-shadow:var(--shadow-card), inset 0 0 0 2px var(--focus)}}.auto-rule-top{align-items:flex-start;gap:12px;display:flex}.auto-rule-text{overflow-wrap:anywhere;flex:1;min-width:0;transition:opacity .12s}.auto-rule-trigger{font-weight:600}.auto-rule-actions{color:var(--text);margin:2px 0 0;padding-left:18px}.auto-rule-actions li::marker{color:var(--text-subtlest)}.auto-rule-footer{align-items:center;gap:2px;margin:6px -6px 0;display:flex}.auto-rule-footer .btn{color:var(--text-subtle);font-weight:500}.auto-rule-status{border-radius:var(--radius-sm);background:var(--neutral);text-transform:uppercase;color:var(--text-subtle);margin-left:auto;padding:0 6px;font-size:11px;font-weight:700;line-height:16px}.auto-warning{border-radius:var(--radius-sm);background:var(--auto-warn-bg);color:var(--auto-warn-text);align-items:flex-start;gap:6px;margin-top:8px;padding:6px 8px;font-size:12px;line-height:16px;display:flex}.auto-warning svg{flex:none;margin-top:1px}.auto-switch{background:var(--border-input);border:0;border-radius:10px;flex:none;width:32px;height:20px;margin-top:1px;padding:0;transition:background-color .12s;position:relative}.auto-switch:hover{background:var(--text-subtlest)}.auto-switch[aria-checked=true]{background:var(--success)}.auto-switch[aria-checked=true]:hover{background:var(--success-hover)}.auto-switch-thumb{background:#fff;border-radius:50%;width:14px;height:14px;transition:transform .12s;position:absolute;top:3px;left:3px;box-shadow:0 1px 1px #091e4240}.auto-switch[aria-checked=true] .auto-switch-thumb{transform:translate(12px)}.auto-confirm-text{color:var(--text-subtle);margin-bottom:12px}.auto-confirm-btn{justify-content:center}.auto-builder{border-radius:var(--radius-lg);background:var(--list-bg);margin-bottom:8px;padding:12px}.auto-builder-title{margin-bottom:8px;font-size:14px;font-weight:600}.auto-builder .select{height:32px;padding:4px 8px}.auto-step+.auto-step{margin-top:12px}.auto-step-label{color:var(--text-subtle);margin-bottom:6px;font-size:12px;font-weight:700;line-height:16px}.auto-box{border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-card);flex-direction:column;gap:6px;padding:8px;display:flex}.auto-action+.auto-action{margin-top:8px}.auto-sub{align-items:center;gap:8px;display:flex}.auto-sub-label{width:56px;color:var(--text-subtle);flex:none;font-size:12px}.auto-action-main{align-items:center;gap:4px;display:flex}.auto-action-remove{flex:none;width:28px;height:28px}.auto-move{grid-template-columns:minmax(0,1fr) 96px;gap:6px;display:grid}.auto-inline-warning{color:var(--auto-warn-text);align-items:flex-start;gap:6px;font-size:12px;line-height:16px;display:flex}.auto-inline-warning svg{flex:none;margin-top:2px}.auto-add-action{color:var(--text-subtle);margin-top:8px}.auto-builder .auto-add-action:hover:not(:disabled){background:var(--neutral-hover)}.auto-builder-footer{gap:4px;margin-top:12px;display:flex}.auto-builder-hint{color:var(--text-subtlest);margin-top:6px;font-size:12px;line-height:16px}.auto-empty{text-align:center;flex-direction:column;align-items:center;padding:16px 4px 0;display:flex}.auto-empty-icon{background:var(--brand-subtle);width:48px;height:48px;color:var(--brand);border-radius:50%;justify-content:center;align-items:center;margin-bottom:12px;display:flex}.auto-empty-title{margin-bottom:4px;font-size:16px;font-weight:600}.auto-empty-text{max-width:320px;color:var(--text-subtle);margin-bottom:16px}.auto-suggest-label{text-align:left;align-self:stretch;margin:24px 0 8px}.auto-suggestions{flex-direction:column;align-self:stretch;gap:6px;display:flex}.auto-chip{border-radius:var(--radius);background:var(--neutral);text-align:left;border:0;align-items:flex-start;gap:8px;padding:8px 12px;line-height:20px;transition:background-color 80ms;display:flex}.auto-chip:hover{background:var(--neutral-hover)}.auto-chip:active{background:var(--neutral-pressed)}.auto-chip-icon{color:var(--brand);flex:none;margin-top:3px}@media (width<=480px){.auto-panel{width:100vw}}@media (prefers-reduced-motion:reduce){.auto-panel,.auto-rule-flash{animation:none}.auto-switch-thumb{transition:none}}.board-pop-back{position:absolute;top:4px;left:6px}.board-pop-text{color:var(--text);margin:0 0 12px}.board-pop-confirm{width:100%}.board-hdr{background:var(--board-header-overlay);height:56px;color:var(--text-inverse);align-items:center;gap:8px;padding:12px 12px 12px 16px;display:flex}.board-hdr-title-wrap{min-width:0;font-size:18px;display:flex}.board-hdr-title{border-radius:var(--radius-sm);max-width:100%;height:32px;color:var(--text-inverse);text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;padding:0 10px;font-size:18px;font-weight:700;line-height:32px;transition:background-color 80ms;overflow:hidden}.board-hdr-title:hover{background:var(--on-board-hover)}.board-hdr-title-edit{min-width:0;max-width:100%;display:inline-grid}.board-hdr-title-edit:after,.board-hdr-title-input{grid-area:1/1/2/2;padding:0 10px;font-size:18px;font-weight:700;line-height:32px}.board-hdr-title-edit:after{content:attr(data-value) " ";visibility:hidden;white-space:pre;min-width:48px;overflow:hidden}.board-hdr-title-input{border-radius:var(--radius-sm);background:var(--surface);width:100%;min-width:0;height:32px;color:var(--text);box-shadow:inset 0 0 0 2px var(--focus);border:0;outline:none}.board-hdr-right{flex:none;align-items:center;gap:8px;margin-left:auto;display:flex}.board-hdr-members{align-items:center;margin-right:4px;display:flex}.board-hdr-avatar{box-shadow:0 0 0 2px #fff}.board-hdr-avatar+.board-hdr-avatar{margin-left:2px}.board-hdr-more{width:28px;height:28px;color:var(--text);cursor:default;background:#dcdfe4;border-radius:50%;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:inline-flex}.board-hdr-btn{border-radius:var(--radius-sm);height:32px;color:var(--text-inverse);white-space:nowrap;background:#00000029;border:0;align-items:center;gap:6px;padding:0 12px;font-weight:500;transition:background-color 80ms;display:inline-flex}.board-hdr-btn:hover{background:#0000003d}.board-hdr-btn[aria-expanded=true]{background:#00000052}.board-hdr-icon{justify-content:center;width:32px;padding:0}.board-menu-swatch{border-radius:var(--radius-sm);flex:none;width:24px;height:20px}.board-menu-colors{grid-template-columns:repeat(4,1fr);gap:8px;padding-top:4px;display:grid}.board-menu-color{border-radius:var(--radius);color:#fff;border:0;justify-content:center;align-items:center;height:44px;padding:0;transition:filter 80ms;display:flex}.board-menu-color:hover{filter:brightness(.88)}.board-menu-color[aria-pressed=true]{box-shadow:0 0 0 2px var(--surface), 0 0 0 4px var(--focus)}.board-access-note,.board-access-footer{color:var(--text-subtle);font-size:12px;line-height:16px}.board-access-empty{color:var(--text-subtle);margin-top:12px}.board-access-list{margin:0 -4px;padding:0;list-style:none}.board-access-row{border-radius:var(--radius-sm);cursor:pointer;align-items:center;gap:8px;padding:4px;display:flex}.board-access-row:hover{background:var(--subtle-hover)}.board-access-row input{width:16px;height:16px;accent-color:var(--brand);cursor:inherit;flex:none;margin:0 2px}.board-access-row input[aria-disabled=true]{opacity:.6}.board-access-fixed{cursor:default}.board-access-fixed:hover{background:0 0}.board-access-text{flex-direction:column;flex:1;min-width:0;display:flex}.board-access-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.board-access-sub{color:var(--text-subtle);font-size:12px;line-height:16px}.board-access-spin{color:var(--text-subtle);flex:none;animation:.9s linear infinite spin}.board-access-footer{border-top:1px solid var(--border);margin-top:12px;padding-top:8px}@media (width<=720px){.board-hdr-members{display:none}}@media (width<=520px){.board-hdr{padding-left:8px;padding-right:8px}.board-hdr-btn{padding:0 8px}.board-hdr-btn-label{display:none}}.board-autosize{min-width:0;display:grid}.board-autosize:after,.board-autosize>textarea{min-width:0;padding:var(--autosize-pad,6px 8px);font:inherit;white-space:pre-wrap;overflow-wrap:anywhere;border:0;grid-area:1/1/2/2;margin:0;line-height:20px}.board-autosize:after{content:attr(data-value) " ";visibility:hidden}.board-autosize>textarea{resize:none;outline:none;width:100%;min-height:0;display:block;overflow:hidden}.list-composer{padding-bottom:8px}.list-composer-card{--autosize-pad:8px 12px;border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-card)}.list-composer-card>textarea{border-radius:var(--radius);min-height:36px;color:var(--text);background:0 0}.list-composer-card:focus-within{box-shadow:var(--shadow-card), inset 0 0 0 2px var(--focus)}.list-composer-card>textarea::placeholder,.board-add-list-input::placeholder{color:var(--text-subtlest)}.list-composer-actions{align-items:center;gap:4px;margin-top:8px;display:flex}.board-add-list{width:var(--list-width);border-radius:var(--radius-lg);height:44px;color:var(--text-inverse);text-align:left;background:#0000005c;border:0;flex:none;align-items:center;gap:8px;padding:12px;font-weight:500;transition:background-color 80ms;display:flex}.board-add-list:hover{background:#00000070}.board-add-list:focus-visible{outline-offset:-4px;outline-color:#fff}.board-add-list-form{width:var(--list-width);border-radius:var(--radius-lg);background:var(--list-bg);box-shadow:var(--shadow-card);flex:none;padding:8px}.board-add-list-input.input{border-radius:var(--radius);height:32px;padding:6px 12px;font-weight:600}.card-item-wrap{border-radius:var(--radius);margin-bottom:8px}.card-item{border-radius:var(--radius);background:var(--surface);min-height:36px;box-shadow:var(--shadow-card);color:var(--text);cursor:pointer;padding:8px 12px;transition:transform .15s,box-shadow 80ms;position:relative}.card-item:hover{box-shadow:var(--shadow-card), inset 0 0 0 1px var(--border-input)}.card-item:focus-visible{box-shadow:var(--shadow-card), inset 0 0 0 2px var(--focus);outline:none}.card-item--dragging,.card-item--dragging:hover{cursor:grabbing;transform:rotate(4deg);box-shadow:0 12px 24px -4px #091e4247,0 0 1px #091e424f}.card-item-main{align-items:flex-start;display:flex}.card-item-check{color:#fff;opacity:0;width:0;height:16px;box-shadow:inset 0 0 0 1.5px var(--text-subtlest);background:0 0;border:0;border-radius:50%;flex:none;justify-content:center;align-items:center;margin:2px 0 0;padding:0;transition:width .12s,margin .12s,opacity .12s,background-color 80ms;display:inline-flex;overflow:hidden}.card-item:hover .card-item-check,.card-item:focus-within .card-item-check,.card-item--done .card-item-check{opacity:1;width:16px;margin-right:6px}.card-item-check:hover{box-shadow:inset 0 0 0 1.5px var(--text)}.card-item--done .card-item-check{background:var(--success);box-shadow:none}.card-item--done .card-item-check:hover{background:var(--success-hover)}.card-item-check:focus-visible{outline-offset:2px}@media (hover:none){.card-item .card-item-check,.card-item:hover .card-item-check,.card-item:focus-within .card-item-check{opacity:1;width:18px;height:18px;margin:1px 8px 0 0;position:relative;overflow:visible}.card-item-check:before{content:"";border-radius:50%;position:absolute;inset:-6px}}.card-item-title{overflow-wrap:anywhere;word-break:break-word;white-space:pre-wrap;flex:1;min-width:0}.card-item-meta{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:4px;margin-top:4px;display:flex}.card-item-badges{flex-wrap:wrap;align-items:center;gap:2px 4px;min-height:24px;display:flex}.card-item-badge{border-radius:var(--radius-sm);height:20px;color:var(--text-subtle);align-items:center;gap:4px;padding:0 4px;font-size:12px;line-height:16px;display:inline-flex}.card-item-spin{animation:.9s linear infinite spin}.card-item-due{padding:0 6px 0 4px}.card-item-due--complete{background:var(--success);color:var(--text-inverse)}.card-item-due--overdue{background:var(--overdue-bg);color:var(--overdue-text)}.card-item-due--due-soon{background:var(--warning-bg);color:var(--warning-text)}.card-item-members{flex-wrap:wrap;justify-content:flex-end;gap:2px;margin-left:auto;display:flex}.list-wrap{width:var(--list-width);flex-direction:column;flex:none;max-height:100%;margin-right:12px;display:flex}.list{border-radius:var(--radius-lg);background:var(--list-bg);min-height:0;max-height:100%;box-shadow:var(--shadow-card);color:var(--text);flex-direction:column;transition:transform .15s,box-shadow .15s;display:flex}.list--dragging{box-shadow:var(--shadow-raised);transform:rotate(2deg)}.list-header{border-radius:var(--radius-lg) var(--radius-lg) 0 0;flex:none;align-items:flex-start;gap:4px;padding:8px 8px 4px;display:flex}.list-header:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.list-title{overflow-wrap:anywhere;cursor:pointer;flex:1;min-width:0;padding:6px 8px 6px 12px;font-size:14px;font-weight:600;line-height:20px}.list-title-edit{--autosize-pad:6px 8px 6px 12px;flex:1;font-size:14px;font-weight:600}.list-title-edit>textarea{border-radius:var(--radius);background:var(--surface);box-shadow:inset 0 0 0 2px var(--focus);color:var(--text)}.list-menu-btn{flex:none}.list-cards{scrollbar-width:thin;scrollbar-color:var(--neutral-pressed) transparent;flex:auto;min-height:4px;margin:0 4px;padding:4px 4px 0;overflow:hidden auto}.board-page[data-card-drag] .list-cards:empty{min-height:calc(var(--drag-card-h) + 12px)}.list-footer{flex:none;padding:0 8px 8px}.list-add-card{border-radius:var(--radius);width:100%;height:32px;color:var(--text-subtle);text-align:left;background:0 0;border:0;align-items:center;gap:8px;padding:6px 8px;font-weight:500;transition:background-color 80ms;display:flex}.list-add-card:hover{background:var(--neutral-hover);color:var(--text)}.board-page[data-quick-select] .card-item:focus{box-shadow:var(--shadow-card), inset 0 0 0 2px var(--focus), 0 0 0 2px var(--focus);outline:none}.qs-hint{z-index:800;width:max-content;max-width:calc(100vw - 32px);box-shadow:var(--shadow-raised);color:#fff;pointer-events:none;background:#091e42e6;border-radius:16px;flex-wrap:wrap;justify-content:center;align-items:center;gap:2px 14px;padding:6px 14px;font-size:12px;line-height:20px;animation:.12s ease-out qs-hint-in;display:flex;position:fixed;bottom:16px;left:50%;transform:translate(-50%)}.qs-hint>*{white-space:nowrap}.qs-hint kbd{box-shadow:none;color:#fff;background:#ffffff29;margin-right:3px}@keyframes qs-hint-in{0%{opacity:0}}@media (width<=600px){.qs-hint-extra{display:none}}@media (width<=440px){.qs-hint{column-gap:10px;padding:6px 10px}.qs-hint>strong{display:none}}.board-page{--board-hdr-h:56px;isolation:isolate;height:100%;padding-top:calc(var(--app-header-h) + var(--board-hdr-h));flex-direction:column;display:flex;position:relative}.board-page[data-tone=light]{--header-overlay:#00000070;--board-header-overlay:#0006;--on-board-hover:#00000029}.board-top :focus-visible{outline-color:#fff}.board-bg{z-index:-1;position:fixed;inset:0}.board-top{z-index:10;position:fixed;top:0;left:0;right:0}.board-canvas{flex:1 1 0;align-items:flex-start;width:max-content;min-width:100%;min-height:0;padding:12px 12px 16px;display:flex}.board-lists{flex:1 0 auto;align-items:flex-start;height:100%;display:flex}.board-missing-page{background:var(--surface-sunken);min-height:100%}.board-missing{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:96px 16px;display:flex}.board-missing h1{font-size:24px;font-weight:600;line-height:28px}.board-missing p{color:var(--text-subtle)}.board-missing .btn:hover{text-decoration:none}@media (width<=520px){.board-canvas{padding:8px 8px 12px}}.access-picker{border:0;min-width:0;margin:0;padding:0}.access-legend{color:var(--text-subtle);margin-bottom:6px;padding:0;font-size:12px;font-weight:700;line-height:16px}.access-modes{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px;display:grid}.access-mode{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);cursor:pointer;align-items:flex-start;gap:8px;min-width:0;padding:8px 10px;transition:background-color 80ms,border-color 80ms;display:flex}.access-mode:hover{background:var(--surface-sunken)}.access-mode.is-checked{border-color:var(--brand);background:var(--brand-subtle);box-shadow:inset 0 0 0 1px var(--brand)}.access-mode input{width:16px;height:16px;accent-color:var(--brand);cursor:inherit;flex:none;margin:2px 0 0}.access-mode-text{flex-direction:column;min-width:0;display:flex}.access-mode-label{font-weight:600}.access-mode-hint{color:var(--text-subtlest);font-size:12px;line-height:16px}.access-picker:disabled .access-mode{cursor:not-allowed}.access-picker:disabled .access-mode:not(.is-checked){opacity:.55}.access-picker:disabled .access-mode:hover:not(.is-checked){background:var(--surface)}.access-note{color:var(--text-subtlest);align-items:flex-start;gap:6px;margin-top:6px;font-size:12px;line-height:16px;display:flex}.access-note svg{flex:none;margin-top:1px}.access-boards{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);margin-top:8px;animation:.12s ease-out access-in;overflow:hidden}.access-filter{padding:8px 8px 4px;position:relative}.access-filter-icon{color:var(--text-subtlest);pointer-events:none;position:absolute;top:17px;left:17px}.access-filter .access-filter-input{height:32px;padding-left:28px}.access-board-list{overscroll-behavior:contain;max-height:232px;margin:0;padding:4px;list-style:none;overflow-y:auto}.access-board{border-radius:var(--radius-sm);cursor:pointer;align-items:center;gap:8px;min-height:32px;padding:4px 6px;display:flex}.access-board:hover{background:var(--subtle-hover)}.access-board input{width:16px;height:16px;accent-color:var(--brand);cursor:inherit;flex:none;margin:0}.access-board.is-locked{cursor:default}.access-board.is-locked:hover{background:0 0}.access-swatch{border-radius:var(--radius-sm);flex:none;width:24px;height:16px}.access-board-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.access-board-tag{color:var(--text-subtlest);flex:none;font-size:12px;line-height:16px}.access-empty{color:var(--text-subtlest);padding:10px 12px}.access-count{border-top:1px solid var(--border);background:var(--surface-sunken);color:var(--text-subtlest);padding:6px 12px;font-size:12px;line-height:16px}@keyframes access-in{0%{opacity:0;transform:translateY(-4px)}}@media (prefers-reduced-motion:reduce){.access-boards{animation:none}}.members-header{border-bottom:1px solid var(--border);margin-bottom:24px;padding-bottom:16px}.members-header h1{align-items:center;gap:8px;font-size:20px;font-weight:600;line-height:24px;display:flex}.members-header p{color:var(--text-subtle);margin-top:4px}.members-count{background:var(--neutral);min-width:20px;height:20px;color:var(--text-subtle);border-radius:10px;justify-content:center;align-items:center;padding:0 6px;font-size:12px;font-weight:600;line-height:20px;display:inline-flex}.members-note{border-radius:var(--radius);background:var(--surface-sunken);color:var(--text-subtle);align-items:flex-start;gap:8px;margin-bottom:24px;padding:10px 12px;display:flex}.members-note svg{flex:none;margin-top:2px}.members-section{margin-bottom:32px}.members-section-title{align-items:center;gap:8px;margin-bottom:8px;font-size:16px;font-weight:600;line-height:24px;display:flex}.members-muted{color:var(--text-subtlest);flex-wrap:wrap;align-items:center;gap:8px;display:flex}.members-table-wrap{overflow-x:auto}.members-table{border-collapse:collapse;table-layout:fixed;width:100%}.members-table th{border-bottom:1px solid var(--border);color:var(--text-subtlest);text-align:left;padding:8px;font-size:12px;font-weight:600;line-height:16px}.members-table td{border-bottom:1px solid var(--border);vertical-align:middle;padding:10px 8px}.members-table tbody tr{transition:background-color 80ms}.members-table tbody tr:hover{background:var(--surface-sunken)}.members-col-role{width:128px}.members-col-access{width:168px}.members-col-date{width:112px;color:var(--text-subtle);white-space:nowrap}.members-col-actions{text-align:right;white-space:nowrap;width:228px}.members-action-btn+.members-action-btn{margin-left:6px}.members-user{align-items:center;gap:12px;min-width:0;display:flex}.members-user-text{min-width:0}.members-name,.members-email{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.members-name{font-weight:600}.members-you{color:var(--text-subtlest);font-weight:400}.members-email{color:var(--text-subtlest);font-size:12px;line-height:16px}.members-role-select{width:112px;height:32px;padding:4px 6px}.members-access,.members-access-btn{min-width:0;max-width:100%;color:var(--text-subtle);align-items:center;gap:6px;display:inline-flex}.members-access svg,.members-access-btn svg{flex:none}.members-access-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.members-access-btn{border:1px solid var(--border-input);border-radius:var(--radius-sm);background:var(--surface);height:32px;color:var(--text);text-align:left;padding:4px 6px 4px 8px;transition:background-color 80ms}.members-access-btn:hover{background:var(--surface-sunken)}.members-access-btn[aria-expanded=true]{border-color:var(--focus);box-shadow:inset 0 0 0 1px var(--focus)}.members-access-btn[aria-disabled=true]{opacity:.5;cursor:not-allowed}.members-access-chevron{color:var(--text-subtle);margin-left:auto}.members-access-form .access-board-list{max-height:200px}.members-access-actions{gap:8px;margin-top:12px;display:flex}.members-deactivated .members-section-title{color:var(--text-subtle)}.members-table tr.is-deactivated td,.members-table tr.is-deactivated .members-name{color:var(--text-subtlest)}.members-badge{border-radius:var(--radius-sm);letter-spacing:.2px;text-transform:uppercase;white-space:nowrap;padding:0 6px;font-size:11px;font-weight:700;line-height:20px;display:inline-block}.members-badge-owner{color:#5e4db2;background:#dfd8fd}.members-badge-admin{color:#05c;background:#cce0ff}.members-badge-member{background:var(--neutral);color:var(--text-subtle)}.members-confirm-text{color:var(--text-subtle);margin-bottom:12px}.members-confirm-btn{width:100%}.members-invite-panel{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);margin-bottom:32px;padding:16px 20px 20px}.members-invite-head{gap:12px;margin-bottom:16px;display:flex}.members-invite-head-icon{border-radius:var(--radius);background:var(--brand-subtle);width:36px;height:36px;color:var(--brand);flex:none;justify-content:center;align-items:center;display:flex}.members-invite-head h2{font-size:16px;font-weight:600;line-height:20px}.members-invite-head p{color:var(--text-subtlest);margin-top:2px}.members-invite-form{flex-wrap:wrap;align-items:flex-start;gap:8px;display:flex}.members-invite-form .members-invite-email{flex:999 220px;width:auto;height:36px}.members-invite-form .members-invite-email[aria-invalid=true]{border-color:var(--danger)}.members-invite-role{flex:120px;width:auto}.members-invite-access{flex-basis:100%;margin-top:4px}.members-invite-submit{height:36px;margin-top:4px}.members-invite-error{flex-basis:100%;margin:0}.members-link-box{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-sunken);margin-top:16px;padding:12px;animation:.15s ease-out members-in}.members-link-head{align-items:center;gap:8px;margin-bottom:8px;display:flex}.members-link-head>span{overflow-wrap:anywhere;flex:1;min-width:0}.members-link-ok{color:var(--success);flex:none}.members-link-detail{color:var(--text-subtle);overflow-wrap:anywhere;align-items:flex-start;gap:8px;margin:-4px 0 8px;display:flex}.members-link-detail svg{flex:none;margin:3px 1px 0}.members-link-dismiss{flex:none;width:28px;height:28px}.members-link-row{flex-wrap:wrap;gap:8px;display:flex}.members-link-row .members-link-input{width:auto;font-family:var(--font-mono);flex:260px;font-size:13px}.members-link-actions{flex:none;gap:8px;display:flex}.members-link-mail:hover{text-decoration:none}.members-link-note{color:var(--text-subtlest);margin-top:8px;font-size:12px;line-height:16px}@keyframes members-in{0%{opacity:0;transform:translateY(-4px)}}.members-invites{border-top:1px solid var(--border);margin:0;padding:0;list-style:none}.members-invite{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:10px 8px;display:flex}.members-invite-icon{background:var(--neutral);width:32px;height:32px;color:var(--text-subtle);border-radius:50%;flex:none;justify-content:center;align-items:center;display:flex}.members-invite-main{flex:1;min-width:0}.members-invite-email-text{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.members-invite-meta{color:var(--text-subtlest);font-size:12px;line-height:16px}.members-invite-actions{flex:none;gap:6px;display:flex}.members-invites-empty{border-top:1px solid var(--border);border-bottom:1px solid var(--border);min-height:58px;color:var(--text-subtlest);align-items:center;padding:0 8px;display:flex}.members-invites-loading .members-invite{animation:.9s ease-in-out infinite alternate members-pulse}.members-skel{background:var(--neutral-hover);vertical-align:middle;border-radius:6px;max-width:100%;height:12px;display:inline-block}.members-skel-email{width:200px}.members-skel-meta{width:150px;height:10px}.members-skel-btn{pointer-events:none;width:86px}.members-skel-btn+.members-skel-btn{width:66px}@keyframes members-pulse{to{opacity:.5}}@media (prefers-reduced-motion:reduce){.members-invites-loading .members-invite{animation:none}}.members-table-wrap{container:members-table/inline-size}@container members-table (width<=867px){.members-table.has-actions .members-col-date{display:none}}@container members-table (width<=719px){.members-table,.members-table tbody{display:block}.members-table thead,.members-table .members-col-date{display:none}.members-table tr{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:8px;padding:10px 8px 10px 52px;display:flex}.members-table td{border:0;padding:0}.members-table td:first-child{flex:calc(100% + 44px);min-width:0;margin-left:-44px}.members-table .members-col-role{width:auto}.members-table .members-role-select{width:100px}.members-table .members-col-access{width:auto;min-width:0;max-width:156px}.members-table .members-col-actions{width:auto;margin-left:auto}}@media (width<=640px){.members-invite-panel{padding:16px}.members-invite{flex-wrap:wrap}.members-invite-actions{justify-content:flex-end;width:100%}.members-link-actions{width:100%}.members-link-actions>*{flex:1}}.members-nowrap{white-space:nowrap}.members-access-changed{border-radius:var(--radius-sm);background:var(--warning-bg);color:var(--warning-text);align-items:flex-start;gap:6px;margin-top:10px;padding:6px 8px;font-size:12px;line-height:16px;display:flex}.members-access-changed svg{flex:none;margin-top:1px}
