*{box-sizing:border-box}body,html{min-height:100%;min-height:100svh;min-height:100dvh;height:100svh;height:100dvh}:root{--ui-accent-rgb:109 183 255;--ui-white-02:rgba(255,255,255,0.02);--ui-white-03:rgba(255,255,255,0.03);--ui-white-04:rgba(255,255,255,0.04);--ui-white-06:rgba(255,255,255,0.06);--ui-white-08:rgba(255,255,255,0.08);--ui-white-10:rgba(255,255,255,0.1);--ui-white-12:rgba(255,255,255,0.12);--ui-white-15:rgba(255,255,255,0.15);--ui-white-16:rgba(255,255,255,0.16);--ui-white-18:rgba(255,255,255,0.18);--ui-bg:#121216;--ui-surface:rgba(16,16,20,0.84);--ui-surface-strong:rgba(18,18,22,0.9);--ui-border:rgba(var(--ui-accent-rgb),0.25);--ui-border-soft:var(--ui-white-08);--ui-text:#f7f6ef;--ui-muted:#b5b3a8;--ui-accent:rgb(var(--ui-accent-rgb));--ui-accent-ink:#0b1420;--ui-danger:#ff7a7a;--ui-shadow:none;--ui-ink-96:rgba(10,10,12,0.96);--ui-ink-95:rgba(10,10,12,0.95);--ui-ink-92:rgba(12,12,14,0.92);--ui-ink-90:rgba(10,10,12,0.9);--ui-ink-85:rgba(8,8,10,0.85);--ui-ink-82:rgba(12,12,14,0.82);--ui-ink-80:rgba(12,12,14,0.8);--ui-ink-70:rgba(12,12,14,0.7);--ui-ink-65:rgba(12,12,14,0.65);--ui-ink-60:rgba(12,12,14,0.6);--ui-ink-55:rgba(10,10,12,0.55);--ui-ink-40:rgba(12,12,14,0.4);--ui-grid-small-color:rgba(255,255,255,0.16);--ui-grid-large-color:rgba(255,255,255,0.1);--ui-bg-image:url(/brand/bright-palette.jpeg);--ui-bg-image-filter:blur(32px) saturate(140%) brightness(0.55);--ui-bg-overlay:rgba(6,6,8,0.52);--ui-glass-bg:rgba(14,14,18,0.38);--ui-glass-border:rgba(255,255,255,0.16);--ui-glass-gradient:linear-gradient(135deg,rgba(255,255,255,0.14),rgba(255,255,255,0.01));--ui-glass-shadow:0 22px 50px rgba(0,0,0,0.35),inset 0 1px 0 rgba(255,255,255,0.12);--ui-board-bg:#0c0c0e;--ui-board-blend:normal;--ui-danger-rgb:255 122 122}html[data-theme=light]{--ui-accent-rgb:59 74 81;--ui-white-02:rgba(60,76,84,0.02);--ui-white-03:rgba(60,76,84,0.03);--ui-white-04:rgba(60,76,84,0.04);--ui-white-06:rgba(60,76,84,0.06);--ui-white-08:rgba(60,76,84,0.08);--ui-white-10:rgba(60,76,84,0.1);--ui-white-12:rgba(60,76,84,0.12);--ui-white-15:rgba(60,76,84,0.15);--ui-white-16:rgba(60,76,84,0.16);--ui-white-18:rgba(60,76,84,0.18);--ui-bg:#f6f4ea;--ui-surface:rgba(255,255,255,0.88);--ui-surface-strong:rgba(255,255,255,0.95);--ui-border:rgba(60,76,84,0.24);--ui-border-soft:rgba(60,76,84,0.14);--ui-text:#2f3538;--ui-muted:#6a757a;--ui-accent:rgb(var(--ui-accent-rgb));--ui-accent-ink:#f8f6ee;--ui-danger:#c55353;--ui-shadow:0 18px 36px rgba(15,23,28,0.15);--ui-ink-96:rgba(255,255,255,0.96);--ui-ink-95:rgba(255,255,255,0.95);--ui-ink-92:rgba(255,255,255,0.92);--ui-ink-90:rgba(255,255,255,0.9);--ui-ink-85:rgba(255,255,255,0.85);--ui-ink-82:rgba(255,255,255,0.82);--ui-ink-80:rgba(255,255,255,0.8);--ui-ink-70:rgba(255,255,255,0.7);--ui-ink-65:rgba(255,255,255,0.65);--ui-ink-60:rgba(255,255,255,0.6);--ui-ink-55:rgba(255,255,255,0.55);--ui-ink-40:rgba(255,255,255,0.4);--ui-grid-small-color:rgba(40,52,58,0.22);--ui-grid-large-color:rgba(40,52,58,0.14);--ui-bg-image-filter:blur(32px) saturate(140%) brightness(1);--ui-bg-overlay:rgba(246,244,234,0.62);--ui-glass-bg:rgba(255,255,255,0.62);--ui-glass-border:rgba(60,76,84,0.22);--ui-glass-gradient:linear-gradient(135deg,rgba(255,255,255,0.85),rgba(255,255,255,0.2));--ui-glass-shadow:0 18px 40px rgba(15,23,28,0.18),inset 0 1px 0 rgba(255,255,255,0.6);--ui-board-bg:#f6f4ea;--ui-board-blend:normal;--ui-danger-rgb:197 83 83}html[data-theme=light] .share-private{color:rgba(47,53,56,.85);border-color:rgba(60,76,84,.35)}body,html{width:100%;height:100%;margin:0;padding:0;text-size-adjust:100%}html[data-theme=dark],html[data-theme=dark] body{color-scheme:dark}html[data-theme=light],html[data-theme=light] body{color-scheme:light}body{background:var(--ui-bg);color:var(--ui-text);font-family:var(--font-ui),"DM Sans",sans-serif;font-size:14px;position:relative;z-index:0;min-height:100vh;min-height:100dvh}body:after,body:before{content:"";position:fixed;inset:0;width:100vw;height:100dvh;pointer-events:none}body:before{background-image:var(--ui-bg-image);background-size:cover;background-position:50%;filter:var(--ui-bg-image-filter);transform:scale(1.06);z-index:-2}body:after{inset:0;background:var(--ui-bg-overlay);z-index:-1}button,input,label,select,textarea{font:inherit}.btn,button{background:rgba(255,255,255,.05);color:var(--ui-text);border:1px solid var(--ui-border-soft);padding:7px 10px;border-radius:9px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px;font-weight:600;font-size:13px;text-decoration:none;transition:transform .15s ease,background .15s ease,border-color .15s ease,box-shadow .15s ease}.btn:disabled,button:disabled{opacity:.6;cursor:not-allowed}.btn:not(:disabled):hover,button:not(:disabled):hover{background:rgba(255,255,255,.09);border-color:var(--ui-border);transform:translateY(-1px)}.btn:active,button:active{transform:none;background:rgba(255,255,255,.09)}.btn,button{transition:background .12s ease,border-color .12s ease,color .12s ease}.btn:focus,button:focus{outline:none}.btn:focus-visible,button:focus-visible{outline:1px solid rgba(var(--ui-accent-rgb),.55);outline-offset:2px}.nav-icon{min-width:22px;border-radius:8px;border:1px solid var(--ui-white-16);background:var(--ui-ink-70);font-size:11px;opacity:.7}.icon-block,.nav-icon{display:inline-flex;align-items:center;justify-content:center;height:22px}.icon-block{width:22px;border-radius:6px;border:1px solid var(--ui-white-18);background:var(--ui-white-08);color:var(--ui-text)}.icon-block svg{width:14px;height:14px;display:block}.btn-icon{padding:4px;min-width:auto}.btn-icon .icon-block{width:20px;height:20px}.btn-primary{background:var(--ui-accent);color:var(--ui-accent-ink);border-color:rgba(var(--ui-accent-rgb),.8);box-shadow:none}.btn-primary:not(:disabled):hover{filter:brightness(1.06)}.btn-secondary{background:var(--ui-white-06)}.btn-secondary:disabled{background:var(--ui-white-03);border-color:var(--ui-white-08);color:var(--ui-muted)}.btn-ghost{background:transparent;border-color:var(--ui-white-16)}.btn-danger{background:rgba(255,122,122,.12);color:var(--ui-danger);border-color:rgba(255,122,122,.3);box-shadow:none}.btn-small{padding:5px 8px;font-size:11px}.badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 6px;border-radius:9px;font-size:11px;font-weight:700;background:var(--ui-white-12);color:var(--ui-text)}.badge-accent{background:rgba(var(--ui-accent-rgb),.25);color:var(--ui-text);border:1px solid rgba(var(--ui-accent-rgb),.6)}.notifications-trigger .badge-accent{background:rgba(var(--ui-accent-rgb),.55);color:var(--ui-accent-ink);border-color:rgba(var(--ui-accent-rgb),.75)}html[data-theme=light] .notifications-trigger .badge-accent{background:rgba(31,111,168,.55);color:#f6f4ea;border-color:rgba(31,111,168,.7)}.badge-muted{background:var(--ui-white-08);color:var(--ui-muted)}.badge-muted,input,select,textarea{border:1px solid var(--ui-white-12)}input,select,textarea{background:var(--ui-ink-80);color:var(--ui-text);border-radius:8px;padding:7px 9px;width:100%}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--ui-accent);box-shadow:none}a{color:inherit;text-decoration:none}.btn,a,button{-webkit-tap-highlight-color:transparent}main{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:32px}main.page-shell{align-items:stretch;justify-content:flex-start;padding:0 32px 32px}@media (max-width:640px){main{min-height:100dvh;padding:16px}.auth-card{padding:20px}.auth-card h1{font-size:24px}.auth-actions{gap:8px}}.board-root{width:100vw;height:100vh;height:100dvh;position:relative;overflow:hidden}.board-root.is-panning .group-color-panel,.board-root.is-panning .mobile-panel,.board-root.is-panning .mobile-sidebar,.board-root.is-panning .notifications-panel,.board-root.is-panning .panel,.board-root.is-panning .panel-fab,.board-root.is-panning .panel-right,.board-root.is-panning .sidebar,.board-root.is-panning .toolbar,.board-root.is-panning .toolbar-stack{pointer-events:none}.board-progress-overlay{position:absolute;z-index:50;pointer-events:none}.board-progress-overlay.is-fullscreen{inset:0;background:var(--ui-bg);display:flex;align-items:center;justify-content:center}.board-progress-overlay.is-compact{top:16px;left:50%;transform:translateX(-50%);z-index:55}.board-progress-panel{display:flex;flex-direction:column;align-items:center;gap:8px;font-family:var(--font-mono),"DM Mono",monospace;color:var(--ui-text);text-transform:uppercase;letter-spacing:.24em}.board-progress-overlay.is-compact .board-progress-panel{padding:12px 16px;background:var(--ui-ink-92);border:1px solid var(--ui-border-soft);border-radius:12px;box-shadow:0 12px 30px rgba(0,0,0,.45)}.board-progress-label{font-size:12px}.board-progress-cli{font-size:11px;letter-spacing:.2em}.board-progress-cli:after{content:" _";animation:board-progress-caret 1s step-end infinite}.board-progress-meta{font-size:10px;letter-spacing:.14em;text-transform:none;opacity:.7;max-width:min(70vw,520px);text-align:center;word-break:break-word}@keyframes board-progress-caret{0%,49%{opacity:1}50%,to{opacity:0}}.board-canvas{width:100%;height:100%;position:relative;background-color:var(--ui-board-bg);touch-action:none}.board-canvas:focus,.board-canvas:focus-visible{outline:none}.board-canvas:after,.board-canvas:before{content:"";position:absolute;inset:0;pointer-events:none}.board-canvas:before{background-image:radial-gradient(var(--ui-grid-small-color) 1px,transparent 1.1px);background-size:var(--grid-small-size,24px) var(--grid-small-size,24px);background-position:var(--grid-small-x,0) var(--grid-small-y,0);opacity:var(--grid-small-opacity,.6)}.board-canvas:after{background-image:radial-gradient(var(--ui-grid-large-color) 1.4px,transparent 1.6px);background-size:var(--grid-large-size,150px) var(--grid-large-size,150px);background-position:var(--grid-large-x,0) var(--grid-large-y,0);opacity:var(--grid-large-opacity,.36)}.board-canvas .konvajs-content{position:relative;z-index:1}.minimap{right:20px;bottom:20px;z-index:3;border-radius:16px;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;overflow:hidden}.minimap,.minimap-zoom{position:absolute;pointer-events:none}.minimap-zoom{left:12px;bottom:10px;font-size:11px;color:rgba(255,255,255,.7);background:var(--ui-ink-70);border:1px solid var(--ui-white-12);border-radius:10px;padding:4px 8px}.group-color-panel{position:absolute;z-index:4;display:flex;align-items:center;gap:10px;padding:6px 10px;background:var(--ui-ink-85);border:1px solid var(--ui-white-12);border-radius:12px;box-shadow:none;pointer-events:auto}.group-color-label{font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--ui-muted)}.group-color-swatches{display:flex;align-items:center;gap:6px}.group-color-hint{font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--ui-muted)}.group-color-swatch{width:16px;height:16px;border-radius:999px;border:1px solid rgba(255,255,255,.25);cursor:pointer;padding:0;background:transparent}.group-color-swatch.is-active{border-color:rgba(255,255,255,.95);box-shadow:0 0 0 2px var(--ui-ink-90),0 0 0 4px rgba(255,255,255,.8)}.group-color-swatch.is-clear{background:rgba(255,255,255,.08);color:rgba(255,255,255,.7);font-size:12px;line-height:1}.group-color-swatch.is-clear,.group-color-swatch.is-comment{display:inline-flex;align-items:center;justify-content:center}.group-color-swatch.is-comment{background:rgba(90,170,255,.18);border-color:rgba(90,170,255,.6);color:rgba(210,230,255,.95)}.group-color-swatch.is-comment svg{width:12px;height:12px}.group-color-swatch.is-delete{background:rgba(255,90,90,.22);border-color:rgba(255,90,90,.65);color:rgba(255,210,210,.95);display:inline-flex;align-items:center;justify-content:center}.group-color-swatch.is-delete svg{width:10px;height:10px}.group-color-panel input[type=color]{width:18px;height:18px;border:0;padding:0;background:transparent}.selection-action-panel{position:absolute;z-index:4;display:flex;align-items:center;gap:8px;padding:6px 10px;background:var(--ui-ink-85);border:1px solid var(--ui-white-12);border-radius:12px;box-shadow:none;pointer-events:auto}.selection-delete-button{border:1px solid rgba(255,90,90,.6);background:rgba(255,90,90,.18);color:#ffe1e1;border-radius:10px}.selection-comment-button,.selection-delete-button{font-size:10px;padding:4px 8px;text-transform:uppercase;letter-spacing:.12em;cursor:pointer}.selection-comment-button{border:1px solid rgba(90,170,255,.6);background:rgba(90,170,255,.18);color:#d7e7ff;border-radius:10px}.tool-select.is-active{color:#4aa3ff}.tool-draw.is-active.is-pen{color:#3acb6f}.tool-draw.is-active.is-eraser{color:#ff5b5b}.crop-controls{position:absolute;z-index:5;display:flex;gap:6px;padding:6px;background:var(--ui-ink-85);border:1px solid var(--ui-white-12);border-radius:12px;box-shadow:none;pointer-events:auto}.minimap-canvas{display:block;border-radius:16px}.minimap-overlay{position:absolute;inset:0;width:100%;height:100%;display:block;pointer-events:none}.sidebar{position:absolute;z-index:11;top:20px;left:20px;width:210px;padding:14px;background:var(--ui-glass-gradient),var(--ui-glass-bg);border:1px solid var(--ui-glass-border);border-radius:16px;display:flex;flex-direction:column;gap:18px;box-shadow:var(--ui-glass-shadow);-webkit-backdrop-filter:blur(24px) saturate(160%);backdrop-filter:blur(24px) saturate(160%);animation:panel-in .35s ease-out both;transition:width .18s ease,padding .18s ease;max-height:calc(100vh - 40px);overflow:visible;overflow-x:visible}.sidebar:before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(135deg,rgba(255,255,255,.35),rgba(255,255,255,0) 55%);opacity:.6;pointer-events:none;mix-blend-mode:screen}.sidebar-scroll{display:flex;flex-direction:column;gap:18px;overflow:auto;min-height:0;scrollbar-width:thin;scrollbar-color:var(--ui-white-18) transparent}.sidebar-scroll::-webkit-scrollbar{width:8px}.sidebar-scroll::-webkit-scrollbar-track{background:transparent}.sidebar-scroll::-webkit-scrollbar-thumb{background:var(--ui-white-16);border-radius:999px}.sidebar-scroll::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.28)}.sidebar-hidden{display:none}.sidebar-brand{display:flex;flex-direction:column;gap:6px;position:relative;padding-right:32px;margin-bottom:-6px}.sidebar-brand-top{display:flex;align-items:center;gap:10px;padding-right:160px}.sidebar-brand-top .brand-mark{max-width:calc(100% - 160px)}.brand-mark{align-items:center;gap:6px;font-family:var(--font-space),var(--font-ui),"DM Sans",sans-serif}.brand-mark,.brand-word{display:inline-flex;white-space:nowrap}.brand-word{font-size:18px;font-weight:700;letter-spacing:-.02em;text-transform:uppercase;align-items:baseline;gap:4px}.sidebar-brand-mark .brand-word{font-size:17px}.sidebar-brand-mark .brand-by{font-size:8px;letter-spacing:.06em;margin-left:3px;font-weight:700}html[data-theme=light] .sidebar-brand-mark .brand-by{color:#1f6fa8;text-shadow:0 0 6px rgba(15,23,28,.12)}html[data-theme=dark] .sidebar-brand-mark .brand-by{color:#7cc7ff;text-shadow:0 0 8px rgba(124,199,255,.35)}.brand-by{font-size:9px;font-weight:600;color:var(--ui-accent);letter-spacing:.08em;margin-left:4px;line-height:1;transform:translateY(-35%);text-transform:uppercase}html[data-theme=light] .brand-by{color:#1f6fa8}html[data-theme=dark] .brand-by{color:#7cc7ff}@media (max-width:640px){.brand-mark,.brand-word{white-space:normal}.brand-word{flex-wrap:wrap;row-gap:4px}.brand-by{display:block;width:100%;margin-left:0;transform:none;font-size:8px;letter-spacing:.18em}}.theme-toggle{padding:4px}.theme-toggle .icon-block{border-color:var(--ui-white-18)}.sidebar-title{font-size:18px;font-weight:700;letter-spacing:-.02em}.sidebar-toggle{position:absolute;top:18px;right:4px;width:26px;height:26px;border-radius:8px;border:1px solid var(--ui-white-12);background:var(--ui-ink-55);color:var(--ui-text);cursor:pointer;font-weight:600}.sidebar-collapsed{width:210px;padding:14px;overflow:visible}.sidebar-collapsed .sidebar-section{display:none}.sidebar-collapsed .sidebar-subtitle,.sidebar-collapsed .sidebar-title{opacity:1;pointer-events:auto}.sidebar-collapsed .sidebar-title{font-size:18px;text-align:left}.sidebar-collapsed .sidebar-brand{align-items:flex-start;text-align:left}.sidebar-collapsed .sidebar-brand-actions{justify-content:flex-start;flex-wrap:wrap;gap:0;row-gap:4px}.btn-logout{background:rgba(var(--ui-danger-rgb),.18);border-color:rgba(var(--ui-danger-rgb),.5);color:var(--ui-danger);-webkit-backdrop-filter:blur(10px) saturate(140%);backdrop-filter:blur(10px) saturate(140%)}.sidebar-subtitle{font-size:9px;letter-spacing:.3em;text-transform:uppercase;color:var(--ui-muted)}.mobile-controls{position:absolute;top:16px;left:50%;right:auto;transform:translateX(-50%);z-index:12;display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:center;max-width:calc(100vw - 32px)}.mobile-tools{display:inline-flex;gap:6px;align-items:center;flex:0 0 auto}.sidebar-mini{position:absolute;top:14px;left:14px;z-index:13;border:1px solid var(--ui-white-16);background:var(--ui-ink-70);color:var(--ui-text);border-radius:12px;padding:6px 8px;font-size:10px;letter-spacing:.2em;text-transform:uppercase;cursor:pointer}.mobile-controls .btn{padding:6px 10px;font-size:11px}.mobile-controls .mobile-mode-toggle,.mobile-mode-label{min-width:118px;text-align:center;white-space:nowrap}.mobile-mode-label{padding:6px 10px;border-radius:10px;border:1px solid var(--ui-white-15);background:var(--ui-ink-70);color:var(--ui-muted);font-size:11px}.panel-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.sidebar-section{display:flex;flex-direction:column;gap:8px}.sidebar-section-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.sidebar-collapse{width:20px;height:20px;border-radius:8px;border:1px solid var(--ui-white-15);background:var(--ui-ink-55);color:var(--ui-text);cursor:pointer;font-size:12px;line-height:1}.sidebar-label{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--ui-muted)}.sidebar-item{font-size:12px;color:var(--ui-text)}.sidebar-toggle-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.sidebar-toggle-row .sidebar-item-label{margin-right:auto}.sidebar-item-label{color:var(--ui-muted)}.mode-pill,.role-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.12em;border:1px solid var(--ui-white-12);background:var(--ui-white-04)}.mode-admin,.role-owner{border-color:rgba(var(--ui-accent-rgb),.55);color:rgba(var(--ui-accent-rgb),.95)}.mode-edit,.role-editor{border-color:rgba(120,214,255,.45);color:rgba(120,214,255,.95)}.mode-comment,.role-commenter{border-color:rgba(255,255,255,.3);color:rgba(255,255,255,.85)}.member-remove{background:rgba(255,122,122,.18);border-color:rgba(255,122,122,.6);color:#ffecec}.mode-value{font-weight:600;letter-spacing:.12em}.share-link-row{display:flex;align-items:center;gap:6px}.share-link-row input{flex:1 1;min-width:0}.share-links{display:flex;flex-direction:column;gap:8px}.share-link-title{font-size:12px;font-weight:600}.share-invite{display:flex;flex-direction:column;gap:8px}.invite-field{position:relative}.invite-field input{width:100%}.invite-suggestions{display:flex;flex-direction:column;gap:6px;padding:6px 8px;border-radius:10px;border:1px solid var(--ui-white-16);background:var(--ui-surface-strong);position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:2;max-height:180px;overflow:auto}.invite-suggestion{border:none;background:transparent;color:var(--ui-text);text-align:left;font-size:12px;font-weight:500;padding:4px 6px;border-radius:6px;cursor:pointer}.invite-suggestion:hover{color:var(--ui-accent);background:var(--ui-white-04)}.member-list{gap:8px;max-height:240px;overflow:auto}.member-list,.member-row{display:flex;flex-direction:column}.member-row{gap:6px;padding:6px;border-radius:10px;border:1px solid var(--ui-white-12);background:var(--ui-ink-82)}html[data-theme=light] .member-row{background:transparent;border-color:rgba(47,53,56,.18)}.member-info{display:flex;flex-direction:column;gap:2px}.member-email{font-size:11px}.member-role{font-size:9px;color:var(--ui-muted);letter-spacing:.12em;text-transform:uppercase}.member-row select{width:100%}.toolbar-stack{position:absolute;z-index:12;top:20px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;gap:10px;align-items:center;max-width:calc(100vw - 600px)}.toolbar{position:relative;flex-wrap:wrap;padding:8px 12px;background:var(--ui-surface);border:1px solid var(--ui-border-soft);border-radius:999px;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;max-width:100%}.toolbar,.toolbar-group{display:flex;align-items:center;gap:8px}.toolbar-divider{width:1px;height:22px;background:var(--ui-border-soft)}.toolbar-meta{font-size:11px;color:var(--ui-muted);padding:0 6px;white-space:nowrap}.draw-tool{position:relative;display:inline-flex;align-items:center}.draw-panel{position:absolute;top:calc(100% + 8px);left:50%;transform:translateX(-50%);min-width:220px;background:var(--ui-surface);border:1px solid var(--ui-border-soft);border-radius:14px;padding:8px;display:flex;flex-direction:column;gap:8px;z-index:20;pointer-events:auto}.draw-row{align-items:center;gap:8px}.draw-row,.draw-swatches{display:flex;flex-wrap:wrap}.draw-swatches{gap:6px}.draw-swatch{width:18px;height:18px;border-radius:999px;border:1px solid var(--ui-white-12);padding:0;cursor:pointer}.draw-swatch.is-active{outline:2px solid rgba(var(--ui-accent-rgb),.6);outline-offset:1px}.draw-panel input[type=color]{width:22px;height:22px;border:none;padding:0;background:transparent;cursor:pointer}.draw-size label{font-size:11px;color:var(--ui-muted)}.draw-size input[type=range]{flex:1 1}.draw-size-value{font-size:11px;color:var(--ui-muted);min-width:20px;text-align:right}.add-menu{position:relative}.add-menu-panel{position:absolute;top:calc(100% + 8px);left:0;min-width:140px;background:var(--ui-surface);border:1px solid var(--ui-border-soft);border-radius:12px;padding:6px;display:flex;flex-direction:column;gap:4px;z-index:20}.add-menu--mobile .add-menu-panel{left:auto;right:0}.add-menu-item{border:1px solid transparent;border-radius:10px;background:transparent;color:var(--ui-text);text-align:left;padding:6px 8px;font-size:12px;cursor:pointer}.add-menu-item:hover{border-color:rgba(var(--ui-accent-rgb),.4);background:rgba(var(--ui-accent-rgb),.12)}.status-toast{position:absolute;left:20px;bottom:20px;z-index:12;gap:8px;max-width:260px}.boards-page,.status-toast{display:flex;flex-direction:column}.boards-page{width:min(960px,94vw);gap:18px;margin:0 auto;padding-top:12px}.boards-page.is-dragging{overscroll-behavior:none;touch-action:none}.boards-header{display:flex;justify-content:space-between;align-items:center;gap:12px;position:sticky;top:0;z-index:10;background:var(--ui-glass-gradient),var(--ui-glass-bg);border:1px solid var(--ui-glass-border);border-radius:16px;padding:12px 16px;-webkit-backdrop-filter:blur(24px) saturate(160%);backdrop-filter:blur(24px) saturate(160%);box-shadow:var(--ui-glass-shadow)}html[data-theme=light] .page-topbar{background:linear-gradient(135deg,rgba(255,255,255,.16),rgba(255,255,255,.01)),rgba(255,255,255,.08);border-color:rgba(60,76,84,.08);box-shadow:0 6px 16px rgba(15,23,28,.05)}.page-topbar{height:auto;padding:8px 16px;gap:16px}.page-topbar,.page-topbar-left{align-items:center;min-height:0}.page-topbar-left{display:flex;gap:14px}.page-brand{white-space:nowrap}.page-brand .brand-word{font-size:16px}.page-title{display:flex;flex-direction:column;justify-content:center}.page-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.page-actions,.page-actions--spacer{min-height:40px}.page-actions .btn{padding:6px 9px;font-size:12px}.boards-header h1{margin:0;font-size:24px;letter-spacing:-.02em}.boards-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.boards-actions .btn{transition:none;background:transparent}.boards-actions .btn:hover{transform:none;background:rgba(var(--ui-accent-rgb),.12);border-color:rgba(var(--ui-accent-rgb),.4)}.boards-actions .btn:visited{color:var(--ui-text)}.boards-actions .btn:active{background:rgba(var(--ui-accent-rgb),.12);border-color:rgba(var(--ui-accent-rgb),.4)}.boards-actions .btn:focus,.boards-actions .btn:focus-visible{outline:none;background:rgba(var(--ui-accent-rgb),.12);border-color:rgba(var(--ui-accent-rgb),.4)}.boards-actions .btn.is-active{background:rgba(var(--ui-accent-rgb),.18);border-color:rgba(var(--ui-accent-rgb),.6);color:var(--ui-text)}.boards-actions .admin-link{display:inline-flex;visibility:hidden;pointer-events:none}.boards-actions[data-admin=yes] .admin-link{visibility:visible;pointer-events:auto}.btn.is-active{background:rgba(var(--ui-accent-rgb),.18);border-color:rgba(var(--ui-accent-rgb),.6);color:var(--ui-text)}.boards-header p{margin:6px 0 0;min-height:18px}.boards-sections{margin-top:-6px}.notifications-menu{position:relative;display:inline-flex;min-width:48px}.notifications-menu.is-hidden{visibility:hidden;pointer-events:none}.notifications-panel{background:var(--ui-surface);border:1px solid var(--ui-border-soft);border-radius:14px;padding:12px;display:flex;flex-direction:column;gap:12px}.board-flyout,.notifications-panel{position:absolute;right:0;top:calc(100% + 12px);width:360px;max-height:360px;overflow:auto;z-index:20}.sidebar .notifications-menu{position:static}.sidebar .board-flyout,.sidebar .notifications-panel{position:fixed;top:-2px;left:calc(20px + 210px + 4px);width:300px;z-index:30}@media (max-width:960px),(pointer:coarse){.notifications-panel{position:fixed;bottom:calc(env(safe-area-inset-bottom, 0px) + 12px);width:auto;max-height:calc(100vh - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px) - 96px);background:var(--ui-surface-strong);border:1px solid var(--ui-border-soft);box-shadow:var(--ui-glass-shadow)}.board-flyout,.notifications-panel,.sidebar .notifications-panel{right:12px;left:12px;top:calc(env(safe-area-inset-top, 0px) + 64px)}.board-flyout{position:fixed;bottom:calc(env(safe-area-inset-bottom, 0px) + 12px);width:auto;max-height:calc(100vh - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px) - 96px)}.sidebar .board-flyout{left:12px;right:12px;top:calc(env(safe-area-inset-top, 0px) + 64px)}}.notifications-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.notifications-actions{display:flex;align-items:center;gap:6px}.notifications-trigger{padding:6px 8px}.boards-menu,.notes-menu,.tasks-menu{position:relative;display:inline-flex;min-width:36px}.notes-trigger{padding:6px 8px}.sidebar-brand-actions{display:inline-flex;flex-wrap:nowrap;gap:3px;align-items:center;justify-content:flex-start;max-width:100%;overflow:visible;padding:0;border-radius:0;border:none;background:transparent;margin-top:4px}.sidebar-brand-actions .boards-menu,.sidebar-brand-actions .notes-menu,.sidebar-brand-actions .notifications-menu,.sidebar-brand-actions .tasks-menu{width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;min-width:0}.sidebar-brand-actions .boards-trigger,.sidebar-brand-actions .btn,.sidebar-brand-actions .notes-trigger,.sidebar-brand-actions .notifications-trigger,.sidebar-brand-actions .theme-toggle{box-sizing:border-box;width:22px;height:22px;padding:0}.sidebar-brand-actions .notifications-trigger{position:relative}.sidebar-brand-actions .notifications-trigger .badge{position:absolute;top:-4px;right:-4px;min-width:12px;height:12px;padding:0 2px;font-size:8px;line-height:1;border-radius:999px}.sidebar-brand-actions .icon-block{width:16px;height:16px;border-radius:5px}.sidebar-brand-actions .icon-block svg{width:11px;height:11px}.sidebar-brand-actions .boards-trigger,.sidebar-brand-actions .btn,.sidebar-brand-actions .notes-trigger,.sidebar-brand-actions .notifications-trigger{border:none;background:transparent;box-shadow:none;padding:4px}.sidebar-brand-actions .boards-trigger:hover,.sidebar-brand-actions .btn:hover,.sidebar-brand-actions .notes-trigger:hover,.sidebar-brand-actions .notifications-trigger:hover{background:var(--ui-white-08);transform:none}.sidebar-board-name{font-size:11px;color:#8bd0ff;text-transform:uppercase;letter-spacing:.14em}html[data-theme=light] .sidebar-board-name{color:#2f5d8f}.sidebar-item .mode-value{text-transform:uppercase;display:inline-flex;align-items:center;padding:1px 6px;border-radius:999px;border:1px solid transparent;font-weight:700}html[data-theme=dark] .sidebar-item .mode-value.mode-admin{color:rgba(var(--ui-accent-rgb),1);border-color:rgba(var(--ui-accent-rgb),.65);background:rgba(var(--ui-accent-rgb),.22)}html[data-theme=dark] .sidebar-item .mode-value.mode-edit{color:#9adfff;border-color:rgba(154,223,255,.55);background:rgba(154,223,255,.14)}html[data-theme=dark] .sidebar-item .mode-value.mode-comment{color:rgba(255,255,255,.95);border-color:rgba(255,255,255,.3);background:rgba(255,255,255,.08)}html[data-theme=dark] .sidebar-item .mode-value.share-password{color:#ffd966;border-color:rgba(255,217,102,.55);background:rgba(255,217,102,.14)}html[data-theme=dark] .sidebar-item .mode-value.share-team{color:#a7dcff;border-color:rgba(167,220,255,.55);background:rgba(167,220,255,.14)}html[data-theme=dark] .sidebar-item .mode-value.share-private{color:#d9e2ff;border-color:rgba(186,201,255,.55);background:rgba(186,201,255,.18)}html[data-theme=light] .sidebar-item .mode-value.mode-admin{color:#2f5d8f;border-color:rgba(47,93,143,.45);background:rgba(47,93,143,.12)}html[data-theme=light] .sidebar-item .mode-value.mode-edit{color:#1f6fa8;border-color:rgba(31,111,168,.5);background:rgba(31,111,168,.14)}html[data-theme=light] .sidebar-item .mode-value.mode-comment{color:#4e565a;border-color:rgba(78,86,90,.4);background:rgba(78,86,90,.12)}html[data-theme=light] .sidebar-item .mode-value.share-password{color:#b07b14;border-color:rgba(176,123,20,.5);background:rgba(176,123,20,.14)}html[data-theme=light] .sidebar-item .mode-value.share-team{color:#2f5d8f;border-color:rgba(47,93,143,.45);background:rgba(47,93,143,.12)}html[data-theme=light] .sidebar-item .mode-value.share-private{color:#1f6fa8;border-color:rgba(31,111,168,.55);background:rgba(31,111,168,.14)}.notifications-icon{width:28px;height:28px;padding:0;border-radius:999px;font-size:16px;line-height:1}.notifications-close{display:none;margin-left:auto}@media (max-width:960px),(pointer:coarse){.notifications-close{display:inline-flex}}.notifications-list{display:flex;flex-direction:column;gap:10px}.notes-panel-body{width:100%;border-radius:12px;border:1px solid var(--ui-border-soft);background:rgba(18,18,22,.18);color:var(--ui-text);padding:10px 12px;resize:vertical;min-height:120px;font-size:13px;line-height:1.4}.notes-panel-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.tasks-panel-list{display:flex;flex-direction:column;gap:10px}.tasks-panel-item{padding-bottom:10px;border-bottom:1px solid var(--ui-border-soft)}.tasks-panel-item:last-child{border-bottom:none;padding-bottom:0}.tasks-panel-row{display:flex;align-items:flex-start;gap:8px}.tasks-panel-row .task-status{width:18px;min-width:18px;height:18px;min-height:18px;font-size:12px;margin-top:1px}.tasks-panel-text{display:flex;flex-direction:column;gap:4px;min-width:0}.tasks-panel-title{font-size:13px;color:var(--ui-text)}.tasks-panel-meta{display:flex;align-items:center;flex-wrap:wrap;gap:4px 8px}.boards-panel-list{display:flex;flex-direction:column;gap:4px}.boards-panel-item{width:100%;text-align:left;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 8px;border-radius:8px;border:1px solid transparent;background:var(--ui-ink-40);color:var(--ui-text);cursor:pointer}.boards-panel-item:hover{background:rgba(var(--ui-accent-rgb),.14)}.boards-panel-item.is-active{border-color:rgba(var(--ui-accent-rgb),.55);background:rgba(var(--ui-accent-rgb),.2)}.boards-panel-name{font-size:12px;font-weight:500;color:var(--ui-text)}.boards-panel-archived{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--ui-muted)}.notification-item{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:10px;border-radius:12px;border:1px solid var(--ui-border-soft);background:var(--ui-white-03)}.notification-actions{display:flex;align-items:center;gap:6px}.notification-item.is-unread{border-color:rgba(var(--ui-accent-rgb),.5);background:rgba(var(--ui-accent-rgb),.08)}.notification-title{display:flex;align-items:center;gap:8px;font-weight:600;font-size:13px}.notification-tag{display:inline-flex;align-items:center;justify-content:center;padding:2px 6px;border-radius:999px;font-size:9px;letter-spacing:.12em;text-transform:uppercase;border:1px solid var(--ui-white-12);color:var(--ui-muted)}.notification-tag-task{border-color:rgba(var(--ui-accent-rgb),.6);color:rgba(var(--ui-accent-rgb),.9)}.notification-tag-board{border-color:rgba(255,255,255,.3);color:rgba(255,255,255,.85)}.notification-tag-folder{border-color:rgba(170,201,255,.45);color:rgba(170,201,255,.85)}.notification-delete{width:28px;height:28px;padding:0;font-size:14px}.notification-time{font-size:11px;color:var(--ui-muted);margin-top:4px}.boards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.boards-archive,.boards-sections{display:flex;flex-direction:column;gap:16px}.boards-archive{margin-top:18px;padding-top:14px;border-top:1px solid var(--ui-border-soft)}.boards-archive-header{font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--ui-muted)}.boards-trash{margin-top:18px;padding-top:14px;border-top:1px dashed var(--ui-border-soft);display:flex;flex-direction:column;gap:16px}.boards-trash-header{font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--ui-muted)}.boards-folder{border:none;border-radius:16px;background:transparent;padding:6px 0 10px;display:flex;flex-direction:column;gap:12px;position:relative}.boards-folder.is-archived{opacity:.7}.boards-folder.is-drop-target{border-color:rgba(46,155,255,.8);background:rgba(46,155,255,.22);box-shadow:inset 0 0 0 2px rgba(46,155,255,.5);outline:2px solid rgba(46,155,255,.75);outline-offset:3px}.boards-folder.is-drop-target:after{content:"";position:absolute;inset:-6px -8px;border-radius:18px;border:2px dashed rgba(46,155,255,.9);box-shadow:0 0 28px rgba(46,155,255,.45);pointer-events:none}.boards-folder-header,.boards-folder-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px}.boards-folder-toggle{padding:0;border:none;background:transparent;color:inherit;text-align:left;cursor:pointer;flex:1 1}.boards-folder-title{font-size:15px;font-weight:600}.boards-folder-subtitle{font-size:11px;color:var(--ui-muted)}.boards-folder-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.boards-folder-list{display:flex;flex-direction:column;gap:10px}.boards-fold-icon{font-size:16px;color:var(--ui-muted)}.board-row{display:grid;grid-template-columns:auto auto 1fr auto;gap:12px;align-items:center;padding:10px 12px;border-radius:14px;border:1px solid var(--ui-glass-border);background:var(--ui-glass-gradient),var(--ui-glass-bg);-webkit-backdrop-filter:blur(22px) saturate(160%);backdrop-filter:blur(22px) saturate(160%);box-shadow:var(--ui-glass-shadow);user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;transition:background .15s ease,border-color .15s ease}.board-row.is-archived{opacity:.7}.board-row.is-trash{opacity:.6;grid-template-columns:1fr auto}.board-drag-hint{display:none;color:var(--ui-muted);font-size:12px;letter-spacing:.1em}@media (pointer:fine){.board-drag-hint{display:inline-flex}}.board-row.is-selected{border-color:rgba(var(--ui-accent-rgb),.6);background:rgba(var(--ui-accent-rgb),.12)}.board-row.is-dragging{border-color:rgba(var(--ui-accent-rgb),.7);background:rgba(var(--ui-accent-rgb),.18);box-shadow:0 0 0 1px rgba(var(--ui-accent-rgb),.35) inset;touch-action:none;position:relative;z-index:2;pointer-events:none}.board-row:not(.is-selected):not(.is-dragging):hover{background:rgba(var(--ui-accent-rgb),.08)}.boards-page .board-row{background:var(--ui-white-03);border-color:var(--ui-white-06);box-shadow:none}html[data-theme=light] .boards-page .board-row{background:rgba(47,53,56,.04);border-color:rgba(47,53,56,.12)}.boards-drag-ghost{position:fixed;left:0;top:0;z-index:40;border-radius:12px;border:1px solid rgba(var(--ui-accent-rgb),.7);background:var(--ui-ink-92);box-shadow:0 12px 30px rgba(0,0,0,.35);pointer-events:none;padding:10px 12px;display:flex;flex-direction:column;justify-content:center;gap:4px;will-change:transform}.boards-drag-ghost-title{font-size:13px;font-weight:600;color:#e5ecf7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.boards-drag-ghost-meta{font-size:11px;color:var(--ui-muted);text-transform:uppercase;letter-spacing:.12em}.board-checkbox{display:flex;align-items:center;gap:6px}.board-checkbox input{width:16px;height:16px}html[data-theme=light] .board-checkbox input{background:rgba(47,53,56,.08);border-color:rgba(47,53,56,.35)}.board-row-info{display:flex;flex-direction:column;gap:4px;min-width:0}.board-row-title{display:flex;align-items:center;gap:8px;font-weight:600}.board-row-meta{font-size:12px;color:var(--ui-muted)}.board-row-count,.board-row-date{white-space:nowrap}.board-row-dot{padding:0 6px;color:rgba(255,255,255,.35)}.share-pill{padding:2px 8px;border-radius:999px;font-size:10px;letter-spacing:.14em;text-transform:uppercase;border:1px solid rgba(255,255,255,.2)}.share-pill,.share-pill-group{display:inline-flex;align-items:center}.share-pill-group{gap:6px}.share-public{color:rgba(var(--ui-accent-rgb),.95);border-color:rgba(var(--ui-accent-rgb),.6)}.share-password{color:rgba(255,217,102,.95);border-color:rgba(255,217,102,.6)}.share-link{color:rgba(210,210,210,.9);border-color:rgba(210,210,210,.4)}.share-team{color:rgba(144,216,255,.9);border-color:rgba(144,216,255,.45)}.share-private{color:rgba(255,255,255,.8);border-color:rgba(255,255,255,.3)}.share-muted{color:rgba(255,255,255,.6);border-color:rgba(255,255,255,.2)}html[data-theme=light] .share-pill{background:rgba(31,111,168,.08);border-color:rgba(31,111,168,.25)}html[data-theme=light] .share-public{color:#1f6fa8;border-color:rgba(31,111,168,.6);background:rgba(31,111,168,.12)}html[data-theme=light] .share-password{color:#b07b14;border-color:rgba(176,123,20,.55);background:rgba(176,123,20,.14)}html[data-theme=light] .share-link{color:#4e565a;border-color:rgba(47,53,56,.4);background:rgba(47,53,56,.1)}html[data-theme=light] .share-team{color:#1f6fa8;border-color:rgba(31,111,168,.6);background:rgba(31,111,168,.12)}html[data-theme=light] .share-private{color:#3a3f43;border-color:rgba(58,63,67,.45);background:rgba(58,63,67,.12)}html[data-theme=light] .share-muted{color:#5a5f63;border-color:rgba(90,95,99,.35);background:rgba(90,95,99,.1)}.board-row-actions{display:flex;align-items:center;gap:8px}.board-unread{font-size:10px;min-width:20px;height:20px}.boards-selection-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:12px;border:1px solid var(--ui-glass-border);background:var(--ui-glass-gradient),var(--ui-glass-bg);-webkit-backdrop-filter:blur(20px) saturate(160%);backdrop-filter:blur(20px) saturate(160%);box-shadow:var(--ui-glass-shadow);transition:opacity .12s ease}.boards-selection-bar.is-hidden{opacity:0;pointer-events:none}.boards-selection-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.boards-selection-count{font-size:12px;color:var(--ui-muted)}.boards-move{display:flex;align-items:center;gap:6px}.boards-move select{padding:6px 8px;border-radius:10px;border:1px solid var(--ui-border-soft);background:var(--ui-ink-60);color:var(--ui-text);font-size:12px}.board-card{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:16px;border-radius:16px;border:1px solid var(--ui-glass-border);background:var(--ui-glass-gradient),var(--ui-glass-bg);-webkit-backdrop-filter:blur(22px) saturate(160%);backdrop-filter:blur(22px) saturate(160%);box-shadow:var(--ui-glass-shadow);min-height:92px;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.board-card:hover{border-color:rgba(var(--ui-accent-rgb),.6);transform:translateY(-2px)}.board-title{font-weight:600;margin-bottom:6px}.tasks-page{width:min(960px,94vw);display:flex;flex-direction:column;gap:18px;margin:0 auto;padding-top:12px}.tasks-sections{opacity:.96}.tasks-page.is-touch-dragging{touch-action:none;-webkit-user-select:none;user-select:none}.tasks-page.is-touch-dragging .tasks-list{touch-action:none}.notes-page{width:min(960px,94vw);gap:18px;margin:0 auto;padding-top:12px}.notes-list,.notes-page{display:flex;flex-direction:column}.notes-list{gap:16px}.notes-archive{margin-top:16px;padding-top:12px;border-top:1px solid var(--ui-border-soft);display:flex;flex-direction:column;gap:12px}.notes-archive-header{font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--ui-muted)}.notes-card{border:1px solid var(--ui-glass-border);border-radius:14px;background:var(--ui-glass-gradient),var(--ui-glass-bg);-webkit-backdrop-filter:blur(22px) saturate(160%);backdrop-filter:blur(22px) saturate(160%);box-shadow:var(--ui-glass-shadow);padding:14px;display:flex;flex-direction:column;gap:12px}.notes-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.notes-title{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--ui-accent);font-weight:700}html[data-theme=light] .notes-title{color:#2f5d8f}.notes-meta{font-size:11px;color:var(--ui-muted)}.notes-readonly{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ui-muted)}.notes-body{width:100%;min-height:120px;border-radius:12px;border:1px solid var(--ui-border-soft);background:rgba(18,18,22,.18);color:var(--ui-text);padding:10px 12px;resize:vertical;font-size:13px;line-height:1.4}.notes-actions{display:flex;align-items:center;gap:10px}.tasks-header{margin-top:0}.tasks-sections{gap:14px}.tasks-archive,.tasks-sections{display:flex;flex-direction:column}.tasks-archive{margin-top:16px;padding-top:12px;border-top:1px solid var(--ui-border-soft);gap:12px}.tasks-archive-header{font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--ui-text);opacity:.65}.tasks-folder{border:none;border-radius:0;background:transparent;padding:0 0 8px;display:flex;flex-direction:column;gap:10px}.tasks-folder.is-archived{opacity:.7}.tasks-folder-header{gap:10px;padding-bottom:6px;border-bottom:none}.tasks-folder-header,.tasks-folder-toggle{display:flex;align-items:center;justify-content:space-between}.tasks-folder-toggle{gap:12px;padding:0;border:none;background:transparent;color:inherit;text-align:left;cursor:pointer;flex:1 1}.tasks-folder-actions{display:flex;align-items:center;gap:4px}.tasks-folder-title{font-size:16px;font-weight:700;letter-spacing:.01em}.tasks-folder-subtitle{font-size:10px;color:var(--ui-text);opacity:.65}.tasks-folder-body{gap:12px}.tasks-board,.tasks-folder-body{display:flex;flex-direction:column}.tasks-board{border-top:none;padding-top:10px;gap:8px}.tasks-board:first-child{border-top:none;padding-top:0}.tasks-board-header,.tasks-board-toggle{display:flex;align-items:center;justify-content:space-between;gap:8px}.tasks-board-toggle{padding:0;border:none;background:transparent;color:inherit;text-align:left;cursor:pointer;flex:1 1}.tasks-board-actions{display:flex;align-items:center;gap:6px}.tasks-board-title{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ui-text);opacity:.65;display:flex;align-items:center;justify-content:space-between;gap:8px}.tasks-fold-icon{font-size:14px;color:var(--ui-text);opacity:.65}.tasks-list{display:flex;flex-direction:column;gap:0;min-height:32px;position:relative;user-select:none;-webkit-user-select:none}.tasks-selection-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:12px;border:1px solid var(--ui-glass-border);background:var(--ui-glass-gradient),var(--ui-glass-bg);-webkit-backdrop-filter:blur(20px) saturate(160%);backdrop-filter:blur(20px) saturate(160%);box-shadow:var(--ui-glass-shadow);margin-bottom:12px}.tasks-selection-bar.is-hidden{display:none}.tasks-selection-bar input[type=datetime-local]{padding:6px 8px;border-radius:10px;border:1px solid var(--ui-border-soft);background:var(--ui-ink-60);color:var(--ui-text);font-size:12px}.task-item{display:flex;align-items:stretch;justify-content:space-between;gap:14px;padding:12px;border-radius:0;border:none;border-bottom:1px solid var(--ui-border-soft);background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none;cursor:pointer;position:relative;z-index:1;overflow:hidden;touch-action:pan-y;transition:background .15s ease,border-color .15s ease}.task-body,.task-item,.task-main,.task-meta-row,.task-text,.task-title{user-select:none;-webkit-user-select:none}.task-item:hover{background:rgba(var(--ui-accent-rgb),.08)}.task-swipe-reveal{position:absolute;inset:0;background:rgba(255,96,96,.92);color:#101014;font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;display:flex;align-items:center;justify-content:flex-end;padding-right:18px;opacity:0;transition:opacity .18s ease;pointer-events:none;z-index:1;border-radius:0}.task-item.is-selected{background:rgba(var(--ui-accent-rgb),.12);border-color:rgba(var(--ui-accent-rgb),.55)}html[data-theme=dark] .task-item{border-color:rgba(255,255,255,.18)}html[data-theme=dark] .task-item.is-selected{border-color:rgba(var(--ui-accent-rgb),.7)}html[data-theme=dark] .tasks-list.is-drag-over{outline-color:rgba(var(--ui-accent-rgb),.85);background:rgba(var(--ui-accent-rgb),.2)}.task-item:last-child{border-bottom:none}.task-swipe-action{position:absolute;top:0;right:0;bottom:0;width:72px;border:none;background:rgba(255,96,96,.9);color:#0c0c0f;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s ease;display:flex;align-items:center;justify-content:center;gap:6px;z-index:2;border-radius:0}.task-swipe-content{display:flex;align-items:flex-start;width:100%;flex:1 1;min-width:0;transition:transform .18s ease;z-index:2}.task-item.is-swipe-open .task-swipe-content{transform:translateX(-72px)}.task-item.is-swipe-open .task-swipe-action,.task-item.is-swipe-visible .task-swipe-action{opacity:1;visibility:visible;pointer-events:auto}.task-item.is-swipe-open .task-swipe-reveal,.task-item.is-swipe-visible .task-swipe-reveal{opacity:1}.task-swipe-icon{display:inline-flex;width:14px;height:14px}.task-swipe-icon svg{width:100%;height:100%}.task-main{align-items:flex-start;gap:12px;flex:1 1}.task-main,.task-text{display:flex;min-width:0}.task-text{flex-direction:column;gap:6px}.task-select-spacer{width:16px;min-width:16px;min-height:16px;flex:0 0 16px}.task-meta-row{display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:6px 8px}.task-emoji{font-size:12px;line-height:1}.assignee-labels,.task-emoji{display:inline-flex;white-space:nowrap}.assignee-labels{align-items:center;gap:6px;flex-wrap:nowrap;min-width:0;overflow:hidden;text-overflow:ellipsis}.assignee-label{font-size:11px;white-space:nowrap}html[data-theme=light] .assignee-label{font-weight:600}.assignee-label.is-muted{color:var(--ui-muted)}.tasks-add{width:20px;height:20px;border-radius:6px;font-size:14px;display:inline-flex}.task-select,.tasks-add{line-height:1;padding:0;align-items:center;justify-content:center}.task-select{width:16px;height:16px;min-width:16px;min-height:16px;flex:0 0 16px;border-radius:4px;border:1px solid var(--ui-border-soft);background:transparent;color:var(--ui-text);display:flex;font-size:10px;cursor:pointer}.task-select.is-selected{border-color:rgba(var(--ui-accent-rgb),.8);background:rgba(var(--ui-accent-rgb),.35)}.tasks-assign{position:relative}.tasks-assign-panel{position:absolute;top:calc(100% + 6px);right:0;min-width:220px;z-index:20}.tasks-filter{position:relative}.tasks-filter-panel{position:absolute;top:calc(100% + 6px);left:0;min-width:240px;z-index:20}.tasks-filter-section{margin-top:10px;display:flex;flex-direction:column;gap:6px}.tasks-filter-row{display:flex;flex-wrap:wrap;gap:6px}.task-filter-chip{border-radius:999px;border:1px solid var(--ui-border-soft);background:rgba(var(--ui-accent-rgb),.06);color:var(--ui-text);padding:4px 8px;font-size:11px;cursor:pointer}.task-filter-chip:focus-visible,.task-filter-chip:hover{border-color:rgba(var(--ui-accent-rgb),.45)}.task-filter-chip.is-active{border-color:rgba(var(--ui-accent-rgb),.7);background:rgba(var(--ui-accent-rgb),.18)}.tasks-filter-actions{margin-top:10px;display:flex;justify-content:flex-end}.tasks-assign-list{display:flex;flex-direction:column;gap:6px;margin-top:8px;max-height:200px;overflow:auto}.tasks-assign-actions{margin-top:8px;display:flex;gap:8px;align-items:center}.tasks-list.is-drag-over{outline:2px dashed rgba(var(--ui-accent-rgb),.7);outline-offset:6px;background:rgba(var(--ui-accent-rgb),.14);border-radius:12px}.task-drag-ghost{position:fixed;left:0;top:0;padding:6px 10px;border-radius:999px;background:var(--ui-ink-90);border:1px solid rgba(var(--ui-accent-rgb),.5);color:var(--ui-text);font-size:12px;pointer-events:none;z-index:9999;white-space:nowrap;transform:translate(0)}.task-context-menu{position:fixed;min-width:200px;background:var(--ui-ink-95);border:1px solid rgba(var(--ui-accent-rgb),.4);border-radius:10px;padding:6px;z-index:10000;display:flex;flex-direction:column;gap:2px}.task-context-item{width:100%;border:none;background:transparent;color:var(--ui-text);font-size:12px;text-align:left;padding:6px 8px;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:space-between}.task-context-item:focus,.task-context-item:hover{background:rgba(var(--ui-accent-rgb),.12);outline:none}.task-context-item.is-active{color:#6db7ff}.task-context-item.is-danger{color:#ff7a7a}.task-context-divider{height:1px;background:var(--ui-white-08);margin:4px 0}.task-context-item.has-submenu{position:relative}.task-context-item.has-submenu:after{content:"";position:absolute;top:-6px;bottom:-6px;left:100%;width:10px}.task-context-caret{color:var(--ui-muted)}.task-context-submenu{position:absolute;top:-6px;left:calc(100% + 6px);min-width:180px;background:var(--ui-ink-96);border:1px solid rgba(var(--ui-accent-rgb),.35);border-radius:10px;padding:6px;display:none;flex-direction:column;gap:2px;z-index:10001}.task-context-item.has-submenu:focus-within .task-context-submenu,.task-context-item.has-submenu:hover .task-context-submenu{display:flex}.tasks-list--empty{padding:6px 0 2px;min-height:36px}.task-empty{font-size:12px;color:var(--ui-muted)}.task-status{width:16px;height:16px;min-width:16px;min-height:16px;border-radius:50%;border:1px solid var(--ui-border-soft);background:transparent;color:var(--ui-text);display:flex;align-items:center;justify-content:center;font-size:11px;line-height:1;cursor:pointer;padding:0;box-sizing:border-box;flex:0 0 16px;align-self:flex-start;margin-top:2px}.task-status-icon{width:10px;height:10px;display:block}.task-status--done{border-color:rgba(var(--ui-accent-rgb),.8);background:rgba(var(--ui-accent-rgb),.3);color:#0b0b0d}.task-status--in_progress,.task-status--waiting{border-color:var(--ui-border-soft);background:transparent}.task-title{font-weight:500;font-size:14px;line-height:1.35;letter-spacing:.01em;color:var(--ui-text)}.task-body{margin-top:3px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.task-body,.task-pill{font-size:11px;color:var(--ui-muted)}.task-pill{padding:2px 8px;border-radius:999px;border:1px solid var(--ui-white-08);background:var(--ui-white-04);letter-spacing:.02em;display:inline-flex;align-items:center;justify-content:flex-start;min-width:0}.task-pill.is-empty{opacity:0;pointer-events:none}.tasks-page .task-pill--priority,.tasks-page .task-pill--status{justify-content:center;min-width:28px;padding:2px 6px}.task-status-pill--todo{color:var(--ui-muted);border-color:var(--ui-white-12);background:var(--ui-white-03)}.task-status-pill--in_progress{color:rgba(var(--ui-accent-rgb),.75);border-color:rgba(var(--ui-accent-rgb),.35);background:rgba(var(--ui-accent-rgb),.08)}.task-status-pill--waiting{color:rgba(180,180,180,.85);border-color:rgba(180,180,180,.35);background:rgba(180,180,180,.08)}.task-status-pill--done{color:rgba(var(--ui-accent-rgb),.95);border-color:rgba(var(--ui-accent-rgb),.45);background:rgba(var(--ui-accent-rgb),.12)}.task-pill--high{color:#ff7a7a;border-color:rgba(255,122,122,.4);background:rgba(255,122,122,.08)}.task-pill--medium{color:#f0b84b;border-color:rgba(240,184,75,.4);background:rgba(240,184,75,.08)}.task-pill--low{color:#6db7ff;border-color:rgba(var(--ui-accent-rgb),.4);background:rgba(var(--ui-accent-rgb),.08)}.task-pill--date,.task-pill--status{color:var(--ui-text)}.task-pill--assignees{color:var(--ui-text);padding:0 2px;border:none;background:transparent;max-width:240px;overflow:visible}html[data-theme=light] .task-pill{border-color:rgba(47,53,56,.24);background:rgba(47,53,56,.04);color:#1f2326}html[data-theme=light] .task-status-pill--todo{color:#353c40;border-color:rgba(47,53,56,.26);background:rgba(47,53,56,.05)}html[data-theme=light] .task-status-pill--in_progress{color:#0f5f98;border-color:rgba(15,95,152,.6);background:rgba(15,95,152,.16)}html[data-theme=light] .task-status-pill--waiting{color:#4a5054;border-color:rgba(74,80,84,.45);background:rgba(74,80,84,.12)}html[data-theme=light] .task-status-pill--done{color:#0f5f98;border-color:rgba(15,95,152,.6);background:rgba(15,95,152,.2)}html[data-theme=light] .task-pill--high{color:#a53434;border-color:rgba(165,52,52,.55);background:rgba(165,52,52,.16)}html[data-theme=light] .task-pill--medium{color:#c07a12;border-color:rgba(192,122,18,.5);background:rgba(192,122,18,.14)}html[data-theme=light] .task-pill--low{color:#0f5f98;border-color:rgba(15,95,152,.5);background:rgba(15,95,152,.12)}html[data-theme=light] .task-pill--assignees{border:none;background:transparent;color:#1f2326}html[data-theme=light] .assignee-label.is-muted{color:rgba(31,35,38,.6)}.tasks-board-summary{display:inline-flex;align-items:center;gap:6px}.tasks-board-summary-item{display:inline-flex;align-items:center;gap:4px;font-size:10px;padding:2px 6px;border-radius:999px;border:1px solid var(--ui-glass-border);background:var(--ui-glass-gradient),var(--ui-glass-bg);-webkit-backdrop-filter:blur(14px) saturate(160%);backdrop-filter:blur(14px) saturate(160%);color:var(--ui-text)}.tasks-board-summary .task-emoji{font-size:11px}.tasks-board-summary-count{font-size:10px;color:var(--ui-text)}@media (max-width:960px){.task-meta-row{gap:6px}}.tasks-drop-line{position:absolute;left:6px;right:6px;height:4px;border-radius:999px;background:#2e9bff;box-shadow:0 0 0 1px rgba(12,18,22,.45),0 0 20px rgba(46,155,255,.7);pointer-events:none;z-index:3;transform:translateY(-2px)}html[data-theme=light] .tasks-drop-line{background:#1b6fb3;box-shadow:0 0 0 1px rgba(15,23,28,.35),0 0 16px rgba(27,111,179,.55)}.task-actions{display:flex;align-items:center;gap:4px;margin-left:auto;opacity:0;transition:opacity .15s ease}.task-item:focus-within .task-actions,.task-item:hover .task-actions{opacity:1}@media (hover:none){.task-actions{opacity:1}}.task-assignees{display:flex;flex-direction:column;gap:6px}.task-assignee{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--ui-text)}.task-assignee input{width:16px;height:16px;flex:0 0 16px}.task-assignee-name{color:inherit;font-size:inherit}.board-meta{font-size:12px;color:var(--ui-muted)}.board-open{font-size:12px;color:var(--ui-accent);font-weight:600;letter-spacing:.08em;text-transform:uppercase}.board-card--skeleton{border-style:dashed;border-color:var(--ui-white-08);background:var(--ui-white-03)}.panel{position:absolute;z-index:10;background:var(--ui-glass-gradient),var(--ui-glass-bg);border:1px solid var(--ui-glass-border);border-radius:14px;padding:12px;box-shadow:var(--ui-glass-shadow);-webkit-backdrop-filter:blur(24px) saturate(160%);backdrop-filter:blur(24px) saturate(160%);animation:panel-in .35s ease-out both}.panel,.panel-body{display:flex;flex-direction:column;gap:12px}.board-root.is-mobile .panel.panel-collapsed,.panel.panel-collapsed .panel-body{display:none}.modal-title-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.modal-close{border:none;background:transparent;color:var(--ui-muted);font-size:20px;line-height:1;padding:0 4px;cursor:pointer}.modal-close:hover{color:var(--ui-text)}.panel-right{top:20px;right:20px;width:300px;max-height:calc(100vh - 40px);overflow:auto;animation-delay:.05s}.panel-fab{position:absolute;top:20px;right:20px;z-index:12;width:36px;height:36px;border-radius:12px;border:1px solid var(--ui-border-soft);background:var(--ui-surface);color:var(--ui-text);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.panel-fab:hover{border-color:rgba(255,255,255,.2)}.panel-title{margin:0;letter-spacing:.2em}.panel-label,.panel-title{font-size:10px;text-transform:uppercase;color:var(--ui-muted)}.panel-label{letter-spacing:.16em}.panel-muted{color:var(--ui-muted)}.panel-message{color:var(--ui-danger)}.panel-divider{height:1px;background:var(--ui-border-soft);width:100%}.panel-block{gap:8px}.panel-block,.text-style-controls{display:flex;flex-direction:column}.text-style-controls{gap:10px;margin-top:6px}.text-style-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.text-style-row input[type=number]{width:80px;padding:6px 8px;border-radius:10px;border:1px solid var(--ui-border-soft);background:var(--ui-ink-60);color:var(--ui-text)}.text-style-row input[type=color]{width:42px;height:32px;padding:0;border:1px solid var(--ui-border-soft);border-radius:8px;background:transparent;cursor:pointer}.text-style-divider{width:1px;height:20px;background:var(--ui-border-soft)}.btn-toggle{min-width:30px;padding:6px 8px;font-weight:700}.btn-toggle.is-active{background:rgba(var(--ui-accent-rgb),.22);border-color:rgba(var(--ui-accent-rgb),.5);color:var(--ui-text)}.panel-list{display:flex;flex-direction:column;gap:10px}.modal-backdrop{position:fixed;inset:0;background:var(--ui-ink-60);display:flex;align-items:center;justify-content:center;z-index:12}.modal-card{width:320px;padding:16px;border-radius:16px;background:var(--ui-surface);border:1px solid var(--ui-border-soft);box-shadow:none;display:flex;flex-direction:column;gap:12px}.modal-card--wide{width:min(560px,92vw)}.modal-title{font-size:14px;font-weight:600;color:var(--ui-text)}.modal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.modal-block,.modal-grid label{font-size:11px;color:var(--ui-muted);display:flex;flex-direction:column;gap:6px}.modal-block textarea,.modal-grid input,.modal-grid select{width:100%;padding:6px 8px;border-radius:10px;border:1px solid var(--ui-border-soft);background:var(--ui-ink-60);color:var(--ui-text)}.modal-inline{display:flex;align-items:center;gap:8px}.modal-inline input{flex:1 1}.modal-actions{display:flex;justify-content:flex-end;gap:10px}.comment-item{padding:8px;border-radius:10px;background:var(--ui-white-03);border:1px solid var(--ui-white-06)}.comment-meta{display:flex;align-items:center;gap:6px;letter-spacing:.14em;margin-bottom:4px;min-width:0}.comment-action,.comment-meta{font-size:9px;text-transform:uppercase;color:var(--ui-muted)}.comment-action{border:0;background:transparent;letter-spacing:.12em;padding:0}.comment-actions-inline{margin-left:auto;display:inline-flex;align-items:center;gap:8px}.comment-action.is-danger{color:rgba(255,120,120,.9)}.comment-action:disabled{opacity:.5;cursor:not-allowed}.comment-dot{width:10px;height:10px;border-radius:999px;border:1px solid rgba(255,255,255,.2);flex:0 0 10px}.comment-user{font-weight:600;max-width:180px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.comment-time{font-size:9px;letter-spacing:.1em;opacity:.7}.comment-color-row{display:flex;align-items:center;gap:6px}.comment-edit textarea{width:100%}.comment-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:6px}.comment-color-swatch{width:16px;height:16px;border-radius:999px;border:1px solid rgba(255,255,255,.25);cursor:pointer;padding:0;background:transparent;transition:transform .12s ease,box-shadow .12s ease}.comment-color-swatch.is-active{border-color:rgba(255,255,255,.85);box-shadow:0 0 0 2px var(--ui-ink-90),0 0 0 4px rgba(255,255,255,.45);transform:scale(1.08)}.file-input{display:none}.context-menu{position:absolute;z-index:30;min-width:200px;max-height:calc(100vh - 16px);overflow-y:auto;background:var(--ui-surface-strong);border:1px solid var(--ui-border-soft);border-radius:10px;padding:6px;display:flex;flex-direction:column;gap:4px;box-shadow:none;animation:menu-in .12s ease-out both}.context-menu button{width:100%;text-align:left;background:transparent;border:none;padding:6px 8px;border-radius:7px;font-weight:500;display:flex;align-items:center;gap:8px;justify-content:flex-start}.context-menu .menu-icon{width:16px;height:16px;flex:0 0 16px;color:var(--ui-muted);opacity:.8}.context-menu button:not(:disabled):hover .menu-icon{color:var(--ui-text);opacity:1}.context-menu .danger{color:var(--ui-danger)}.context-menu button:not(:disabled):hover{background:rgba(var(--ui-accent-rgb),.16);border-color:transparent}.inline-text-editor{position:fixed;z-index:40;background:var(--ui-surface-strong);color:var(--ui-text);border:1px solid var(--ui-border);border-radius:8px;padding:6px 8px;resize:none;outline:none;transform-origin:top left;line-height:1.2;box-shadow:none}.auth-card{width:min(440px,92vw);padding:32px;background:var(--ui-glass-gradient),var(--ui-glass-bg);border:1px solid var(--ui-glass-border);border-radius:18px;box-shadow:var(--ui-glass-shadow);-webkit-backdrop-filter:blur(24px) saturate(160%);backdrop-filter:blur(24px) saturate(160%);display:flex;flex-direction:column;gap:16px}html[data-theme=light] .auth-card,html[data-theme=light] .notes-card,html[data-theme=light] .share-gate-card{background:linear-gradient(135deg,rgba(255,255,255,.16),rgba(255,255,255,.02)),rgba(255,255,255,.12);border-color:rgba(60,76,84,.1);box-shadow:0 8px 18px rgba(15,23,28,.05)}.auth-brand{display:flex;align-items:center;justify-content:space-between;gap:12px}.boards-page .auth-card{align-self:center}.auth-card h1{margin:0;font-size:28px;letter-spacing:-.02em}.share-gate{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:32px;background:var(--ui-bg)}.share-gate-card{width:min(420px,92vw);padding:28px;background:var(--ui-glass-gradient),var(--ui-glass-bg);border:1px solid var(--ui-glass-border);border-radius:18px;display:flex;flex-direction:column;gap:12px;box-shadow:var(--ui-glass-shadow);-webkit-backdrop-filter:blur(24px) saturate(160%);backdrop-filter:blur(24px) saturate(160%)}.share-gate-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.asset-viewer{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;background:var(--ui-bg);padding:16px}.asset-viewer-media{max-width:100%;max-height:100%;object-fit:contain;border-radius:12px;background:var(--ui-bg)}.asset-viewer-empty{color:var(--ui-muted)}.auth-stack{display:flex;flex-direction:column;gap:12px}.auth-password{position:relative;display:flex;align-items:center}.auth-password input{padding-right:42px}.auth-password-toggle{position:absolute;right:8px;top:50%;width:28px;height:28px;border-radius:8px;border:1px solid transparent;background:transparent;color:var(--ui-muted);padding:0;display:inline-flex;align-items:center;justify-content:center;transition:color .12s ease,background .12s ease,border-color .12s ease;backface-visibility:hidden}.auth-password-toggle,button.auth-password-toggle{transform:translateY(-50%) translateZ(0)}.auth-password-toggle svg{width:18px;height:18px;display:block;pointer-events:none}.auth-password-toggle:hover{color:var(--ui-text);background:var(--ui-white-06);border-color:var(--ui-white-12);transform:translateY(-50%) translateZ(0)}.auth-password-toggle:focus-visible{outline:1px solid rgba(var(--ui-accent-rgb),.55);outline-offset:2px}.auth-password-toggle:active{background:var(--ui-white-08);transform:translateY(-50%) translateZ(0)}.auth-actions{display:flex;gap:12px;flex-wrap:wrap}.auth-actions .btn{flex:1 1 120px}@media (max-width:1100px){.toolbar-stack{left:320px;transform:none;max-width:calc(100vw - 360px)}}@media (max-width:960px){main.page-shell{align-items:stretch}.boards-page,.tasks-page{width:100%;margin:0}.boards-header{flex-direction:column;align-items:flex-start;gap:6px}.boards-actions{gap:8px}.boards-page,.tasks-page{gap:12px}.board-row{grid-template-columns:auto 1fr;align-items:flex-start}.board-row.is-trash{grid-template-columns:1fr}.board-row-actions{grid-column:1/-1;justify-content:flex-start;flex-wrap:wrap}.board-row-meta{display:flex;flex-direction:column;gap:4px}.board-row-dot{display:none}.sidebar{position:absolute;top:12px;left:12px;right:12px;bottom:auto;width:auto}.toolbar-stack{top:auto;bottom:12px;left:12px;right:12px;transform:none;max-width:none;align-items:center}.toolbar{border-radius:18px;max-width:none;justify-content:center}.toolbar-stack .draw-panel{top:auto;bottom:calc(100% + 8px)}.panel-right{top:auto;bottom:88px;right:12px;left:12px;width:auto;max-height:40vh}}@media (max-height:720px),(max-width:720px){.boards-page{gap:10px}.boards-header{padding-top:4px;padding-bottom:6px}.sidebar{gap:10px;padding:10px;max-height:min(46vh,420px);overflow:visible;animation:none;transform:none}.sidebar-section{gap:6px}.sidebar-title{font-size:16px}.sidebar-subtitle{font-size:8px}.toolbar{padding:6px 10px;gap:6px}.toolbar-group{gap:6px}.toolbar-meta{font-size:10px}.panel{gap:8px;padding:10px}.panel-right{max-height:min(34vh,260px)}.sidebar-scroll{max-height:min(46vh,420px);overflow:auto}.panel-list{max-height:140px;overflow:auto}.task-actions{display:none}}.board-root.is-mobile .panel-right{top:auto;bottom:12px;max-height:calc(100vh - 120px)}.board-root.is-mobile .panel-fab{top:64px;right:12px;bottom:auto}@keyframes panel-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes menu-in{0%{opacity:0;transform:translateY(4px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@font-face{font-family:DM Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/7ab938503e4547a1-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:DM Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/13971731025ec697-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:DM Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/7ab938503e4547a1-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:DM Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/13971731025ec697-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:DM Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/7ab938503e4547a1-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:DM Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/13971731025ec697-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:DM Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/7ab938503e4547a1-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:DM Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/13971731025ec697-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:DM Sans Fallback;src:local("Arial");ascent-override:94.90%;descent-override:29.66%;line-gap-override:0.00%;size-adjust:104.53%}.__className_0eeb07{font-family:DM Sans,DM Sans Fallback;font-style:normal}.__variable_0eeb07{--font-ui:"DM Sans","DM Sans Fallback"}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/e1aab0933260df4d-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/b7387a63dd068245-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/36966cca54120369-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/e1aab0933260df4d-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/b7387a63dd068245-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/36966cca54120369-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/e1aab0933260df4d-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/b7387a63dd068245-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/36966cca54120369-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/e1aab0933260df4d-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/b7387a63dd068245-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/36966cca54120369-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Space Grotesk Fallback;src:local("Arial");ascent-override:89.71%;descent-override:26.62%;line-gap-override:0.00%;size-adjust:109.69%}.__className_49a339{font-family:Space Grotesk,Space Grotesk Fallback;font-style:normal}.__variable_49a339{--font-space:"Space Grotesk","Space Grotesk Fallback"}@font-face{font-family:Fraunces;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/fb526027db1fc1ae-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Fraunces;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/4da3161b738b07dd-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Fraunces;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/af4bf8399d1aacdf-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Fraunces;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/fb526027db1fc1ae-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Fraunces;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/4da3161b738b07dd-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Fraunces;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/af4bf8399d1aacdf-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Fraunces;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/fb526027db1fc1ae-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Fraunces;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/4da3161b738b07dd-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Fraunces;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/af4bf8399d1aacdf-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Fraunces Fallback;src:local("Times New Roman");ascent-override:84.71%;descent-override:22.09%;line-gap-override:0.00%;size-adjust:115.45%}.__className_d4d11e{font-family:Fraunces,Fraunces Fallback;font-style:normal}.__variable_d4d11e{--font-serif:"Fraunces","Fraunces Fallback"}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/edc640959b0c7826-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ac0e76ddaeeb7981-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/64d784ea54a4acde-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ff71da380fbe67dd-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/6d831b18ae5b01dc-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/558ca1a6aa3cb55e-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/edc640959b0c7826-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/ac0e76ddaeeb7981-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/64d784ea54a4acde-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/ff71da380fbe67dd-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/6d831b18ae5b01dc-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/558ca1a6aa3cb55e-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:JetBrains Mono Fallback;src:local("Arial");ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.00%;size-adjust:134.59%}.__className_225a97{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.__variable_225a97{--font-mono:"JetBrains Mono","JetBrains Mono Fallback"}