@import"https://fonts.googleapis.com/css2?family=Vazirmatn:wght@400;500;600;700&display=swap";:root{--brand: #2f7cf6;--brand-strong: #1d63dc;--brand-text: #8dbcff;--brand-soft: rgba(47, 124, 246, .2);--brand-ring: rgba(80, 150, 255, .4);--on-brand: #ffffff;--brand-grad: linear-gradient(135deg, #3b8bff 0%, #1d63dc 100%);--green: #10b981;--green-soft: rgba(16, 185, 129, .14);--amber: #f59e0b;--amber-soft: rgba(245, 158, 11, .14);--blue: #3b82f6;--blue-soft: rgba(59, 130, 246, .14);--violet: #a78bfa;--violet-soft: rgba(167, 139, 250, .14);--red: #ef4444;--red-soft: rgba(239, 68, 68, .14);--bg: #05080f;--surface: rgba(21, 28, 43, .62);--surface-2: rgba(255, 255, 255, .045);--surface-3: rgba(255, 255, 255, .09);--surface-hover: rgba(255, 255, 255, .06);--surface-press: rgba(255, 255, 255, .1);--solid: #111827;--border: rgba(255, 255, 255, .16);--border-soft: rgba(255, 255, 255, .08);--glass-blur: blur(22px) saturate(140%);--glass-hl: inset 0 1px 0 rgba(255, 255, 255, .07);--text: #f2f5fb;--text-dim: #aab4c8;--text-faint: #8791a6;--orb-1: #2f7cf6;--orb-1-hi: #6ea8ff;--orb-1-lo: #0d2f75;--orb-2: #d99a2b;--orb-2-hi: #f3c56a;--orb-2-lo: #6e4208;--orb-3: #2fbf74;--orb-3-hi: #7df0b2;--orb-3-lo: #0b4a2b;--orb-4: #27c6c9;--orb-4-hi: #8ff2f2;--orb-4-lo: #0b5a63;--orb-opacity: .5;--radius-xs: 6px;--radius-sm: 9px;--radius: 16px;--radius-lg: 22px;--elev-1: 0 1px 2px rgba(0, 0, 0, .28);--elev-2: 0 3px 10px rgba(0, 0, 0, .32), 0 1px 2px rgba(0, 0, 0, .24);--elev-3: 0 16px 44px rgba(0, 0, 0, .5), 0 2px 8px rgba(0, 0, 0, .3);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--dur-fast: .13s;--dur: .2s;--dur-slow: .28s;--z-base: 0;--z-sticky: 20;--z-header: 30;--z-drawer: 40;--z-dropdown: 60;--z-modal: 100;--z-toast: 200;--sidebar-width: 252px;--header-height: 64px;--bottom-nav-height: 64px;--safe-b: env(safe-area-inset-bottom, 0px);--safe-t: env(safe-area-inset-top, 0px);--primary: var(--brand);--danger: var(--red);--text-muted: var(--text-dim);--surface-muted: var(--surface-2);--radius-md: var(--radius-sm);--purple: var(--violet);color-scheme:dark}:root[data-theme=light]{--brand: #1f6feb;--brand-strong: #1757c4;--brand-text: #1757c4;--brand-soft: rgba(31, 111, 235, .11);--brand-ring: rgba(31, 111, 235, .32);--brand-grad: linear-gradient(135deg, #3b8bff 0%, #1757c4 100%);--green: #047857;--green-soft: rgba(4, 120, 87, .1);--amber: #b45309;--amber-soft: rgba(180, 83, 9, .1);--blue: #1d4ed8;--blue-soft: rgba(29, 78, 216, .1);--violet: #6d28d9;--violet-soft: rgba(109, 40, 217, .1);--red: #dc2626;--red-soft: rgba(220, 38, 38, .1);--bg: #eaf0fa;--surface: rgba(255, 255, 255, .72);--surface-2: rgba(15, 23, 42, .04);--surface-3: rgba(15, 23, 42, .08);--surface-hover: rgba(15, 23, 42, .045);--surface-press: rgba(15, 23, 42, .08);--solid: #ffffff;--border: rgba(15, 23, 42, .18);--border-soft: rgba(15, 23, 42, .09);--glass-hl: inset 0 1px 0 rgba(255, 255, 255, .8);--text: #0f172a;--text-dim: #4b566b;--text-faint: #667186;--orb-opacity: .38;--elev-1: 0 1px 2px rgba(15, 23, 42, .06);--elev-2: 0 4px 14px rgba(15, 23, 42, .09), 0 1px 2px rgba(15, 23, 42, .05);--elev-3: 0 18px 46px rgba(15, 23, 42, .18), 0 2px 8px rgba(15, 23, 42, .07);color-scheme:light}:root[data-wallpaper=aurora],.wallpaper-swatch[data-wallpaper=aurora]{--orb-1: #12b886;--orb-1-hi: #6ff0c4;--orb-1-lo: #04472f;--orb-2: #2f7cf6;--orb-2-hi: #7db4ff;--orb-2-lo: #0d2f75;--orb-3: #27c6c9;--orb-3-hi: #8ff2f2;--orb-3-lo: #0b5a63;--orb-4: #8bd34a;--orb-4-hi: #cdf59a;--orb-4-lo: #3a5f12}:root[data-wallpaper=blueprint],.wallpaper-swatch[data-wallpaper=blueprint]{--orb-1: #2f7cf6;--orb-1-hi: #8db9ff;--orb-1-lo: #0a2663;--orb-2: #5b8def;--orb-2-hi: #a9c4ff;--orb-2-lo: #1a2f6b;--orb-3: #3aa0ff;--orb-3-hi: #9dd1ff;--orb-3-lo: #0b3f6e;--orb-4: #7a8cff;--orb-4-hi: #c3caff;--orb-4-lo: #272f78}:root[data-wallpaper=sunset],.wallpaper-swatch[data-wallpaper=sunset]{--orb-1: #f0603a;--orb-1-hi: #ffa27d;--orb-1-lo: #6b1a05;--orb-2: #f0a22e;--orb-2-hi: #ffd277;--orb-2-lo: #6b4207;--orb-3: #e0457b;--orb-3-hi: #ff9bbd;--orb-3-lo: #5e0f2e;--orb-4: #a855f7;--orb-4-hi: #d9acff;--orb-4-lo: #3f1275}:root[data-wallpaper=forest],.wallpaper-swatch[data-wallpaper=forest]{--orb-1: #1f9d55;--orb-1-hi: #6fe0a0;--orb-1-lo: #07401f;--orb-2: #b6c93a;--orb-2-hi: #e3f27d;--orb-2-lo: #4a5710;--orb-3: #13a89e;--orb-3-hi: #6feae0;--orb-3-lo: #05443f;--orb-4: #3b8b5c;--orb-4-hi: #8fd0ad;--orb-4-lo: #123a25}:root[data-wallpaper=violet],.wallpaper-swatch[data-wallpaper=violet]{--orb-1: #7c4dff;--orb-1-hi: #b8a0ff;--orb-1-lo: #2a1475;--orb-2: #d946ef;--orb-2-hi: #f2a2ff;--orb-2-lo: #5c0f6b;--orb-3: #4f7cff;--orb-3-hi: #a0b8ff;--orb-3-lo: #172b75;--orb-4: #ec4899;--orb-4-hi: #ffa3cd;--orb-4-lo: #62113a}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:Vazirmatn,Segoe UI,Tahoma,sans-serif;font-size:14px;line-height:1.7;-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:var(--radius-xs)}:focus:not(:focus-visible){outline:none}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--surface-3);border-radius:99px;border:2px solid transparent;background-clip:content-box}::-webkit-scrollbar-thumb:hover{background:var(--border);background-clip:content-box}.skip-link{position:absolute;inset-inline-start:-9999px;top:var(--space-2);z-index:var(--z-toast);padding:10px 18px;background:var(--brand);color:var(--on-brand);border-radius:var(--radius-sm)}.skip-link:focus{inset-inline-start:var(--space-2)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.icon{flex:none;display:block}.btn .icon{opacity:.9}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:8px 15px;border:1px solid transparent;border-radius:var(--radius-sm);background:var(--surface-3);color:var(--text);font-weight:500;cursor:pointer;white-space:nowrap;touch-action:manipulation;transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.btn:active:not(:disabled){transform:scale(.97)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--brand);color:var(--on-brand);box-shadow:var(--elev-1)}.btn-primary:hover:not(:disabled){background:var(--brand-strong);box-shadow:var(--elev-2)}.btn-ghost{background:transparent;border-color:var(--border)}.btn-ghost:hover:not(:disabled){background:var(--surface-hover);border-color:var(--text-faint)}.btn-quiet{background:transparent;color:var(--text-dim);padding:7px 11px}.btn-quiet:hover:not(:disabled){background:var(--surface-hover);color:var(--text)}.btn-danger{background:var(--red);color:#fff}.btn-danger:hover:not(:disabled){background:var(--red);filter:brightness(.9)}.btn-sm{min-height:32px;padding:5px 11px;font-size:12.5px}.btn-block{width:100%}.btn-icon{min-width:38px;padding:8px}.btn-icon.btn-sm{min-width:32px;padding:6px}.input,.textarea,.select{width:100%;min-height:40px;padding:9px 12px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);outline:none;transition:border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.input:hover:not(:disabled),.textarea:hover:not(:disabled),.select:hover:not(:disabled){border-color:var(--text-faint)}.input:focus,.textarea:focus,.select:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-ring);outline:none}.input:disabled,.textarea:disabled,.select:disabled{opacity:.5;cursor:not-allowed}.textarea{resize:vertical;min-height:88px;line-height:1.8}.input::placeholder,.textarea::placeholder{color:var(--text-faint)}.select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-inline-end:34px;background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23767f92' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:left 11px center;background-size:15px}html[dir=rtl] .select{background-position:left 11px center}.field{display:block;margin-bottom:var(--space-4)}.field-label{display:block;margin-bottom:6px;color:var(--text-dim);font-size:12.5px;font-weight:500}.field-error{display:block;margin-top:5px;color:var(--red);font-size:12px}.field-row{display:flex;gap:var(--space-3);flex-wrap:wrap}.field-row>*{flex:1 1 200px;min-width:0}.checkbox{width:17px;height:17px;accent-color:var(--brand);cursor:pointer;flex:none}.task-check{position:relative;display:inline-grid;place-items:center;width:22px;height:22px;flex:none;padding:0;border:1.75px solid var(--border);border-radius:7px;background:transparent;color:transparent;cursor:pointer;transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.task-check:after{content:"";position:absolute;top:-11px;right:-11px;bottom:-11px;left:-11px}.task-check:hover:not(:disabled){border-color:var(--green);color:var(--text-faint)}.task-check:active:not(:disabled){transform:scale(.9)}.task-check.checked{background:var(--green);border-color:var(--green);color:#fff}.task-check:disabled{opacity:.5;cursor:not-allowed}.task-row.done .task-row-title{text-decoration:line-through;color:var(--text-faint)}.card{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);padding:var(--space-4);box-shadow:var(--elev-1)}.card-flush{padding:0}.card-hover{transition:box-shadow var(--dur) var(--ease-out),border-color var(--dur) var(--ease-out),transform var(--dur) var(--ease-out)}.card-hover:hover{box-shadow:var(--elev-2);border-color:var(--border);transform:translateY(-2px)}.panel{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);box-shadow:var(--elev-1)}.panel-head{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-soft)}.panel-body{padding:var(--space-3) var(--space-4) var(--space-4)}.divider{height:1px;background:var(--border-soft);margin:var(--space-4) 0;border:none}.chip{display:inline-flex;align-items:center;gap:4px;padding:2px 9px;border-radius:99px;background:var(--surface-3);color:var(--text-dim);font-size:11.5px;font-weight:500;white-space:nowrap}.chip .icon{width:13px;height:13px}.chip-danger{background:var(--red-soft);color:var(--red)}.chip-warn{background:var(--amber-soft);color:var(--amber)}.chip-ok{background:var(--green-soft);color:var(--green)}.chip-info{background:var(--blue-soft);color:var(--blue)}.chip-brand{background:var(--brand-soft);color:var(--brand-text)}.chip-muted{background:var(--surface-3);color:var(--text-faint)}.avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--surface-3);color:#fff;font-size:11px;font-weight:600;flex:none;overflow:hidden;-webkit-user-select:none;user-select:none;line-height:1}.avatar img{width:100%;height:100%;object-fit:cover}.avatar-group{display:inline-flex;flex-direction:row-reverse}.avatar-group .avatar+.avatar{margin-right:-8px}.avatar-group .avatar{border:2px solid var(--surface)}.spinner{width:18px;height:18px;border:2px solid var(--surface-3);border-top-color:var(--brand);border-radius:50%;animation:spin .7s linear infinite;flex:none}@keyframes spin{to{transform:rotate(360deg)}}.center-box{display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:48px 20px;color:var(--text-faint)}.skeleton{background:linear-gradient(90deg,var(--surface-2) 25%,var(--surface-3) 50%,var(--surface-2) 75%);background-size:200% 100%;animation:shimmer 1.4s ease-in-out infinite;border-radius:var(--radius-sm)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-text{height:12px;margin-bottom:8px}.skeleton-card{height:96px}.empty{padding:48px 24px;text-align:center;color:var(--text-faint)}.empty-icon{width:48px;height:48px;margin:0 auto var(--space-3);display:grid;place-items:center;border-radius:50%;background:var(--surface-2);color:var(--text-faint)}.empty-title{color:var(--text);font-weight:600;font-size:15px;margin-bottom:4px}.alert{display:flex;align-items:flex-start;gap:var(--space-2);padding:10px 13px;border-radius:var(--radius-sm);border:1px solid transparent;font-size:13px;margin-bottom:var(--space-3)}.alert-error{background:var(--red-soft);color:var(--red);border-color:var(--red-soft)}.alert-warn{background:var(--amber-soft);color:var(--amber)}.alert-info{background:var(--blue-soft);color:var(--blue)}.progress-track{height:5px;background:var(--surface-3);border-radius:99px;overflow:hidden}.progress-fill{height:100%;background:var(--green);border-radius:99px;transition:width var(--dur-slow) var(--ease-out)}.app-shell{position:relative;display:flex;height:100%;gap:14px;padding:14px;overflow:hidden;isolation:isolate}.orbs{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;overflow:hidden;pointer-events:none;background:radial-gradient(80% 60% at 50% 0%,rgba(47,124,246,.09),transparent 70%),var(--bg)}.orb{position:absolute;border-radius:50%;opacity:var(--orb-opacity);filter:blur(46px) saturate(.9);will-change:transform}.orb-blue{width:46vmin;height:46vmin;bottom:-10vmin;inset-inline-start:-12vmin;background:radial-gradient(circle at 35% 28%,var(--orb-1-hi),var(--orb-1) 45%,var(--orb-1-lo) 100%);animation:float-a 22s ease-in-out infinite}.orb-gold{width:30vmin;height:30vmin;top:-8vmin;inset-inline-end:6vmin;background:radial-gradient(circle at 35% 28%,var(--orb-2-hi),var(--orb-2) 45%,var(--orb-2-lo) 100%);animation:float-b 26s ease-in-out infinite}.orb-green{width:22vmin;height:22vmin;bottom:6vmin;left:42%;background:radial-gradient(circle at 35% 28%,var(--orb-3-hi),var(--orb-3) 45%,var(--orb-3-lo) 100%);animation:float-b 19s ease-in-out infinite reverse}.orb-teal{width:40vmin;height:40vmin;bottom:-12vmin;inset-inline-end:-8vmin;background:radial-gradient(circle at 35% 28%,var(--orb-4-hi),var(--orb-4) 45%,var(--orb-4-lo) 100%);animation:float-a 24s ease-in-out infinite reverse}@keyframes float-a{50%{transform:translate3d(2vmin,-3vmin,0) scale(1.03)}}@keyframes float-b{50%{transform:translate3d(-3vmin,2vmin,0) scale(.97)}}.app-col{flex:1;min-width:0;display:flex;flex-direction:column;gap:12px}.app-header{min-height:var(--header-height);flex:none;display:flex;align-items:center;gap:var(--space-2);padding:0 4px;z-index:var(--z-header)}.app-header .spacer{flex:1}.header-title{display:flex;flex-direction:column;min-width:0;line-height:1.45}.header-title b{font-size:16px;font-weight:700}.header-title .tiny{color:var(--text-dim);display:flex;align-items:center;gap:6px}.live-dot{width:7px;height:7px;border-radius:50%;background:#34d399;box-shadow:0 0 0 3px #34d39933;flex:none}.create-btn{background:var(--brand-grad);box-shadow:0 6px 18px -6px var(--brand),var(--elev-1);border-radius:12px}.create-btn:hover:not(:disabled){background:var(--brand-grad);filter:brightness(1.08)}.logo{display:flex;align-items:center;gap:var(--space-2);font-size:16px;font-weight:700}.logo-mark{width:36px;height:36px;border-radius:12px;background:var(--brand-grad);color:#fff;display:grid;place-items:center;font-size:17px;font-weight:800;box-shadow:0 6px 16px -6px var(--brand),inset 0 1px #ffffff59;flex:none}.header-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--surface);border:1px solid var(--border-soft);border-radius:50%;color:var(--text-dim);cursor:pointer;backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.header-btn:hover{background:var(--surface-3);color:var(--text)}.header-btn:active{transform:scale(.94)}.workspace-switch{display:flex;align-items:center;gap:8px;width:100%;padding:9px 12px;background:var(--surface-2);border:1px solid var(--border-soft);border-radius:12px;color:var(--text);cursor:pointer;transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.workspace-switch:hover{background:var(--surface-3);border-color:var(--border)}.workspace-switch b{flex:1;text-align:start;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.sidebar{width:var(--sidebar-width);flex:none;display:flex;flex-direction:column;gap:12px;padding:14px 10px 10px;background:linear-gradient(180deg,#2f7cf629,#151c2b9e 38%);border:1px solid var(--border-soft);border-radius:26px;box-shadow:var(--elev-2),var(--glass-hl);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur)}:root[data-theme=light] .sidebar{background:linear-gradient(180deg,#1f6feb1a,#ffffffb8 38%)}.sidebar-brand{display:flex;align-items:center;gap:10px;padding:2px 4px}.sidebar-brand-text{display:flex;flex-direction:column;min-width:0;flex:1;line-height:1.35}.sidebar-brand-text b{font-size:16px;font-weight:800}.sidebar-brand-text span{color:var(--text-dim);font-size:11.5px}.sidebar-close{display:none;width:36px;height:36px}.sidebar-scroll{flex:1;min-height:0;overflow-y:auto;margin:0 -4px;padding:0 4px;overscroll-behavior:contain}.sidebar-section{margin:var(--space-4) var(--space-3) 6px;color:var(--text-faint);font-size:11px;font-weight:700;letter-spacing:.04em}.sidebar-scroll>:first-child .sidebar-section{margin-top:2px}.sidebar-link{position:relative;display:flex;align-items:center;gap:11px;min-height:42px;padding:8px 12px;margin-bottom:3px;border-radius:12px;color:var(--text-dim);font-weight:500;cursor:pointer;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.sidebar-link:hover{background:var(--surface-hover);color:var(--text)}.sidebar-link:active{transform:scale(.98)}.sidebar-link.active{background:var(--brand-grad);color:#fff;font-weight:600;box-shadow:0 8px 20px -8px var(--brand),inset 0 1px #ffffff47}.sidebar-link .icon{flex:none}.sidebar-link.active .unread-badge{background:#fff;color:var(--brand-strong)}.sidebar-foot{display:flex;flex-direction:column;gap:8px;padding-top:10px;border-top:1px solid var(--border-soft)}.switch-row{display:flex;align-items:center;gap:9px;padding:4px 8px;color:var(--text-dim);font-size:13px}.switch-row>span{flex:1}.switch{position:relative;width:44px;height:26px;padding:0;border:none;border-radius:99px;background:var(--surface-3);cursor:pointer;transition:background var(--dur) var(--ease-out)}.switch i{position:absolute;top:3px;inset-inline-start:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #00000059;transition:inset-inline-start var(--dur) var(--ease-out)}.switch.on{background:#34d399}.switch.on i{inset-inline-start:21px}.user-card{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;background:var(--surface-2);border:1px solid var(--border-soft);border-radius:14px;color:var(--text);text-align:start;cursor:pointer;transition:background var(--dur-fast) var(--ease-out)}.user-card:hover{background:var(--surface-3)}.user-card-text{display:flex;flex-direction:column;flex:1;min-width:0;line-height:1.4}.user-card-text b{font-size:13px}.user-card-text .tiny{color:var(--text-faint);direction:ltr;text-align:start}.sidebar-backdrop,.bottom-nav{display:none}.route-fade{min-height:100%}@keyframes route-in{0%{opacity:0;transform:translateY(8px)}}.main{flex:1;min-width:0;overflow-y:auto;border-radius:22px;overscroll-behavior:contain}.page{padding:4px 4px 40px;width:100%}.page-head{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-5);flex-wrap:wrap}.page-title{font-size:21px;font-weight:700;margin:0;letter-spacing:-.01em}.page-subtitle{color:var(--text-dim);font-size:13px}.page-head .spacer{flex:1}.tabs{display:flex;gap:2px;border-bottom:1px solid var(--border-soft);margin-bottom:var(--space-4);flex-wrap:wrap}.tab{display:inline-flex;align-items:center;gap:7px;min-height:40px;padding:9px 15px;border:none;background:none;color:var(--text-dim);font-weight:500;border-bottom:2px solid transparent;margin-bottom:-1px;cursor:pointer;transition:color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.tab:hover{color:var(--text)}.tab.active{color:var(--brand-text);border-bottom-color:var(--brand);font-weight:600}.tab .count{color:var(--text-faint);font-size:12px}.segmented{display:flex;gap:6px;flex-wrap:wrap}.segment{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:6px 12px;border:1px solid var(--border-soft);border-radius:99px;background:var(--surface);color:var(--text-dim);font-size:12.5px;font-weight:500;cursor:pointer;transition:all var(--dur-fast) var(--ease-out)}.segment:hover{border-color:var(--border);color:var(--text)}.segment.active{background:var(--brand);border-color:var(--brand);color:var(--on-brand)}.dash-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-4)}.greeting-card{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-5);margin-bottom:var(--space-5);border-radius:var(--radius-lg);background:radial-gradient(120% 140% at 100% 0%,var(--brand-soft) 0%,transparent 55%),var(--surface);border:1px solid var(--border-soft);box-shadow:var(--elev-1)}.stat-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(168px,1fr));gap:var(--space-3);margin-bottom:var(--space-5)}.stat{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);box-shadow:var(--elev-1);cursor:pointer;text-align:start;transition:box-shadow var(--dur) var(--ease-out),border-color var(--dur) var(--ease-out),transform var(--dur) var(--ease-out)}.stat:hover{box-shadow:var(--elev-2);border-color:var(--border);transform:translateY(-2px)}.stat-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text-dim);flex:none}.stat-value{font-size:22px;font-weight:700;line-height:1.25;letter-spacing:-.01em}.stat-label{color:var(--text-dim);font-size:12.5px}.stat-dot{width:8px;height:8px;border-radius:50%;flex:none}.bar-track{height:7px;background:var(--surface-3);border-radius:99px;overflow:hidden;display:flex}.bar-seg{height:100%;transition:width var(--dur-slow) var(--ease-out)}.task-row{display:flex;align-items:center;gap:var(--space-3);padding:11px var(--space-3);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--dur-fast) var(--ease-out)}.task-row:hover{background:var(--surface-hover)}.task-row-main{flex:1;min-width:0}.task-row-title{font-weight:500}.task-row-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:3px}.day-group{margin-bottom:var(--space-4)}.day-group-head{display:flex;align-items:center;gap:var(--space-2);margin-bottom:6px;color:var(--text-dim);font-size:12.5px;font-weight:600}.task-card{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-sm);padding:11px 13px;margin-bottom:var(--space-2);cursor:pointer;box-shadow:var(--elev-1);transition:box-shadow var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.task-card:hover{box-shadow:var(--elev-2);border-color:var(--border)}.task-card-title{font-weight:500;margin-bottom:7px;line-height:1.55}.task-card-labels{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:7px}.task-label-dot{height:5px;width:26px;border-radius:99px}.task-card-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.task-card-foot{display:flex;align-items:center;gap:6px;margin-top:9px}.board{display:flex;gap:var(--space-3);align-items:flex-start;overflow-x:auto;padding:4px var(--space-5) var(--space-5);min-height:0}.board-list{width:292px;flex:none;background:var(--surface-2);border:1px solid var(--border-soft);border-radius:var(--radius);display:flex;flex-direction:column;max-height:100%}.board-list-head{display:flex;align-items:center;gap:var(--space-2);padding:11px var(--space-3);border-bottom:1px solid var(--border-soft);font-weight:600}.board-list-head .count{min-width:22px;padding:0 6px;border-radius:99px;background:var(--surface-3);color:var(--text-dim);font-size:11.5px;font-weight:600;text-align:center}.board-list-body{padding:var(--space-2);overflow-y:auto;flex:1;min-height:60px}.board-list-foot{padding:0 var(--space-2) var(--space-2)}.add-list-form{width:292px;flex:none}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);background:#03060c8c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:var(--space-4);animation:fade-in var(--dur) var(--ease-out)}.modal{width:100%;max-height:calc(100dvh - 2 * var(--space-4));display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-lg);box-shadow:var(--elev-3);animation:modal-in var(--dur-slow) var(--ease-out)}.modal-sm{max-width:420px}.modal-md{max-width:620px}.modal-lg{max-width:900px}.modal-head{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border-soft);flex:none}.modal-title{flex:1;font-size:16px;font-weight:600}.modal-close{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:none;background:transparent;border-radius:var(--radius-sm);color:var(--text-dim);cursor:pointer;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.modal-close:hover{background:var(--surface-hover);color:var(--text)}.modal-body{padding:var(--space-5);overflow-y:auto;flex:1}.modal-foot{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);border-top:1px solid var(--border-soft);flex:none;flex-wrap:wrap}.modal-foot .spacer{flex:1}@keyframes fade-in{0%{opacity:0}}@keyframes modal-in{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:none}}.dropdown{position:relative}.dropdown-menu{position:absolute;top:calc(100% + 6px);inset-inline-end:0;z-index:var(--z-dropdown);min-width:208px;padding:5px;background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);box-shadow:var(--elev-3);animation:menu-in var(--dur-fast) var(--ease-out)}@keyframes menu-in{0%{opacity:0;transform:translateY(-5px)}}.dropdown-item{display:flex;align-items:center;gap:var(--space-2);width:100%;min-height:38px;padding:8px 11px;border:none;background:none;border-radius:var(--radius-xs);color:var(--text);text-align:start;cursor:pointer;transition:background var(--dur-fast) var(--ease-out)}.dropdown-item:hover{background:var(--surface-hover)}.dropdown-item.danger{color:var(--red)}.dropdown-item.danger:hover{background:var(--red-soft)}.dropdown-divider{height:1px;background:var(--border-soft);margin:5px 0}.datepicker{position:relative}.datepicker-panel{position:absolute;top:calc(100% + 6px);inset-inline-start:0;z-index:var(--z-dropdown);width:288px;padding:var(--space-3);background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);box-shadow:var(--elev-3);animation:menu-in var(--dur-fast) var(--ease-out)}.datepicker-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin-bottom:var(--space-2)}.datepicker-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.datepicker-weekday{text-align:center;color:var(--text-faint);font-size:11px;padding:4px 0}.datepicker-day{min-height:34px;border:none;background:none;border-radius:var(--radius-xs);color:var(--text);cursor:pointer;transition:background var(--dur-fast) var(--ease-out)}.datepicker-day:hover:not(:disabled){background:var(--surface-hover)}.datepicker-day.today{color:var(--brand-text);font-weight:700}.datepicker-day.selected{background:var(--brand);color:var(--on-brand);font-weight:600}.datepicker-day.muted{color:var(--text-faint);opacity:.45}.datepicker-foot{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border-soft)}.notes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(262px,1fr));gap:var(--space-3)}.note-card{padding:var(--space-4);border-radius:var(--radius);border:1px solid rgba(0,0,0,.08);color:#1e293b;cursor:pointer;box-shadow:var(--elev-1);transition:box-shadow var(--dur) var(--ease-out),transform var(--dur) var(--ease-out)}.note-card:hover{box-shadow:var(--elev-2);transform:translateY(-2px)}.note-pin{border:none;background:none;cursor:pointer;opacity:.45;color:inherit;padding:4px;border-radius:var(--radius-xs)}.note-pin.on,.note-pin:hover{opacity:1}.note-checklist{margin-top:var(--space-2)}.note-checklist-item{display:flex;align-items:center;gap:6px;font-size:12.5px}.note-checklist-item.done{opacity:.55;text-decoration:line-through}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:12px var(--space-3);text-align:start;border-bottom:1px solid var(--border-soft)}.table th{position:sticky;top:0;z-index:var(--z-sticky);background:var(--surface-2);color:var(--text-dim);font-weight:600;font-size:12px}.table tbody tr{transition:background var(--dur-fast) var(--ease-out)}.table tbody tr:hover{background:var(--surface-hover)}.table tbody tr:last-child td{border-bottom:none}.list-line{padding:10px 0;border-bottom:1px solid var(--border-soft)}.list-line:last-child{border-bottom:none}.auth-page{min-height:100dvh;display:grid;place-items:center;padding:var(--space-4);background:radial-gradient(90% 70% at 50% 0%,var(--brand-soft) 0%,transparent 60%),var(--bg)}.auth-card{width:100%;max-width:396px;padding:var(--space-6);background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-lg);box-shadow:var(--elev-3)}.auth-brand{display:flex;align-items:center;justify-content:center;gap:var(--space-2);font-size:24px;font-weight:800;margin-bottom:6px}.auth-sub{text-align:center;color:var(--text-dim);margin-bottom:var(--space-5);font-size:13px}.auth-switch{text-align:center;margin-top:var(--space-4);color:var(--text-dim);font-size:13px}.toast-stack{position:fixed;bottom:var(--space-5);inset-inline-start:var(--space-5);z-index:var(--z-toast);display:flex;flex-direction:column;gap:var(--space-2);pointer-events:none}.toast{display:flex;align-items:center;gap:var(--space-2);min-width:244px;max-width:380px;padding:11px var(--space-4);background:var(--surface);border:1px solid var(--border-soft);border-inline-start:3px solid var(--text-faint);border-radius:var(--radius-sm);box-shadow:var(--elev-3);animation:toast-in var(--dur-slow) var(--ease-out)}.toast.ok{border-inline-start-color:var(--green)}.toast.error{border-inline-start-color:var(--red)}@keyframes toast-in{0%{opacity:0;transform:translateY(10px) scale(.97)}}.global-search{position:relative}.search-field{position:relative;display:flex;align-items:center}.search-field .icon-lead{position:absolute;inset-inline-start:11px;color:var(--text-faint);pointer-events:none}.search-input{padding-inline-end:66px;width:236px;min-height:36px;padding-inline-start:36px;background:var(--surface-2);transition:width var(--dur) var(--ease-out),border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.search-input:focus{width:300px}.search-kbd{position:absolute;inset-inline-end:8px;padding:1px 6px;border:1px solid var(--border);border-radius:var(--radius-xs);color:var(--text-faint);font-size:10.5px;pointer-events:none}.search-menu,.notif-menu{width:356px;max-height:min(70vh,520px);overflow-y:auto;padding:0}.search-section-head{position:sticky;top:0;z-index:1;display:flex;align-items:center;gap:6px;padding:9px 13px 5px;background:var(--surface);color:var(--text-faint);font-size:11px;font-weight:600}.search-item{display:flex;align-items:center;gap:var(--space-2);width:100%;min-height:40px;padding:8px 13px;border:none;background:none;color:var(--text);text-align:start;cursor:pointer;transition:background var(--dur-fast) var(--ease-out)}.search-item:hover{background:var(--surface-hover)}.search-item .truncate{flex:1;min-width:0}.bell-badge{position:absolute;top:4px;inset-inline-end:4px;min-width:17px;height:17px;padding:0 4px;border-radius:99px;background:var(--brand);border:2px solid var(--surface);color:#fff;font-size:10px;font-weight:600;line-height:13px;text-align:center}.notif-head{display:flex;align-items:center;gap:var(--space-2);padding:11px var(--space-3);border-bottom:1px solid var(--border-soft)}.notif-body{max-height:420px;overflow-y:auto}.notif-item{display:flex;align-items:flex-start;gap:11px;width:100%;padding:11px var(--space-3);border:none;border-bottom:1px solid var(--border-soft);background:none;color:var(--text);text-align:start;cursor:pointer;transition:background var(--dur-fast) var(--ease-out)}.notif-item:hover{background:var(--surface-hover)}.notif-item.unread{background:var(--brand-soft)}.notif-icon{width:32px;height:32px;display:grid;place-items:center;border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text-dim);flex:none}.notif-item.unread .notif-icon{background:var(--surface);color:var(--brand-text)}.notif-text{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.notif-text>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notif-x{flex:none;display:grid;place-items:center;width:26px;height:26px;border-radius:var(--radius-xs);color:var(--text-faint)}.notif-x:hover{background:var(--surface-3);color:var(--red)}.timeline{position:relative;padding-inline-start:34px}.timeline:before{content:"";position:absolute;inset-block:14px;inset-inline-start:15px;width:2px;background:var(--border-soft)}.timeline-item{position:relative;margin-bottom:var(--space-3)}.timeline-dot{position:absolute;inset-inline-start:-34px;top:13px;width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:var(--surface);border:2px solid var(--border-soft);color:var(--text-dim)}.letter-body{white-space:pre-wrap;line-height:2.1;padding:var(--space-4);min-height:130px;background:var(--surface-2);border:1px solid var(--border-soft);border-radius:var(--radius-sm);max-width:72ch}.group-head{display:flex;align-items:center;gap:var(--space-2);width:100%;min-height:40px;padding:7px 4px;margin-bottom:var(--space-2);border:none;border-bottom:1px solid var(--border-soft);background:none;color:var(--text);text-align:start;cursor:pointer;transition:color var(--dur-fast) var(--ease-out)}.group-head:hover{color:var(--brand-text)}.group-head .chevron{transition:transform var(--dur) var(--ease-out)}.group-head .chevron.collapsed{transform:rotate(-90deg)}.chat-shell{display:flex;height:100%;min-height:0;position:relative}.chat-list{width:306px;flex:none;display:flex;flex-direction:column;background:var(--surface);border-inline-start:1px solid var(--border-soft)}.chat-list-head{display:flex;gap:var(--space-2);padding:var(--space-3);border-bottom:1px solid var(--border-soft)}.chat-list-body{flex:1;overflow-y:auto;padding:6px}.chat-row{display:flex;gap:11px;width:100%;padding:10px 11px;margin-bottom:2px;border:none;border-radius:var(--radius-sm);background:none;color:var(--text);text-align:start;cursor:pointer;transition:background var(--dur-fast) var(--ease-out)}.chat-row:hover{background:var(--surface-hover)}.chat-row-avatar{position:relative;flex:none}.chat-row-main{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.presence-dot{position:absolute;bottom:0;inset-inline-end:0;width:11px;height:11px;border-radius:50%;background:var(--green);border:2px solid var(--surface)}.unread-badge{display:inline-grid;place-items:center;min-width:19px;height:19px;padding:0 6px;border-radius:99px;background:var(--brand);color:#fff;font-size:11px;font-weight:600;flex:none}.chat-pane{flex:1;display:flex;flex-direction:column;min-width:0;background:var(--bg)}.chat-head{display:flex;align-items:center;gap:11px;flex:none;padding:11px var(--space-4);background:var(--surface);border-bottom:1px solid var(--border-soft)}.chat-head-main{display:flex;flex-direction:column;min-width:0}.chat-pinned{display:flex;align-items:center;gap:6px;flex:none;padding:7px var(--space-4);background:var(--amber-soft);color:var(--amber);border-bottom:1px solid var(--border-soft);font-size:12.5px}.chat-body{flex:1;overflow-y:auto;padding:var(--space-4)}.chat-day{display:flex;align-items:center;gap:var(--space-3);margin:var(--space-4) 0;color:var(--text-faint);font-size:11.5px}.chat-day:before,.chat-day:after{content:"";flex:1;height:1px;background:var(--border-soft)}.chat-msg{display:flex;align-items:flex-end;gap:var(--space-2);margin-bottom:var(--space-2)}.chat-msg.mine{flex-direction:row-reverse}.chat-bubble{position:relative;max-width:min(620px,76%);padding:9px 13px;background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);box-shadow:var(--elev-1)}.chat-msg.mine .chat-bubble{background:var(--brand-soft);border-color:transparent}.chat-sender{font-size:12px;font-weight:600;color:var(--brand-text);margin-bottom:3px}.chat-text{white-space:pre-wrap;overflow-wrap:anywhere}.chat-quote{padding:5px 9px;margin-bottom:6px;border-inline-start:3px solid var(--brand);background:var(--surface-2);border-radius:var(--radius-xs)}.chat-meta{display:flex;align-items:center;gap:6px;justify-content:flex-end;margin-top:3px}.message-ticks{direction:ltr;letter-spacing:-3px;padding-inline-end:3px;color:var(--text-faint);font-weight:800}.message-ticks.read,.receipt-read{color:#22a7f0}.message-detail-sent{display:flex;justify-content:space-between;gap:var(--space-3);padding-bottom:var(--space-3);border-bottom:1px solid var(--border-soft)}.message-receipt-list{display:grid;gap:var(--space-3);margin-top:var(--space-3)}.message-receipt-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2);border-radius:var(--radius-md);background:var(--surface-muted)}.chat-poll{display:grid;gap:8px;min-width:min(320px,70vw)}.poll-option{position:relative;overflow:hidden;display:flex;justify-content:space-between;gap:18px;width:100%;padding:9px 11px;border:1px solid var(--border);border-radius:9px;background:var(--surface-2);color:var(--text);cursor:pointer;text-align:start}.poll-option span{position:relative;z-index:1}.poll-option span:last-of-type{color:var(--text-muted);font-size:12px;white-space:nowrap}.poll-option i{position:absolute;inset:0 auto 0 0;background:color-mix(in srgb,var(--primary) 16%,transparent);transition:width .2s ease}.poll-option.selected{border-color:var(--primary)}.chat-image{max-width:320px;max-height:320px;border-radius:var(--radius-sm);display:block}.chat-file{display:flex;align-items:center;gap:7px;padding:7px 11px;background:var(--surface-2);border-radius:var(--radius-sm)}.chat-image-button{display:block;padding:0;border:0;background:transparent;cursor:pointer}.chat-audio{display:flex;align-items:center;gap:var(--space-2);min-width:min(360px,70vw)}.chat-audio audio{width:100%;min-width:180px;height:38px}.chat-reactions{display:flex;flex-wrap:wrap;gap:4px;margin-top:5px}.reaction-chip{padding:1px 9px;background:var(--surface-2);border:1px solid var(--border-soft);border-radius:99px;font-size:12px;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.reaction-chip:hover{border-color:var(--brand)}.reaction-chip:active{transform:scale(.94)}.reaction-pick{min-width:34px;min-height:34px;border:none;background:none;border-radius:var(--radius-xs);font-size:18px;cursor:pointer;transition:background var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.reaction-pick:hover{background:var(--surface-hover);transform:scale(1.12)}.chat-actions{position:absolute;top:3px;inset-inline-start:-30px;opacity:0;transition:opacity var(--dur-fast) var(--ease-out)}.chat-msg:hover .chat-actions,.chat-actions:focus-within{opacity:1}.chat-action-btn{display:grid;place-items:center;width:26px;height:26px;border:none;border-radius:50%;background:var(--surface-3);color:var(--text-dim);cursor:pointer}.chat-action-btn:hover{background:var(--border);color:var(--text)}.chat-system{max-width:70%;margin:var(--space-2) auto;padding:4px 13px;border-radius:99px;background:var(--surface-2);color:var(--text-faint);font-size:11.5px;text-align:center}.chat-typing{flex:none;padding:3px var(--space-4);color:var(--text-faint);font-size:11.5px}.chat-composer{flex:none;padding:var(--space-3) var(--space-4);background:var(--surface);border-top:1px solid var(--border-soft)}.voice-recording{flex:1;min-height:42px;display:flex;align-items:center;gap:var(--space-2);padding:0 var(--space-3);border:1px solid color-mix(in srgb,var(--danger) 45%,var(--border));border-radius:var(--radius-lg);background:color-mix(in srgb,var(--danger) 7%,var(--surface))}.recording-dot{width:9px;height:9px;border-radius:50%;background:var(--danger);animation:recording-pulse 1s ease-in-out infinite}@keyframes recording-pulse{50%{opacity:.3;transform:scale(.8)}}.chat-reply-bar{display:flex;align-items:center;gap:var(--space-2);margin-bottom:7px;padding:5px 11px;background:var(--surface-2);border-inline-start:3px solid var(--brand);border-radius:var(--radius-xs);font-size:12.5px}.chat-input{min-height:40px;max-height:160px;resize:none}.color-swatches{display:flex;flex-wrap:wrap;gap:7px}.color-swatch{width:30px;height:30px;border:2px solid transparent;border-radius:50%;cursor:pointer;transition:transform var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.color-swatch:hover{transform:scale(1.12)}.color-swatch.selected{border-color:var(--text);transform:scale(1.12)}.theme-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-2)}.theme-option{min-height:70px;display:grid;place-items:center;gap:4px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text-dim);cursor:pointer}.theme-option.active{color:var(--brand);border-color:var(--brand);background:var(--brand-soft)}.wallpaper-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:var(--space-2)}.wallpaper-swatch{aspect-ratio:1;border:2px solid transparent;border-radius:50%;cursor:pointer;background:var(--surface-3)}.wallpaper-swatch.active{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.wallpaper-swatch[data-wallpaper=waves]{background:linear-gradient(135deg,#2563eb,#7c3aed)}.wallpaper-swatch[data-wallpaper=sky]{background:linear-gradient(135deg,#38bdf8,#1d4ed8)}.wallpaper-swatch[data-wallpaper=graphite]{background:repeating-linear-gradient(135deg,#334155 0,#334155 4px,#64748b 4px,#64748b 8px)}.task-create-tools{display:flex;gap:var(--space-2);padding:var(--space-2);margin-bottom:var(--space-3);border:1px solid var(--border-soft);border-radius:var(--radius-sm);background:var(--surface-2)}.template-panel{padding:var(--space-3);margin-bottom:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2)}.task-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-3);padding:var(--space-2) 0 var(--space-3)}.task-tab-editor{display:grid;gap:var(--space-2);margin-top:var(--space-3)}.task-tab-editor-row{display:flex;align-items:center;gap:var(--space-1);min-height:48px;padding:var(--space-2) var(--space-3);border:1px solid var(--border-soft);border-radius:var(--radius-md);background:var(--surface-muted)}.task-tab-editor-row.hidden{opacity:.58}.minutes-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--space-3)}.minute-card{display:flex;flex-direction:column;align-items:stretch;gap:var(--space-2);padding:var(--space-4);text-align:start;color:inherit;cursor:pointer}.minute-card:hover{border-color:var(--blue);transform:translateY(-1px)}.feedback-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--space-3)}.feedback-card{display:flex;flex-direction:column;align-items:stretch;padding:0;overflow:hidden;text-align:start;color:inherit;cursor:pointer}.feedback-card:hover{border-color:var(--blue);transform:translateY(-1px)}.feedback-card-body{display:flex;flex-direction:column;gap:6px;padding:var(--space-3)}.feedback-thumb{position:relative;width:100%;aspect-ratio:16/10;background:var(--surface-3);overflow:hidden}.feedback-thumb.empty{display:flex;align-items:center;justify-content:center}.feedback-thumb img{width:100%;height:100%;object-fit:cover;display:block}.feedback-pin{position:absolute;width:16px;height:16px;margin:-8px 0 0 -8px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:var(--red);border:2px solid #fff;box-shadow:0 1px 4px #0006}.feedback-picker{position:relative;cursor:crosshair;border-radius:var(--radius);overflow:hidden;border:1px solid var(--border-soft)}.feedback-picker img{width:100%;display:block}.feedback-comments{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-2);max-height:260px;overflow-y:auto}.feedback-comment{display:flex;gap:var(--space-2)}.feedback-comment-body{flex:1;min-width:0}.feedback-comment.internal .feedback-comment-body{background:var(--amber-soft);border-radius:var(--radius);padding:6px 10px}.bookmark-on{color:var(--amber)!important;background:var(--amber-soft)!important}.bookmark-row{width:100%;border:0;border-bottom:1px solid var(--border-soft);background:transparent;color:inherit;text-align:start}.monitoring-stat{padding:14px 16px}.section-title{margin:var(--space-5) 0 var(--space-2);font-size:16px}.section-head{display:flex;align-items:center;gap:var(--space-2)}.section-head .section-title{flex:1}.activity-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:var(--space-3)}.activity-card{display:grid;gap:2px;padding:var(--space-4)}.activity-card strong{font-size:24px;color:var(--blue)}.activity-card span{font-weight:600}.activity-card small{color:var(--text-faint)}.report-grid{display:grid;gap:var(--space-2)}.report-table{overflow-x:auto}.danger-text{color:var(--red)}@media print{.no-print,.sidebar,.app-header{display:none!important}body,.app-main{background:#fff!important;color:#111!important}.app-content{margin:0!important}.card{box-shadow:none!important;border-color:#bbb!important}}.monitoring-filters{padding:14px;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin-bottom:14px}.monitoring-filters label{display:grid;gap:5px}.completion-chart{min-height:210px;display:flex;align-items:flex-end;gap:14px;overflow-x:auto;padding:20px 8px 4px}.pagination{display:flex;align-items:center;justify-content:center;gap:14px;padding:18px 0 4px}.mention-strip{display:flex;align-items:center;gap:6px;overflow-x:auto;padding:4px 0}.mention-chip{border:1px solid var(--border);color:var(--brand-text);background:var(--brand-soft);border-radius:999px;padding:3px 8px;white-space:nowrap;cursor:pointer}.mention{color:var(--brand-text);background:var(--brand-soft);border-radius:5px;padding:0 3px}.completion-column{min-width:70px;display:flex;flex-direction:column;align-items:center;gap:6px;color:var(--text-muted);font-size:11px}.completion-column strong{color:var(--text)}.completion-bar{width:34px;min-height:8px;border-radius:7px 7px 2px 2px;background:linear-gradient(180deg,var(--green),var(--blue))}.board-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.board-tools .btn.active{color:var(--brand);border-color:color-mix(in srgb,var(--brand) 45%,var(--border));background:var(--brand-soft)}.board.compact .task-card{padding-block:7px}.board.compact .task-card .task-description,.board.compact .task-card .task-meta-secondary{display:none}.task-card-progress{margin:-4px 10px 8px}.row{display:flex;align-items:center;gap:var(--space-2)}.row-wrap{flex-wrap:wrap}.col{display:flex;flex-direction:column;gap:var(--space-2)}.spacer{flex:1}.grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:var(--space-4);align-items:start}.muted{color:var(--text-dim)}.faint{color:var(--text-faint)}.small{font-size:12.5px}.tiny{font-size:11.5px}.strong{font-weight:600}.strike{text-decoration:line-through;color:var(--text-faint)}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dot{width:9px;height:9px;border-radius:50%;flex:none;background:var(--text-faint)}.dot-unread{width:7px;height:7px;border-radius:50%;background:var(--brand);flex:none}.mt-1{margin-top:var(--space-2)}.mt-2{margin-top:var(--space-4)}.mt-3{margin-top:var(--space-5)}.mb-1{margin-bottom:var(--space-2)}.mb-2{margin-bottom:var(--space-4)}.hidden-sm{display:initial}@media (min-width: 901px){.table th.hidden-sm,.table td.hidden-sm{display:table-cell}}@keyframes rise{0%{opacity:0;transform:translateY(8px)}}.glass-card,.card,.panel,.stat,.board-list,.auth-card,.chat-list,.chat-head,.chat-composer,.task-toolbar-card{background:var(--surface);border:1px solid var(--border-soft);box-shadow:var(--elev-1),var(--glass-hl);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur)}.glass-card{border-radius:var(--radius-lg);padding:var(--space-4)}.card,.panel,.stat,.board-list{border-radius:var(--radius)}.card-hover:hover,.stat:hover{border-color:var(--border)}.modal,.dropdown-menu,.datepicker-panel,.toast{background:var(--solid);border:1px solid var(--border);box-shadow:var(--elev-3),var(--glass-hl)}.modal-backdrop{background:#02050c99;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}:root[data-theme=light] .modal-backdrop{background:#0f172a59}.dropdown-menu.up{top:auto;bottom:calc(100% + 6px)}.dropdown-menu{max-width:calc(100vw - 24px);border-radius:16px}.dropdown-item{border-radius:10px}.btn{border-radius:12px;background:var(--surface-3)}.btn:hover:not(:disabled){background:var(--border)}.btn-primary{background:var(--brand-grad);box-shadow:0 6px 16px -8px var(--brand),inset 0 1px #ffffff40}.btn-primary:hover:not(:disabled){background:var(--brand-grad);filter:brightness(1.08)}.btn-ghost,.btn-quiet{background:transparent}.input,.textarea,.select{border-radius:12px;background:var(--surface-2);border-color:var(--border-soft)}.input:hover:not(:disabled),.textarea:hover:not(:disabled),.select:hover:not(:disabled){border-color:var(--border)}.select option{background:var(--solid);color:var(--text)}.chip{background:var(--surface-3)}.avatar-group .avatar{border-color:var(--solid)}.page-head{margin-bottom:var(--space-4)}.page-title{font-size:24px}.tabs{gap:6px;border-bottom:none;padding-bottom:2px;margin-bottom:var(--space-4);flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.tabs::-webkit-scrollbar{display:none}.tab{flex:none;border:1px solid var(--border-soft);border-radius:99px;background:var(--surface);margin:0;padding:7px 15px;min-height:38px;backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur)}.tab.active{background:var(--brand-grad);border-color:transparent;color:#fff;box-shadow:0 6px 16px -8px var(--brand)}.tab.active .count{color:#fffc}.segment{background:var(--surface);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur)}.segment.active{background:var(--brand-grad);border-color:transparent}.segmented>button:not(.segment){min-height:34px;padding:6px 13px;border:1px solid var(--border-soft);border-radius:99px;background:var(--surface);color:var(--text-dim);font-size:12.5px;font-weight:500;cursor:pointer;backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);transition:all var(--dur-fast) var(--ease-out)}.segmented>button:not(.segment):hover{border-color:var(--border);color:var(--text)}.segmented>button.active:not(.segment){background:var(--brand-grad);border-color:transparent;color:#fff}.table th{background:var(--surface-2)}.table th:first-child{border-top-right-radius:10px}.table th:last-child{border-top-left-radius:10px}.task-card,.chat-bubble{background:var(--surface-2);border-color:var(--border-soft);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:var(--elev-1);border-radius:14px}.task-card:hover{background:var(--surface-hover)}.board-list{background:var(--surface)}.board-list-head{border-radius:var(--radius) var(--radius) 0 0;color:#fff}.chat-msg.mine .chat-bubble{background:var(--brand-soft);border-color:var(--brand-ring)}.chat-pane{background:transparent}.chat-shell{border-radius:var(--radius-lg);overflow:hidden}.chat-list{border-radius:var(--radius-lg) 0 0 var(--radius-lg);border-inline-start:none}.chat-head,.chat-composer{border-radius:0}.chat-row.active{background:var(--brand-soft)}.reaction-chip,.chat-file,.chat-quote,.chat-system{background:var(--surface-2)}.sidebar-link .unread-badge{margin-inline-start:auto}.bell-badge{border-color:var(--bg)}.unread-badge{background:var(--brand-grad)}.auth-page{background:radial-gradient(90% 70% at 50% 0%,var(--brand-soft) 0%,transparent 60%),var(--bg)}.auth-card{border-radius:26px;background:var(--surface)}.stat-icon{background:var(--surface-2)}.wallpaper-swatch[data-wallpaper]:not([data-wallpaper=none]){background:linear-gradient(135deg,var(--orb-1),var(--orb-2))}.wallpaper-swatch{background:var(--surface-3);font-size:10px;display:grid;place-items:center;color:var(--text-dim)}.sidebar{transition:width var(--dur-slow) var(--ease-out),padding var(--dur-slow) var(--ease-out)}@media (min-width: 901px){.app-shell[data-collapsed=true] .sidebar{width:76px;padding-inline:8px}.app-shell[data-collapsed=true] .sidebar-brand{justify-content:center}.app-shell[data-collapsed=true] .sidebar-brand-text,.app-shell[data-collapsed=true] .sidebar-section,.app-shell[data-collapsed=true] .sidebar-link>span:not(.unread-badge),.app-shell[data-collapsed=true] .workspace-switch b,.app-shell[data-collapsed=true] .workspace-switch .icon:last-child,.app-shell[data-collapsed=true] .switch-row>span,.app-shell[data-collapsed=true] .switch-row>.icon,.app-shell[data-collapsed=true] .user-card-text,.app-shell[data-collapsed=true] .user-card>.icon{display:none}.app-shell[data-collapsed=true] .workspace-switch,.app-shell[data-collapsed=true] .user-card,.app-shell[data-collapsed=true] .sidebar-link{justify-content:center;padding-inline:0}.app-shell[data-collapsed=true] .sidebar-link .unread-badge{position:absolute;top:3px;inset-inline-end:6px;min-width:16px;height:16px;font-size:10px;padding:0 4px}.app-shell[data-collapsed=true] .switch-row{justify-content:center}.app-shell[data-collapsed=true] .sidebar-scroll>div+div{margin-top:10px;padding-top:10px;border-top:1px solid var(--border-soft)}.sidebar-scroll{overflow-x:hidden}}.dash-top{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:var(--space-4);margin-bottom:var(--space-4)}.dash-side{display:flex;flex-direction:column;gap:var(--space-4);min-width:0}.hero-card{padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-4);min-width:0}.kpi-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-3)}.kpi{display:flex;flex-direction:column;gap:4px;padding:4px var(--space-3);background:none;border:none;border-inline-start:1px solid var(--border-soft);text-align:start;color:inherit;cursor:pointer;border-radius:12px;transition:background var(--dur-fast) var(--ease-out)}.kpi:first-child{border-inline-start:none}.kpi:hover{background:var(--surface-hover)}.kpi-label{display:flex;align-items:center;gap:6px;color:var(--text-dim);font-size:12px}.kpi-value{font-size:30px;font-weight:800;line-height:1.2;letter-spacing:-.02em}.chart-head{display:flex;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-3);flex-wrap:wrap}.seg{display:inline-flex;padding:3px;gap:2px;background:var(--surface-2);border:1px solid var(--border-soft);border-radius:99px}.seg button{border:none;background:none;padding:5px 12px;min-height:30px;border-radius:99px;color:var(--text-dim);font-size:12px;font-weight:600;cursor:pointer;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.seg button.active{background:var(--brand-grad);color:#fff;box-shadow:0 4px 12px -6px var(--brand)}.chart-box{position:relative;height:210px;touch-action:pan-y}.chart-svg{width:100%;height:100%;display:block;overflow:visible}.chart-line{filter:drop-shadow(0 4px 10px var(--brand-ring))}.chart-cursor{position:absolute;top:0;bottom:0;width:1px;background:var(--border);pointer-events:none}.chart-dot{position:absolute;width:12px;height:12px;margin:-6px 0 0 -6px;border-radius:50%;background:var(--brand);border:2px solid #fff;box-shadow:0 0 0 4px var(--brand-ring);pointer-events:none}.chart-tip{position:absolute;top:4px;transform:translate(-50%);display:flex;flex-direction:column;gap:1px;padding:7px 11px;background:var(--solid);border:1px solid var(--border);border-radius:10px;box-shadow:var(--elev-2);font-size:11.5px;white-space:nowrap;pointer-events:none}.chart-tip span{color:var(--text-dim)}.chart-legend{display:flex;gap:var(--space-4);margin-top:var(--space-2);color:var(--text-dim)}.chart-legend span{display:inline-flex;align-items:center;gap:6px}.lg-line{width:18px;height:0;border-top:2.5px solid var(--brand);border-radius:2px}.lg-line.dashed{border-top:1.5px dashed var(--text-faint)}.goal-card,.live-card{display:flex;flex-direction:column;gap:var(--space-3)}.goal-body{display:flex;align-items:center;gap:var(--space-4)}.goal-ring{position:relative;width:104px;height:104px;flex:none}.goal-ring svg{width:100%;height:100%;display:block}.goal-arc{transition:stroke-dasharray .8s var(--ease-out);filter:drop-shadow(0 0 6px var(--brand-ring))}.goal-ring>span{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.25}.goal-ring b{font-size:19px;font-weight:800}.goal-ring i{font-style:normal;font-size:10.5px;color:var(--text-faint)}.goal-facts{margin:0;flex:1;min-width:0;display:grid;gap:7px}.goal-facts div{display:flex;justify-content:space-between;gap:var(--space-2);font-size:12.5px}.goal-facts dt{color:var(--text-dim)}.goal-facts dd{margin:0;font-weight:700}.live-number{font-size:34px;font-weight:800;line-height:1}.panel-head{padding:var(--space-3) var(--space-4)}.panel-head b{font-size:14px}.panel-head .count{margin-inline-start:auto}.panel-dot{width:10px;height:10px;border-radius:50%;flex:none;box-shadow:0 0 10px currentColor}.dash-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));align-items:start}.hide-xs{display:initial}@media (max-width: 1180px){.dash-top{grid-template-columns:1fr}.dash-side{flex-direction:row}.dash-side>*{flex:1}}@media (max-width: 1024px){.search-input{width:180px}.search-input:focus{width:220px}}@media (max-width: 900px){:root{--header-height: 56px;--glass-blur: blur(14px) saturate(140%)}.app-shell{padding:calc(8px + var(--safe-t)) 10px 0;gap:0}.app-col{gap:8px}.app-header{min-height:var(--header-height);padding:0}.header-title b{font-size:15px}.menu-btn{display:inline-flex}.sidebar{position:fixed;z-index:var(--z-modal);top:calc(8px + var(--safe-t));bottom:calc(8px + var(--safe-b));inset-inline-start:8px;width:min(86vw,330px);background:var(--solid);transform:translate(115%);visibility:hidden;transition:transform var(--dur-slow) var(--ease-out),visibility 0s linear var(--dur-slow)}html[dir=rtl] .sidebar{transform:translate(115%)}html[dir=ltr] .sidebar{transform:translate(-115%)}.sidebar.open{transform:translate(0)!important;visibility:visible;transition-delay:0s}.sidebar-close{display:inline-flex}.sidebar-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:calc(var(--z-modal) - 1);background:#02050c8c;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);animation:fade-in var(--dur) var(--ease-out)}.sidebar-link{min-height:46px}.main{border-radius:18px}.route-fade{padding-bottom:calc(var(--bottom-nav-height) + var(--safe-b) + 22px)}.route-fade.route-fill{height:100%}.app-shell[data-immersive=true] .route-fade{padding-bottom:0}.page{padding:2px 2px 8px}.page-title{font-size:20px}.page-head .input{max-width:none!important;flex:1 1 100%}.board{padding:4px 2px var(--space-4);scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}.board-list{width:min(84vw,310px);scroll-snap-align:center}.add-list-form{width:min(84vw,310px)}.modal-body,.modal-head,.modal-foot{padding-inline:var(--space-4)}.hidden-sm{display:none}.grid-2{grid-template-columns:1fr}.activity-grid{grid-template-columns:repeat(3,1fr)}.datepicker-panel{width:min(288px,calc(100vw - 32px))}.bottom-nav{position:fixed;z-index:var(--z-drawer);inset-inline:10px;bottom:calc(8px + var(--safe-b));height:var(--bottom-nav-height);display:flex;align-items:stretch;gap:2px;padding:6px;background:var(--surface);border:1px solid var(--border);border-radius:24px;box-shadow:var(--elev-3),var(--glass-hl);backdrop-filter:blur(24px) saturate(160%);-webkit-backdrop-filter:blur(24px) saturate(160%)}:root[data-theme=dark] .bottom-nav{background:#0e1421c7}.app-shell[data-immersive=true] .bottom-nav{display:none}.bottom-link{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border:none;background:none;border-radius:18px;color:var(--text-dim);font-size:10.5px;font-weight:600;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.bottom-link:active{transform:scale(.94)}.bottom-link.active{background:var(--brand-grad);color:#fff;box-shadow:0 6px 16px -8px var(--brand)}.bottom-icon{position:relative;display:grid;place-items:center}.bottom-badge{position:absolute;top:-6px;inset-inline-start:10px;min-width:16px;height:16px;padding:0 4px;border-radius:99px;background:var(--red);color:#fff;font-size:9.5px;line-height:16px;text-align:center;border:2px solid var(--solid);box-sizing:content-box}.chat-list{width:100%;border:none;border-radius:var(--radius-lg)}.chat-list.has-active{display:none}.chat-pane{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--solid)}.chat-shell{border-radius:var(--radius-lg)}.chat-composer{padding-bottom:calc(var(--space-3) + var(--safe-b))}.search-menu,.notif-menu{width:min(92vw,356px)}.orb{opacity:calc(var(--orb-opacity) * .85);filter:blur(34px) saturate(.9)}.orb-gold{top:-12vmin;inset-inline-end:-4vmin;width:36vmin;height:36vmin}.orb-blue{width:62vmin;height:62vmin}.orb-teal{width:54vmin;height:54vmin}.orb-green{width:30vmin;height:30vmin}.page-head .btn-primary{flex:1 1 auto}.task-toolbar{gap:var(--space-2)}.task-toolbar>label{flex:1 1 46%;flex-direction:column;align-items:stretch;gap:4px}.task-toolbar>label .select{width:100%;min-width:0}.task-toolbar>.spacer{display:none}.toast-stack{inset-inline:var(--space-3);bottom:calc(var(--bottom-nav-height) + var(--safe-b) + 20px)}.toast{max-width:none;min-width:0}.dash-top{gap:var(--space-3)}.dash-side{flex-direction:column}.hero-card{padding:var(--space-4)}.kpi-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.kpi{border:1px solid var(--border-soft);background:var(--surface-2);padding:10px 12px}.kpi:first-child{border-inline-start:1px solid var(--border-soft)}.kpi-value{font-size:26px}.chart-box{height:170px}}@media (max-width: 640px){.modal-backdrop{align-items:flex-end;padding:0}.modal{max-width:none!important;width:100%;max-height:92dvh;border-radius:24px 24px 0 0;border-bottom:none;animation:sheet-in var(--dur-slow) var(--ease-out);padding-bottom:var(--safe-b)}.modal-head{position:relative;padding-top:22px}.modal-head:before{content:"";position:absolute;top:8px;left:50%;width:38px;height:4px;margin-left:-19px;border-radius:99px;background:var(--border)}.modal-foot .btn{flex:1}.modal-foot .spacer{display:none}.field-row>*{flex:1 1 100%}.input,.textarea,.select,.chat-input{font-size:16px;min-height:44px}.btn{min-height:44px}.btn-sm{min-height:38px}.tab{min-height:40px}}@keyframes sheet-in{0%{transform:translateY(100%)}}@media (max-width: 560px){.hide-xs{display:none!important}.header-title .tiny{display:none}.header-btn{width:40px;height:40px}.create-btn{width:40px;min-width:40px;padding:0;border-radius:50%;min-height:40px}.global-search{position:static}.search-input{width:40px;min-height:40px;height:40px;padding-inline:0;border-radius:50%;cursor:pointer;background:var(--surface)}.search-input::placeholder{color:transparent}.global-search:focus-within .search-field{position:fixed;z-index:calc(var(--z-dropdown) + 1);top:calc(8px + var(--safe-t));inset-inline:10px;height:44px}.global-search:focus-within .search-input{width:100%;height:44px;padding-inline-start:38px;border-radius:14px;cursor:text;background:var(--solid);border-color:var(--brand)}.search-kbd{display:none}.search-menu{inset-inline:var(--space-3);width:auto;position:fixed;top:calc(60px + var(--safe-t))}.notif-menu{position:fixed;inset-inline:var(--space-3);top:calc(var(--header-height) + var(--safe-t) + 14px);width:auto}.page-title{font-size:19px}.chat-bubble{max-width:88%}.activity-grid{grid-template-columns:repeat(2,1fr)}.task-toolbar{align-items:stretch}.task-toolbar .row{justify-content:space-between}.goal-body{gap:var(--space-3)}.goal-ring{width:92px;height:92px}.stat-row{grid-template-columns:repeat(2,1fr)}.stat{padding:var(--space-3)}.notes-grid,.feedback-grid,.minutes-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion: reduce){.orb{animation:none}}.chart-title{display:flex;align-items:baseline;gap:8px;margin:0 0 var(--space-3);font-size:14.5px;font-weight:700}.mon-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4);margin-bottom:var(--space-4);align-items:start}.mon-wide{grid-column:span 2}.mon-single{grid-template-columns:1fr}.glass-card .section-head{margin-bottom:var(--space-2)}.glass-card .section-head .chart-title{flex:1;margin:0}.chart-ticks{display:flex;justify-content:space-between;margin-top:6px}.lg-dot{width:9px;height:9px;border-radius:50%;display:inline-block}.donut{display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap;justify-content:center}.donut-ring{position:relative;flex:none}.donut-ring svg{width:100%;height:100%;display:block}.donut-arc{transition:stroke-dasharray .8s var(--ease-out)}.donut-ring>span{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.25}.donut-ring b{font-size:22px;font-weight:800}.donut-ring i{font-style:normal;font-size:11px;color:var(--text-faint)}.donut-legend{list-style:none;margin:0;padding:0;display:grid;gap:9px;flex:1;min-width:150px}.donut-legend li{display:flex;align-items:center;gap:8px;font-size:12.5px}.donut-legend li i{width:10px;height:10px;border-radius:3px;flex:none}.donut-legend li span{flex:1;color:var(--text-dim)}.donut-legend li em{font-style:normal;color:var(--text-faint);font-size:11.5px;min-width:34px;text-align:end}.barlist{list-style:none;margin:0;padding:0;display:grid;gap:13px}.barlist-top{display:flex;justify-content:space-between;gap:var(--space-2);font-size:12.5px;margin-bottom:5px}.barlist-top span{color:var(--text-dim)}.bar-track{height:8px}.bar-track.stacked{height:10px;gap:2px}.bar-track.stacked .bar-seg{border-radius:99px}.project-bars{display:grid;gap:16px}.project-bar{display:grid;gap:7px}.columns{display:flex;align-items:flex-end;gap:6px;height:190px;overflow-x:auto;padding:4px 2px 0}.column{flex:1 0 28px;min-width:28px;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:4px}.column-bar{width:100%;max-width:34px;border-radius:8px 8px 3px 3px;min-height:2px;transition:height var(--dur-slow) var(--ease-out)}.column-val{min-height:16px;color:var(--text-dim)}.column-label{white-space:nowrap;font-size:10px}@media (max-width: 1180px){.mon-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mon-wide{grid-column:span 2}}@media (max-width: 760px){.mon-grid{grid-template-columns:1fr}.mon-wide{grid-column:auto}.columns{height:160px}}.toast{animation:none}.chat-shell{background:var(--surface);border:1px solid var(--border-soft);box-shadow:var(--elev-2),var(--glass-hl);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur)}.chat-list{background:transparent;border:none;border-inline-end:1px solid var(--border-soft);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none;border-radius:0}.chat-list-head{border-bottom-color:var(--border-soft)}.chat-row{border-radius:14px;padding:11px 12px}.chat-row.active{background:var(--brand-soft);box-shadow:inset 0 0 0 1px var(--brand-ring)}.chat-pane{background:radial-gradient(60% 50% at 85% 0%,var(--brand-soft),transparent 70%),radial-gradient(50% 40% at 10% 100%,rgba(52,211,153,.07),transparent 70%)}.chat-head{background:transparent;border:none;border-bottom:1px solid var(--border-soft);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;padding:12px var(--space-4)}.chat-head-main b{font-size:14.5px}.chat-pinned{background:var(--amber-soft);margin:10px var(--space-4) 0;border:1px solid var(--amber-soft);border-radius:12px}.chat-body{padding:var(--space-4) var(--space-4) var(--space-2);scroll-behavior:smooth}.chat-day{justify-content:center}.chat-day:before,.chat-day:after{display:none}.chat-day{margin:var(--space-3) 0}.chat-day>*,.chat-day{font-weight:600}.chat-day{color:var(--text-dim)}.chat-day:after{display:block;content:none}.chat-msg{margin-bottom:4px;gap:8px}.chat-bubble{max-width:min(560px,78%);padding:8px 13px 6px;background:var(--surface-2);border:1px solid var(--border-soft);border-radius:18px;border-end-start-radius:5px;box-shadow:none;line-height:1.75}:root[data-theme=light] .chat-bubble{background:#fff;box-shadow:var(--elev-1)}.chat-msg.mine .chat-bubble{background:var(--brand-grad);color:#fff;border:none;border-radius:18px;border-end-start-radius:18px;border-end-end-radius:5px;box-shadow:0 8px 20px -12px var(--brand)}.chat-msg.mine .chat-bubble .muted,.chat-msg.mine .chat-bubble .faint,.chat-msg.mine .chat-bubble .tiny{color:#ffffffc7}.chat-msg.mine .chat-bubble a{color:#fff;text-decoration:underline}.chat-msg.mine .chat-quote{background:#ffffff29;border-inline-start-color:#fff}.chat-msg.mine .message-ticks{color:#ffffffb3}.chat-msg.mine .message-ticks.read{color:#bff0ff}.chat-msg.mine .mention{background:#ffffff38;color:#fff}.chat-sender{font-size:11.5px;margin-bottom:1px}.chat-meta{margin-top:1px;opacity:.85}.chat-system{background:var(--surface-2);border:1px solid var(--border-soft)}.chat-typing{padding:3px var(--space-4) 6px}.chat-composer{background:transparent;border:none;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:0;padding:6px var(--space-4) var(--space-4)}.chat-composer-row{align-items:flex-end;gap:2px;padding:6px 8px;background:var(--surface-2);border:1px solid var(--border);border-radius:26px;transition:border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}:root[data-theme=light] .chat-composer-row{background:#fff}.chat-composer-row:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-ring)}.chat-composer-row .btn-quiet{min-width:38px;min-height:38px;padding:0;border-radius:50%}.chat-composer-row .btn-quiet.recording{color:var(--red);background:var(--red-soft)}.chat-composer-row .chat-input{border:none;background:transparent;box-shadow:none;min-height:38px;max-height:140px;padding:8px 6px}.chat-composer-row .chat-input:focus{box-shadow:none;border:none}.chat-send{flex:none;width:40px;height:40px;border:none;border-radius:50%;cursor:pointer;display:grid;place-items:center;color:#fff;background:var(--brand-grad);box-shadow:0 6px 16px -6px var(--brand);transition:transform var(--dur-fast) var(--ease-out),opacity var(--dur-fast) var(--ease-out),filter var(--dur-fast) var(--ease-out)}.chat-send:hover:not(:disabled){filter:brightness(1.1)}.chat-send:active:not(:disabled){transform:scale(.92)}.chat-send:disabled{opacity:.35;cursor:not-allowed;box-shadow:none}html[dir=rtl] .chat-send .icon{transform:scaleX(-1)}.chat-reply-bar{margin:0 8px 8px;border-radius:12px;background:var(--surface-2)}@media (max-width: 900px){.chat-pane{background:var(--solid)}.chat-composer{padding:6px 10px calc(10px + var(--safe-b))}}@media (max-width: 900px){.chat-shell[style*="100vh"]{height:calc(100dvh - 390px)!important;min-height:360px}.chat-text{line-height:1.7}}@media (max-width: 640px){.chat-composer-row{flex-wrap:wrap;border-radius:22px}.chat-composer-row .chat-input{order:-1;flex:1 1 100%;min-height:44px}.chat-composer-row .chat-send{margin-inline-start:auto}.chat-shell[style*="100vh"]{height:calc(100dvh - 350px)!important}}.auth-page{position:relative;isolation:isolate;min-height:100dvh;display:grid;place-items:center;padding:var(--space-4);background:none;overflow:hidden}.auth-shell{width:100%;max-width:980px;display:grid;grid-template-columns:1.05fr 1fr;gap:var(--space-5);align-items:stretch}.auth-aside{display:flex;flex-direction:column;justify-content:center;gap:var(--space-4);padding:var(--space-5) var(--space-4)}.auth-brand-row{display:flex;align-items:center;gap:12px;font-size:22px}.auth-aside h1{margin:0;font-size:34px;line-height:1.5;font-weight:800;letter-spacing:-.01em}.auth-aside p{margin:0;color:var(--text-dim);font-size:15px;max-width:38ch}.auth-aside ul{list-style:none;margin:var(--space-3) 0 0;padding:0;display:grid;gap:14px}.auth-aside li{display:flex;align-items:center;gap:14px}.auth-aside li>span:last-child{display:flex;flex-direction:column;line-height:1.5}.auth-aside li small{color:var(--text-dim);font-size:12.5px}.auth-feature-icon{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;flex:none;color:var(--brand-text);background:var(--surface);border:1px solid var(--border-soft);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);box-shadow:var(--glass-hl)}.auth-card{max-width:none;width:100%;padding:var(--space-6) var(--space-6) var(--space-5);border-radius:28px;background:var(--surface);box-shadow:var(--elev-3),var(--glass-hl)}.auth-card .mobile-only{display:none}.auth-tabs{display:flex;width:100%;margin-bottom:var(--space-5)}.auth-tabs button{flex:1;min-height:38px}.auth-title{margin:0 0 4px;font-size:22px;font-weight:800}.auth-sub{text-align:start;margin-bottom:var(--space-4)}.auth-submit{min-height:46px;margin-top:var(--space-2);font-size:15px;border-radius:14px}.auth-card .input{min-height:44px}.google-btn,.google-holder{width:100%}.google-btn{display:flex;align-items:center;justify-content:center;gap:10px;min-height:46px;border-radius:99px;border:1px solid var(--border);background:#fff;color:#1f2937;font-weight:600;cursor:pointer;transition:box-shadow var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.google-btn:hover{box-shadow:0 4px 14px -6px #00000059}.google-btn:active{transform:scale(.98)}.google-holder{min-height:44px;display:flex;justify-content:center}.auth-or{display:flex;align-items:center;gap:var(--space-3);margin:var(--space-4) 0;color:var(--text-faint);font-size:12px}.auth-or:before,.auth-or:after{content:"";flex:1;height:1px;background:var(--border-soft)}@media (max-width: 860px){.auth-shell{grid-template-columns:1fr;max-width:440px}.auth-aside{display:none}.auth-card .mobile-only{display:flex;margin-bottom:var(--space-4);justify-content:flex-start;font-size:20px;gap:10px}.auth-card{padding:var(--space-5) var(--space-4);border-radius:24px}}.route-fade.route-fill{height:100%}.route-fill .chat-shell{height:100%;min-height:0}
