:root{--text:#172b4d;--text-subtle:#44546f;--text-muted:#626f86;--brand:#0c66e4;--brand-hover:#05c;--focus:#388bff;--list-bg:#f1f2f4;--surface:#fff;--neutral:#091e420f;--neutral-hover:#091e4224;--shadow-card:0 1px 1px #091e4240, 0 0 1px #091e424f;--shadow-overlay:0 8px 12px #091e4226, 0 0 1px #091e424f;--danger:#c9372c;--success:#1f845a;--danger-text:#ae2e24;--danger-bg:#ffeceb;--page:#fff;--login-bg:#fafbfc;--on-brand:#fff;--on-danger:#fff;--on-success:#fff;--surface-overlay:#fff;--line:#091e4224;--line-subtle:#091e420f;--cell-tint:#091e4208;--row-hover:#f7f8f9;--table-head:#f1f2f4;--input-border:#8590a2;--avatar-bg:#dcdfe4;--avatar-text:#172b4d;--kbd-bg:#f1f2f4;--quick-action:#f1f2f4;--quick-action-hover:#dcdfe4;--backdrop:#091e427d;--shadow-login:0 0 10px #091e421a;--label-none:#dcdfe4;--label-text:#172b4d;--label-text-strong:#fff;--label-green:#4bce97;--label-green-dark:#1f845a;--label-green-light:#baf3db;--label-yellow:#f5cd47;--label-yellow-dark:#946f00;--label-yellow-light:#f8e6a0;--label-orange:#fea362;--label-orange-dark:#c25100;--label-orange-light:#fedec8;--label-red:#f87168;--label-red-dark:#c9372c;--label-red-light:#ffd5d2;--label-purple:#9f8fef;--label-purple-dark:#6e5dc6;--label-purple-light:#dfd8fd;--label-blue:#579dff;--label-blue-dark:#0c66e4;--label-blue-light:#cce0ff;--label-sky:#6cc3e0;--label-sky-dark:#227d9b;--label-sky-light:#c6edfb;--label-lime:#94c748;--label-lime-dark:#5b7f24;--label-lime-light:#d3f1a7;--label-pink:#e774bb;--label-pink-dark:#ae4787;--label-pink-light:#fdd0ec;--label-black:#8590a2;--label-black-dark:#626f86;--label-black-light:#dcdfe4;--board-bg:linear-gradient(135deg, #0c66e4, #6e5dc6);--list-width:272px;--gap:8px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--text);background:var(--page);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Droid Sans,Helvetica Neue,sans-serif;font-size:14px;line-height:20px}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--text:#b6c2cf;--text-subtle:#9fadbc;--text-muted:#8c9bab;--brand:#579dff;--brand-hover:#85b8ff;--focus:#85b8ff;--list-bg:#101204;--surface:#22272b;--neutral:#a1bdd914;--neutral-hover:#a6c5e229;--shadow-card:0 1px 1px #03040480, 0 0 1px #03040480;--shadow-overlay:0 8px 12px #0304045c, 0 0 1px #03040480;--danger:#f87168;--success:#4bce97;--danger-text:#fd9891;--danger-bg:#42221f;--page:#1d2125;--login-bg:#1d2125;--on-brand:#1d2125;--on-danger:#1d2125;--on-success:#1d2125;--surface-overlay:#282e33;--line:#a6c5e229;--line-subtle:#a1bdd914;--cell-tint:#a1bdd908;--row-hover:#2c333a;--table-head:#1d2125;--input-border:#738496;--avatar-bg:#454f59;--avatar-text:#dee4ea;--kbd-bg:#454f59;--quick-action:#2c333a;--quick-action-hover:#454f59;--backdrop:#0009;--shadow-login:0 0 10px #03040480;--label-none:#454f59;--label-text:#dee4ea;--label-text-strong:#1d2125;--label-green:#216e4e;--label-green-dark:#4bce97;--label-green-light:#164b35;--label-yellow:#7f5f01;--label-yellow-dark:#e2b203;--label-yellow-light:#533f04;--label-orange:#a54800;--label-orange-dark:#fea362;--label-orange-light:#702e00;--label-red:#ae2e24;--label-red-dark:#f87168;--label-red-light:#5d1f1a;--label-purple:#5e4db2;--label-purple-dark:#9f8fef;--label-purple-light:#352c63;--label-blue:#05c;--label-blue-dark:#579dff;--label-blue-light:#09326c;--label-sky:#206a83;--label-sky-dark:#6cc3e0;--label-sky-light:#164555;--label-lime:#4c6b1f;--label-lime-dark:#94c748;--label-lime-light:#37471f;--label-pink:#943d73;--label-pink-dark:#e774bb;--label-pink-light:#50253f;--label-black:#596773;--label-black-dark:#8c9bab;--label-black-light:#454f59}*{box-sizing:border-box}body{margin:0}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}button,.button{font:inherit;background:var(--neutral);color:var(--text);cursor:pointer;border:0;border-radius:3px;justify-content:center;align-items:center;gap:6px;padding:6px 12px;font-weight:500;text-decoration:none;display:inline-flex}button:hover,.button:hover{background:var(--neutral-hover)}button:disabled{cursor:default;opacity:.6}button.primary,.button.primary{background:var(--brand);color:var(--on-brand)}button.primary:hover,.button.primary:hover{background:var(--brand-hover)}.subtle,.icon-button{color:var(--text-subtle);background:0 0}.icon-button{padding:4px}.on-dark{color:#fff;background:#fff3}.on-dark:hover{background:#ffffff4d}input,select,textarea{font:inherit;color:var(--text);background:var(--surface);box-shadow:inset 0 0 0 1px var(--input-border);border:0;border-radius:3px;padding:8px 12px}input:focus,select:focus,textarea:focus{box-shadow:inset 0 0 0 2px var(--focus);outline:none}.visually-hidden{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.board-page{background:var(--board-bg);background-attachment:fixed;min-height:100vh}.app-header{align-items:center;gap:4px;height:48px;padding:0 12px;display:flex}.app-header-board{color:#fff;background:#1d2125cc}.app-header-light{background:var(--page);color:var(--text-subtle);border-bottom:1px solid var(--line)}.app-header .spacer{flex:1}.app-header nav{gap:4px;display:flex}.logo{color:inherit;border-radius:3px;align-items:center;gap:6px;margin:0 4px 0 0;padding:4px 6px;font-size:17px;font-weight:700;text-decoration:none;display:inline-flex}.app-header-light .logo{color:var(--brand)}.logo-mark{background:currentColor;border-radius:3px;width:16px;height:16px;position:relative}.logo-mark:before,.logo-mark:after{content:"";background:#1d2125;border-radius:1px;width:4px;position:absolute;top:3px}.app-header-light .logo-mark:before,.app-header-light .logo-mark:after{background:var(--page)}.logo-mark:before{height:9px;left:3px}.logo-mark:after{height:5px;right:3px}.board-bar{color:#fff;background:#0000003d;flex-wrap:wrap;align-items:center;gap:8px;min-height:52px;padding:8px 12px;display:flex}.board-bar h1{overflow-wrap:anywhere;margin:0 8px 0 0;font-size:18px;font-weight:700}.boards{padding:24px 32px 32px}.eyebrow{color:var(--text-subtle);text-transform:uppercase;margin:0 0 16px;font-size:12px;font-weight:600}.workspace-head{align-items:center;gap:12px;margin-bottom:12px;display:flex}.workspace-head h2{overflow-wrap:anywhere;margin:0;font-size:16px;font-weight:700}.workspace-icon{width:32px;height:32px;color:var(--on-success);background:linear-gradient(#4bce97,#1f845a);border-radius:4px;flex:none;place-items:center;font-size:16px;font-weight:700;display:grid}.board-group ul{grid-template-columns:repeat(auto-fill,194px);gap:16px;margin:0 0 28px;padding:0;list-style:none;display:grid}.board-tile{background:var(--board-bg);color:#fff;overflow-wrap:anywhere;isolation:isolate;border-radius:8px;height:96px;padding:8px 10px;font-size:16px;font-weight:700;text-decoration:none;display:block;position:relative;overflow:hidden}.board-tile:after{content:"";z-index:-1;background:#00000026;position:absolute;inset:0}.board-tile:hover:after{background:#00000040}.login{background:var(--login-bg);place-items:center;min-height:100vh;padding:16px;display:grid}.login-box{background:var(--surface);width:min(360px,100%);box-shadow:var(--shadow-login);text-align:center;border-radius:3px;margin:0 auto;padding:32px 40px}.login-box h2{color:var(--text-subtle);margin:0 0 20px;font-size:16px;font-weight:600}.login-box button,.login-box .button{width:100%;padding:10px}.login-logo{color:var(--brand);justify-content:center;margin:0 0 16px;font-size:26px}.login-logo .logo-mark{width:24px;height:24px}.login-logo .logo-mark:before,.login-logo .logo-mark:after{background:var(--surface);width:6px;top:4px}.login-logo .logo-mark:before{height:14px;left:4px}.login-logo .logo-mark:after{height:8px;right:4px}button.link-button{color:var(--brand);background:0 0;padding:0;font-weight:400}button.link-button:hover{background:0 0;text-decoration:underline}.login-box .link-button,.login-box .copy-button{width:auto}.login-key-status{color:var(--text-subtle);margin:12px 0 0;font-size:13px}.login-own-key{margin-top:16px;font-size:13px}.login-box.own-key{text-align:left;width:min(480px,100%);line-height:1.5}.own-key h1{margin:12px 0 8px;font-size:20px}.own-key-intro,.own-key-note,.own-key-privacy{color:var(--text-subtle)}.own-key-intro{margin:0 0 12px}.own-key-steps{margin:0 0 16px;padding-left:20px}.own-key-steps li+li{margin-top:6px}.own-key-steps a{color:var(--brand)}.own-key-origin{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.own-key-origin code{background:var(--list-bg);overflow-wrap:anywhere;border-radius:3px;padding:2px 6px}.login-box .copy-button{padding:2px 8px;font-size:12px}.copy-status{color:var(--text-subtle);font-size:12px}.own-key h1:focus{outline:none}.own-key label{margin-bottom:4px;font-weight:600;display:block}.own-key input{box-sizing:border-box;width:100%}.own-key input[aria-invalid=true]{box-shadow:inset 0 0 0 2px var(--danger)}.own-key-privacy{margin:6px 0 12px;font-size:12px}.own-key-error{color:var(--danger-text);margin:0 0 12px}.login-box .forget-key{margin-top:8px}.own-key-note{margin:12px 0 0;font-size:12px}.notice{background:var(--danger-bg);color:var(--danger-text);text-align:left;border-radius:3px;margin:0 0 16px;padding:8px 12px}.error-panel{margin-top:48px}.loading{color:var(--text-muted);text-align:center;margin:48px auto}.board-page .loading{color:#fff}.board{align-items:flex-start;gap:12px;min-height:calc(100vh - 100px);padding:12px;display:flex;overflow-x:auto}.list{flex:0 0 var(--list-width);width:var(--list-width);background:var(--list-bg);box-shadow:var(--shadow-card);border-radius:12px;padding:8px 0 4px}.list-header{align-items:center;gap:4px;padding:4px 8px 4px 12px;display:flex}.list-header h2{overflow-wrap:anywhere;flex:1;min-width:0;margin:0;font-size:14px;font-weight:600}.count{color:var(--text-muted)}.list-table-link{border-radius:8px;width:32px;height:32px;padding:0}.cards{flex-direction:column;gap:8px;min-height:8px;margin:0;padding:4px 8px;list-style:none;display:flex}.card{background:var(--surface);box-shadow:var(--shadow-card);border-radius:8px;padding:8px 12px 4px}.card:hover{outline:2px solid var(--focus)}.card>.labels{max-width:100%;margin-bottom:4px;display:flex}.card-top,.card-bottom{justify-content:space-between;align-items:flex-start;gap:4px;display:flex}.card-top{margin-bottom:4px}.card-bottom{flex-wrap:wrap;align-items:center}.card-bottom>*{margin-bottom:4px}.card-name{overflow-wrap:anywhere;min-width:0}.card-name a{color:var(--text);text-decoration:none}.card .icon-button{opacity:0}.card:hover .icon-button,.card.selected .icon-button,.card:focus-within .icon-button{opacity:1}.icon-button:hover{background:var(--neutral-hover)}.name-input{width:100%;min-height:3em;box-shadow:var(--shadow-card);resize:vertical;border-radius:8px;display:block}.add-card{width:calc(100% - 16px);color:var(--text-subtle);background:0 0;border-radius:8px;justify-content:flex-start;margin:4px 8px;padding:6px 8px}.add-card:hover{background:var(--neutral-hover)}.list>.name-input{width:calc(100% - 16px);margin:4px 8px}.labels,.members,.icons{flex-wrap:wrap;gap:4px;display:inline-flex}.members{gap:2px}.label{text-overflow:ellipsis;white-space:nowrap;min-width:56px;max-width:100%;height:16px;color:var(--label-text);background:var(--label-none);cursor:pointer;border-radius:4px;padding:0 8px;font-size:12px;font-weight:500;line-height:16px;overflow:hidden}.labels-collapsed .label{width:40px;min-width:0;height:8px;padding:0}.label-green{background:var(--label-green)}.label-green.label-dark{background:var(--label-green-dark);color:var(--label-text-strong)}.label-green.label-light{background:var(--label-green-light)}.label-yellow{background:var(--label-yellow)}.label-yellow.label-dark{background:var(--label-yellow-dark);color:var(--label-text-strong)}.label-yellow.label-light{background:var(--label-yellow-light)}.label-orange{background:var(--label-orange)}.label-orange.label-dark{background:var(--label-orange-dark);color:var(--label-text-strong)}.label-orange.label-light{background:var(--label-orange-light)}.label-red{background:var(--label-red)}.label-red.label-dark{background:var(--label-red-dark);color:var(--label-text-strong)}.label-red.label-light{background:var(--label-red-light)}.label-purple{background:var(--label-purple)}.label-purple.label-dark{background:var(--label-purple-dark);color:var(--label-text-strong)}.label-purple.label-light{background:var(--label-purple-light)}.label-blue{background:var(--label-blue)}.label-blue.label-dark{background:var(--label-blue-dark);color:var(--label-text-strong)}.label-blue.label-light{background:var(--label-blue-light)}.label-sky{background:var(--label-sky)}.label-sky.label-dark{background:var(--label-sky-dark);color:var(--label-text-strong)}.label-sky.label-light{background:var(--label-sky-light)}.label-lime{background:var(--label-lime)}.label-lime.label-dark{background:var(--label-lime-dark);color:var(--label-text-strong)}.label-lime.label-light{background:var(--label-lime-light)}.label-pink{background:var(--label-pink)}.label-pink.label-dark{background:var(--label-pink-dark);color:var(--label-text-strong)}.label-pink.label-light{background:var(--label-pink-light)}.label-black{background:var(--label-black)}.label-black.label-dark{background:var(--label-black-dark);color:var(--label-text-strong)}.label-black.label-light{background:var(--label-black-light)}.member{background:var(--avatar-bg);width:24px;height:24px;color:var(--avatar-text);border-radius:50%;place-items:center;font-size:11px;font-weight:600;display:inline-grid}.badge{height:24px;color:var(--text-subtle);white-space:nowrap;border-radius:3px;padding:2px;font-size:12px}.due-overdue{color:var(--on-danger);background:var(--danger);padding:2px 4px}.due-complete,.badge.done{color:var(--on-success);background:var(--success);padding:2px 4px}dialog{color:var(--text);border:0}dialog::backdrop{background:var(--backdrop)}.popover-panel{background:var(--surface-overlay);box-shadow:var(--shadow-overlay);color:var(--text);border:0;border-radius:8px;padding:12px}.menu{width:220px}.theme-row{cursor:pointer;border-radius:3px;align-items:center;gap:10px;padding:8px;display:flex}.theme-row:hover{background:var(--neutral)}.theme-row input{box-shadow:none;margin:0}.theme-row input:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.theme-swatch{border:1px solid var(--line);border-radius:3px;width:36px;height:26px}.theme-swatch-light{background:#f1f2f4}.theme-swatch-dark{background:#1d2125}.theme-swatch-system{background:linear-gradient(90deg,#f1f2f4 50%,#1d2125 50%)}.popover-head{grid-template-columns:32px 1fr 32px;align-items:center;margin-bottom:8px;display:grid}.popover-title{color:var(--text-subtle);text-align:center;white-space:nowrap;grid-column:2;margin:0;font-size:14px;font-weight:600}.popover-close{border-radius:8px;grid-column:3;width:32px;height:32px;padding:0}.label-picker{width:260px}.label-picker-empty{color:var(--text-subtle);margin:0;font-size:14px}.label-row{text-align:left;cursor:pointer;border:0;border-radius:3px;justify-content:space-between;align-items:center;gap:8px;width:100%;max-width:none;height:32px;padding:0 12px;font-size:14px;font-weight:600;line-height:32px;display:flex}.label-row+.label-row{margin-top:4px}.label-row-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.label-row[aria-checked=true]:after{content:"✓";flex:none}.menu-action{justify-content:flex-start;gap:8px;width:100%}.menu-action+.menu-action{margin-top:8px}.move-dialog{width:min(304px,100vw - 16px)}.move-dialog form{gap:12px;display:grid}.move-dialog label{color:var(--text-subtle);gap:4px;font-size:12px;font-weight:700;display:grid}.move-dialog select{font-size:14px;font-weight:400}.dialog-buttons{gap:var(--gap);display:flex}.table-view{padding:12px}.table{background:var(--surface);box-shadow:var(--shadow-card);border-radius:12px;grid-template-columns:max-content minmax(0,1fr) max-content max-content max-content;display:grid;overflow:hidden}.table-body,.table-row{grid-column:1/-1;grid-template-columns:subgrid;display:grid}.table-row{border-bottom:1px solid var(--line)}.table-row>*{padding:3px 12px}.table-row>:is([role=cell],[role=columnheader]):not(:first-child,:nth-child(5)){border-left:1px solid var(--line-subtle)}.table-row>:is([role=cell],[role=columnheader]):is(:nth-child(2),:nth-child(4)){background:var(--cell-tint)}.table-row:hover{background:var(--row-hover)}.table-head,.table-head:hover{color:var(--text-subtle);background:var(--table-head);border-bottom:2px solid var(--line);font-size:12px;font-weight:600}.table .labels{grid-template-columns:repeat(3,max-content);margin-top:2px;display:grid}.table .label{max-width:160px}.table-add{grid-column:1/-1;padding:4px 0}.table-add .add-card{width:calc(100% - 8px);margin:0 4px}.table-add .name-input{width:calc(100% - 16px);margin:4px 8px}.table-row:not(.table-head) .icon-button{opacity:0}.table-row .icon-button{vertical-align:top;padding:2px}.table-row>[role=cell]>*{vertical-align:top}.table .member{width:20px;height:20px;font-size:10px}.table .badge{height:20px}.table-row:hover .icon-button,.table-row.selected .icon-button,.table-row:focus-within .icon-button{opacity:1}.toast{z-index:10;background:var(--surface-overlay);width:min(340px,100vw - 48px);box-shadow:var(--shadow-overlay);color:var(--text);border-radius:3px;align-items:flex-start;gap:12px;padding:16px;display:flex;position:fixed;bottom:24px;left:24px}.toast-success .icon{color:var(--success)}.toast-error .icon{color:var(--danger)}.toast-body{overflow-wrap:anywhere;justify-items:start;gap:8px;min-width:0;display:grid}.toast-action{color:var(--brand);background:0 0;padding:0}.toast-action:hover{background:0 0;text-decoration:underline}@media (hover:none){.card .icon-button,.table-row:not(.table-head) .icon-button{opacity:1}}@media (width<=767px){.board{scroll-snap-type:x mandatory;padding:var(--gap) 0;gap:0}.list{scroll-snap-align:start;border-radius:0;flex-basis:100vw;width:100vw}.table-view{padding:0}.table{border-radius:0;grid-template-columns:fit-content(22%) minmax(120px,1fr) max-content fit-content(26%) max-content}.table-row>*{padding:4px 6px}.table .labels{grid-template-columns:minmax(0,max-content)}.table .label{min-width:0}.boards{padding:16px}.board-group ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.app-header{padding:0 8px}.app-header .button,.app-header button{padding:6px 8px}.theme-button-text{display:none}}.card.selected,.table-row.selected{outline:2px solid var(--focus)}.table-row.selected{outline-offset:-2px}.row-composer{grid-column:1/-1}.quick-edit{background:0 0;padding:0;overflow:visible}.quick-edit-body{align-items:flex-start;gap:8px;display:flex}.quick-edit-main{justify-items:start;gap:8px;display:grid}.quick-edit-card{background:var(--surface);width:256px;box-shadow:var(--shadow-card);border-radius:8px;padding:8px 12px}.quick-edit-card .labels{margin-bottom:4px}.quick-edit-card textarea{width:100%;box-shadow:none;resize:none;padding:0;display:block}.quick-edit-actions{gap:4px;display:grid}.quick-edit-actions button{background:var(--quick-action);justify-content:flex-start}.quick-edit-actions button:hover{background:var(--quick-action-hover)}.shortcuts{background:var(--surface);box-shadow:var(--shadow-overlay);border-radius:8px;padding:20px 24px}.shortcuts h2{margin:0 0 12px;font-size:20px;font-weight:500}.shortcuts table{border-collapse:collapse;margin-bottom:12px}.shortcuts th,.shortcuts td{text-align:left;vertical-align:top;padding:4px 16px 4px 0;font-weight:400}.shortcuts th{white-space:nowrap}kbd{background:var(--kbd-bg);min-width:20px;box-shadow:inset 0 -1px 0 var(--line);font:inherit;color:var(--text-subtle);text-align:center;border-radius:3px;padding:0 6px;font-size:12px;display:inline-block}.icon{flex:none;width:16px;height:16px}.badge{align-items:center;gap:2px;display:inline-flex}
