:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--background-start:#222;--background-end:#070707;--background-page:radial-gradient(circle at top left, var(--background-start) 0%, var(--background-end) 100%);--text-primary:#f1f2f4;--text-secondary:#c5ccd4;--text-muted:#a5adb8;--border-primary:#fff;--border-width:2px;--radius-card:12px;--card-surface-rgb:85 85 85;--card-opacity:.15;--card-surface:rgb(var(--card-surface-rgb) / var(--card-opacity));--focus-outline:#f1f2f4;--ruby:#ed5466;--ruby-dark:#d9434e;--grapefruit:#ed5f55;--grapefruit-dark:#d94c43;--carrot:#f87d51;--carrot-dark:#e7663e;--pumpkin:#fab153;--pumpkin-dark:#f49b41;--sunflower:#fcce54;--sunflower-dark:#f5ba42;--avacado:#c3d368;--avacado-dark:#b0c151;--grass:#99d468;--grass-dark:#82c250;--emerald:#42cb6f;--emerald-dark:#3bb85d;--aqua:#47cec0;--aqua-dark:#3abdaf;--sapphire:#4ec2e7;--sapphire-dark:#3bb1d9;--jeans:#5c9ded;--jeans-dark:#4a8bdb;--indigo:#9398ec;--indigo-dark:#7277d5;--lavender:#cb93ec;--lavender-dark:#b377d7;--rose:#ec87bf;--rose-dark:#d870ad;--paper:#f1f2f4;--paper-dark:#e0e4e7;--concrete:#c5ccd4;--concrete-dark:#a5adb8;--asphalt:#606873;--asphalt-dark:#3e4750}*,:before,:after{box-sizing:border-box}html{background:var(--background-page);min-height:100%}body{background:var(--background-page);min-height:100vh;color:var(--text-primary);margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}button,input,textarea,select{font:inherit}button{cursor:pointer}a{color:inherit}img,svg{max-width:100%;display:block}:focus-visible{outline:2px solid var(--focus-outline);outline-offset:3px}.app-shell{min-height:100vh;padding:24px}.stack{flex-direction:column;gap:16px;display:flex}.cluster{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.grid{gap:16px;display:grid}.card{border:var(--border-width) solid var(--border-primary);border-radius:var(--radius-card);background:var(--card-surface);padding:16px}.card .card{background:rgb(var(--card-surface-rgb) / calc(var(--card-opacity) + .06))}.card .card .card{background:rgb(var(--card-surface-rgb) / calc(var(--card-opacity) + .12))}:root{--surface-shell:var(--background-end);--surface-column:#191b1e;--surface-card:#25282c;--surface-control:#2c3035;--border-subtle:#c5ccd426;--border-hover:#c5ccd459;--accent:var(--aqua);--radius-control:6px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px}html,body,#root{height:100%;min-height:100%}body{background:var(--background-end);font-size:14px}button,input,select,textarea{border:1px solid var(--border-subtle);border-radius:var(--radius-control);color:var(--text-primary);background:var(--surface-control);font-size:14px}button{justify-content:center;align-items:center;gap:6px;min-height:34px;padding:6px 10px;font-weight:500;display:inline-flex}button:hover:not(:disabled){background:var(--asphalt-dark);border-color:var(--border-hover)}button:disabled{opacity:.45;cursor:default}button.primary{background:var(--accent);color:var(--background-end);border-color:#0000;font-weight:650}button.primary:hover:not(:disabled){background:var(--aqua-dark)}button.selected,.tabs .selected{border-color:var(--accent);color:var(--accent)}button.icon-button{background:0 0;flex-shrink:0;min-width:34px;padding:6px}input,select,textarea{max-width:100%;min-height:36px;padding:8px 10px}textarea{resize:vertical;line-height:1.5}input[type=checkbox]{width:17px;height:17px;min-height:0;accent-color:var(--accent);flex-shrink:0;margin:0;padding:0}input[type=color]{width:56px;padding:3px}h1,h2,h3,p{margin:0}h1{font-size:20px;font-weight:650;line-height:1.35}h2{font-size:16px;font-weight:650}h3{margin-bottom:10px;font-size:14px;font-weight:650}.muted{color:var(--text-muted)}.small{font-size:12px}.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}.canban-app{background:var(--background-start);flex-direction:column;height:100dvh;display:flex;overflow:hidden}.app-header{border-bottom:1px solid var(--border-subtle);background:var(--surface-shell);flex-shrink:0;align-items:center;gap:12px;min-height:58px;padding:10px 20px;display:flex}.brand{letter-spacing:-.3px;align-items:center;gap:8px;font-size:17px;font-weight:700;text-decoration:none;display:flex}.brand svg{color:var(--accent)}.project-switch{width:260px}.project-switch select{width:100%}.header-spacer{flex:1}.user-switch{color:var(--text-muted);align-items:center;gap:8px;font-size:12px;display:flex}.user-switch select{font-size:12px}.board-toolbar{flex-shrink:0;justify-content:space-between;align-items:center;gap:20px;padding:18px 20px 14px;display:flex}.project-heading{min-width:0}.project-heading h1{overflow-wrap:anywhere}.project-heading p{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;max-width:560px;margin-top:4px;font-size:12px;overflow:hidden}.toolbar-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.filter-bar{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:8px;padding:0 20px 12px;display:flex}.filter-bar select{max-width:220px}.view-hint{color:var(--text-muted);padding:0 20px 10px;font-size:12px}.board-workspace{overscroll-behavior-x:contain;flex:1;align-items:stretch;gap:14px;min-height:0;padding:4px 20px 20px;display:flex;overflow:auto hidden}.board-column{border:1px solid var(--border-subtle);background:var(--surface-column);border-radius:10px;flex-direction:column;flex:0 0 292px;width:292px;min-height:170px;padding:10px;display:flex}.column-head{flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;padding:0 0 8px 4px;display:flex}.column-head h2{overflow-wrap:anywhere;flex-wrap:wrap;align-items:center;gap:6px;min-width:0;font-size:13px;display:flex}.column-head h2>svg{color:var(--emerald)}.count{color:var(--text-muted);padding:0 4px;font-size:12px;font-weight:400}.column-cards{scrollbar-width:thin;flex-direction:column;flex:1;gap:8px;min-height:0;padding:2px;display:flex;overflow-y:auto}.task-card{border:1px solid var(--border-subtle);background:var(--surface-card);border-radius:8px;flex-shrink:0;padding:10px}.task-card:hover{border-color:var(--border-hover)}.card-top{align-items:flex-start;gap:4px;display:flex}.card-open{text-align:left;background:0 0;border:0;flex:1;justify-content:flex-start;min-width:0;min-height:24px;padding:0;font-weight:450}.card-open:hover:not(:disabled){color:var(--paper);background:0 0;border:0}.task-title{overflow-wrap:anywhere;white-space:pre-wrap;line-height:1.45}.drag-handle{min-width:20px;min-height:24px;color:var(--text-muted);cursor:grab;touch-action:none;background:0 0;border:0;flex-shrink:0;padding:2px}.drag-handle:active{cursor:grabbing}.drag-handle:disabled{display:none}.card-labels{flex-wrap:wrap;gap:4px;margin-top:8px;display:flex}.label-chip{background:color-mix(in srgb,var(--label-colour) 15%,var(--surface-card));color:var(--label-colour);border:1px solid color-mix(in srgb,var(--label-colour) 35%,transparent);overflow-wrap:anywhere;border-radius:4px;max-width:100%;padding:1px 6px;font-size:11px;font-weight:600}.card-meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:11px;display:flex}.card-meta:not(:empty){margin-top:8px}.card-meta>span{align-items:center;gap:4px;display:flex}.date.overdue{color:var(--ruby)}.date.upcoming{color:var(--sunflower)}.avatars{gap:3px;margin-left:auto;display:flex}.avatar{background:var(--asphalt-dark);border:1px solid var(--border-hover);width:23px;height:23px;color:var(--text-secondary);border-radius:50%;justify-content:center;align-items:center;font-size:9px;font-weight:650;display:inline-flex}.column-empty{color:var(--text-muted);text-align:center;border:1px dashed var(--border-subtle);border-radius:6px;padding:22px 8px;font-size:12px}.add-task{color:var(--text-muted);background:0 0;border:0;flex-shrink:0;justify-content:flex-start;margin-top:8px}.quick-add{margin-top:10px}.quick-add textarea{width:100%}.quick-add .actions{margin-top:8px}.add-column{color:var(--text-muted);background:var(--card-surface);flex:0 0 160px;justify-content:flex-start;align-self:flex-start}.dragging{opacity:.7;border-color:var(--accent)}.drop-target,.column-target{border-color:var(--accent)}.notice{border-bottom:1px solid var(--border-subtle);color:var(--aqua);background:var(--surface-column);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:6px 20px;font-size:13px;display:flex}.error,.notice.error{color:var(--ruby)}.empty-state{text-align:center;color:var(--text-secondary);flex-direction:column;align-items:center;gap:16px;margin:auto;padding:28px;display:flex}.empty-state>svg{color:var(--text-muted)}.dialog{border:1px solid var(--border-hover);width:min(560px,100% - 32px);max-height:calc(100dvh - 40px);color:var(--text-primary);background:var(--surface-column);border-radius:12px;padding:20px;overflow:auto}.dialog::backdrop{background:#0000008c}.dialog-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.dialog>.dialog-head+p{margin-bottom:20px}.dialog.drawer{border-width:0 0 0 1px;border-radius:0;width:min(530px,95vw);max-width:none;height:100dvh;max-height:none;margin:0;padding:0;position:fixed;inset:0 0 0 auto;overflow:hidden}.drawer[open]{flex-direction:column;display:flex}.drawer .dialog-head{border-bottom:1px solid var(--border-subtle);flex-shrink:0;margin:0;padding:14px 20px}.editor-body{flex-direction:column;flex:1;min-height:0;display:flex;overflow-y:auto}.editor-fields{border:0;min-width:0;margin:0;padding:0}.editor-body>.editor-fields{flex-direction:column;gap:20px;padding:20px;display:flex}.field{flex-direction:column;gap:6px;min-width:0;margin-bottom:16px;display:flex}.editor-fields>.field,.field-grid>.field{margin:0}.field>span,.choices legend{color:var(--text-secondary);font-size:12px;font-weight:600}.field-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.title-input{font-size:19px;font-weight:600}.choices{border:0;flex-wrap:wrap;gap:8px;margin:0;padding:0;display:flex}.choices legend{margin-bottom:8px}.choice{border:1px solid var(--border-subtle);cursor:pointer;border-radius:6px;align-items:center;gap:7px;padding:7px 9px;font-size:12px;display:flex}.choice:has(input:checked){border-color:var(--accent)}.colour-dot{border-radius:50%;width:10px;height:10px}.note-links{flex-direction:column;gap:8px;display:flex}.note-links a{color:var(--sapphire);overflow-wrap:anywhere;gap:6px;font-size:12px;display:flex}.checklist-row{align-items:center;gap:5px;margin-bottom:8px;display:flex}.checklist-row input:not([type=checkbox]){flex:1;width:50px;min-width:0}.checklist-row .icon-button{min-width:27px;padding:3px}.checklist-row:has(input[type=checkbox]:checked) input:not([type=checkbox]){color:var(--text-muted);text-decoration:line-through}.inline-form{align-items:center;gap:8px;margin-top:10px;display:flex}.inline-form>input,.inline-form>.field{flex:1;min-width:0;margin:0}.actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.archive-button{color:var(--text-secondary);align-self:flex-start}.editor-footer{border-top:1px solid var(--border-subtle);background:var(--surface-column);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding:14px 20px;display:flex;position:sticky;bottom:0}.editor-footer>span{color:var(--text-muted);font-size:12px}.editor-body>.error,.conflict{border:1px solid var(--ruby);border-radius:6px;margin:16px 20px 0;padding:12px;font-size:12px}.conflict p{margin:8px 0}.conflict pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:250px;overflow:auto}.latest-task{white-space:pre-wrap;overflow-wrap:anywhere;max-height:260px;margin-top:10px;overflow:auto}.conflict button{margin-top:10px}.tabs{flex-wrap:wrap;gap:6px;margin-bottom:18px;display:flex}.settings-body{min-height:180px}.settings-row{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;padding-bottom:10px;display:flex}.settings-row>span{overflow-wrap:anywhere;min-width:0}.settings-edit{background:var(--surface-card);border-radius:8px;margin-top:20px;padding:16px}.settings-footer{border-top:1px solid var(--border-subtle);justify-content:space-between;align-items:center;gap:8px;margin-top:20px;padding-top:16px;display:flex}.swatches{flex-wrap:wrap;gap:6px;margin:0 0 16px;display:flex}.swatches button{border:2px solid #0000;border-radius:50%;width:28px;min-height:28px}.swatches button[aria-pressed=true]{border-color:var(--paper)}.archive-list{flex-direction:column;gap:10px;display:flex}.archive-list>button{text-align:left;overflow-wrap:anywhere;justify-content:space-between}@media (width<=760px){.app-header{flex-wrap:wrap;gap:8px;padding:8px 12px}.brand{font-size:16px}.project-switch{flex:1;width:auto;min-width:100px}.user-switch{justify-content:flex-end;width:100%}.user-switch select{min-height:30px;padding:4px 8px}.header-spacer{display:none}.board-toolbar{flex-direction:column;align-items:flex-start;gap:12px;padding:14px 12px 10px}.toolbar-actions{justify-content:flex-start;gap:6px;width:100%}.toolbar-actions button{min-height:40px}.toolbar-actions select{max-width:145px;min-height:40px}.project-heading{width:100%}.project-heading p{max-width:100%}.hide-small{display:none}.filter-bar{padding:0 12px 10px}.filter-bar label{flex:1;min-width:140px}.filter-bar select{width:100%;max-width:none}.view-hint{padding:0 12px 10px}.board-workspace{gap:12px;padding:4px 12px 12px}.board-column{flex-basis:min(300px,84vw);width:min(300px,84vw)}.drag-handle{min-width:26px;min-height:32px}.dialog.drawer{border:0;width:100%}.drawer .dialog-head{padding:12px 16px}.editor-body>.editor-fields{gap:18px;padding:16px}.editor-footer{padding:12px 16px}.dialog{padding:16px}.dialog button{min-height:40px}.checklist-row{flex-wrap:wrap;gap:4px}.checklist-row .icon-button{min-width:32px;min-height:36px}.notice{padding:4px 12px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.tag-group{border:1px solid var(--border-subtle);border-radius:8px;margin-bottom:12px;padding:8px}.tag-group .tag-row{padding-left:8px}.tag-settings .settings-row>:first-child{overflow-wrap:anywhere;min-width:0}.tag-settings .actions{flex-shrink:0}.initial-tag{margin-bottom:12px}.task-tags .choices{max-height:220px;overflow-y:auto}.tag-filter{border:1px solid var(--border-subtle);border-radius:6px;max-width:260px;padding:8px}.tag-filter summary{cursor:pointer}.tag-filter .choices{max-height:200px;margin-bottom:0;overflow-y:auto}.card-labels .label-chip{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.task-tags .choices{margin-bottom:12px}.sign-in-page{background:var(--background-end);place-items:center;min-height:100dvh;padding:24px;display:grid}.sign-in-panel{border:1px solid var(--border-subtle);background:var(--background-start);border-radius:12px;flex-direction:column;gap:16px;width:min(100%,400px);padding:24px;display:flex}.sign-in-panel h1{margin:0;font-size:20px}.sign-in-panel p{margin:0;line-height:1.5}.google-button{width:100%;min-height:44px;overflow:hidden}@media (width<=760px){.sign-in-page{padding:16px}.sign-in-panel{padding:20px}}.brand-image{object-fit:contain;flex:none;width:32px;height:32px}.sign-in-panel .brand-image{width:40px;height:40px}.project-heading h1{align-items:center;gap:8px;display:flex}.project-image{object-fit:contain;flex:none;width:28px;height:28px}.project-icon-settings{border-bottom:1px solid var(--border-subtle);margin-bottom:16px;padding-bottom:16px}.project-icon-settings h2{font-size:14px}.icon-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:8px;margin:12px 0;display:grid}.icon-grid button{flex-direction:column;gap:8px;min-width:0;padding:8px;display:flex}.icon-grid button[aria-pressed=true]{border-color:var(--aqua)}.icon-grid img{object-fit:contain;width:48px;height:48px}.icon-grid span{overflow-wrap:anywhere;font-size:12px}.icon-preview{flex-wrap:wrap;align-items:center;gap:12px;margin:12px 0;display:flex}.icon-preview img{object-fit:contain;border:1px solid var(--border-subtle);width:96px;height:96px}.project-icon-settings input[type=file]{max-width:100%}
