:root{--bg: #0b0e13;--panel: #11151c;--surface: #141920;--card: #1a2029;--raise: #222935;--hover: #29313e;--line: #232a35;--line-2: #303948;--fg: #e8ebf0;--fg-2: #a7afbc;--fg-3: #6f7888;--accent: #f5b544;--accent-ink: #1d1506;--accent-text: var(--accent);--accent-soft: color-mix(in oklab, var(--accent) 15%, transparent);--accent-line: color-mix(in oklab, var(--accent) 48%, transparent);--danger: #ff6b6b;--ok: #4fd1a5;--info: #7fa8ff;--dot: rgba(255, 255, 255, .045);--scrim: rgba(4, 6, 9, .6);--glass: color-mix(in oklab, var(--panel) 80%, transparent);--shadow-1: 0 1px 2px rgba(0, 0, 0, .35);--shadow-2: 0 14px 30px -14px rgba(0, 0, 0, .75), 0 2px 6px rgba(0, 0, 0, .3);--shadow-3: 0 30px 70px -20px rgba(0, 0, 0, .8), 0 6px 18px rgba(0, 0, 0, .35);--av-bg: 28%;--av-fg: 84%;--tag-mix: 84%;--font-display: "Unbounded", "Segoe UI", system-ui, sans-serif;--font-body: "Instrument Sans", "Segoe UI", system-ui, -apple-system, sans-serif;--font-mono: "Geist Mono", ui-monospace, SFMono-Regular, Consolas, monospace;--r: 11px;--r-lg: 16px;--ease: cubic-bezier(.2, .8, .2, 1);--spring: cubic-bezier(.34, 1.42, .64, 1);color-scheme:dark}:root.light{--bg: #eceef2;--panel: #f9fafb;--surface: #e3e7ed;--card: #ffffff;--raise: #eef1f4;--hover: #e3e7ec;--line: #d8dde5;--line-2: #c4ccd7;--fg: #131921;--fg-2: #465062;--fg-3: #768092;--accent-text: color-mix(in oklab, var(--accent) 52%, #000);--accent-line: color-mix(in oklab, var(--accent) 70%, transparent);--danger: #d33f3f;--ok: #0f9468;--info: #2c68d8;--dot: rgba(19, 25, 33, .075);--scrim: rgba(19, 25, 33, .3);--glass: color-mix(in oklab, var(--panel) 86%, transparent);--shadow-1: 0 1px 2px rgba(16, 24, 40, .07);--shadow-2: 0 12px 28px -14px rgba(16, 24, 40, .3), 0 2px 5px rgba(16, 24, 40, .06);--shadow-3: 0 30px 60px -20px rgba(16, 24, 40, .35), 0 6px 16px rgba(16, 24, 40, .08);--av-bg: 86%;--av-fg: 30%;--tag-mix: 56%;color-scheme:light}html{height:100%;box-sizing:border-box}*,*:before,*:after{box-sizing:border-box}body{height:100%;margin:0;background:var(--bg);color:var(--fg);font-family:var(--font-body);font-size:14px;line-height:1.45;-webkit-font-smoothing:antialiased;overflow:hidden}#root{height:100%}::selection{background:var(--accent-soft)}button,input,textarea,select{font:inherit;color:inherit}button{-webkit-tap-highlight-color:transparent}img{max-width:100%}[hidden]{display:none!important}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}svg.lucide{flex:none;display:block}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.muted{color:var(--fg-3)}.small{font-size:12px}.xs{font-size:11px}.grow{flex:1;min-width:0}.min0{min-width:0}.truncate{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.row{display:flex;align-items:center;gap:8px}.wrap{flex-wrap:wrap}.spin{animation:spin .9s linear infinite}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:var(--line-2);border-radius:8px;border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-track{background:transparent}*{scrollbar-width:thin;scrollbar-color:var(--line-2) transparent}.app{height:100%;display:flex;gap:12px;padding-block:12px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));position:relative;isolation:isolate}.app:before{content:"";position:fixed;z-index:-1;left:-15vw;top:-25vh;width:70vw;height:70vh;background:radial-gradient(closest-side,color-mix(in oklab,var(--accent) 10%,transparent),transparent);pointer-events:none}.main{flex:1;min-width:0;display:flex;flex-direction:column;gap:10px}.boot{height:100%;display:grid;place-items:center}.boot-inner{display:flex;flex-direction:column;align-items:center;gap:14px;color:var(--fg-3);animation:fadeIn .4s both}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:36px;padding:0 13px;border-radius:10px;border:1px solid var(--line);background:var(--panel);color:var(--fg);font-weight:500;font-size:13px;cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s,transform .12s var(--ease),filter .15s,opacity .15s}.btn:hover:not(:disabled){background:var(--raise);border-color:var(--line-2)}.btn:active:not(:disabled){transform:scale(.97)}.btn:disabled{opacity:.45;cursor:default}.btn.primary{background:var(--accent);border-color:transparent;color:var(--accent-ink);font-weight:600}.btn.primary:hover:not(:disabled){background:var(--accent);filter:brightness(1.07)}.btn.quiet{background:transparent;border-color:transparent;color:var(--fg-2)}.btn.quiet:hover:not(:disabled){background:var(--raise);color:var(--fg);border-color:transparent}.btn.danger{color:var(--danger)}.btn.danger-solid{background:var(--danger);border-color:transparent;color:#fff;font-weight:600}.btn.danger-solid:hover:not(:disabled){background:var(--danger);filter:brightness(1.08)}.btn.stop{background:color-mix(in oklab,var(--danger) 16%,transparent);border-color:color-mix(in oklab,var(--danger) 40%,transparent);color:var(--danger)}.btn.sm{height:28px;padding:0 9px;font-size:12px;border-radius:8px;gap:5px}.btn.icon-btn{width:36px;padding:0}.btn.sm.icon-btn{width:28px}.btn.block{width:100%}.btn.has-filter{border-color:var(--accent-line);color:var(--accent-text)}.badge{min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--accent);color:var(--accent-ink);font-size:10.5px;font-weight:700;display:inline-grid;place-items:center}.mini{width:24px;height:24px;display:inline-grid;place-items:center;border-radius:6px;border:0;background:transparent;color:var(--fg-3);cursor:pointer;flex:none;padding:0;transition:background .15s,color .15s}.mini:hover:not(:disabled){background:var(--hover);color:var(--fg)}.mini.danger:hover:not(:disabled){color:var(--danger)}.mini:disabled{opacity:.3;cursor:default}.link-btn{border:0;background:transparent;color:var(--accent-text);font-size:12px;font-weight:600;cursor:pointer;padding:2px 4px;border-radius:5px}.link-btn:hover{text-decoration:underline}.input{height:36px;width:100%;padding:0 11px;border-radius:9px;border:1px solid var(--line);background:var(--surface);color:var(--fg);outline:none;transition:border-color .15s,box-shadow .15s,background .15s;font-size:13.5px}.input::placeholder{color:var(--fg-3)}.input:focus{border-color:var(--accent-line);box-shadow:0 0 0 3px var(--accent-soft)}.input:disabled,.input[readonly]{opacity:.8}textarea.input{height:auto;padding:9px 11px;resize:vertical;line-height:1.5}select.input{padding-right:28px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--fg-3) 50%),linear-gradient(135deg,var(--fg-3) 50%,transparent 50%);background-position:calc(100% - 15px) 52%,calc(100% - 10px) 52%;background-size:5px 5px;background-repeat:no-repeat;cursor:pointer}.input.sm{height:30px;font-size:12.5px}.input.xs{height:28px;width:64px;padding:0 8px;font-size:12.5px}.sm-select{height:32px;font-size:12.5px;width:auto;min-width:150px}.select{position:relative;min-width:0}.select-btn{display:flex;align-items:center;gap:8px;width:100%;height:36px;padding:0 10px 0 11px;border-radius:9px;border:1px solid var(--line);background:var(--surface);color:var(--fg);font-size:13.5px;text-align:left;cursor:pointer;transition:border-color .15s,box-shadow .15s,background .15s}.select-btn:hover:not(:disabled){border-color:var(--line-2)}.select-btn:focus-visible,.select-btn.open{outline:none;border-color:var(--accent-line);box-shadow:0 0 0 3px var(--accent-soft)}.select-btn.invalid{border-color:color-mix(in oklab,var(--danger) 70%,transparent)}.select-btn.invalid:focus-visible,.select-btn.invalid.open{box-shadow:0 0 0 3px color-mix(in oklab,var(--danger) 18%,transparent)}.select-btn:disabled{opacity:.6;cursor:default}.select-btn.sm{height:32px;padding:0 8px 0 10px;border-radius:8px;font-size:12.5px}.select-btn>svg:not(.picker-chev){color:var(--fg-3);flex:none}.select-value{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.picker-chev{flex:none;transition:transform .22s var(--ease)}.open>.picker-chev{transform:rotate(180deg)}.select-pop{position:fixed;z-index:85;min-width:180px;overflow-y:auto;overscroll-behavior:contain;background:var(--panel);border:1px solid var(--line-2);border-radius:12px;box-shadow:var(--shadow-3);padding:5px;animation:popIn .16s var(--ease) both;transform-origin:top center}.select-pop.up{transform-origin:bottom center;animation-name:popInUp}.select-pop.closing{animation:popOut .12s var(--ease) both;pointer-events:none}.select-opt{display:flex;align-items:center;gap:9px;width:100%;min-height:34px;padding:6px 8px;border:0;border-radius:8px;background:transparent;color:var(--fg);font-size:13px;text-align:left;cursor:pointer}.select-opt.sel{background:var(--accent-soft)}.select-opt.active{background:var(--raise)}.select-opt.sel.active{background:color-mix(in oklab,var(--accent) 22%,transparent)}.select-opt:disabled{opacity:.4;cursor:default}.select-opt>svg{color:var(--fg-3);flex:none}.select-opt-text{display:flex;flex-direction:column;gap:1px}.select-opt-text small{font-size:11.5px;line-height:1.35;color:var(--fg-3)}.select-empty{padding:10px;font-size:12.5px;color:var(--fg-3);text-align:center}.bare-input{flex:1;min-width:0;border:0;background:transparent;outline:none;color:var(--fg);font-size:13.5px;height:30px}.field{display:flex;flex-direction:column;gap:6px}.field>span{font-size:12px;color:var(--fg-2);font-weight:500}.form{display:flex;flex-direction:column;gap:14px}.form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:6px;flex-wrap:wrap}.form-err{margin:0;color:var(--danger);font-size:12.5px}.form-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.form-note{margin:-4px 0 0;padding:9px 11px;border-radius:9px;background:var(--surface);border:1px dashed var(--line-2);color:var(--fg-2);font-size:12.5px;line-height:1.5}.field .req{font-style:normal;font-size:10.5px;color:var(--fg-3);margin-left:4px;font-weight:500}@media(max-width:560px){.form-2{grid-template-columns:minmax(0,1fr)}}.form-ok{margin:0;color:var(--ok);font-size:12.5px}kbd{font-family:var(--font-mono);font-size:10.5px;line-height:1;padding:3px 6px;border-radius:5px;border:1px solid var(--line-2);border-bottom-width:2px;color:var(--fg-3);background:var(--surface)}.switch-row{display:flex;align-items:center;gap:12px;padding:6px 2px;cursor:pointer}.switch-label{display:block;font-size:13px;font-weight:500}.switch{position:relative;width:34px;height:20px;flex:none}.switch input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;margin:0;cursor:pointer}.switch i{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:20px;background:var(--line-2);transition:background .2s}.switch i:after{content:"";position:absolute;top:3px;left:3px;width:14px;height:14px;border-radius:50%;background:#fff;transition:transform .25s var(--spring)}.switch.on i{background:var(--accent)}.switch.on i:after{transform:translate(14px)}.switch input:focus-visible+i{outline:2px solid var(--accent);outline-offset:2px}.swatches{display:flex;flex-wrap:wrap;gap:6px}.swatch{width:22px;height:22px;border-radius:7px;border:2px solid transparent;background:var(--tc);cursor:pointer;padding:0;box-shadow:inset 0 0 0 1px #00000026;transition:transform .15s var(--spring)}.swatch:hover{transform:scale(1.1)}.swatch.on{border-color:var(--fg);transform:scale(1.08)}.swatch.sm{width:16px;height:16px;border-radius:5px}.tag{--tc: #94a3b8;display:inline-flex;align-items:center;gap:5px;height:20px;padding:0 7px;border-radius:6px;font-size:11px;font-weight:600;letter-spacing:.01em;white-space:nowrap;background:color-mix(in oklab,var(--tc) 16%,transparent);color:color-mix(in oklab,var(--tc) var(--tag-mix),var(--fg))}.tag:before{content:"";width:6px;height:6px;border-radius:2px;background:var(--tc);flex:none}.tag-x{border:0;background:transparent;color:inherit;padding:0;margin-right:-3px;display:grid;place-items:center;cursor:pointer;opacity:.7}.tag-x:hover{opacity:1}.chip{display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 6px;border-radius:6px;font-size:11.5px;color:var(--fg-3);background:var(--raise);font-variant-numeric:tabular-nums;white-space:nowrap}.chip.ok{color:var(--ok);background:color-mix(in oklab,var(--ok) 13%,transparent)}.chip.overdue{color:var(--danger);background:color-mix(in oklab,var(--danger) 14%,transparent)}.chip.soon{color:var(--accent-text);background:var(--accent-soft)}.chip.done{color:var(--fg-3)}.prio{display:inline-flex;align-items:flex-end;gap:2px;height:13px;padding:0 3px;flex:none}.prio i{width:3px;border-radius:1.5px;background:var(--line-2)}.prio i.on{background:var(--fg-2)}.prio-high i.on{background:var(--accent)}.prio-urgent i.on{background:var(--danger)}.avatar{position:relative;display:inline-grid;place-items:center;border-radius:50%;flex:none;font-weight:600;letter-spacing:.02em;background:hsl(var(--hue, 220) 42% var(--av-bg));color:hsl(var(--hue, 220) 72% var(--av-fg));line-height:1;-webkit-user-select:none;user-select:none}.avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover;display:block}.avatar.empty{background:transparent;border:1.5px dashed var(--line-2);color:var(--fg-3)}.avatar .live{position:absolute;right:-2px;bottom:-2px;width:34%;height:34%;min-width:8px;min-height:8px;border-radius:50%;background:var(--accent);border:2px solid var(--card)}.av-stack{display:inline-flex;align-items:center}.av-stack .avatar{box-shadow:0 0 0 2px var(--panel)}.av-stack .avatar+.avatar{margin-left:-6px}.av-more{font-size:10.5px;color:var(--fg-3);margin-left:4px}.pill{display:inline-flex;align-items:center;height:18px;padding:0 6px;border-radius:5px;font-size:10.5px;font-weight:600;background:var(--raise);color:var(--fg-2);letter-spacing:.02em}.you{font-size:11px;color:var(--fg-3);font-weight:500}.level-pill{display:inline-flex;align-items:center;gap:5px;height:24px;padding:0 9px;border-radius:7px;font-size:12px;font-weight:500;background:var(--raise);color:var(--fg-2);white-space:nowrap}.level-pill.l3{background:var(--accent-soft);color:var(--accent-text)}.level-pill.l2{background:color-mix(in oklab,var(--info) 15%,transparent);color:var(--info)}.role-pill{display:inline-flex;margin-top:5px;height:18px;align-items:center;padding:0 6px;border-radius:5px;font-size:10.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;background:var(--raise);color:var(--fg-2)}.role-pill.r-ADMIN{background:var(--accent-soft);color:var(--accent-text)}.role-pill.r-VIEWER{background:color-mix(in oklab,var(--info) 14%,transparent);color:var(--info)}.status-pill{display:inline-flex;align-items:center;gap:5px;height:22px;padding:0 8px;border-radius:6px;font-size:11.5px;font-weight:500;white-space:nowrap}.status-pill.ok{color:var(--ok);background:color-mix(in oklab,var(--ok) 12%,transparent)}.status-pill.warn{color:var(--accent-text);background:var(--accent-soft)}.anchor{position:relative}.pop{position:absolute;top:calc(100% + 6px);z-index:45;min-width:230px;background:var(--panel);border:1px solid var(--line-2);border-radius:12px;box-shadow:var(--shadow-3);padding:6px;animation:popIn .18s var(--ease) both;transform-origin:top right;cursor:default}.pop.right{right:0}.pop.left{left:0;transform-origin:top left}.pop-item{display:flex;align-items:center;gap:9px;width:100%;min-height:34px;padding:6px 8px;border-radius:8px;border:0;background:transparent;color:var(--fg);font-size:13px;text-align:left;cursor:pointer}.pop-item:hover:not(:disabled){background:var(--raise)}.pop-item:disabled{opacity:.4;cursor:default}.pop-item.sel{background:var(--accent-soft)}.pop-item.danger{color:var(--danger)}.pop-item>svg{color:var(--fg-3)}.pop-item.danger>svg{color:var(--danger)}.pop-check{margin-left:auto;color:var(--accent-text)!important}.pop-label{padding:8px 8px 4px;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--fg-3);font-weight:600}.pop-sep{height:1px;background:var(--line);margin:5px 2px}.pop-row{display:flex;align-items:center;gap:9px;padding:4px 8px;font-size:13px;color:var(--fg)}.pop-row>svg{color:var(--fg-3)}.pop-pad{padding:2px 8px}.swatches.pad{padding:2px 8px 6px}.sidebar{width:262px;flex:none;display:flex;flex-direction:column;background:var(--panel);border:1px solid var(--line);border-radius:var(--r-lg);padding:12px 10px 10px;position:relative;z-index:30;min-height:0;transition:width .32s var(--ease)}.sb-brand{display:flex;align-items:center;gap:10px;padding:2px 4px 12px;overflow:hidden;transition:padding .32s var(--ease)}.sb-word{font-family:var(--font-display);font-weight:600;font-size:17px;letter-spacing:-.01em;flex:1;min-width:0;white-space:nowrap}.sb-logo{position:relative;flex:none;display:grid;place-items:center;width:28px;height:28px;padding:0;border:0;border-radius:8px;background:transparent;color:inherit;cursor:default;transition:background .15s}.sb-logo .logo{transition:opacity .2s var(--ease),transform .25s var(--ease)}.sb-logo-ic{position:absolute;top:0;right:0;bottom:0;left:0;margin:auto;color:var(--fg-2);opacity:0;transform:scale(.6) rotate(-90deg);transition:opacity .2s var(--ease),transform .25s var(--ease);pointer-events:none}.sb-toggle{transition:opacity .2s var(--ease) .1s,background .15s,border-color .15s}.logo{color:var(--fg);flex:none}.logo rect{transition:transform .6s var(--spring);transform-box:fill-box}.sb-brand:hover .lb2,.lg-brand:hover .lb2{transform:translateY(-4px)}.sb-brand:hover .lb3,.lg-brand:hover .lb3{transform:translateY(5px)}.sb-team{position:relative}.team-switch{width:100%;display:flex;align-items:center;gap:10px;padding:7px 8px;border-radius:12px;border:1px solid var(--line);background:var(--surface);color:var(--fg);cursor:pointer;text-align:left;overflow:hidden;transition:border-color .15s,background .15s,padding .32s var(--ease)}.team-switch:hover{border-color:var(--line-2);background:var(--raise)}.team-meta{display:flex;flex-direction:column;min-width:0;flex:1}.team-meta strong{font-size:13.5px;font-weight:600}.team-badge{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;font-family:var(--font-display);font-size:11px;font-weight:600;background:hsl(var(--hue) 45% var(--av-bg));color:hsl(var(--hue) 72% var(--av-fg));flex:none}.team-badge.sm{width:24px;height:24px;border-radius:7px;font-size:9px}.eyebrow{display:block;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--fg-3);font-weight:600}.team-pop{left:0;right:0;min-width:0}.team-row .row-tools{gap:1px}.team-row .row-tools{display:flex;opacity:0;transition:opacity .15s}.team-row:hover .row-tools,.team-row:focus-within .row-tools{opacity:1}.sb-scroll{flex:1;min-height:0;overflow-y:auto;margin:0 -6px;padding:0 6px}.sb-section{display:flex;flex-direction:column;gap:2px;padding-top:14px}.sb-label{position:relative;display:flex;align-items:center;justify-content:space-between;padding:0 8px 6px;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--fg-3);font-weight:600;min-height:24px;overflow:hidden;white-space:nowrap}.sb-label:after{content:"";position:absolute;left:50%;top:calc(50% - 3px);width:16px;height:1px;margin-left:-8px;background:var(--line-2);opacity:0;transform:scaleX(.2);transition:opacity .2s var(--ease),transform .3s var(--ease);pointer-events:none}.sb-item{display:flex;align-items:center;gap:10px;height:36px;padding:0 6px 0 8px;border-radius:9px;color:var(--fg-2);cursor:pointer;border:0;background:transparent;font-size:13.5px;width:100%;text-align:left;position:relative;overflow:hidden;white-space:nowrap;transition:background .15s,color .15s,padding .32s var(--ease)}.sb-item:hover:not(:disabled){background:var(--raise);color:var(--fg)}.sb-item:disabled{opacity:.4;cursor:default}.sb-item.active{background:var(--accent-soft);color:var(--fg)}.sb-ic{width:22px;height:22px;display:grid;place-items:center;flex:none}.board-ic{border-radius:6px;font-size:10.5px;font-weight:600;background:var(--raise);color:var(--fg-2);font-family:var(--font-display);transition:background .2s,color .2s}.sb-item.active .board-ic{background:var(--accent);color:var(--accent-ink)}.sb-count{font-family:var(--font-mono);font-size:11px;color:var(--fg-3)}.sb-item .row-tools{display:none;gap:1px}.sb-item:hover .row-tools,.sb-item:focus-within .row-tools{display:flex}.sb-item:hover .hide-on-hover{display:none}.sb-empty{margin:2px 8px;color:var(--fg-3);font-size:12.5px}.sb-create{margin-top:4px;justify-content:flex-start;overflow:hidden}.sb-foot{display:flex;flex-direction:column;gap:4px;padding-top:10px;margin-top:6px;border-top:1px solid var(--line)}.live-pill{display:flex;align-items:center;gap:10px;padding:8px;border-radius:10px;border:1px dashed var(--line-2);color:var(--fg-2);overflow:hidden;transition:padding .32s var(--ease)}.live-text{display:flex;flex-direction:column;line-height:1.3;min-width:0;white-space:nowrap}.live-text strong{font-size:12.5px;color:var(--fg);font-weight:600}.live-text span{font-size:10.5px;color:var(--fg-3)}.live-dot-big{width:8px;height:8px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 3px color-mix(in oklab,var(--ok) 20%,transparent);flex:none;animation:breathe 2.4s ease-in-out infinite}.live-dot-big.off{background:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.sb-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:65;background:var(--scrim);animation:fadeIn .2s both}.sidebar .sb-text{transition:opacity .22s var(--ease) .1s,background .15s,color .15s}@media(min-width:901px){.sidebar.collapsed{width:64px}.sidebar.collapsed .sb-text{opacity:0;pointer-events:none;transition:opacity .12s var(--ease)}.sidebar.collapsed .sb-brand{padding-left:7px;padding-right:7px}.sidebar.collapsed .sb-toggle{opacity:0;pointer-events:none;transition:opacity .1s}.sidebar.collapsed .sb-logo{cursor:pointer}.sidebar.collapsed .sb-logo:hover,.sidebar.collapsed .sb-logo:focus-visible{background:var(--raise)}.sidebar.collapsed .sb-logo:hover .logo,.sidebar.collapsed .sb-logo:focus-visible .logo{opacity:0;transform:scale(.6)}.sidebar.collapsed .sb-logo:hover .sb-logo-ic,.sidebar.collapsed .sb-logo:focus-visible .sb-logo-ic{opacity:1;transform:none}.sidebar.collapsed .team-switch{padding-left:4px}.sidebar.collapsed .team-pop{right:auto;min-width:250px}.sidebar.collapsed .sb-item{padding-left:10px}.sidebar.collapsed .sb-create{padding-left:13px}.sidebar.collapsed .sb-label:after{opacity:1;transform:none}.sidebar.collapsed .live-pill{padding-left:9px}}.topbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:2px 2px 0;min-height:50px}.tb-title{min-width:0;display:flex;flex-direction:column;gap:3px;margin-right:6px}.crumbs{display:flex;gap:6px;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--fg-3);font-weight:600;white-space:nowrap}.crumb-sep{opacity:.5}.board-title{margin:0;font-family:var(--font-display);font-size:21px;font-weight:600;letter-spacing:-.015em;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:34vw}.board-title.editable{cursor:text}.board-title-input{font-family:var(--font-display);font-size:19px;font-weight:600;background:var(--surface);border:1px solid var(--accent-line);color:var(--fg);border-radius:8px;padding:0 8px;height:30px;outline:none;width:min(360px,60vw);box-shadow:0 0 0 3px var(--accent-soft)}.tb-stats{display:flex;align-items:center;gap:9px;padding:4px 12px 4px 5px;border-radius:999px;border:1px solid var(--line);background:var(--panel);line-height:1.15}.tb-stats strong{display:block;font-size:13px;font-weight:600}.tb-stats span{font-size:11px;color:var(--fg-3);white-space:nowrap}.tb-spacer{flex:1}.search{display:flex;align-items:center;gap:8px;height:36px;padding:0 8px 0 11px;border-radius:10px;border:1px solid var(--line);background:var(--panel);color:var(--fg-3);width:230px;transition:border-color .15s,box-shadow .15s,width .35s var(--ease);cursor:text}.search:focus-within{border-color:var(--accent-line);box-shadow:0 0 0 3px var(--accent-soft);width:290px}.search input{flex:1;min-width:0;border:0;background:transparent;color:var(--fg);outline:none;font-size:13.5px}.search input::-webkit-search-cancel-button{display:none}.seg{display:inline-flex;padding:3px;border-radius:10px;background:var(--panel);border:1px solid var(--line);gap:2px}.seg button{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:28px;padding:0 10px;border:0;border-radius:7px;background:transparent;color:var(--fg-3);font-size:12.5px;font-weight:500;cursor:pointer;transition:background .2s,color .2s,box-shadow .2s}.seg button:hover{color:var(--fg)}.seg button.on{background:var(--raise);color:var(--fg);box-shadow:var(--shadow-1)}.bell{position:relative}.bell.ringing svg{animation:ring .8s var(--ease)}.bell-badge{position:absolute;top:3px;right:3px;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:var(--danger);color:#fff;font-size:10px;font-weight:700;display:grid;place-items:center;box-shadow:0 0 0 2px var(--bg);animation:popIn .3s var(--spring)}.avatar-btn{border:0;background:transparent;padding:0;border-radius:50%;cursor:pointer;display:grid;transition:transform .15s var(--spring)}.avatar-btn:hover{transform:scale(1.06)}.run-pill{display:inline-flex;align-items:center;gap:8px;height:36px;padding:0 6px 0 12px;border-radius:999px;border:1px solid var(--accent-line);background:var(--accent-soft);color:var(--fg);cursor:pointer;max-width:260px;animation:popIn .3s var(--spring)}.run-pill .mono{font-size:12.5px;font-weight:600;color:var(--accent-text)}.run-pill .rp-title{font-size:12.5px;color:var(--fg-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.run-pill .mini{color:var(--accent-text)}.live-dot{width:7px;height:7px;border-radius:50%;background:currentColor;flex:none;animation:pulse 1.6s infinite}.run-pill .live-dot{color:var(--accent)}.filterbar{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:-2px;animation:fadeIn .2s both}.fpill{display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 4px 0 9px;border-radius:999px;background:var(--panel);border:1px solid var(--line);font-size:12px;color:var(--fg-2);animation:popIn .2s var(--spring) both}.fpill i{width:7px;height:7px;border-radius:2px}.fpill button{border:0;background:transparent;color:var(--fg-3);width:18px;height:18px;border-radius:50%;display:grid;place-items:center;cursor:pointer;padding:0}.fpill button:hover{background:var(--raise);color:var(--fg)}.ro-pill{display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 10px;border-radius:999px;background:color-mix(in oklab,var(--info) 13%,transparent);color:var(--info);font-size:12px;font-weight:500}.filter-pop{width:320px}.chip-grid{display:flex;flex-wrap:wrap;gap:5px;padding:2px 6px 6px}.fchip{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 9px 0 5px;border-radius:8px;border:1px solid var(--line);background:transparent;color:var(--fg-2);font-size:12px;cursor:pointer;transition:border-color .15s,background .15s}.fchip:hover{border-color:var(--line-2);background:var(--raise)}.fchip.on{border-color:var(--accent-line);background:var(--accent-soft);color:var(--fg)}.fchip .tag{background:transparent;padding:0 0 0 3px}.notif-pop{width:min(370px,calc(100vw - 32px));padding:0;overflow:hidden}.notif-head{display:flex;align-items:center;gap:8px;padding:12px 14px;border-bottom:1px solid var(--line)}.notif-list{max-height:min(440px,60vh);overflow-y:auto;padding:6px}.notif{display:flex;gap:11px;padding:10px 8px;border-radius:10px;cursor:pointer;position:relative;transition:background .15s}.notif:hover{background:var(--raise)}.notif-ic{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;flex:none;background:var(--raise);color:var(--fg-2)}.notif-ic.t-INVITE{background:var(--accent-soft);color:var(--accent-text)}.notif-ic.t-COMMENT{background:color-mix(in oklab,var(--info) 15%,transparent);color:var(--info)}.notif-title{font-size:13px;font-weight:600}.notif-msg{font-size:12.5px;color:var(--fg-2);margin-top:1px}.notif-time{font-size:11px;color:var(--fg-3);margin-top:3px}.notif-actions{display:flex;gap:6px;margin-top:8px}.notif.unread .notif-title:after{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--accent);margin-left:7px;vertical-align:1px}.notif-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;padding:28px 20px;color:var(--fg-3)}.notif-empty p{margin:0;font-size:12.5px;max-width:30ch}.user-pop{width:280px}.user-card{display:flex;gap:12px;align-items:center;padding:8px}.user-card strong{font-size:14px}.stage{flex:1;min-height:0;position:relative;border:1px solid var(--line);border-radius:var(--r-lg);background-color:color-mix(in oklab,var(--bg) 55%,var(--panel));background-image:radial-gradient(var(--dot) 1px,transparent 1.4px);background-size:20px 20px;overflow:hidden}.stage-loading{position:absolute;top:12px;right:14px;z-index:5;display:flex;align-items:center;gap:6px;font-size:12px;color:var(--fg-3);animation:fadeIn .2s both}.board{position:absolute;top:0;right:0;bottom:0;left:0;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain}.track{position:relative;display:flex;align-items:flex-start;gap:12px;height:100%;padding:14px;width:max-content;min-width:100%}.col{--tc: #94a3b8;width:298px;flex:none;max-height:100%;display:flex;flex-direction:column;background:color-mix(in oklab,var(--surface) 94%,transparent);border:1px solid var(--line);border-radius:14px;animation:colIn .55s var(--ease) both;animation-delay:calc(var(--i, 0) * 60ms);position:relative}.col-head{display:flex;align-items:center;gap:8px;padding:12px 8px 8px 14px;user-select:none;-webkit-user-select:none;min-height:46px}.can-move>.col-head{cursor:grab}.col-dot{width:9px;height:9px;border-radius:3px;background:var(--tc);flex:none;box-shadow:0 0 0 3px color-mix(in oklab,var(--tc) 22%,transparent)}.col-title{margin:0;font-size:13.5px;font-weight:600;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:.005em}.col-rename{flex:1;min-width:0;height:28px;border-radius:7px;border:1px solid var(--accent-line);background:var(--card);color:var(--fg);padding:0 8px;outline:none;font-weight:600;font-size:13.5px}.done-mark{width:16px;height:16px;border-radius:5px;display:grid;place-items:center;background:color-mix(in oklab,var(--ok) 18%,transparent);color:var(--ok);flex:none}.col-count{font-family:var(--font-mono);font-size:11px;color:var(--fg-3);padding:2px 7px;border-radius:999px;background:var(--raise);white-space:nowrap}.col-count.over{color:var(--danger);background:color-mix(in oklab,var(--danger) 15%,transparent)}.wip-sep{opacity:.5;margin:0 1px}.col-tools{display:flex;gap:1px;opacity:0;transition:opacity .15s;position:relative}.col:hover .col-tools,.col-tools.force,.col-tools:focus-within{opacity:1}@media(hover:none){.col-tools{opacity:1}}.col-pop{width:250px}.col-list{position:relative;flex:1 1 auto;min-height:60px;overflow-y:auto;overflow-x:hidden;padding:4px 8px 10px;display:flex;flex-direction:column;gap:8px}.col-empty{border:1.5px dashed var(--line-2);border-radius:10px;padding:18px 12px;text-align:center;color:var(--fg-3);font-size:12.5px}.col-add{margin:0 8px 10px;height:34px;display:flex;align-items:center;gap:7px;padding:0 10px;border-radius:9px;border:0;background:transparent;color:var(--fg-3);font-size:13px;cursor:pointer;flex:none;transition:background .15s,color .15s}.col-add:hover{background:var(--raise);color:var(--fg)}.qa{display:flex;flex-direction:column;gap:7px;padding:0 8px 10px;flex:none;animation:rise .22s var(--ease) both}.qa-card{position:relative;display:flex;flex-direction:column;gap:8px;padding:10px 10px 6px;border-radius:12px;background:var(--card);border:1px solid var(--line-2);box-shadow:var(--shadow-1);transition:border-color .15s,box-shadow .15s}.qa-card:focus-within{border-color:var(--accent-line);box-shadow:0 0 0 3px var(--accent-soft),var(--shadow-1)}.qa-flash{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:var(--accent-soft);pointer-events:none;animation:qaFlash .6s var(--ease) both}.qa-title{width:100%;min-height:20px;max-height:160px;padding:0;border:0;outline:none;resize:none;background:transparent;color:var(--fg);font:inherit;font-size:13.5px;line-height:1.45}.qa-title::placeholder{color:var(--fg-3)}.qa-summary{display:flex;flex-wrap:wrap;gap:5px;animation:fadeIn .18s both}.qa-pill{display:inline-flex;align-items:center;gap:5px;height:20px;padding:0 7px 0 4px;border-radius:6px;background:var(--raise);color:var(--fg-2);font-size:11px;font-weight:600;white-space:nowrap}.qa-pill>svg{color:var(--fg-3);margin-left:2px}.qa-bar{display:flex;align-items:center;gap:2px;margin:0 -5px;padding-top:6px;border-top:1px solid var(--line)}.qa-chip{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:4px;min-width:28px;height:28px;padding:0 6px;border:0;border-radius:8px;background:transparent;color:var(--fg-3);cursor:pointer;transition:background .15s,color .15s}.qa-chip:hover,.qa-chip.open{background:var(--raise);color:var(--fg)}.qa-chip.on{color:var(--accent-text)}.qa-chip:focus-visible{outline:none;box-shadow:0 0 0 2px var(--accent-line)}.qa-count{font-family:var(--font-mono);font-size:10.5px;font-weight:600}.qa-foot{display:flex;align-items:center;gap:6px}.qa-hint{min-width:0;overflow:hidden;white-space:nowrap;font-size:11px;color:var(--fg-3)}.qa-hint kbd{font-family:var(--font-mono);font-size:10px;padding:1px 4px;margin:0 2px 0 5px;border-radius:4px;background:var(--raise);color:var(--fg-2)}.float-panel{padding:6px}.qa-panel{display:flex;flex-direction:column;gap:1px}.qa-panel>.input{width:auto;margin:2px 2px 6px}.qa-tag-list{display:flex;flex-direction:column;gap:1px;max-height:210px;overflow-y:auto}.qa-date{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 8px}.qa-date .input{width:auto}.select-opt.danger,.select-opt.danger>svg{color:var(--danger)}.draft-another{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;color:var(--fg-2);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.draft-another input{width:15px;height:15px;margin:0;accent-color:var(--accent);cursor:pointer}.wip-warn{margin:-2px 14px 6px;font-size:11.5px;color:var(--danger);display:flex;gap:6px;align-items:center}.col.col-placeholder{background:var(--accent-soft);border:1.5px dashed var(--accent-line);animation:none}.col.col-placeholder>*{visibility:hidden}.col-new{width:280px;flex:none}.col-new-btn{width:100%;height:46px;display:flex;align-items:center;justify-content:center;gap:8px;border-radius:14px;border:1.5px dashed var(--line-2);background:transparent;color:var(--fg-3);cursor:pointer;font-size:13px;transition:border-color .15s,color .15s,background .15s}.col-new-btn:hover{border-color:var(--accent-line);color:var(--fg);background:var(--accent-soft)}.col-new-form{display:flex;flex-direction:column;gap:8px;padding:10px;border-radius:14px;border:1px solid var(--line);background:var(--surface);animation:popIn .2s var(--spring)}.card{position:relative;flex:none;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:11px 12px 10px;cursor:pointer;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;box-shadow:var(--shadow-1);transition:border-color .18s,box-shadow .2s,transform .2s var(--ease);outline:none}.card:hover{border-color:var(--line-2);box-shadow:var(--shadow-2);transform:translateY(-1px)}.card:focus-visible{box-shadow:0 0 0 2px var(--accent)}.card.is-running{border-color:var(--accent-line)}.card-cover{margin:-11px -12px 10px;height:108px;border-radius:calc(var(--r) - 1px) calc(var(--r) - 1px) 0 0;overflow:hidden;background:var(--raise)}.card-cover img{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}.card-tags{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:7px}.card-title{margin:0;font-size:13.5px;font-weight:500;line-height:1.4;color:var(--fg);overflow-wrap:anywhere}.card.is-done .card-title{color:var(--fg-2)}.card-meta{display:flex;align-items:center;gap:5px;margin-top:10px;flex-wrap:wrap;min-height:24px}.meta-spacer{flex:1}.card-bar{height:3px;border-radius:3px;background:var(--raise);margin-top:9px;overflow:hidden}.card-bar i{display:block;height:100%;background:var(--ok);border-radius:3px;transition:width .5s var(--ease)}.timer-btn{display:inline-flex;align-items:center;gap:5px;height:24px;padding:0 7px;border-radius:7px;border:1px solid var(--line);background:transparent;color:var(--fg-3);font-size:11.5px;cursor:pointer;transition:opacity .15s,background .15s,color .15s,border-color .15s}.timer-btn:hover{color:var(--fg);background:var(--raise)}.timer-btn.on{color:var(--accent-ink);background:var(--accent);border-color:transparent}.timer-btn.on:hover{background:var(--accent);filter:brightness(1.06)}.timer-btn.others{color:var(--accent-text);border-color:var(--accent-line)}.card:not(:hover):not(:focus-within) .timer-btn.idle{opacity:0}@media(hover:none){.card .timer-btn.idle{opacity:1}}.card.placeholder{background:var(--accent-soft);border:1.5px dashed var(--accent-line);box-shadow:none;cursor:default;transform:none}.track.entering .card{animation:cardIn .45s var(--ease) both;animation-delay:calc(var(--i, 0) * 60ms + var(--ci, 0) * 35ms + 90ms)}.drag-ghost{position:fixed!important;z-index:200;margin:0!important;pointer-events:none;animation:none!important;transition:transform .18s var(--ease),box-shadow .18s;will-change:left,top,transform}.drag-ghost.lifted{transform:rotate(2.2deg) scale(1.035);box-shadow:var(--shadow-3),0 0 0 1.5px var(--accent-line)}.drag-ghost.col.lifted{transform:rotate(1.2deg) scale(1.01)}.drag-ghost.landing{transition:left .19s var(--ease),top .19s var(--ease),transform .19s var(--ease),box-shadow .19s}.is-dragging,.is-dragging *{cursor:grabbing!important}.is-dragging .card:hover{transform:none;box-shadow:var(--shadow-1)}.spark{position:fixed;z-index:210;border-radius:2px;pointer-events:none}.list-wrap{position:absolute;top:0;right:0;bottom:0;left:0;overflow:auto;padding:10px}.tbl{width:100%;border-collapse:separate;border-spacing:0;font-size:13px;min-width:820px}.tbl th{position:sticky;top:0;z-index:1;background:var(--panel);text-align:left;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--fg-3);font-weight:600;border-bottom:1px solid var(--line);padding:0}.tbl th:first-child{border-top-left-radius:10px}.tbl th:last-child{border-top-right-radius:10px}.tbl th button,.tbl th span{width:100%;display:flex;align-items:center;gap:5px;border:0;background:transparent;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;padding:11px 12px;cursor:pointer;text-align:left}.tbl th span{cursor:default}.tbl th button:hover{color:var(--fg)}.tbl td{padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:middle;background:color-mix(in oklab,var(--panel) 60%,transparent)}.tbl tbody tr{cursor:pointer;transition:background .15s}.tbl tbody tr:hover td{background:var(--raise)}.tbl .t-title{font-weight:500;max-width:360px}.tbl .t-tags{display:flex;gap:4px;margin-top:5px;flex-wrap:wrap}.status-cell{display:inline-flex;align-items:center;gap:7px;white-space:nowrap}.mini-progress{display:flex;align-items:center;gap:8px;min-width:110px}.mini-progress .progress{flex:1}.tbl-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:12px}.tbl-wrap .tbl{min-width:600px}.tbl-wrap .tbl td{background:transparent}.tbl-wrap .tbl tbody tr{cursor:default}.tbl-wrap .tbl tbody tr:last-child td{border-bottom:0}.cell-user{display:flex;align-items:center;gap:10px;min-width:0;max-width:280px}.row-actions{text-align:right;white-space:nowrap}.empty-state{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px;gap:10px;animation:fadeIn .3s both}.empty-state-ic{width:56px;height:56px;border-radius:16px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent-text);margin-bottom:4px}.empty-state h2{margin:0;font-family:var(--font-display);font-size:19px;font-weight:600;letter-spacing:-.01em;text-wrap:balance}.empty-state p{margin:0 0 6px;color:var(--fg-2);max-width:46ch}.drawer-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50}.scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--scrim);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);animation:fadeIn .22s ease both}.closing .scrim{animation:fadeOut .2s ease both}.drawer-layer.closing,.modal-wrap.closing,.palette-layer.closing{pointer-events:none}.drawer{position:absolute;top:calc(12px + env(safe-area-inset-top,0px));bottom:calc(12px + env(safe-area-inset-bottom,0px));right:max(12px,env(safe-area-inset-right,0px));width:min(620px,calc(100vw - 24px));display:flex;flex-direction:column;background:var(--panel);border:1px solid var(--line-2);border-radius:18px;box-shadow:var(--shadow-3);animation:drawerIn .45s var(--spring) both;overflow:hidden}.closing .drawer{animation:drawerOut .22s var(--ease) both}.drawer-head{display:flex;align-items:center;gap:8px;padding:12px 12px 12px 18px;border-bottom:1px solid var(--line);flex:none}.status-chip{display:inline-flex;align-items:center;gap:7px;height:26px;padding:0 10px;border-radius:999px;background:var(--raise);font-size:12px;font-weight:500;color:var(--fg-2)}.status-chip.new{background:var(--accent-soft);color:var(--accent-text)}.drawer-body{flex:1;overflow-y:auto;padding:18px 22px 30px;display:flex;flex-direction:column;gap:24px}.drawer-body>*{animation:rise .45s var(--ease) both}.drawer-body>*:nth-child(2){animation-delay:.04s}.drawer-body>*:nth-child(3){animation-delay:.08s}.drawer-body>*:nth-child(4){animation-delay:.12s}.drawer-body>*:nth-child(5){animation-delay:.16s}.drawer-body>*:nth-child(n+6){animation-delay:.2s}.drawer-foot{display:flex;gap:8px;align-items:center;padding:12px 16px;border-top:1px solid var(--line);background:var(--panel);flex:none}.title-block p{margin:6px 0 0}.title-input{display:block;border:0;background:transparent;color:var(--fg);font-size:22px;font-weight:600;line-height:1.3;resize:none;outline:none;padding:4px 8px;margin:-4px -8px;border-radius:9px;letter-spacing:-.012em;overflow:hidden;width:calc(100% + 16px);transition:background .15s,box-shadow .15s}.title-input:hover:not([readonly]){background:var(--surface)}.title-input:focus{background:var(--surface);box-shadow:0 0 0 2px var(--accent-soft)}.props{display:grid;grid-template-columns:118px minmax(0,1fr);gap:4px 12px;align-items:center}.prop-l{display:flex;align-items:center;gap:8px;color:var(--fg-3);font-size:12.5px;min-height:34px}.prop-l.top{align-self:start}.section-h{display:flex;align-items:center;gap:6px;margin:0 0 10px;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--fg-3);font-weight:600;min-height:28px}.section-h .mono{letter-spacing:0;text-transform:none}.picker{position:relative;min-width:0}.picker-btn{display:inline-flex;align-items:center;gap:8px;min-height:34px;padding:4px 8px;margin-left:-8px;border-radius:8px;border:1px solid transparent;background:transparent;color:var(--fg);font-size:13.5px;cursor:pointer;max-width:100%;text-align:left}.picker-btn span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.picker-btn:hover:not(:disabled),.picker-btn.open{background:var(--surface);border-color:var(--line)}.picker-btn:disabled{cursor:default}.picker-btn:disabled .picker-chev{display:none}.picker-chev{color:var(--fg-3)}.picker-btn:focus-visible{outline:none;border-color:var(--accent-line);box-shadow:0 0 0 3px var(--accent-soft)}.picker-pop{max-height:300px;overflow-y:auto}.due-field{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.date-input{width:auto;height:32px;padding:0 8px;background:transparent;border-color:transparent;margin-left:-8px;cursor:pointer}.date-input:hover:not(:disabled){background:var(--surface);border-color:var(--line)}.tag-field{display:flex;flex-wrap:wrap;gap:5px;align-items:center;position:relative;padding:5px 0;min-height:34px}.tag-pop{width:280px;top:calc(100% + 2px)}.tag-new{display:flex;flex-direction:column;gap:8px;padding:4px 6px 6px}.desc{min-height:110px;background:var(--surface)}.desc.shimmer{background-image:linear-gradient(100deg,transparent 20%,var(--accent-soft) 50%,transparent 80%);background-size:200% 100%;animation:shimmer 1s linear infinite}.ai-btn svg{color:var(--accent-text)}.ai-btn.busy svg{animation:spin 1s linear infinite}.ai-note{margin:6px 0 0;font-size:11.5px;color:var(--fg-3)}.progress{height:6px;border-radius:6px;background:var(--raise);overflow:hidden}.progress i{display:block;height:100%;background:var(--ok);border-radius:6px;transition:width .5s var(--ease)}.check-list{display:flex;flex-direction:column;margin-top:8px}.check-row{display:flex;align-items:center;gap:10px;padding:5px 6px;margin:0 -6px;border-radius:8px;animation:rise .3s var(--ease) both}.check-row:hover{background:var(--surface)}.cbox{width:18px;height:18px;border-radius:6px;border:1.5px solid var(--line-2);display:grid;place-items:center;flex:none;cursor:pointer;background:transparent;padding:0;color:#06231a;transition:background .15s,border-color .15s,transform .15s var(--spring)}.cbox:hover:not(:disabled){border-color:var(--ok)}.cbox:active:not(:disabled){transform:scale(.85)}.cbox.on{background:var(--ok);border-color:var(--ok)}.cbox.on svg{animation:checkPop .35s var(--spring)}.check-text{flex:1;min-width:0;font-size:13.5px;overflow-wrap:anywhere;transition:color .2s}.check-row.done .check-text{color:var(--fg-3);text-decoration:line-through;text-decoration-color:var(--line-2)}.hover-only{opacity:0;transition:opacity .15s}.check-row:hover .hover-only,.comment:hover .hover-only,.log-list li:hover .hover-only,.hover-only:focus-visible{opacity:1}@media(hover:none){.hover-only{opacity:1}}.add-row{display:flex;align-items:center;gap:8px;color:var(--fg-3);padding:2px 6px;margin:4px -6px 0;border-radius:8px}.add-row:focus-within{background:var(--surface)}.att-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px;margin-bottom:8px}.att{position:relative;border-radius:10px;overflow:hidden;border:1px solid var(--line);background:var(--surface);aspect-ratio:4 / 3;max-width:100%;animation:popIn .25s var(--spring) both}.att img{width:100%;height:100%;object-fit:cover;display:block;cursor:zoom-in}.att-file{display:flex;flex-direction:column;justify-content:flex-end;gap:3px;padding:10px;height:100%;color:var(--fg-2)}.att-file strong{font-size:12px;color:var(--fg);font-weight:500;overflow-wrap:anywhere}.att-file a{color:var(--accent-text);font-size:11.5px}.att-x{position:absolute;top:6px;right:6px;width:24px;height:24px;border-radius:7px;border:0;background:#0009;color:#fff;display:grid;place-items:center;cursor:pointer;opacity:0;transition:opacity .15s}.att:hover .att-x,.att-x:focus-visible{opacity:1}@media(hover:none){.att-x{opacity:1}}.dropzone{display:flex;align-items:center;justify-content:center;gap:8px;border:1.5px dashed var(--line-2);border-radius:10px;padding:14px;color:var(--fg-3);cursor:pointer;font-size:13px;background:transparent;width:100%;transition:border-color .15s,background .15s,color .15s}.dropzone.over,.dropzone:hover{border-color:var(--accent-line);background:var(--accent-soft);color:var(--fg)}.hidden-input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.time-card{display:flex;align-items:center;gap:16px;padding:14px 14px 14px 16px;border-radius:14px;border:1px solid var(--line);background:var(--surface);transition:border-color .3s,background .3s}.time-card.running{border-color:var(--accent-line);background:linear-gradient(120deg,var(--accent-soft),transparent 70%),var(--surface)}.clock{font-family:var(--font-mono);font-size:28px;font-weight:500;letter-spacing:-.02em;font-variant-numeric:tabular-nums;line-height:1.1}.per-user{display:flex;flex-direction:column;gap:8px;margin-top:12px}.pu-row{display:grid;grid-template-columns:22px minmax(0,130px) 1fr auto;align-items:center;gap:10px}.pu-name{font-size:12.5px;color:var(--fg-2)}.pu-bar{height:6px;border-radius:6px;background:var(--raise);overflow:hidden}.pu-bar i{display:block;height:100%;background:var(--accent);border-radius:6px;transition:width .5s var(--ease)}.log-list{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column}.log-list li{display:flex;align-items:center;gap:10px;padding:6px 0;border-top:1px solid var(--line);min-height:36px}.small-tabs{margin-bottom:12px}.tab-count{font-family:var(--font-mono);font-size:10.5px;color:var(--fg-3);margin-left:4px}.comments{display:flex;flex-direction:column;gap:12px}.comment{display:flex;gap:10px;animation:rise .3s var(--ease) both}.comment-body{flex:1;min-width:0;background:var(--surface);border:1px solid var(--line);border-radius:4px 12px 12px;padding:8px 12px 10px}.comment-meta{display:flex;gap:8px;align-items:center;font-size:11.5px;color:var(--fg-3);min-height:22px}.comment-meta strong{color:var(--fg);font-weight:600;font-size:12.5px}.comment-text{margin:2px 0 0;white-space:pre-wrap;font-size:13.5px;overflow-wrap:anywhere}.composer{display:flex;gap:10px;align-items:flex-start}.composer-box{display:flex;flex-direction:column;gap:8px}.composer-box textarea{resize:none;min-height:64px}.composer-actions{display:flex;justify-content:flex-end}.activity{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.activity li{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--line);font-size:13px;color:var(--fg-2)}.activity li strong{color:var(--fg);font-weight:600}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:95;display:grid;place-items:center;padding:24px;background:#000000d1;animation:fadeIn .2s both;cursor:zoom-out}.lightbox img{max-width:100%;max-height:100%;border-radius:12px;box-shadow:var(--shadow-3);animation:modalIn .3s var(--spring) both}.modal-wrap{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:grid;place-items:center;padding:16px}.modal{position:relative;max-height:calc(100% - 16px);display:flex;flex-direction:column;background:var(--panel);border:1px solid var(--line-2);border-radius:18px;box-shadow:var(--shadow-3);animation:modalIn .34s var(--spring) both;overflow:hidden}.closing .modal{animation:modalOut .18s var(--ease) both}.modal-head{display:flex;align-items:flex-start;gap:12px;padding:18px 16px 14px 20px}.modal-head h2{margin:0;font-family:var(--font-display);font-size:17px;font-weight:600;letter-spacing:-.01em;text-wrap:balance}.modal-head p{margin:3px 0 0;color:var(--fg-3);font-size:12.5px}.modal-ic{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent-text);flex:none}.modal-ic.danger{background:color-mix(in oklab,var(--danger) 15%,transparent);color:var(--danger)}.modal-body{padding:4px 20px 20px;overflow-y:auto}.confirm-msg{margin:0 0 8px;color:var(--fg-2);line-height:1.55}.tabs{display:flex;gap:2px;border-bottom:1px solid var(--line);margin:0 0 16px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.tab{position:relative;height:36px;padding:0 12px;border:0;background:transparent;color:var(--fg-3);font-size:13px;font-weight:500;cursor:pointer;white-space:nowrap;transition:color .15s}.tab:hover,.tab.on{color:var(--fg)}.tab.on:after{content:"";position:absolute;left:10px;right:10px;bottom:-1px;height:2px;border-radius:2px;background:var(--accent);animation:tabIn .3s var(--ease)}.tab-panel{animation:rise .3s var(--ease) both}.member-row{display:flex;align-items:center;gap:12px;padding:9px 0;border-bottom:1px solid var(--line)}.member-row:last-child{border-bottom:0}.member-name{display:flex;align-items:center;gap:7px;font-weight:600;font-size:13.5px;flex-wrap:wrap}.legend{display:grid;gap:8px;margin:0 0 16px;padding:12px 14px;border-radius:12px;background:var(--surface);border:1px solid var(--line);font-size:12.5px;color:var(--fg-2)}.legend div{display:flex;gap:10px;align-items:baseline}.legend .level-pill{flex:none;min-width:104px;justify-content:center}.role-row{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--line)}.inline-form{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.inline-form .input{flex:1;min-width:160px}.inline-form select.input{flex:0 0 auto;width:auto}.inline-form .role-level{flex:0 1 240px;min-width:200px}.member-role{flex:none;width:200px}@media(max-width:560px){.member-role{width:150px}}.danger-zone{margin-top:18px;padding:14px;border-radius:12px;border:1px solid color-mix(in oklab,var(--danger) 35%,transparent);display:flex;align-items:center;gap:12px;flex-wrap:wrap}.danger-zone p{margin:0;font-size:12.5px;color:var(--fg-2)}.tag-create{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:14px}.tag-create .input{flex:1;min-width:180px}.tag-row{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid var(--line);flex-wrap:wrap}.notice{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:12px;background:var(--accent-soft);border:1px solid var(--accent-line);font-size:12.5px;margin-bottom:14px}.notice svg{color:var(--accent-text);margin-top:1px}.theme-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.theme-card{border:1.5px solid var(--line);border-radius:12px;padding:8px;background:transparent;cursor:pointer;text-align:left;transition:border-color .15s}.theme-card.on{border-color:var(--accent)}.theme-card span{display:block;font-size:12.5px;font-weight:500;margin-top:8px}.tc-prev{height:78px;border-radius:8px;display:flex;gap:5px;padding:7px}.tc-prev i{flex:1;border-radius:5px;display:flex;flex-direction:column;gap:4px;padding:4px}.tc-prev b{display:block;height:12px;border-radius:3px}.tc-dark{background:#0b0e13}.tc-dark i{background:#141920}.tc-dark b{background:#1f2631}.tc-light{background:#eceef2}.tc-light i{background:#e3e7ed}.tc-light b{background:#fff}.tc-prev b.acc{background:var(--accent)}.set-sec{display:flex;flex-direction:column;gap:10px;padding:14px 0;border-bottom:1px solid var(--line)}.set-sec:last-child{border-bottom:0}.set-sec h3{margin:0;font-size:12.5px;font-weight:600;color:var(--fg)}.profile-row{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.reveal{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 12px;border-radius:10px;background:var(--accent-soft);border:1px solid var(--accent-line);margin-bottom:12px;font-size:12.5px;animation:popIn .25s var(--spring)}.reveal code{font-family:var(--font-mono);font-size:13px;font-weight:600;padding:2px 8px;border-radius:6px;background:var(--panel);-webkit-user-select:all;user-select:all}.shortcut-list{display:grid;gap:2px}.shortcut-list div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--line);font-size:13px}.shortcut-list span:last-child{display:flex;gap:4px}.refresh-card{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px}.refresh-card p{margin:0;color:var(--fg-2)}.palette-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:flex;justify-content:center;align-items:flex-start;padding:12vh 16px 16px}.palette{position:relative;width:min(620px,100%);background:var(--panel);border:1px solid var(--line-2);border-radius:16px;box-shadow:var(--shadow-3);overflow:hidden;animation:modalIn .28s var(--spring) both}.closing .palette{animation:modalOut .16s var(--ease) both}.palette-in{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--line);color:var(--fg-3)}.palette-in input{flex:1;min-width:0;border:0;background:transparent;color:var(--fg);font-size:16px;outline:none}.palette-list{max-height:min(420px,55vh);overflow-y:auto;padding:6px}.pal-item{display:flex;align-items:center;gap:10px;width:100%;min-height:38px;padding:6px 10px;border-radius:9px;border:0;background:transparent;color:var(--fg);font-size:13.5px;text-align:left;cursor:pointer}.pal-item.act{background:var(--accent-soft)}.pal-ic{width:26px;height:26px;border-radius:7px;display:grid;place-items:center;background:var(--raise);color:var(--fg-2);flex:none}.pal-item.act .pal-ic{background:var(--accent);color:var(--accent-ink)}.pal-meta{max-width:40%}.pal-empty{margin:0;padding:22px;text-align:center;color:var(--fg-3)}.palette-foot{display:flex;gap:16px;padding:9px 16px;border-top:1px solid var(--line);font-size:11.5px;color:var(--fg-3)}.palette-foot kbd{margin-right:3px}.toasts{position:fixed;z-index:90;right:max(16px,env(safe-area-inset-right,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;gap:8px;align-items:flex-end;pointer-events:none}.toast{pointer-events:auto;display:flex;align-items:center;gap:10px;min-width:240px;max-width:min(420px,calc(100vw - 32px));padding:9px 8px 9px 14px;border-radius:12px;background:var(--raise);border:1px solid var(--line-2);box-shadow:var(--shadow-3);font-size:13px;animation:toastIn .38s var(--spring) both}.toast-ic{color:var(--ok)}.toast.error .toast-ic{color:var(--danger)}.toast.warning .toast-ic{color:var(--accent-text)}.toast.info .toast-ic{color:var(--info)}.toast-x{border:0;background:transparent;color:var(--fg-3);width:24px;height:24px;border-radius:6px;display:grid;place-items:center;cursor:pointer;padding:0}.toast-x:hover{color:var(--fg);background:var(--hover)}.lg-scene{position:relative;height:100%;overflow:hidden;isolation:isolate}.lg-board-wrap{position:absolute;top:-18%;right:-14%;bottom:-24%;left:-22%;display:grid;place-items:center;perspective:1700px;z-index:0;transition:filter .5s var(--ease);pointer-events:none}.lg-board{--rx: 30deg;--rz: -13deg;display:flex;gap:22px;align-items:flex-start;transform:rotateX(var(--rx)) rotate(var(--rz)) scale(1.04);transform-style:preserve-3d;transition:transform 1.2s var(--ease);position:relative}.lg-lane{position:relative;width:258px;flex:none;background:color-mix(in oklab,var(--surface) 92%,transparent);border:1px solid var(--line);border-radius:16px;padding:12px 10px 14px;min-height:640px}.lg-lane-h{display:flex;align-items:center;gap:8px;padding:2px 6px 12px;font-size:13px;font-weight:600}.lg-lane-h i{width:9px;height:9px;border-radius:3px;background:var(--tc)}.lg-lane-h .n{margin-left:auto;font-family:var(--font-mono);font-size:11px;color:var(--fg-3);background:var(--raise);padding:1px 7px;border-radius:999px}.lg-list{position:relative;display:flex;flex-direction:column;gap:9px}.lg-card{position:relative;background:var(--card);border:1px solid var(--line);border-radius:11px;padding:11px 12px 10px;box-shadow:var(--shadow-1)}.lg-card .tg{display:inline-flex;align-items:center;gap:5px;height:19px;padding:0 7px;border-radius:6px;font-size:10.5px;font-weight:600;background:color-mix(in oklab,var(--tc) 16%,transparent);color:color-mix(in oklab,var(--tc) var(--tag-mix),var(--fg))}.lg-card .tg:before{content:"";width:6px;height:6px;border-radius:2px;background:var(--tc)}.lg-card .tt{margin:7px 0 0;font-size:13px;font-weight:500;line-height:1.35}.lg-card .mt{display:flex;align-items:center;gap:6px;margin-top:9px;color:var(--fg-3);font-size:11px}.lg-card .pr{display:inline-flex;align-items:flex-end;gap:2px;height:12px}.lg-card .pr b{width:3px;border-radius:1px;background:var(--line-2)}.lg-card .pr b.on{background:var(--fg-2)}.lg-card .pr.hi b.on{background:var(--accent)}.lg-card .pr.ur b.on{background:var(--danger)}.lg-card .ck{display:inline-flex;align-items:center;padding:1px 5px;border-radius:5px;background:var(--raise)}.lg-card .tm{display:inline-flex;align-items:center;gap:5px;padding:1px 6px;border-radius:6px;background:var(--accent);color:var(--accent-ink);font-weight:600}.lg-card .tm:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;animation:pulse 1.6s infinite}.lg-card .av{margin-left:auto;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:9px;font-weight:700;background:hsl(var(--hue) 45% var(--av-bg));color:hsl(var(--hue) 72% var(--av-fg))}.lg-card .bar{height:3px;border-radius:3px;background:var(--raise);margin-top:8px;overflow:hidden}.lg-card .bar i{display:block;height:100%;background:var(--ok);border-radius:3px;transition:width .6s var(--ease)}.lg-card.done .tt{color:var(--fg-2)}.lg-card.done:after{content:"";position:absolute;top:10px;right:10px;width:15px;height:15px;border-radius:5px;background:color-mix(in oklab,var(--ok) 20%,transparent);box-shadow:inset 0 0 0 1px color-mix(in oklab,var(--ok) 45%,transparent)}.lg-spark{position:absolute;width:5px;height:5px;border-radius:2px;pointer-events:none}.lg-scrim{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,color-mix(in oklab,var(--bg) 35%,transparent) 0%,color-mix(in oklab,var(--bg) 55%,transparent) 42%,color-mix(in oklab,var(--bg) 88%,transparent) 70%,var(--bg) 100%),linear-gradient(0deg,color-mix(in oklab,var(--bg) 80%,transparent) 0%,transparent 40%),radial-gradient(60% 50% at 15% 0%,color-mix(in oklab,var(--accent) 12%,transparent),transparent 70%)}.lg-scene.focused .lg-board-wrap{filter:blur(2.5px) saturate(.8)}.lg-scene.flying .lg-board{transform:rotateX(0) rotate(0) scale(1.25)}.lg-scene.flying .lg-board-wrap{filter:none}.lg-scene.flying .lg-scrim{opacity:.35;transition:opacity .8s var(--ease)}.lg-scene.flying .lg-hero,.lg-scene.flying .lg-bottom{opacity:0;transition:opacity .4s var(--ease)}.lg-layout{position:relative;z-index:2;height:100%;overflow-y:auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,440px);grid-template-rows:auto 1fr auto;gap:0 48px;padding-block:20px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}.lg-top{grid-column:1 / -1;display:flex;align-items:center;gap:12px}.lg-brand{display:flex;align-items:center;gap:10px;font-family:var(--font-display);font-weight:600;font-size:18px;letter-spacing:-.01em}.lg-glass-btn{width:38px;height:38px;display:grid;place-items:center;border-radius:11px;border:1px solid var(--line);background:var(--glass);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:var(--fg-2);cursor:pointer;transition:color .15s,border-color .15s}.lg-glass-btn:hover{color:var(--fg);border-color:var(--line-2)}.lg-hero{align-self:end;padding:0 0 22px 4px;max-width:620px;min-width:0}.lg-eyebrow{margin:0 0 14px;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--fg-3);font-weight:600}.lg-hero h1{margin:0;font-family:var(--font-display);font-weight:600;font-size:clamp(34px,4.4vw,60px);line-height:1.04;letter-spacing:-.035em;text-wrap:balance;animation:rise .8s var(--ease) both}.lg-hero h1 em{font-style:normal;color:var(--accent-text)}.lg-hero p{margin:16px 0 0;color:var(--fg-2);font-size:15.5px;max-width:46ch;animation:rise .8s .08s var(--ease) both}.lg-live{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px;animation:rise .8s .16s var(--ease) both}.lg-pill{display:inline-flex;align-items:center;gap:9px;height:36px;padding:0 13px 0 10px;border-radius:999px;border:1px solid var(--line);background:var(--glass);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);font-size:12.5px;color:var(--fg-2)}.lg-pill strong{color:var(--fg);font-family:var(--font-mono);font-weight:600;display:inline-block}.lg-pill .dot{width:8px;height:8px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 3px color-mix(in oklab,var(--ok) 22%,transparent)}.lg-pill.off .dot{background:var(--danger);box-shadow:0 0 0 3px color-mix(in oklab,var(--danger) 22%,transparent)}.lg-pill.checking .dot{background:var(--fg-3);box-shadow:none}.lg-bump{animation:lgBump .5s var(--spring)}.lg-panel-col{grid-row:2;grid-column:2;align-self:center;min-width:0;padding-block:12px}.lg-panel{position:relative;background:var(--glass);backdrop-filter:blur(20px) saturate(140%);-webkit-backdrop-filter:blur(20px) saturate(140%);border:1px solid var(--line-2);border-radius:22px;box-shadow:var(--shadow-3);padding:28px 28px 24px;animation:lgPanelIn .7s .1s var(--spring) both;transition:transform .5s var(--ease),opacity .4s var(--ease)}.lg-panel.shake{animation:lgShake .45s var(--ease)}.lg-panel.leave{animation:lgPanelOut .45s var(--ease) both}.lg-view{display:flex;flex-direction:column;gap:16px;animation:lgViewIn .4s var(--ease) both}.lg-view h2{margin:0;font-family:var(--font-display);font-size:22px;font-weight:600;letter-spacing:-.02em;text-wrap:balance}.lg-view .lead{margin:6px 0 0;color:var(--fg-2)}.lg-back{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;color:var(--fg-2);cursor:pointer;padding:4px 6px;margin:-6px 0 -4px -6px;border-radius:8px;font-size:13px}.lg-back:hover{color:var(--fg);background:var(--raise)}.lg-recent{display:flex;align-items:center;gap:12px;width:100%;padding:10px 12px;border-radius:14px;border:1px solid var(--accent-line);background:var(--accent-soft);cursor:pointer;text-align:left;color:var(--fg);transition:transform .15s var(--ease)}.lg-recent:hover{transform:translateY(-1px)}.lg-recent strong{display:block;font-size:13.5px}.lg-recent .sub{display:block;font-size:12px;color:var(--fg-2)}.lg-field{display:flex;flex-direction:column;gap:7px}.lg-label-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.lg-field label{font-size:12.5px;font-weight:600;color:var(--fg-2)}.lg-control{position:relative;display:flex;align-items:center;height:48px;border-radius:13px;border:1px solid var(--line);background:color-mix(in oklab,var(--surface) 85%,transparent);transition:border-color .15s,box-shadow .2s,background .15s}.lg-control>svg{position:absolute;left:14px;color:var(--fg-3);transition:color .15s;pointer-events:none}.lg-control input{flex:1;min-width:0;height:100%;border:0;background:transparent;outline:none;padding:0 14px 0 42px;font-size:15px;color:var(--fg)}.lg-control input::placeholder{color:var(--fg-3)}.lg-control:focus-within{border-color:var(--accent-line);box-shadow:0 0 0 4px var(--accent-soft);background:var(--surface)}.lg-control:focus-within>svg{color:var(--accent-text)}.lg-control.invalid{border-color:color-mix(in oklab,var(--danger) 60%,transparent);box-shadow:0 0 0 4px color-mix(in oklab,var(--danger) 14%,transparent)}.lg-eye{width:40px;height:40px;margin-right:4px;border:0;border-radius:10px;background:transparent;color:var(--fg-3);display:grid;place-items:center;cursor:pointer}.lg-eye:hover{color:var(--fg);background:var(--raise)}.lg-note{margin:0;font-size:12px;color:var(--fg-3);display:flex;align-items:center;gap:6px}.lg-note.warn{color:var(--accent-text)}.lg-note.err{color:var(--danger)}.lg-alert{display:flex;gap:10px;align-items:flex-start;padding:11px 13px;border-radius:12px;font-size:13px;line-height:1.45;animation:lgViewIn .3s var(--ease)}.lg-alert>svg{margin-top:1px}.lg-alert.err{background:color-mix(in oklab,var(--danger) 12%,transparent);border:1px solid color-mix(in oklab,var(--danger) 35%,transparent);color:color-mix(in oklab,var(--danger) 80%,var(--fg))}.lg-alert.lock{background:var(--accent-soft);border:1px solid var(--accent-line);color:var(--fg)}.lg-alert .link-btn{margin-left:auto;flex:none}.lg-cta{position:relative;height:50px;border:0;border-radius:14px;background:var(--accent);color:var(--accent-ink);font-weight:700;font-size:15px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:9px;overflow:hidden;transition:transform .12s var(--ease),filter .15s,background .3s}.lg-cta:hover:not(:disabled){filter:brightness(1.07)}.lg-cta:active:not(:disabled){transform:scale(.98)}.lg-cta:disabled{cursor:default}.lg-cta .arrow{transition:transform .2s var(--ease)}.lg-cta:hover:not(:disabled) .arrow{transform:translate(3px)}.lg-cta .lg-spin{position:absolute;width:20px;height:20px;border-radius:50%;border:2.5px solid color-mix(in oklab,var(--accent-ink) 25%,transparent);border-top-color:var(--accent-ink);opacity:0;animation:spin .8s linear infinite}.lg-cta .okc{position:absolute;opacity:0;transform:scale(.4)}.lg-cta.loading .lbl,.lg-cta.loading .arrow,.lg-cta.done .lbl,.lg-cta.done .arrow{opacity:0}.lg-cta.loading .lg-spin{opacity:1}.lg-cta.done{background:var(--ok)}.lg-cta.done .okc{opacity:1;transform:none;transition:all .35s var(--spring)}.lg-cta.locked{background:var(--raise);color:var(--fg-3)}.lg-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px solid var(--line);margin-top:2px;padding-top:14px;font-size:12.5px;color:var(--fg-3)}.lg-meter{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin-top:2px}.lg-meter i{height:5px;border-radius:5px;background:var(--line-2);transition:background .3s}.lg-meter[data-s="1"] i:nth-child(-n+1){background:var(--danger)}.lg-meter[data-s="2"] i:nth-child(-n+2){background:color-mix(in oklab,var(--danger) 50%,var(--accent))}.lg-meter[data-s="3"] i:nth-child(-n+3){background:var(--accent)}.lg-meter[data-s="4"] i{background:var(--ok)}.lg-reqs{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:6px 12px;font-size:12.5px;color:var(--fg-3)}.lg-reqs li{display:flex;align-items:center;gap:7px;transition:color .2s}.lg-reqs li b{width:16px;height:16px;border-radius:5px;border:1.5px solid var(--line-2);display:grid;place-items:center;flex:none;transition:all .2s var(--spring)}.lg-reqs li.ok{color:var(--fg)}.lg-reqs li.ok b{background:var(--ok);border-color:var(--ok)}.lg-reqs li.ok b:after{content:"";width:7px;height:4px;border-left:2px solid #06231a;border-bottom:2px solid #06231a;transform:rotate(-45deg) translate(1px,-1px)}.lg-msg{padding:14px 14px 12px;border-radius:12px;border:1px dashed var(--line-2);background:color-mix(in oklab,var(--surface) 80%,transparent);font-size:13.5px;line-height:1.55}.lg-steps{margin:0;padding-left:18px;color:var(--fg-2);display:grid;gap:6px;font-size:13.5px}.lg-bottom{grid-column:1 / -1;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.lg-bottom .lg-pill{height:32px;font-size:12px}.lg-bottom .mono{color:var(--fg-3)}.boot-welcome h2{margin:0;font-family:var(--font-display);font-size:clamp(30px,4vw,46px);font-weight:600;letter-spacing:-.03em;color:var(--fg);animation:rise .6s var(--ease) both}.boot-welcome p{margin:0;color:var(--fg-2)}.boot-bar{width:min(280px,70vw);height:4px;border-radius:4px;background:var(--line-2);overflow:hidden}.boot-bar i{display:block;height:100%;width:40%;border-radius:4px;background:var(--accent);animation:bootBar 1.2s var(--ease) infinite}@keyframes bootBar{0%{transform:translate(-100%)}to{transform:translate(250%)}}@keyframes lgPanelIn{0%{opacity:0;transform:translateY(20px) scale(.97)}to{opacity:1;transform:none}}@keyframes lgPanelOut{0%{opacity:1;transform:none}to{opacity:0;transform:translateY(10px) scale(.96)}}@keyframes lgViewIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes lgShake{0%,to{transform:none}20%{transform:translate(-10px)}40%{transform:translate(8px)}60%{transform:translate(-5px)}80%{transform:translate(3px)}}@keyframes lgBump{0%{transform:scale(1)}40%{transform:scale(1.18)}to{transform:scale(1)}}@media(max-width:980px){.lg-layout{grid-template-columns:minmax(0,1fr);gap:0}.lg-hero{display:none}.lg-panel-col{grid-column:1;justify-self:center;width:min(440px,100%)}.lg-scrim{background:linear-gradient(0deg,var(--bg) 0%,color-mix(in oklab,var(--bg) 75%,transparent) 60%,color-mix(in oklab,var(--bg) 55%,transparent) 100%)}}@media(max-width:520px){.lg-panel{padding:22px 18px 18px;border-radius:20px}.lg-reqs{grid-template-columns:1fr}.lg-bottom .mono{display:none}}.compact .card{padding:8px 10px}.compact .card-cover{display:none}.compact .card-meta{margin-top:7px}.compact .col-list{gap:6px}@keyframes colIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes cardIn{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes drawerIn{0%{opacity:0;transform:translate(48px) scale(.985)}to{opacity:1;transform:none}}@keyframes drawerOut{0%{opacity:1;transform:none}to{opacity:0;transform:translate(36px)}}@keyframes modalIn{0%{opacity:0;transform:translateY(14px) scale(.96)}to{opacity:1;transform:none}}@keyframes modalOut{0%{opacity:1;transform:none}to{opacity:0;transform:translateY(8px) scale(.98)}}@keyframes popIn{0%{opacity:0;transform:translateY(-5px) scale(.97)}to{opacity:1;transform:none}}@keyframes qaFlash{0%{opacity:1}to{opacity:0}}@keyframes popInUp{0%{opacity:0;transform:translateY(5px) scale(.97)}to{opacity:1;transform:none}}@keyframes popOut{0%{opacity:1;transform:none}to{opacity:0;transform:scale(.97)}}@keyframes toastIn{0%{opacity:0;transform:translateY(18px) scale(.95)}to{opacity:1;transform:none}}@keyframes tabIn{0%{transform:scaleX(.3);opacity:0}to{transform:none;opacity:1}}@keyframes pulse{0%{box-shadow:0 0 0 0 currentColor}70%{box-shadow:0 0 0 6px transparent}to{box-shadow:0 0 0 0 transparent}}@keyframes breathe{0%,to{opacity:1}50%{opacity:.55}}@keyframes ring{0%,to{transform:rotate(0)}15%{transform:rotate(16deg)}30%{transform:rotate(-14deg)}45%{transform:rotate(10deg)}60%{transform:rotate(-6deg)}75%{transform:rotate(3deg)}}@keyframes checkPop{0%{transform:scale(.4)}60%{transform:scale(1.2)}to{transform:scale(1)}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes spin{to{transform:rotate(360deg)}}.only-mobile{display:none!important}@media(max-width:1180px){.hide-md{display:none!important}.search{width:190px}.search:focus-within{width:230px}}@media(max-width:900px){.only-mobile{display:inline-flex!important}.hide-sm{display:none!important}.sidebar{position:fixed;z-index:70;top:calc(10px + env(safe-area-inset-top,0px));bottom:calc(10px + env(safe-area-inset-bottom,0px));left:max(10px,env(safe-area-inset-left,0px));width:min(290px,calc(100vw - 40px));transform:translate(calc(-100% - 24px));transition:transform .34s var(--ease);box-shadow:var(--shadow-3)}.sidebar.open{transform:none}.sb-toggle{display:none!important}.board-title{max-width:58vw;font-size:18px}}@media(max-width:600px){.hide-xs{display:none!important}.app{gap:8px;padding-block:10px}.topbar{gap:6px}.search{order:10;width:100%;flex:1 1 100%}.search:focus-within{width:100%}.col{width:84vw}.col-new{width:70vw}.board{scroll-snap-type:x proximity}.col{scroll-snap-align:start}.track{padding:10px;gap:10px}.props{grid-template-columns:1fr;gap:0}.prop-l{min-height:26px;margin-top:8px}.drawer{left:8px;right:8px;top:calc(8px + env(safe-area-inset-top,0px));bottom:calc(8px + env(safe-area-inset-bottom,0px));width:auto}.drawer-body{padding:16px 16px 26px}.pu-row{grid-template-columns:22px minmax(0,90px) 1fr auto}.modal-body{padding:4px 16px 18px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important;transition-duration:.01ms!important}}.reduce-motion *,.reduce-motion *:before,.reduce-motion *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important;transition-duration:.01ms!important}
