@keyframes toastIn{0%{opacity:0;transform:translateY(16px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes loading-breathe{0%,to{transform:scale(1)}50%{transform:scale(.93)}}@keyframes loading-bar{0%{transform:translate(-100%) scaleX(.4)}50%{transform:translate(40%) scaleX(.9)}to{transform:translate(140%) scaleX(.4)}}@keyframes loading-fadein{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.loading-screen{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg);display:flex;align-items:center;justify-content:center;z-index:9999}.loading-content{display:flex;flex-direction:column;align-items:center;gap:18px;animation:loading-fadein .45s ease both}.loading-logo-wrap{width:72px;height:72px;border-radius:20px;background:var(--accent);display:flex;align-items:center;justify-content:center;box-shadow:0 12px 36px color-mix(in srgb,var(--accent) 35%,transparent);animation:loading-breathe 2s ease-in-out infinite}.loading-brand{font-size:26px;font-family:var(--font-display);color:var(--ink);letter-spacing:-.02em}.loading-brand em{font-style:italic;color:var(--accent)}.loading-bar-wrap{width:100px;height:3px;border-radius:2px;background:var(--bg-subtle);overflow:hidden}.loading-bar{height:100%;border-radius:2px;background:var(--accent);animation:loading-bar 1.5s ease-in-out infinite}.notif-pref-group{border-bottom:1px solid var(--line);padding-bottom:10px;margin-bottom:10px}.notif-pref-group:last-of-type{border-bottom:none;margin-bottom:0}.notif-pref-title{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--ink-faint);margin-bottom:8px}.tweak-toggle-info{display:flex;flex-direction:column;gap:2px;flex:1}.tweak-toggle-info>span:first-child{font-size:13px;color:var(--ink)}.tweak-toggle-desc{font-size:11px;color:var(--ink-muted)}.notif-pref-note{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--ink-faint);padding:6px 0 2px}.toast-stack{position:fixed;bottom:20px;right:20px;z-index:10000;display:flex;flex-direction:column-reverse;gap:8px;pointer-events:none;max-width:340px}.toast-item{background:var(--bg-raised);color:var(--ink);border:1px solid var(--line);border-radius:12px;padding:12px 14px;box-shadow:0 6px 20px #0000002e;pointer-events:auto;cursor:pointer;animation:toastIn .25s var(--ease) both;transition:opacity .2s,transform .2s}.toast-item:hover{opacity:.9}.toast-error{border-color:var(--status-rose)}.toast-success{border-color:var(--status-green)}.toast-msg-head{display:flex;align-items:baseline;gap:6px;margin-bottom:4px}.toast-msg-name{font-size:13px;font-weight:600;color:var(--ink)}.toast-msg-channel{font-size:11px;color:var(--accent);flex:1}.toast-msg-time{font-size:11px;color:var(--ink-muted)}.toast-msg-text{font-size:13px;color:var(--ink-2);line-height:1.45;word-break:break-word}[data-theme=dark] .toast-msg-time{color:var(--ink-faint)}[data-theme=dark] .toast-msg-text{color:var(--ink-muted)}.toast-see-more{color:var(--accent);font-size:12px;white-space:nowrap}@keyframes toastOut{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(20px) scale(.95)}}:root{--font-display: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-ui: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, monospace;--bg: #fafaf7;--bg-raised: #ffffff;--bg-subtle: #f3f2ed;--bg-sunken: #ededea;--ink: #1a1a17;--ink-2: #3a3a36;--ink-muted: #76766f;--ink-faint: #a8a8a0;--ink-dim: #c4c4bc;--line: #e5e4df;--line-strong: #d4d3ce;--accent: #1a4a70;--accent-soft: color-mix(in oklch, var(--accent) 10%, transparent);--accent-softer: color-mix(in oklch, var(--accent) 5%, transparent);--accent-ink: oklch(from var(--accent) calc(l - .1) c h);--status-blue: oklch(55% .09 230);--status-amber: oklch(65% .11 70);--status-rose: oklch(58% .13 10);--status-green: oklch(55% .09 150);--status-yellow: oklch(72% .14 75);--status-slate: oklch(55% .02 250);--status-purple: oklch(55% .14 300);--status-teal: oklch(55% .1 195);--status-orange: oklch(62% .14 50);--status-cyan: oklch(60% .1 210);--status-pink: oklch(60% .14 350);--shadow-xs: 0 1px 2px rgba(20, 18, 12, .03);--shadow-sm: 0 1px 2px rgba(20, 18, 12, .04), 0 2px 6px rgba(20, 18, 12, .04);--shadow-md: 0 2px 4px rgba(20, 18, 12, .05), 0 8px 24px rgba(20, 18, 12, .06);--shadow-lg: 0 4px 8px rgba(20, 18, 12, .06), 0 24px 48px rgba(20, 18, 12, .1);--r-sm: 6px;--r-md: 10px;--r-lg: 14px;--r-xl: 20px;--ease: cubic-bezier(.22, 1, .36, 1);--ease-snap: cubic-bezier(.34, 1.56, .64, 1);--card-pad: 14px;--card-gap: 10px;--col-w: 292px}[data-theme=cream]{--bg: #f4f1ec;--bg-raised: #fbf9f4;--bg-subtle: #ecE8e0;--bg-sunken: #e4dfd5;--ink: #231f1a;--ink-2: #4a4238;--ink-muted: #7d7366;--ink-faint: #a89f90;--ink-dim: #c8bfae;--line: #dfd7c8;--line-strong: #cfc5b3}[data-theme=dark]{--bg: #111110;--bg-raised: #1a1a18;--bg-subtle: #1f1f1d;--bg-sunken: #0c0c0b;--ink: #ededea;--ink-2: #c8c8c2;--ink-muted: #8a8a82;--ink-faint: #5a5a54;--ink-dim: #3e3e38;--line: #2b2b28;--line-strong: #3a3a36;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .2);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3), 0 2px 6px rgba(0, 0, 0, .25);--shadow-md: 0 2px 4px rgba(0, 0, 0, .3), 0 8px 24px rgba(0, 0, 0, .35);--shadow-lg: 0 4px 8px rgba(0, 0, 0, .3), 0 24px 48px rgba(0, 0, 0, .5)}[data-accent=terracotta]{--accent: oklch(55% .13 25);--accent-soft: oklch(55% .13 25 / .1);--accent-softer: oklch(55% .13 25 / .05);--accent-ink: oklch(40% .1 25)}[data-accent=sage]{--accent: oklch(55% .09 150);--accent-soft: oklch(55% .09 150 / .1);--accent-softer: oklch(55% .09 150 / .05);--accent-ink: oklch(40% .08 150)}[data-accent=slate]{--accent: oklch(50% .04 250);--accent-soft: oklch(50% .04 250 / .1);--accent-softer: oklch(50% .04 250 / .05);--accent-ink: oklch(35% .04 250)}[data-accent=indigo]{--accent: oklch(52% .15 270);--accent-soft: oklch(52% .15 270 / .1);--accent-softer: oklch(52% .15 270 / .05);--accent-ink: oklch(38% .13 270)}[data-accent=plum]{--accent: oklch(50% .14 340);--accent-soft: oklch(50% .14 340 / .1);--accent-softer: oklch(50% .14 340 / .05);--accent-ink: oklch(35% .12 340)}[data-accent=custom]{--accent-soft: color-mix(in oklch, var(--accent) 10%, transparent);--accent-softer: color-mix(in oklch, var(--accent) 5%, transparent);--accent-ink: oklch(from var(--accent) calc(l - .12) c h)}[data-theme=dark]{--accent: oklch(70% .1 240);--accent-soft: oklch(70% .1 240 / .18);--accent-softer: oklch(70% .1 240 / .1);--accent-ink: #fff}[data-theme=dark][data-accent=terracotta]{--accent: oklch(72% .14 25);--accent-soft: oklch(72% .14 25 / .15);--accent-softer: oklch(72% .14 25 / .08);--accent-ink: #fff}[data-theme=dark][data-accent=sage]{--accent: oklch(70% .1 150);--accent-soft: oklch(70% .1 150 / .15);--accent-softer: oklch(70% .1 150 / .08);--accent-ink: #fff}[data-theme=dark][data-accent=slate]{--accent: oklch(68% .06 250);--accent-soft: oklch(68% .06 250 / .15);--accent-softer: oklch(68% .06 250 / .08);--accent-ink: #fff}[data-theme=dark][data-accent=indigo]{--accent: oklch(70% .17 270);--accent-soft: oklch(70% .17 270 / .15);--accent-softer: oklch(70% .17 270 / .08);--accent-ink: #fff}[data-theme=dark][data-accent=plum]{--accent: oklch(70% .16 340);--accent-soft: oklch(70% .16 340 / .15);--accent-softer: oklch(70% .16 340 / .08);--accent-ink: #fff}[data-theme=dark][data-accent=custom]{--accent-soft: color-mix(in oklch, var(--accent) 15%, transparent);--accent-softer: color-mix(in oklch, var(--accent) 8%, transparent);--accent-ink: #fff}[data-fontpair=fraunces]{--font-display: "Fraunces", "Times New Roman", serif}[data-fontpair=sans]{--font-display: "Inter", sans-serif;--font-display-weight: 600}[data-density=compact]{--card-pad: 6px;--card-gap: 2px;--col-w: 240px;--r-md: 6px;--shadow-sm: none;font-size:12px;line-height:1.2;letter-spacing:-.3px}[data-density=balanced]{--card-pad: 14px;--card-gap: 10px;--col-w: 292px;--r-md: 10px;--shadow-sm: 0 2px 6px rgba(0,0,0,.08);font-size:14px;line-height:1.5;letter-spacing:0px}[data-density=airy]{--card-pad: 24px;--card-gap: 18px;--col-w: 340px;--r-md: 14px;--shadow-sm: 0 4px 12px rgba(0,0,0,.12);font-size:14.5px;line-height:1.7;letter-spacing:.2px}[data-density=compact] .list-table th,[data-density=compact] .list-table td{padding:4px 8px;font-size:12px}[data-density=compact] .list-group-header{padding:4px 8px;font-size:11px;gap:4px}[data-density=airy] .list-table th,[data-density=airy] .list-table td{padding:14px 16px;font-size:14px}[data-density=airy] .list-group-header{padding:12px 16px;font-size:13px;gap:12px}[data-density=compact] .modal-content{padding:12px;gap:8px}[data-density=airy] .modal-content{padding:28px;gap:16px}[data-density=compact] .field-row{gap:6px;margin:8px 0}[data-density=airy] .field-row{gap:12px;margin:16px 0}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;font-family:var(--font-ui);background:var(--bg);color:var(--ink);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}button{font-family:inherit;cursor:pointer;background:none;border:none;color:inherit}input,textarea,select{font-family:inherit;color:inherit}a{color:inherit;text-decoration:none}::selection{background:color-mix(in oklch,var(--accent) 28%,transparent);color:var(--accent-ink)}[data-theme=dark] ::selection{background:color-mix(in oklch,var(--accent) 32%,transparent);color:var(--ink)}.sidebar,.sidebar-logo-text,.topbar,.topbar-crumbs,.topbar-right,.workspace-switcher,.user-profile,.nav-item,.project-item,.sidebar-section-title,.sidebar-header,.sidebar-search kbd,.col-header,.col-actions,.col-count,.col-dot,.card-tags,.card-meta,.card-footer,.priority-pill,.meta-item,.modal-head,.modal-foot,.modal-title,.modal-sub,.settings-section>div:first-child,.settings-section>div:first-child h3,.settings-section>div:first-child p,.tweak-group .tweak-label,.tweak-options,.tweak-toggle,.swatch-row,.avatar,.avatar-stack,.chip,.btn,.icon-btn,.view-switch,.auth-tabs,.badge,.nav-badge,.tag,.ws-info,.ws-avatar,.ws-arrow,.col-menu-info,.col-menu-divider,.list-group-header,.dashboard-stat,.toast-message-meta{-webkit-user-select:none;user-select:none}input,textarea,select,[contenteditable=true]{-webkit-user-select:text;user-select:text}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--ink-dim);border-radius:10px;border:3px solid var(--bg)}::-webkit-scrollbar-thumb:hover{background:var(--ink-faint)}.app{display:flex;height:100vh;overflow:hidden}.app[data-auth=true]{flex-direction:column}.sidebar{width:252px;background:var(--bg-subtle);border-right:1px solid var(--line);display:flex;flex-direction:column;transition:width .3s var(--ease);overflow:hidden;position:relative}.sidebar[data-collapsed=true]{width:60px}.sidebar[data-collapsed=true] .sidebar-label,.sidebar[data-collapsed=true] .sidebar-section-title,.sidebar[data-collapsed=true] .ws-info,.sidebar[data-collapsed=true] .ws-arrow,.sidebar[data-collapsed=true] .nav-badge,.sidebar[data-collapsed=true] .project-meta,.sidebar[data-collapsed=true] .user-meta,.sidebar[data-collapsed=true] .sidebar-logo-text,.sidebar[data-collapsed=true] .sidebar-search,.sidebar[data-collapsed=true] .workspace-switcher{display:none}.sidebar[data-collapsed=true] .sidebar-header{justify-content:center;padding:14px 0 10px;gap:0}.sidebar[data-collapsed=true] .sidebar-logo{width:34px;height:34px;border-radius:9px;cursor:pointer}.sidebar[data-collapsed=true] .sidebar-collapse-btn{display:none}.sidebar[data-collapsed=true] .sidebar-section{padding:2px 8px}.sidebar[data-collapsed=true] .nav-item,.sidebar[data-collapsed=true] .project-item{justify-content:center;padding:8px 0;width:44px;margin:1px auto;border-radius:9px}.sidebar[data-collapsed=true] .project-dot{width:10px;height:10px}.sidebar[data-collapsed=true] .user-profile{justify-content:center;padding:8px 0}.sidebar[data-collapsed=true] .sidebar-footer{padding:10px 8px}.sidebar-header{display:flex;align-items:center;gap:10px;padding:18px 16px 14px}.sidebar-logo{width:28px;height:28px;border-radius:7px;background:var(--accent);color:#fff;display:grid;place-items:center;flex-shrink:0}[data-theme=dark] .sidebar-logo{background:var(--accent)}.sidebar-logo-text{font-family:var(--font-display);font-size:20px;letter-spacing:-.01em;line-height:1}.sidebar-logo-text em{font-style:italic;color:var(--accent-ink)}[data-theme=dark] .sidebar-logo-text em{color:var(--accent)}.sidebar-collapse-btn{margin-left:auto;padding:5px;border-radius:5px;color:var(--ink-muted);display:grid;place-items:center}.sidebar-collapse-btn:hover{background:var(--bg-sunken);color:var(--ink)}.workspace-switcher{margin:0 12px 12px;padding:9px 10px;background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--r-md);display:flex;align-items:center;gap:10px;transition:all .15s var(--ease)}.workspace-switcher:hover{border-color:var(--line-strong);box-shadow:var(--shadow-xs)}.ws-avatar{width:26px;height:26px;border-radius:5px;background:linear-gradient(135deg,var(--accent),oklch(from var(--accent) calc(l - .1) c h));color:#fff;display:grid;place-items:center;font-family:var(--font-display);font-size:13px;flex-shrink:0}.ws-info{flex:1;min-width:0}.ws-name{font-size:12.5px;font-weight:500}.ws-sub{font-size:11px;color:var(--ink-muted)}.ws-arrow{color:var(--ink-faint);display:flex}.sidebar-search{margin:0 12px 12px;padding:7px 10px;background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--r-md);display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--ink-muted);cursor:text;transition:border-color .15s var(--ease)}.sidebar-search:hover{border-color:var(--line-strong)}.sidebar-search kbd{margin-left:auto;padding:1px 5px;background:var(--bg-subtle);border:1px solid var(--line);border-radius:4px;font-family:var(--font-mono);font-size:10px;color:var(--ink-muted)}.sidebar-section{padding:6px 12px}.sidebar-section-title{padding:10px 10px 4px;font-size:10.5px;font-weight:500;letter-spacing:.04em;color:var(--ink-faint);text-transform:uppercase;display:flex;align-items:center;justify-content:space-between}.sidebar-section-title button{color:var(--ink-faint);display:grid;place-items:center;padding:2px;border-radius:4px}.sidebar-section-title button:hover{background:var(--bg-sunken);color:var(--ink)}.nav-item{display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:7px;font-size:13px;color:var(--ink-2);transition:all .12s var(--ease);cursor:pointer;position:relative}.nav-item:hover{background:var(--bg-sunken);color:var(--ink)}.nav-item[data-active=true]{background:var(--bg-raised);color:var(--ink);font-weight:500;box-shadow:var(--shadow-xs)}.nav-item .icon{color:var(--ink-muted);flex-shrink:0}.nav-item[data-active=true] .icon{color:var(--accent)}.nav-badge{margin-left:auto;padding:1px 6px;background:var(--bg-sunken);border-radius:4px;font-size:10px;font-weight:500;color:var(--ink-muted)}.nav-badge[data-new=true]{background:var(--accent-soft);color:var(--accent-ink)}[data-theme=dark] .nav-badge[data-new=true]{color:var(--accent)}.project-item{display:flex;align-items:center;gap:10px;padding:6px 10px;border-radius:7px;font-size:13px;color:var(--ink-2);cursor:pointer;transition:background .12s var(--ease)}.project-item:hover{background:var(--bg-sunken)}.project-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.project-meta{margin-left:auto;font-size:11px;color:var(--ink-faint);font-variant-numeric:tabular-nums}.sidebar-footer{margin-top:auto;padding:12px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:8px}.user-profile{display:flex;align-items:center;gap:10px;padding:6px 8px;border-radius:var(--r-md);cursor:pointer}.user-profile:hover{background:var(--bg-sunken)}.user-avatar{width:28px;height:28px;border-radius:50%;background:var(--ink);color:var(--bg);display:grid;place-items:center;font-size:12px;font-weight:500;flex-shrink:0}[data-theme=dark] .user-avatar{background:var(--accent);color:#fff}.user-meta{flex:1;min-width:0}.user-name{font-size:13px;font-weight:500}.user-status{font-size:11px;color:var(--ink-muted);display:flex;align-items:center;gap:5px}.user-status:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--user-status-dot, var(--status-green))}.main{flex:1;display:flex;flex-direction:column;overflow:hidden;background:var(--bg);min-width:0}.topbar{display:flex;align-items:center;gap:16px;padding:12px 20px;border-bottom:1px solid var(--line);background:var(--bg);flex-shrink:0;min-height:58px}.topbar-crumbs{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ink-muted)}.topbar-crumbs .sep{color:var(--ink-dim)}.topbar-crumbs .current{color:var(--ink);font-weight:500;font-family:var(--font-display);font-size:17px;letter-spacing:-.005em}.topbar-right{margin-left:auto;display:flex;align-items:center;gap:8px}.topbar-invite{display:flex;align-items:center;gap:4px;padding:4px 10px 4px 12px;background:var(--bg-subtle);border:1px solid var(--line);border-radius:999px;height:32px}.topbar-invite-code{font-family:var(--font-mono);font-size:12px;font-weight:600;letter-spacing:.1em;color:var(--ink);-webkit-user-select:none;user-select:none;min-width:72px;text-align:center}.topbar-invite-eye{width:22px!important;height:22px!important;min-width:22px!important;color:var(--ink-muted)}.view-switch{display:flex;background:var(--bg-subtle);border:1px solid var(--line);border-radius:var(--r-md);padding:2px;gap:2px}.view-switch button{padding:5px 10px;border-radius:7px;font-size:12.5px;color:var(--ink-muted);display:flex;align-items:center;gap:5px;transition:all .15s var(--ease)}.view-switch button:hover{color:var(--ink)}.view-switch button[data-active=true]{background:var(--bg-raised);color:var(--ink);box-shadow:var(--shadow-xs)}.icon-btn{width:32px;height:32px;border-radius:8px;display:grid;place-items:center;color:var(--ink-muted);position:relative;transition:all .12s var(--ease)}.icon-btn:hover{background:var(--bg-subtle);color:var(--ink)}.icon-btn .pip{position:absolute;top:7px;right:7px;width:6px;height:6px;border-radius:50%;background:var(--accent);border:1.5px solid var(--bg)}.btn{display:inline-flex;align-items:center;gap:7px;padding:7px 12px;border-radius:8px;font-size:13px;font-weight:500;transition:all .15s var(--ease);border:1px solid transparent;line-height:1.1}.btn-primary{background:var(--ink);color:var(--bg)}.btn-primary:hover{background:var(--ink-2);transform:translateY(-.5px)}[data-theme=dark] .btn-primary{background:var(--accent);color:#fff}[data-theme=dark] .btn-primary:hover{background:oklch(from var(--accent) calc(l + .05) c h)}.btn-ghost{background:transparent;color:var(--ink-2);border-color:var(--line)}.btn-ghost:hover{background:var(--bg-subtle);border-color:var(--line-strong)}.btn-accent{background:var(--accent);color:#fff}.btn-accent:hover{background:oklch(from var(--accent) calc(l - .05) c h)}.toast-message-body{display:flex;flex-direction:column;gap:4px}.toast-message-title{font-size:12px;font-weight:700;color:var(--ink)}.toast-message-text{font-size:13px;color:var(--ink-2);line-height:1.35}.toast-message-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:5px;border-top:1px solid var(--line);font-size:10.5px;color:var(--ink-muted)}.toast-message-meta span:first-child{color:var(--accent-ink);font-weight:700}.filter-chip{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border-radius:7px;font-size:12px;color:var(--ink-muted);background:var(--bg-subtle);border:1px solid transparent;transition:all .12s var(--ease)}.filter-chip:hover{color:var(--ink);border-color:var(--line)}.filter-chip[data-active=true]{color:var(--ink);background:var(--bg-raised);border-color:var(--line)}.subbar{display:flex;align-items:center;gap:10px;padding:10px 20px;border-bottom:1px solid var(--line);background:var(--bg);flex-shrink:0}.subbar-left{display:flex;align-items:center;gap:8px}.subbar-right{margin-left:auto;display:flex;align-items:center;gap:8px}.avatar-stack{display:flex}.avatar{width:26px;height:26px;border-radius:50%;border:2px solid var(--bg);display:grid;place-items:center;font-size:10.5px;font-weight:600;color:#fff;margin-left:-7px;flex-shrink:0}.avatar:first-child{margin-left:0}.avatar[data-size=sm]{width:22px;height:22px;font-size:9.5px;border-width:1.5px}.avatar[data-size=md]{width:30px;height:30px;font-size:12px}.avatar[data-size=lg]{width:36px;height:36px;font-size:13px}.board-toolbar{display:flex;align-items:center;gap:8px;padding:7px 20px;border-bottom:1px solid var(--line);background:var(--bg);flex-shrink:0}.filter-toggle-btn{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:6px;font-size:12.5px;font-weight:500;color:var(--ink-muted);border:1px solid var(--line);background:var(--bg-subtle);cursor:pointer;transition:all .12s}.filter-toggle-btn:hover{color:var(--ink);border-color:var(--line-strong)}.filter-toggle-btn[data-active=true]{color:var(--ink);border-color:var(--ink-2);background:var(--bg-raised)}.filter-count{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 4px;border-radius:8px;font-size:10px;font-weight:600;background:var(--accent);color:var(--accent-ink)}.board-search-wrap{display:flex;align-items:center;gap:6px;padding:3px 10px;border:1px solid var(--line);border-radius:7px;background:var(--bg-raised);min-width:180px;max-width:280px;transition:border-color .12s}.board-search-wrap:focus-within{border-color:var(--accent)}.board-search-input{flex:1;background:none;border:none;outline:none;font-size:12.5px;color:var(--ink)}.board-search-input::placeholder{color:var(--ink-faint)}@keyframes spin{to{transform:rotate(360deg)}}.filter-bar{display:flex;align-items:center;gap:6px;padding:7px 20px;border-bottom:1px solid var(--line);background:var(--bg);flex-shrink:0;flex-wrap:wrap;min-height:38px}.filter-bar-section{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.filter-bar-divider{width:1px;height:16px;background:var(--line);flex-shrink:0;margin:0 2px}.filter-bar>.icon{color:var(--ink-muted);flex-shrink:0}.filter-tag{opacity:.38;cursor:pointer;transition:opacity .12s}.filter-tag:hover{opacity:.65}.filter-tag[data-active=true]{opacity:1}.filter-priority-chip{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;border-radius:20px;font-size:11.5px;font-weight:500;cursor:pointer;border:1px solid var(--line);color:var(--ink-dim);background:var(--bg-subtle);transition:all .1s}.filter-priority-chip:hover{border-color:var(--ink-dim);color:var(--ink)}.filter-priority-chip[data-active=true]{border-color:var(--ink-2);color:var(--ink);background:var(--bg-raised);font-weight:600}.filter-clear-btn{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:20px;font-size:11.5px;color:var(--ink-muted);cursor:pointer;background:none;border:1px solid var(--line);transition:all .1s;margin-left:2px}.filter-clear-btn:hover{color:var(--status-rose);border-color:var(--status-rose)}.board{flex:1;overflow-x:auto;overflow-y:hidden;padding:18px 20px 4px;display:flex;gap:14px;align-items:flex-start;background:var(--bg)}.column{width:var(--col-w);min-width:var(--col-w);max-height:100%;display:flex;flex-direction:column;background:transparent;border:none;border-radius:var(--r-lg);overflow:visible;transition:outline .1s;position:relative}.column:not(:last-child):after{content:"";position:absolute;right:-8px;top:0;bottom:0;width:1px;background:var(--line);pointer-events:none}.column[data-col-drag-over=true],.column[data-touch-over=true]{outline:2px dashed var(--accent);outline-offset:2px}.col-header{display:flex;align-items:center;gap:10px;padding:10px 4px 8px;transition:all .2s ease}.col-header[data-dragging=true]{background:var(--status-rose);border-bottom-color:var(--status-rose);color:#fff;opacity:.8}.col-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;display:inline-block;vertical-align:middle}.col-title{font-size:13px;font-weight:600;letter-spacing:-.003em;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.col-label-chip{font-size:12px;font-weight:600;padding:3px 10px;border-radius:20px;background:color-mix(in oklch,var(--col-color, var(--ink)) 14%,transparent);color:var(--col-color, var(--ink));white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:150px;flex-shrink:1}.col-count{font-size:11px;color:var(--ink-muted);font-variant-numeric:tabular-nums;padding:1px 6px;background:var(--bg-raised);border:1px solid var(--line);border-radius:5px}.col-actions{margin-left:auto;display:flex;align-items:center;gap:2px}.col-actions button:not(.col-menu-item){width:22px;height:22px;border-radius:5px;color:var(--ink-faint);display:grid;place-items:center}.col-actions button:not(.col-menu-item):hover{background:var(--bg-raised);color:var(--ink)}.col-menu{position:fixed;width:210px;background:var(--bg-raised);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow-md);z-index:1000;overflow:hidden}.col-menu-info{padding:9px 14px 8px;font-size:11px;color:var(--ink-faint);font-weight:500}.col-menu-divider{height:1px;background:var(--line);margin:0}.col-menu-item{display:flex;align-items:center;gap:8px;width:100%;height:37px;box-sizing:border-box;padding:0 14px;font-size:13px;color:var(--ink);text-align:left;cursor:pointer;transition:background .12s}.col-menu-item:hover{background:var(--bg-subtle)}.col-menu-item-danger{color:var(--status-rose)}.col-menu-colors{display:flex;flex-wrap:wrap;gap:7px;padding:10px 14px;border-top:1px solid var(--line)}.col-menu-confirm-yes{padding:2px 8px;border-radius:5px;background:var(--status-rose);color:#fff;font-size:11px;font-weight:600;cursor:pointer;flex-shrink:0;-webkit-user-select:none;user-select:none}.col-menu-confirm-no{padding:2px 8px;border-radius:5px;background:var(--bg-subtle);color:var(--ink-muted);font-size:11px;cursor:pointer;flex-shrink:0;-webkit-user-select:none;user-select:none}.modal-tabs{display:flex;gap:4px;padding:4px;background:var(--bg-subtle);border:1px solid var(--line);border-radius:10px}.modal-tab-btn{flex:1;padding:7px 12px;border-radius:7px;font-size:13px;font-weight:500;color:var(--ink-muted);background:transparent;cursor:pointer;transition:background .15s,color .15s}.modal-tab-btn[data-active=true]{background:var(--bg-raised);color:var(--ink);box-shadow:0 1px 3px #00000014}.col-body{flex:1;overflow-y:auto;overflow-x:visible;padding:var(--card-gap);padding-top:4px;display:flex;flex-direction:column;gap:var(--card-gap);min-height:100px}.col-body[data-drag-over=true]{background:var(--accent-softer);outline:1.5px dashed var(--accent);outline-offset:-4px;border-radius:10px}.col-add{padding:8px 12px;margin:0 var(--card-gap) var(--card-gap);border-radius:8px;font-size:12.5px;color:var(--ink-muted);display:flex;align-items:center;gap:6px;transition:all .12s var(--ease)}.col-add:hover{background:var(--bg-raised);color:var(--ink)}.card{background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--r-md);padding:var(--card-pad);cursor:pointer;transition:all .15s var(--ease);position:relative;display:flex;flex-direction:column;gap:8px;animation:cardIn .3s var(--ease) both;box-shadow:0 1px 3px #0000000f}@keyframes cardIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.card:hover{border-color:var(--line-strong);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.card[data-dragging=true]{opacity:.4;transform:rotate(2deg) scale(.98)}.card[data-done=true]{opacity:.65}.card[data-done=true] .card-title{text-decoration:line-through;text-decoration-color:var(--ink-dim)}.card[data-overdue=true]{border-left:3px solid var(--status-rose)}.card[data-overdue=true]:hover{border-color:#b9556980}.card[data-mine=true]{border-left:3px solid var(--accent)}.card[data-mine=true][data-overdue=true]{border-left:3px solid var(--status-rose)}.card-tags{display:flex;gap:4px;flex-wrap:wrap}.card[data-show-tags=false] .card-tags{display:none}.tag{font-size:10.5px;font-weight:500;padding:1px 7px;border-radius:4px;color:var(--ink-2);background:var(--bg-subtle);border:1px solid var(--line);letter-spacing:.01em}.tag[data-tone=blue]{color:var(--status-blue);background:#2e7b9c14;border-color:#2e7b9c40}.tag[data-tone=amber]{color:var(--status-amber);background:#ba823c1a;border-color:#ba823c40}.tag[data-tone=rose]{color:var(--status-rose);background:#b9556914;border-color:#b9556940}.tag[data-tone=green]{color:var(--status-green);background:#48805514;border-color:#48805540}.tag[data-tone=accent]{color:var(--accent-ink);background:var(--accent-soft);border-color:var(--accent-soft)}[data-theme=dark] .tag[data-tone=accent]{color:var(--accent)}.tag[data-tone=purple]{color:var(--status-purple);background:#7f5bb614;border-color:#7f5bb640}.tag[data-tone=teal]{color:var(--status-teal);background:#00838314;background:oklch(55% .1 195 / .08);border-color:#00838340;border-color:oklch(55% .1 195 / .25)}.tag[data-tone=orange]{color:var(--status-orange);background:#c7692c1a;border-color:#c7692c40}.tag[data-tone=cyan]{color:var(--status-cyan);background:#1590a114;border-color:#1590a140}.tag[data-tone=pink]{color:var(--status-pink);background:#bc598c14;border-color:#bc598c40}.card[data-mine=true] .card-title{padding-right:32px}.card-title{font-size:13.5px;font-weight:500;line-height:1.4;overflow-wrap:break-word;color:var(--ink);letter-spacing:-.005em;word-break:break-word}.card-title[contenteditable=true]{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.card-desc-preview{font-size:12px;color:var(--ink-muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.4}.card-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.meta-item{display:inline-flex;align-items:center;gap:4px;font-size:11.5px;color:var(--ink-muted);font-variant-numeric:tabular-nums}.meta-item[data-warn=true]{color:var(--status-rose)}.meta-item[data-done=true]{color:var(--status-green)}.priority-pill{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:500}.priority-dot{width:6px;height:6px;border-radius:50%}.priority-dot[data-p=high]{background:var(--status-rose)}.priority-dot[data-p=mid]{background:var(--status-amber)}.priority-dot[data-p=low]{background:var(--status-slate)}.card-footer{display:flex;align-items:center;gap:10px;padding-top:8px;border-top:1px solid var(--line)}.card[data-show-progress=false] .progress-row{display:none}.progress-row{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--ink-muted)}.progress-bar{flex:1;height:3px;background:var(--bg-sunken);border-radius:2px;overflow:hidden}.progress-fill{height:100%;background:var(--ink);border-radius:2px;transition:width .4s var(--ease)}[data-theme=dark] .progress-fill{background:var(--accent)}.card-assignees{margin-left:auto;display:flex}.add-column-btn{width:240px;min-width:240px;padding:14px;border:1.5px dashed var(--line-strong);border-radius:var(--r-lg);color:var(--ink-muted);display:flex;align-items:center;justify-content:center;gap:6px;font-size:13px;font-weight:500;height:48px;transition:all .15s var(--ease)}.add-column-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-softer)}.add-col-preview{padding:2px 0 6px}.col-color-swatches{display:flex;gap:7px;flex-wrap:wrap;padding:2px 0 4px}.col-color-swatch{width:20px;height:20px;border-radius:50%;border:2.5px solid transparent;cursor:pointer;transition:transform .12s,border-color .12s;flex-shrink:0}.col-color-swatch:hover{transform:scale(1.18)}.col-color-swatch[data-active=true]{border-color:var(--ink);transform:scale(1.18)}.add-column-form{width:var(--col-w);min-width:var(--col-w);display:flex;flex-direction:column;gap:10px;padding:14px;border:1px solid var(--line-strong);border-radius:var(--r-lg);background:var(--bg-raised)}.add-column-input{width:100%;min-height:44px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--bg-subtle);color:var(--ink);font-size:13px;outline:none;transition:border-color .15s var(--ease),box-shadow .15s var(--ease)}.add-column-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.add-column-actions{display:flex;gap:10px}.btn-save,.btn-cancel{flex:1;min-height:44px;border-radius:12px;font-size:13px;font-weight:600;transition:background .15s var(--ease),border-color .15s var(--ease),color .15s var(--ease)}.btn-save{background:var(--accent);color:#fff;border:1px solid transparent}.btn-save:hover{filter:brightness(1.03)}.btn-cancel{background:var(--bg-subtle);color:var(--ink);border:1px solid var(--line)}.btn-cancel:hover{background:var(--bg-raised)}.btn-save:disabled,.btn-cancel:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.board-trash-zone{position:fixed;bottom:28px;left:50%;transform:translate(-50%);display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 18px;background:var(--bg-raised);border:2px dashed var(--line-strong);border-radius:999px;color:var(--ink-muted);font-size:13px;font-weight:500;z-index:200;pointer-events:all;-webkit-user-select:none;user-select:none;box-shadow:var(--shadow-md);white-space:nowrap;animation:trashZoneIn .18s var(--ease);transition:background .15s var(--ease),border-color .15s var(--ease),color .15s var(--ease),transform .15s var(--ease),box-shadow .15s var(--ease);max-width:90vw}.board-trash-zone[data-hover=true]{background:#b9556926;border-color:var(--status-rose);border-style:solid;color:var(--status-rose);transform:translate(-50%) scale(1.08);box-shadow:var(--shadow-lg),0 0 20px #b9556933}@keyframes trashZoneIn{0%{opacity:0;transform:translate(-50%) translateY(10px) scale(.96)}to{opacity:1;transform:translate(-50%) translateY(0) scale(1)}}.list-view{flex:1;overflow:auto;padding:12px 20px 20px}.list-group{margin-bottom:20px}.list-group-header{display:flex;align-items:center;gap:10px;padding:8px 12px;font-size:12px;font-weight:500;color:var(--ink-muted);border-bottom:1px solid var(--line);transition:background .1s;border-radius:6px 6px 0 0}.list-group-header:hover{background:var(--bg-subtle)}.list-group-header .col-count{margin-left:0}.list-group-add{margin-left:auto;display:flex;align-items:center;justify-content:center;width:20px;height:20px;border:none;background:transparent;cursor:pointer;color:var(--ink-faint);border-radius:4px;opacity:0;transition:opacity .12s,background .1s}.list-group-header:hover .list-group-add{opacity:1}.list-group-add:hover{background:var(--accent-soft);color:var(--accent)}.list-table{width:100%;border-collapse:collapse}.list-table th{text-align:left;padding:8px 12px;font-size:11px;font-weight:500;color:var(--ink-faint);text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid var(--line);background:var(--bg);position:sticky;top:0;z-index:1}.list-table td{padding:10px 12px;font-size:13px;border-bottom:1px solid var(--line);vertical-align:middle}.list-table tr{cursor:pointer;transition:background .1s var(--ease)}.list-table tr:hover td{background:var(--bg-subtle)}.list-table tr[data-done=true] td{color:var(--ink-muted)}.list-table tr[data-done=true] .title{text-decoration:line-through}.list-check{width:14px;height:14px;border:1.5px solid var(--line-strong);border-radius:4px;display:grid;place-items:center;color:#fff;background:var(--bg-raised);transition:all .1s var(--ease);flex-shrink:0}.list-check[data-checked=true]{background:var(--ink);border-color:var(--ink)}[data-theme=dark] .list-check[data-checked=true]{background:var(--accent);border-color:var(--accent)}.status-pill{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;border-radius:5px;font-size:11px;font-weight:500;background:var(--bg-subtle);color:var(--ink-2);border:1px solid var(--line)}.cal-wrap{flex:1;overflow-x:hidden;overflow-y:auto;padding:16px 20px 20px;display:grid;grid-template-columns:minmax(0,1fr) 280px;grid-auto-rows:min-content;align-content:start;column-gap:16px;row-gap:0;min-width:0}.cal-wrap>.cal-header,.cal-wrap>.cal-panels,.cal-wrap>.cal-grid,.cal-wrap>.cal-week-grid,.cal-wrap>.cal-agenda{grid-column:1;min-width:0}.cal-wrap>.cal-grid,.cal-wrap>.cal-week-grid{align-self:stretch;min-height:480px}.cal-side{grid-column:2;grid-row:1 / span 99;display:flex;flex-direction:column;gap:12px;align-self:start;position:sticky;top:0}.cal-side-card{background:var(--bg-raised);border:1px solid var(--line);border-radius:12px;overflow:hidden}.cal-side-head{display:flex;align-items:center;gap:6px;padding:10px 12px 6px}.cal-side-title{flex:1;font-family:var(--font-display);font-size:14px;font-weight:600;color:var(--ink);text-align:center}.cal-side-nav{width:24px;height:24px;display:grid;place-items:center;background:transparent;border:1px solid var(--line);border-radius:7px;color:var(--ink-muted);cursor:pointer;transition:background .12s var(--ease),color .12s var(--ease)}.cal-side-nav:hover{background:var(--bg-subtle);color:var(--ink)}.cal-side-mini{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;padding:0 10px 12px}.cal-side-dow{text-align:center;font-size:9.5px;font-weight:600;text-transform:uppercase;color:var(--ink-faint);padding:4px 0 2px;letter-spacing:.04em}.cal-side-day{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;aspect-ratio:1;font-size:11.5px;font-family:var(--font-mono);color:var(--ink);background:transparent;border:none;border-radius:6px;cursor:pointer;position:relative;transition:background .12s var(--ease)}.mini-task-dot{width:3px;height:3px;border-radius:50%;background:var(--accent);flex-shrink:0}.cal-side-day:hover:not(:disabled){background:var(--bg-subtle)}.cal-side-day:disabled{cursor:default}.cal-side-day[data-other=true]{color:var(--ink-dim)}.cal-side-day[data-today=true]{background:var(--ink);color:var(--bg);font-weight:700}.cal-side-day[data-selected=true]:not([data-today=true]){outline:1.5px solid var(--accent);outline-offset:-1.5px;color:var(--accent-ink)}.cal-side-day[data-today=true] .mini-task-dot{background:var(--bg)}.cal-side-card-head{display:flex;align-items:center;gap:6px;padding:10px 12px;border-bottom:1px solid var(--line);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-muted)}.cal-side-count{margin-left:auto;font-family:var(--font-mono);font-size:10.5px;color:var(--ink-faint);background:var(--bg-sunken);padding:1px 6px;border-radius:999px}.cal-side-clear{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:5px;background:none;border:none;cursor:pointer;color:var(--ink-faint);transition:background .1s,color .1s}.cal-side-clear:hover{background:var(--bg-subtle);color:var(--ink)}.cal-day-panel{border:1px solid var(--accent);animation:calDayPanelIn .2s var(--ease)}@keyframes calDayPanelIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.cal-day-panel .cal-side-card-head{background:oklch(from var(--accent) l c h / .08);color:var(--accent)}.cal-day-panel .cal-side-count{background:oklch(from var(--accent) l c h / .15);color:var(--accent)}.cal-side-list{display:flex;flex-direction:column;max-height:280px;overflow-y:auto}.cal-side-empty{padding:16px 12px;text-align:center;font-size:11.5px;color:var(--ink-faint)}.cal-side-item{display:flex;gap:8px;padding:8px 12px;border-bottom:1px solid var(--line);cursor:pointer;transition:background .12s var(--ease)}.cal-side-item:last-child{border-bottom:none}.cal-side-item:hover{background:var(--bg-subtle)}.cal-side-item[data-mine=true]{background:color-mix(in oklch,var(--accent) 4%,transparent)}.cal-side-item-bar{width:3px;flex-shrink:0;border-radius:2px;align-self:stretch}.cal-side-item-body{flex:1;min-width:0}.cal-side-item-title{font-size:12.5px;font-weight:500;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-side-item-meta{display:flex;align-items:center;gap:6px;margin-top:3px;font-size:10.5px;color:var(--ink-muted);font-family:var(--font-mono)}@media(max-width:1080px){.cal-wrap{grid-template-columns:minmax(0,1fr)}.cal-side{display:none}}.cal-header{display:flex;align-items:flex-start;gap:16px;margin-bottom:18px}.cal-header-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-left:auto}.cal-title{font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);margin-bottom:4px}.cal-month{font-family:var(--font-display);font-size:24px;letter-spacing:-.01em}.cal-month em{font-style:italic;color:var(--ink-muted);font-weight:400}.cal-nav{display:flex;gap:2px;margin-left:8px}.cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;background:var(--bg-raised);flex:1;min-height:0;min-width:0;width:100%}.cal-panels{display:grid;grid-template-columns:1fr;gap:14px;margin-bottom:18px}.cal-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.cal-stat{background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--r-lg);padding:16px;display:flex;flex-direction:column;gap:6px}.cal-stat span{font-size:12px;color:var(--ink-muted)}.cal-stat strong{font-size:20px;color:var(--ink)}.cal-filter-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:14px 16px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--bg-raised)}.cal-filter-row span{font-size:12px;color:var(--ink-muted)}.cal-filter-row .filter-chip{margin:0}.cal-weekday{padding:8px 10px;font-size:10.5px;font-weight:500;color:var(--ink-muted);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--line);background:var(--bg-subtle)}.cal-day{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:6px 8px 4px;display:flex;flex-direction:column;gap:2px;min-height:96px;max-height:130px;overflow:hidden;position:relative;cursor:pointer;transition:background .1s var(--ease)}.cal-day:hover,.cal-day[data-other=true]{background:var(--bg-subtle)}.cal-day[data-other=true] .day-num{color:var(--ink-dim)}.cal-day[data-today=true] .day-num{background:var(--ink);color:var(--bg);width:22px;height:22px;border-radius:50%;display:grid;place-items:center}[data-theme=dark] .cal-day[data-today=true] .day-num{background:var(--accent);color:#fff}.day-num{font-size:12px;font-weight:500;color:var(--ink);font-variant-numeric:tabular-nums;padding:2px 0 2px 2px}.cal-chip{padding:2px 6px;border-radius:4px;font-size:11px;line-height:16px;font-weight:500;width:100%;box-sizing:border-box;color:var(--ink-2);background:var(--bg-subtle);border-left:2px solid var(--ink-faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.cal-chip:hover{background:var(--bg-sunken)}.cal-chip[data-tone=blue]{border-left-color:var(--status-blue)}.cal-chip[data-tone=amber]{border-left-color:var(--status-amber)}.cal-chip[data-tone=rose]{border-left-color:var(--status-rose)}.cal-chip[data-tone=green]{border-left-color:var(--status-green)}.cal-chip[data-tone=accent]{border-left-color:var(--accent)}.cal-chip[data-tone=purple]{border-left-color:var(--status-purple)}.cal-chip[data-tone=teal]{border-left-color:var(--status-teal)}.cal-chip[data-tone=orange]{border-left-color:var(--status-orange)}.cal-chip[data-tone=cyan]{border-left-color:var(--status-cyan)}.cal-chip[data-tone=pink]{border-left-color:var(--status-pink)}.cal-chip[data-mine=true]{background:color-mix(in oklch,var(--accent) 12%,var(--bg-raised));border-left-color:var(--accent);font-weight:600}.cal-week-chip[data-mine=true]{outline:1.5px solid var(--accent);background:color-mix(in oklch,var(--accent) 10%,var(--bg-raised))}.agenda-item[data-mine=true]{background:color-mix(in oklch,var(--accent) 6%,var(--bg-raised))}.cal-more{font-size:10.5px;color:var(--ink-muted);padding-left:4px}.cal-empty{padding:48px 0;text-align:center;color:var(--ink-dim);font-size:14px}.cal-bar{height:6px;margin:1px 0;border-radius:0;opacity:.82;cursor:pointer;transition:opacity .12s;flex-shrink:0}.cal-bar:hover{opacity:1}.cal-bar[data-start=true]{border-radius:4px 0 0 4px;margin-left:2px}.cal-bar[data-end=true]{border-radius:0 4px 4px 0;margin-right:2px}.cal-bar[data-start=true][data-end=true]{border-radius:4px;margin:1px 2px}.cal-bar[data-mine=true]{height:8px;box-shadow:inset 0 2px #ffffff8c}.cal-holiday-dot{width:6px;height:6px;border-radius:50%;background:#dd503f;flex-shrink:0;cursor:default}.cal-day[data-range-start=true],.cal-week-col[data-range-start=true]{background:color-mix(in oklch,var(--accent) 15%,var(--bg))!important;outline:1.5px solid var(--accent);outline-offset:-1px}.cal-day[data-in-range=true],.cal-week-col[data-in-range=true]{background:color-mix(in oklch,var(--accent) 8%,var(--bg))!important}.cal-week-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:0;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}.cal-week-col{display:flex;flex-direction:column;border-right:1px solid var(--line);min-height:340px}.cal-week-col:last-child{border-right:none}.cal-week-col[data-weekend=true]{background:var(--bg-subtle)}.cal-week-col[data-today=true]{background:color-mix(in oklch,var(--accent) 5%,var(--bg))}.cal-week-head{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 4px 20px;border-bottom:1px solid var(--line);background:var(--bg-raised);position:relative}.cal-week-head .cal-holiday-dot{position:absolute;bottom:7px;left:50%;transform:translate(-50%)}.cal-week-dow{font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted)}.cal-week-date{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:14px;font-weight:500;color:var(--ink)}.cal-week-date[data-today=true]{background:var(--accent);color:#fff;font-weight:700}.cal-week-body{display:flex;flex-direction:column;gap:3px;padding:6px 4px;flex:1;overflow:hidden}.cal-week-chip{display:flex;align-items:center;gap:4px;padding:4px 6px;border-radius:6px;background:var(--bg-raised);border-left:3px solid var(--line);cursor:pointer;font-size:11px;transition:background .12s}.cal-week-chip:hover{background:var(--bg-sunken)}.cal-week-chip[data-overdue=true]{border-left-color:var(--status-rose)!important}.cal-week-chip-title{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink)}.cal-week-chip[data-tone=blue]{border-left-color:var(--status-blue)}.cal-week-chip[data-tone=amber]{border-left-color:var(--status-amber)}.cal-week-chip[data-tone=rose]{border-left-color:var(--status-rose)}.cal-week-chip[data-tone=green]{border-left-color:var(--status-green)}.cal-week-chip[data-tone=accent]{border-left-color:var(--accent)}.cal-week-chip[data-tone=purple]{border-left-color:var(--status-purple)}.cal-week-chip[data-tone=teal]{border-left-color:var(--status-teal)}.cal-week-chip[data-tone=orange]{border-left-color:var(--status-orange)}.cal-week-chip[data-tone=cyan]{border-left-color:var(--status-cyan)}.cal-week-chip[data-tone=pink]{border-left-color:var(--status-pink)}.cal-agenda{display:flex;flex-direction:column;gap:0}.agenda-group{border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:12px}.agenda-group:last-child{border-bottom:none;margin-bottom:0}.agenda-date-header{display:flex;align-items:center;gap:8px;padding:6px 0 10px}.agenda-date-header[data-today=true] .agenda-date-label{color:var(--accent);font-weight:700}.agenda-date-header[data-past=true]:not([data-today=true]) .agenda-date-label{color:var(--ink-dim)}.agenda-date-label{font-size:13px;font-weight:600;color:var(--ink);min-width:80px}.agenda-badge{font-size:10px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;padding:2px 7px;border-radius:99px}.agenda-badge-late{background:color-mix(in oklch,var(--status-rose) 15%,transparent);color:var(--status-rose)}.agenda-badge-today{background:color-mix(in oklch,var(--accent) 15%,transparent);color:var(--accent)}.agenda-task-count{font-size:11px;color:var(--ink-dim);margin-left:auto}.agenda-item{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:var(--r-md);cursor:pointer;transition:background .12s}.agenda-item:hover{background:var(--bg-subtle)}.agenda-item-bar{width:3px;height:32px;border-radius:2px;background:var(--line);flex-shrink:0}.agenda-item[data-tone=blue] .agenda-item-bar{background:var(--status-blue)}.agenda-item[data-tone=amber] .agenda-item-bar{background:var(--status-amber)}.agenda-item[data-tone=rose] .agenda-item-bar{background:var(--status-rose)}.agenda-item[data-tone=green] .agenda-item-bar{background:var(--status-green)}.agenda-item[data-tone=accent] .agenda-item-bar{background:var(--accent)}.agenda-item[data-tone=purple] .agenda-item-bar{background:var(--status-purple)}.agenda-item[data-tone=teal] .agenda-item-bar{background:var(--status-teal)}.agenda-item[data-tone=orange] .agenda-item-bar{background:var(--status-orange)}.agenda-item[data-tone=cyan] .agenda-item-bar{background:var(--status-cyan)}.agenda-item[data-tone=pink] .agenda-item-bar{background:var(--status-pink)}.agenda-item-body{flex:1;min-width:0}.agenda-item-title{font-size:13px;font-weight:500;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:3px}.agenda-item-meta{display:flex;align-items:center;gap:8px}.dash{flex:1;overflow:auto;padding:24px 28px}.dash-h1{font-family:var(--font-display);font-size:36px;line-height:1.1;letter-spacing:-.015em;margin-bottom:4px}.dash-h1 em{font-style:italic;color:var(--ink-muted)}.dash-sub{font-size:14px;color:var(--ink-muted);margin-bottom:28px;max-width:60ch}.dash-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:24px}.stat-card{background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--r-lg);padding:18px;display:flex;flex-direction:column;gap:6px;position:relative;overflow:hidden;transition:border-color .14s var(--ease),box-shadow .14s var(--ease)}.stat-card[data-clickable=true]{cursor:pointer}.stat-card[data-clickable=true]:hover{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in oklch,var(--accent) 12%,transparent)}.stat-label{font-size:11.5px;font-weight:500;color:var(--ink-muted);text-transform:uppercase;letter-spacing:.04em}.stat-value{font-family:var(--font-display);font-size:40px;line-height:1;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.stat-delta{font-size:11.5px;color:var(--ink-muted);display:flex;align-items:center;gap:4px}.stat-delta[data-up=true]{color:var(--status-green)}.stat-delta[data-down=true]{color:var(--status-rose)}.dash-row{display:grid;grid-template-columns:1.6fr 1fr;gap:14px;margin-bottom:14px}.panel{background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;display:flex;flex-direction:column}.panel-head{padding:14px 18px 10px;display:flex;align-items:center;gap:10px}.panel-title{font-family:var(--font-display);font-size:18px;letter-spacing:-.005em}.panel-sub{font-size:12px;color:var(--ink-muted)}.panel-body{padding:4px 18px 18px}.chart{height:200px;display:flex;align-items:flex-end;gap:6px;padding:12px 0}.bar{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;position:relative;min-width:0;height:100%;justify-content:flex-end}.bar:before{content:"";position:absolute;top:0;bottom:22px;left:15%;right:15%;background:var(--bg-sunken);border-radius:4px;z-index:0}.bar-stack{width:70%;display:flex;flex-direction:column;border-radius:4px;overflow:hidden;min-height:4px;position:relative;z-index:1}.bar-seg{width:100%;transition:height .3s var(--ease)}.bar-seg[data-t=done]{background:var(--status-green)}.bar-seg[data-t=review]{background:var(--status-amber)}.bar-seg[data-t=progress]{background:var(--status-blue)}[data-theme=dark] .bar-seg[data-t=done]{background:#5aa26b}[data-theme=dark] .bar-seg[data-t=review]{background:#e29e47}[data-theme=dark] .bar-seg[data-t=progress]{background:#369bc5}.bar-label{font-size:10.5px;color:var(--ink-faint);position:relative;z-index:1}.bar-tooltip{position:absolute;bottom:100%;left:50%;transform:translate(-50%);background:var(--ink);color:var(--bg);padding:4px 8px;border-radius:5px;font-size:11px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .12s var(--ease)}.bar:hover .bar-tooltip{opacity:1}.legend{display:flex;gap:14px;font-size:11.5px;color:var(--ink-muted);padding:0 18px 14px}.legend-item{display:inline-flex;align-items:center;gap:5px}.legend-dot{width:8px;height:8px;border-radius:2px}.activity-item{display:flex;gap:10px;padding:10px 0;border-bottom:1px solid var(--line)}.activity-item:last-child{border-bottom:none}.activity-body{flex:1;min-width:0}.activity-text{font-size:13px;line-height:1.45;color:var(--ink-2)}.activity-text strong{font-weight:600;color:var(--ink)}.activity-text em{font-style:normal;color:var(--accent-ink)}[data-theme=dark] .activity-text em{color:var(--accent)}.activity-time{font-size:11px;color:var(--ink-faint);margin-top:2px}.dash-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:32px 18px;color:var(--ink-dim);font-size:13px;text-align:center;min-height:120px}.dash-empty-state .icon{color:var(--ink-faint)}.people-list{display:flex;flex-direction:column;gap:2px}.person-row{display:flex;align-items:center;gap:10px;padding:8px 0}.person-row:not(:last-child){border-bottom:1px solid var(--line)}.person-info{flex:1}.person-name{font-size:13px;font-weight:500}.person-role{font-size:11.5px;color:var(--ink-muted)}.person-stat{font-size:12px;color:var(--ink-muted);font-variant-numeric:tabular-nums;display:flex;align-items:center;gap:5px}.person-bar-wrap{flex:1;display:flex;flex-direction:column;gap:3px}.person-bar-track{height:4px;background:var(--bg-subtle);border-radius:99px;overflow:hidden}.person-bar-fill{height:100%;background:var(--accent);border-radius:99px;transition:width .4s var(--ease)}.my-tasks-strip{background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--r-lg);margin-bottom:14px;overflow:hidden}.my-tasks-strip-head{padding:12px 18px 8px;display:flex;align-items:center;gap:8px}.my-tasks-strip-title{font-family:var(--font-display);font-size:15px;letter-spacing:-.005em;flex:1}.my-tasks-strip-list{display:flex;flex-wrap:wrap;gap:6px;padding:0 18px 14px}.my-task-chip{display:inline-flex;align-items:center;gap:6px;background:var(--bg-subtle);border:1px solid var(--line);border-radius:6px;padding:4px 10px;font-size:12.5px;cursor:pointer;transition:border-color .12s var(--ease),background .12s var(--ease);max-width:240px}.my-task-chip:hover{border-color:var(--accent);background:color-mix(in oklch,var(--accent) 8%,var(--bg-subtle))}.my-task-chip[data-overdue=true]{border-color:color-mix(in oklch,var(--status-rose) 40%,var(--line))}.my-task-chip-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500}.my-task-chip-due{font-size:11px;color:var(--ink-muted);white-space:nowrap}.my-task-chip[data-overdue=true] .my-task-chip-due{color:var(--status-rose)}.col-chip{display:inline-flex;align-items:center;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:500;background:color-mix(in oklch,var(--chip-color, var(--ink-faint)) 14%,transparent);color:var(--chip-color, var(--ink-muted));border:1px solid color-mix(in oklch,var(--chip-color, var(--ink-faint)) 25%,transparent)}.drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#14120c59;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:50;opacity:0;pointer-events:none;transition:opacity .25s var(--ease)}.drawer-overlay[data-open=true]{opacity:1;pointer-events:all}.drawer{position:fixed;top:0;right:0;height:100vh;width:620px;max-width:96vw;background:var(--bg-raised);border-left:1px solid var(--line);border-radius:0 22px 22px 0;box-shadow:var(--shadow-lg);z-index:51;transform:translate(100%);transition:transform .3s var(--ease);display:flex;flex-direction:column}.drawer[data-open=true]{transform:translate(0)}.drawer[data-fullscreen=true]{left:0!important;right:0!important;width:100vw!important;max-width:1200px!important;margin:0 auto!important;max-width:100vw!important;border-radius:0!important;border-left:none!important}.drawer-overlay[data-fullscreen=true]{display:none}.task-page{flex:1;display:flex;flex-direction:column;overflow:hidden;background:var(--bg);animation:fadeSlideIn .18s var(--ease) both}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.task-page-head{display:flex;align-items:center;gap:8px;padding:10px 20px;border-bottom:1px solid var(--line);flex-shrink:0;background:var(--bg)}.task-page-back{display:inline-flex;align-items:center;gap:5px;font-size:13px;color:var(--ink-muted);background:none;border:none;padding:4px 8px;border-radius:6px;cursor:pointer;transition:background .13s,color .13s;flex-shrink:0}.task-page-back:hover{background:var(--bg-subtle);color:var(--ink)}.task-page-crumbs{display:flex;align-items:center;gap:5px;font-size:12.5px;color:var(--ink-faint);min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.task-page-head-actions{margin-left:auto;display:flex;align-items:center;gap:4px;flex-shrink:0}.task-page-body{flex:1;overflow-y:auto;padding:40px 48px 80px;max-width:860px;width:100%;margin:0 auto;box-sizing:border-box}@media(max-width:900px){.task-page-body{padding:28px 20px 60px}}.drawer-head{padding:14px 20px;display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--line);flex-shrink:0}.drawer-crumbs{font-size:12px;color:var(--ink-muted);display:flex;align-items:center;gap:6px;flex:1;min-width:0;overflow:hidden}.drawer-crumbs .sep{color:var(--ink-dim);flex-shrink:0}.drawer-crumbs>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.drawer-head-actions{margin-left:auto;display:flex;gap:2px;flex-shrink:0}.drawer-body{flex:1;overflow-y:auto;padding:24px 40px 60px}.doc-title{font-family:var(--font-display);font-size:38px;line-height:1.1;letter-spacing:-.015em;margin-bottom:20px;outline:none}.doc-title:focus{background:var(--bg-subtle);border-radius:4px;padding:2px 4px;margin-left:-4px}.props-grid{display:grid;grid-template-columns:140px 1fr;gap:4px 16px;margin-bottom:32px}.prop-label{font-size:12.5px;color:var(--ink-muted);padding:6px 0;display:flex;align-items:center;gap:7px}.prop-value{padding:4px 8px;margin:0;border-radius:8px;font-size:13px;color:var(--ink);min-height:34px;display:flex;align-items:center;gap:8px;cursor:pointer;transition:background .12s var(--ease);background:transparent;border:none;position:relative}.prop-value:hover{background:var(--bg-subtle)}.custom-dropdown{position:relative;width:100%}.custom-dropdown-btn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 14px;border:1px solid var(--line);border-radius:999px;background:var(--bg-raised);color:var(--ink);font-size:14px;cursor:pointer;text-align:left;transition:border-color .15s,background .15s}.custom-dropdown-btn:hover{background:var(--bg-subtle);border-color:var(--line-strong)}.props-grid .custom-dropdown-btn{border:none;background:transparent;padding:0;font-size:13px;min-height:auto;border-radius:0}.props-grid .custom-dropdown-btn:hover{background:transparent;border-color:transparent}.custom-dropdown-btn>.dropdown-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.custom-dropdown-menu{position:fixed;background:var(--bg-raised);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-lg);z-index:10000;overflow-y:auto;max-height:280px;max-width:95vw}.custom-dropdown-item{width:100%;border:none;background:transparent;color:var(--ink);text-align:left;padding:12px 14px;font-size:13px;cursor:pointer;transition:background .15s var(--ease)}.custom-dropdown-item:hover{background:var(--bg-subtle)}.custom-dropdown-item.active{background:var(--accent-soft);color:var(--accent-ink)}[data-theme=dark] .custom-dropdown-item.active{color:var(--accent)}.doc-content{font-size:14.5px;line-height:1.65;color:var(--ink)}.doc-content h2{font-family:var(--font-display);font-size:24px;font-weight:400;letter-spacing:-.01em;margin:28px 0 12px;line-height:1.2}.doc-content h3{font-size:16px;font-weight:600;margin:20px 0 8px}.doc-content p{margin-bottom:10px;color:var(--ink-2)}.doc-content ul,.doc-content ol{margin:10px 0 14px 20px;color:var(--ink-2)}.doc-content li{margin-bottom:5px}.doc-content code{font-family:var(--font-mono);font-size:12.5px;padding:1px 6px;background:var(--bg-subtle);border-radius:4px;color:var(--accent-ink)}[data-theme=dark] .doc-content code{color:var(--accent)}.doc-content pre{font-family:var(--font-mono);font-size:12px;padding:12px 14px;background:var(--bg-sunken);border:1px solid var(--line);border-radius:var(--r-md);overflow-x:auto;margin:10px 0;line-height:1.6}.doc-content blockquote{margin:12px 0;padding:4px 14px;border-left:3px solid var(--accent);color:var(--ink-muted);font-style:italic}.doc-content hr{border:none;border-top:1px solid var(--line);margin:24px 0}.checklist{margin:12px 0;display:flex;flex-direction:column;gap:4px}.check-row{display:flex;align-items:flex-start;gap:10px;padding:5px 6px;margin-left:-6px;border-radius:6px;cursor:pointer}.check-row:hover{background:var(--bg-subtle)}.check-row[data-checked=true] .check-text{text-decoration:line-through;color:var(--ink-muted)}.comments-section{margin-top:36px}.comment-row{display:flex;gap:10px;padding:14px 0;border-top:1px solid var(--line)}.comment-body{flex:1}.comment-head{display:flex;align-items:center;gap:8px;margin-bottom:4px}.comment-name{font-size:13px;font-weight:600}.comment-time{font-size:11px;color:var(--ink-faint)}.comment-text{font-size:13.5px;line-height:1.5;color:var(--ink-2)}.comment-compose{display:flex;gap:10px;padding:14px 0 4px}.comment-input-wrap{flex:1;position:relative}.comment-compose textarea{width:100%;box-sizing:border-box;padding:10px 12px;background:var(--bg-subtle);border:1px solid var(--line);border-radius:var(--r-md);font-size:13px;resize:none;min-height:60px;outline:none;transition:border-color .15s}.comment-compose textarea:focus{border-color:var(--accent)}.mention-dropdown{position:absolute;bottom:calc(100% + 6px);left:0;right:0;background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:0 8px 24px #0000001f;overflow:hidden;z-index:200}.mention-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;background:none;border:none;cursor:pointer;text-align:left;transition:background .1s}.mention-item:hover{background:var(--bg-subtle)}.mention-name{font-size:13px;font-weight:500;color:var(--ink);flex:1}.mention-role{font-size:11px;color:var(--ink-muted)}.team-sort-wrap{position:relative;margin-left:auto}.team-sort-menu{position:absolute;top:calc(100% + 4px);right:0;background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:0 8px 24px #0000001f;min-width:190px;overflow:hidden;z-index:100}.team-sort-label{font-size:10px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-muted);padding:10px 14px 4px}.team-sort-item{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:8px 14px;background:none;border:none;cursor:pointer;font-size:13px;color:var(--ink);text-align:left;transition:background .1s}.team-sort-item:hover{background:var(--bg-subtle)}.team-sort-item[data-active=true]{font-weight:600;color:var(--accent)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0c0a0873;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:60;display:grid;place-items:center;opacity:0;pointer-events:none;transition:opacity .2s var(--ease)}.modal-overlay[data-open=true]{opacity:1;pointer-events:all}.modal{width:620px;max-width:95vw;max-height:92vh;background:var(--bg-raised);border:1px solid rgba(255,255,255,.06);border-radius:28px;box-shadow:0 26px 80px #1011172e;overflow:hidden;display:flex;flex-direction:column;transform:translateY(12px) scale(.98);opacity:0;transition:all .22s var(--ease)}.modal-overlay[data-open=true] .modal{transform:translateY(0) scale(1);opacity:1}.modal-head{padding:22px 26px 16px;border-bottom:1px solid var(--line);flex-shrink:0}.modal-title{font-family:var(--font-display);font-size:25px;letter-spacing:-.01em}.modal-sub{font-size:13px;color:var(--ink-muted);margin-top:4px;line-height:1.5}.modal-body{padding:18px 26px;display:flex;flex-direction:column;gap:14px;overflow-y:auto;overflow-x:hidden;flex:1;min-height:0}.modal-foot{padding:18px 26px 20px;border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:10px;background:var(--bg-subtle);flex-shrink:0}.modal-checklist{display:flex;flex-direction:column;gap:2px;background:var(--bg-subtle);border:1px solid var(--line);border-radius:8px;padding:4px 8px;margin-bottom:6px}.modal-checklist-item{display:flex;align-items:center;gap:8px;padding:5px 4px;border-radius:4px}.modal-checklist-item:hover{background:var(--bg-raised)}.modal-checklist-dot{width:12px;height:12px;border:1.5px solid var(--ink-faint);border-radius:3px;flex-shrink:0}.modal-checklist-del{border:none;background:transparent;cursor:pointer;color:var(--ink-faint);padding:2px;border-radius:3px;display:flex;align-items:center;opacity:0;transition:opacity .1s}.modal-checklist-item:hover .modal-checklist-del{opacity:1}.modal-checklist-del:hover{color:var(--status-rose);background:var(--bg-subtle)}.modal-checklist-input-row{display:flex;gap:6px;align-items:center}.modal-checklist-input-row input{flex:1}.field{display:flex;flex-direction:column;gap:10px}.field label{font-size:11.5px;font-weight:500;color:var(--ink-faint);letter-spacing:.01em}.field input,.field textarea,.field select{padding:12px 14px;background:var(--bg-raised);border:1px solid var(--line);border-radius:16px;font-size:14px;outline:none;transition:border-color .18s var(--ease),box-shadow .18s var(--ease),background .18s var(--ease);resize:none}.field select{appearance:none;-webkit-appearance:none;-moz-appearance:none;border-radius:999px;background-color:var(--bg-raised);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%236F6F7A' d='M1 1l5 5 5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;background-size:12px 8px;padding-right:38px;color:var(--ink)}.field select option{background:var(--bg-raised);color:var(--ink);border-radius:14px}.field input[type=date]{appearance:none;-webkit-appearance:none;-moz-appearance:textfield;background:var(--bg-raised)!important;border-radius:999px!important;padding:12px 14px!important;color:var(--ink)!important;caret-color:var(--ink)!important;font-family:inherit;font-size:14px;line-height:1.4;border:1px solid var(--line)}.field input[type=date]::-webkit-datetime-edit-year-field,.field input[type=date]::-webkit-datetime-edit-month-field,.field input[type=date]::-webkit-datetime-edit-day-field,.field input[type=date]::-webkit-datetime-edit-hour-field,.field input[type=date]::-webkit-datetime-edit-minute-field{color:var(--ink)!important}.field input[type=date]::-webkit-calendar-picker-indicator{opacity:.75;cursor:pointer;filter:var(--date-picker-icon-filter, none)}.field input[type=date]::-ms-expand{display:block}.field textarea{min-height:110px}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);background:var(--bg)}.field-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;align-items:flex-end}.priority-pills-select{display:flex;gap:6px;flex-wrap:nowrap}.priority-pill-btn{display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:6px 10px;border-radius:20px;font-size:12px;font-weight:500;border:1.5px solid var(--line);background:transparent;color:var(--ink-muted);cursor:pointer;transition:all .12s;flex:1;white-space:nowrap}.priority-pill-btn:hover{border-color:var(--line-strong);color:var(--ink)}.priority-pill-btn[data-active=true][data-p=high]{border-color:var(--status-rose);background:#b9556914;color:var(--status-rose)}.priority-pill-btn[data-active=true][data-p=mid]{border-color:var(--status-amber);background:#d6a54d14;color:var(--status-amber)}.priority-pill-btn[data-active=true][data-p=low]{border-color:var(--status-blue);background:#3179a614;color:var(--status-blue)}.field-row>.field{flex:1}.chips{display:flex;flex-wrap:wrap;gap:10px}.chip{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;background:var(--bg-subtle);border:1px solid var(--line);border-radius:999px;font-size:13px;color:var(--ink);cursor:pointer;transition:background .18s var(--ease),border-color .18s var(--ease)}.chip:hover{background:var(--bg-raised)}.chip[data-selected=true]{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-ink)}[data-theme=dark] .chip[data-selected=true]{color:var(--accent)}.palette-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#14120c59;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:80;display:flex;justify-content:center;align-items:flex-start;padding-top:14vh;opacity:0;pointer-events:none;transition:opacity .2s var(--ease)}.palette-overlay[data-open=true]{opacity:1;pointer-events:all}.palette{width:600px;max-width:92vw;background:var(--bg-raised);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-lg);overflow:hidden;transform:translateY(-8px) scale(.98);opacity:0;transition:all .22s var(--ease)}.palette-overlay[data-open=true] .palette{transform:translateY(0) scale(1);opacity:1}.palette-input-wrap{display:flex;align-items:center;gap:10px;padding:14px 18px;border-bottom:1px solid var(--line)}.palette-input-wrap input{flex:1;background:none;border:none;outline:none;font-size:15px;padding:0}.palette-list{max-height:360px;overflow-y:auto;padding:6px}.palette-group-title{padding:8px 12px 4px;font-size:10.5px;font-weight:500;color:var(--ink-faint);text-transform:uppercase;letter-spacing:.05em}.palette-item{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:7px;font-size:13px;cursor:pointer;color:var(--ink-2)}.palette-item[data-active=true],.palette-item:hover{background:var(--accent-soft);color:var(--accent-ink)}[data-theme=dark] .palette-item[data-active=true],[data-theme=dark] .palette-item:hover{color:var(--ink)}.palette-item .icon{color:var(--ink-muted)}.palette-item[data-active=true] .icon,.palette-item:hover .icon{color:var(--accent)}.palette-item kbd{margin-left:auto;padding:2px 6px;background:var(--bg-subtle);border:1px solid var(--line);border-radius:4px;font-family:var(--font-mono);font-size:10.5px;color:var(--ink-muted)}.palette-hint{padding:8px 14px;font-size:11px;color:var(--ink-faint);border-top:1px solid var(--line);display:flex;gap:12px;background:var(--bg-subtle)}.palette-hint kbd{padding:1px 5px;background:var(--bg);border:1px solid var(--line);border-radius:3px;font-family:var(--font-mono);font-size:10px;margin-right:4px}.notif-panel{position:fixed;top:58px;right:16px;width:380px;max-height:calc(100vh - 80px);background:var(--bg-raised);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-lg);z-index:70;display:flex;flex-direction:column;overflow:hidden;transform-origin:top right;opacity:0;transform:translateY(-4px) scale(.97);pointer-events:none;transition:all .2s var(--ease)}.notif-panel[data-open=true]{opacity:1;transform:translateY(0) scale(1);pointer-events:all}.notif-head{padding:14px 18px 10px;display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--line)}.notif-title{font-family:var(--font-display);font-size:18px;letter-spacing:-.005em}.notif-count{font-size:11px;background:var(--accent);color:#fff;padding:1px 7px;border-radius:99px}.notif-tabs{display:flex;gap:2px;margin-left:auto}.notif-tabs button{padding:3px 8px;border-radius:5px;font-size:11.5px;color:var(--ink-muted)}.notif-tabs button[data-active=true]{background:var(--bg-subtle);color:var(--ink)}.notif-list{flex:1;overflow-y:auto;overflow-x:hidden;padding:4px;max-height:60vh}.notif-item{padding:10px 36px 10px 10px;border-radius:8px;display:flex;align-items:flex-start;gap:10px;cursor:pointer;position:relative}.notif-item:hover{background:var(--bg-subtle)}.notif-item[data-unread=true]:before{content:"";position:absolute;top:14px;left:4px;width:6px;height:6px;border-radius:50%;background:var(--accent)}.notif-icon-badge{width:30px;height:30px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:var(--bg-subtle);color:var(--ink-muted)}.notif-type-message .notif-icon-badge{background:#2e7b9c1f;color:var(--status-blue)}.notif-type-task .notif-icon-badge{background:#4880551f;color:var(--status-green)}.notif-type-mention .notif-icon-badge{background:#ba823c1f;color:var(--status-amber)}.notif-dismiss{position:absolute;top:8px;right:8px;background:none;border:none;cursor:pointer;color:var(--ink-faint);padding:3px;line-height:1;border-radius:4px;opacity:0;transition:opacity .12s}.notif-item:hover .notif-dismiss{opacity:1}.notif-dismiss:hover{color:var(--status-rose);background:var(--bg-raised)}.notif-body{flex:1;min-width:0}.notif-text{font-size:13px;line-height:1.4;word-break:break-word;overflow-wrap:break-word}.notif-text strong{font-weight:600}.notif-text em{font-style:normal;color:var(--ink);font-weight:500}.notif-time{font-size:11px;color:var(--ink-faint);margin-top:2px}.tweaks-fab{position:fixed;bottom:16px;right:16px;width:42px;height:42px;border-radius:50%;background:var(--ink);color:var(--bg);box-shadow:var(--shadow-md);display:grid;place-items:center;z-index:90;transition:all .2s var(--ease)}.tweaks-fab:hover{transform:scale(1.05) rotate(30deg)}[data-theme=dark] .tweaks-fab{background:var(--accent);color:#fff}.tweaks-panel{position:fixed;bottom:70px;right:16px;width:320px;background:var(--bg-raised);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-lg);z-index:89;overflow:hidden;transform-origin:bottom right;opacity:0;transform:translateY(4px) scale(.96);pointer-events:none;transition:all .2s var(--ease)}.tweaks-panel[data-open=true]{opacity:1;transform:translateY(0) scale(1);pointer-events:all}.tweaks-head{padding:14px 18px 8px;display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--line)}.tweaks-title{font-family:var(--font-display);font-size:18px;letter-spacing:-.005em}.tweaks-body{padding:14px 18px;display:flex;flex-direction:column;gap:14px;max-height:72vh;overflow-y:auto}.tweak-group{display:flex;flex-direction:column;gap:6px}.tweak-label{font-size:11px;font-weight:500;color:var(--ink-muted);text-transform:uppercase;letter-spacing:.04em}.tweak-options{display:flex;gap:4px;flex-wrap:wrap}.tweak-opt{padding:5px 9px;border-radius:6px;font-size:12px;background:var(--bg-subtle);border:1px solid transparent;color:var(--ink-2);transition:all .12s var(--ease)}.tweak-opt:hover{border-color:var(--line-strong)}.tweak-opt[data-active=true]{background:var(--ink);color:var(--bg);border-color:var(--ink)}[data-theme=dark] .tweak-opt[data-active=true]{background:var(--accent);color:#fff;border-color:var(--accent)}.swatch-row{display:flex;gap:8px}.swatch{width:28px;height:28px;border-radius:7px;border:2px solid transparent;cursor:pointer;transition:all .12s var(--ease);position:relative}.swatch[data-active=true]{border-color:var(--ink);transform:scale(1.05)}[data-theme=dark] .swatch[data-active=true]{border-color:var(--ink)}.tweak-toggle{display:flex;align-items:center;justify-content:space-between;font-size:13px;padding:4px 0;cursor:pointer}.toggle{width:32px;height:18px;border-radius:99px;background:var(--bg-sunken);border:1px solid var(--line);position:relative;transition:all .2s var(--ease);flex-shrink:0}.toggle:after{content:"";position:absolute;top:1px;left:1px;width:14px;height:14px;border-radius:50%;background:#fff;box-shadow:var(--shadow-xs);transition:all .22s var(--ease-snap)}.toggle[data-on=true]{background:var(--ink);border-color:var(--ink)}[data-theme=dark] .toggle[data-on=true]{background:var(--accent);border-color:var(--accent)}.toggle[data-on=true]:after{left:15px}body{margin:0;padding:0;overflow:hidden;font-family:var(--font-ui)}:root{--color-ink: #1a1a1a;--color-ink-muted: rgba(26, 26, 26, .7);--color-line: rgba(0,0,0,.08);--color-brand-blue: #1a4a70;--color-brand-red: #9b1d20;--auth-theme: var(--color-brand-blue);--auth-glow: rgba(26, 74, 112, .18);--ws-theme: var(--color-brand-blue)}[data-variant=register]{--auth-theme: var(--color-brand-blue);--auth-glow: rgba(26, 74, 112, .18)}[data-variant=ws-create],[data-variant=ws-join]{--auth-theme: var(--color-brand-blue);--auth-glow: rgba(26, 74, 112, .18);--ws-theme: var(--color-brand-blue)}[data-theme=dark]{--color-ink: #ededea;--color-ink-muted: rgba(237, 237, 234, .62);--color-line: rgba(255, 255, 255, .09);--auth-glow: rgba(237, 237, 234, .07)}[data-theme=dark] .glow-input{background:var(--bg-subtle);border-color:var(--line-strong);color:var(--ink)}[data-theme=dark] .glow-input::placeholder{color:var(--ink-faint)}[data-theme=dark] .oauth-btn{background:var(--bg-raised);border-color:var(--line-strong);color:var(--ink)}[data-theme=dark] .oauth-btn:hover,[data-theme=dark] .auth-tabs{background:var(--bg-subtle)}[data-theme=dark] .auth-tabs button[data-active=true]{background:var(--bg-raised);color:var(--ink)}.auth-page{height:100vh;width:100vw;overflow:hidden;display:grid;grid-template-columns:2fr 1fr;background:var(--bg)}.auth-visual{position:relative;height:100vh;width:100%;overflow:hidden;display:flex;flex-direction:column}.auth-visual:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none;background:linear-gradient(90deg,#f4f1ec7a,#f4f1ec38 48%,#f4f1ec0a),radial-gradient(circle at 18% 28%,rgba(255,255,255,.22),transparent 42%)}.workspace-page .auth-visual:after{display:none}.slider-container{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;background:linear-gradient(135deg,#1a2a3a,#0d1a26 60%,#111)}.slide{position:absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:center center;opacity:0;transition:opacity 1.2s ease-in-out}.slide.active{opacity:1}.dust-overlay{position:absolute;top:0;left:0;width:100%;height:100%;z-index:2;pointer-events:none;opacity:.55}.dust-particle{position:absolute;background:#ffffff59;border-radius:50%;animation:particleRise linear infinite}@keyframes particleRise{0%{transform:translateY(100vh) scale(1);opacity:0}10%{opacity:1}90%{opacity:1}to{transform:translateY(-10vh) scale(.5);opacity:0}}.glass-content{position:relative;z-index:3;margin:auto 48px 72px 8vw;padding:40px;background:#faf8f2d1;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.62);border-radius:12px;box-shadow:0 16px 44px #18140e2e;max-width:540px;--color-ink: #1a1a1a;--color-ink-muted: rgba(26, 26, 26, .7);--color-line: rgba(0, 0, 0, .08)}.auth-brand-row{display:flex;align-items:center;gap:12px;margin-bottom:28px}.auth-brand-text{font-family:var(--font-display);font-size:40px;color:var(--color-ink);letter-spacing:-.02em;line-height:1}.auth-brand-text em{color:var(--color-brand-blue);font-style:normal}.auth-hero h1{font-family:var(--font-display);font-size:34px;line-height:1.2;letter-spacing:-.015em;margin-bottom:20px;color:var(--color-ink)}.auth-hero h1 em{font-style:italic;color:var(--color-brand-blue)}.auth-hero p{font-size:15.5px;color:var(--color-ink);line-height:1.7;max-width:44ch;margin-bottom:32px;font-weight:400;opacity:.85}.stats-row{display:flex;gap:32px;margin-top:20px;padding-top:16px;border-top:1px solid var(--color-line)}.stats-row div{display:flex;flex-direction:column;gap:4px}.stats-row strong{font-size:24px;font-family:var(--font-display);color:var(--color-ink)}.stats-row span{font-size:12.5px;color:var(--color-ink-muted)}.auth-form-wrap{height:100vh;overflow-y:auto;display:flex;align-items:center;justify-content:center;padding:48px}.auth-form{width:100%;max-width:390px}.auth-form h2{font-family:var(--font-display);font-size:36px;letter-spacing:-.015em;margin-bottom:8px;color:var(--color-ink)}.auth-form p.sub{font-size:14.5px;color:var(--color-ink-muted);margin-bottom:32px}.auth-tabs{display:flex;gap:4px;padding:5px;background:#f1f1f0;border:1px solid var(--color-line);border-radius:8px;margin-bottom:28px}.tab-btn{flex:1;padding:10px;border-radius:5px;font-size:13.5px;color:var(--color-ink-muted);font-weight:500;transition:all .3s ease;background:transparent;border:none;cursor:pointer}.tab-btn[data-active=true]{background:var(--auth-theme);color:#fff}.tab-btn:hover:not([data-active=true]){background:#0000000a}.auth-fields{display:flex;flex-direction:column;gap:18px;margin-bottom:24px}.field{display:flex;flex-direction:column;gap:6px}.field-label{font-size:11px;font-weight:600;color:var(--color-ink-muted);letter-spacing:.5px;text-transform:uppercase}.glow-input{width:100%;padding:13px 15px;border:1px solid var(--color-line);border-radius:4px;background:#fff;transition:all .3s ease;font-size:14.5px;box-sizing:border-box}.glow-input:focus{outline:none;border-color:var(--auth-theme);box-shadow:0 0 0 4px var(--auth-glow)}.glow-input:disabled{opacity:.5;cursor:not-allowed;background:#f5f5f5}.password-strength-container{width:100%;height:4px;background:var(--color-line);border-radius:2px;margin-top:-12px;margin-bottom:12px;overflow:hidden;transition:all .3s ease}.password-strength-container.hidden{height:0;margin-top:0;margin-bottom:0;opacity:0}.password-strength-bar{height:100%;width:0%;border-radius:2px;transition:width .3s ease,background-color .3s ease}.password-header{display:flex;justify-content:space-between;align-items:center}.forgot-link{font-size:12px;color:var(--auth-theme);text-decoration:none;font-weight:500;cursor:pointer}.forgot-link:hover{opacity:.7}.password-wrapper{position:relative;width:100%}.toggle-eye{position:absolute;right:12px;top:50%;transform:translateY(-50%);cursor:pointer;color:var(--color-ink-muted);display:flex;transition:color .2s;z-index:2}.toggle-eye:hover{color:var(--auth-theme)}.auth-submit{width:100%;display:flex;justify-content:center;align-items:center;height:48px;background:var(--auth-theme);color:#fff;border-radius:4px;font-size:14px;font-weight:600;transition:all .2s ease;border:none;cursor:pointer;text-transform:uppercase;letter-spacing:.8px}.auth-submit:hover{filter:brightness(1.15);transform:translateY(-1px);box-shadow:0 4px 12px var(--auth-glow)}.auth-submit:active{transform:translateY(0)}.auth-submit[disabled]{opacity:.7;cursor:not-allowed;transform:none;box-shadow:none}.auth-divider{display:flex;align-items:center;gap:16px;font-size:12px;color:var(--color-ink-muted);margin:24px 0}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--color-line)}.auth-oauth-list{display:flex;flex-direction:column;gap:12px}.oauth-btn{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;padding:12px;border:1px solid var(--color-line);border-radius:4px;background:#fff;color:var(--color-ink);font-size:14px;font-weight:500;transition:all .2s ease;cursor:pointer;font-family:inherit}.oauth-btn:hover{background:#fbfbfa;border-color:#00000026;transform:translateY(-1px);box-shadow:0 4px 8px #00000008}.oauth-btn svg{width:18px;height:18px}.oauth-error-popup{position:relative;display:flex;flex-direction:column;gap:8px;padding:16px;background:#fff5f5;border:1.5px solid #fca5a5;border-radius:8px;margin-bottom:20px}.oauth-error-icon{font-size:22px}.oauth-error-text strong{font-size:14px;color:#991b1b;display:block;margin-bottom:4px}.oauth-error-text p{font-size:13px;color:#7f1d1d;margin:0}.oauth-error-close{position:absolute;top:12px;right:12px;background:none;border:none;cursor:pointer;color:#9ca3af;padding:4px;display:flex}.oauth-error-close:hover{color:#ef4444}.oauth-error-back{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;background:#ef4444;color:#fff;border:none;border-radius:4px;font-size:13px;font-weight:600;cursor:pointer;width:fit-content}.oauth-error-back:hover{background:#dc2626}.shake{animation:shakeError .4s cubic-bezier(.36,.07,.19,.97) both}@keyframes shakeError{10%,90%{transform:translate3d(-2px,0,0)}20%,80%{transform:translate3d(3px,0,0)}30%,50%,70%{transform:translate3d(-5px,0,0)}40%,60%{transform:translate3d(5px,0,0)}}.error-msg{padding:10px 14px;border-radius:4px;background:#fef2f2;border:1px solid #fecaca;color:#ef4444;font-size:13px;margin-bottom:16px;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.auth-divider{display:flex;align-items:center;gap:12px;margin:18px 0 14px}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--color-line, rgba(0,0,0,.1))}.auth-divider span{font-size:11.5px;color:var(--color-ink-muted, #888);font-weight:500;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.auth-foot{text-align:center;margin-top:24px;font-size:13.5px;color:var(--color-ink-muted)}.auth-foot a{color:var(--auth-theme);font-weight:500;cursor:pointer;text-decoration:none}.auth-foot a:hover{text-decoration:underline}.room-blueprint{padding:18px;background:#1a1a1a05;border:1px dashed rgba(26,26,26,.2);border-radius:8px;font-size:13px;color:var(--color-ink-muted);line-height:1.6}.room-blueprint strong{color:var(--color-ink);display:flex;align-items:center;gap:8px;margin-bottom:8px;font-size:14px}.user-session-card{display:flex;align-items:center;gap:14px;padding:14px;background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000008;margin-bottom:24px;transition:all .8s ease}.net-online{border:1px solid rgba(34,197,94,.3)}.net-offline{border:1.5px solid #fca5a5;background:#fff5f5;animation:pulseRed 2s ease-in-out infinite}.net-flash{border:1.5px solid rgba(34,197,94,.5);background:#f0fdf4}@keyframes pulseRed{0%,to{box-shadow:0 0 #ef444426}50%{box-shadow:0 0 0 6px #ef44440d}}.ws-logo-avatar{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;flex-shrink:0;transition:background .8s ease}.ws-blueprint-bg{position:relative;transition:background .7s ease}.ws-bp-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;transition:background .7s ease;pointer-events:none}.ws-blueprint-content{position:relative;z-index:1;display:flex;flex-direction:column;padding:36px 5vw;height:100%;box-sizing:border-box;overflow:hidden;justify-content:flex-start;gap:0}.ws-brand{font-size:34px!important}.ws-blueprint-drawing{margin:4px -8px 0;opacity:.88;flex-shrink:0}.ws-bp-bottom{margin-top:18px;flex-shrink:0}.ws-bp-title{font-family:var(--font-display);font-size:28px;line-height:1.2;letter-spacing:-.01em;margin-bottom:6px;transition:color .5s ease}.ws-bp-subtitle{font-size:13px;line-height:1.55;max-width:50ch;margin-bottom:16px;transition:color .5s ease}.ws-bp-stats{display:flex;gap:20px;flex-wrap:wrap;padding:12px 16px;border-radius:8px;margin-bottom:14px;transition:all .5s ease}.ws-bp-stats div{display:flex;flex-direction:column;gap:2px}.ws-bp-stats strong{font-size:19px;font-family:var(--font-display);transition:color .5s ease}.ws-bp-stats span{font-size:9.5px;text-transform:uppercase;letter-spacing:.04em;transition:color .5s ease}.ws-bp-footer{font-size:10px;letter-spacing:.08em;text-transform:uppercase;transition:color .5s ease}.room-badge-preview{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:8px;background:#fff;border:1.5px solid var(--color-brand-blue);box-shadow:0 4px 16px #1d34611f;animation:fadeIn .3s ease;margin-top:-8px}.room-badge-icon{width:38px;height:38px;border-radius:8px;display:grid;place-items:center;font-size:18px;flex-shrink:0}.room-badge-name{font-size:14px;font-weight:600;color:var(--color-ink);line-height:1.3}.room-badge-type{font-size:11px;color:var(--color-ink-muted);margin-top:2px}.room-badge-live{margin-left:auto;font-size:9px;font-weight:700;color:var(--color-brand-blue);letter-spacing:.08em;background:#1d346114;padding:4px 8px;border-radius:4px;border:1px solid rgba(29,52,97,.15);flex-shrink:0}.template-selector{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}.template-card{position:relative;padding:14px 12px;border-radius:8px;border:1.5px solid var(--color-line);background:#fff;cursor:pointer;transition:all .2s ease;text-align:center}.template-card:hover{border-color:var(--auth-theme);background:#1a1a1a05;transform:translateY(-1px)}.template-card.selected{border-color:var(--auth-theme);background:#1a1a1a0a;box-shadow:0 4px 12px var(--auth-glow)}.template-icon{font-size:22px;margin-bottom:6px}.template-title{font-size:11px;font-weight:600;color:var(--color-ink);line-height:1.3;margin-bottom:4px}.template-desc{font-size:10px;color:var(--color-ink-muted);line-height:1.4}.template-check{position:absolute;top:6px;right:8px;font-size:11px;color:var(--auth-theme);font-weight:700}.join-room-preview{padding:14px 16px;border-radius:8px;background:#fff;border:1.5px solid var(--color-brand-blue);box-shadow:0 4px 16px #1d34611f;margin-top:-8px}.join-room-preview[data-status=checking]{border-color:#1d346159;box-shadow:0 4px 14px #1d346114}.join-room-preview[data-status=invalid],.join-room-preview[data-status=error],.join-room-preview[data-status=offline]{border-color:#dc262673;background:#fef2f2e6;box-shadow:0 4px 14px #dc262614}.join-room-status{display:flex;align-items:center;gap:7px;margin-bottom:6px}.join-room-dot{width:8px;height:8px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 3px #22c55e33;animation:pulseDot 1.8s ease-in-out infinite;flex-shrink:0}.join-room-preview[data-status=checking] .join-room-dot{background:var(--color-brand-blue);box-shadow:0 0 0 3px #1d34612e}.join-room-preview[data-status=invalid] .join-room-dot,.join-room-preview[data-status=error] .join-room-dot,.join-room-preview[data-status=offline] .join-room-dot{background:#dc2626;box-shadow:0 0 0 3px #dc26262e;animation:none}@keyframes pulseDot{0%,to{box-shadow:0 0 0 3px #22c55e33}50%{box-shadow:0 0 0 6px #22c55e14}}.join-room-verified{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#16a34a}.join-room-preview[data-status=checking] .join-room-verified{color:var(--color-brand-blue)}.join-room-preview[data-status=invalid] .join-room-verified,.join-room-preview[data-status=error] .join-room-verified,.join-room-preview[data-status=offline] .join-room-verified{color:#dc2626}.join-room-name{font-size:15px;font-weight:700;color:var(--color-ink);margin-bottom:5px;line-height:1.3}.join-room-meta{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--color-ink-muted)}.join-room-meta strong{color:var(--color-ink)}.security-note{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border-radius:8px;background:#1d34610a;border:1px solid rgba(29,52,97,.14)}.security-note-icon{width:36px;height:36px;border-radius:8px;background:#1d34611a;border:1px solid rgba(29,52,97,.18);display:grid;place-items:center;color:var(--color-brand-blue);flex-shrink:0}.security-note-text{flex:1}.security-note-title{font-size:12px;font-weight:700;color:var(--color-brand-blue);text-transform:uppercase;letter-spacing:.05em;margin-bottom:5px}.security-note-body{font-size:12px;color:var(--color-ink-muted);line-height:1.55}.settings-shell{flex:1;display:grid;grid-template-columns:240px minmax(0,1fr);min-height:0;background:var(--bg)}.settings-nav{display:flex;flex-direction:column;background:var(--bg-raised);border-right:1px solid var(--line);overflow-y:auto;overflow-x:hidden;padding:20px 12px;height:100%;scrollbar-width:thin;scrollbar-color:var(--line) transparent}.settings-nav-head{padding:0 8px 14px}.settings-nav-title{font-family:var(--font-display);font-size:20px;font-weight:600;margin:0 0 2px;color:var(--ink)}.settings-nav-sub{font-size:11.5px;color:var(--ink-muted);font-family:var(--font-mono);margin:0}.settings-nav-list{display:flex;flex-direction:column;gap:1px;border-top:1px solid var(--line);padding-top:8px}.settings-nav-item{display:flex;align-items:center;gap:10px;padding:7px 10px;background:transparent;border:1px solid transparent;border-radius:8px;color:var(--ink-muted);font-size:13px;font-weight:500;cursor:pointer;text-align:left;transition:background .12s var(--ease),color .12s var(--ease),border-color .12s var(--ease)}.settings-nav-item:hover{background:var(--bg-subtle);color:var(--ink)}.settings-nav-item[data-active=true]{background:var(--bg-raised);color:var(--ink);border-color:var(--line-strong);box-shadow:var(--shadow-xs);font-weight:600}.settings-nav-item[data-danger=true],.settings-nav-item[data-danger=true]:hover{color:var(--status-rose)}.settings-nav-item[data-danger=true][data-active=true]{border-color:color-mix(in oklch,var(--status-rose) 30%,var(--line))}.settings-wrap{overflow-y:auto;padding:32px 40px 80px;max-width:920px;margin:0 auto;width:100%}.settings-section[data-nav-id]{scroll-margin-top:16px}@media(max-width:820px){.settings-shell{grid-template-columns:minmax(0,1fr)}.settings-nav{flex-direction:row;overflow-x:auto;overflow-y:hidden;padding:10px 12px;border-right:none;border-bottom:1px solid var(--line);gap:8px}.settings-nav-head{display:none}.settings-nav-list{flex-direction:row;border-top:none;padding:0;gap:6px}.settings-nav-item{flex-shrink:0}}.settings-wrap h1{font-family:var(--font-display);font-size:36px;letter-spacing:-.015em;margin-bottom:4px}.settings-wrap h1 em{font-style:italic;color:var(--ink-muted)}.settings-sub{color:var(--ink-muted);margin-bottom:32px}.settings-section{padding:24px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:260px 1fr;gap:40px}.settings-section h3{font-family:var(--font-display);font-size:20px;letter-spacing:-.005em;margin-bottom:4px}.settings-section .desc{font-size:13px;color:var(--ink-muted);max-width:32ch}.settings-card{background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--r-lg);padding:22px;box-shadow:var(--shadow-xs)}.settings-card+.settings-card{margin-top:18px}.label-row{display:flex;align-items:center;gap:10px;padding:11px 20px;transition:background .12s}.label-row:hover{background:var(--bg-subtle)}.label-row-slug{flex:1;font-size:12px;font-family:var(--font-mono);color:var(--ink-dim)}.label-row-del{opacity:0;color:var(--status-rose)!important;transition:opacity .15s}.label-row:hover .label-row-del{opacity:1}.label-add-row{display:flex;align-items:center;gap:10px;padding:14px 20px;border-top:1px solid var(--line);background:var(--bg-subtle);flex-wrap:wrap}.label-add-input{flex:1;min-width:130px;padding:9px 14px;background:var(--bg-raised);border:1px solid var(--line);border-radius:999px;color:var(--ink);font-size:13px;font-family:var(--font-ui);outline:none;transition:border-color .15s,box-shadow .15s}.label-add-input::placeholder{color:var(--ink-faint)}.label-add-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.label-tone-row{display:flex;gap:6px;align-items:center}.label-tone-dot{width:18px;height:18px;border-radius:50%;border:2px solid transparent;outline:none;cursor:pointer;flex-shrink:0;transition:transform .15s,outline .15s}.label-tone-dot[data-active=true]{outline:2px solid var(--ink);outline-offset:2px;transform:scale(1.2)}.settings-panel{display:flex;flex-direction:column;gap:18px}.rol-list{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.rol-item{display:flex;align-items:center;gap:10px;padding:10px 12px;background:var(--bg-raised);border:1px solid var(--line);border-radius:9px;transition:background .12s}.rol-item:hover{background:var(--bg-subtle)}.rol-item-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.rol-item-name{font-weight:500;font-size:13px;flex:1}.rol-default-badge{font-size:10px;padding:2px 7px;background:var(--accent-soft);color:var(--accent-ink);border-radius:4px;font-weight:600;letter-spacing:.02em}.rol-item-actions{display:flex;gap:4px}.rol-item-confirm{display:flex;align-items:center;gap:4px;font-size:11px}.icon-btn-danger{color:var(--status-rose)!important}.rol-form{margin-top:8px;padding:18px;background:var(--bg-subtle);border-radius:10px;border:1px solid var(--line);display:flex;flex-direction:column;gap:12px}.rol-form-title{font-weight:600;font-size:13px;color:var(--ink)}.rol-form .field{margin-bottom:0}.rol-color-picker{display:flex;gap:7px;flex-wrap:wrap}.rol-color-swatch{width:26px;height:26px;border-radius:7px;cursor:pointer;flex-shrink:0;border:2px solid transparent;transition:transform .1s var(--ease),border-color .1s,box-shadow .1s}.rol-color-swatch[data-active=true]{border-color:var(--ink);transform:scale(1.18);box-shadow:0 0 0 1px var(--bg),0 0 0 3px var(--ink)}.rol-perms-list{display:flex;flex-direction:column;gap:1px}.rol-perm-item{display:flex;align-items:center;gap:9px;font-size:13px;cursor:pointer;padding:7px 10px;border-radius:7px;transition:background .1s}.rol-perm-item:hover{background:var(--bg-raised)}.rol-perm-item input[type=checkbox],.rol-default-item input[type=checkbox]{-moz-appearance:none;appearance:none;-webkit-appearance:none;flex-shrink:0;width:16px;height:16px;border-radius:5px;border:1.5px solid var(--line);background:var(--bg);cursor:pointer;transition:background .15s,border-color .15s,box-shadow .15s;position:relative}.rol-perm-item input[type=checkbox]:hover,.rol-default-item input[type=checkbox]:hover{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 15%,transparent)}.rol-perm-item input[type=checkbox]:checked,.rol-default-item input[type=checkbox]:checked{background:var(--accent);border-color:var(--accent);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2 6l3 3 5-5' stroke='white' stroke-width='1.8' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;background-size:11px 11px}.rol-default-item{border-top:1px solid var(--line);padding-top:10px;margin-top:2px;color:var(--ink-muted)}.rol-form-actions{display:flex;gap:8px}.settings-card.members-panel{padding:0}.member-row:first-child{border-radius:var(--r-lg) var(--r-lg) 0 0}.member-row:last-child{border-radius:0 0 var(--r-lg) var(--r-lg);border-bottom:none}.settings-panel.members-panel{gap:0;padding:0}.member-row{display:flex;align-items:center;gap:12px;padding:12px 18px;transition:background .12s}.member-row:not(:last-child){border-bottom:1px solid var(--line)}.member-row:hover{background:var(--bg-subtle)}.member-badge{display:inline-flex;align-items:center;font-size:10px;font-weight:600;padding:2px 8px;border-radius:20px;letter-spacing:.03em;background:#ba823c24;color:#734700;color:oklch(44% .1 70);border:1px solid oklch(65% .11 70 / .22)}[data-theme=dark] .member-badge{background:#ba823c2e;color:#d19853;border-color:#ba823c47}.danger-confirm{display:flex;flex-direction:column;gap:10px;padding:14px;border:1px solid oklch(58% .13 10 / .3);border-radius:10px;background:#b955690f}.danger-confirm strong{color:var(--status-rose);font-size:13px}.danger-confirm p{color:var(--ink-muted);font-size:12px;margin-top:2px}.danger-confirm input{width:100%;padding:9px 11px;border:1px solid var(--line);border-radius:8px;background:var(--bg-raised);outline:none}.danger-confirm input:focus{border-color:var(--status-rose)}.inline-error{color:var(--status-rose);font-size:12px}.settings-panel-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.settings-panel-row.full{grid-template-columns:1fr}.sr{position:absolute;left:-9999px}.spacer{flex:1}.icon{display:inline-flex;flex-shrink:0}.online-badge{position:absolute;bottom:0;right:0;width:8px;height:8px;border-radius:50%;background:var(--ink-dim);border:1.5px solid var(--bg)}.online-badge.is-online{background:var(--status-green)}.chat-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:54;opacity:0;pointer-events:none;transition:opacity .2s var(--ease)}.chat-overlay[data-open=true]{opacity:1;pointer-events:all}.chat-panel{position:fixed;top:0;right:0;height:100vh;height:100dvh;width:380px;max-width:96vw;background:var(--bg-raised);border-left:1px solid var(--line);box-shadow:var(--shadow-lg);z-index:55;transform:translate(100%);transition:transform .3s var(--ease);display:flex;flex-direction:column;overflow:hidden}.chat-panel[data-open=true]{transform:translate(0)}.chat-panel[data-full-page=true]{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;max-width:100vw;height:100vh;height:100dvh;transform:none!important;border-left:none;z-index:10;box-shadow:none}.chat-head{display:flex;align-items:center;gap:8px;padding:14px 16px;border-bottom:1px solid var(--line);flex-shrink:0;min-height:54px}.chat-head-title{font-family:var(--font-display);font-size:18px;letter-spacing:-.005em}.chat-tabs{display:flex;gap:2px;padding:8px 12px 0;border-bottom:1px solid var(--line);flex-shrink:0}.chat-tabs button{display:flex;align-items:center;gap:5px;padding:6px 12px;border-radius:7px 7px 0 0;font-size:12.5px;color:var(--ink-muted);border-bottom:2px solid transparent;transition:all .12s var(--ease);margin-bottom:-1px}.chat-tabs button:hover{color:var(--ink)}.chat-tabs button[data-active=true]{color:var(--ink);border-bottom-color:var(--accent);font-weight:500}.chat-member-list{flex:1;overflow-y:auto;padding:6px}.chat-member-row{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:8px;cursor:pointer;transition:background .1s var(--ease)}.chat-member-row:hover{background:var(--bg-subtle)}.chat-messages{flex:1;overflow-y:auto;overflow-x:hidden;padding:12px 14px;display:flex;flex-direction:column;gap:4px}.chat-empty{flex:1;display:flex;align-items:center;justify-content:center;padding:40px 20px;text-align:center;font-size:13px;color:var(--ink-muted)}.chat-msg{display:flex;align-items:flex-end;gap:6px;max-width:100%}.chat-msg.mine{flex-direction:row-reverse}.chat-msg-avatar{flex-shrink:0}.chat-bubble-wrap{display:flex;flex-direction:column;max-width:72%}.chat-msg.mine .chat-bubble-wrap{align-items:flex-end}.chat-sender-name{font-size:10.5px;color:var(--ink-muted);margin-bottom:2px;padding-left:2px}.chat-bubble{position:relative;padding:8px 12px;border-radius:14px;font-size:13px;line-height:1.45;word-break:break-word;background:var(--bg-subtle);color:var(--ink);border:1px solid var(--line)}.chat-msg.mine .chat-bubble{background:var(--ink);color:var(--bg);border-color:var(--ink)}[data-theme=dark] .chat-msg.mine .chat-bubble{background:var(--accent);border-color:var(--accent)}.chat-reply-preview{width:100%;min-width:0;display:flex;align-items:stretch;gap:10px;padding:9px 10px;border-radius:10px;background:color-mix(in oklch,var(--accent) 8%,var(--bg-raised));border:1px solid color-mix(in oklch,var(--accent) 18%,var(--line));color:var(--ink)}.chat-reply-preview.is-compact{cursor:pointer;padding:6px 8px;margin:-1px -4px 7px;max-width:260px;background:color-mix(in oklch,var(--bg) 72%,var(--accent-soft));border-color:color-mix(in oklch,var(--accent) 22%,transparent)}.chat-msg.mine .chat-reply-preview.is-compact{background:color-mix(in oklch,white 12%,transparent);border-color:color-mix(in oklch,white 20%,transparent);color:inherit}.chat-reply-bar{width:4px;border-radius:99px;background:var(--accent);flex-shrink:0}.chat-msg.mine .chat-reply-preview.is-compact .chat-reply-bar{background:color-mix(in oklch,white 74%,var(--accent))}.chat-reply-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.chat-reply-sender{font-size:12px;font-weight:700;color:var(--accent);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-msg.mine .chat-reply-preview.is-compact .chat-reply-sender{color:color-mix(in oklch,white 82%,var(--accent))}.chat-reply-text{font-size:12px;color:var(--ink-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-msg.mine .chat-reply-preview.is-compact .chat-reply-text{color:color-mix(in oklch,white 72%,transparent)}.chat-reply-close{width:26px;height:26px;border:0;border-radius:50%;background:transparent;color:var(--ink-muted);display:grid;place-items:center;cursor:pointer;flex-shrink:0}.chat-reply-close:hover{background:var(--bg-subtle);color:var(--ink)}.chat-msg-time{font-size:10px;color:var(--ink-faint);margin-top:2px;padding:0 2px}.chat-bubble-deleted{opacity:.6;border-style:dashed!important}.chat-msg-action-btn{flex-shrink:0;width:22px;height:22px;border-radius:50%;background:var(--bg-raised);border:1px solid var(--line);color:var(--ink-muted);display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;pointer-events:none;transition:opacity .12s,background .12s;margin-bottom:2px}.chat-msg:hover .chat-msg-action-btn{opacity:1;pointer-events:auto}.chat-msg-action-btn:hover{background:var(--bg-subtle);color:var(--ink)}.chat-msg-react-btn{flex-shrink:0;width:22px;height:22px;border-radius:50%;background:var(--bg-raised);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;pointer-events:none;transition:opacity .12s,background .12s;margin-bottom:2px;font-size:12px;line-height:1}.chat-msg:hover .chat-msg-react-btn{opacity:1;pointer-events:auto}.chat-msg-react-btn:hover{background:var(--bg-subtle)}.chat-reactions{display:flex;flex-wrap:wrap;gap:4px;margin-top:5px;padding:0 2px}.chat-reaction-btn{display:inline-flex;align-items:center;gap:4px;padding:2px 8px 2px 6px;border-radius:99px;border:1px solid var(--line);background:var(--bg-subtle);font-size:14px;line-height:1.5;cursor:pointer;transition:background .12s,border-color .12s,transform .1s;-webkit-user-select:none;user-select:none}.chat-reaction-btn span{font-size:11px;font-weight:600;color:var(--ink-muted);line-height:1}.chat-reaction-btn:hover{background:var(--bg-raised);border-color:var(--line-strong);transform:scale(1.08)}.chat-reaction-btn[data-mine=true]{background:var(--accent-soft);border-color:var(--accent)}.chat-reaction-btn[data-mine=true] span{color:var(--accent-ink)}.chat-emoji-opt{padding:5px 6px;border-radius:8px;border:none;background:none;font-size:20px;line-height:1;cursor:pointer;transition:transform .1s,background .1s}.chat-emoji-opt:hover{background:var(--bg-sunken);transform:scale(1.3)}.chat-menu-item{display:flex;align-items:center;gap:8px;width:100%;padding:9px 14px;font-size:13px;color:var(--ink);background:none;cursor:pointer;text-align:left}.chat-menu-item:hover{background:var(--bg-subtle)}.chat-tab-count{display:inline-flex;align-items:center;justify-content:center;background:var(--status-yellow);color:#fff;font-size:9px;font-weight:700;min-width:14px;height:14px;border-radius:7px;padding:0 3px;margin-left:3px}.chat-starred-list{flex:1;overflow-y:auto;padding:8px 0}.chat-starred-item{padding:10px 16px;border-bottom:1px solid var(--line)}.chat-starred-item:last-child{border-bottom:none}.chat-starred-meta{display:flex;align-items:center;gap:7px;margin-bottom:5px}.chat-starred-name{font-size:12px;font-weight:600;color:var(--ink)}.chat-starred-time{font-size:10px;color:var(--ink-faint)}.chat-starred-body{font-size:13px;color:var(--ink);padding-left:28px;word-break:break-word}.chat-typing-indicator{display:flex;align-items:center;gap:8px;padding:6px 4px;font-size:11px;color:var(--ink-muted)}.chat-typing-avatars{display:flex}.chat-typing-avatars>*{margin-right:-5px;flex-shrink:0}.typing-dots{display:flex;gap:3px;align-items:center;margin-left:8px}.typing-dots span{width:5px;height:5px;border-radius:50%;background:var(--ink-muted);animation:typingBounce 1.2s infinite}.typing-dots span:nth-child(2){animation-delay:.2s}.typing-dots span:nth-child(3){animation-delay:.4s}@keyframes typingBounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-5px)}}.chat-read-receipt{display:flex;align-items:center;gap:4px;justify-content:flex-end;padding-right:4px;margin-top:2px}.chat-read-avatar{width:18px;height:18px;border-radius:50%;overflow:hidden;display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:600;color:#fff;flex-shrink:0}.chat-read-avatar img{width:100%;height:100%;object-fit:cover}.chat-read-avatar span{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.chat-read-label{font-size:10px;color:var(--ink-muted)}.comment-mention{display:inline-block;background:var(--accent);color:#fff;font-weight:600;font-size:.85em;cursor:pointer;border-radius:4px;padding:1px 6px;vertical-align:middle;transition:opacity .1s}.comment-mention:hover{opacity:.82}.chat-task-ref-banner{display:flex;align-items:center;gap:8px;padding:8px 14px;background:var(--accent-soft);border-left:3px solid var(--accent);border-radius:0 8px 8px 0;margin:8px 12px 4px;font-size:12.5px;color:var(--ink)}.chat-task-ref-banner strong{color:var(--accent)}.chat-task-ref-banner button{margin-left:auto;background:none;border:none;cursor:pointer;color:var(--ink-muted);padding:2px;border-radius:4px;display:flex;align-items:center}.chat-task-ref-banner button:hover{background:var(--bg-subtle)}.chat-input-wrap{display:flex;align-items:flex-end;flex-wrap:wrap;gap:8px;padding:10px 12px;border-top:1px solid var(--line);flex-shrink:0}.chat-input-wrap>.chat-reply-preview{flex:0 0 100%;order:-1}.chat-input{flex:1;padding:9px 12px;background:var(--bg-subtle);border:1px solid var(--line);border-radius:var(--r-md);font-size:13px;resize:none;min-height:40px;max-height:120px;outline:none;transition:border-color .15s;font-family:var(--font-ui);overflow-y:auto}.chat-input:focus{border-color:var(--accent)}.chat-bubble-sending{opacity:.6}.chat-media-wrap{display:flex;flex-direction:column;gap:6px}.chat-media-img{max-width:260px;max-height:220px;border-radius:8px;object-fit:cover;cursor:zoom-in;display:block;transition:opacity .15s}.chat-media-img:hover{opacity:.92}.chat-media-video{max-width:280px;border-radius:8px;display:block}.chat-file-attach{display:flex;align-items:center;gap:8px;padding:8px 10px;background:var(--bg-subtle);border:1px solid var(--line);border-radius:8px;font-size:13px;min-width:160px;max-width:240px}.chat-file-attach a{color:var(--ink);text-decoration:none}.chat-file-attach a:hover{text-decoration:underline}.chat-bubble-text{margin-top:4px;font-size:13px}.chat-pending-file{display:flex;align-items:center;gap:10px;padding:8px 12px;background:var(--accent-soft);border-top:1px solid var(--line);flex-shrink:0;font-size:12px;color:var(--ink-muted)}.placeholder-img{background:repeating-linear-gradient(45deg,var(--bg-subtle),var(--bg-subtle) 8px,var(--bg-sunken) 8px,var(--bg-sunken) 12px);border:1px solid var(--line);border-radius:var(--r-md);display:grid;place-items:center;font-family:var(--font-mono);font-size:11px;color:var(--ink-muted);text-align:center;padding:16px}.mobile-menu-btn{display:none;width:32px;height:32px;border-radius:8px;align-items:center;justify-content:center;color:var(--ink-muted);transition:all .12s var(--ease);flex-shrink:0}.mobile-menu-btn:hover{background:var(--bg-subtle);color:var(--ink)}.sidebar-backdrop{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:99;opacity:0;pointer-events:none;transition:opacity .25s var(--ease)}.sidebar-backdrop[data-open=true]{opacity:1;pointer-events:all}.trash-view{flex:1;overflow-y:auto;padding:32px 36px;max-width:760px}.trash-header{margin-bottom:28px}.trash-title{display:flex;align-items:center;gap:8px;font-size:20px;font-family:var(--font-display);font-weight:600;color:var(--ink);margin-bottom:4px}.trash-subtitle{font-size:13px;color:var(--ink-muted)}.trash-section-head{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-muted);margin-bottom:6px}.trash-section-count{background:var(--bg-subtle);border-radius:999px;padding:1px 7px;font-size:11px;font-weight:500;color:var(--ink-muted);text-transform:none;letter-spacing:0}.trash-list{display:flex;flex-direction:column;gap:8px}.trash-item{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--bg-raised);border:1px solid var(--line);border-radius:10px;transition:border-color .15s}.trash-item:hover{border-color:var(--line-strong)}.trash-item-info{flex:1;min-width:0}.trash-item-title{font-size:14px;font-weight:500;color:var(--ink);margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trash-item-meta{display:flex;align-items:center;gap:10px}.trash-item-col{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--ink-muted)}.col-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.trash-item-expiry{display:flex;align-items:center;gap:3px;font-size:11px;color:var(--ink-faint)}.trash-item-expiry[data-urgent=true]{color:var(--status-rose)}.trash-item-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.trash-restore-btn{display:flex;align-items:center;gap:5px;padding:5px 10px;border-radius:7px;border:1px solid var(--line);background:var(--bg);color:var(--ink-muted);font-size:12px;cursor:pointer;transition:all .15s}.trash-restore-btn:hover:not(:disabled){background:var(--bg-dim);color:var(--ink);border-color:var(--line-strong)}.trash-restore-btn:disabled{opacity:.5;cursor:not-allowed}.trash-delete-btn{width:28px;height:28px;border-radius:7px;border:1px solid transparent;background:transparent;color:var(--ink-faint);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s}.trash-delete-btn:hover{background:#b955691a;color:var(--status-rose);border-color:#b9556933}.trash-confirm{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--ink-muted)}.trash-confirm-yes{padding:4px 8px;border-radius:6px;border:none;background:var(--status-rose);color:#fff;font-size:11px;font-weight:600;cursor:pointer}.trash-confirm-yes:disabled{opacity:.6;cursor:not-allowed}.trash-confirm-no{padding:4px 8px;border-radius:6px;border:1px solid var(--line);background:transparent;color:var(--ink-muted);font-size:11px;cursor:pointer}.trash-confirm-no:hover{background:var(--bg-dim)}.trash-header-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.trash-empty-btn{display:flex;align-items:center;gap:5px;padding:5px 10px;border-radius:7px;border:1px solid var(--line);background:var(--bg);color:var(--ink-muted);font-size:12px;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:all .15s}.trash-empty-btn:hover{background:#b9556914;color:var(--status-rose);border-color:#b9556940}.trash-empty-confirm{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--ink-muted);flex-shrink:0}.trash-search-wrap{display:flex;align-items:center;gap:7px;padding:6px 10px;border:1px solid var(--line);border-radius:8px;background:var(--bg-raised);margin-bottom:16px;color:var(--ink-muted)}.trash-search{flex:1;border:none;background:transparent;font-size:13px;color:var(--ink);outline:none}.trash-search::placeholder{color:var(--ink-faint)}.trash-search-clear{display:flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:4px;border:none;background:transparent;color:var(--ink-muted);cursor:pointer;padding:0}.trash-search-clear:hover{background:var(--bg-dim);color:var(--ink)}.trash-item-project{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--ink-muted);background:var(--bg-subtle);padding:1px 6px;border-radius:4px}@media(max-width:768px){.mobile-menu-btn{display:flex}.app{grid-template-columns:1fr}.sidebar{position:fixed;top:0;left:0;height:100dvh;z-index:100;transform:translate(-100%);width:252px!important;box-shadow:var(--shadow-lg);transition:transform .3s var(--ease),width .3s var(--ease)}.sidebar[data-mobile-open=true]{transform:translate(0)}.sidebar .sidebar-label,.sidebar .sidebar-section-title,.sidebar .ws-info,.sidebar .ws-arrow,.sidebar .nav-badge,.sidebar .project-meta,.sidebar .user-meta,.sidebar .sidebar-logo-text{display:initial!important}.sidebar .sidebar-search,.sidebar .workspace-switcher{display:flex!important}.sidebar .nav-item,.sidebar .project-item{justify-content:flex-start!important;padding:7px 10px!important;width:auto!important;margin:0!important;border-radius:7px!important}.sidebar .sidebar-collapse-btn{display:none!important}.sidebar .user-profile{justify-content:flex-start!important;padding:6px 8px!important}.sidebar .sidebar-footer{padding:12px!important}.sidebar-backdrop{display:block}.topbar{padding:10px 14px;gap:8px;min-height:52px}.topbar-crumbs{font-size:12px;gap:5px}.topbar-crumbs .current{font-size:14px}.topbar-right{gap:4px}.view-switch{display:none}.topbar-invite{display:none!important}.topbar .btn-primary .btn-label{display:none}.topbar .btn-primary{padding:7px 9px}.modal-overlay{align-items:flex-end;padding:0 0 env(safe-area-inset-bottom,0)}.modal{width:100%!important;max-width:100%!important;max-height:90vh;border-radius:20px 20px 0 0!important}.modal-head{padding:16px 18px 12px}.modal-title{font-size:20px}.modal-body{padding:14px 18px;gap:14px}.modal-foot{padding:12px 18px 20px}.drawer{width:100vw!important;max-width:100vw!important;border-radius:0!important;border-left:none!important}.drawer-body{padding:16px 20px 60px}.drawer-fullscreen-btn{display:none}.doc-title{font-size:28px}.props-grid{grid-template-columns:100px 1fr;gap:4px 12px}.dash{padding:16px}.dash-h1{font-size:26px}.dash-sub{margin-bottom:20px}.dash-grid{grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:16px}.dash-row{grid-template-columns:1fr}.stat-value{font-size:32px}.cal-wrap{padding:10px 12px 16px}.cal-header{flex-direction:column;align-items:flex-start;gap:8px;margin-bottom:12px}.cal-header-actions{margin-left:0;flex-wrap:wrap}.cal-summary{grid-template-columns:repeat(2,1fr);gap:8px}.cal-month{font-size:20px}.cal-day{min-height:60px;max-height:90px;padding:3px 3px 2px}.cal-chip{font-size:9.5px;padding:1px 3px}.cal-week-grid{overflow-x:auto;-webkit-overflow-scrolling:touch}.cal-week-col{min-width:88px;min-height:200px}.list-view{padding:8px 12px 16px}.board{padding:12px 12px 4px;gap:10px;-webkit-overflow-scrolling:touch}.column{min-width:260px}.notif-panel{width:calc(100vw - 24px);right:12px;left:12px;max-height:calc(100vh - 70px)}.chat-panel{width:100vw!important;max-width:100vw!important}.chat-input-wrap{padding-bottom:calc(10px + env(safe-area-inset-bottom,0px))}.chat-input{font-size:16px}.settings-wrap{padding:16px;overflow-x:hidden}.settings-wrap h1{font-size:26px}.settings-section{grid-template-columns:1fr;gap:16px}.settings-panel-row{grid-template-columns:1fr}.settings-card{padding:16px;overflow:hidden;min-width:0}.settings-card input,.settings-card select,.settings-card textarea{max-width:100%;box-sizing:border-box;min-width:0}.member-row{flex-wrap:wrap;padding:10px 12px;gap:8px}.member-row select{max-width:100%;min-width:0;font-size:12px}.tweak-options{flex-wrap:wrap}.tweak-opt{flex-shrink:0}.auth-page{grid-template-columns:1fr}.auth-visual{display:none!important}.auth-form-wrap{padding:32px 20px;align-items:flex-start}.auth-form h2{font-size:28px}.auth-form input{max-width:100%;box-sizing:border-box}.glow-input{font-size:16px!important}.field input,.field textarea,.field select,.settings-card input,.settings-card select,.settings-card textarea{font-size:16px}.template-selector,.ws-bp-stats{grid-template-columns:repeat(2,1fr)!important}.field-row{grid-template-columns:1fr;gap:12px}.subbar{padding:8px 12px;gap:6px;overflow-x:auto}.board-trash-zone{left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));transform:none;border-radius:16px;padding:14px 20px;font-size:14px}.board-trash-zone[data-hover=true]{transform:scale(1.02)}@keyframes trashZoneIn{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}}@media(max-width:480px){.dash-grid,.cal-summary{grid-template-columns:1fr}.modal{border-radius:16px 16px 0 0!important}.topbar-crumbs>span:not(.current),.topbar-crumbs .sep{display:none}.cal-day{min-height:44px;max-height:64px;padding:2px 2px 1px}.cal-chip{display:none}.cal-more{font-size:9px}.board-trash-zone{left:8px;right:8px;bottom:calc(8px + env(safe-area-inset-bottom,0px));border-radius:14px;padding:16px 20px;font-size:14px}}.chat-panel:not([data-full-page=true]){position:fixed;top:62px;right:16px;bottom:auto;left:auto;width:380px;max-width:calc(100vw - 32px);height:520px;max-height:calc(100vh - 78px);border:1px solid var(--line);border-left:1px solid var(--line);border-radius:16px;box-shadow:0 12px 32px #0000002e,0 2px 6px #00000014;transform:translateY(-12px) scale(.97);opacity:0;pointer-events:none;transition:transform .18s var(--ease),opacity .18s var(--ease)}.chat-panel:not([data-full-page=true])[data-open=true]{transform:translateY(0) scale(1);opacity:1;pointer-events:auto}@media(max-width:600px){.chat-panel:not([data-full-page=true]){top:auto;bottom:8px;right:8px;left:8px;width:auto;max-width:none;height:70vh}}.notif-panel[data-full-page=true]{position:static;width:100%;max-width:none;height:100%;flex:1;display:grid;grid-template-columns:minmax(0,1fr) 320px;grid-template-rows:auto auto minmax(0,1fr) auto;grid-template-areas:"head head" "tabs prefs" "list prefs" "foot prefs";background:var(--bg);border:none;border-radius:0;box-shadow:none;transform:none;overflow:hidden}.notif-panel[data-full-page=true]>.notif-head{grid-area:head;padding:18px 24px 12px;border-bottom:1px solid var(--line);background:var(--bg-raised)}.notif-panel[data-full-page=true]>.notif-head .notif-title{font-family:var(--font-display);font-size:22px;font-weight:600}.notif-panel[data-full-page=true]>.notif-tabs-scroll{grid-area:tabs;padding:14px 24px 12px;border-bottom:1px solid var(--line);background:var(--bg-raised)}.notif-panel[data-full-page=true]>.notif-list{grid-area:list;overflow-y:auto;padding:0;background:var(--bg)}.notif-panel[data-full-page=true] .notif-item{padding:14px 24px;border-bottom:1px solid var(--line)}.notif-panel[data-full-page=true]>.notif-prefs{grid-area:prefs;border-top:none;border-left:1px solid var(--line);background:var(--bg-raised);overflow-y:auto}.notif-panel[data-full-page=true] .notif-prefs-toggle{display:none}.notif-panel[data-full-page=true] .notif-prefs-body{display:flex!important;padding:16px 16px 20px}.notif-panel[data-full-page=true] .notif-prefs:before{content:"Tercihler";display:block;padding:16px 16px 4px;font-family:var(--font-display);font-size:15px;font-weight:600;color:var(--ink)}.notif-panel[data-full-page=true]>div:last-child{grid-area:foot;border-top:1px solid var(--line);background:var(--bg-raised)}@media(max-width:980px){.notif-panel[data-full-page=true]{grid-template-columns:minmax(0,1fr);grid-template-areas:"head" "tabs" "list" "prefs" "foot"}.notif-panel[data-full-page=true]>.notif-prefs{border-left:none;border-top:1px solid var(--line);max-height:50vh}}.chat-panel[data-full-page=true]{position:static;width:100%;height:100%;flex:1;display:block;background:var(--bg);border:none;box-shadow:none;transform:none;overflow:hidden}.chat-fp-grid{display:grid;grid-template-columns:260px minmax(0,1fr) 320px;height:100%;min-height:0;background:var(--bg)}.chat-panel[data-full-page=true] .chat-fp-right~*{display:none}.chat-fp-grid:has(.chat-fp-right){grid-template-columns:260px minmax(0,1fr) 320px}.chat-fp-grid:not(:has(.chat-fp-right)){grid-template-columns:260px minmax(0,1fr)}.chat-fp-left{display:flex;flex-direction:column;min-height:0;background:var(--bg-raised);border-right:1px solid var(--line)}.chat-fp-left-pad{padding:12px 12px 10px;border-bottom:1px solid var(--line)}.chat-fp-search{display:flex;align-items:center;gap:6px;padding:7px 10px;background:var(--bg-subtle);border:1px solid var(--line);border-radius:8px;color:var(--ink-muted)}.chat-fp-search input{flex:1;background:transparent;border:none;outline:none;font-size:12.5px;color:var(--ink);font-family:inherit}.chat-fp-search input::placeholder{color:var(--ink-faint)}.chat-fp-list-tabs{display:flex;gap:4px;margin-top:10px}.chat-fp-list-tabs button{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:4px;padding:6px 8px;font-size:11.5px;font-weight:500;background:var(--bg-raised);border:1px solid var(--line);border-radius:8px;color:var(--ink-muted);cursor:pointer;transition:background .15s var(--ease),color .15s var(--ease)}.chat-fp-list-tabs button:hover{background:var(--bg-subtle);color:var(--ink)}.chat-fp-list-tabs button[data-active=true]{background:var(--ink);color:var(--bg);border-color:var(--ink)}[data-theme=dark] .chat-fp-list-tabs button[data-active=true]{background:var(--accent);border-color:var(--accent);color:#fff}.chat-fp-list-sub{margin-top:8px;font-size:10.5px;font-family:var(--font-mono);color:var(--ink-faint);text-transform:uppercase;letter-spacing:.04em}.chat-fp-list{flex:1;overflow-y:auto;padding:6px}.chat-fp-row{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:8px;align-items:center;padding:8px;border-radius:8px;cursor:pointer;transition:background .12s var(--ease)}.chat-fp-row:hover{background:var(--bg-subtle)}.chat-fp-row[data-active=true]{background:var(--bg-raised);outline:1px solid var(--line-strong);outline-offset:-1px;box-shadow:var(--shadow-xs)}.chat-fp-row-ic{width:28px;height:28px;display:grid;place-items:center;background:var(--bg-subtle);border:1px solid var(--line);border-radius:7px;font-family:var(--font-display);font-weight:700;font-size:14px;color:var(--ink)}.chat-fp-row-body{min-width:0}.chat-fp-row-name{font-size:13px;font-weight:600;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-fp-row-preview{font-size:11.5px;color:var(--ink-faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:1px}.chat-fp-row-right{display:flex;flex-direction:column;align-items:flex-end;gap:2px;flex-shrink:0}.chat-fp-row-time{font-size:10px;font-family:var(--font-mono);color:var(--ink-faint)}.chat-fp-row-unread{font-family:var(--font-mono);font-size:10px;font-weight:700;padding:1px 6px;border-radius:999px;background:var(--accent);color:#fff;line-height:1.4}.chat-fp-center{display:flex;flex-direction:column;min-width:0;min-height:0;background:var(--bg);position:relative}.chat-fp-conv-head{display:flex;align-items:center;gap:10px;padding:10px 16px;border-bottom:1px solid var(--line);background:var(--bg-raised);min-height:56px}.chat-fp-channel-icon{width:32px;height:32px;display:grid;place-items:center;background:var(--bg-subtle);border:1px solid var(--line);border-radius:8px;font-family:var(--font-display);font-weight:700;font-size:16px;color:var(--ink);flex-shrink:0}.chat-fp-conv-title-wrap{display:flex;flex-direction:column;gap:1px;min-width:0}.chat-fp-conv-title{font-family:var(--font-display);font-size:17px;font-weight:600;color:var(--ink);line-height:1.1}.chat-fp-conv-sub{font-size:11px;color:var(--ink-muted);font-family:var(--font-mono)}.chat-fp-header-search{position:absolute;top:calc(100% + 6px);right:0;width:320px;background:var(--bg-raised);border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow-lg);z-index:50;overflow:hidden}.chat-fp-header-search input{width:100%;padding:10px 12px;background:transparent;border:none;outline:none;font-size:13px;color:var(--ink);font-family:inherit;border-bottom:1px solid var(--line)}.chat-fp-header-search-hits{max-height:280px;overflow-y:auto}.chat-fp-hit{padding:8px 12px;border-bottom:1px dashed var(--line);cursor:pointer;transition:background .12s var(--ease)}.chat-fp-hit:hover{background:var(--bg-subtle)}.chat-fp-hit-meta{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:var(--ink-muted);margin-bottom:2px}.chat-fp-hit-meta strong{color:var(--ink);font-size:12px}.chat-fp-hit-text{font-size:12.5px;color:var(--ink)}.chat-fp-messages{flex:1;overflow-y:auto;padding:16px 22px;background:var(--bg)}.chat-bubble-anchor{position:relative;max-width:100%}.chat-fp-hover-actions{display:inline-flex;position:absolute;top:50%;background:var(--bg-raised);border:1px solid var(--line);border-radius:999px;box-shadow:0 4px 14px #0000001a;padding:3px 5px;gap:2px;z-index:10;opacity:0;pointer-events:none;transition:opacity .15s var(--ease),transform .18s var(--ease);transition-delay:.3s;white-space:nowrap}.chat-fp-hover-actions[data-mine=false]{left:100%;margin-left:8px;transform:translateY(-50%) translate(-4px)}.chat-fp-hover-actions[data-mine=true]{right:100%;margin-right:8px;transform:translateY(-50%) translate(4px)}.chat-bubble-anchor:hover .chat-fp-hover-actions,.chat-fp-hover-actions:hover{opacity:1;pointer-events:auto;transform:translateY(-50%) translate(0);transition-delay:0s}.chat-fp-hover-actions:before{content:"";position:absolute;top:-10px;right:-10px;bottom:-10px;left:-10px;z-index:-1}.chat-fp-hover-actions button{width:28px;height:28px;display:grid;place-items:center;background:transparent;border:none;border-radius:50%;color:var(--ink-muted);cursor:pointer;transition:background .12s var(--ease),color .12s var(--ease)}.chat-fp-hover-actions button:hover{background:var(--bg-subtle);color:var(--ink)}.chat-fp-hover-actions button[data-active=true]{color:var(--accent)}.chat-panel[data-full-page=true] .chat-msg-action-btn,.chat-panel[data-full-page=true] .chat-msg-react-btn{display:none}.chat-bubble .md-code-inline{font-family:var(--font-mono);font-size:.92em;background:var(--bg-sunken);border:1px solid var(--line);border-radius:4px;padding:1px 5px;color:var(--ink)}.chat-msg.mine .chat-bubble .md-code-inline{background:#00000026;border-color:#0003;color:inherit}.chat-fp-add-channel{display:flex;align-items:center;gap:4px;padding:6px 8px;margin:4px 0 6px;background:var(--bg-subtle);border:1px dashed var(--accent);border-radius:8px}.chat-fp-add-channel input{flex:1;min-width:0;background:transparent;border:none;outline:none;font-size:12.5px;color:var(--ink);font-family:inherit;padding:2px 4px}.chat-fp-add-channel input::placeholder{color:var(--ink-faint)}.chat-fp-row-del{display:none;width:18px;height:18px;align-items:center;justify-content:center;border:none;background:transparent;border-radius:4px;color:var(--ink-faint);cursor:pointer;transition:background .12s var(--ease),color .12s var(--ease)}.chat-fp-row:hover .chat-fp-row-del{display:inline-flex}.chat-fp-row-del:hover{background:#b955691f;color:var(--status-rose)}.chat-fp-composer{border-top:1px solid var(--line);background:var(--bg-raised);padding:10px 16px;display:flex;flex-direction:column;gap:8px}.chat-fp-input{width:100%;background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:10px 12px;font-size:13.5px;color:var(--ink);font-family:inherit;resize:none;outline:none;line-height:1.5;max-height:140px;min-height:44px;box-shadow:var(--shadow-xs);transition:border-color .15s var(--ease)}.chat-fp-input:focus{border-color:var(--accent)}.chat-fp-composer-row{display:flex;align-items:center;gap:4px}.chat-fp-composer-row button{width:30px;height:30px;display:grid;place-items:center;background:transparent;border:1px solid transparent;border-radius:7px;color:var(--ink-muted);cursor:pointer;font-size:12px;font-family:inherit;transition:background .12s var(--ease),color .12s var(--ease),border-color .12s var(--ease)}.chat-fp-composer-row button:hover:not(:disabled){background:var(--bg-subtle);color:var(--ink);border-color:var(--line)}.chat-fp-composer-row button:disabled{opacity:.5;cursor:not-allowed}.chat-fmt-btn[data-fmt-active=true]{background:var(--accent-soft, oklch(85% .05 25 / .4));color:var(--accent);border-color:var(--accent)}@keyframes stoa-msg-jump-pulse{0%{background:transparent}15%{background:var(--accent-soft, oklch(85% .1 25 / .55));box-shadow:0 0 0 3px var(--accent-soft, oklch(85% .1 25 / .55))}to{background:transparent;box-shadow:0 0 0 0 transparent}}.chat-msg-jumped>.chat-bubble-wrap,.chat-msg-jumped{border-radius:10px;animation:stoa-msg-jump-pulse 2.2s var(--ease, ease-out)}.chat-channel-chip{display:inline-flex;align-items:center;gap:3px;padding:1px 7px;border-radius:99px;font-size:10px;font-weight:600;letter-spacing:.02em;background:var(--accent-soft, oklch(88% .04 25 / .5));color:var(--accent);cursor:pointer;border:1px solid var(--accent-soft, transparent);transition:background .12s var(--ease),color .12s var(--ease);line-height:1.4;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-channel-chip:hover{background:var(--accent);color:#fff}.chat-channel-chip[data-active=true]{background:transparent;color:var(--ink-muted);border-color:var(--line)}.chat-scope-toggle{display:inline-flex;background:var(--bg-subtle);border:1px solid var(--line);border-radius:8px;padding:2px;gap:0;font-size:11px;margin:0 0 10px}.chat-scope-toggle button{border:none;background:transparent;padding:4px 10px;border-radius:6px;color:var(--ink-muted);cursor:pointer;font-size:11px;font-weight:500;font-family:inherit;transition:background .12s var(--ease),color .12s var(--ease)}.chat-scope-toggle button[data-active=true]{background:var(--bg);color:var(--ink);box-shadow:var(--shadow-sm)}.chat-fp-composer-sep{width:1px;height:18px;background:var(--line);margin:0 4px}.chat-fp-send{display:inline-flex!important;align-items:center;gap:5px;width:auto!important;height:auto!important;padding:6px 12px!important;background:var(--ink)!important;color:var(--bg)!important;border:1px solid var(--ink)!important;font-size:12.5px!important;font-weight:600!important}[data-theme=dark] .chat-fp-send{background:var(--accent)!important;border-color:var(--accent)!important;color:#fff!important}.chat-fp-send:hover:not(:disabled){filter:brightness(1.15)}.chat-fp-send:disabled{opacity:.4}.chat-fp-mention-pop{margin:0 16px 4px;background:var(--bg-raised);border:1px solid var(--line);border-radius:10px;overflow:hidden;box-shadow:var(--shadow-md)}.chat-fp-mention-head{padding:5px 12px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-muted);border-bottom:1px solid var(--line);background:var(--bg-subtle)}.chat-fp-mention-row{display:flex;align-items:center;gap:8px;padding:7px 12px;cursor:pointer;transition:background .12s var(--ease)}.chat-fp-mention-row:hover,.chat-fp-mention-row[data-active=true]{background:var(--accent-soft)}.chat-fp-right{display:flex;flex-direction:column;min-height:0;background:var(--bg-raised);border-left:1px solid var(--line)}.chat-fp-right-head{padding:14px 14px 10px;border-bottom:1px solid var(--line)}.chat-fp-right-title{font-family:var(--font-display);font-size:15px;font-weight:600;color:var(--ink);margin-bottom:8px}.chat-fp-right-tabs{display:flex;gap:4px;flex-wrap:wrap}.chat-fp-right-tabs button{display:inline-flex;align-items:center;gap:4px;padding:4px 9px;font-size:11px;font-weight:500;background:var(--bg-raised);border:1px solid var(--line);border-radius:999px;color:var(--ink-muted);cursor:pointer;transition:background .15s var(--ease),color .15s var(--ease),border-color .15s var(--ease)}.chat-fp-right-tabs button:hover{background:var(--bg-subtle);color:var(--ink)}.chat-fp-right-tabs button[data-active=true]{background:var(--ink);color:var(--bg);border-color:var(--ink)}[data-theme=dark] .chat-fp-right-tabs button[data-active=true]{background:var(--accent);border-color:var(--accent);color:#fff}.chat-fp-right-body{flex:1;overflow-y:auto;display:flex;flex-direction:column;min-height:0}.chat-fp-section-title{padding:12px 16px 4px;font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-faint);display:flex;align-items:center;gap:6px}.chat-fp-section-title span{font-family:var(--font-mono);color:var(--ink-muted);font-weight:400}.chat-fp-members{display:flex;flex-direction:column;padding-bottom:12px}.chat-fp-member-row{display:flex;align-items:center;gap:9px;padding:8px 16px;transition:background .12s var(--ease)}.chat-fp-member-row:hover{background:var(--bg-subtle)}.chat-fp-pinned{padding:0 12px 12px}.chat-fp-pinned-item{background:var(--bg-subtle);border:1px solid var(--line);border-radius:10px;padding:10px 12px;margin:8px 4px}.chat-fp-pinned-head{display:flex;align-items:center;gap:6px;font-size:11.5px;color:var(--ink-muted);margin-bottom:5px}.chat-fp-pinned-head strong{color:var(--ink);font-size:12px}.chat-fp-pinned-time{font-family:var(--font-mono);font-size:10px;color:var(--ink-faint)}.chat-fp-pinned-body{font-size:12.5px;color:var(--ink);line-height:1.4;word-break:break-word}.chat-fp-back-btn{display:none}@media(max-width:1100px){.chat-fp-grid{grid-template-columns:260px minmax(0,1fr)}.chat-fp-right{display:none}}@media(max-width:760px){.chat-fp-grid{grid-template-columns:minmax(0,1fr)}.chat-fp-left{display:none}.chat-fp-back-btn{display:flex}}.notif-matrix{width:100%;border-collapse:collapse;margin-top:6px;font-size:12px}.notif-matrix th{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-muted);padding:8px 6px;text-align:left;border-bottom:1px solid var(--line)}.notif-matrix th:not(:first-child){text-align:center;width:70px}.notif-matrix td{padding:9px 6px;border-bottom:1px dashed var(--line);color:var(--ink)}.notif-matrix tbody tr:last-child td{border-bottom:none}.notif-matrix .toggle-switch{margin:0 auto}.keymap-list{display:grid;grid-template-columns:1fr 1fr;gap:6px 24px}.keymap-row{display:flex;align-items:center;justify-content:space-between;padding:6px 0;border-bottom:1px dashed var(--line);font-size:13px}.keymap-label{color:var(--ink)}.keymap-keys-wrap{display:flex;align-items:center;gap:6px}.keymap-keys{display:inline-flex;gap:3px;cursor:pointer;padding:3px 5px;border-radius:6px;transition:background .15s var(--ease)}.keymap-keys:hover{background:var(--bg-subtle)}.keymap-row[data-recording]{background:#2a75ba0d;border-radius:8px;padding-left:4px}.keymap-keys kbd{display:inline-flex;align-items:center;justify-content:center;min-width:22px;padding:2px 6px;font-family:var(--font-mono);font-size:11px;font-weight:600;color:var(--ink);background:var(--bg-raised);border:1px solid var(--line);border-bottom-width:2px;border-radius:5px;line-height:1;transition:border-color .15s}.keymap-keys:hover kbd{border-color:var(--accent)}.keymap-recording-hint{font-size:12px;color:var(--accent);display:flex;align-items:center;gap:8px;font-style:italic}.keymap-cancel{font-size:11px;color:var(--ink-muted);background:none;border:none;cursor:pointer;padding:2px 5px;border-radius:4px}.keymap-cancel:hover{background:var(--bg-subtle)}.keymap-reset-one{font-size:13px;color:var(--ink-muted);background:none;border:none;cursor:pointer;padding:2px 4px;border-radius:4px;opacity:.6;transition:opacity .15s}.keymap-reset-one:hover{opacity:1;color:var(--accent)}.keymap-foot{margin-top:12px;padding-top:12px;border-top:1px solid var(--line);display:flex;align-items:center;gap:8px}@media(max-width:720px){.keymap-list{grid-template-columns:1fr}}.session-list{display:flex;flex-direction:column;gap:0;margin-top:6px}.session-row{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px dashed var(--line)}.session-row:last-child{border-bottom:none}.session-ic{width:32px;height:32px;display:grid;place-items:center;background:var(--bg-subtle);border:1px solid var(--line);border-radius:8px;color:var(--ink-muted);flex-shrink:0}.session-body{flex:1;min-width:0}.session-label{font-size:13px;font-weight:500;color:var(--ink);display:flex;align-items:center;gap:6px}.session-badge{font-family:var(--font-mono);font-size:10px;padding:1px 6px;border-radius:999px;background:color-mix(in oklch,var(--status-green) 18%,transparent);color:var(--status-green)}.session-meta{font-size:11px;color:var(--ink-faint);margin-top:2px;font-family:var(--font-mono)}.integration-list{display:flex;flex-direction:column}.integration-row{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px dashed var(--line)}.integration-row:last-child{border-bottom:none}.integration-logo{width:34px;height:34px;display:grid;place-items:center;background:var(--bg-subtle);border:1px solid var(--line);border-radius:8px;font-family:var(--font-display);font-weight:700;font-size:15px;color:var(--ink);flex-shrink:0}.integration-body{flex:1;min-width:0}.integration-name{font-size:13.5px;font-weight:500;color:var(--ink)}.integration-desc{font-size:11.5px;color:var(--ink-muted);margin-top:2px}.webhook-block{margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}.webhook-head{display:flex;flex-direction:column;gap:2px;margin-bottom:8px}.webhook-head strong{font-size:13px;color:var(--ink)}.webhook-desc{font-size:11px;color:var(--ink-muted)}.webhook-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.webhook-token{flex:1;min-width:180px;padding:6px 10px;font-family:var(--font-mono);font-size:12px;background:var(--bg-subtle);border:1px solid var(--line);border-radius:8px;color:var(--ink)}.billing-plan-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:1px solid var(--line);flex-wrap:wrap}.billing-plan-name{font-family:var(--font-display);font-size:18px;font-weight:600;color:var(--ink)}.billing-plan-sub{font-size:12px;color:var(--ink-muted);margin-top:2px}.usage-grid{display:flex;flex-direction:column;gap:10px;padding:12px 0;border-bottom:1px solid var(--line)}.usage-row{display:flex;flex-direction:column;gap:4px}.usage-head{display:flex;justify-content:space-between;font-size:12px;color:var(--ink-muted)}.usage-val{font-family:var(--font-mono);color:var(--ink)}.billing-info{display:flex;flex-direction:column;padding-top:8px}.billing-info-row{display:grid;grid-template-columns:160px 1fr auto;gap:10px;align-items:center;padding:8px 0;border-bottom:1px dashed var(--line);font-size:13px}.billing-info-row:last-child{border-bottom:none}.billing-info-val{color:var(--ink-muted);font-family:var(--font-mono);font-size:12px}@media(max-width:640px){.billing-info-row{grid-template-columns:1fr;gap:4px}}.export-row{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px dashed var(--line);flex-wrap:wrap}.export-row:last-child{border-bottom:none}.export-body{flex:1;min-width:200px}.export-title{font-size:13.5px;font-weight:500;color:var(--ink)}.export-desc{font-size:11.5px;color:var(--ink-muted);margin-top:2px}.notif-tabs-scroll{display:flex;gap:4px;padding:0 14px 10px;overflow-x:hidden;border-bottom:1px solid var(--line);flex-wrap:wrap;margin-left:0}.notif-tabs-scroll button{display:inline-flex;align-items:center;gap:3px;padding:3px 8px;font-size:11px;font-weight:500;color:var(--ink-muted);background:var(--bg-raised);border:1px solid var(--line);border-radius:999px;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:background .15s var(--ease),color .15s var(--ease),border-color .15s var(--ease)}.notif-tabs-scroll button:hover{background:var(--bg-subtle);color:var(--ink)}.notif-tabs-scroll button[data-active=true]{background:var(--ink);color:var(--bg);border-color:var(--ink)}[data-theme=dark] .notif-tabs-scroll button[data-active=true]{background:var(--accent);border-color:var(--accent);color:#fff}.notif-tab-count{font-family:var(--font-mono);font-size:9.5px;padding:0 4px;border-radius:999px;background:color-mix(in oklch,currentColor 20%,transparent);line-height:1.4}.notif-prefs{border-top:1px solid var(--line);background:var(--bg-subtle)}.notif-prefs-toggle{display:flex;align-items:center;gap:6px;width:100%;padding:10px 14px;background:transparent;border:none;font-size:11.5px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-muted);cursor:pointer;transition:color .12s var(--ease)}.notif-prefs-toggle:hover{color:var(--ink)}.notif-prefs-body{padding:0 14px 12px;display:flex;flex-direction:column;gap:2px}.notif-pref-row{display:flex;align-items:center;gap:10px;padding:7px 0;border-bottom:1px dashed var(--line)}.notif-pref-row:last-child{border-bottom:none}.notif-pref-text{flex:1;min-width:0}.notif-pref-label{font-size:12.5px;font-weight:500;color:var(--ink)}.notif-pref-desc{font-size:11px;color:var(--ink-faint);margin-top:1px}.notif-pref-schedule{display:flex;align-items:center;gap:6px;padding:4px 0 8px 12px;font-size:11px;color:var(--ink-muted)}.notif-pref-schedule input[type=time]{font-family:var(--font-mono);font-size:11px;padding:3px 8px;border:1px solid var(--line);border-radius:6px;background:var(--bg-raised);color:var(--ink);cursor:pointer;outline:none;color-scheme:light}[data-theme=dark] .notif-pref-schedule input[type=time]{color-scheme:dark}.notif-pref-schedule input[type=time]:focus{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 18%,transparent)}.notif-pref-schedule input[type=time]::-webkit-calendar-picker-indicator{opacity:.4;cursor:pointer;filter:var(--icon-filter, none)}[data-theme=dark] .notif-pref-schedule input[type=time]::-webkit-calendar-picker-indicator{filter:invert(1) opacity(.5)}.notif-prefs-foot{padding-top:6px;text-align:right}.notif-prefs-foot button{font-size:11px;color:var(--accent);background:none;border:none;cursor:pointer;font-weight:600;padding:4px 2px}.notif-prefs-foot button:hover{text-decoration:underline}.toggle-switch{position:relative;width:36px;height:20px;background:var(--bg-sunken);border:1px solid var(--line);border-radius:999px;padding:0;cursor:pointer;flex-shrink:0;transition:background .18s var(--ease),border-color .18s var(--ease)}.toggle-switch[data-on=true]{background:var(--accent);border-color:var(--accent)}.toggle-knob{position:absolute;top:1px;left:1px;width:16px;height:16px;border-radius:50%;background:var(--bg-raised);box-shadow:var(--shadow-xs);transition:transform .18s var(--ease),background .18s var(--ease)}.toggle-switch[data-on=true] .toggle-knob{transform:translate(16px);background:#fff}[data-theme=dark] .toggle-knob{background:var(--ink-2)}[data-theme=dark] .toggle-switch[data-on=true] .toggle-knob{background:#fff}.view-switcher-tabs{display:inline-flex;align-items:stretch;border:1px solid var(--line);border-radius:10px;background:var(--bg-raised);overflow:hidden;flex-shrink:0}.view-switcher-tabs button{display:inline-flex;align-items:center;gap:6px;padding:6px 11px;font-size:12px;font-weight:500;color:var(--ink-muted);background:transparent;border:none;border-right:1px solid var(--line);cursor:pointer;transition:background .15s var(--ease),color .15s var(--ease);line-height:1}.view-switcher-tabs button:last-child{border-right:none}.view-switcher-tabs button:hover{background:var(--bg-subtle);color:var(--ink)}.view-switcher-tabs button[data-active=true]{background:var(--ink);color:var(--bg)}[data-theme=dark] .view-switcher-tabs button[data-active=true]{background:var(--accent);color:#fff}.table-view-wrap{flex:1;min-height:0;overflow:auto;background:var(--bg-raised);border:1px solid var(--line);border-radius:12px;margin:0 var(--card-pad) var(--card-pad)}.table-view{width:100%;border-collapse:collapse;font-size:13px;color:var(--ink)}.table-view thead th{position:sticky;top:0;background:var(--bg-subtle);z-index:2;padding:10px;text-align:left;font-size:10.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-muted);border-bottom:1px solid var(--line);white-space:nowrap;-webkit-user-select:none;user-select:none}.table-view thead th:hover{color:var(--ink)}.table-view tbody td{padding:11px 10px;border-bottom:1px solid var(--line);vertical-align:middle;white-space:nowrap}.table-view tbody tr{transition:background .12s var(--ease)}.table-view tbody tr:hover{background:var(--bg-subtle)}.table-view tbody tr[data-done=true]{opacity:.6}.table-view tbody tr[data-done=true] .table-title{text-decoration:line-through;text-decoration-color:var(--ink-faint);color:var(--ink-muted)}.table-view tbody tr[data-mine=true]{border-left:2px solid var(--accent)}.table-view tbody tr[data-mine=true]:hover{background:var(--bg-subtle)}.table-view .table-title{font-weight:500;white-space:normal;min-width:200px;max-width:380px}.table-view .table-mono{font-family:var(--font-mono);font-size:11.5px;color:var(--ink-muted)}.table-view .table-mono[data-warn=true]{color:var(--status-rose);font-weight:600}.table-view .table-status-chip{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:500;color:var(--ink);background:color-mix(in oklch,var(--col-c, var(--ink-faint)) 12%,var(--bg-raised));border:1px solid color-mix(in oklch,var(--col-c, var(--ink-faint)) 25%,var(--line));white-space:nowrap}.table-view tfoot td{padding:10px;background:var(--bg-subtle);border-top:1px solid var(--line-strong);font-size:11px;font-family:var(--font-mono);color:var(--ink-muted)}.table-view tfoot .table-total{font-weight:700;color:var(--ink)}.timeline-view{flex:1;display:flex;flex-direction:column;min-height:0;margin:0 var(--card-pad) var(--card-pad)}.timeline-toolbar{display:flex;align-items:center;gap:12px;padding:7px 12px;border:1px solid var(--line);border-bottom:none;border-radius:12px 12px 0 0;background:var(--bg-raised)}.tl-toolbar-left{display:flex;align-items:center;gap:8px;flex:1}.tl-today-btn{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;font-size:12px;font-weight:500;color:var(--ink-muted);background:transparent;border:1px solid var(--line);border-radius:7px;cursor:pointer;transition:background .12s var(--ease),color .12s var(--ease),border-color .12s}.tl-today-btn:hover{background:var(--bg-subtle);color:var(--ink);border-color:var(--ink-faint)}.tl-filter-avatars{display:flex;align-items:center;gap:3px}.tl-filter-avatar{background:none;border:2px solid transparent;border-radius:50%;padding:0;cursor:pointer;opacity:.45;transition:opacity .12s,border-color .12s;line-height:0}.tl-filter-avatar:hover{opacity:.8}.tl-filter-avatar[data-active=true]{opacity:1;border-color:var(--accent)}.tl-filter-clear{width:20px;height:20px;border-radius:50%;border:1px solid var(--line);background:var(--bg-sunken);color:var(--ink-muted);font-size:13px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .12s}.tl-filter-clear:hover{background:var(--bg-subtle);color:var(--ink)}.tl-zoom{display:inline-flex;margin-left:auto;border:1px solid var(--line);border-radius:8px;overflow:hidden}.tl-zoom button{padding:4px 9px;font-size:11px;background:transparent;border:none;border-right:1px solid var(--line);color:var(--ink-muted);cursor:pointer;transition:background .15s var(--ease),color .15s var(--ease)}.tl-zoom button:last-child{border-right:none}.tl-zoom button:hover{background:var(--bg-subtle);color:var(--ink)}.tl-zoom button[data-active=true]{background:var(--ink);color:var(--bg)}[data-theme=dark] .tl-zoom button[data-active=true]{background:var(--accent);color:#fff}.timeline-grid{flex:1;display:grid;grid-template-columns:var(--tl-side, 220px) 1fr;border:1px solid var(--line);border-radius:0 0 12px 12px;background:var(--bg-raised);overflow:auto;min-height:0}.tl-corner{position:sticky;top:0;left:0;z-index:4;background:var(--bg-subtle);border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:6px 12px;font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-muted);display:flex;align-items:center;gap:6px}.tl-corner-badge{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;background:var(--accent);color:#fff;font-size:10px;font-weight:700}.tl-header{position:sticky;top:0;z-index:3;display:flex;flex-direction:column;background:var(--bg-subtle);border-bottom:1px solid var(--line)}.tl-header-groups{display:flex;border-bottom:1px solid var(--line)}.tl-header-group{flex:none;padding:3px 8px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-muted);border-right:1px solid var(--line);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:var(--bg-subtle)}.tl-header-group:last-child{border-right:none}.tl-header-days{display:flex;background-image:linear-gradient(to right,transparent calc(var(--tl-cw) - 1px),var(--line) calc(var(--tl-cw) - 1px),var(--line) var(--tl-cw),transparent var(--tl-cw));background-size:var(--tl-cw) 100%}.tl-day{width:var(--tl-cw);min-width:var(--tl-cw);flex:none;padding:3px 0 4px;text-align:center;font-family:var(--font-mono);color:var(--ink-muted)}.tl-day-wd{font-size:8px;text-transform:uppercase;letter-spacing:.03em;color:var(--ink-faint);line-height:1.2}.tl-day-num{font-family:var(--font-display);font-weight:700;font-size:12px;color:var(--ink);line-height:1;min-height:14px}.tl-day[data-weekend=true]{background:color-mix(in oklch,var(--bg-sunken) 80%,transparent)}.tl-day[data-today=true]{background:var(--ink)}.tl-day[data-today=true] .tl-day-num,.tl-day[data-today=true] .tl-day-wd{color:var(--bg)}.tl-side{position:sticky;left:0;z-index:2;grid-column:1;background:var(--bg-raised);border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:8px 12px;display:flex;flex-direction:column;gap:4px;cursor:pointer;transition:background .12s var(--ease)}.tl-side:hover{background:var(--bg-subtle)}.tl-side.tl-group{z-index:3;flex-direction:row;align-items:center;gap:7px;background:var(--bg-subtle);font-weight:600;font-size:12.5px;padding:6px 10px}.tl-side.tl-group:hover{background:color-mix(in oklch,var(--bg-sunken) 60%,var(--bg-subtle))}.tl-side-inner{display:flex;align-items:center;gap:6px;min-width:0}.tl-side-title{font-size:13px;font-weight:500;color:var(--ink);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tl-side-title[data-done=true]{text-decoration:line-through;text-decoration-color:var(--ink-faint);color:var(--ink-muted)}.tl-track{grid-column:2;position:relative;min-height:54px;border-bottom:1px solid var(--line);background-image:linear-gradient(to right,transparent calc(var(--tl-cw) - 1px),var(--line) calc(var(--tl-cw) - 1px),var(--line) var(--tl-cw),transparent var(--tl-cw)),repeating-linear-gradient(to right,transparent 0,transparent calc(5 * var(--tl-cw)),color-mix(in oklch,var(--bg-sunken) 55%,transparent) calc(5 * var(--tl-cw)),color-mix(in oklch,var(--bg-sunken) 55%,transparent) calc(7 * var(--tl-cw)));background-size:var(--tl-cw) 100%,calc(7 * var(--tl-cw)) 100%;background-position:0 0,var(--tl-week-offset, 0px) 0}.tl-track:after{content:"";position:absolute;top:0;bottom:0;left:var(--tl-today-x, -9999px);width:2px;background:var(--accent);z-index:0;pointer-events:none;border-radius:1px}.tl-track.tl-group-track{min-height:28px;background-color:var(--bg-subtle);background-image:repeating-linear-gradient(to right,transparent 0,transparent calc(5 * var(--tl-cw)),color-mix(in oklch,var(--bg-sunken) 60%,var(--bg-subtle)) calc(5 * var(--tl-cw)),color-mix(in oklch,var(--bg-sunken) 60%,var(--bg-subtle)) calc(7 * var(--tl-cw)));background-size:calc(7 * var(--tl-cw)) 100%;background-position:var(--tl-week-offset, 0px) 0}.tl-bar{position:absolute;height:26px;display:flex;align-items:center;gap:6px;padding:0 8px;border:1px solid rgba(0,0,0,.12);border-radius:6px;font-size:11.5px;font-weight:500;cursor:pointer;overflow:hidden;white-space:nowrap;box-shadow:0 1px 3px #0000001f;transition:filter .12s var(--ease),box-shadow .12s var(--ease);z-index:1}.tl-bar:hover{filter:brightness(.93);box-shadow:0 2px 6px #0000002e}[data-theme=dark] .tl-bar:hover{filter:brightness(1.12)}.tl-bar[data-done=true]{text-decoration:line-through;text-decoration-color:var(--ink-faint)}.tl-bar[data-off-l=true]{border-left-style:dashed;border-top-left-radius:0;border-bottom-left-radius:0}.tl-bar[data-off-r=true]{border-right-style:dashed;border-top-right-radius:0;border-bottom-right-radius:0}.tl-bar-text{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tl-bar-priority{width:5px;height:5px;border-radius:50%;background:#fbbf24;flex-shrink:0;box-shadow:0 0 0 1px #00000026}.tl-milestone{position:absolute;width:16px;height:16px;top:50%;margin-top:-8px;transform:rotate(45deg);border-radius:3px;cursor:pointer;z-index:2;box-shadow:0 1px 3px #0003;transition:filter .12s var(--ease)}.tl-milestone:hover{filter:brightness(.85)}.tl-undated{padding:14px 20px 20px;border-top:1px solid var(--line)}.tl-undated-title{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:500;color:var(--ink-muted);margin-bottom:10px}.tl-undated-list{display:flex;flex-wrap:wrap;gap:6px}.tl-undated-chip{display:inline-flex;align-items:center;gap:7px;padding:5px 10px;background:var(--bg-raised);border:1px solid var(--line);border-radius:6px;font-size:12.5px;cursor:pointer;max-width:220px;transition:border-color .12s,background .12s}.tl-undated-chip:hover{border-color:var(--accent);background:color-mix(in oklch,var(--accent) 6%,var(--bg-raised))}.tl-undated-chip[data-done=true]{opacity:.5}.empty-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:48px 24px;color:var(--ink-muted);font-size:13px;text-align:center}.empty-state .icon{color:var(--ink-faint)}.stoa-channel-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:10000;padding:16px;animation:stoa-modal-fade-in .18s var(--ease, ease-out)}@keyframes stoa-modal-fade-in{0%{opacity:0}to{opacity:1}}.stoa-channel-modal{width:min(520px,100%);max-height:min(680px,90vh);background:var(--bg-raised, var(--bg));border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-lg, 0 16px 48px oklch(0% 0 0 / .25));display:flex;flex-direction:column;overflow:hidden;animation:stoa-modal-pop-in .22s var(--ease, ease-out)}@keyframes stoa-modal-pop-in{0%{opacity:0;transform:translateY(8px) scale(.97)}to{opacity:1;transform:none}}.stoa-channel-modal-head{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--line)}.stoa-channel-modal-head>div:first-child{display:inline-flex;align-items:center;gap:7px}.stoa-channel-modal-body{flex:1;overflow-y:auto;padding:14px 14px 16px;display:flex;flex-direction:column;gap:10px}.stoa-channel-modal-foot{display:flex;gap:8px;justify-content:flex-end;padding:12px 18px;border-top:1px solid var(--line);background:var(--bg-subtle)}.stoa-field{display:flex;flex-direction:column;gap:6px}.stoa-field-label{font-size:11.5px;font-weight:600;color:var(--ink);letter-spacing:.01em}.stoa-field textarea,.stoa-field input{width:100%;padding:9px 11px;font-family:inherit;font-size:13px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--ink);resize:vertical;transition:border-color .12s var(--ease),box-shadow .12s var(--ease)}.stoa-field textarea:focus,.stoa-field input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft, oklch(80% .06 25 / .3))}.stoa-input-prefix{display:flex;align-items:center;gap:8px;padding:0 11px;border:1px solid var(--line);border-radius:8px;background:var(--bg);transition:border-color .12s var(--ease),box-shadow .12s var(--ease)}.stoa-input-prefix:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft, oklch(80% .06 25 / .3))}.stoa-input-prefix input{border:none!important;padding:9px 0!important;background:transparent!important;box-shadow:none!important}.stoa-prefix-icon{display:inline-flex;align-items:center;color:var(--ink-faint);flex-shrink:0}.stoa-radio-group{display:grid;grid-template-columns:1fr 1fr;gap:8px}.stoa-radio-card{display:flex;align-items:flex-start;gap:10px;padding:12px;border:1px solid var(--line);border-radius:10px;cursor:pointer;background:var(--bg);transition:border-color .12s var(--ease),background .12s var(--ease)}.stoa-radio-card:hover{background:var(--bg-subtle)}.stoa-radio-card.is-active{border-color:var(--accent);background:var(--accent-soft, oklch(95% .04 25 / .6))}.stoa-radio-card .icon{flex-shrink:0;color:var(--accent);margin-top:1px}.stoa-chip-row{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:6px;padding:6px;border:1px dashed var(--line);border-radius:8px;background:var(--bg-subtle);max-height:88px;overflow-y:auto}.stoa-chip{display:inline-flex;align-items:center;gap:4px;padding:3px 5px 3px 9px;background:var(--accent);color:#fff;border-radius:99px;font-size:11.5px;font-weight:500;line-height:1.2}.stoa-chip button{background:#ffffff40;border:none;width:16px;height:16px;border-radius:50%;color:#fff;display:grid;place-items:center;cursor:pointer;padding:0}.stoa-chip button:hover{background:#fff6}.stoa-member-search{display:flex;align-items:center;gap:8px;padding:6px 10px;border:1px solid var(--line);border-radius:8px;background:var(--bg);margin-bottom:6px}.stoa-member-search>.icon{color:var(--ink-faint);flex-shrink:0}.stoa-member-search input{flex:1;min-width:0;border:none!important;padding:4px 0!important;background:transparent!important;font-size:13px}.stoa-quick-actions{display:flex;gap:4px;flex-shrink:0}.stoa-quick-actions button{background:transparent;border:none;color:var(--ink-muted);font-family:inherit;font-size:11px;cursor:pointer;padding:4px 6px;border-radius:5px}.stoa-quick-actions button:hover{background:var(--bg-subtle);color:var(--ink)}.stoa-member-list{border:1px solid var(--line);border-radius:10px;max-height:220px;overflow-y:auto;background:var(--bg)}.stoa-member-row{display:flex;align-items:center;gap:10px;padding:8px 10px;cursor:pointer;border-bottom:1px solid var(--line);transition:background .1s var(--ease)}.stoa-member-row:last-child{border-bottom:none}.stoa-member-row:hover{background:var(--bg-subtle)}.stoa-member-row.is-checked{background:var(--accent-soft, oklch(95% .04 25 / .45))}.stoa-checkbox{width:18px;height:18px;border-radius:4px;border:1.5px solid var(--line);display:grid;place-items:center;flex-shrink:0;background:var(--bg);transition:background .12s var(--ease),border-color .12s var(--ease)}.stoa-checkbox[data-checked=true]{background:var(--accent);border-color:var(--accent);color:#fff}.stoa-channel-modal-foot .btn-secondary{background:transparent;border:1px solid var(--line);color:var(--ink)}.stoa-channel-modal-foot .btn-secondary:hover{background:var(--bg-subtle)}.stoa-channel-modal-foot .btn:disabled{opacity:.55;cursor:not-allowed}.stoa-settings-card{display:flex;flex-direction:column;gap:12px;padding:14px;border:1px solid var(--line);border-radius:12px;background:color-mix(in oklch,var(--bg-raised) 74%,var(--bg-subtle))}.stoa-settings-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.stoa-settings-card-title{font-size:13px;font-weight:650;color:var(--ink)}.stoa-settings-card-sub{margin-top:2px;font-size:11.5px;line-height:1.35;color:var(--ink-muted)}.stoa-channel-preview-icon{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;color:var(--accent);background:var(--accent-soft);border:1px solid color-mix(in oklch,var(--accent) 25%,var(--line));flex-shrink:0}.stoa-icon-picker{display:grid;grid-template-columns:repeat(auto-fit,minmax(32px,1fr));gap:6px}.stoa-icon-choice{height:32px;border-radius:8px;border:1px solid var(--line);background:var(--bg);color:var(--ink-muted);display:grid;place-items:center;cursor:pointer;transition:background .12s var(--ease),border-color .12s var(--ease),color .12s var(--ease),transform .08s var(--ease)}.stoa-icon-choice:hover{background:var(--bg-subtle);color:var(--ink)}.stoa-icon-choice:active{transform:scale(.96)}.stoa-icon-choice[data-active=true]{color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.stoa-settings-section-label{font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted);margin-bottom:2px}.stoa-settings-divider{border-top:1px solid var(--line);padding-top:14px}.stoa-danger-label{color:var(--status-rose)}.stoa-danger-zone{display:flex;flex-direction:column;gap:8px}.btn-warn{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;border:none;background:#ffdfb4;background:oklch(92% .1 75);color:#673200;color:oklch(38% .1 55);transition:background .14s var(--ease),transform .1s var(--ease);align-self:flex-start}.btn-warn:hover:not(:disabled){background:#ffca7f;background:oklch(87% .12 75)}.btn-warn:active:not(:disabled){transform:scale(.97)}.btn-warn:disabled{opacity:.5;cursor:not-allowed}[data-theme=dark] .btn-warn{background:#62400059;background:oklch(40% .1 75 / .35);color:#ebb25f}.btn-danger{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;border:none;background:var(--status-rose);color:#fff;transition:filter .14s var(--ease),transform .1s var(--ease);align-self:flex-start}.btn-danger:hover:not(:disabled){filter:brightness(1.1)}.btn-danger:active:not(:disabled){transform:scale(.97)}.btn-danger:disabled{opacity:.45;cursor:not-allowed}.btn-primary-sm{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;border:none;background:var(--accent);color:#fff;transition:filter .14s var(--ease),transform .1s var(--ease);align-self:flex-start}.btn-primary-sm:hover:not(:disabled){filter:brightness(1.1)}.btn-primary-sm:active:not(:disabled){transform:scale(.97)}.btn-primary-sm:disabled{opacity:.5;cursor:not-allowed}.stoa-delete-confirm{padding:12px;border:1px solid var(--status-rose);border-radius:10px;background:#ffe7e440;background:oklch(95% .04 25 / .25)}.stoa-delete-input{width:100%;padding:8px 10px;border:1px solid var(--line);border-radius:8px;font-family:inherit;font-size:13px;background:var(--bg);color:var(--ink);transition:border-color .12s var(--ease),box-shadow .12s var(--ease)}.stoa-delete-input:focus{outline:none;border-color:var(--status-rose);box-shadow:0 0 0 3px #b955691f}.stoa-notif-radio{display:flex;gap:6px;flex-wrap:wrap}.stoa-notif-option{display:flex;align-items:center;gap:5px;padding:5px 12px;border-radius:99px;border:1px solid var(--line);font-size:12px;font-weight:500;cursor:pointer;color:var(--ink-muted);background:var(--bg);transition:border-color .12s var(--ease),background .12s var(--ease),color .12s var(--ease);-webkit-user-select:none;user-select:none}.stoa-notif-option input[type=radio]{display:none}.stoa-notif-option.is-active{border-color:var(--accent);background:var(--accent-soft);color:var(--ink)}.stoa-notif-option:hover:not(.is-active){background:var(--bg-subtle);border-color:var(--line-strong)}.stoa-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:10px;border:1px solid var(--line);background:var(--bg-subtle);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .12s var(--ease)}.stoa-toggle-row:hover{background:var(--bg)}.stoa-confirm-dialog{max-width:380px}.privacy-session-row{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:10px;border:1px solid var(--line);background:var(--bg-subtle)}.privacy-session-icon{width:34px;height:34px;border-radius:8px;background:var(--accent-soft);display:flex;align-items:center;justify-content:center;color:var(--accent);flex-shrink:0}.privacy-session-badge{padding:2px 8px;border-radius:99px;font-size:10.5px;font-weight:600;background:#5bb66126;color:#045e17;flex-shrink:0}[data-theme=dark] .privacy-session-badge{background:#27873333;color:#67bb6b}@keyframes stoa-lightbox-fade{0%{opacity:0}to{opacity:1}}.stoa-role-badge{display:inline-flex;align-items:center;gap:3px;padding:1px 6px 1px 5px;border-radius:99px;font-size:9.5px;font-weight:600;letter-spacing:.02em;line-height:1.4;margin-left:2px;vertical-align:middle}.stoa-role-badge[data-role=owner]{border:1px solid oklch(60% .18 295 / .35)}.stoa-role-badge[data-role=admin]{border:1px solid oklch(60% .15 230 / .35)}.stoa-role-badge[data-role=member]{border:1px solid var(--line)}.btn-sm{padding:4px 8px;font-size:12px;gap:4px}.notes-view{flex:1;display:flex;flex-direction:column;min-height:0;background:var(--bg)}.notes-header{display:flex;flex-direction:column;gap:14px;padding:22px 26px 14px;border-bottom:1px solid var(--line)}.notes-title{font-family:var(--font-display);font-size:26px;font-weight:400;letter-spacing:-.01em;color:var(--ink);margin:0}.notes-count{font-size:12px;color:var(--ink-faint);font-variant-numeric:tabular-nums}.notes-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.notes-search-wrap{position:relative;display:flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid var(--line);border-radius:8px;background:var(--bg-subtle);flex:1;min-width:200px;max-width:340px;color:var(--ink-muted)}.notes-search-input{border:0;outline:0;background:transparent;font-size:13px;color:var(--ink);flex:1;font-family:inherit}.notes-search-input::placeholder{color:var(--ink-faint)}.notes-sort select{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding:6px 28px 6px 10px;border-radius:8px;border:1px solid var(--line);background:var(--bg-subtle) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='7' viewBox='0 0 10 7'%3E%3Cpath fill='%236F6F7A' d='M1 1l4 4 4-4'/%3E%3C/svg%3E") no-repeat right 10px center;color:var(--ink);font-size:12.5px;font-family:inherit;cursor:pointer;outline:none}.notes-sort select:focus{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 18%,transparent)}.notes-view-toggle{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:var(--bg-subtle)}.notes-view-toggle button{border:0;background:transparent;color:var(--ink-muted);padding:6px 9px;display:inline-flex;align-items:center;cursor:pointer;transition:background .15s,color .15s}.notes-view-toggle button[data-active=true]{background:var(--bg-raised);color:var(--ink)}.notes-filters{display:flex;align-items:center;gap:14px;padding:10px 26px;border-bottom:1px solid var(--line);flex-wrap:wrap;background:var(--bg-subtle);font-size:12px;color:var(--ink-muted)}.notes-filters label{display:inline-flex;align-items:center;gap:6px}.notes-filters select{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding:4px 24px 4px 8px;border-radius:6px;border:1px solid var(--line);background:var(--bg) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='7' viewBox='0 0 10 7'%3E%3Cpath fill='%236F6F7A' d='M1 1l4 4 4-4'/%3E%3C/svg%3E") no-repeat right 8px center;color:var(--ink);font-size:12px;font-family:inherit;cursor:pointer;outline:none}.notes-filters select:focus{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 18%,transparent)}.notes-filter-toggle{cursor:pointer}.notes-filter-toggle input[type=checkbox]{-moz-appearance:none;appearance:none;-webkit-appearance:none;flex-shrink:0;width:15px;height:15px;border-radius:4px;border:1.5px solid var(--line);background:var(--bg);cursor:pointer;transition:background .15s,border-color .15s,box-shadow .15s;vertical-align:middle}.notes-filter-toggle input[type=checkbox]:hover{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 15%,transparent)}.notes-filter-toggle input[type=checkbox]:checked{background:var(--accent);border-color:var(--accent);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2 6l3 3 5-5' stroke='white' stroke-width='1.8' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;background-size:10px 10px}.notes-scroll{flex:1;overflow-y:auto;padding:18px 26px 26px}.notes-section{margin-bottom:22px}.notes-section-head{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:10px}.notes-grid{display:grid;gap:12px}.notes-grid-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.notes-grid-list{grid-template-columns:1fr}.note-card{position:relative;background:var(--bg-raised);border:1px solid var(--line);border-radius:12px;padding:14px 14px 12px;cursor:pointer;transition:border-color .15s,transform .15s,box-shadow .15s;display:flex;flex-direction:column;min-height:130px}.note-card:hover{border-color:var(--line-strong);transform:translateY(-1px);box-shadow:0 4px 14px #0000000a}.note-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.note-card[data-pinned=true]{border-color:var(--accent-soft);background:linear-gradient(180deg,var(--accent-soft) 0%,var(--bg-raised) 36%)}.note-card-list{min-height:auto}.note-card-list .note-card-preview{-webkit-line-clamp:2}.note-card-head{display:flex;align-items:flex-start;gap:8px;min-height:22px;margin-bottom:6px}.note-card-labels{display:flex;flex-wrap:wrap;gap:4px;flex:1}.note-card-actions{display:inline-flex;align-items:center;gap:2px;margin-left:auto;opacity:0;transition:opacity .15s;position:relative}.note-card:hover .note-card-actions,.note-card .note-card-actions:focus-within{opacity:1}.note-card[data-pinned=true] .note-card-pin{opacity:1;color:var(--accent)}.note-card-pin,.note-card-menu-btn{border:0;background:transparent;color:var(--ink-muted);padding:4px;border-radius:6px;cursor:pointer;display:inline-flex}.note-card-pin:hover,.note-card-menu-btn:hover{background:var(--bg-subtle);color:var(--ink)}.note-card-pin[data-on=true]{color:var(--accent)}.note-card-menu{position:absolute;right:0;top:calc(100% + 4px);min-width:160px;background:var(--bg-raised);border:1px solid var(--line);border-radius:10px;box-shadow:0 8px 24px #0000001f;padding:4px;z-index:20;display:flex;flex-direction:column}.note-card-menu button{border:0;background:transparent;text-align:left;padding:7px 10px;border-radius:6px;cursor:pointer;font-size:12.5px;color:var(--ink);display:inline-flex;align-items:center;gap:7px;font-family:inherit}.note-card-menu button:hover{background:var(--bg-subtle)}.note-card-menu .note-card-menu-danger{color:var(--status-rose)}.note-card-menu .note-card-menu-danger:hover{background:#b9556914}.note-card-title{font-size:14.5px;font-weight:600;color:var(--ink);margin:0 0 6px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.35}.note-card-preview{font-size:12.5px;color:var(--ink-muted);line-height:1.5;flex:1;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-wrap;word-break:break-word}.note-card-foot{display:flex;align-items:center;gap:8px;margin-top:12px;padding-top:8px;border-top:1px dashed var(--line);flex-wrap:wrap}.note-card-foot>:last-child{margin-left:auto}.notes-empty{margin:60px auto;max-width:380px;text-align:center;color:var(--ink-muted);display:flex;flex-direction:column;align-items:center;gap:8px}.notes-empty-icon{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:var(--bg-subtle);color:var(--ink-faint);margin-bottom:4px}.notes-empty-title{font-size:16px;font-family:var(--font-display);color:var(--ink)}.notes-empty-sub{font-size:12.5px;color:var(--ink-faint);line-height:1.6;margin-bottom:8px}.note-detail{flex:1;display:flex;flex-direction:column;min-height:0;background:var(--bg)}.note-detail-head{display:flex;align-items:center;gap:10px;padding:12px 22px;border-bottom:1px solid var(--line);background:var(--bg);flex-wrap:wrap}.note-back-btn{display:inline-flex;align-items:center;gap:4px;background:transparent;border:0;color:var(--ink-muted);font-size:12.5px;cursor:pointer;padding:4px 6px;border-radius:6px;font-family:inherit}.note-back-btn:hover{background:var(--bg-subtle);color:var(--ink)}.note-status-pill{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;color:var(--ink-faint);padding:3px 8px;border-radius:99px;background:var(--bg-subtle)}.note-draft-pill{margin-left:6px;padding:1px 6px;border-radius:99px;font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;background:#ba823c26;color:var(--status-amber)}.note-visibility-toggle{display:inline-flex;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:var(--bg-subtle)}.note-visibility-toggle button{border:0;background:transparent;color:var(--ink-muted);font-size:11.5px;padding:5px 9px;cursor:pointer;display:inline-flex;align-items:center;gap:4px;font-family:inherit}.note-visibility-toggle button[data-active=true]{background:var(--bg-raised);color:var(--ink)}.note-visibility-toggle button:disabled{cursor:not-allowed;opacity:.6}.note-collab-trigger{display:inline-flex;align-items:center;gap:4px;background:transparent;border:1px solid var(--line);border-radius:8px;padding:4px 8px;cursor:pointer;font-family:inherit;color:var(--ink-muted)}.note-collab-trigger:hover{border-color:var(--line-strong)}.note-collab-row{display:flex;align-items:center;gap:8px;width:100%;padding:6px 8px;border:0;background:transparent;cursor:pointer;border-radius:6px;font-family:inherit;font-size:12.5px;color:var(--ink)}.note-collab-row:hover{background:var(--bg-subtle)}.note-collab-row[data-on=true]{background:var(--accent-soft);color:var(--accent-ink)}.note-collab-row:disabled{opacity:.5;cursor:not-allowed}.note-mode-toggle{display:inline-flex;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:var(--bg-subtle)}.note-mode-toggle button{border:0;background:transparent;color:var(--ink-muted);font-size:11.5px;padding:5px 9px;cursor:pointer;display:inline-flex;align-items:center;gap:4px;font-family:inherit}.note-mode-toggle button[data-active=true]{background:var(--bg-raised);color:var(--ink)}.note-detail-meta{padding:16px 22px 8px;display:flex;flex-direction:column;gap:8px;border-bottom:1px solid var(--line);position:relative}.note-title-input{border:0;outline:0;background:transparent;width:100%;font-family:var(--font-display);font-size:28px;font-weight:400;color:var(--ink);letter-spacing:-.01em;padding:4px 0}.note-title-input::placeholder{color:var(--ink-faint)}.note-title-input:disabled{color:var(--ink);cursor:default}.note-meta-row{display:flex;gap:8px;align-items:center;font-size:11.5px;color:var(--ink-faint)}.note-meta-row .sep{opacity:.5}.note-labels-row{display:flex;flex-wrap:wrap;gap:5px;align-items:center;position:relative}.note-add-label{display:inline-flex;align-items:center;gap:4px;padding:2px 7px;background:var(--bg-subtle);border:1px dashed var(--line);border-radius:99px;color:var(--ink-muted);font-size:11px;cursor:pointer;font-family:inherit}.note-add-label:hover{border-color:var(--line-strong);color:var(--ink)}.note-detail-body{flex:1;overflow-y:auto;padding:18px 22px;display:flex;flex-direction:column;gap:14px}.note-detail-linked{padding:14px 22px 22px;border-top:1px solid var(--line);background:var(--bg-subtle);display:flex;flex-direction:column;gap:8px}.note-linked-head{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--ink-muted)}.note-linked-empty{font-size:12.5px;color:var(--ink-faint);padding:6px 0}.note-linked-list{display:flex;flex-direction:column;gap:4px}.note-linked-item{display:flex;align-items:center;gap:8px;padding:7px 10px;border:1px solid var(--line);background:var(--bg-raised);border-radius:8px;cursor:pointer;font-size:12.5px;color:var(--ink);transition:border-color .15s}.note-linked-item:hover{border-color:var(--line-strong)}.checklist-progress-bar{height:4px;border-radius:99px;background:var(--bg-subtle);overflow:hidden}.checklist-progress-fill{height:100%;border-radius:99px;background:var(--accent);transition:width .3s var(--ease)}.drawer-checklist{display:flex;flex-direction:column;gap:2px}.drawer-check-row{display:flex;align-items:center;gap:8px;padding:5px 4px;border-radius:7px;transition:background .1s var(--ease)}.drawer-check-row:hover{background:var(--bg-subtle)}.drawer-check-box{width:17px;height:17px;border-radius:5px;flex-shrink:0;border:1.5px solid var(--line-strong);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s,border-color .15s;background:transparent}.drawer-check-box[data-done=true]{background:var(--accent);border-color:var(--accent);color:#fff}.drawer-check-text{flex:1;font-size:13px;color:var(--ink);transition:color .15s,text-decoration .15s}.drawer-check-row[data-done=true] .drawer-check-text{color:var(--ink-muted);text-decoration:line-through}.drawer-check-del{opacity:0;background:none;border:none;cursor:pointer;color:var(--ink-muted);padding:2px 4px;border-radius:4px;transition:opacity .1s,background .1s}.drawer-check-row:hover .drawer-check-del{opacity:1}.drawer-check-del:hover{background:var(--bg-raised);color:var(--status-rose)}.drawer-check-add{display:flex;gap:6px;align-items:center;margin-top:6px}.drawer-check-add input{flex:1;padding:6px 10px;border-radius:7px;border:1px solid var(--line);background:var(--bg-raised);color:var(--ink);font-size:13px;font-family:var(--font-ui);outline:none;transition:border-color .15s}.drawer-check-add input:focus{border-color:var(--accent)}.drawer-check-edit-input{flex:1;padding:2px 6px;border-radius:5px;border:1px solid var(--accent);background:var(--bg-raised);color:var(--ink);font-size:13px;outline:none;font-family:var(--font-ui)}.drawer-check-text{cursor:default;flex:1}.drawer-check-del[title=Düzenle]{color:var(--ink-faint)}.drawer-check-del[title=Düzenle]:hover{background:var(--bg-raised);color:var(--accent)}.drawer-check-action{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:6px;border:none;cursor:pointer;transition:background .1s,color .1s}.drawer-check-action.save{background:var(--accent);color:#fff}.drawer-check-action.save:hover{opacity:.85}.drawer-check-action.cancel{background:var(--bg-raised);color:var(--ink-muted);border:1px solid var(--line)}.drawer-check-action.cancel:hover{color:var(--status-rose);border-color:var(--status-rose)}.note-link-dropdown{position:absolute;top:calc(100% + 6px);right:0;z-index:300;background:var(--bg-raised);border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow-md);min-width:240px;max-width:300px;overflow:hidden}.note-link-search{width:100%;padding:9px 12px;font-size:12.5px;border:none;border-bottom:1px solid var(--line);background:var(--bg-raised);color:var(--ink);font-family:var(--font-ui);outline:none;box-sizing:border-box}.note-link-list{max-height:220px;overflow-y:auto}.note-link-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;text-align:left;font-size:12.5px;color:var(--ink);background:none;border:none;cursor:pointer;font-family:var(--font-ui);transition:background .1s}.note-link-item:hover{background:var(--bg-subtle)}.note-link-item span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.note-popover{background:var(--bg-raised);border:1px solid var(--line);border-radius:10px;box-shadow:0 12px 32px #00000024;padding:10px;min-width:240px;display:flex;flex-direction:column;gap:8px;z-index:50;color:var(--ink)}.note-popover-title{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint)}.note-popover-row input{width:100%;padding:6px 8px;border:1px solid var(--line);border-radius:6px;background:var(--bg);color:var(--ink);font-size:12.5px;font-family:inherit}.note-popover-actions{display:flex;justify-content:flex-end;gap:6px}.note-popover-sub{font-size:11px;font-weight:600;color:var(--ink-faint);margin-top:4px}.note-task-row{display:flex;align-items:center;gap:8px;width:100%;padding:6px 8px;border:0;background:transparent;cursor:pointer;border-radius:6px;font-family:inherit;font-size:12.5px;color:var(--ink)}.note-task-row:hover{background:var(--bg-subtle)}.md-editor{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:10px;background:var(--bg-raised);min-height:320px;overflow:hidden}.md-toolbar{display:flex;align-items:center;gap:2px;padding:6px 8px;border-bottom:1px solid var(--line);background:var(--bg-subtle);flex-wrap:wrap}.md-tb-btn{border:0;background:transparent;padding:5px 6px;border-radius:6px;cursor:pointer;color:var(--ink-muted);display:inline-flex;align-items:center;transition:background .15s,color .15s}.md-tb-btn:hover{background:var(--bg-raised);color:var(--ink)}.md-tb-sep{width:1px;height:16px;background:var(--line);margin:0 4px}.md-textarea{flex:1;resize:vertical;min-height:280px;border:0;outline:0;padding:14px 18px;font-family:var(--font-mono);font-size:13px;line-height:1.7;color:var(--ink);background:var(--bg-raised);width:100%}.md-textarea::placeholder{color:var(--ink-faint)}.note-emoji-picker{position:absolute;top:calc(100% + 6px);left:auto;right:0;z-index:300;width:280px;background:var(--bg-raised);border:1px solid var(--line);border-radius:12px;box-shadow:0 8px 28px #00000024,0 2px 8px #00000014;overflow:hidden;display:flex;flex-direction:column}.note-emoji-tabs{display:flex;align-items:center;gap:2px;padding:8px 10px 6px;border-bottom:1px solid var(--line);background:var(--bg-subtle)}.note-emoji-tab{border:none;background:transparent;border-radius:7px;padding:4px 6px;font-size:18px;line-height:1;cursor:pointer;transition:background .12s,transform .1s;flex:1;text-align:center}.note-emoji-tab:hover{background:var(--bg-raised);transform:scale(1.2)}.note-emoji-tab[data-active=true]{background:var(--bg-sunken);outline:2px solid var(--accent);outline-offset:-2px}.note-emoji-cat-label{font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint);padding:7px 12px 4px}.note-emoji-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;padding:0 8px 10px;max-height:220px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--line) transparent}.note-emoji-btn{border:none;background:transparent;border-radius:7px;padding:5px 3px;font-size:20px;line-height:1;cursor:pointer;transition:background .1s,transform .1s;text-align:center}.note-emoji-btn:hover{background:var(--bg-sunken);transform:scale(1.3)}.md-body{font-size:14px;line-height:1.65;color:var(--ink);font-family:var(--font-sans)}.md-body>*+*{margin-top:12px}.md-h1{font-family:var(--font-display);font-size:24px;font-weight:500;letter-spacing:-.01em}.md-h2{font-family:var(--font-display);font-size:19px;font-weight:500}.md-h3{font-size:15px;font-weight:600}.md-p{font-size:14px}.md-list{padding-left:20px}.md-list li{margin:2px 0}.md-todo{list-style:none;margin-left:-16px;display:flex;align-items:flex-start;gap:6px}.md-todo-box{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;border:1.5px solid var(--line-strong);border-radius:4px;font-size:10px;color:var(--bg);background:var(--bg-raised);margin-top:3px;flex-shrink:0}.md-todo[data-done=true] .md-todo-box{background:var(--accent);border-color:var(--accent);color:#fff}.md-todo[data-done=true]>span:last-child{text-decoration:line-through;color:var(--ink-faint)}.md-quote{border-left:3px solid var(--line-strong);padding:4px 12px;color:var(--ink-muted);font-style:italic}.md-code{background:var(--bg-subtle);border:1px solid var(--line);border-radius:8px;padding:12px 14px;overflow-x:auto;font-family:var(--font-mono);font-size:12.5px;line-height:1.6}.md-inline-code{background:var(--bg-subtle);border:1px solid var(--line);border-radius:4px;padding:1px 5px;font-family:var(--font-mono);font-size:12px}.md-hr{border:0;border-top:1px solid var(--line);margin:16px 0}.md-empty{color:var(--ink-faint);font-size:13px;font-style:italic;text-align:center;padding:28px 0}.label-tone-dot[data-tone=blue]{background:#2e7b9c}.label-tone-dot[data-tone=rose]{background:#b95569}.label-tone-dot[data-tone=amber]{background:#ba823c}.label-tone-dot[data-tone=green]{background:#488055}.label-tone-dot[data-tone=purple]{background:#7f5bb6}.label-tone-dot[data-tone=teal]{background:#008383;background:oklch(55% .1 195)}.label-tone-dot[data-tone=orange]{background:#c7692c}.label-tone-dot[data-tone=cyan]{background:#1590a1}.label-tone-dot[data-tone=pink]{background:#bc598c}.label-tone-dot[data-selected=true]{outline:2px solid var(--ink);outline-offset:2px}.attachment-drop-zone{display:flex;align-items:center;gap:8px;padding:10px 14px;border:1.5px dashed var(--line);border-radius:10px;color:var(--ink-muted);font-size:12.5px;cursor:pointer;transition:border-color .15s,background .15s;margin-bottom:8px;-webkit-user-select:none;user-select:none}.attachment-drop-zone:hover{border-color:var(--line-strong);background:var(--bg-subtle)}.attachment-drop-zone.drag-over{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.attachment-list{display:flex;flex-direction:column;gap:6px}.attachment-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:var(--bg-raised);transition:border-color .15s}.attachment-item:hover{border-color:var(--line-strong)}.attachment-thumb{width:48px;height:48px;border-radius:7px;overflow:hidden;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:var(--bg-subtle)}.attachment-thumb img{width:100%;height:100%;object-fit:cover}.attachment-icon-wrap{width:48px;height:48px;border-radius:7px;background:var(--bg-subtle);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--ink-muted);text-decoration:none}.attachment-meta{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.attachment-name{font-size:13px;color:var(--ink);text-decoration:none;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.attachment-name:hover{text-decoration:underline;color:var(--accent)}.attachment-name-input{flex:1;padding:2px 6px;border-radius:5px;border:1px solid var(--accent);background:var(--bg-raised);color:var(--ink);font-size:13px;outline:none;font-family:var(--font-ui);min-width:0}.attachment-sub{font-size:11px;color:var(--ink-faint)}.img-preview-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b8;display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeIn .15s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.img-preview-box{position:relative;max-width:min(90vw,960px);max-height:90vh;display:flex;flex-direction:column;align-items:center;gap:10px}.img-preview-img{max-width:100%;max-height:calc(90vh - 48px);border-radius:12px;box-shadow:0 20px 60px #00000080;object-fit:contain}.img-preview-name{font-size:13px;color:#fffc;font-family:var(--font-ui)}.img-preview-close{position:absolute;top:-40px;right:0;background:#ffffff26;border:none;border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;color:#fff;cursor:pointer;transition:background .15s}.img-preview-close:hover{background:#ffffff40}@media(max-width:1024px){.drawer{width:min(620px,92vw)}.settings-wrap{padding:24px 28px 64px}.cal-wrap{grid-template-columns:minmax(0,1fr)}.cal-side{display:none}.dash-grid{grid-template-columns:repeat(2,1fr)}.topbar-invite{display:none}}@media(max-width:768px){.notif-panel{top:56px}.chat-panel:not([data-full-page=true])[data-open=true]:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;z-index:-1;pointer-events:none}.chat-fp-conv-head{padding:10px 12px;min-height:50px;gap:8px}.chat-fp-conv-title-wrap{flex:1;min-width:0;overflow:hidden}.chat-fp-conv-title{font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-fp-conv-sub{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10.5px}.chat-fp-conv-head>.avatar-stack{display:none}.panel .list-table tr{grid-template-columns:1fr;row-gap:6px}.panel .list-table td.title{grid-column:1;grid-row:1;padding-right:0}.panel .list-table td:nth-child(n+2){grid-column:1;flex-wrap:wrap}.cal-week-col{min-width:104px}.cal-week-chip{padding:3px 5px;gap:3px}.cal-week-chip-title{font-size:10.5px}.cal-week-chip .avatar-stack{display:none}body:has(.chat-panel[data-open=true]) .topbar{z-index:0}.sidebar-backdrop{cursor:pointer}.topbar-crumbs{flex:1;min-width:0;overflow:hidden}.topbar-crumbs .current{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.list-table,.list-table thead,.list-table tbody,.list-table tr,.list-table td{display:block}.list-table thead{display:none}.list-table{border:none}.list-table tr{background:var(--bg-raised);border:1px solid var(--line);border-radius:12px;margin-bottom:10px;padding:10px 12px;display:grid;grid-template-columns:18px 1fr;column-gap:10px;row-gap:4px}.list-table tr:hover td{background:transparent}.list-table td:nth-child(1){grid-row:1 / span 2;grid-column:1;padding:2px 0;border-bottom:none}.list-table td.title{grid-column:2;grid-row:1;font-size:14px;font-weight:600;padding:0;border-bottom:none}.list-table td:nth-child(n+3){grid-column:2;padding:0;border-bottom:none;font-size:12px;color:var(--ink-muted);display:flex;align-items:center;gap:6px;flex-wrap:wrap}.list-table td:nth-child(n+3):empty,.list-table td:nth-child(n+3)>:only-child:empty{display:none}.notes-grid-grid{grid-template-columns:1fr}.notes-header{padding:16px 16px 12px}.notes-title{font-size:22px}.notes-toolbar>*{font-size:13px}.notes-search-wrap{max-width:100%;min-width:0}.notes-filters{padding:8px 16px;gap:10px}.notes-scroll{padding:14px 16px 24px}.note-detail-head{padding:10px 14px;gap:6px}.note-detail-head .note-collab-trigger,.note-detail-head .note-mode-toggle{display:none}.note-detail-head .note-visibility-toggle{font-size:10px}.note-detail-head .note-status-pill{font-size:10.5px;padding:2px 6px}.note-detail-meta{padding:12px 16px 6px}.note-title-input{font-size:22px}.note-detail-body{padding:14px 16px}.note-detail-linked{padding:12px 16px 18px}.note-emoji-picker{width:min(280px,calc(100vw - 32px));right:0}.drawer-body{padding:14px 16px 60px}.task-page-body{padding:20px 16px 60px}.doc-title{font-size:24px;margin-bottom:14px}.props-grid{grid-template-columns:92px minmax(0,1fr);gap:4px 10px;margin-bottom:20px}.prop-label{font-size:11.5px;padding:4px 0}.prop-value{font-size:12.5px;min-height:30px}.dash-h1{font-size:24px}.cal-week-col{min-width:92px}.chat-fp-grid:not(:has(.chat-fp-left)) .chat-fp-main-back{display:inline-flex}.settings-section{padding:18px 0;gap:12px}.settings-section h3{font-size:17px}.settings-section .desc{font-size:12.5px}.topbar .icon-btn{width:36px;height:36px}.modal-foot{flex-wrap:wrap;gap:8px}.modal-foot .btn{flex:1;min-width:120px;justify-content:center}.auth-form-wrap{padding:24px 18px}.auth-form h2{font-size:26px}.auth-form p.sub{font-size:13.5px;margin-bottom:24px}}@media(max-width:480px){.topbar{padding:8px 10px;gap:6px;min-height:50px}.topbar-crumbs{font-size:12px}.topbar-crumbs .current{font-size:13px}.topbar-right{gap:2px}.topbar .icon-btn{width:34px;height:34px}.notif-panel{top:54px}.notes-title{font-size:19px}.notes-count{font-size:11px}.notes-filters{font-size:11px;padding:6px 12px}.list-table tr{padding:9px 10px;row-gap:3px}.list-table td.title{font-size:13.5px}.dash-grid{grid-template-columns:1fr;gap:8px}.stat-value{font-size:26px}.stat-card{padding:14px}.dash-h1{font-size:22px}.cal-day{min-height:42px;max-height:56px;padding:2px}.cal-day .day-num{font-size:11px}.doc-title{font-size:22px}.props-grid{grid-template-columns:82px minmax(0,1fr)}.note-title-input{font-size:20px}.note-detail-head .note-back-btn span{display:none}.note-detail-head .btn-primary .btn-label,.note-detail-head .btn-primary span{display:inline}.auth-form h2{font-size:22px}.auth-form-wrap{padding:20px 14px}.settings-wrap{padding:14px}.settings-card{padding:12px}.settings-section h3{font-size:16px}.modal-foot .btn{flex-basis:100%}}
