@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleUp{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.desktop-sidebar{background-color:var(--bg-sidebar);border-right:1px solid var(--border-subtle);height:100vh;transition:width var(--duration-normal) var(--ease-standard);z-index:40;-webkit-user-select:none;user-select:none;flex-direction:column;flex-shrink:0;display:flex}.desktop-sidebar.expanded{width:240px}.desktop-sidebar.collapsed{width:64px}.sidebar-header{height:56px;padding:0 var(--space-3);border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;display:flex}.sidebar-brand{align-items:center;gap:var(--space-2);cursor:pointer;padding:var(--space-1) 0;min-width:0;display:flex;overflow:hidden}.sidebar-brand .myspace-logo-full{max-width:130px;height:auto}.brand-icon{border-radius:var(--radius-md);flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.brand-info{flex-direction:column;display:flex;overflow:hidden}.brand-name{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--text-primary);white-space:nowrap}.brand-accent{background:linear-gradient(135deg,#3b82f6 0%,#8b5cf6 100%);-webkit-text-fill-color:transparent;color:#0000;-webkit-background-clip:text;background-clip:text;margin-left:2px}.brand-workspace{font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.collapse-btn{color:var(--text-muted)}.collapse-btn:hover{color:var(--text-primary)}.sidebar-nav{padding:var(--space-3) var(--space-2);gap:var(--space-4);flex-direction:column;flex:1;display:flex;overflow-y:auto}.nav-group{flex-direction:column;gap:2px;display:flex}.nav-group-label{font-size:var(--text-2xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);padding:var(--space-2) var(--space-3);align-items:center;display:flex}.nav-item{align-items:center;gap:var(--space-3);width:100%;height:38px;padding:0 var(--space-3);border-radius:var(--radius-md);color:var(--text-secondary);font-size:var(--text-sm);font-weight:var(--fw-medium);transition:background-color var(--duration-fast) ease, color var(--duration-fast) ease;display:flex;position:relative}.nav-item:hover{background-color:var(--bg-surface-hover);color:var(--text-primary)}.nav-item.active{background-color:var(--bg-surface-active);color:var(--text-primary);font-weight:var(--fw-semibold)}.nav-item.active:before{content:"";border-radius:0 var(--radius-xs) var(--radius-xs) 0;background-color:var(--accent-primary);width:3px;position:absolute;top:8px;bottom:8px;left:0}.nav-icon{flex-shrink:0}.ai-nav-icon{color:var(--accent-primary)}.nav-text-container{flex:1;justify-content:space-between;align-items:center;display:flex;overflow:hidden}.ai-status-pill{font-size:10px;font-weight:var(--fw-medium);color:var(--color-success);background:var(--color-success-subtle);border:1px solid var(--color-success-border);border-radius:var(--radius-full);padding:1px 6px}.nav-badge{margin-left:auto;padding:1px 6px;font-size:11px}.favorites-group{border-top:1px solid var(--border-subtle);padding-top:var(--space-3)}.nav-subitem{align-items:center;gap:var(--space-2);height:32px;padding:0 var(--space-3);border-radius:var(--radius-md);color:var(--text-muted);font-size:var(--text-xs);transition:all var(--duration-fast) ease;text-align:left;display:flex;overflow:hidden}.nav-subitem:hover{background-color:var(--bg-surface-hover);color:var(--text-primary)}.subitem-icon{opacity:.7;flex-shrink:0}.subitem-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sidebar-footer{padding:var(--space-3) var(--space-2);border-top:1px solid var(--border-subtle);flex-direction:column;gap:2px;display:flex}.footer-item{align-items:center;gap:var(--space-3);width:100%;height:36px;padding:0 var(--space-3);border-radius:var(--radius-md);color:var(--text-secondary);font-size:var(--text-sm);transition:background-color var(--duration-fast) ease, color var(--duration-fast) ease;display:flex}.footer-item:hover{background-color:var(--bg-surface-hover);color:var(--text-primary)}.user-profile-strip{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);margin-top:var(--space-2);border-radius:var(--radius-md);background-color:var(--bg-surface);border:1px solid var(--border-subtle);cursor:pointer;-webkit-user-select:none;user-select:none;transition:all var(--duration-fast) ease;outline:none;display:flex}.user-profile-strip:hover{background-color:var(--bg-surface-hover);border-color:var(--border-default)}.user-profile-strip:focus-visible{border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--accent-primary-subtle)}.user-profile-strip:active{transform:scale(.98)}.user-avatar{border-radius:var(--radius-full);background:var(--bg-surface-active);border:1px solid var(--border-default);width:28px;height:28px;font-size:var(--text-xs);font-weight:var(--fw-semibold);color:var(--text-primary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.user-details{flex-direction:column;display:flex;overflow:hidden}.user-name{font-size:var(--text-xs);font-weight:var(--fw-medium);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.user-role{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.desktop-sidebar.collapsed .sidebar-header{justify-content:center;padding:0}.collapsed-expand-btn{width:100%;height:100%;color:var(--text-muted);border-radius:0;justify-content:center;align-items:center;display:flex}.collapsed-expand-btn:hover{color:var(--text-primary);background-color:var(--bg-surface-hover)}.desktop-sidebar.collapsed .sidebar-brand{justify-content:center}.desktop-sidebar.collapsed .nav-item,.desktop-sidebar.collapsed .footer-item{justify-content:center;padding:0}.desktop-sidebar.collapsed .user-profile-strip{padding:var(--space-2) 0;justify-content:center}.user-profile-strip.active{background-color:var(--bg-surface-active);border-color:var(--accent-primary);box-shadow:0 0 0 1px var(--accent-primary-subtle)}.sidebar-empty-hint{padding:var(--space-2) var(--space-3);font-size:var(--text-xs);color:var(--text-tertiary);font-style:italic}.notification-popover-card{background-color:var(--bg-surface-elevated);border:1px solid var(--border-default);border-radius:var(--radius-xl);width:400px;max-width:calc(100vw - 24px);box-shadow:0 20px 48px -6px #000000bf, 0 0 0 1px #ffffff12, var(--shadow-lg);z-index:9999;transform-origin:100% 0;flex-direction:column;animation:.15s cubic-bezier(.16,1,.3,1) notifPopoverIn;display:flex;position:fixed;overflow:hidden}.notif-header{border-bottom:1px solid var(--border-subtle);background-color:var(--bg-surface);z-index:5;flex-shrink:0;justify-content:space-between;align-items:center;padding:13px 16px;display:flex;position:sticky;top:0}.notif-header-title-row{align-items:center;gap:8px;display:flex}.notif-heading{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--text-primary);letter-spacing:-.01em}.notif-unread-badge{background-color:var(--accent-primary-subtle);color:#a5b4fc;border:1px solid var(--accent-primary-border);font-size:11px;font-weight:var(--fw-semibold);border-radius:var(--radius-full);padding:1px 7px}.notif-action-text-btn{color:var(--text-secondary);font-size:11.5px;font-weight:var(--fw-medium);cursor:pointer;border-radius:var(--radius-sm);transition:color var(--duration-fast) ease, background-color var(--duration-fast) ease;background:0 0;border:none;align-items:center;padding:3px 6px;display:flex}.notif-action-text-btn:hover{color:var(--text-primary);background-color:var(--bg-surface-hover)}.notif-list-container{overscroll-behavior:contain;background-color:var(--bg-surface-elevated);scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent;flex-direction:column;flex:1;min-height:0;max-height:min(390px,70vh - 105px);display:flex;overflow-y:auto}.notif-list-container::-webkit-scrollbar{width:5px}.notif-list-container::-webkit-scrollbar-track{background:0 0}.notif-list-container::-webkit-scrollbar-thumb{background-color:var(--border-strong);border-radius:var(--radius-full)}.notif-row-item{border-bottom:1px solid var(--border-subtle);cursor:pointer;transition:background-color var(--duration-fast) ease;background-color:#0000;align-items:flex-start;gap:12px;padding:12px 16px;display:flex;position:relative}.notif-row-item:last-child{border-bottom:none}.notif-row-item:hover{background-color:var(--bg-surface-hover)}.notif-row-item.unread{background-color:#4f46e514}.notif-row-item.unread:hover{background-color:#4f46e524}.notif-row-item.urgency-overdue{border-left:3px solid var(--color-danger,#ef4444)}.notif-row-item.urgency-overdue.unread{background-color:var(--color-danger-subtle,#ef444414)}.notif-row-item.urgency-overdue.unread:hover{background-color:#ef444424}.notif-icon-wrapper{border-radius:var(--radius-md);background-color:var(--bg-surface);border:1px solid var(--border-subtle);flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;margin-top:2px;display:flex;position:relative}.notif-icon-wrapper.is-overdue{background-color:var(--color-danger-subtle,#ef44441f);border-color:var(--color-danger-border,#ef444447)}.notif-icon-overdue{color:var(--color-danger,#ef4444)}.notif-icon-task{color:#38bdf8}.notif-icon-doc{color:#818cf8}.notif-icon-note{color:#34d399}.notif-icon-ai{color:#fbbf24}.notif-unread-dot{border:2px solid var(--bg-surface-elevated);background-color:#38bdf8;border-radius:50%;width:8px;height:8px;position:absolute;top:-2px;right:-2px}.notif-unread-dot.is-overdue{background-color:var(--color-danger,#ef4444)}.notif-content-block{flex:1;min-width:0}.notif-title-row{align-items:center;gap:6px;margin-bottom:2px;display:flex}.notif-item-title{font-size:13px;font-weight:var(--fw-semibold);color:var(--text-primary);word-break:break-word;line-height:1.35;display:inline-block}.notif-item-title.is-overdue{color:var(--color-danger,#ef4444)}.notif-overdue-pill{font-size:10px;font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.04em;border-radius:var(--radius-sm);background-color:var(--color-danger-subtle,#ef444426);color:var(--color-danger,#ef4444);border:1px solid var(--color-danger-border,#ef44444d);padding:1px 6px}.notif-item-desc{color:var(--text-secondary);word-break:break-word;-webkit-line-clamp:2;text-overflow:ellipsis;-webkit-box-orient:vertical;margin:0 0 4px;font-size:12px;line-height:1.45;display:-webkit-box;overflow:hidden}.notif-item-time{color:var(--text-muted);font-size:11px}.notif-dismiss-btn{opacity:0;color:var(--text-muted);border-radius:var(--radius-sm);transition:opacity var(--duration-fast) ease, color var(--duration-fast) ease, background-color var(--duration-fast) ease;margin-top:2px;padding:4px}.notif-row-item:hover .notif-dismiss-btn,.notif-row-item:focus-within .notif-dismiss-btn{opacity:1}.notif-dismiss-btn:hover{color:var(--text-primary);background-color:var(--bg-surface-active)}@media (hover:none) and (pointer:coarse){.notif-dismiss-btn{opacity:.75;justify-content:center;align-items:center;min-width:44px;min-height:44px;display:flex}}.notif-empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:40px 20px;display:flex}.empty-bell-sub{color:var(--text-muted);font-size:12px}.notif-footer{background-color:var(--bg-surface);border-top:1px solid var(--border-subtle);z-index:5;flex-shrink:0;justify-content:center;padding:11px 16px;display:flex;position:sticky;bottom:0}.notif-view-all-link{color:var(--text-secondary);font-size:12px;font-weight:var(--fw-medium);cursor:pointer;transition:color var(--duration-fast) ease;background:0 0;border:none;align-items:center;gap:6px;display:flex}.notif-view-all-link:hover{color:var(--text-primary)}@keyframes notifPopoverIn{0%{opacity:0;transform:translateY(-6px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.desktop-topbar{background-color:var(--bg-surface);border-bottom:1px solid var(--border-subtle);height:56px;padding:0 var(--space-6);z-index:30;flex-shrink:0;justify-content:space-between;align-items:center;display:flex;position:relative}.topbar-left{align-items:center;gap:var(--space-2);min-width:220px;display:flex}.topbar-title{font-size:var(--text-md);font-weight:var(--fw-semibold);color:var(--text-primary);margin:0}.topbar-breadcrumbs{align-items:center;gap:var(--space-2);font-size:var(--text-sm);display:flex}.breadcrumb-item{color:var(--text-muted)}.breadcrumb-item.active{color:var(--text-primary);font-weight:var(--fw-medium)}.breadcrumb-separator{color:var(--text-disabled)}.topbar-center{max-width:440px;margin:0 var(--space-4);flex:1}.topbar-search-trigger{background-color:var(--bg-app);border:1px solid var(--border-default);border-radius:var(--radius-lg);width:100%;height:36px;padding:0 var(--space-3);align-items:center;gap:var(--space-2);color:var(--text-muted);font-size:var(--text-sm);transition:all var(--duration-fast) ease;display:flex}.topbar-search-trigger:hover{border-color:var(--border-strong);color:var(--text-secondary)}.search-icon{color:var(--text-muted);flex-shrink:0}.search-placeholder{text-align:left;text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.search-kbd{font-family:var(--font-mono);background-color:var(--bg-surface-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-xs);color:var(--text-muted);padding:1px 5px;font-size:11px;line-height:1.2}.topbar-right{align-items:center;gap:var(--space-3);justify-content:flex-end;min-width:200px;display:flex}.topbar-action-btn{position:relative}.topbar-action-btn.active{background-color:var(--bg-surface-active);color:var(--accent-primary)}.notification-badge{border:2px solid var(--bg-surface);color:#fff;letter-spacing:-.3px;background:linear-gradient(135deg,#ef4444,#dc2626);border-radius:8px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 3px;font-size:9.5px;font-weight:700;line-height:12px;animation:.25s cubic-bezier(.34,1.56,.64,1) badgePop;display:flex;position:absolute;top:4px;right:4px;box-shadow:0 1px 4px #ef444480}.notif-bell-btn{position:relative}.notif-bell-btn.active{background-color:var(--bg-surface-active);color:var(--accent-primary)}@keyframes badgePop{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.topbar-create-btn{gap:var(--space-1);padding:0 var(--space-3)}.desktop-context-panel{background-color:var(--bg-surface);border-left:1px solid var(--border-subtle);width:320px;animation:slideInRight var(--duration-fast) var(--ease-standard);z-index:20;flex-direction:column;flex-shrink:0;align-self:stretch;display:flex;overflow:hidden}.context-panel-header{height:48px;padding:0 var(--space-4);border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;display:flex}.panel-title-wrap{align-items:center;gap:var(--space-2);display:flex}.panel-heading{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--text-primary)}.context-panel-body{padding:var(--space-4);gap:var(--space-4);flex-direction:column;display:flex;overflow-y:auto}.context-card{padding:var(--space-3);background-color:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg)}.context-card-title{font-size:var(--text-xs);font-weight:var(--fw-semibold);color:var(--text-primary);margin-bottom:var(--space-1)}.context-card-desc{font-size:var(--text-xs);color:var(--text-secondary);line-height:var(--lh-normal)}.context-section{gap:var(--space-1);flex-direction:column;display:flex}.context-section-label{font-size:11px;font-weight:var(--fw-semibold);text-transform:uppercase;color:var(--text-muted);letter-spacing:.04em;margin-bottom:var(--space-1)}.context-action-item{align-items:center;gap:var(--space-2);padding:var(--space-2);border-radius:var(--radius-md);background-color:var(--bg-surface-elevated);border:1px solid var(--border-subtle);text-align:left;transition:all var(--duration-fast) ease;display:flex}.context-action-item:hover{background-color:var(--bg-surface-active);border-color:var(--border-default)}.action-item-icon{color:var(--accent-primary);flex-shrink:0}.action-item-text{flex-direction:column;display:flex;overflow:hidden}.action-item-title{font-size:var(--text-xs);font-weight:var(--fw-medium);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.action-item-sub{color:var(--text-muted);font-size:10px}.context-ai-box{padding:var(--space-3);background-color:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);gap:var(--space-2);flex-direction:column;display:flex}.context-ai-title{font-size:var(--text-xs);font-weight:var(--fw-semibold);color:var(--text-primary)}.context-prompt-chip-list{flex-direction:column;gap:4px;display:flex}.mini-chip{background-color:var(--bg-surface-active);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-secondary);text-align:left;transition:all var(--duration-fast) ease;padding:6px 8px;font-size:11px}.mini-chip:hover{background-color:var(--bg-surface-hover);color:var(--text-primary)}@media (width<=1024px){.desktop-context-panel{display:none}}.mobile-header{background-color:var(--bg-surface);border-bottom:1px solid var(--border-subtle);height:50px;padding:0 var(--space-4);z-index:50;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.mobile-header-left{align-items:center;gap:var(--space-3);display:flex;overflow:hidden}.mobile-brand{cursor:pointer;align-items:center;display:flex}.brand-icon-mobile{background:0 0;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.mobile-header-title{font-size:var(--text-md);font-weight:var(--fw-semibold);color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.mobile-back-btn{width:36px;height:36px;color:var(--text-primary);margin-left:-6px}.mobile-header-right{align-items:center;gap:var(--space-1);display:flex}.mobile-action-btn{width:40px;height:40px;color:var(--text-secondary)}.mobile-action-btn:active{color:var(--text-primary);background-color:var(--bg-surface-active)}.mobile-notif-btn{position:relative}.mobile-header .notification-badge{border:2px solid var(--bg-surface);color:#fff;letter-spacing:-.3px;background:linear-gradient(135deg,#ef4444,#dc2626);border-radius:8px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 3px;font-size:9.5px;font-weight:700;line-height:12px;animation:.25s cubic-bezier(.34,1.56,.64,1) badgePop;display:flex;position:absolute;top:3px;right:3px;box-shadow:0 1px 4px #ef444480}.mobile-bottom-nav{width:100%;min-height:calc(56px + env(safe-area-inset-bottom,0px));background-color:var(--bg-surface);border-top:1px solid var(--border-subtle);padding:6px var(--space-2) max(6px, env(safe-area-inset-bottom,0px)) var(--space-2);z-index:50;-webkit-user-select:none;user-select:none;box-sizing:border-box;flex:none;justify-content:space-around;align-items:flex-start;display:flex}.mobile-app-shell.composer-focused .mobile-bottom-nav,.mobile-bottom-nav.is-hidden{display:none!important}.mobile-nav-btn{height:48px;min-height:44px;color:var(--text-muted);transition:color var(--duration-fast) ease;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;display:flex}.mobile-nav-btn.active{color:var(--text-primary)}.mobile-nav-btn.active .nav-icon{color:var(--accent-primary)}.nav-label{font-size:10px;font-weight:var(--fw-medium);letter-spacing:.01em}.mobile-nav-add-btn{flex-shrink:0;justify-content:center;align-items:center;width:52px;height:100%;display:flex}.add-btn-inner{border-radius:var(--radius-full);background:var(--accent-primary);color:#fff;width:40px;height:40px;box-shadow:var(--shadow-sm);transition:transform var(--duration-fast) ease, background-color var(--duration-fast) ease;justify-content:center;align-items:center;display:flex}.mobile-nav-add-btn:active .add-btn-inner{background-color:var(--accent-primary-hover);transform:scale(.92)}.mobile-more-sheet{background-color:var(--bg-surface-elevated);border-top-left-radius:var(--radius-2xl);border-top-right-radius:var(--radius-2xl);border:1px solid var(--border-default);width:100%;max-width:500px;padding:0 var(--space-4) var(--space-6);padding-bottom:calc(var(--space-6) + env(safe-area-inset-bottom,0));box-shadow:var(--shadow-sheet);animation:slideUp var(--duration-normal) var(--ease-standard);border-bottom:none}.more-user-card{align-items:center;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--border-subtle);margin-bottom:var(--space-4);display:flex}.more-user-avatar{border-radius:var(--radius-full);background-color:var(--accent-primary-subtle);border:1px solid var(--accent-primary-border);width:38px;height:38px;color:var(--accent-text);font-weight:var(--fw-semibold);font-size:var(--text-sm);justify-content:center;align-items:center;display:flex}.more-user-info{flex-direction:column;flex:1;display:flex}.more-user-name{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--text-primary)}.more-user-email{font-size:var(--text-xs);color:var(--text-muted)}.more-nav-grid{gap:var(--space-3);margin-bottom:var(--space-4);grid-template-columns:repeat(2,1fr);display:grid}.more-nav-card{background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-3);text-align:left;transition:all var(--duration-fast) ease;flex-direction:column;align-items:flex-start;display:flex}.more-nav-card:active{background-color:var(--bg-surface-active);transform:scale(.98)}.more-icon-box{border-radius:var(--radius-md);width:36px;height:36px;margin-bottom:var(--space-2);justify-content:center;align-items:center;display:flex}.tasks-icon{background-color:var(--color-warning-subtle);color:var(--color-warning)}.projects-icon{background-color:var(--color-info-subtle);color:var(--color-info)}.knowledge-icon{background-color:var(--accent-primary-subtle);color:var(--accent-primary)}.settings-icon{background-color:var(--bg-surface-active);color:var(--text-secondary)}.more-card-title{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--text-primary)}.more-card-sub{color:var(--text-muted);margin-top:2px;font-size:11px}.more-theme-row{padding-top:var(--space-3);border-top:1px solid var(--border-subtle);justify-content:space-between;align-items:center;display:flex}.more-theme-label{font-size:var(--text-sm);color:var(--text-secondary)}.bottom-sheet-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;animation:fadeIn var(--duration-fast) ease;background-color:#000000a6;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.bottom-sheet-container{background-color:var(--bg-surface-elevated);border-top-left-radius:var(--radius-2xl);border-top-right-radius:var(--radius-2xl);border:1px solid var(--border-default);width:100%;max-width:500px;padding:0 var(--space-4) var(--space-6);padding-bottom:calc(var(--space-6) + env(safe-area-inset-bottom,0));box-shadow:var(--shadow-sheet);animation:slideUp var(--duration-normal) var(--ease-standard);border-bottom:none}.sheet-handle-bar{padding:var(--space-3) 0 var(--space-2);justify-content:center;display:flex}.sheet-handle{border-radius:var(--radius-full);background-color:var(--border-strong);width:36px;height:4px}.sheet-header{padding-bottom:var(--space-3);margin-bottom:var(--space-2);border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;display:flex}.sheet-title{font-size:var(--text-md);font-weight:var(--fw-semibold);color:var(--text-primary)}.sheet-close-btn{color:var(--text-muted)}.sheet-options-grid{gap:var(--space-2);grid-template-columns:1fr;display:grid}.sheet-option-item{align-items:center;gap:var(--space-3);width:100%;min-height:52px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);background-color:var(--bg-surface);border:1px solid var(--border-subtle);text-align:left;transition:all var(--duration-fast) ease;display:flex}.sheet-option-item:active{background-color:var(--bg-surface-active);border-color:var(--border-default);transform:scale(.99)}.sheet-option-icon{border-radius:var(--radius-md);background-color:var(--accent-primary-subtle);width:36px;height:36px;color:var(--accent-primary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.sheet-option-text{flex-direction:column;display:flex;overflow:hidden}.sheet-option-label{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--text-primary)}.sheet-option-desc{font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.command-palette-modal{background-color:var(--bg-surface-elevated);border:1px solid var(--border-default);border-radius:var(--radius-2xl);width:100%;max-width:620px;box-shadow:var(--shadow-lg);max-height:80vh;animation:scaleUp var(--duration-fast) var(--ease-standard);margin:var(--space-4);flex-direction:column;display:flex;overflow:hidden}.command-search-header{padding:0 var(--space-4);border-bottom:1px solid var(--border-subtle);background-color:var(--bg-surface);align-items:center;gap:var(--space-3);height:54px;display:flex}.command-search-icon{color:var(--text-muted);flex-shrink:0}.command-search-input{font-size:var(--text-base);color:var(--text-primary);background:0 0;border:none;flex:1;padding:0;box-shadow:none!important}.command-clear-btn{color:var(--text-muted)}.command-esc-badge{font-family:var(--font-mono);color:var(--text-muted);background-color:var(--bg-surface-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-xs);cursor:pointer;padding:2px 6px;font-size:11px}.command-results-list{padding:var(--space-2) 0;flex:1;max-height:420px;overflow-y:auto}.command-section{padding:var(--space-2) 0}.command-section-title{padding:var(--space-1) var(--space-4);font-size:var(--text-2xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);align-items:center;display:flex}.command-item{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);margin:1px var(--space-2);border-radius:var(--radius-md);cursor:pointer;transition:background-color var(--duration-fast) ease;display:flex}.command-item:hover,.command-item.selected{background-color:var(--bg-surface-active)}.item-icon{color:var(--text-muted);flex-shrink:0}.item-icon.action-icon{color:var(--accent-primary)}.item-content{flex-direction:column;flex:1;display:flex;overflow:hidden}.item-title{font-size:var(--text-sm);font-weight:var(--fw-medium);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.item-subtitle{font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.item-badge{border-radius:var(--radius-xs);background:var(--bg-surface);border:1px solid var(--border-subtle);color:var(--text-muted);text-transform:capitalize;padding:2px 6px;font-size:11px}.item-arrow{color:var(--text-muted);opacity:.6}.command-empty-state{padding:var(--space-8) var(--space-4);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.empty-icon{color:var(--text-disabled);margin-bottom:var(--space-2)}.empty-text{font-size:var(--text-sm);font-weight:var(--fw-medium);color:var(--text-primary)}.empty-sub{font-size:var(--text-xs);color:var(--text-muted);margin-top:2px}.command-footer{padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-subtle);background-color:var(--bg-surface);color:var(--text-muted);justify-content:space-between;align-items:center;font-size:11px;display:flex}.command-hint{align-items:center;gap:var(--space-1);display:flex}.command-hint-kbd{font-family:var(--font-mono);border-radius:var(--radius-xs);background-color:var(--bg-surface-elevated);border:1px solid var(--border-subtle);padding:1px 4px;font-size:10px}.command-brand-label{font-weight:var(--fw-medium);opacity:.8}@media (width<=600px){.command-palette-modal{max-height:90vh;margin:var(--space-2)}.command-footer{display:none}}.toast-container{bottom:var(--space-6);right:var(--space-6);z-index:1100;gap:var(--space-2);pointer-events:none;flex-direction:column;display:flex;position:fixed}.toast-item{pointer-events:auto;background-color:var(--bg-surface-elevated);border:1px solid var(--border-default);border-radius:var(--radius-lg);min-width:260px;max-width:380px;padding:var(--space-3) var(--space-4);box-shadow:var(--shadow-md);align-items:center;gap:var(--space-3);font-size:var(--text-sm);color:var(--text-primary);animation:slideUp var(--duration-fast) var(--ease-standard);display:flex}.toast-icon{flex-shrink:0;align-items:center;display:flex}.toast-success .toast-icon{color:var(--color-success)}.toast-error .toast-icon{color:var(--color-danger)}.toast-info .toast-icon{color:var(--accent-primary)}.toast-text{font-weight:var(--fw-medium);flex:1}.toast-close-btn{color:var(--text-muted);align-items:center;display:flex}.toast-close-btn:hover{color:var(--text-primary)}@media (width<=600px){.toast-container{bottom:72px;left:var(--space-4);right:var(--space-4)}.toast-item{min-width:unset;width:100%}}.auth-modal-card{background-color:var(--surface-primary);border:1px solid var(--border-default);border-radius:var(--radius-xl);width:92%;max-width:440px;box-shadow:var(--shadow-modal);z-index:1000;box-sizing:border-box;max-height:calc(100vh - 40px);padding:32px 28px;animation:.2s cubic-bezier(.16,1,.3,1) modalScaleUp;position:relative;overflow-y:auto}.auth-modal-close{width:36px;height:36px;color:var(--text-tertiary);border-radius:var(--radius-md);transition:all var(--trans-fast);justify-content:center;align-items:center;display:flex;position:absolute;top:14px;right:14px}.auth-modal-close:hover{color:var(--text-primary);background-color:var(--surface-secondary)}.auth-modal-header{text-align:center;margin-bottom:24px}.auth-brand-glyph{justify-content:center;align-items:center;gap:14px;margin:0 auto 18px;display:flex}.auth-brand-wordmark{text-align:left;flex-direction:column;align-items:flex-start;display:flex}.auth-brand-name{letter-spacing:-.02em;color:var(--text-primary);font-size:22px;font-weight:700;line-height:1.15}.auth-brand-accent{background:linear-gradient(135deg,#3b82f6 0%,#8b5cf6 100%);-webkit-text-fill-color:transparent;color:#0000;-webkit-background-clip:text;background-clip:text;margin-left:2px}.auth-brand-tagline{letter-spacing:.02em;color:var(--text-tertiary);margin-top:1px;font-size:11px;font-weight:500;line-height:1.3}.auth-modal-title{color:var(--text-primary);letter-spacing:-.01em;margin-bottom:6px;font-size:19px;font-weight:600}.auth-modal-sub{color:var(--text-secondary);font-size:13px;line-height:1.4}.demo-login-strip{background-color:var(--surface-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-sizing:border-box;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;padding:12px 14px;display:flex}.demo-info{flex-direction:column;min-width:0;display:flex}.demo-title{color:var(--text-primary);font-size:13px;font-weight:600}.demo-desc{color:var(--text-tertiary);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.auth-divider{text-align:center;color:var(--text-tertiary);align-items:center;margin-bottom:20px;font-size:12px;display:flex}.auth-divider:before,.auth-divider:after{content:"";border-bottom:1px solid var(--border-subtle);flex:1}.auth-divider span{padding:0 10px}.auth-form{flex-direction:column;gap:16px;display:flex}.auth-input-wrap{box-sizing:border-box;align-items:center;width:100%;display:flex;position:relative}.auth-input-icon{color:var(--text-tertiary);pointer-events:none;z-index:2;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.auth-modal-card .auth-input-wrap input,.auth-input-wrap input{background-color:var(--surface-secondary);border:1px solid var(--border-default);border-radius:var(--radius-md);width:100%;height:44px;min-height:44px;color:var(--text-primary);box-sizing:border-box;transition:border-color var(--trans-fast), box-shadow var(--trans-fast);padding-top:10px;padding-bottom:10px;padding-right:14px;font-size:14px;padding-left:42px!important}.auth-modal-card .auth-input-wrap input:focus,.auth-input-wrap input:focus{border-color:var(--accent-cyan);box-shadow:0 0 0 2px var(--accent-glow);outline:none}.auth-modal-card .auth-input-wrap input.has-toggle,.auth-input-wrap input.has-toggle{padding-right:42px!important}.auth-password-toggle-btn{color:var(--text-tertiary);cursor:pointer;border-radius:var(--radius-sm);transition:color var(--trans-fast), background-color var(--trans-fast);z-index:2;background:0 0;border:none;justify-content:center;align-items:center;padding:6px;display:flex;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.auth-password-toggle-btn:hover{color:var(--text-primary);background-color:var(--surface-hover)}.auth-password-toggle-btn:focus-visible{outline:2px solid var(--border-focus);outline-offset:1px}.auth-input-wrap.has-error input{border-color:var(--color-danger,#ef4444)!important}.auth-input-wrap.has-error input:focus{border-color:var(--color-danger,#ef4444)!important;box-shadow:0 0 0 2px #ef444440!important}.auth-field-error{color:var(--color-danger,#ef4444);margin-top:4px;font-size:11.5px;line-height:1.3;display:block}.auth-password-hint{color:var(--text-tertiary);transition:color var(--trans-fast);align-items:center;gap:6px;margin-top:6px;font-size:11.5px;display:flex}.auth-password-hint.is-valid{color:var(--color-success,#10b981);font-weight:500}.auth-hint-icon{stroke-width:2.5px;flex-shrink:0}.auth-hint-bullet{color:inherit;font-size:14px;line-height:1}.auth-spinner{flex-shrink:0;animation:.8s linear infinite authSpin}@keyframes authSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.auth-submit-btn{justify-content:center;width:100%;height:44px;min-height:44px;margin-top:8px;font-size:14px;font-weight:500}.auth-footer-toggle{text-align:center;color:var(--text-secondary);margin-top:20px;font-size:12.5px}.auth-link-btn{color:var(--accent-cyan);cursor:pointer;background:0 0;border:none;padding:0;font-size:12.5px;font-weight:500}.auth-link-btn:hover{text-decoration:underline}@media (width<=480px){.auth-modal-card{width:calc(100% - 24px);max-height:calc(100vh - 24px);margin:12px auto;padding:24px 16px}.auth-modal-title{font-size:17px}.auth-modal-sub{font-size:12px}.demo-login-strip{flex-direction:column;align-items:stretch;gap:10px;padding:12px}.demo-login-strip .btn{justify-content:center;width:100%;height:40px}.demo-desc{white-space:normal}}@keyframes modalScaleUp{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.auth-password-label-row{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.auth-password-label-row label{margin-bottom:0}.auth-forgot-link{color:var(--text-tertiary);cursor:pointer;border-radius:var(--radius-sm);transition:color var(--trans-fast);background:0 0;border:none;align-items:center;gap:3px;padding:2px 4px;font-size:11.5px;font-weight:500;line-height:1;display:flex}.auth-forgot-link:hover{color:var(--accent-cyan);text-decoration:underline}.auth-forgot-success{text-align:center;flex-direction:column;align-items:center;gap:16px;padding:8px 0 4px;display:flex}.auth-forgot-success-icon{width:56px;height:56px;color:var(--color-success,#10b981);background:linear-gradient(135deg,#6366f126,#10b98126);border:1px solid #10b9814d;border-radius:50%;justify-content:center;align-items:center;animation:.3s cubic-bezier(.16,1,.3,1) modalScaleUp;display:flex}.auth-forgot-success-msg{color:var(--text-secondary);max-width:300px;font-size:13px;line-height:1.55}.auth-forgot-success .auth-submit-btn{gap:6px;margin-top:4px}.reset-pw-root{background:var(--bg-app);box-sizing:border-box;justify-content:center;align-items:center;min-height:100dvh;padding:16px;display:flex}.reset-pw-card{background:var(--surface-primary);border:1px solid var(--border-default);border-radius:var(--radius-xl);width:100%;max-width:420px;box-shadow:var(--shadow-modal);box-sizing:border-box;padding:36px 32px 28px;animation:.25s cubic-bezier(.16,1,.3,1) resetPwFadeIn}@keyframes resetPwFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.reset-pw-brand{align-items:center;gap:14px;margin-bottom:28px;display:flex}.reset-pw-brand-text{flex-direction:column;display:flex}.reset-pw-brand-name{letter-spacing:-.02em;color:var(--text-primary);font-size:20px;font-weight:700;line-height:1.15}.reset-pw-brand-accent{background:linear-gradient(135deg,#3b82f6 0%,#8b5cf6 100%);-webkit-text-fill-color:transparent;color:#0000;-webkit-background-clip:text;background-clip:text;margin-left:2px}.reset-pw-brand-tagline{color:var(--text-tertiary);margin-top:2px;font-size:11px;font-weight:500}.reset-pw-header{margin-bottom:28px}.reset-pw-icon-wrap{border-radius:var(--radius-lg);color:#818cf8;background:linear-gradient(135deg,#6366f11f,#8b5cf614);border:1px solid #6366f140;justify-content:center;align-items:center;width:44px;height:44px;margin-bottom:16px;display:flex}.reset-pw-title{color:var(--text-primary);letter-spacing:-.01em;margin-bottom:6px;font-size:19px;font-weight:600}.reset-pw-sub{color:var(--text-secondary);font-size:13px;line-height:1.45}.reset-pw-form{flex-direction:column;gap:20px;display:flex}.reset-pw-form-group{flex-direction:column;gap:6px;display:flex}.reset-pw-form-group label{color:var(--text-secondary);font-size:13px;font-weight:500}.reset-pw-input-wrap{align-items:center;display:flex;position:relative}.reset-pw-input-icon{color:var(--text-tertiary);pointer-events:none;z-index:2;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.reset-pw-input-wrap input{background:var(--surface-secondary);border:1px solid var(--border-default);border-radius:var(--radius-md);width:100%;height:44px;color:var(--text-primary);box-sizing:border-box;transition:border-color var(--trans-fast), box-shadow var(--trans-fast);padding:10px 42px;font-size:14px}.reset-pw-input-wrap input:focus{border-color:var(--accent-cyan);box-shadow:0 0 0 2px var(--accent-glow);outline:none}.reset-pw-input-wrap.has-error input{border-color:var(--color-danger,#ef4444)}.reset-pw-input-wrap.has-error input:focus{box-shadow:0 0 0 2px #ef444440}.reset-pw-eye-btn{color:var(--text-tertiary);cursor:pointer;border-radius:var(--radius-sm);transition:color var(--trans-fast), background var(--trans-fast);z-index:2;background:0 0;border:none;align-items:center;padding:6px;display:flex;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.reset-pw-eye-btn:hover{color:var(--text-primary);background:var(--surface-hover)}.reset-pw-field-error{color:var(--color-danger,#ef4444);font-size:11.5px;line-height:1.3}.reset-pw-hint{color:var(--text-tertiary);transition:color var(--trans-fast);align-items:center;gap:6px;font-size:11.5px;display:flex}.reset-pw-hint.is-valid{color:var(--color-success,#10b981);font-weight:500}.reset-pw-hint-icon{stroke-width:2.5px;flex-shrink:0}.reset-pw-hint-bullet{font-size:14px;line-height:1}.reset-pw-spinner{flex-shrink:0;animation:.8s linear infinite resetPwSpin}@keyframes resetPwSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.reset-pw-submit-btn{justify-content:center;gap:8px;width:100%;height:44px;font-size:14px;font-weight:500}.reset-pw-footer{text-align:center;margin-top:20px}.reset-pw-back-link{color:var(--text-tertiary);cursor:pointer;border-radius:var(--radius-sm);transition:color var(--trans-fast);background:0 0;border:none;padding:4px;font-size:12.5px;font-weight:500}.reset-pw-back-link:hover{color:var(--accent-cyan);text-decoration:underline}.reset-pw-state-container{text-align:center;flex-direction:column;align-items:center;gap:16px;padding:8px 0 4px;display:flex}.reset-pw-state-icon{border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;animation:.3s cubic-bezier(.16,1,.3,1) resetPwFadeIn;display:flex}.reset-pw-state-icon--success{color:var(--color-success,#10b981);background:linear-gradient(135deg,#10b9811f,#6366f114);border:1px solid #10b9814d}.reset-pw-state-icon--error{color:var(--color-danger,#ef4444);background:linear-gradient(135deg,#ef44441a,#ef44440f);border:1px solid #ef44444d}.reset-pw-state-title{color:var(--text-primary);letter-spacing:-.01em;font-size:18px;font-weight:600}.reset-pw-state-desc{color:var(--text-secondary);max-width:320px;font-size:13px;line-height:1.55}.reset-pw-action-btn{justify-content:center;width:100%;height:44px;margin-top:4px;font-size:14px;font-weight:500}@media (width<=480px){.reset-pw-card{border-radius:var(--radius-lg);max-width:100%;padding:28px 18px 20px}.reset-pw-title{font-size:17px}}.mobile-notif-overlay{-webkit-backdrop-filter:blur(5px);z-index:1100;animation:mobileNotifFadeIn var(--duration-fast) ease;background-color:#000000ad;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.mobile-notif-container{background-color:var(--bg-surface-elevated);border-top-left-radius:var(--radius-2xl);border-top-right-radius:var(--radius-2xl);border:1px solid var(--border-default);width:100%;max-width:600px;max-height:88vh;box-shadow:0 -16px 40px #0009, var(--shadow-xl);touch-action:pan-y;border-bottom:none;flex-direction:column;animation:.24s cubic-bezier(.16,1,.3,1) mobileNotifSlideUp;display:flex;overflow:hidden}.mobile-notif-handle-bar{cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none;justify-content:center;align-items:center;padding:10px 0 6px;display:flex}.mobile-notif-handle{border-radius:var(--radius-full);background-color:var(--border-strong);opacity:.8;width:40px;height:5px}.mobile-notif-header{border-bottom:1px solid var(--border-subtle);background-color:var(--bg-surface);flex-shrink:0;justify-content:space-between;align-items:center;padding:8px 16px 14px;display:flex}.mobile-notif-header-left{align-items:center;gap:8px;display:flex}.mobile-notif-title{font-size:var(--text-base);font-weight:var(--fw-semibold);color:var(--text-primary);margin:0}.mobile-notif-unread-badge{background-color:var(--accent-primary-subtle);color:#a5b4fc;border:1px solid var(--accent-primary-border);font-size:11px;font-weight:var(--fw-semibold);border-radius:var(--radius-full);padding:1px 7px}.mobile-notif-header-actions{align-items:center;gap:4px;display:flex}.mobile-notif-mark-all-btn{color:var(--text-secondary);font-size:12px;font-weight:var(--fw-medium);cursor:pointer;border-radius:var(--radius-md);min-height:44px;transition:color var(--duration-fast) ease, background-color var(--duration-fast) ease;background:0 0;border:none;align-items:center;padding:0 8px;display:flex}.mobile-notif-mark-all-btn:active{color:var(--text-primary);background-color:var(--bg-surface-active)}.mobile-notif-close-btn{width:44px;height:44px;color:var(--text-secondary);border-radius:var(--radius-md);justify-content:center;align-items:center;display:flex}.mobile-notif-close-btn:active{color:var(--text-primary);background-color:var(--bg-surface-active)}.mobile-notif-list-container{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background-color:var(--bg-surface-elevated);flex:1;min-height:0;overflow-y:auto}.mobile-notif-list-container .notif-row-item{min-height:56px;padding:14px 16px}.mobile-notif-list-container .notif-dismiss-btn{opacity:.8;justify-content:center;align-items:center;width:44px;height:44px;margin-top:-6px;margin-right:-6px;display:flex}.mobile-notif-empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:50px 24px;display:flex}.empty-bell-icon{color:var(--text-muted);opacity:.6;margin-bottom:12px}.empty-bell-text{font-size:var(--text-base);font-weight:var(--fw-medium);color:var(--text-secondary);margin-bottom:4px}.empty-bell-sub{font-size:var(--text-sm);color:var(--text-muted)}.mobile-notif-footer{padding:12px 16px;padding-bottom:calc(14px + env(safe-area-inset-bottom,0));background-color:var(--bg-surface);border-top:1px solid var(--border-subtle);flex-shrink:0;justify-content:center;display:flex}.mobile-notif-view-all-link{color:var(--text-secondary);font-size:13px;font-weight:var(--fw-medium);cursor:pointer;border-radius:var(--radius-md);width:100%;min-height:44px;transition:color var(--duration-fast) ease, background-color var(--duration-fast) ease;background:0 0;border:none;justify-content:center;align-items:center;gap:8px;display:flex}.mobile-notif-view-all-link:active{color:var(--text-primary);background-color:var(--bg-surface-active)}@keyframes mobileNotifFadeIn{0%{opacity:0}to{opacity:1}}@keyframes mobileNotifSlideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.home-view-container{width:100%;min-height:0;padding-bottom:var(--space-8);flex:1;overflow:hidden auto}.home-desktop-layout{width:100%;padding:var(--space-6) var(--space-8);margin:0 auto;display:block}.home-desktop-header{margin-bottom:var(--space-6);padding-bottom:var(--space-4);border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:flex-end;display:flex}.greeting-title{font-size:var(--text-3xl);font-weight:var(--fw-bold);color:var(--text-primary);letter-spacing:-.03em}.greeting-subtitle{font-size:var(--text-base);color:var(--text-secondary);margin-top:var(--space-1)}.highlight-count{color:var(--text-primary)}.header-action-group{align-items:center;gap:var(--space-3);display:flex}.accent-glyph{color:var(--accent-primary)}.home-desktop-main-grid{gap:var(--space-5);margin-bottom:var(--space-5);grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);display:grid}.home-desktop-secondary-grid{gap:var(--space-5);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.dashboard-section{flex-direction:column;display:flex}.section-header{margin-bottom:var(--space-4);justify-content:space-between;align-items:center;display:flex}.section-title-group{align-items:center;gap:var(--space-2);display:flex}.section-heading{font-size:var(--text-md);font-weight:var(--fw-semibold);color:var(--text-primary)}.section-action-link{align-items:center;gap:var(--space-1);font-size:var(--text-xs);font-weight:var(--fw-medium);color:var(--text-muted);transition:color var(--duration-fast) ease;display:inline-flex}.section-action-link:hover{color:var(--text-primary)}.tasks-flow-list{gap:var(--space-2);flex-direction:column;display:flex}.home-task-row{align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);background-color:var(--bg-surface);border:1px solid var(--border-subtle);transition:all var(--duration-fast) ease;display:flex}.home-task-row:hover{border-color:var(--border-default);background-color:var(--bg-surface-hover)}.task-checkbox-btn{color:var(--text-muted);flex-shrink:0;justify-content:center;align-items:center;display:flex}.task-check-icon.checked{color:var(--color-success)}.task-row-info{flex-direction:column;flex:1;display:flex;overflow:hidden}.task-row-title{font-size:var(--text-sm);font-weight:var(--fw-medium);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.task-row-title.completed{color:var(--text-muted);text-decoration:line-through}.task-row-meta{align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--text-muted);margin-top:2px;display:flex}.task-project-tag{color:var(--text-secondary)}.task-due-tag{align-items:center;display:inline-flex}.meta-separator{color:var(--text-disabled)}.recent-knowledge-list{gap:var(--space-2);flex-direction:column;display:flex}.recent-doc-card{align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);background-color:var(--bg-surface);border:1px solid var(--border-subtle);cursor:pointer;transition:all var(--duration-fast) ease;min-width:0;display:flex;overflow:hidden}.recent-doc-card:hover{border-color:var(--border-default);background-color:var(--bg-surface-hover)}.doc-icon-box{border-radius:var(--radius-sm);background-color:var(--accent-primary-subtle);width:34px;height:34px;color:var(--accent-primary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.doc-card-info{flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.doc-card-arrow{color:var(--text-muted);opacity:.5;transition:opacity var(--duration-fast) ease, transform var(--duration-fast) ease;flex-shrink:0}.recent-doc-card:hover .doc-card-arrow{opacity:1;transform:translate(2px)}.doc-card-title{font-size:var(--text-sm);font-weight:var(--fw-medium);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.doc-card-sub{font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;overflow:hidden}.desktop-projects-summary{gap:var(--space-3);flex-direction:column;display:flex}.project-summary-card{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background-color:var(--bg-surface);border:1px solid var(--border-subtle);cursor:pointer;transition:all var(--duration-fast) ease}.project-summary-card:hover{border-color:var(--border-default);background-color:var(--bg-surface-hover)}.proj-summary-top{margin-bottom:var(--space-1);justify-content:space-between;align-items:center;display:flex}.proj-title-wrap{align-items:center;gap:var(--space-2);display:flex}.project-color-dot{border-radius:var(--radius-full);width:8px;height:8px}.proj-name{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--text-primary)}.proj-percent{font-size:var(--text-xs);font-weight:var(--fw-medium);color:var(--text-secondary)}.proj-desc{font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;margin-bottom:var(--space-2);overflow:hidden}.proj-progress-track{background-color:var(--bg-surface-active);border-radius:var(--radius-full);width:100%;height:4px;margin-bottom:var(--space-2);overflow:hidden}.proj-progress-fill{border-radius:var(--radius-full);height:100%}.proj-summary-footer{color:var(--text-muted);justify-content:space-between;align-items:center;font-size:11px;display:flex}.activity-feed{gap:var(--space-3);flex-direction:column;display:flex}.activity-feed-item{gap:var(--space-3);padding-left:var(--space-3);display:flex;position:relative}.activity-indicator{border-radius:var(--radius-full);background-color:var(--accent-primary);flex-shrink:0;width:6px;height:6px;margin-top:6px}.activity-content{flex-direction:column;display:flex}.activity-title{font-size:var(--text-sm);font-weight:var(--fw-medium);color:var(--text-primary)}.activity-detail{font-size:var(--text-xs);color:var(--text-secondary);margin-top:1px}.activity-time{color:var(--text-muted);margin-top:2px;font-size:11px}.empty-subtext{font-size:var(--text-sm);color:var(--text-muted);padding:var(--space-4) 0;text-align:center}.home-mobile-layout{display:none}@media (width<=820px){.home-desktop-layout{display:none}.home-mobile-layout{padding:var(--space-4);gap:var(--space-5);flex-direction:column;padding-bottom:80px;display:flex}.mobile-focus-hero{padding:var(--space-3) 0;border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;display:flex}.mobile-hero-title{font-size:var(--text-xl);font-weight:var(--fw-bold);color:var(--text-primary);letter-spacing:-.02em}.mobile-hero-highlight{font-size:var(--text-sm);color:var(--text-secondary);margin-top:2px}.mobile-hero-add-btn{align-items:center;gap:var(--space-1);height:36px;padding:0 var(--space-3);background-color:var(--accent-primary);color:#fff;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--fw-medium);display:flex}.mobile-quick-actions-bar{gap:var(--space-2);padding-bottom:var(--space-1);display:flex;overflow-x:auto}.mobile-chip-btn{align-items:center;gap:var(--space-2);height:36px;padding:0 var(--space-3);border-radius:var(--radius-full);background-color:var(--bg-surface);border:1px solid var(--border-default);color:var(--text-primary);font-size:var(--text-xs);font-weight:var(--fw-medium);white-space:nowrap;flex-shrink:0;display:inline-flex}.mobile-section{flex-direction:column;display:flex}.mobile-section-header{margin-bottom:var(--space-3);justify-content:space-between;align-items:center;display:flex}.mobile-section-title{font-size:var(--text-md);font-weight:var(--fw-semibold);color:var(--text-primary)}.mobile-link{font-size:var(--text-xs);font-weight:var(--fw-medium);color:var(--accent-primary)}.mobile-task-card-list{gap:var(--space-2);flex-direction:column;display:flex}.mobile-task-card{align-items:center;gap:var(--space-3);min-height:52px;padding:var(--space-3);border-radius:var(--radius-lg);background-color:var(--bg-surface);border:1px solid var(--border-subtle);display:flex}.mobile-check-btn{width:36px;height:36px;color:var(--text-muted);flex-shrink:0;justify-content:center;align-items:center;display:flex}.mobile-task-details{flex-direction:column;flex:1;display:flex;overflow:hidden}.mobile-task-title{font-size:var(--text-sm);font-weight:var(--fw-medium);color:var(--text-primary)}.mobile-task-title.completed{color:var(--text-muted);text-decoration:line-through}.mobile-task-sub{align-items:center;gap:var(--space-2);margin-top:3px;display:flex}.mobile-proj-pill{color:var(--text-secondary);font-size:11px}.mobile-due-text{color:var(--text-muted);font-size:11px}.mobile-horizontal-scroll-list{gap:var(--space-3);padding-bottom:var(--space-2);margin:0 calc(-1 * var(--space-4));padding-left:var(--space-4);padding-right:var(--space-4);display:flex;overflow-x:auto}.mobile-scroll-card{width:220px;padding:var(--space-3);background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);flex-direction:column;flex-shrink:0;display:flex}.scroll-card-icon{border-radius:var(--radius-sm);background-color:var(--accent-primary-subtle);width:32px;height:32px;color:var(--accent-primary);margin-bottom:var(--space-2);justify-content:center;align-items:center;display:flex}.scroll-card-title{font-size:var(--text-sm);font-weight:var(--fw-medium);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.scroll-card-meta{color:var(--text-muted);margin-top:4px;font-size:11px}.mobile-projects-list{gap:var(--space-2);flex-direction:column;display:flex}.mobile-project-item{padding:var(--space-3);background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg)}.mobile-proj-row{margin-bottom:var(--space-2);justify-content:space-between;align-items:center;display:flex}.mobile-proj-name{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--text-primary)}.mobile-proj-percent{font-size:var(--text-xs);font-weight:var(--fw-medium);color:var(--text-secondary)}.mobile-track{margin-bottom:var(--space-2)}.mobile-proj-meta{color:var(--text-muted);justify-content:space-between;font-size:11px;display:flex}}.knowledge-view{max-width:1280px;padding:var(--space-6) var(--space-8);flex:1;width:100%;min-height:0;margin:0 auto;overflow-y:auto}.knowledge-toolbar{justify-content:space-between;align-items:center;gap:var(--space-4);margin-bottom:var(--space-6);flex-wrap:wrap;display:flex}.toolbar-left{align-items:center;gap:var(--space-3);flex:1;min-width:280px;display:flex}.knowledge-search-wrapper{align-items:center;width:260px;display:flex;position:relative}.knowledge-search-icon{left:var(--space-3);color:var(--text-muted);pointer-events:none;position:absolute}.knowledge-search-input{width:100%;height:36px;padding-left:34px;padding-right:var(--space-3);border-radius:var(--radius-md);font-size:var(--text-sm)}.type-filters-row{align-items:center;gap:var(--space-1);display:flex}.filter-chip{height:32px;padding:0 var(--space-3);border-radius:var(--radius-md);color:var(--text-muted);font-size:var(--text-xs);font-weight:var(--fw-medium);transition:all var(--duration-fast) ease}.filter-chip:hover{color:var(--text-primary);background-color:var(--bg-surface-hover)}.filter-chip.active{background-color:var(--bg-surface-active);color:var(--text-primary);font-weight:var(--fw-semibold)}.toolbar-right{align-items:center;gap:var(--space-3);display:flex}.view-mode-toggle{background-color:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-md);padding:2px;display:flex}.mode-btn{border-radius:var(--radius-sm);width:32px;height:30px;color:var(--text-muted);transition:all var(--duration-fast) ease;justify-content:center;align-items:center;display:flex}.mode-btn.active{background-color:var(--bg-surface-elevated);color:var(--text-primary);box-shadow:var(--shadow-xs)}.knowledge-list-container{gap:var(--space-2);flex-direction:column;display:flex}.knowledge-list-row{align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4);background-color:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--duration-fast) ease;display:flex}.knowledge-list-row:hover{background-color:var(--bg-card-hover);border-color:var(--border-default)}.row-icon-col{flex-shrink:0}.doc-type-icon{border-radius:var(--radius-md);flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.type-note{background-color:var(--accent-primary-subtle);color:var(--accent-primary)}.type-document{background-color:var(--color-info-subtle);color:var(--color-info)}.type-research{background-color:var(--color-warning-subtle);color:var(--color-warning)}.type-code{background-color:var(--color-success-subtle);color:var(--color-success)}.row-main-col{flex-direction:column;flex:1;display:flex;overflow:hidden}.row-title-bar{align-items:center;gap:var(--space-2);display:flex}.row-item-title{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.pinned-icon{color:var(--accent-primary)}.row-item-excerpt{font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;overflow:hidden}.row-tags-strip{gap:var(--space-1);margin-top:var(--space-1);display:flex}.knowledge-tag-pill{border-radius:var(--radius-xs);background-color:var(--bg-surface-active);color:var(--text-muted);padding:1px 6px;font-size:11px}.knowledge-tag-more{color:var(--text-muted);align-self:center;font-size:11px}.row-meta-col{font-size:var(--text-xs);color:var(--text-muted);flex-direction:column;flex-shrink:0;align-items:flex-end;min-width:100px;display:flex}.meta-read-time{color:var(--text-secondary)}.row-actions-col{flex-shrink:0;position:relative}.knowledge-dropdown-menu{background-color:var(--bg-surface-elevated,var(--bg-surface));border:1px solid var(--border-default);border-radius:var(--radius-lg);z-index:100;-webkit-backdrop-filter:blur(12px);flex-direction:column;gap:2px;min-width:190px;padding:4px;animation:.14s ease-out dropdownFadeIn;display:flex;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 10px 25px -5px #0006,0 4px 10px #0003}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-4px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.dropdown-item{width:100%;color:var(--text-primary);font-size:var(--text-xs);font-weight:var(--fw-medium);border-radius:var(--radius-md);cursor:pointer;text-align:left;transition:background-color var(--duration-fast) ease, color var(--duration-fast) ease;background:0 0;border:none;align-items:center;gap:8px;padding:8px 12px;display:flex}.dropdown-item:hover{background-color:var(--bg-surface-hover);color:var(--text-primary)}.dropdown-item svg{color:var(--text-muted);flex-shrink:0}.dropdown-item:hover svg{color:var(--accent-primary)}.dropdown-divider{background-color:var(--border-subtle);height:1px;margin:4px 2px}.dropdown-item.danger{color:var(--color-danger,#ef4444)}.dropdown-item.danger:hover{color:var(--color-danger,#ef4444);background-color:#ef44441f}.dropdown-item.danger svg{color:var(--color-danger,#ef4444)}.knowledge-grid-container{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}.knowledge-grid-card{background-color:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);padding:var(--space-4);cursor:pointer;transition:all var(--duration-fast) ease;flex-direction:column;display:flex}.knowledge-grid-card:hover{background-color:var(--bg-card-hover);border-color:var(--border-default)}.grid-card-header{margin-bottom:var(--space-3);justify-content:space-between;align-items:center;display:flex}.grid-card-title{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--text-primary);margin-bottom:var(--space-2);line-height:var(--lh-snug)}.grid-card-excerpt{font-size:var(--text-xs);color:var(--text-muted);line-height:var(--lh-normal);-webkit-line-clamp:3;margin-bottom:var(--space-3);-webkit-box-orient:vertical;flex:1;display:-webkit-box;overflow:hidden}.grid-card-footer{border-top:1px solid var(--border-subtle);padding-top:var(--space-2);justify-content:space-between;align-items:center;display:flex}.grid-tags{gap:4px;display:flex}.grid-updated-time{color:var(--text-muted);font-size:11px}.empty-knowledge-state{padding:var(--space-12) var(--space-4);text-align:center;border:1px dashed var(--border-default);border-radius:var(--radius-2xl);background-color:var(--bg-surface);flex-direction:column;justify-content:center;align-items:center;display:flex}.empty-glyph{color:var(--text-disabled);margin-bottom:var(--space-3)}.empty-title{font-size:var(--text-md);font-weight:var(--fw-semibold);color:var(--text-primary);margin-bottom:var(--space-1)}.empty-desc{font-size:var(--text-sm);color:var(--text-muted);max-width:380px;margin-bottom:var(--space-4)}@media (width<=768px){.knowledge-view{padding:var(--space-4);padding-bottom:80px}.knowledge-toolbar{align-items:stretch;gap:var(--space-2);flex-direction:column}.toolbar-left{flex-direction:column;align-items:stretch}.knowledge-search-wrapper{width:100%}.type-filters-row{padding-bottom:var(--space-1);overflow-x:auto}.view-mode-toggle,.row-meta-col,.row-item-excerpt{display:none}}.note-editor-wrapper{background-color:var(--bg-app);flex-direction:column;flex:1;height:100%;min-height:0;display:flex;position:relative;overflow:hidden}.note-editor-topbar{background-color:var(--bg-surface);border-bottom:1px solid var(--border-subtle);height:48px;padding:0 var(--space-4);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.editor-top-left{align-items:center;gap:var(--space-3);display:flex}.save-status-indicator{align-items:center;gap:var(--space-1);font-size:var(--text-xs);color:var(--text-muted);display:flex}.saved-check{color:var(--color-success)}.saving-spinner{color:var(--color-warning);animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.editor-desktop-toolbar{background-color:var(--bg-surface-elevated);border:1px solid var(--border-default);border-radius:var(--radius-md);align-items:center;gap:2px;padding:2px 4px;display:flex}.toolbar-btn{border-radius:var(--radius-xs);width:28px;height:28px;color:var(--text-muted);transition:all var(--duration-fast) ease;justify-content:center;align-items:center;display:flex}.toolbar-btn:hover{background-color:var(--bg-surface-active);color:var(--text-primary)}.toolbar-divider{background-color:var(--border-subtle);width:1px;height:16px;margin:0 4px}.editor-top-right{align-items:center;gap:var(--space-2);display:flex}.note-canvas-scroll{padding:var(--space-8) var(--space-4);flex:1;justify-content:center;display:flex;overflow-y:auto}.note-canvas-column{flex-direction:column;width:100%;max-width:720px;display:flex}.note-canvas-title{width:100%;font-size:var(--text-3xl);font-weight:var(--fw-bold);color:var(--text-primary);letter-spacing:-.03em;margin-bottom:var(--space-2);background:0 0;border:none;outline:none;padding:0;box-shadow:none!important}.note-canvas-metadata{align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--text-muted);margin-bottom:var(--space-6);padding-bottom:var(--space-3);border-bottom:1px solid var(--border-subtle);display:flex}.meta-sep{color:var(--text-disabled)}.note-canvas-content{width:100%;font-family:var(--font-sans);font-size:var(--text-md);line-height:var(--lh-relaxed);color:var(--text-primary);resize:none;background:0 0;border:none;outline:none;min-height:400px;padding:0;box-shadow:none!important}.note-mobile-bottom-bar{display:none}@media (width<=768px){.note-editor-wrapper{height:calc(100vh - 50px)}.editor-desktop-toolbar,.btn-label-desktop{display:none}.note-canvas-scroll{padding:var(--space-4);padding-bottom:70px}.note-canvas-title{font-size:var(--text-2xl)}.note-mobile-bottom-bar{background-color:var(--bg-surface-elevated);border-top:1px solid var(--border-subtle);height:48px;padding:0 var(--space-2);z-index:40;justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0}.mobile-bar-btn{border-radius:var(--radius-sm);width:40px;height:36px;color:var(--text-secondary);justify-content:center;align-items:center;display:flex}.mobile-ai-pill{background-color:var(--accent-primary-subtle);color:var(--accent-primary);width:auto;padding:0 var(--space-3);font-size:var(--text-xs);font-weight:var(--fw-medium);gap:4px}}.share-dropdown-menu{background-color:var(--bg-surface-elevated,#16192b);border:1px solid var(--border-default,#ffffff1f);border-radius:var(--radius-lg,10px);z-index:100;-webkit-backdrop-filter:blur(16px);flex-direction:column;gap:2px;min-width:210px;padding:6px;animation:.15s cubic-bezier(.16,1,.3,1) shareDropdownFade;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 16px 36px -4px #0000008c,0 4px 12px #00000040}@keyframes shareDropdownFade{0%{opacity:0;transform:translateY(-4px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.share-dropdown-item{border-radius:var(--radius-md,6px);color:var(--text-primary);text-align:left;cursor:pointer;width:100%;transition:all var(--duration-fast,.15s) ease;white-space:nowrap;background:0 0;border:none;align-items:center;gap:10px;padding:8px 12px;font-family:inherit;font-size:13px;display:flex}.share-dropdown-item:hover{background-color:var(--bg-surface-hover,#ffffff14);color:var(--text-primary)}.share-dropdown-item svg{color:var(--text-muted);flex-shrink:0}.share-dropdown-item:hover svg{color:#5a80f2}.markdown-renderer{color:var(--text-primary);font-size:var(--text-base);line-height:var(--lh-relaxed);word-break:break-word}.markdown-renderer>:first-child{margin-top:0}.markdown-renderer>:last-child{margin-bottom:0}.markdown-renderer h1,.markdown-renderer h2,.markdown-renderer h3,.markdown-renderer h4,.markdown-renderer h5,.markdown-renderer h6{color:var(--text-primary);font-weight:var(--fw-semibold);line-height:var(--lh-snug);margin-top:1.25rem;margin-bottom:.5rem}.markdown-renderer h1{border-bottom:1px solid var(--border-subtle);padding-bottom:.35rem;font-size:1.35rem}.markdown-renderer h2{border-bottom:1px solid var(--border-subtle);padding-bottom:.25rem;font-size:1.15rem}.markdown-renderer h3{font-size:1.05rem}.markdown-renderer h4,.markdown-renderer h5,.markdown-renderer h6{font-size:.95rem}.markdown-renderer p{margin-top:0;margin-bottom:.75rem}.markdown-renderer ul,.markdown-renderer ol{margin-top:0;margin-bottom:.75rem;padding-left:1.4rem}.markdown-renderer li{margin-bottom:.3rem}.markdown-renderer li>ul,.markdown-renderer li>ol{margin-top:.25rem;margin-bottom:.25rem}.markdown-renderer blockquote{border-left:3px solid var(--accent-primary);background:var(--accent-primary-subtle);border-radius:0 var(--radius-sm) var(--radius-sm) 0;color:var(--text-secondary);margin:.85rem 0;padding:.4rem .85rem;font-style:italic}.markdown-renderer blockquote>p{margin:0}.markdown-renderer hr{background:var(--border-subtle);border:0;height:1px;margin:1.25rem 0}.markdown-inline-code{font-family:var(--font-mono);background:var(--bg-surface-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-xs);color:#e2e8f0;padding:.15rem .35rem;font-size:.85em}.markdown-code-block-wrapper{border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:#090b0e;margin:.85rem 0;overflow:hidden}.markdown-code-block-header{border-bottom:1px solid var(--border-subtle);background:#ffffff05;justify-content:space-between;align-items:center;padding:.35rem .75rem;display:flex}.markdown-code-language{font-family:var(--font-mono);color:var(--text-muted);text-transform:lowercase;letter-spacing:.02em;font-size:.725rem}.markdown-code-copy-btn{font-size:.725rem;font-family:var(--font-sans);color:var(--text-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-xs);cursor:pointer;transition:all var(--duration-fast) ease;background:0 0;align-items:center;gap:4px;padding:2px 7px;display:inline-flex}.markdown-code-copy-btn:hover{background:var(--bg-surface-hover);color:var(--text-primary);border-color:var(--border-default)}.markdown-code-scroll{-webkit-overflow-scrolling:touch;padding:.75rem 1rem;overflow-x:auto}.markdown-pre{font-family:var(--font-mono);color:#f1f5f9;white-space:pre;margin:0;font-size:.825rem;line-height:1.55}.markdown-table-wrapper{-webkit-overflow-scrolling:touch;border:1px solid var(--border-subtle);border-radius:var(--radius-md);margin:.85rem 0;overflow-x:auto}.markdown-table{border-collapse:collapse;text-align:left;width:100%;font-size:.875rem}.markdown-table th{font-weight:var(--fw-semibold);color:var(--text-primary);background:var(--bg-surface-elevated);border-bottom:1px solid var(--border-default);white-space:nowrap;padding:.6rem .85rem}.markdown-table td{color:var(--text-secondary);border-bottom:1px solid var(--border-subtle);padding:.55rem .85rem}.markdown-table tr:last-child td{border-bottom:none}.markdown-table tr:nth-child(2n){background:#ffffff04}.markdown-link{color:var(--accent-primary);text-underline-offset:2px;transition:color var(--duration-fast) ease;text-decoration:underline}.markdown-link:hover{color:var(--accent-primary-hover)}.search-highlight-mark{color:#fbbf24;background:#f59e0b40;border-radius:2px;padding:.05rem .25rem;font-weight:500}.doc-viewer-wrapper{background-color:var(--bg-app);flex-direction:column;flex:1;height:100%;min-height:0;display:flex;position:relative;overflow:hidden}.doc-viewer-topbar{background-color:var(--bg-surface);border-bottom:1px solid var(--border-subtle);height:54px;padding:0 var(--space-4);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.doc-top-left{align-items:center;gap:var(--space-3);display:flex;overflow:hidden}.doc-top-info{flex-direction:column;display:flex;overflow:hidden}.doc-top-title{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.doc-top-sub{align-items:center;gap:var(--space-2);color:var(--text-muted);font-size:11px;display:flex}.doc-top-actions{align-items:center;gap:var(--space-2);display:flex}.doc-viewer-split-layout{flex:1;display:flex;overflow:hidden}.doc-preview-pane{padding:var(--space-6) var(--space-4);background-color:var(--bg-app);flex:1;justify-content:center;display:flex;overflow-y:auto}.doc-page-canvas{background-color:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);width:100%;max-width:720px;padding:var(--space-8);box-shadow:var(--shadow-sm)}.doc-page-header{border-bottom:1px solid var(--border-subtle);padding-bottom:var(--space-3);margin-bottom:var(--space-6);color:var(--text-muted);font-size:11px;font-weight:var(--fw-medium);justify-content:space-between;align-items:center;display:flex}.doc-page-badge{font-family:var(--font-mono);background-color:var(--bg-surface-active);border-radius:var(--radius-xs);padding:2px 6px}.doc-spec-heading{font-size:var(--text-2xl);font-weight:var(--fw-bold);color:var(--text-primary);margin-bottom:var(--space-1)}.doc-spec-meta{font-size:var(--text-xs);color:var(--text-muted);margin-bottom:var(--space-6)}.doc-spec-section{margin-bottom:var(--space-6)}.doc-spec-section h3{font-size:var(--text-md);font-weight:var(--fw-semibold);color:var(--text-primary);margin-bottom:var(--space-2)}.doc-spec-section p{font-size:var(--text-sm);line-height:var(--lh-relaxed);margin-bottom:var(--space-3)}.doc-spec-section ul{padding-left:var(--space-4);font-size:var(--text-sm);color:var(--text-secondary);line-height:var(--lh-relaxed)}.doc-callout-box{background-color:var(--bg-surface-elevated);border-left:3px solid var(--accent-primary);padding:var(--space-3) var(--space-4);border-radius:0 var(--radius-md) var(--radius-md) 0;font-size:var(--text-xs);color:var(--text-primary);margin-top:var(--space-2)}.doc-ai-pane{border-left:1px solid var(--border-subtle);background-color:var(--bg-surface);flex-direction:column;flex-shrink:0;width:380px;display:flex}.doc-ai-header{height:48px;padding:0 var(--space-4);border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;display:flex}.ai-title-wrap{align-items:center;gap:var(--space-2);display:flex}.doc-ai-title{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--text-primary)}.doc-ai-prompts-row{gap:var(--space-1);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-subtle);background-color:var(--bg-app);flex-direction:column;display:flex}.doc-prompt-chip{text-align:left;padding:var(--space-2) var(--space-3);font-size:var(--text-xs);color:var(--text-secondary);background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);transition:all var(--duration-fast) ease}.doc-prompt-chip:hover{background-color:var(--bg-surface-active);color:var(--text-primary)}.doc-ai-messages-list{padding:var(--space-4);gap:var(--space-3);flex-direction:column;flex:1;display:flex;overflow-y:auto}.doc-msg-bubble{padding:var(--space-3);border-radius:var(--radius-lg);font-size:var(--text-xs);line-height:var(--lh-normal);flex-direction:column;max-width:92%;display:flex}.doc-msg-bubble.msg-user{background-color:var(--accent-primary);color:#fff;align-self:flex-end}.doc-msg-bubble.msg-user p{color:#fff}.doc-msg-bubble.msg-assistant{background-color:var(--bg-surface-elevated);border:1px solid var(--border-subtle);color:var(--text-primary);align-self:flex-start}.msg-timestamp{color:var(--text-muted);align-self:flex-end;margin-top:4px;font-size:10px}.doc-ai-composer{padding:var(--space-3);border-top:1px solid var(--border-subtle);gap:var(--space-2);background-color:var(--bg-surface);display:flex}.doc-ai-input{height:36px;padding:0 var(--space-3);border-radius:var(--radius-md);font-size:var(--text-xs);flex:1}.doc-ai-send-btn{background-color:var(--accent-primary);color:#fff;border-radius:var(--radius-md);width:36px;height:36px}.doc-ai-send-btn:disabled{opacity:.4;cursor:not-allowed}.mobile-floating-ai-trigger{display:none}@media (width<=860px){.doc-viewer-wrapper{height:calc(100vh - 50px)}.hide-mobile,.desktop-only-pane{display:none}.doc-preview-pane{padding:var(--space-3);padding-bottom:90px}.doc-page-canvas{padding:var(--space-4)}.mobile-floating-ai-trigger{z-index:60;display:block;position:fixed;bottom:24px;right:20px}.mobile-ai-fab-btn{align-items:center;gap:var(--space-2);height:44px;padding:0 var(--space-4);background-color:var(--accent-primary);color:#fff;border-radius:var(--radius-full);box-shadow:var(--shadow-lg);font-size:var(--text-sm);font-weight:var(--fw-semibold);display:flex}.mobile-ai-sheet-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background-color:#000000a6;align-items:flex-end;display:flex;position:fixed;inset:0}.mobile-ai-sheet-modal{background-color:var(--bg-surface-elevated);border-top-left-radius:var(--radius-2xl);border-top-right-radius:var(--radius-2xl);width:100%;height:85vh;animation:slideUp var(--duration-normal) var(--ease-standard);flex-direction:column;display:flex}.mobile-sheet-ai-header{padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;display:flex}.sheet-heading{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;max-width:250px;overflow:hidden}.mobile-prompts{white-space:nowrap;flex-direction:row;overflow-x:auto}.mobile-ai-messages-scroll{padding:var(--space-4);gap:var(--space-3);flex-direction:column;flex:1;display:flex;overflow-y:auto}.mobile-ai-sticky-composer{padding:var(--space-3);padding-bottom:calc(var(--space-3) + env(safe-area-inset-bottom,0));border-top:1px solid var(--border-subtle);gap:var(--space-2);background-color:var(--bg-surface);display:flex}.mobile-composer-input{height:42px;padding:0 var(--space-3);border-radius:var(--radius-md);font-size:var(--text-sm);flex:1}.mobile-composer-send{background-color:var(--accent-primary);color:#fff;border-radius:var(--radius-md);width:42px;height:42px}}.ai-workspace-view{background-color:var(--bg-app);flex-direction:column;flex:1;height:100%;min-height:0;display:flex;position:relative;overflow:hidden}.ai-view-header{background-color:var(--bg-surface);border-bottom:1px solid var(--border-subtle);height:54px;padding:0 var(--space-6);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.ai-brand-header{align-items:center;gap:var(--space-3);display:flex}.ai-glyph-circle{border-radius:var(--radius-md);background:0 0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.ai-header-text{flex-direction:column;display:flex}.ai-header-title{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--text-primary);line-height:var(--lh-tight)}.ai-header-subtitle{color:var(--text-muted);font-size:11px}.ai-messages-scroll-area{min-height:0;padding:var(--space-6) var(--space-4);flex:1;display:block;overflow-y:auto}.ai-content-column{gap:var(--space-5);flex-direction:column;width:100%;max-width:800px;margin-inline:auto;display:flex}.ai-suggested-strip{gap:var(--space-2);background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);padding:var(--space-4);flex-direction:column;display:flex}.suggested-label{font-size:var(--text-xs);font-weight:var(--fw-semibold);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.suggested-chips-flow{gap:var(--space-2);flex-wrap:wrap;display:flex}.suggested-chip{align-items:center;gap:var(--space-2);border-radius:var(--radius-full);background-color:var(--bg-surface-active);border:1px solid var(--border-default);color:var(--text-secondary);font-size:var(--text-xs);font-weight:var(--fw-medium);transition:all var(--duration-fast) ease;padding:6px 12px;display:inline-flex}.suggested-chip:hover{background-color:var(--bg-surface-hover);color:var(--text-primary);border-color:var(--border-strong)}.chip-sparkle{color:var(--accent-primary)}.ai-dialog-flow{gap:var(--space-5);flex-direction:column;display:flex}.ai-message-row{gap:var(--space-3);width:100%;display:flex}.ai-message-row.user{justify-content:flex-end}.ai-avatar-badge{border-radius:var(--radius-full);background-color:var(--accent-primary-subtle);width:30px;height:30px;color:var(--accent-primary);flex-shrink:0;justify-content:center;align-items:center;margin-top:2px;display:flex}.ai-bubble-body{flex-direction:column;max-width:85%;display:flex}.ai-message-row.user .ai-bubble-body{background-color:var(--accent-primary);color:#fff;padding:var(--space-3) var(--space-4);border-radius:var(--radius-xl)}.ai-message-row.user .ai-bubble-body p,.ai-message-row.user .ai-bubble-body strong{color:#fff}.ai-message-row.assistant .ai-bubble-body{background-color:var(--bg-card);border:1px solid var(--border-subtle);padding:var(--space-5);border-radius:var(--radius-xl);color:var(--text-primary)}.ai-bubble-markdown{font-size:var(--text-sm);line-height:var(--lh-relaxed)}.ai-bubble-markdown h3{font-size:var(--text-md);margin-top:var(--space-3);margin-bottom:var(--space-2);color:var(--text-primary)}.ai-bubble-markdown code{font-family:var(--font-mono);background-color:var(--bg-surface-active);border-radius:var(--radius-xs);color:var(--accent-text);padding:2px 5px;font-size:12px}.ai-sources-card{margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--border-subtle);gap:var(--space-2);flex-direction:column;display:flex}.sources-header-text{font-size:11px;font-weight:var(--fw-semibold);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.sources-pill-row{gap:var(--space-2);flex-wrap:wrap;display:flex}.source-item-pill{align-items:center;gap:var(--space-2);border-radius:var(--radius-md);background-color:var(--bg-surface-elevated);border:1px solid var(--border-default);color:var(--text-secondary);transition:all var(--duration-fast) ease;padding:4px 10px;font-size:11px;display:inline-flex}.source-item-pill:hover{background-color:var(--bg-surface-active);color:var(--text-primary);border-color:var(--border-strong)}.source-icon{color:var(--accent-primary)}.source-ext{opacity:.5}.ai-actions-strip{gap:var(--space-2);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.ai-action-btn{gap:var(--space-2)}.ai-msg-time{color:var(--text-muted);margin-top:var(--space-2);align-self:flex-end;font-size:10px}.ai-composer-dock{padding:var(--space-3) var(--space-6);background-color:var(--bg-surface);border-top:1px solid var(--border-subtle);flex-shrink:0;justify-content:center;display:flex}.ai-composer-form{align-items:center;gap:var(--space-2);background-color:var(--bg-app);border:1px solid var(--border-default);border-radius:var(--radius-xl);width:100%;max-width:800px;transition:border-color var(--duration-fast) ease;padding:4px 8px;display:flex}.ai-composer-form:focus-within{border-color:var(--border-focus)}.composer-attach-btn{color:var(--text-muted)}.ai-composer-input{height:24px;min-height:24px;max-height:120px;padding:7px var(--space-2);font-size:var(--text-sm);font-family:inherit;line-height:var(--lh-normal);color:var(--text-primary);resize:none;box-sizing:border-box;background:0 0;border:none;flex:1;box-shadow:none!important}.ai-send-btn{border-radius:var(--radius-md);flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.ai-send-btn:disabled{opacity:.4;cursor:not-allowed}@media (width<=820px){.ai-workspace-view{background-color:var(--bg-app);flex-direction:column;flex:1;width:100%;max-width:100vw;height:100%;min-height:0;display:flex;position:relative;overflow:hidden}.ai-view-header{display:none}.ai-messages-scroll-area{-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;box-sizing:border-box;flex:1;width:100%;max-width:100%;min-height:0;padding:12px 14px 24px;display:block;overflow:hidden auto}.ai-content-column{gap:var(--space-4);width:100%;max-width:100%;margin-inline:auto}.ai-suggested-strip{border-radius:var(--radius-lg);gap:var(--space-2);background-color:var(--bg-surface);border:1px solid var(--border-subtle);padding:12px}.suggested-label{letter-spacing:.04em;font-size:11px}.suggested-chips-flow{gap:var(--space-2);-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap;padding-bottom:2px;display:flex;overflow:auto hidden}.suggested-chips-flow::-webkit-scrollbar{display:none}.suggested-chip{white-space:nowrap;min-height:38px;font-size:var(--text-xs);border-radius:var(--radius-full);flex-shrink:0;padding:8px 14px}.ai-dialog-flow{gap:var(--space-4);width:100%}.ai-message-row{gap:8px;width:100%}.ai-avatar-badge{flex-shrink:0;width:28px;height:28px;margin-top:2px}.ai-avatar-badge svg{width:15px;height:15px}.ai-message-row.assistant .ai-bubble-body{border-radius:var(--radius-xl);background-color:var(--bg-card);border:1px solid var(--border-subtle);flex:1;min-width:0;max-width:calc(100% - 36px);padding:12px 14px}.ai-message-row.user{justify-content:flex-end}.ai-message-row.user .ai-bubble-body{border-radius:var(--radius-xl);background-color:var(--accent-primary);max-width:85%;padding:10px 14px}.ai-message-row.user .ai-msg-time{color:#ffffffb3}.ai-bubble-markdown{font-size:var(--text-sm);line-height:var(--lh-normal);overflow-wrap:anywhere;word-break:break-word}.ai-bubble-markdown code{overflow-wrap:anywhere;word-break:break-word;white-space:pre-wrap;font-size:12px}.ai-sources-card{margin-top:var(--space-3);padding-top:var(--space-3)}.sources-pill-row{gap:var(--space-2);flex-direction:column;width:100%;display:flex}.source-item-pill{justify-content:space-between;align-items:center;gap:var(--space-2);box-sizing:border-box;border-radius:var(--radius-md);width:100%;min-height:44px;padding:8px 12px;display:flex}.source-name{white-space:nowrap;text-overflow:ellipsis;text-align:left;flex:1;min-width:0;overflow:hidden}.source-icon{flex-shrink:0}.source-ext{flex-shrink:0;margin-left:auto}.ai-actions-strip{margin-top:var(--space-3);flex-wrap:wrap;gap:8px;width:100%;display:flex}.ai-action-btn{border-radius:var(--radius-full);min-height:44px;font-size:var(--text-xs);box-sizing:border-box;white-space:nowrap;align-items:center;gap:6px;max-width:100%;padding:0 14px;display:inline-flex}.ai-composer-dock{padding:6px 12px calc(6px + env(safe-area-inset-bottom,0px));background:color-mix(in srgb, var(--bg-app) 96%, transparent);-webkit-backdrop-filter:blur(16px);border-top:1px solid var(--border-subtle);z-index:45;box-sizing:border-box;flex:none;justify-content:center;display:flex;position:relative}.ai-composer-form{background-color:var(--bg-surface-elevated);border:1px solid var(--border-default);box-sizing:border-box;width:100%;max-width:100%;min-height:48px;transition:border-color var(--duration-fast) ease, box-shadow var(--duration-fast) ease;border-radius:26px;align-items:flex-end;gap:6px;padding:4px 6px;display:flex;box-shadow:0 2px 8px #00000040}.ai-composer-form:focus-within{border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--accent-primary-subtle), 0 4px 14px #0000004d}.composer-attach-btn{border-radius:var(--radius-full);width:40px;min-width:40px;height:40px;min-height:40px;color:var(--text-muted);transition:color var(--duration-fast) ease, background-color var(--duration-fast) ease;background:0 0;flex-shrink:0;justify-content:center;align-items:center;margin-bottom:2px;display:flex}.composer-attach-btn:hover,.composer-attach-btn:active{color:var(--text-primary);background-color:var(--bg-surface-active)}.composer-attach-btn svg{width:19px;height:19px}.ai-composer-input{min-width:0;height:auto;min-height:38px;max-height:110px;color:var(--text-primary);resize:none;box-sizing:border-box;background:0 0;border:none;flex:1;padding:9px 4px 9px 6px;font-size:16px;line-height:1.35;overflow-y:hidden;box-shadow:none!important}.ai-composer-input::placeholder{color:var(--text-muted);font-size:14px;line-height:1.35}.ai-send-btn{border-radius:var(--radius-full);background-color:var(--accent-primary);color:#fff;width:40px;min-width:40px;height:40px;min-height:40px;transition:transform var(--duration-fast) ease, background-color var(--duration-fast) ease, opacity var(--duration-fast) ease, box-shadow var(--duration-fast) ease;flex-shrink:0;justify-content:center;align-items:center;margin-bottom:2px;display:flex;box-shadow:0 2px 6px #4f46e559}.ai-send-btn:hover:not(:disabled){background-color:var(--accent-primary-hover);box-shadow:0 3px 10px #4f46e580}.ai-send-btn:active:not(:disabled){transform:scale(.92)}.ai-send-btn:disabled{opacity:.35;cursor:not-allowed;box-shadow:none}.ai-send-btn svg{width:17px;height:17px}.ai-stop-btn{border-radius:var(--radius-full);background-color:var(--color-danger);color:#fff;cursor:pointer;width:40px;min-width:40px;height:40px;min-height:40px;transition:transform var(--duration-fast) ease, background-color var(--duration-fast) ease;flex-shrink:0;justify-content:center;align-items:center;margin-bottom:2px;display:flex;box-shadow:0 2px 6px #ef444459}.ai-stop-btn:active{transform:scale(.92)}}.ai-jump-latest-btn{z-index:30;background:var(--bg-surface-elevated);border:1px solid var(--border-default);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--fw-medium);color:var(--text-primary);cursor:pointer;white-space:nowrap;align-items:center;gap:6px;padding:6px 14px;animation:.15s fadeIn;display:inline-flex;position:absolute;bottom:64px;left:50%;transform:translate(-50%);box-shadow:0 4px 14px #00000047}.ai-jump-latest-btn:hover{background:var(--bg-surface-hover);border-color:var(--border-strong)}.ai-stop-btn{border-radius:var(--radius-md);background-color:var(--color-danger);color:#fff;cursor:pointer;width:34px;height:34px;transition:opacity var(--duration-fast) ease, background-color var(--duration-fast) ease;flex-shrink:0;justify-content:center;align-items:center;display:flex}.ai-stop-btn:hover{background-color:color-mix(in srgb, var(--color-danger) 85%, black)}.tasks-view-container{max-width:1080px;padding:var(--space-6) var(--space-8);flex:1;width:100%;min-height:0;margin:0 auto;overflow-y:auto}.tasks-toolbar{margin-bottom:var(--space-6);justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.tasks-filter-tabs{background-color:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);gap:2px;padding:3px;display:flex}.task-tab{align-items:center;gap:var(--space-2);height:32px;padding:0 var(--space-3);border-radius:var(--radius-md);color:var(--text-secondary);font-size:var(--text-xs);font-weight:var(--fw-medium);transition:all var(--duration-fast) ease;display:flex}.task-tab:hover{color:var(--text-primary);background-color:var(--bg-surface-hover)}.task-tab.active{background-color:var(--bg-surface-elevated);color:var(--text-primary);font-weight:var(--fw-semibold);box-shadow:var(--shadow-xs)}.tab-count-badge{background-color:var(--bg-surface-active);border-radius:var(--radius-full);padding:1px 5px;font-size:10px}.tasks-list-scroll{flex-direction:column;display:flex}.task-rows-stack{gap:var(--space-2);flex-direction:column;display:flex}.task-item-row{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background-color:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--duration-fast) ease;display:flex}.task-item-row:hover{background-color:var(--bg-card-hover);border-color:var(--border-default)}.task-item-row.is-completed{opacity:.65}.task-check-button{color:var(--text-muted);width:28px;height:28px;transition:transform var(--duration-fast) ease;flex-shrink:0;justify-content:center;align-items:center;display:flex}.task-check-button:hover{transform:scale(1.08)}.check-svg.checked{color:var(--color-success)}.task-text-col{flex-direction:column;flex:1;display:flex;overflow:hidden}.task-heading{font-size:var(--text-sm);font-weight:var(--fw-medium);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.task-item-row.is-completed .task-heading{color:var(--text-muted);text-decoration:line-through}.task-tags-row{align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--text-muted);margin-top:2px;display:flex}.project-badge{color:var(--text-secondary)}.date-badge{align-items:center;display:inline-flex}.task-has-notes{color:var(--accent-primary);font-size:11px}.task-meta-right{align-items:center;gap:var(--space-3);flex-shrink:0;display:flex}.task-delete-btn{opacity:0;color:var(--text-muted);transition:opacity var(--duration-fast) ease}.task-item-row:hover .task-delete-btn{opacity:1}.task-delete-btn:hover{color:var(--color-danger)}.empty-tasks-placeholder{padding:var(--space-12) var(--space-4);text-align:center;border:1px dashed var(--border-default);border-radius:var(--radius-2xl);background-color:var(--bg-surface);flex-direction:column;justify-content:center;align-items:center;display:flex}.empty-tasks-icon{color:var(--text-disabled);margin-bottom:var(--space-3)}.empty-tasks-placeholder h3{font-size:var(--text-md);margin-bottom:var(--space-1)}.empty-tasks-placeholder p{font-size:var(--text-sm);color:var(--text-muted);margin-bottom:var(--space-4)}.task-details-sheet{background-color:var(--bg-surface-elevated);border:1px solid var(--border-default);border-radius:var(--radius-2xl);width:100%;max-width:520px;padding:var(--space-6);box-shadow:var(--shadow-lg);gap:var(--space-4);animation:scaleUp var(--duration-fast) var(--ease-standard);flex-direction:column;display:flex}.task-sheet-top{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.task-sheet-title-row{align-items:flex-start;gap:var(--space-3);display:flex}.task-detail-title{font-size:var(--text-lg);font-weight:var(--fw-semibold);color:var(--text-primary);line-height:var(--lh-snug)}.task-details-fields{gap:var(--space-3);padding:var(--space-3) 0;border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle);flex-direction:column;display:flex}.detail-field-row{font-size:var(--text-sm);justify-content:space-between;align-items:center;display:flex}.field-label{color:var(--text-muted)}.field-value{color:var(--text-primary);font-weight:var(--fw-medium)}.detail-notes-block{gap:var(--space-1);margin-top:var(--space-2);flex-direction:column;display:flex}.detail-notes-text{font-size:var(--text-sm);line-height:var(--lh-relaxed);color:var(--text-secondary);background-color:var(--bg-surface);padding:var(--space-3);border-radius:var(--radius-md);border:1px solid var(--border-subtle)}.task-sheet-actions{margin-top:var(--space-2);justify-content:space-between;align-items:center;display:flex}.task-add-modal{background-color:var(--bg-surface-elevated);border:1px solid var(--border-default);border-radius:var(--radius-2xl);width:100%;max-width:480px;padding:var(--space-6);box-shadow:var(--shadow-lg);animation:scaleUp var(--duration-fast) var(--ease-standard)}.add-modal-header{margin-bottom:var(--space-4);justify-content:space-between;align-items:center;display:flex}.add-modal-header h2{font-size:var(--text-lg);font-weight:var(--fw-semibold)}.add-task-form{gap:var(--space-4);flex-direction:column;display:flex}.form-group{gap:var(--space-1);flex-direction:column;display:flex}.form-group label{font-size:var(--text-xs);font-weight:var(--fw-medium);color:var(--text-secondary)}.task-add-modal .form-group input,.task-add-modal .form-group select{height:40px;padding:0 var(--space-3);box-sizing:border-box}.form-row-2{gap:var(--space-3);grid-template-columns:1fr 1fr;display:grid}.add-modal-footer{justify-content:flex-end;gap:var(--space-3);margin-top:var(--space-2);display:flex}.hide-desktop{display:none}@media (width<=768px){.tasks-view-container{padding:var(--space-4);box-sizing:border-box;width:100%;max-width:100%;padding-bottom:84px;overflow-x:hidden}.tasks-toolbar{align-items:stretch;gap:var(--space-3);box-sizing:border-box;flex-direction:column;width:100%}.tasks-filter-tabs{-webkit-overflow-scrolling:touch;scrollbar-width:none;box-sizing:border-box;gap:4px;width:100%;max-width:100%;padding:3px;display:flex;overflow-x:auto}.tasks-filter-tabs::-webkit-scrollbar{display:none}.task-tab{white-space:nowrap;min-height:36px;font-size:var(--text-xs);flex-shrink:0;padding:0 12px}.tasks-toolbar>.btn-primary{width:100%;height:44px;min-height:44px;font-size:var(--text-sm);box-sizing:border-box;justify-content:center}.task-item-row{align-items:flex-start;gap:var(--space-3);box-sizing:border-box;border-radius:var(--radius-lg);width:100%;min-height:56px;padding:12px;display:flex;overflow:hidden}.task-check-button{flex-shrink:0;justify-content:center;align-items:center;width:36px;min-width:36px;height:36px;min-height:36px;margin-top:1px;display:flex}.task-text-col{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex;overflow:hidden}.task-heading{white-space:normal;word-break:break-word;overflow-wrap:break-word;font-size:var(--text-sm);line-height:var(--lh-snug)}.task-tags-row{font-size:var(--text-xs);color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:4px 6px;display:flex}.project-badge,.date-badge,.task-has-notes{white-space:normal;word-break:break-word}.task-meta-right{flex-direction:column;flex-shrink:0;justify-content:space-between;align-items:flex-end;gap:8px;min-height:40px;display:flex}.task-delete-btn{opacity:1;flex-shrink:0;justify-content:center;align-items:center;width:36px;min-width:36px;height:36px;min-height:36px;display:flex}.hide-desktop{display:flex}.task-details-sheet,.task-add-modal{border-radius:var(--radius-2xl) var(--radius-2xl) 0 0;max-width:100%;animation:slideUp var(--duration-normal) var(--ease-standard);padding-bottom:calc(var(--space-6) + env(safe-area-inset-bottom,0));box-sizing:border-box;position:fixed;bottom:0;left:0;right:0}.form-row-2{grid-template-columns:1fr}}@media (width<=360px){.tasks-view-container{padding:12px 10px 84px}.task-item-row{gap:8px;padding:10px 8px}.task-tab{padding:0 9px;font-size:11.5px}}.projects-view-container{max-width:1280px;padding:var(--space-6) var(--space-8);flex:1;width:100%;min-height:0;margin:0 auto;overflow-y:auto}.projects-view-header{margin-bottom:var(--space-6);padding-bottom:var(--space-4);border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:flex-end;gap:var(--space-3);flex-wrap:wrap;display:flex}.projects-heading{font-size:var(--text-2xl);font-weight:var(--fw-bold);color:var(--text-primary)}.projects-subheading{font-size:var(--text-sm);color:var(--text-secondary);margin-top:2px}.projects-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(320px,1fr));display:grid}.project-card{background-color:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);padding:var(--space-5);cursor:pointer;transition:all var(--duration-fast) ease;flex-direction:column;display:flex}.project-card:hover{background-color:var(--bg-card-hover);border-color:var(--border-default)}.project-card-top{margin-bottom:var(--space-3);justify-content:space-between;align-items:center;display:flex}.project-card-badge-row{align-items:center;gap:var(--space-2);display:flex}.project-category-text{font-size:11px;font-weight:var(--fw-medium);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.project-card-name{font-size:var(--text-md);font-weight:var(--fw-semibold);color:var(--text-primary);margin-bottom:var(--space-2)}.project-card-desc{font-size:var(--text-xs);color:var(--text-secondary);line-height:var(--lh-normal);-webkit-line-clamp:2;margin-bottom:var(--space-4);-webkit-box-orient:vertical;flex:1;display:-webkit-box;overflow:hidden}.project-card-progress{gap:var(--space-1);margin-bottom:var(--space-4);flex-direction:column;display:flex}.project-card-progress-labels{color:var(--text-muted);justify-content:space-between;font-size:11px;display:flex}.project-card-footer{padding-top:var(--space-3);border-top:1px solid var(--border-subtle);font-size:var(--text-xs);justify-content:space-between;align-items:center;display:flex}.project-deadline{color:var(--text-muted);align-items:center;display:inline-flex}.project-open-link{color:var(--text-secondary);font-weight:var(--fw-medium);align-items:center;gap:2px;display:inline-flex}.project-detail-view{max-width:1100px;padding:var(--space-6) var(--space-8);width:100%;margin:0 auto}.project-detail-header{align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-6);padding-bottom:var(--space-5);border-bottom:1px solid var(--border-subtle);display:flex}.back-to-projects-btn{margin-top:2px}.project-header-info{flex-direction:column;flex:1;display:flex}.project-title-row{align-items:center;gap:var(--space-3);margin-bottom:var(--space-1);display:flex}.project-color-badge{border-radius:var(--radius-full);width:12px;height:12px}.project-headline{font-size:var(--text-2xl);font-weight:var(--fw-bold);color:var(--text-primary)}.project-sub-desc{font-size:var(--text-sm);color:var(--text-secondary);max-width:700px}.project-header-stats{gap:var(--space-3);display:flex}.stat-pill{background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);flex-direction:column;min-width:100px;display:flex}.stat-label{color:var(--text-muted);text-transform:uppercase;font-size:10px}.stat-val{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--text-primary)}.project-tabs-bar{margin-bottom:var(--space-5);border-bottom:1px solid var(--border-subtle)}.project-tabs-scroll{gap:var(--space-4);white-space:nowrap;display:flex;overflow-x:auto}.project-tab-btn{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-1);font-size:var(--text-sm);font-weight:var(--fw-medium);color:var(--text-muted);transition:all var(--duration-fast) ease;border-bottom:2px solid #0000;display:inline-flex}.project-tab-btn:hover{color:var(--text-primary)}.project-tab-btn.active{color:var(--text-primary);font-weight:var(--fw-semibold);border-bottom-color:var(--accent-primary)}.tab-ai-icon{color:var(--accent-primary)}.project-tab-body{gap:var(--space-4);flex-direction:column;display:flex}.project-overview-grid{gap:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.overview-card{gap:var(--space-3);flex-direction:column;display:flex}.card-heading{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--text-primary)}.progress-bar-wrap{background-color:var(--bg-surface-active);border-radius:var(--radius-full);width:100%;height:6px;margin-bottom:var(--space-2);overflow:hidden}.progress-bar-fill{border-radius:var(--radius-full);height:100%}.progress-numbers{font-size:var(--text-xs);color:var(--text-muted);justify-content:space-between;display:flex}.invariants-list{padding-left:var(--space-4);font-size:var(--text-xs);color:var(--text-secondary);line-height:var(--lh-relaxed);gap:var(--space-2);flex-direction:column;display:flex}.project-tasks-list,.project-docs-list{gap:var(--space-2);flex-direction:column;display:flex}.project-ai-summary-card{gap:var(--space-3);flex-direction:column;display:flex}.project-ai-text{font-size:var(--text-sm);line-height:var(--lh-relaxed);color:var(--text-secondary)}@media (width<=768px){.projects-view-container,.project-detail-view{padding:var(--space-4);padding-bottom:80px}.projects-grid{grid-template-columns:1fr}.project-detail-header{flex-direction:column}.project-header-stats{width:100%}.stat-pill{flex:1}.project-overview-grid{grid-template-columns:1fr}}.settings-view-container{max-width:1100px;padding:var(--space-6) var(--space-8);flex:1;width:100%;min-height:0;margin:0 auto;overflow-y:auto}.settings-desktop-layout{gap:var(--space-8);background-color:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-2xl);min-height:560px;display:flex;overflow:hidden}.settings-nav-sidebar{border-right:1px solid var(--border-subtle);background-color:var(--bg-surface);width:260px;padding:var(--space-5) var(--space-3);flex-direction:column;flex-shrink:0;display:flex}.settings-main-heading{font-size:var(--text-xl);font-weight:var(--fw-bold);color:var(--text-primary);padding:0 var(--space-3) var(--space-4);border-bottom:1px solid var(--border-subtle);margin-bottom:var(--space-3)}.settings-nav-list{flex-direction:column;gap:3px;display:flex}.settings-nav-item{align-items:center;gap:var(--space-3);height:40px;padding:0 var(--space-3);border-radius:var(--radius-md);color:var(--text-secondary);font-size:var(--text-sm);font-weight:var(--fw-medium);transition:all var(--duration-fast) ease;text-align:left;outline:none;display:flex}.settings-nav-item:hover{background-color:var(--bg-surface-hover);color:var(--text-primary)}.settings-nav-item:focus-visible{box-shadow:0 0 0 2px var(--bg-surface), 0 0 0 4px var(--accent-primary)}.settings-nav-item.active{background-color:var(--bg-surface-active);color:var(--text-primary);font-weight:var(--fw-semibold)}.settings-nav-icon{width:20px;color:inherit;flex-shrink:0;justify-content:center;align-items:center;display:flex}.settings-content-panel{padding:var(--space-6) var(--space-8);flex:1;min-height:480px;overflow-y:auto}.settings-section-container{flex-direction:column;width:100%;max-width:720px;animation:.15s cubic-bezier(.16,1,.3,1) settingsFadeIn;display:flex}@keyframes settingsFadeIn{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}.settings-section-header{margin-bottom:24px}.settings-section-title{color:var(--text-primary);letter-spacing:-.02em;font-size:20px;font-weight:600;line-height:var(--lh-tight)}.settings-section-desc{color:var(--text-secondary);font-size:14px;line-height:var(--lh-normal);margin-top:4px}.settings-section-body{flex-direction:column;display:flex}.settings-rows-group{flex-direction:column;gap:14px;display:flex}.setting-row{border:1px solid var(--border-subtle);background-color:var(--bg-surface);transition:border-color var(--duration-fast) ease, background-color var(--duration-fast) ease, box-shadow var(--duration-fast) ease;border-radius:14px;padding:16px 20px}.setting-row:hover{border-color:var(--border-default);background-color:var(--bg-surface-hover)}.setting-row-split{justify-content:space-between;align-items:center;gap:16px;display:flex}.setting-row-stacked{flex-direction:column;gap:14px;display:flex}.setting-row-text{flex-direction:column;gap:3px;min-width:0;display:flex}.setting-row-title{color:var(--text-primary);cursor:inherit;font-size:15px;font-weight:600;display:block}.setting-row-desc{color:var(--text-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;line-height:1.4;display:-webkit-box;overflow:hidden}.setting-row-control{flex-shrink:0;align-items:center;display:flex}.setting-row-stacked-control{width:100%;max-width:480px}.settings-switch-wrapper{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;min-height:44px;padding:10px 0;display:inline-flex;position:relative}.settings-switch-wrapper.disabled{opacity:.6;cursor:not-allowed}.settings-switch-input{clip:rect(0, 0, 0, 0);white-space:nowrap;opacity:0;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.settings-switch-track{box-sizing:border-box;border-radius:9999px;width:44px;height:24px;transition:background-color .15s,border-color .15s,box-shadow .15s;display:block;position:relative}[data-theme=dark] .settings-switch-track{background-color:#232a38;border:1px solid #3b4557}[data-theme=light] .settings-switch-track{background-color:#cbd5e1;border:1px solid #94a3b8}.settings-switch-thumb{background-color:#fff;border-radius:9999px;width:20px;height:20px;transition:transform .15s cubic-bezier(.16,1,.3,1),background-color .15s;position:absolute;top:1px;left:1px;box-shadow:0 1px 3px #00000047}.settings-switch-input:checked+.settings-switch-track{background-color:var(--accent-primary);border-color:var(--accent-primary)}.settings-switch-input:checked+.settings-switch-track .settings-switch-thumb{transform:translate(20px)}.settings-switch-input:focus-visible+.settings-switch-track{box-shadow:0 0 0 2px var(--bg-card), 0 0 0 4px var(--accent-primary);outline:none}.settings-select-wrapper{align-items:center;width:100%;max-width:480px;display:flex;position:relative}.settings-select{appearance:none;background-color:var(--bg-surface);border:1px solid var(--border-default);width:100%;height:44px;color:var(--text-primary);cursor:pointer;transition:border-color var(--duration-fast) ease, box-shadow var(--duration-fast) ease, background-color var(--duration-fast) ease;border-radius:10px;outline:none;padding:0 40px 0 14px;font-size:14px;font-weight:500}.settings-select:hover{border-color:var(--border-strong);background-color:var(--bg-surface-hover)}.settings-select:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px var(--accent-primary-subtle)}.settings-select option{background-color:var(--bg-surface-elevated,#1b202a);color:var(--text-primary);padding:8px 12px}[data-theme=light] .settings-select option{color:#111827;background-color:#fff}.settings-select-chevron{color:var(--text-secondary);pointer-events:none;position:absolute;right:14px}.theme-selection-grid{grid-template-columns:1fr 1fr;gap:16px;width:100%;display:grid}.theme-card{border:2px solid var(--border-subtle);cursor:pointer;background-color:var(--bg-surface);transition:border-color var(--duration-fast) ease, background-color var(--duration-fast) ease, box-shadow var(--duration-fast) ease, transform var(--duration-fast) ease;border-radius:14px;outline:none;flex-direction:column;padding:16px;display:flex;position:relative}.theme-card:hover{border-color:var(--border-strong);background-color:var(--bg-surface-hover);transform:translateY(-2px)}.theme-card:focus-visible{box-shadow:0 0 0 2px var(--bg-card), 0 0 0 4px var(--accent-primary)}.theme-card.active{border-color:var(--accent-primary);box-shadow:0 0 0 1px var(--accent-primary), 0 0 16px #4f46e529}.theme-card.active:hover{transform:none}.theme-preview{border-radius:8px;flex-direction:column;gap:8px;height:84px;margin-bottom:14px;padding:10px;display:flex}.dark-preview{background-color:#0c0e12;border:1px solid #202632}.dark-preview .preview-bar{background-color:#1b202a;border-radius:3px;width:55%;height:12px}.dark-preview .preview-card{background-color:#151921;border-radius:5px;flex:1}.light-preview{background-color:#f7f9fb;border:1px solid #d3dbe4}.light-preview .preview-bar{background-color:#e2e8f0;border-radius:3px;width:55%;height:12px}.light-preview .preview-card{background-color:#fff;border-radius:5px;flex:1}.theme-card-info{flex-direction:column;gap:4px;display:flex}.theme-card-name-row{align-items:center;gap:8px;display:flex}.theme-card-name{color:var(--text-primary);font-size:15px;font-weight:600}.theme-active-pill{background:var(--accent-primary-subtle);color:var(--accent-text);border:1px solid var(--accent-primary-border);border-radius:9999px;align-items:center;padding:2px 7px;font-size:11px;font-weight:600;display:inline-flex}[data-theme=light] .theme-active-pill{color:var(--accent-primary)}.theme-card-sub{color:var(--text-secondary);font-size:12px}.theme-check-badge{background-color:var(--accent-primary);color:#fff;border-radius:9999px;justify-content:center;align-items:center;width:22px;height:22px;display:flex;position:absolute;top:12px;right:12px;box-shadow:0 2px 6px #4f46e566}.settings-status-card{background-color:var(--bg-surface);border:1px solid var(--border-subtle);transition:border-color var(--duration-fast) ease, background-color var(--duration-fast) ease;border-radius:14px;align-items:flex-start;gap:16px;padding:18px 20px;display:flex}.settings-status-card:hover{border-color:var(--border-default)}.settings-status-icon-wrap{background-color:var(--color-success-subtle);width:40px;height:40px;color:var(--color-success);border:1px solid var(--color-success-border);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.settings-status-content{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.settings-status-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.settings-status-title{color:var(--text-primary);font-size:15px;font-weight:600}.settings-status-badge{flex-shrink:0}.settings-status-desc{color:var(--text-secondary);font-size:13px;line-height:var(--lh-normal);margin:0}.settings-user-hero{background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:14px;align-items:center;gap:14px;margin-bottom:2px;padding:14px 18px;display:flex}.settings-large-avatar{border-radius:var(--radius-full);background-color:var(--accent-primary-subtle);width:46px;height:46px;color:var(--accent-text);border:1px solid var(--accent-primary-border);font-size:var(--text-md);font-weight:var(--fw-semibold);flex-shrink:0;justify-content:center;align-items:center;display:flex}.settings-user-hero-name{color:var(--text-primary);font-size:15px;font-weight:600;display:block}.settings-user-hero-role{color:var(--text-muted);font-size:12px;display:block}.settings-field-group{flex-direction:column;gap:6px;display:flex}.settings-field-label{color:var(--text-primary);font-size:13px;font-weight:600}.settings-text-input{background-color:var(--bg-surface);border:1px solid var(--border-default);width:100%;height:42px;color:var(--text-primary);transition:border-color var(--duration-fast) ease, box-shadow var(--duration-fast) ease;border-radius:10px;padding:0 14px;font-size:14px}.settings-text-input:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px var(--accent-primary-subtle);outline:none}.field-hint{color:var(--text-muted);margin-top:2px;font-size:11px}.input-disabled{opacity:.7;background-color:var(--bg-surface-active);cursor:not-allowed}.settings-actions-footer{flex-wrap:wrap;align-items:center;gap:10px;margin-top:24px;display:flex}.settings-btn{white-space:nowrap;cursor:pointer;height:42px;transition:all var(--duration-fast) ease;border:none;border-radius:10px;outline:none;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-size:14px;font-weight:500;display:inline-flex}.settings-btn:focus-visible{box-shadow:0 0 0 2px var(--bg-card), 0 0 0 4px var(--accent-primary)}.settings-btn-primary{background-color:var(--accent-primary);color:#fff;box-shadow:var(--shadow-xs)}.settings-btn-primary:hover{background-color:var(--accent-primary-hover)}.settings-btn-primary:active{transform:translateY(1px)}.settings-btn-secondary{background-color:var(--bg-surface);color:var(--text-primary);border:1px solid var(--border-default)}.settings-btn-secondary:hover{background-color:var(--bg-surface-hover);border-color:var(--border-strong)}.settings-btn-secondary:active{transform:translateY(1px)}.settings-btn-danger{color:var(--color-danger)}.settings-btn-danger:hover{background-color:var(--color-danger-subtle);border-color:var(--color-danger-border);color:var(--color-danger)}.settings-mobile-layout{display:none}@media (width<=768px){.settings-view-container{padding:var(--space-4);padding-bottom:80px}.settings-desktop-layout{display:none}.settings-mobile-layout{display:block}.settings-mobile-list{gap:var(--space-2);flex-direction:column;display:flex}.settings-mobile-item{padding:var(--space-3) var(--space-4);background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);text-align:left;cursor:pointer;justify-content:space-between;align-items:center;width:100%;min-height:56px;display:flex}.settings-mobile-item:focus-visible{box-shadow:0 0 0 2px var(--bg-app), 0 0 0 4px var(--accent-primary)}.mobile-item-left{align-items:center;gap:var(--space-3);display:flex}.mobile-item-text{flex-direction:column;display:flex}.mobile-item-title{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--text-primary)}.mobile-item-desc{color:var(--text-muted);font-size:11px}.mobile-item-arrow{color:var(--text-muted);flex-shrink:0}.settings-mobile-drilldown{animation:settingsFadeIn var(--duration-fast) ease}.drilldown-header{align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--border-subtle);display:flex}.drilldown-title{font-size:var(--text-lg);font-weight:var(--fw-semibold)}.settings-select,.settings-text-input{font-size:16px}}@media (width<=640px){.theme-selection-grid{grid-template-columns:1fr}.setting-row-split{flex-direction:column;align-items:flex-start;gap:12px}.setting-row-control{justify-content:flex-start;width:100%}.setting-row-stacked-control{max-width:100%}.settings-actions-footer,.settings-btn{width:100%}}@media (prefers-reduced-motion:reduce){.settings-section-container,.settings-mobile-drilldown{animation:none!important}.settings-switch-thumb,.settings-switch-track,.theme-card,.setting-row,.settings-btn{transition:none!important}}.byok-status-banner{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);font-size:var(--text-sm);font-weight:var(--fw-medium);margin-bottom:var(--space-4);display:flex}.byok-status-active{color:#10b981;background-color:#10b9811a;border:1px solid #10b98140}.byok-status-none{color:#f59e0b;background-color:#f59e0b1a;border:1px solid #f59e0b40}.byok-masked-key{font-family:var(--font-mono,monospace);font-size:var(--text-xs);background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-secondary);margin-left:auto;padding:2px 8px}.byok-form-grid{gap:var(--space-4);flex-direction:column;display:flex}.byok-select{cursor:pointer}.byok-key-input-wrap{align-items:center;width:100%;display:flex;position:relative}.byok-key-input{padding-right:40px!important}.byok-eye-btn{color:var(--text-tertiary);cursor:pointer;border-radius:var(--radius-sm);transition:color var(--duration-fast) ease;background:0 0;border:none;justify-content:center;align-items:center;padding:4px;display:flex;position:absolute;right:10px}.byok-eye-btn:hover{color:var(--text-primary)}.byok-feedback{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--text-sm);margin-top:var(--space-3);display:flex}.byok-feedback-error{color:#ef4444;background-color:#ef44441a;border:1px solid #ef444440}.byok-feedback-success{color:#10b981;background-color:#10b9811a;border:1px solid #10b98140}.byok-footer{justify-content:space-between;align-items:center;gap:var(--space-3);margin-top:var(--space-5);display:flex}.byok-spinner{animation:1s linear infinite spin}.profile-overlay{z-index:9999;padding:var(--space-4);-webkit-backdrop-filter:blur(12px);background:#080a14b8;justify-content:center;align-items:center;animation:.22s cubic-bezier(.16,1,.3,1) forwards profileOverlayFadeIn;display:flex;position:fixed;inset:0;overflow-y:auto}@keyframes profileOverlayFadeIn{0%{opacity:0;-webkit-backdrop-filter:blur()}to{opacity:1;-webkit-backdrop-filter:blur(12px)}}.profile-card{background:var(--bg-card,#16192b);border:1px solid var(--border-default,#ffffff1a);border-radius:var(--radius-2xl,20px);flex-direction:column;width:100%;max-width:480px;margin:auto;animation:.25s cubic-bezier(.16,1,.3,1) forwards profileCardPop;display:flex;position:relative;overflow:hidden;box-shadow:0 24px 60px -12px #000000b3,0 0 0 1px #ffffff14,0 0 40px #6366f11f}@keyframes profileCardPop{0%{opacity:0;transform:scale(.96)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}.profile-card-header{padding:var(--space-5) var(--space-6);justify-content:space-between;align-items:center;display:flex}.profile-card-title{font-size:var(--text-lg);font-weight:var(--fw-bold);color:var(--text-primary)}.profile-close-btn{border-radius:var(--radius-md);width:30px;height:30px;color:var(--text-muted);transition:all var(--duration-fast) ease;justify-content:center;align-items:center;display:flex}.profile-close-btn:hover{background:var(--bg-surface-hover);color:var(--text-primary)}.profile-card-subtitle{font-size:var(--text-sm);color:var(--text-muted);padding:0 var(--space-6) var(--space-4);margin:0;line-height:1.5}.profile-avatar-section{align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-6);background:var(--bg-surface,#ffffff08);border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle);display:flex}.profile-avatar{width:52px;height:52px;font-size:18px;font-weight:var(--fw-bold);color:#fff;letter-spacing:.05em;background:linear-gradient(135deg,#2020b6,#9449df);border:2px solid #7547d159;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.profile-avatar-meta{flex-direction:column;gap:3px;display:flex}.profile-avatar-name{font-size:var(--text-base);font-weight:var(--fw-semibold);color:var(--text-primary)}.profile-avatar-email{font-size:var(--text-sm);color:var(--text-muted)}.profile-stats-bar{padding:var(--space-3) var(--space-6);border-bottom:1px solid var(--border-subtle);background:var(--bg-surface,#ffffff05);align-items:center;display:flex}.profile-stat{flex-direction:column;flex:1;align-items:center;gap:2px;display:flex}.profile-stat-val{font-size:var(--text-lg);font-weight:var(--fw-bold);color:var(--text-primary);line-height:1}.profile-stat-lbl{color:var(--text-muted);font-size:11px;font-weight:var(--fw-medium)}.profile-stat-divider{background:var(--border-subtle);width:1px;height:28px}.profile-form{gap:var(--space-4);padding:var(--space-5) var(--space-6);flex-direction:column;display:flex}.profile-field-group{flex-direction:column;gap:6px;display:flex}.profile-field-label{font-size:12px;font-weight:var(--fw-semibold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em;align-items:center;gap:5px;display:flex}.profile-field-input{background:var(--bg-surface,#ffffff0d);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);height:40px;padding:0 var(--space-3);font-size:var(--text-sm);color:var(--text-primary);transition:border-color var(--duration-fast) ease, box-shadow var(--duration-fast) ease;outline:none;width:100%;font-family:inherit}.profile-field-input:focus:not(.profile-field-readonly){border-color:#5184ec;box-shadow:0 0 0 3px #5184ec26}.profile-field-input::placeholder{color:var(--text-muted)}.profile-field-readonly{cursor:default;opacity:.65}.profile-field-hint{color:var(--text-muted);font-size:11px;line-height:1.4}.profile-card-footer{padding:var(--space-4) var(--space-6);border-top:1px solid var(--border-subtle);align-items:center;gap:var(--space-3);display:flex}.profile-footer-right{align-items:center;gap:var(--space-3);margin-left:auto;display:flex}.profile-btn{align-items:center;gap:var(--space-2);height:38px;padding:0 var(--space-5);border-radius:var(--radius-lg);font-size:var(--text-sm);font-weight:var(--fw-semibold);transition:all var(--duration-fast) ease;white-space:nowrap;cursor:pointer;font-family:inherit;display:inline-flex}.profile-btn-cancel{background:var(--bg-surface);color:var(--text-secondary);border:1px solid var(--border-subtle)}.profile-btn-cancel:hover{background:var(--bg-surface-hover);color:var(--text-primary);border-color:var(--border-default)}.profile-btn-save{color:#fff;background:linear-gradient(135deg,#624cf0,#3976ef);border:none;box-shadow:0 2px 12px #3030e859}.profile-btn-save:hover:not(:disabled){filter:brightness(1.08);transform:translateY(-1px);box-shadow:0 4px 18px #3030e880}.profile-btn-save:disabled{opacity:.55;cursor:not-allowed;transform:none}.profile-btn-danger{color:#e25a5a;background:0 0;border:1px solid #d9262640}.profile-btn-danger:hover{background:#d926261a;border-color:#d9262666}@media (width<=520px){.profile-overlay{padding:var(--space-3);align-items:flex-start}.profile-card-footer{flex-wrap:wrap}.profile-footer-right{justify-content:flex-end;width:100%}.profile-btn-save{flex:1;justify-content:center}}:root{--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--text-2xs:.6875rem;--text-xs:.75rem;--text-sm:.875rem;--text-base:.9375rem;--text-md:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--lh-tight:1.2;--lh-snug:1.35;--lh-normal:1.5;--lh-relaxed:1.625;--fw-normal:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--radius-xs:4px;--radius-sm:6px;--radius-md:9px;--radius-lg:11px;--radius-xl:14px;--radius-2xl:18px;--radius-full:9999px;--duration-fast:.14s;--duration-normal:.22s;--duration-slow:.32s;--ease-standard:cubic-bezier(.16, 1, .3, 1);--ease-smooth:cubic-bezier(.4, 0, .2, 1);--touch-target-min:44px}[data-theme=dark]{--bg-app:#0c0e12;--bg-sidebar:#101318;--bg-surface:#151921;--bg-surface-elevated:#1b202a;--bg-surface-active:#222834;--bg-surface-hover:#181d26;--bg-card:#151921;--bg-card-hover:#191e28;--border-subtle:#202632;--border-default:#2b3342;--border-strong:#3b4557;--border-focus:#4f46e5;--text-primary:#f3f5f9;--text-secondary:#9aa5b6;--text-muted:#626e82;--text-disabled:#414b5c;--accent-primary:#4f46e5;--accent-primary-hover:#4338ca;--accent-primary-subtle:#4f46e524;--accent-primary-border:#4f46e552;--accent-text:#e0e7ff;--color-success:#10b981;--color-success-subtle:#10b9811f;--color-success-border:#10b98147;--color-warning:#f59e0b;--color-warning-subtle:#f59e0b1f;--color-warning-border:#f59e0b47;--color-danger:#ef4444;--color-danger-subtle:#ef44441f;--color-danger-border:#ef444447;--color-info:#0ea5e9;--color-info-subtle:#0ea5e91f;--color-info-border:#0ea5e947;--shadow-xs:0 1px 2px #00000059;--shadow-sm:0 2px 5px #0006;--shadow-md:0 4px 12px #00000073, 0 1px 3px #0003;--shadow-lg:0 12px 28px #0000008c, 0 2px 6px #00000040;--shadow-sheet:0 -8px 32px #000000a6;--skeleton-bg:#191f2a;--skeleton-shimmer:#232a38;--surface-primary:var(--bg-surface-elevated);--surface-secondary:var(--bg-surface);--surface-tertiary:var(--bg-surface-hover);--surface-hover:var(--bg-surface-hover);--text-tertiary:var(--text-muted);--shadow-modal:0 20px 48px -6px #000000b3, 0 0 0 1px #ffffff0f}[data-theme=light]{--bg-app:#f7f9fb;--bg-sidebar:#f0f3f6;--bg-surface:#fff;--bg-surface-elevated:#fff;--bg-surface-active:#e7ecf2;--bg-surface-hover:#f1f4f8;--bg-card:#fff;--bg-card-hover:#f9fafb;--border-subtle:#e4e9f0;--border-default:#d3dbe4;--border-strong:#bac4d1;--border-focus:#4f46e5;--text-primary:#111827;--text-secondary:#4b5563;--text-muted:#808a98;--text-disabled:#a6b0be;--accent-primary:#4338ca;--accent-primary-hover:#3730a3;--accent-primary-subtle:#4338ca14;--accent-primary-border:#4338ca38;--accent-text:#312e81;--color-success:#059669;--color-success-subtle:#05966914;--color-success-border:#0596693d;--color-warning:#d97706;--color-warning-subtle:#d9770614;--color-warning-border:#d977063d;--color-danger:#dc2626;--color-danger-subtle:#dc262614;--color-danger-border:#dc26263d;--color-info:#0284c7;--color-info-subtle:#0284c714;--color-info-border:#0284c73d;--shadow-xs:0 1px 2px #0000000a;--shadow-sm:0 2px 4px #0000000d;--shadow-md:0 4px 12px #00000014, 0 1px 2px #0000000a;--shadow-lg:0 14px 30px #0000001f, 0 2px 4px #0000000a;--shadow-sheet:0 -8px 24px #0000001f;--skeleton-bg:#e8ecf1;--skeleton-shimmer:#f3f5f8;--surface-primary:var(--bg-surface);--surface-secondary:var(--bg-surface-hover);--surface-tertiary:var(--bg-surface-active);--surface-hover:var(--bg-surface-hover);--text-tertiary:var(--text-muted);--shadow-modal:0 20px 48px -6px #00000029, 0 0 0 1px #0000000f}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;height:100%;font-size:16px}body{font-family:var(--font-sans);background-color:var(--bg-app);color:var(--text-primary);line-height:var(--lh-normal);font-size:var(--text-base);letter-spacing:-.011em;height:100%;transition:background-color var(--duration-normal) var(--ease-smooth), color var(--duration-normal) var(--ease-smooth);overflow-x:hidden}#root{flex-direction:column;height:100%;display:flex}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-default);border-radius:9999px}::-webkit-scrollbar-thumb:hover{background:var(--border-strong)}h1,h2,h3,h4,h5,h6{color:var(--text-primary);font-weight:var(--fw-semibold);letter-spacing:-.025em;line-height:var(--lh-tight)}p{color:var(--text-secondary)}a{color:inherit;text-decoration:none}button{font-family:inherit;font-size:var(--text-sm);cursor:pointer;color:inherit;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;background:0 0;border:none;outline:none}input,textarea,select{font-family:inherit;font-size:var(--text-sm);color:var(--text-primary);background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);transition:border-color var(--duration-fast) ease, box-shadow var(--duration-fast) ease;outline:none}input:focus,textarea:focus,select:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px var(--accent-primary-subtle)}input::placeholder,textarea::placeholder{color:var(--text-muted)}.btn{justify-content:center;align-items:center;gap:var(--space-2);height:36px;padding:0 var(--space-3);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--fw-medium);transition:all var(--duration-fast) ease;white-space:nowrap;display:inline-flex}.btn-primary{background-color:var(--accent-primary);color:#fff;box-shadow:var(--shadow-xs)}.btn-primary:hover{background-color:var(--accent-primary-hover)}.btn-secondary{background-color:var(--bg-surface);color:var(--text-primary);border:1px solid var(--border-default)}.btn-secondary:hover{background-color:var(--bg-surface-hover);border-color:var(--border-strong)}.btn-ghost{color:var(--text-secondary)}.btn-ghost:hover{background-color:var(--bg-surface-hover);color:var(--text-primary)}.btn-sm{height:30px;padding:0 var(--space-2);font-size:var(--text-xs);border-radius:var(--radius-sm)}.btn-icon{border-radius:var(--radius-md);width:36px;height:36px;color:var(--text-secondary);justify-content:center;align-items:center;padding:0;display:inline-flex}.btn-icon:hover{background-color:var(--bg-surface-hover);color:var(--text-primary)}.badge{font-size:var(--text-2xs);font-weight:var(--fw-medium);border-radius:var(--radius-full);letter-spacing:.02em;align-items:center;gap:4px;padding:2px 8px;display:inline-flex}.badge-default{background:var(--bg-surface-active);color:var(--text-secondary);border:1px solid var(--border-subtle)}.badge-accent{background:var(--accent-primary-subtle);color:var(--accent-text);border:1px solid var(--accent-primary-border)}.badge-success{background:var(--color-success-subtle);color:var(--color-success);border:1px solid var(--color-success-border)}.badge-warning{background:var(--color-warning-subtle);color:var(--color-warning);border:1px solid var(--color-warning-border)}.badge-danger{background:var(--color-danger-subtle);color:var(--color-danger);border:1px solid var(--color-danger-border)}.card{background-color:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);padding:var(--space-4);transition:border-color var(--duration-fast) ease, background-color var(--duration-fast) ease, box-shadow var(--duration-fast) ease}.card-interactive{cursor:pointer}.card-interactive:hover{background-color:var(--bg-card-hover);border-color:var(--border-default)}.skeleton{background:linear-gradient(90deg, var(--skeleton-bg) 25%, var(--skeleton-shimmer) 50%, var(--skeleton-bg) 75%);border-radius:var(--radius-sm);background-size:200% 100%;animation:1.6s linear infinite shimmer}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;animation:fadeIn var(--duration-fast) ease;background-color:#000000a6;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.app-shell-root{flex-direction:column;width:100%;height:100%;display:flex}.desktop-app-shell{width:100vw;height:100dvh;display:flex;overflow:hidden}.desktop-workspace-column{background-color:var(--bg-app);flex-direction:column;flex:1;height:100dvh;display:flex;overflow:hidden}.desktop-canvas-row{flex:1;display:flex;overflow:hidden}.desktop-main-canvas{background-color:var(--bg-app);flex-direction:column;flex:1;min-width:0;min-height:0;display:flex;overflow:hidden auto}.mobile-app-shell{height:var(--app-height,100dvh);background-color:var(--bg-app);flex-direction:column;width:100%;max-width:100vw;display:flex;overflow:hidden}.mobile-main-canvas{-webkit-overflow-scrolling:touch;box-sizing:border-box;flex-direction:column;flex:1;width:100%;min-width:0;max-width:100%;min-height:0;display:flex;overflow:hidden auto}.mobile-main-canvas.is-ai-view{overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
