*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}:root{--bg-primary: #F7F3EA;--bg-secondary: #F4EFE4;--bg-tertiary: #EFE8D8;--bg-card: #FFFCF6;--bg-elevated: #FFFFFF;--bg-hover: rgba(99, 199, 160, .1);--bg-active: rgba(99, 199, 160, .16);--border-color: #E8DFD1;--border-hover: #D8CCBC;--text-primary: #172033;--text-secondary: #6F7A8C;--text-tertiary: #9AA3B2;--text-inverse: #ffffff;--accent: #63C7A0;--accent-hover: #4FB58D;--accent-glow: rgba(99, 199, 160, .22);--accent-subtle: rgba(99, 199, 160, .14);--accent-soft: #E7F7EF;--accent-softer: #F1FBF6;--success: #3AA66A;--success-bg: rgba(58, 166, 106, .12);--warning: #D89B4B;--warning-bg: rgba(216, 155, 75, .14);--danger: #D04C4C;--danger-bg: rgba(208, 76, 76, .12);--info: #4D7AC0;--info-bg: rgba(77, 122, 192, .12);--priority-high: #D04C4C;--priority-medium: #D89B4B;--priority-low: #3AA66A;--energy-high: #D04C4C;--energy-medium: #D89B4B;--energy-low: #3AA66A;--font-family: "Inter", -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", sans-serif}[data-theme=dark]{--bg-primary: #0E1726;--bg-secondary: #101C2E;--bg-tertiary: #142238;--bg-card: #142238;--bg-elevated: #182A44;--bg-hover: rgba(99, 199, 160, .1);--bg-active: rgba(99, 199, 160, .16);--border-color: rgba(255, 255, 255, .08);--border-hover: rgba(255, 255, 255, .12);--text-primary: #F5F7FA;--text-secondary: #9AA8BD;--text-tertiary: #6F7D92;--text-inverse: #0E1726;--accent: #63C7A0;--accent-hover: #75D8B3;--accent-glow: rgba(99, 199, 160, .32);--accent-subtle: rgba(99, 199, 160, .14);--accent-soft: rgba(99, 199, 160, .14);--accent-softer: rgba(99, 199, 160, .08);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .25);--shadow-md: 0 6px 20px rgba(0, 0, 0, .3), 0 1px 3px rgba(0, 0, 0, .2);--shadow-lg: 0 18px 48px rgba(0, 0, 0, .4), 0 2px 6px rgba(0, 0, 0, .22)}:root{--font-size-xs: .6875rem;--font-size-sm: .8125rem;--font-size-base: .9375rem;--font-size-lg: 1.125rem;--font-size-xl: 1.375rem;--font-size-2xl: 1.75rem;--font-size-3xl: 2.25rem;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--sidebar-width: 260px;--sidebar-collapsed: 60px;--header-height: 0px;--border-radius-sm: 8px;--border-radius: 12px;--border-radius-lg: 16px;--border-radius-xl: 22px;--border-radius-2xl: 24px;--border-radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(23, 32, 51, .04);--shadow-md: 0 6px 20px rgba(23, 32, 51, .06), 0 1px 3px rgba(23, 32, 51, .04);--shadow-lg: 0 18px 48px rgba(23, 32, 51, .08), 0 2px 8px rgba(23, 32, 51, .04);--shadow-glow: 0 0 0 3px var(--accent-glow);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .2s cubic-bezier(.4, 0, .2, 1);--transition-slow: .25s cubic-bezier(.4, 0, .2, 1)}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;overscroll-behavior-x:none}body{font-family:var(--font-family);background:var(--bg-primary);color:var(--text-primary);line-height:1.55;min-height:100vh;overflow-x:hidden;overscroll-behavior-x:none;width:100%;max-width:100vw;transition:background-color var(--transition-base),color var(--transition-fast)}#root{min-height:100vh;overflow-x:hidden;max-width:100vw}a{color:var(--accent);text-decoration:none}*:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}button:focus-visible,a:focus-visible,[role=button]:focus-visible{outline-offset:3px}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--border-hover)}.app-layout{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh;overflow-x:hidden;width:100%;max-width:100vw;position:relative}.main-wrapper{flex:1;margin-left:0;padding-bottom:calc(70px + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;min-height:100vh;min-height:100dvh;overflow-x:hidden;width:100%;max-width:100vw;transition:margin-left var(--transition-slow)}@media(min-width:768px){.app-layout{flex-direction:row}.main-wrapper{margin-left:var(--sidebar-width);padding-bottom:0}}.top-bar{position:sticky;top:0;z-index:50;padding:var(--space-3) var(--space-8);background:#0a0a14d9;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:flex-end}.main-content{flex:1;padding:var(--space-8);max-width:1200px;width:100%;margin-left:auto;margin-right:auto;transition:margin-left var(--transition-slow)}.sidebar{width:var(--sidebar-width);height:100vh;position:fixed;left:0;top:0;background:var(--bg-secondary);border-right:1px solid var(--border-color);display:flex;flex-direction:column;z-index:100;transition:all var(--transition-slow);overflow-y:auto}.sidebar-logo{padding:var(--space-5) var(--space-5) var(--space-4);display:flex;align-items:center;border-bottom:1px solid var(--border-color)}.sidebar-section{padding:var(--space-4) var(--space-3)}.sidebar-section-title{font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary);padding:0 var(--space-3);margin-bottom:var(--space-2)}.sidebar-nav{display:flex;flex-direction:column;gap:2px}.sidebar-link{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--border-radius);color:var(--text-secondary);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:all var(--transition-fast);text-decoration:none;border:none;background:none;width:100%;text-align:left}.sidebar-link.active{background:var(--accent-subtle);color:var(--accent-hover);font-weight:600;box-shadow:inset 3px 0 0 var(--accent)}.sidebar-link .link-icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0}.sidebar-link .link-badge{margin-left:auto;background:var(--accent);color:#fff;font-size:var(--font-size-xs);padding:1px 6px;border-radius:var(--border-radius-full);font-weight:600;min-width:20px;text-align:center}.sidebar-user{margin-top:auto;padding:var(--space-4) var(--space-5);border-top:1px solid var(--border-color);display:flex;align-items:center;gap:var(--space-3)}.sidebar-user .user-avatar{width:30px;height:30px;border-radius:var(--border-radius-full);background:linear-gradient(135deg,var(--accent),var(--accent-hover));display:flex;align-items:center;justify-content:center;font-size:var(--font-size-sm);font-weight:600;color:#fff;flex-shrink:0;box-shadow:0 1px 2px #1720331a}.sidebar-user .user-info{flex:1;min-width:0}.sidebar-user .user-name{font-size:var(--font-size-sm);font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user .user-email{font-size:var(--font-size-xs);color:var(--text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user .logout-btn{background:none;border:none;color:var(--text-tertiary);cursor:pointer;padding:6px;border-radius:8px;transition:background var(--transition-fast),color var(--transition-fast);display:flex;align-items:center;justify-content:center}.sidebar-user .logout-btn:hover{background:var(--danger-bg);color:var(--danger)}.page-header{margin-bottom:var(--space-8)}.page-header h2{font-size:var(--font-size-2xl);font-weight:700;letter-spacing:-.025em;margin-bottom:var(--space-2);line-height:1.15;color:var(--text-primary)}.page-header p{color:var(--text-secondary);font-size:var(--font-size-sm);margin-top:var(--space-1);letter-spacing:-.005em;line-height:1.5}.page-header-actions{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-3)}.card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);padding:var(--space-6);box-shadow:var(--shadow-sm);transition:border-color var(--transition-base),box-shadow var(--transition-base)}.card:hover{border-color:var(--border-hover);box-shadow:var(--shadow-md)}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4)}.card-title{font-size:var(--font-size-base);font-weight:600}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:.55rem var(--space-5);border-radius:var(--border-radius);font-family:var(--font-family);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast);border:1px solid transparent;white-space:nowrap;letter-spacing:-.01em}.btn-primary{background:var(--accent);color:#fff;border-color:var(--accent);box-shadow:0 1px 2px #1720331a,inset 0 1px #ffffff1a}.btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover);box-shadow:0 2px 8px #63c7a04d,inset 0 1px #ffffff1f}.btn-primary:active:not(:disabled){background:var(--accent-hover);transform:scale(.98);box-shadow:0 1px 1px #1720331a}.btn-secondary{background:var(--bg-card);color:var(--text-primary);border-color:var(--border-color)}.btn-secondary:hover{background:var(--bg-secondary);border-color:var(--border-hover)}.btn-secondary:active:not(:disabled){transform:scale(.98)}.btn-ghost{background:transparent;color:var(--text-secondary);border-color:transparent}.btn-ghost:hover{background:var(--bg-hover);color:var(--text-primary)}.btn-danger{background:transparent;color:var(--danger);border-color:var(--border-color)}.btn-danger:hover{background:var(--danger-bg);border-color:var(--danger)}.btn-sm{padding:var(--space-1) var(--space-3);font-size:var(--font-size-xs)}.btn-lg{padding:var(--space-3) var(--space-6);font-size:var(--font-size-base)}.btn-icon{padding:var(--space-2);width:32px;height:32px}.form-group{margin-bottom:var(--space-4)}.form-label{display:block;font-size:var(--font-size-sm);font-weight:500;color:var(--text-secondary);margin-bottom:var(--space-1)}.form-input,.form-select,.form-textarea{width:100%;padding:.65rem var(--space-4);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--border-radius);color:var(--text-primary);font-family:var(--font-family);font-size:var(--font-size-sm);letter-spacing:-.005em;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast);outline:none}.form-input:hover:not(:focus):not(:disabled),.form-select:hover:not(:focus):not(:disabled),.form-textarea:hover:not(:focus):not(:disabled){border-color:var(--border-hover)}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--accent);background:var(--bg-elevated);box-shadow:0 0 0 3px var(--accent-glow)}.form-input::placeholder,.form-textarea::placeholder{color:var(--text-tertiary)}.form-textarea{resize:vertical;min-height:80px}.form-select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%238b8fa3' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10l-5 5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;padding-right:30px}.form-select option{background:var(--bg-secondary);color:var(--text-primary)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.form-inline{display:flex;gap:var(--space-3);align-items:flex-end}.quick-add{display:flex;gap:var(--space-3);margin-bottom:var(--space-6)}.quick-add .form-input{flex:1;padding:var(--space-3) var(--space-4);font-size:var(--font-size-base);background:var(--bg-tertiary);border-color:transparent}.quick-add .form-input:focus{background:var(--bg-primary);border-color:var(--accent)}.task-list{display:flex;flex-direction:column;gap:6px}.task-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--border-radius);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}.task-item:hover{border-color:var(--border-hover);box-shadow:var(--shadow-sm)}.task-checkbox{width:18px;height:18px;border:2px solid var(--border-hover);border-radius:var(--border-radius-full);flex-shrink:0;cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center;background:transparent}.task-checkbox:hover{border-color:var(--accent)}.task-checkbox.checked{background:var(--success);border-color:var(--success)}.task-checkbox.checked:after{content:"✓";color:#fff;font-size:10px;font-weight:700}.task-content{flex:1;min-width:0}.task-title{font-size:var(--font-size-sm);font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.task-title.completed{text-decoration:line-through;color:var(--text-tertiary)}.task-meta{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-1);flex-wrap:wrap;row-gap:3px}.task-meta-item{font-size:var(--font-size-xs);color:var(--text-tertiary);display:flex;align-items:center;gap:var(--space-1)}.task-actions{display:flex;gap:var(--space-1);opacity:0;transition:opacity var(--transition-fast)}.task-item:hover .task-actions{opacity:1}.priority-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:var(--border-radius-full);font-size:var(--font-size-xs);font-weight:600;letter-spacing:-.005em;line-height:1.4}.priority-high{background:var(--danger-bg);color:var(--danger)}.priority-medium{background:var(--warning-bg);color:var(--warning)}.priority-low{background:var(--success-bg);color:var(--success)}.energy-badge{display:inline-flex;padding:3px 10px;border-radius:var(--border-radius-full);font-size:var(--font-size-xs);font-weight:500;letter-spacing:-.005em;line-height:1.4}.energy-high{background:var(--danger-bg);color:var(--danger)}.energy-medium{background:var(--warning-bg);color:var(--warning)}.energy-low{background:var(--success-bg);color:var(--success)}.status-badge{display:inline-flex;padding:3px 10px;border-radius:var(--border-radius-full);font-size:var(--font-size-xs);font-weight:600;letter-spacing:-.005em;line-height:1.4}.status-active{background:var(--success-bg);color:var(--success)}.status-completed{background:var(--info-bg);color:var(--info)}.status-on_hold{background:var(--warning-bg);color:var(--warning)}.status-cancelled{background:var(--danger-bg);color:var(--danger)}.label-tag{display:inline-flex;align-items:center;padding:1px 8px;border-radius:var(--border-radius-full);font-size:var(--font-size-xs);font-weight:500;gap:4px}.kanban-board{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-4);margin-top:var(--space-4)}.kanban-board-flex{display:flex;gap:var(--space-4);overflow-x:auto;padding-bottom:var(--space-4);margin-top:var(--space-4)}.kanban-column{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);padding:var(--space-4);min-height:200px;min-width:300px}.kanban-column-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--border-color)}.kanban-column-title{font-size:var(--font-size-sm);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary)}.kanban-count{font-size:var(--font-size-xs);color:var(--text-tertiary);background:var(--bg-tertiary);padding:2px 8px;border-radius:var(--border-radius-full)}.kanban-cards{display:flex;flex-direction:column;gap:var(--space-2)}.kanban-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--border-radius);padding:var(--space-3);cursor:pointer;transition:all var(--transition-fast)}.kanban-card:hover{border-color:var(--border-hover);box-shadow:var(--shadow-sm)}.progress-bar{width:100%;height:6px;background:var(--bg-tertiary);border-radius:var(--border-radius-full);overflow:hidden}.progress-bar-fill{height:100%;border-radius:var(--border-radius-full);background:linear-gradient(90deg,var(--accent),var(--accent-hover));transition:width var(--transition-slow)}.progress-bar-fill.success{background:linear-gradient(90deg,var(--success),var(--success))}.progress-bar-fill.warning{background:linear-gradient(90deg,var(--warning),var(--warning))}.progress-bar-fill.danger{background:linear-gradient(90deg,var(--danger),var(--danger))}.progress-text{font-size:var(--font-size-sm);font-weight:600;color:var(--text-primary)}.modal-overlay{position:fixed;inset:0;background:#0f172a73;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn var(--transition-fast);overflow:hidden;overscroll-behavior:contain}.modal{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--border-radius-2xl);width:90%;max-width:560px;max-height:85vh;max-height:85dvh;display:flex;flex-direction:column;overflow:hidden;box-shadow:var(--shadow-lg);animation:slideUp var(--transition-slow)}@media(max-width:767px){.modal-overlay{align-items:flex-end;justify-content:center;padding:0;overflow-y:hidden;overscroll-behavior:contain}.modal{width:100%;max-width:100%;margin:0;border-radius:20px 20px 0 0;max-height:calc(100vh - max(env(safe-area-inset-top,0px),16px));max-height:calc(100dvh - max(env(safe-area-inset-top,0px),16px))}.modal-body{overscroll-behavior:contain}}@media(max-width:767px){body.keyboard-open .modal-overlay{align-items:flex-start;justify-content:center;padding:max(env(safe-area-inset-top,0px),12px) 0 12px;height:var(--visual-viewport-height, 100dvh)}body.keyboard-open .modal{border-radius:16px;max-height:calc(var(--visual-viewport-height, 100dvh) - 24px)}body.keyboard-open .modal-footer{padding-bottom:12px}}.modal-header{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--border-color);background:var(--bg-card)}.modal-header h3{font-size:var(--font-size-lg);font-weight:600;letter-spacing:-.02em;color:var(--text-primary)}.modal-body{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:var(--space-6);scroll-padding-top:12px}.modal-footer{flex-shrink:0;display:flex;align-items:center;justify-content:flex-end;gap:var(--space-3);padding:var(--space-4) var(--space-6);border-top:1px solid var(--border-color);background:var(--bg-card);padding-bottom:max(var(--space-4),env(safe-area-inset-bottom,0px))}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-4);margin-bottom:var(--space-8)}.stat-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);padding:var(--space-6);box-shadow:var(--shadow-sm);transition:border-color var(--transition-base),box-shadow var(--transition-base)}.stat-card:hover{border-color:var(--border-hover);box-shadow:var(--shadow-md)}.stat-card .stat-icon{font-size:1.5rem;margin-bottom:var(--space-3)}.stat-card .stat-value{font-size:var(--font-size-2xl);font-weight:700;background:linear-gradient(135deg,var(--text-primary),var(--accent-hover));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.stat-card .stat-label{font-size:var(--font-size-xs);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;margin-top:var(--space-1)}.okr-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);padding:var(--space-6);box-shadow:var(--shadow-sm);transition:border-color var(--transition-base),box-shadow var(--transition-base);cursor:pointer}.okr-card:hover{border-color:var(--border-hover);box-shadow:var(--shadow-md)}.okr-card-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:var(--space-3)}.okr-progress-circle{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-sm);font-weight:700;flex-shrink:0;border:3px solid}.key-result-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) 0}.key-result-item .kr-title{flex:1;font-size:var(--font-size-sm);color:var(--text-secondary)}.key-result-item .progress-bar{width:100px;flex-shrink:0}.filters-bar{display:flex;gap:var(--space-3);margin-bottom:var(--space-6);flex-wrap:wrap;align-items:center}.filter-chip{display:inline-flex;align-items:center;gap:var(--space-1);padding:5px 12px;border-radius:var(--border-radius-full);font-size:var(--font-size-xs);font-weight:500;background:var(--bg-card);color:var(--text-secondary);border:1px solid var(--border-color);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.filter-chip:hover{background:var(--bg-secondary);border-color:var(--border-hover);color:var(--text-primary)}.filter-chip.active{background:var(--accent-subtle);color:var(--accent-hover);border-color:var(--accent)}.view-toggle{display:flex;align-items:center;gap:var(--space-2);background:var(--bg-tertiary);border-radius:var(--border-radius);border:1px solid var(--border-color);overflow:hidden}.view-toggle button{padding:var(--space-1) var(--space-3);border:none;background:transparent;color:var(--text-secondary);cursor:pointer;font-size:var(--font-size-xs);font-weight:500;transition:all var(--transition-fast);font-family:var(--font-family);white-space:nowrap}.view-toggle button.active{background:var(--accent);color:#fff}.view-toggle .btn-primary{margin:-1px;border-radius:0 var(--border-radius) var(--border-radius) 0;border-left:1px solid rgba(255,255,255,.15);padding:var(--space-1) var(--space-3);font-size:var(--font-size-xs)}.process-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--border-radius-xl);padding:var(--space-8);max-width:600px;margin:0 auto;text-align:center;box-shadow:var(--shadow-sm)}.process-card .task-title{font-size:var(--font-size-xl);margin-bottom:var(--space-6);white-space:normal}.process-actions{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.process-btn{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-4);border-radius:var(--border-radius-lg);border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-base);font-family:var(--font-family)}.process-btn:hover{border-color:var(--accent);background:var(--accent-subtle);color:var(--text-primary)}.process-btn .process-icon{font-size:1.5rem}.process-btn .process-label{font-size:var(--font-size-sm);font-weight:500}.empty-state{text-align:center;padding:var(--space-12) var(--space-8)}.empty-state .empty-icon{font-size:2.5rem;margin-bottom:var(--space-4);opacity:.45}.empty-state h3{font-size:var(--font-size-lg);font-weight:600;margin-bottom:var(--space-2);color:var(--text-primary);letter-spacing:-.015em}.empty-state p{color:var(--text-tertiary);font-size:var(--font-size-sm);max-width:360px;margin:0 auto;line-height:1.55}.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-primary);padding:var(--space-4)}.auth-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius-xl);padding:var(--space-10);width:100%;max-width:420px;box-shadow:var(--shadow-lg)}.auth-card .auth-logo{text-align:center;margin-bottom:var(--space-8);display:flex;flex-direction:column;align-items:center}.auth-card .auth-logo h2{font-size:var(--font-size-xl);font-weight:700}.auth-card .auth-logo p{color:var(--text-tertiary);font-size:var(--font-size-sm);margin-top:var(--space-1)}.auth-error{background:var(--danger-bg);color:var(--danger);border:1px solid rgba(239,68,68,.2);border-radius:var(--border-radius);padding:var(--space-3);font-size:var(--font-size-sm);margin-bottom:var(--space-4)}.auth-footer{text-align:center;margin-top:var(--space-6);font-size:var(--font-size-sm);color:var(--text-tertiary)}.auth-footer a{color:var(--accent);font-weight:500}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}@keyframes mindmap-pulse{0%,to{box-shadow:0 0 0 2px #f59e0b,0 2px 8px #f59e0b44}50%{box-shadow:0 0 0 4px #f59e0b,0 4px 16px #f59e0b66}}.react-flow__node:hover .mm-handle--visual,.react-flow__node.selected .mm-handle--visual{opacity:1!important;transform:scale(1.15)}.react-flow__node .mm-handle--visual{opacity:.55;pointer-events:none}.react-flow__node .mm-handle--hit{cursor:crosshair}.react-flow__edge.mm-edge--associative .react-flow__edge-path{stroke-dasharray:6 4;stroke-opacity:.85}.react-flow__edge.mm-edge--associative.selected .react-flow__edge-path,.react-flow__edge.mm-edge--associative:hover .react-flow__edge-path{stroke-opacity:1}.fade-in{animation:fadeIn var(--transition-slow)}.slide-up{animation:slideUp var(--transition-slow)}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-5);margin-bottom:var(--space-6)}.dashboard-section{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);padding:var(--space-5);box-shadow:var(--shadow-sm)}.dashboard-section h3{font-size:var(--font-size-base);font-weight:600;margin-bottom:var(--space-4);display:flex;align-items:center;gap:var(--space-2);letter-spacing:-.015em;color:var(--text-primary)}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-6)}.three-col{display:grid;grid-template-columns:1fr 1fr 1fr;gap:var(--space-4)}@media(max-width:1024px){.dashboard-grid,.two-col{grid-template-columns:1fr}.three-col{grid-template-columns:1fr 1fr}}@media(max-width:768px){.sidebar{transform:translate(-100%)}.sidebar.open{transform:translate(0)}.main-content{margin-left:0;padding:var(--space-4)}.form-row{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,1fr)}.kanban-board,.process-actions,.three-col{grid-template-columns:1fr}.mobile-menu-btn{display:flex!important}}.mobile-menu-btn{display:none;position:fixed;bottom:var(--space-4);right:var(--space-4);width:48px;height:48px;border-radius:var(--border-radius-full);background:var(--accent);color:#fff;border:none;cursor:pointer;z-index:101;align-items:center;justify-content:center;font-size:1.25rem;box-shadow:var(--shadow-lg)}.divider{height:1px;background:var(--border-color);margin:var(--space-4) 0}.text-muted{color:var(--text-tertiary)}.text-sm{font-size:var(--font-size-sm)}.text-xs{font-size:var(--font-size-xs)}.mt-2{margin-top:var(--space-2)}.mt-4{margin-top:var(--space-4)}.mt-6{margin-top:var(--space-6)}.mb-2{margin-bottom:var(--space-2)}.mb-4{margin-bottom:var(--space-4)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.flex{display:flex}.flex-1{flex:1}.comment-item{padding:var(--space-3);border-bottom:1px solid var(--border-color)}.comment-item:last-child{border-bottom:none}.comment-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-1)}.comment-author{font-size:var(--font-size-sm);font-weight:600;color:var(--accent-hover)}.comment-date{font-size:var(--font-size-xs);color:var(--text-tertiary)}.comment-content{font-size:var(--font-size-sm);color:var(--text-secondary)}.tab-bar{display:flex;gap:0;border-bottom:1px solid var(--border-color);margin-bottom:var(--space-6)}.tab-btn{padding:var(--space-3) var(--space-5);border:none;background:none;color:var(--text-secondary);font-family:var(--font-family);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;border-bottom:2px solid transparent;transition:all var(--transition-fast);margin-bottom:-1px}.tab-btn:hover{color:var(--text-primary)}.tab-btn.active{color:var(--accent-hover);border-bottom-color:var(--accent)}:root{--priority-score-critical: #c084fc;--priority-score-critical-bg: rgba(192, 132, 252, .08);--priority-score-critical-border: rgba(192, 132, 252, .2);--priority-score-high: #75D8B3;--priority-score-high-bg: rgba(129, 140, 248, .08);--priority-score-high-border: rgba(129, 140, 248, .2);--priority-score-medium: #34d399;--priority-score-medium-bg: rgba(52, 211, 153, .08);--priority-score-medium-border: rgba(52, 211, 153, .2);--priority-score-low: #64748b;--priority-score-low-bg: rgba(100, 116, 139, .06);--priority-score-low-border: rgba(100, 116, 139, .15)}.priority-workload{display:flex;align-items:center;gap:var(--space-6);padding:var(--space-4) var(--space-6);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);margin-bottom:var(--space-6)}.workload-item{display:flex;flex-direction:column;align-items:center;gap:var(--space-1)}.workload-value{font-size:var(--font-size-xl);font-weight:700;color:var(--text-primary)}.workload-today{color:var(--warning)}.workload-overdue{color:var(--danger)}.workload-label{font-size:var(--font-size-xs);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;font-weight:500}.workload-divider{width:1px;height:36px;background:var(--border-color)}.priority-cards{display:flex;flex-direction:column;gap:var(--space-3);margin-bottom:var(--space-8)}.priority-card{display:flex;align-items:stretch;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);overflow:hidden;transition:all var(--transition-base);animation:prioritySlideIn .4s ease both}@keyframes prioritySlideIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.priority-card:hover{border-color:var(--border-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.priority-card-critical{border-color:var(--priority-score-critical-border);background:var(--priority-score-critical-bg)}.priority-card-critical:hover{border-color:var(--priority-score-critical);box-shadow:0 4px 20px #c084fc1f}.priority-card-high{border-color:var(--priority-score-high-border);background:var(--priority-score-high-bg)}.priority-card-high:hover{border-color:var(--priority-score-high);box-shadow:0 4px 20px #818cf81f}.priority-card-medium{border-color:var(--priority-score-medium-border);background:var(--priority-score-medium-bg)}.priority-card-medium:hover{border-color:var(--priority-score-medium);box-shadow:0 4px 20px #34d3991f}.priority-card-low{border-color:var(--priority-score-low-border);background:var(--priority-score-low-bg)}.priority-card-rank{display:flex;align-items:center;justify-content:center;width:48px;flex-shrink:0;background:#ffffff05;border-right:1px solid var(--border-color)}.rank-number{font-size:var(--font-size-xl);font-weight:800;color:var(--text-tertiary);opacity:.6}.priority-card-critical .rank-number{color:var(--priority-score-critical);opacity:1}.priority-card-high .rank-number{color:var(--priority-score-high);opacity:1}.priority-card-medium .rank-number{color:var(--priority-score-medium);opacity:.8}.priority-card-body{flex:1;padding:var(--space-4) var(--space-5);min-width:0}.priority-card-header{margin-bottom:var(--space-3)}.priority-card-title-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-2)}.priority-card-title{font-size:var(--font-size-base);font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.priority-card-actions{display:flex;gap:var(--space-1);flex-shrink:0;opacity:.5;transition:opacity var(--transition-fast)}.priority-card:hover .priority-card-actions{opacity:1}.priority-pin.pinned{opacity:1!important;background:var(--accent-subtle)}.priority-card-meta{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.eisenhower-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border-radius:var(--border-radius-full);font-size:var(--font-size-xs);font-weight:600}.eq-do{background:#ef44441a;color:#f87171}.eq-plan{background:#63c7a01a;color:#a5b4fc}.eq-delegate{background:#f59e0b1a;color:#fbbf24}.eq-eliminate{background:#64748b1a;color:#94a3b8}.priority-score-section{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-2)}.priority-score-bar-track{flex:1;height:5px;background:#ffffff0a;border-radius:var(--border-radius-full);overflow:hidden}.priority-score-bar-fill{height:100%;border-radius:var(--border-radius-full);transition:width .6s ease}.score-critical{background:linear-gradient(90deg,#a855f7,#c084fc)}.score-high{background:linear-gradient(90deg,#63c7a0,#75d8b3)}.score-medium{background:linear-gradient(90deg,#10b981,#34d399)}.score-low{background:linear-gradient(90deg,#475569,#64748b)}.priority-score-value{font-size:var(--font-size-sm);font-weight:700;min-width:28px;text-align:right}.priority-okr-link{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:#63c7a00f;border-radius:var(--border-radius);margin-bottom:var(--space-2)}.okr-link-icon{font-size:var(--font-size-sm);flex-shrink:0}.okr-link-text{font-size:var(--font-size-xs);color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.okr-kr-text{color:var(--text-tertiary)}.priority-card-labels{display:flex;gap:var(--space-2);flex-wrap:wrap}.priority-legend{padding:var(--space-5);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--border-radius-lg)}.priority-legend h4{font-size:var(--font-size-sm);font-weight:600;margin-bottom:var(--space-2);color:var(--text-secondary)}.priority-legend p{font-size:var(--font-size-sm);color:var(--text-tertiary);margin-bottom:var(--space-3)}.legend-items{display:flex;gap:var(--space-5);flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-xs);color:var(--text-tertiary)}.legend-dot{width:8px;height:8px;border-radius:var(--border-radius-full)}.legend-dot-critical{background:var(--priority-score-critical)}.legend-dot-high{background:var(--priority-score-high)}.legend-dot-medium{background:var(--priority-score-medium)}.legend-dot-low{background:var(--priority-score-low)}.empty-state-icon{font-size:3rem;margin-bottom:var(--space-4)}.eisenhower-fields{display:grid;grid-template-columns:1fr 1fr 1fr;gap:var(--space-3)}@media(max-width:768px){.priority-workload{gap:var(--space-4);padding:var(--space-3) var(--space-4)}.workload-value{font-size:var(--font-size-lg)}.priority-card-rank{width:36px}.rank-number{font-size:var(--font-size-lg)}.priority-card-body{padding:var(--space-3)}.priority-card-meta{gap:var(--space-2)}.legend-items{gap:var(--space-3)}.eisenhower-fields{grid-template-columns:1fr}}.fab-container{position:fixed;bottom:var(--space-8);right:var(--space-8);z-index:1000;display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-3)}.fab-button{width:56px;height:56px;border-radius:var(--border-radius-full);border:none;background:linear-gradient(135deg,var(--accent),#75D8B3);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px #63c7a066;transition:all var(--transition-base)}.fab-button:hover{transform:scale(1.08);box-shadow:0 6px 28px #63c7a080}.fab-button.fab-active{background:var(--bg-tertiary);box-shadow:var(--shadow-lg);transform:rotate(45deg)}.fab-icon{font-size:1.5rem;font-weight:300;line-height:1;transition:transform var(--transition-base)}.fab-active .fab-icon{transform:rotate(-45deg)}.fab-menu{display:flex;flex-direction:column;gap:var(--space-2);animation:fabMenuIn .2s ease}@keyframes fabMenuIn{0%{opacity:0;transform:translateY(8px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.fab-menu-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);color:var(--text-primary);font-family:var(--font-family);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.fab-menu-item:hover{background:var(--bg-hover);border-color:var(--border-hover);box-shadow:var(--shadow-sm)}.fab-menu-icon{font-size:1.1rem}.quick-action-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-3);margin-bottom:var(--space-6)}.quick-action-btn{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);background:var(--bg-card);color:var(--text-primary);font-family:var(--font-family);font-size:var(--font-size-sm);font-weight:600;letter-spacing:-.01em;cursor:pointer;box-shadow:var(--shadow-sm);transition:border-color var(--transition-base),box-shadow var(--transition-base),background var(--transition-base);text-align:left}.quick-action-btn:hover{border-color:var(--border-hover);box-shadow:var(--shadow-md)}.quick-action-btn:active:not(:disabled){transform:scale(.98)}.quick-action-btn .qa-icon{font-size:1.125rem;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:var(--border-radius);flex-shrink:0;transition:filter var(--transition-base)}.quick-action-btn .qa-label{white-space:nowrap}.qa-task .qa-icon{background:var(--accent-soft);color:var(--accent)}.qa-project .qa-icon{background:#4d7ac01f;color:var(--info)}.qa-company .qa-icon{background:#d89b4b24;color:var(--warning)}.qa-okr .qa-icon{background:#3aa66a24;color:var(--success)}.quick-action-btn:hover .qa-icon{filter:saturate(1.1)}.quick-input-main{padding:var(--space-4) var(--space-5)!important;font-size:var(--font-size-lg)!important;font-weight:500!important;background:var(--bg-tertiary)!important;border-color:transparent!important}.quick-input-main:focus{background:var(--bg-primary)!important;border-color:var(--accent)!important}.quick-input-main::placeholder{color:var(--text-tertiary);font-weight:400}.quick-form-extras{border-top:1px solid var(--border-color);padding-top:var(--space-4);margin-top:var(--space-2)}.quick-toast{position:fixed;top:var(--space-8);right:var(--space-8);z-index:10000;padding:var(--space-3) var(--space-6);background:var(--bg-secondary);border:1px solid var(--success);border-radius:var(--border-radius-lg);color:var(--success);font-size:var(--font-size-sm);font-weight:600;box-shadow:0 8px 32px #22c55e26;animation:toastIn .3s ease,toastOut .3s ease 2.2s forwards}@keyframes toastIn{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@keyframes toastOut{0%{opacity:1}to{opacity:0;transform:translateY(-8px)}}@media(max-width:900px){.quick-action-strip{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.quick-action-strip{grid-template-columns:1fr}.fab-container{bottom:var(--space-6);right:var(--space-6)}.fab-button{width:48px;height:48px}.fab-icon{font-size:1.25rem}}.company-switcher{position:relative}.company-switcher-btn{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);background:var(--bg-card);color:var(--text-primary);font-family:var(--font-family);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:all var(--transition-fast);min-width:180px}.company-switcher-btn:hover{border-color:var(--accent);background:var(--bg-hover)}.cs-logo{width:28px;height:28px;border-radius:var(--border-radius);display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden}.cs-global{font-size:1.1rem}.cs-logo-img{width:100%;height:100%;object-fit:cover;border-radius:var(--border-radius)}.cs-logo-letter{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--accent),#75D8B3);color:#fff;font-weight:700;font-size:var(--font-size-xs);border-radius:var(--border-radius)}.cs-name{flex:1;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cs-chevron{font-size:.55rem;color:var(--text-tertiary);margin-left:auto}.company-dropdown{position:absolute;top:calc(100% + var(--space-2));right:0;min-width:300px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-xl);padding:var(--space-2);z-index:200;animation:fabMenuIn .15s ease;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.company-option{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);border:none;border-radius:var(--border-radius);background:transparent;color:var(--text-primary);font-family:var(--font-family);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast);text-align:left}.company-option:hover{background:var(--bg-hover)}.company-option.active{background:#63c7a01a;border:1px solid rgba(99,199,160,.2)}.co-logo{width:32px;height:32px;border-radius:var(--border-radius);display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden}.co-info{flex:1;display:flex;flex-direction:column;gap:1px;min-width:0}.co-name{font-weight:600;font-size:var(--font-size-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.co-desc,.co-role{font-size:var(--font-size-xs);color:var(--text-tertiary)}.co-stats{font-size:var(--font-size-xs);color:var(--text-tertiary);white-space:nowrap}.company-divider{height:1px;background:var(--border-color);margin:var(--space-2) var(--space-3)}.company-empty{text-align:center;padding:var(--space-4);color:var(--text-tertiary);font-size:var(--font-size-xs)}.proj-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-6);flex-wrap:wrap;gap:var(--space-4)}.proj-views,.proj-filters{display:flex;gap:var(--space-2);background:var(--bg-secondary);padding:var(--space-1);border-radius:var(--border-radius-lg);border:1px solid var(--border-color)}.proj-view-btn,.proj-filter-btn{border:none;background:transparent;padding:var(--space-2) var(--space-4);border-radius:var(--border-radius);color:var(--text-tertiary);font-family:var(--font-family);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.proj-view-btn:hover,.proj-filter-btn:hover{color:var(--text-primary)}.proj-view-btn.active,.proj-filter-btn.active{background:var(--bg-card);color:var(--text-primary);box-shadow:var(--shadow-sm)}.proj-list{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);overflow:hidden}.proj-list-header{display:flex;padding:var(--space-3) var(--space-4);background:var(--bg-secondary);border-bottom:1px solid var(--border-color);font-size:var(--font-size-xs);font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px}.proj-list-row{display:flex;padding:var(--space-4);border-bottom:1px solid var(--border-color);align-items:center;transition:background var(--transition-fast);cursor:pointer}.proj-list-row:last-child{border-bottom:none}.proj-list-row:hover{background:var(--bg-hover);border-color:var(--border-hover)}.proj-col-name{flex:2;display:flex;flex-direction:column;min-width:200px}.proj-col-name strong{color:var(--text-primary);font-size:var(--font-size-md)}.proj-col-name small{color:var(--text-tertiary);font-size:var(--font-size-sm);margin-top:2px}.proj-col-status{flex:1;min-width:120px}.proj-col-priority{flex:.5;min-width:80px;text-align:center}.proj-col-tasks{flex:.5;min-width:80px;font-size:var(--font-size-sm);color:var(--text-secondary);text-align:center}.proj-col-progress{flex:1;min-width:120px;display:flex;align-items:center;gap:var(--space-2)}.proj-col-dates{flex:1;min-width:150px;font-size:var(--font-size-sm);color:var(--text-secondary);display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.proj-date-overdue{color:var(--danger, #dc2626);font-weight:600}.proj-overdue-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;background:#dc26261f;color:var(--danger, #dc2626);border:1px solid rgba(220,38,38,.25);border-radius:999px;font-size:var(--font-size-xs);font-weight:600;white-space:nowrap}.proj-col-okr{flex:1;min-width:120px;font-size:var(--font-size-sm);color:var(--accent);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.status-pill{display:inline-flex;align-items:center;gap:var(--space-1);padding:2px 8px;border-radius:12px;font-size:var(--font-size-xs);font-weight:500}.status-pill-active{background:#22c55e1a;color:#22c55e}.status-pill-on_hold{background:#f59e0b1a;color:#f59e0b}.status-pill-completed{background:#63c7a01a;color:#63c7a0}.priority-dot{font-size:14px}.proj-bar{flex:1;height:6px;background:var(--bg-hover);border-radius:3px;overflow:hidden}.proj-bar-fill{height:100%;border-radius:3px;transition:width .3s ease}.proj-kanban{display:flex;gap:var(--space-6);overflow-x:auto;padding-bottom:var(--space-4);align-items:flex-start}.proj-kanban-col{flex:1;min-width:300px;background:var(--bg-secondary);border-radius:var(--border-radius-lg);padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3)}.proj-kanban-header{display:flex;justify-content:space-between;align-items:center;font-weight:600;color:var(--text-secondary);margin-bottom:var(--space-2)}.proj-kanban-count{background:var(--bg-hover);padding:2px 8px;border-radius:12px;font-size:var(--font-size-xs)}.proj-kanban-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--border-radius);padding:var(--space-4);cursor:pointer;transition:all var(--transition-fast);box-shadow:var(--shadow-sm)}.proj-kanban-card:hover{transform:translateY(-2px);border-color:var(--accent);box-shadow:var(--shadow-md)}.pk-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-2)}.pk-header strong{color:var(--text-primary)}.pk-desc{font-size:var(--font-size-sm);color:var(--text-tertiary);margin-bottom:var(--space-3);display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.pk-meta{display:flex;justify-content:space-between;font-size:var(--font-size-xs);color:var(--text-secondary);margin-bottom:var(--space-3)}.proj-kanban-empty{text-align:center;color:var(--text-tertiary);font-size:var(--font-size-sm);padding:var(--space-4) 0;border:2px dashed var(--border-color);border-radius:var(--border-radius)}.proj-progress-view{display:flex;flex-direction:column;gap:var(--space-3)}.proj-progress-row{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3);cursor:pointer;transition:all var(--transition-fast)}.proj-progress-row:hover{border-color:var(--accent)}.pp-info{display:flex;align-items:center;gap:var(--space-3)}.pp-info strong{flex:1;font-size:var(--font-size-lg)}.pp-bar-wrap{display:flex;align-items:center;gap:var(--space-4)}.pp-bar{flex:1;height:12px;background:var(--bg-hover);border-radius:6px;overflow:hidden}.pp-bar-fill{height:100%;border-radius:6px;transition:width .5s ease}.pp-pct{font-weight:700;font-size:var(--font-size-lg);color:var(--text-primary);width:45px;text-align:right}.pp-stats{display:flex;justify-content:space-between;font-size:var(--font-size-sm);color:var(--text-secondary)}.pp-okr{color:var(--accent)}.proj-timeline{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);overflow-x:auto;position:relative;padding:var(--space-6) 0}.tl-months{position:relative;height:30px;border-bottom:1px solid var(--border-color);margin-bottom:var(--space-4);margin-left:200px;margin-right:var(--space-4)}.tl-month{position:absolute;transform:translate(-50%);font-size:var(--font-size-xs);color:var(--text-tertiary);font-weight:600;text-transform:uppercase}.tl-today{position:absolute;top:0;bottom:0;width:2px;background:#ef444466;z-index:10;margin-left:200px}.tl-today span{position:absolute;top:-20px;left:50%;transform:translate(-50%);background:#ef4444;color:#fff;font-size:10px;padding:2px 6px;border-radius:10px;font-weight:700}.tl-rows{display:flex;flex-direction:column;gap:var(--space-2)}.tl-row{display:flex;align-items:center;height:40px;cursor:pointer;transition:background var(--transition-fast)}.tl-row:hover{background:var(--bg-hover)}.tl-label{width:200px;padding:0 var(--space-4);display:flex;align-items:center;gap:var(--space-2);flex-shrink:0;border-right:1px solid var(--border-color)}.tl-name{font-size:var(--font-size-sm);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tl-track{flex:1;position:relative;height:100%;margin-right:var(--space-4)}.tl-bar{position:absolute;top:50%;transform:translateY(-50%);height:24px;background:#63c7a026;border:1px solid rgba(99,199,160,.3);border-radius:var(--border-radius);overflow:hidden;transition:filter .2s}.tl-row:hover .tl-bar{filter:brightness(1.2)}.tl-overdue{background:#ef444426;border-color:#ef44444d}.tl-bar-fill{height:100%;background:#63c7a080}.tl-overdue .tl-bar-fill{background:#ef444480}.tl-bar-label{position:absolute;top:50%;left:var(--space-2);transform:translateY(-50%);font-size:10px;font-weight:700;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.5)}.cal-page{display:flex;flex-direction:column;height:calc(100vh - 120px)}.cal-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-4);background:var(--bg-card);padding:8px 14px;border-radius:var(--border-radius-lg);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);flex-wrap:wrap;gap:var(--space-4)}.cal-nav{display:flex;align-items:center;gap:var(--space-2)}.cal-nav-btn{background:transparent;border:1px solid transparent;font-size:1.25rem;line-height:1;padding:6px 10px;cursor:pointer;color:var(--text-secondary);border-radius:8px;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast)}.cal-nav-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.cal-current{font-size:var(--font-size-lg);font-weight:600;min-width:150px;text-align:center;letter-spacing:-.015em;color:var(--text-primary)}.cal-select{padding-top:4px;padding-bottom:4px}.cal-body{display:flex;gap:var(--space-4);flex:1;min-height:0;overflow:hidden}.cal-sidebar{width:250px;flex-shrink:0;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);display:flex;flex-direction:column;overflow:hidden}.cal-sidebar-header{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center;background:var(--bg-secondary)}.cal-sidebar-header h3{font-size:var(--font-size-sm);margin:0}.cal-sidebar-content{flex:1;overflow-y:auto;padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2)}.empty-state-sm{text-align:center;color:var(--text-tertiary);font-size:var(--font-size-sm);padding:var(--space-4);background:var(--accent-softer);border:1px dashed rgba(99,199,160,.3);border-radius:var(--border-radius)}.cal-main{flex:1;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);overflow:hidden;display:flex;flex-direction:column}.cal-view-container{flex:1;overflow-y:auto;display:flex;flex-direction:column}.cal-cell{border:1px solid var(--border-color);min-height:120px;padding:var(--space-1);display:flex;flex-direction:column;transition:background var(--transition-fast)}.cal-cell.drag-over{background:#63c7a01a!important;border:2px dashed var(--accent)}.cal-task.dragging,.cal-event.dragging,[draggable].dragging{opacity:.45;cursor:grabbing}.cal-cell-content{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:2px}.cal-task-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-left-width:4px;border-radius:4px;padding:4px 6px;font-size:11px;cursor:grab;-webkit-user-select:none;user-select:none;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;transition:background .12s ease,box-shadow .12s ease,transform .12s ease}.cal-task-card:hover{background:var(--bg-tertiary);box-shadow:var(--shadow-md);transform:translateY(-1px)}.cal-task-card:active{cursor:grabbing;transform:none;box-shadow:var(--shadow-sm)}.cal-task-title{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-primary)}.cal-task-meta{font-size:9px;color:var(--text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-month{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-auto-rows:minmax(100px,1fr);flex:1}.cal-header-cell{padding:var(--space-2);text-align:center;font-size:var(--font-size-xs);font-weight:600;color:var(--text-secondary);border-bottom:1px solid var(--border-color);border-right:1px solid var(--border-color);background:var(--bg-hover)}.cal-cell.other-month{background:var(--bg-hover);opacity:.6}.cal-cell.is-today{background:#63c7a00d}.cal-cell-header{font-size:var(--font-size-sm);font-weight:500;color:var(--text-secondary);text-align:right;padding:2px 4px;margin-bottom:4px}.today-badge{background:var(--accent);color:#fff;width:24px;height:24px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;float:right}.cal-week{display:flex;flex:1;overflow-x:auto}.cal-week-col{flex:1;min-width:140px;display:flex;flex-direction:column;border-right:1px solid var(--border-color)}.cal-week-header{padding:var(--space-2);text-align:center;border-bottom:1px solid var(--border-color);background:var(--bg-secondary)}.cal-week-header .day-name{font-size:var(--font-size-xs);color:var(--text-tertiary);text-transform:uppercase}.cal-week-header .day-number{font-size:var(--font-size-xl);font-weight:700;margin-top:4px}.cal-week-header.is-today .day-number{color:var(--accent)}.cal-week-body{flex:1;border:none;min-height:400px;padding:var(--space-2)}.cal-week-body.is-today{background:#63c7a00d}.cal-day{flex:1;display:flex;flex-direction:column}.cal-day-body{flex:1;padding:var(--space-6);border:none}.cal-day-content{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:var(--space-4);align-content:start}.cal-day-content .cal-task-card{font-size:var(--font-size-sm);padding:var(--space-3);border-left-width:6px}.cal-day-content .cal-task-title{font-size:var(--font-size-md);margin-bottom:4px}.cal-day-content .cal-task-meta{font-size:var(--font-size-xs)}.sidebar{width:var(--sidebar-width);height:100vh;position:fixed;left:0;top:0;background:var(--bg-secondary);border-right:1px solid var(--border-color);display:flex;flex-direction:column;z-index:40;transition:transform var(--transition-base);overflow-y:auto;padding-bottom:var(--space-2)}.sidebar-logo{padding:var(--space-5) var(--space-5) var(--space-3);display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-2);border-bottom:1px solid var(--border-color)}.sidebar-logo h1{font-size:var(--font-size-lg);font-weight:700;color:var(--text-primary);letter-spacing:-.025em}.sidebar-logo .logo-icon{width:28px;height:28px;background:linear-gradient(135deg,var(--accent),var(--accent-hover));border-radius:var(--border-radius-sm);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1rem;color:#fff;box-shadow:0 1px 2px #1720331a}.sidebar-section{margin-bottom:var(--space-5)}.sidebar-section-title{padding:0 var(--space-5);font-size:.6875rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary);margin-bottom:6px;font-weight:600}.sidebar-nav{display:flex;flex-direction:column;padding:0 var(--space-3);gap:1px}.sidebar-link{display:flex;align-items:center;padding:7px 10px;color:var(--text-secondary);border-radius:8px;transition:background var(--transition-fast),color var(--transition-fast);font-size:var(--font-size-sm);font-weight:500;text-decoration:none;letter-spacing:-.005em;position:relative}.sidebar-link:hover{background:var(--bg-hover);color:var(--text-primary)}.sidebar-link.active{background:var(--accent-soft);color:var(--text-primary);font-weight:600}.link-icon{margin-right:var(--space-3);display:flex;align-items:center;justify-content:center;width:20px;height:20px;color:var(--text-tertiary);transition:color var(--transition-fast);flex-shrink:0}.sidebar-link:hover .link-icon{color:var(--text-secondary)}.sidebar-link.active .link-icon{color:var(--accent)}.link-badge{margin-left:auto;background:var(--accent-subtle);color:var(--accent-hover);font-size:.6875rem;padding:1px 7px;border-radius:var(--border-radius-full);font-weight:600;min-width:20px;text-align:center;letter-spacing:-.005em}.sidebar-link.active .link-badge{background:var(--accent);color:#fff}.sidebar-footer .sidebar-action-btn{display:flex;align-items:center;gap:var(--space-3);width:100%;margin-bottom:6px;padding:7px 10px;background:transparent;border:1px solid transparent;border-radius:8px;cursor:pointer;color:var(--text-secondary);font-size:var(--font-size-sm);font-family:var(--font-family);letter-spacing:-.005em;text-align:left;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.sidebar-footer .sidebar-action-btn:hover{background:var(--bg-hover);border-color:var(--border-color);color:var(--text-primary)}.sidebar-footer .sidebar-action-btn svg{flex-shrink:0;color:var(--text-tertiary);transition:color var(--transition-fast)}.sidebar-footer .sidebar-action-btn:hover svg{color:var(--text-secondary)}.sidebar-footer .sidebar-action-shortcut{font-size:.6875rem;color:var(--text-tertiary);font-weight:500;letter-spacing:.02em}.sidebar-footer .sidebar-theme-switcher{display:flex;gap:2px;background:var(--bg-card);border:1px solid var(--border-color);padding:3px;border-radius:10px;margin:var(--space-3) 0 var(--space-4)}.sidebar-footer .sidebar-theme-switcher button{flex:1;display:flex;align-items:center;justify-content:center;padding:5px 0;border:none;background:transparent;color:var(--text-tertiary);font-size:13px;cursor:pointer;border-radius:7px;transition:background var(--transition-fast),color var(--transition-fast)}.sidebar-footer .sidebar-theme-switcher button:hover{color:var(--text-secondary)}.sidebar-footer .sidebar-theme-switcher button.active{background:var(--bg-elevated);color:var(--accent);box-shadow:0 1px 2px #1720330f}.sidebar-user{margin-top:0;padding:var(--space-3);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);background:var(--bg-card);display:flex;align-items:center;gap:var(--space-3)}.user-avatar{width:32px;height:32px;border-radius:var(--border-radius-full);background:linear-gradient(135deg,var(--accent),var(--accent-hover));display:flex;align-items:center;justify-content:center;font-weight:600;color:#fff;flex-shrink:0;box-shadow:0 1px 2px #1720331a}.user-info{flex:1;min-width:0}.user-name{font-size:var(--font-size-sm);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-primary);letter-spacing:-.01em}.user-email{font-size:var(--font-size-xs);color:var(--text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.logout-btn{background:none;border:none;color:var(--text-tertiary);cursor:pointer;padding:6px;border-radius:8px;transition:background var(--transition-fast),color var(--transition-fast);display:flex;align-items:center;justify-content:center}.logout-btn:hover{background:var(--danger-bg);color:var(--danger)}.mobile-menu-btn{display:none;position:fixed;top:var(--space-4);left:var(--space-4);z-index:60;background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary);width:40px;height:40px;border-radius:var(--border-radius);font-size:1.2rem;cursor:pointer;box-shadow:var(--shadow-md)}.global-search-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:9999;display:flex;justify-content:center;align-items:flex-start;padding-top:15vh;animation:fadeIn .15s ease-out forwards}.global-search-modal{width:100%;max-width:600px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);box-shadow:0 25px 50px -12px #00000080,0 0 20px var(--accent-subtle);overflow:hidden;animation:slideDown .2s cubic-bezier(.16,1,.3,1) forwards}.global-search-input-wrapper{display:flex;align-items:center;padding:0 var(--space-4);border-bottom:1px solid var(--border-color);position:relative;background:var(--bg-tertiary)}.global-search-icon{font-size:1.25rem;color:var(--text-tertiary);margin-right:var(--space-3)}.global-search-input{flex:1;background:transparent;border:none;padding:var(--space-4) 0;font-size:var(--font-size-lg);color:var(--text-primary);outline:none}.global-search-input::placeholder{color:var(--text-tertiary)}.global-search-results{max-height:400px;overflow-y:auto;padding:var(--space-2) 0}.search-section{padding:var(--space-2) 0}.search-section-title{padding:0 var(--space-4);font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-tertiary);margin-bottom:var(--space-2)}.search-result-item{display:flex;align-items:center;padding:var(--space-3) var(--space-4);cursor:pointer;transition:all var(--transition-fast)}.search-result-item.selected,.search-result-item:hover{background:var(--bg-active);border-left:2px solid var(--accent)}.search-result-item .search-result-icon{margin-right:var(--space-3);font-size:1.25rem}.search-result-title{flex:1;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-result-type{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;padding:2px 6px;border-radius:4px;color:var(--text-secondary);background:var(--border-color)}.search-empty-text{padding:var(--space-4);text-align:center;color:var(--text-tertiary);font-size:var(--font-size-sm)}.desktop-only{display:none}.mobile-only{display:flex}@media(min-width:768px){.desktop-only{display:block}.desktop-only.flex{display:flex}.mobile-only{display:none!important}}.mobile-header{padding-left:var(--space-4);padding-right:var(--space-4);align-items:center;justify-content:space-between;display:flex;border-bottom:1px solid var(--border-color);background:var(--bg-secondary);position:sticky;top:0;z-index:50}.bottom-nav{position:fixed;bottom:0;left:0;right:0;height:65px;background:var(--bg-secondary);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-top:1px solid var(--border-color);display:flex;justify-content:space-around;align-items:center;z-index:60;padding-bottom:env(safe-area-inset-bottom)}.bottom-nav-fab-btn{width:52px;height:52px;border-radius:var(--border-radius-full);border:none;background:linear-gradient(135deg,var(--accent),#75D8B3);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px #63c7a073;transition:transform .15s,box-shadow .15s}.bottom-nav-fab-btn:active{transform:scale(.94);box-shadow:0 2px 10px #63c7a08c}body.modal-open .bottom-nav{display:none!important}.bottom-nav-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--text-tertiary);text-decoration:none;font-size:.65rem;transition:color var(--transition-fast);padding:var(--space-1) 0}.bottom-nav-icon{font-size:1.25rem;margin-bottom:2px;position:relative}.bottom-nav-badge{position:absolute;top:-4px;right:-8px;background:var(--danger);color:#fff;font-size:.55rem;padding:2px 5px;border-radius:var(--border-radius-full);font-weight:700}.bottom-nav-fab-wrapper{flex:1;display:flex;justify-content:center;align-items:center;position:relative;top:-15px}.mobile-menu-overlay{position:fixed;inset:0;background:#0f172a73;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:100;animation:fadeIn .2s ease-out forwards}.mobile-menu-drawer{position:fixed;top:0;left:0;bottom:0;width:296px;background:var(--bg-secondary);border-right:1px solid var(--border-color);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;transform:translate(-100%);transition:transform .3s cubic-bezier(.16,1,.3,1);z-index:101}.mobile-menu-drawer.open{transform:translate(0)}.mobile-menu-header{padding:var(--space-5) var(--space-5) var(--space-4);display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border-color)}.mobile-menu-close{background:transparent;border:1px solid transparent;color:var(--text-secondary);font-size:1rem;padding:6px 10px;cursor:pointer;border-radius:8px;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast);display:flex;align-items:center;justify-content:center}.mobile-menu-close:hover{background:var(--bg-hover);color:var(--text-primary)}.mobile-menu-content{flex:1;overflow-y:auto;padding:var(--space-4) 0}.mobile-nav-section{display:flex;flex-direction:column;padding:0 var(--space-3);gap:1px;margin-bottom:var(--space-2)}.mobile-company-switcher{padding:0 var(--space-4);margin-bottom:var(--space-4)}.mobile-menu-footer{padding:var(--space-4);border-top:1px solid var(--border-color);background:var(--bg-card)}.mobile-menu-theme-switcher{display:flex;gap:3px;background:var(--bg-card);border:1px solid var(--border-color);padding:3px;border-radius:10px;margin:0 var(--space-4)}.mobile-menu-theme-switcher button{flex:1;display:flex;align-items:center;justify-content:center;gap:4px;padding:7px 8px;border:none;background:transparent;color:var(--text-tertiary);font-family:var(--font-family);font-size:12px;font-weight:500;letter-spacing:-.005em;cursor:pointer;border-radius:7px;transition:background var(--transition-fast),color var(--transition-fast)}.mobile-menu-theme-switcher button:hover{color:var(--text-secondary)}.mobile-menu-theme-switcher button.active{background:var(--bg-elevated);color:var(--accent);font-weight:600;box-shadow:0 1px 2px #1720330f}.mobile-header .mobile-menu-btn{position:static!important;display:flex!important;width:38px!important;height:38px!important;border-radius:var(--border-radius)!important;background:var(--bg-tertiary)!important;border:1px solid var(--border-color)!important;color:var(--text-primary)!important;font-size:1.1rem!important;align-items:center!important;justify-content:center!important;box-shadow:none!important;flex-shrink:0;cursor:pointer;inset:auto!important;z-index:auto!important}@media(max-width:767px){.page-header{margin-bottom:var(--space-5)}.page-header h2{font-size:var(--font-size-xl)}.page-header p{font-size:var(--font-size-xs)}}@media(max-width:767px){.dashboard-clock{display:none!important}}@media(max-width:767px){.dashboard-section{padding:var(--space-3) var(--space-4)}.dashboard-grid{gap:var(--space-3)}}@media(max-width:360px){.stats-grid{grid-template-columns:1fr}.stat-card{padding:var(--space-3);flex-direction:row;align-items:center;justify-content:flex-start;gap:var(--space-3);text-align:left}.stat-value{font-size:var(--font-size-2xl)}}@media(max-width:480px){.company-dropdown{position:fixed!important;top:auto!important;bottom:calc(65px + var(--space-3))!important;left:var(--space-4)!important;right:var(--space-4)!important;min-width:auto!important;width:auto!important;max-height:55vh;overflow-y:auto}}@media(max-width:767px){.fab-container{bottom:calc(56px + env(safe-area-inset-bottom,0px) + var(--space-4))!important;right:var(--space-4)}}@media(max-width:767px){.cal-page{height:calc(100vh - 220px)}.cal-toolbar{padding:var(--space-2) var(--space-3);gap:var(--space-2)}.cal-toolbar .btn{font-size:var(--font-size-xs);padding:var(--space-1) var(--space-2)}}@media(max-width:767px){.tl-label{width:110px;padding:0 var(--space-2)}.tl-name{font-size:11px}}@media(max-width:767px){.proj-list{overflow-x:hidden}.proj-list-header{display:none}.proj-list-row{flex-wrap:wrap;gap:var(--space-2);padding:var(--space-3);align-items:flex-start}.proj-col-name{flex:1 1 100%;min-width:0}.proj-col-status{flex:0 1 auto;min-width:0}.proj-col-priority,.proj-col-tasks,.proj-col-progress,.proj-col-dates,.proj-col-okr{display:none}}@media(max-width:480px){.task-item{padding:var(--space-2) var(--space-3)}.task-meta{flex-wrap:wrap;gap:var(--space-1)}.task-title{font-size:var(--font-size-sm)}}@media(max-width:480px){.quick-capture-tooltip{left:0!important;right:0!important;max-width:none!important}}@media(max-width:767px){.top-bar{padding:var(--space-2) var(--space-3)}}@media(max-width:767px){.main-content{max-width:100%}}@media(max-width:480px){.form-row{grid-template-columns:1fr}}@media(max-width:480px){.quick-action-strip{gap:var(--space-2)}}@media(max-width:480px){.pending-inv-banner{margin:var(--space-2) var(--space-2) 0;padding:var(--space-3)}.pending-inv-banner .btn{font-size:11px;padding:3px 8px}}@media(max-width:480px){.global-search-overlay{padding-top:10vh;align-items:flex-start}.global-search-modal{width:96%;margin:0 auto}}@media(max-width:767px){.mobile-nav-section .sidebar-nav-item{padding:var(--space-3) var(--space-4);font-size:var(--font-size-sm)}}.okr-progress-item{cursor:pointer;padding:var(--space-3);border-radius:var(--border-radius);background:var(--bg-tertiary);transition:background .18s ease,transform .15s ease}.okr-progress-item:hover{background:var(--bg-hover);transform:translate(2px)}.priority-task-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:8px;background:var(--bg-secondary);border:1px solid var(--border-color);transition:background .15s ease,border-color .15s ease,transform .15s ease}.priority-task-row:hover{background:var(--bg-hover);border-color:var(--border-hover)}.priority-rank{font-size:14px;font-weight:700;width:22px;text-align:center;flex-shrink:0}.dashboard-section{transition:box-shadow var(--transition-base),border-color var(--transition-base)}.dashboard-section:hover{border-color:var(--border-hover);box-shadow:var(--shadow-md)}.widget-wrapper .dashboard-section:hover{box-shadow:var(--shadow-sm)}.widget-wrapper:not(.is-customizing):hover>.dashboard-section,.widget-wrapper:not(.is-customizing):hover>.upcoming-tasks-widget,.widget-wrapper:not(.is-customizing):hover>.weekly-progress-widget{border-color:var(--border-hover);box-shadow:var(--shadow-md)}.btn:active:not(:disabled){transform:scale(.96);transition:transform .08s ease}.btn-primary:active:not(:disabled){box-shadow:none}.task-item{border-radius:8px;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease}@keyframes taskDone{0%{opacity:1;transform:scale(1);max-height:60px}40%{opacity:.6;transform:scale(.98) translate(4px)}to{opacity:0;transform:scale(.95);max-height:0;padding:0;margin:0}}.task-item.completing{animation:taskDone .4s ease forwards;overflow:hidden;pointer-events:none}.progress-bar-fill{transition:width .45s cubic-bezier(.4,0,.2,1)}.stat-card{transition:border-color var(--transition-base),box-shadow var(--transition-base)}.stat-card:hover{box-shadow:var(--shadow-md)}.dashboard-section h3{font-size:var(--font-size-base);font-weight:700;letter-spacing:-.01em;color:var(--text-primary)}.dashboard-section .text-sm{line-height:1.6}.widget-wrapper{position:relative;border-radius:var(--border-radius-lg);transition:opacity .18s ease,outline .12s ease,transform .15s ease}.widget-wrapper.is-customizing{cursor:grab;outline:2px dashed rgba(99,199,160,.4);outline-offset:3px}.widget-wrapper.is-customizing:active{cursor:grabbing}.widget-wrapper.is-customizing:hover{outline-color:var(--accent)}.widget-wrapper.drag-over{opacity:.45;outline:2px solid var(--accent);outline-offset:3px;transform:scale(.98)}.widget-customize-overlay{position:absolute;inset:0;background:#63c7a014;border:2px solid rgba(99,199,160,.5);border-radius:var(--border-radius-lg);z-index:20;display:flex;align-items:flex-start;justify-content:space-between;padding:var(--space-2) var(--space-3);pointer-events:auto;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.drag-handle{font-size:20px;color:var(--accent);cursor:grab;-webkit-user-select:none;user-select:none;padding:2px 4px;line-height:1;flex-shrink:0;opacity:.8}.widget-customize-title{flex:1;font-size:var(--font-size-xs);font-weight:700;color:var(--accent);padding:0 var(--space-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.8}.widget-hide-btn{font-size:11px;padding:2px 10px;background:var(--danger-bg);color:var(--danger);border:1px solid rgba(208,76,76,.3);border-radius:999px;cursor:pointer;font-family:inherit;font-weight:600;white-space:nowrap;flex-shrink:0;transition:background var(--transition-fast)}.widget-hide-btn:hover{background:#d04c4c33}.customize-bar{position:sticky;top:60px;z-index:35;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--accent-soft);border:1px solid rgba(99,199,160,.3);border-radius:var(--border-radius-lg);margin-bottom:var(--space-4);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);flex-wrap:wrap;animation:slideDown .2s cubic-bezier(.16,1,.3,1) forwards}.customize-bar-hint{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--accent);min-width:0}.customize-bar-hint span:first-child{font-size:18px;flex-shrink:0}.hidden-widgets-panel{margin-top:var(--space-5);padding:var(--space-4);background:var(--bg-secondary);border:1px dashed var(--border-color);border-radius:var(--border-radius-lg);animation:fadeIn .2s ease forwards}.hidden-widgets-header{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--text-secondary);margin-bottom:var(--space-3);font-weight:600}.hidden-widgets-list{display:flex;flex-wrap:wrap;gap:var(--space-2)}.hidden-widget-item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--border-radius);transition:border-color .15s}.hidden-widget-item:hover{border-color:var(--border-hover)}.hidden-widget-title{font-size:var(--font-size-sm);color:var(--text-secondary);white-space:nowrap}.hidden-widget-show-btn{font-size:11px;padding:2px 10px;background:var(--accent-soft);color:var(--accent-hover);border:1px solid rgba(99,199,160,.3);border-radius:999px;cursor:pointer;font-family:inherit;font-weight:600;white-space:nowrap;transition:background var(--transition-fast)}.hidden-widget-show-btn:hover{background:#63c7a038}@media(max-width:767px){.customize-bar{top:60px;padding:var(--space-2) var(--space-3);gap:var(--space-2)}.customize-bar-hint{font-size:var(--font-size-xs)}@media(hover:none){.customize-bar-hint span:first-child{display:none}.customize-bar-hint:before{content:"✏️";margin-right:var(--space-1)}}.widget-wrapper.is-customizing{cursor:default}.hidden-widgets-list{flex-direction:column}}.link-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;color:#fff;font-size:11px;font-weight:700;margin-left:6px;vertical-align:middle}@keyframes widgetIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.widget-wrapper{animation:widgetIn .25s ease both}.widget-wrapper:nth-child(1){animation-delay:.02s}.widget-wrapper:nth-child(2){animation-delay:.06s}.widget-wrapper:nth-child(3){animation-delay:.1s}.widget-wrapper:nth-child(4){animation-delay:.14s}.widget-wrapper:nth-child(5){animation-delay:.18s}.widget-wrapper:nth-child(6){animation-delay:.22s}.widget-wrapper:nth-child(7){animation-delay:.26s}.widget-wrapper:nth-child(8){animation-delay:.3s}.mindmap-editor-container{height:calc(100vh - 60px);display:flex;flex-direction:column}@media(max-width:767px){.mindmap-editor-container{height:calc(100dvh - 125px)}}.mindmap-body{flex:1;display:flex;flex-direction:row;overflow:hidden;min-height:0}.mindmap-palette-sidebar{flex-shrink:0;width:158px;border-right:1px solid var(--border-color);background:var(--bg-primary);display:flex;flex-direction:column;gap:2px;padding:12px 8px;overflow-y:auto;scrollbar-width:none}.mindmap-palette-sidebar::-webkit-scrollbar{display:none}.mindmap-node-palette__title{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--text-tertiary);padding:0 4px 8px;margin:0 0 4px;border-bottom:1px solid var(--border-color)}.mindmap-node-palette__btn{display:flex;align-items:center;gap:9px;width:100%;padding:6px 7px;border-radius:7px;background:var(--node-bg);border:1px solid transparent;cursor:pointer;transition:background .13s,border-color .13s;text-align:left}.mindmap-node-palette__btn:hover{background:var(--node-bg-hover);border-color:var(--node-border)}.mindmap-node-palette__icon{width:28px;height:28px;border-radius:7px;display:flex;align-items:center;justify-content:center;font-size:15px;flex-shrink:0}.mindmap-node-palette__name{font-size:12px;font-weight:500;color:var(--text-primary)}@media(max-width:767px){.mindmap-body{flex-direction:column}.mindmap-palette-sidebar{width:100%;flex-direction:row;border-right:none;border-bottom:1px solid var(--border-color);padding:6px 8px;gap:4px;overflow-y:visible;overflow-x:auto;-webkit-overflow-scrolling:touch}.mindmap-node-palette__title{display:none}.mindmap-node-palette__btn{flex-direction:column;gap:2px;padding:4px 6px;flex-shrink:0;min-width:46px;align-items:center}.mindmap-node-palette__name{font-size:9px}.mindmap-context-panel{min-width:160px!important;max-width:180px!important;font-size:11px}.mm-toolbar-btn .mm-btn-label{display:none}.mm-toolbar-btn{padding:5px 8px!important;min-width:36px}.react-flow__panel.top.right{top:70px!important}}.form-row-2{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}@media(max-width:480px){.form-row-2{grid-template-columns:1fr}}.nav-tab{font-size:13px;font-weight:500;color:var(--text-secondary);cursor:pointer;padding:var(--space-2) var(--space-1);transition:color var(--transition-fast);border-radius:0}.nav-tab:hover{color:var(--text-primary)}.nav-tab.active{color:var(--accent)}.form-input:focus,.form-select:focus,textarea.form-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #63c7a026;transition:border-color .15s ease,box-shadow .15s ease}.sidebar-link{transition:background var(--transition-fast),color var(--transition-fast),transform .1s ease}.sidebar-link:active{transform:scale(.98)}.btn:active:not(:disabled){transform:scale(.97)}.btn{transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),transform .1s ease,box-shadow var(--transition-fast)}.project-card:hover,.kanban-card:hover,.task-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0003;transition:transform .2s ease,box-shadow .2s ease}@keyframes shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}.skeleton{background:linear-gradient(90deg,var(--bg-secondary) 25%,var(--bg-hover) 50%,var(--bg-secondary) 75%);background-size:800px 100%;animation:shimmer 1.4s infinite;border-radius:var(--border-radius)}@media(max-width:600px){.modal{width:100%!important;max-width:100%!important;margin:0!important;border-radius:18px 18px 0 0!important;position:fixed!important;bottom:0!important;left:0!important;right:0!important;max-height:92dvh}.modal-overlay{align-items:flex-end!important}body.keyboard-open .modal-overlay{align-items:flex-start!important;padding:max(env(safe-area-inset-top,0px),12px) 0 12px!important;height:var(--visual-viewport-height, 100dvh)!important}body.keyboard-open .modal{position:relative!important;bottom:auto!important;border-radius:16px!important;max-height:calc(var(--visual-viewport-height, 100dvh) - 24px)!important}body.keyboard-open .modal-footer{padding-bottom:12px!important}}@media(max-width:480px){.notification-panel-wrapper{right:auto!important;left:50%!important;transform:translate(-50%)!important}}@media(max-width:420px){.stats-grid{grid-template-columns:1fr!important}}@media(max-width:767px){.cal-body{flex-direction:column!important}.cal-sidebar{width:100%!important;border-left:none!important;border-top:1px solid var(--border-color);max-height:220px;overflow-y:auto}}@media(max-width:1024px){.entity-side-panel{width:300px!important}}@media(max-width:767px){.entity-side-panel{position:fixed!important;top:0!important;right:0!important;bottom:0!important;width:100%!important;z-index:900!important;overflow-y:auto}}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.text-danger{color:var(--danger)!important}.text-success{color:var(--success)!important}.text-warning{color:var(--warning)!important}.text-accent{color:var(--accent)!important}.text-muted{color:var(--text-tertiary)!important}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@keyframes toastIn{0%{opacity:0;transform:translate(-50%) translateY(12px)}to{opacity:1;transform:translate(-50%) translateY(0)}}::placeholder{color:var(--text-tertiary);opacity:1}select.form-select,select.form-input{-moz-appearance:none;-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%2364748b' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px}a,a:hover{text-decoration:none}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-12, 4rem) var(--space-4);text-align:center;color:var(--text-secondary);gap:var(--space-3)}.empty-state-icon{font-size:3rem;opacity:.5}.empty-state h3{font-size:var(--font-size-lg);color:var(--text-primary);margin:0}.empty-state p{font-size:var(--font-size-sm);color:var(--text-secondary);margin:0;max-width:300px}@keyframes badgePulse{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}.badge-new{animation:badgePulse .6s ease 2}.priority-badge{font-size:11px;padding:2px 8px;border-radius:20px;font-weight:600;display:inline-flex;align-items:center;gap:3px;white-space:nowrap}.priority-high{background:#ef444426;color:var(--danger, #ef4444)}.priority-medium{background:#eab30826;color:var(--warning, #eab308)}.priority-low{background:#22c55e26;color:var(--success, #22c55e)}.fade-in{animation:fadeIn .25s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}input[type=datetime-local].form-input{min-width:200px}@media(max-width:480px){input[type=datetime-local].form-input,input[type=date].form-input,input[type=time].form-input{min-width:0;font-size:16px}}.table-container{border:1px solid var(--border-color);border-radius:var(--border-radius-lg);overflow:hidden;overflow-x:auto}.table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.table thead{background:var(--bg-secondary)}.table thead th{padding:var(--space-3) var(--space-4);text-align:left;font-size:11px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border-color);white-space:nowrap}.table tbody td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-color);color:var(--text-primary);vertical-align:middle}.table tbody tr:last-child td{border-bottom:none}.table tbody tr{transition:background .12s}.table tbody tr[style*="cursor: pointer"]:hover,.table tbody tr.clickable:hover{background:var(--bg-secondary)}.table td.table-empty{padding:var(--space-6);text-align:center;color:var(--text-tertiary);font-size:var(--font-size-sm)}.company-logo{width:40px;height:40px;background:var(--accent);color:#fff;border-radius:10px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:15px;flex-shrink:0;overflow:hidden}.company-logo img{width:100%;height:100%;object-fit:cover}.company-logo-lg{width:56px;height:56px;font-size:22px;border-radius:14px}.kpi-icon{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:22px;flex-shrink:0}.kpi-icon-success{background:#22c55e1f;color:var(--success, #22c55e)}.kpi-icon-danger{background:#ef44441f;color:var(--danger, #ef4444)}.kpi-icon-accent{background:#63c7a01f;color:var(--accent, #63C7A0)}.kpi-icon-warning{background:#f59e0b1f;color:var(--warning, #f59e0b)}.kpi-value{font-size:2rem;font-weight:700;line-height:1.1;color:var(--text-primary)}.kpi-value-danger{color:var(--danger, #ef4444)}.kpi-label{font-size:11px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;margin-top:3px}.day-pill{display:inline-flex;align-items:center;gap:4px;font-size:var(--font-size-xs);font-weight:600;padding:4px 11px;border-radius:999px;border:1px solid;white-space:nowrap;letter-spacing:-.005em;line-height:1.4}.day-pill-accent{background:var(--accent-soft);color:var(--accent-hover);border-color:#63c7a04d}.day-pill-danger{background:var(--danger-bg);color:var(--danger);border-color:#d04c4c47}.day-pill-okr{background:#4d7ac01a;color:var(--info);border-color:#4d7ac047}.day-pill-muted{background:var(--bg-card);color:var(--text-tertiary);border-color:var(--border-color)}.app-drawer{position:absolute;top:0;right:0;bottom:0;width:min(600px,100%);background:var(--bg-primary);box-shadow:-4px 0 32px #00000026;display:flex;flex-direction:column;animation:slideInRight .25s cubic-bezier(.16,1,.3,1)}@keyframes slideInRight{0%{transform:translate(30px);opacity:0}to{transform:translate(0);opacity:1}}.app-drawer-header{padding:var(--space-5);border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:flex-start;flex-shrink:0}.app-drawer-tabs{padding:0 var(--space-5);border-bottom:1px solid var(--border-color);display:flex;gap:0;flex-shrink:0;overflow-x:auto}.app-drawer-tabs .tab-btn{padding:var(--space-3) var(--space-4);font-size:var(--font-size-sm)}.app-drawer-body{flex:1;overflow-y:auto;padding:var(--space-5)}.status-pill{display:inline-flex;align-items:center;padding:2px 10px;border-radius:var(--border-radius-full);font-size:var(--font-size-xs);font-weight:600;white-space:nowrap}.status-pill-capturada{background:#64748b1a;color:var(--text-secondary)}.status-pill-en_analisis{background:#f59e0b1a;color:var(--warning, #f59e0b)}.status-pill-validando{background:#63c7a01a;color:var(--accent, #63C7A0)}.status-pill-aprobada{background:#22c55e1a;color:var(--success, #22c55e)}.status-pill-descartada{background:#ef44441a;color:var(--danger, #ef4444)}.kanban-dot{display:inline-block;width:8px;height:8px;border-radius:50%;flex-shrink:0;margin-right:6px;vertical-align:middle}.kanban-header{display:flex;align-items:center;margin-bottom:var(--space-3);padding-bottom:var(--space-3);border-bottom:1px solid var(--border-color)}.kanban-header h3{font-size:var(--font-size-sm);font-weight:600;color:var(--text-secondary);display:flex;align-items:center;margin:0;letter-spacing:.02em}.grid-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--space-4);margin-top:var(--space-4)}@media(max-width:480px){.grid-cards{grid-template-columns:1fr}}.card-footer-stats{display:flex;justify-content:space-between;align-items:center;margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--border-color);color:var(--text-tertiary);font-size:var(--font-size-xs);gap:var(--space-3)}.card-footer-stats span{display:flex;align-items:center;gap:4px}.report-section-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-tertiary);margin-bottom:var(--space-3)}.project-progress-item{display:flex;flex-direction:column;gap:6px}.project-progress-header{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-2)}.project-progress-name{font-size:var(--font-size-sm);font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.project-progress-pct{font-size:var(--font-size-sm);font-weight:700;color:var(--accent);flex-shrink:0}.progress-bar-thin{width:100%;height:6px;background:var(--bg-tertiary);border-radius:var(--border-radius-full);overflow:hidden}.progress-bar-thin-fill{height:100%;border-radius:var(--border-radius-full);transition:width .5s cubic-bezier(.34,1.56,.64,1)}.dashboard-clock{text-align:right;flex-shrink:0}.dashboard-clock-time{font-size:2rem;font-weight:600;color:var(--text-primary);font-variant-numeric:tabular-nums;letter-spacing:-.04em;line-height:1}.dashboard-clock-day{font-size:var(--font-size-xs);color:var(--text-tertiary);margin-top:4px;text-transform:uppercase;letter-spacing:.08em;font-weight:600}@media(max-width:767px){.dashboard-clock{display:none}}@media(max-width:767px){.cal-page .page-header p{display:none}.cal-page .page-header{margin-bottom:var(--space-2);padding-bottom:var(--space-2)}.cal-page .page-header .btn-primary{font-size:11px;padding:6px 10px;white-space:nowrap}.cal-toolbar{flex-wrap:wrap;justify-content:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3)}.cal-nav{width:100%;justify-content:center;gap:var(--space-1)}.cal-current{font-size:var(--font-size-sm);min-width:0;flex:1;text-align:center}.proj-views{flex-shrink:0}.proj-view-btn{padding:var(--space-1) var(--space-2);font-size:11px}.proj-filters{flex:1;min-width:0;overflow-x:auto;-webkit-overflow-scrolling:touch;gap:var(--space-2);padding-bottom:2px;scrollbar-width:none}.proj-filters::-webkit-scrollbar{display:none}.proj-filters .form-select.cal-select{flex-shrink:0;font-size:11px;padding:5px 28px 5px 8px;max-width:130px;background-position:right 8px center}.cal-month{grid-auto-rows:minmax(62px,1fr)}.cal-month .cal-cell{min-height:62px;padding:2px}.cal-header-cell{padding:4px 2px;font-size:10px;font-weight:700}.cal-cell-header{font-size:10px;padding:1px 2px;margin-bottom:1px}.cal-month .cal-cell-content{overflow:hidden;max-height:34px}.cal-month .cal-task-card{padding:1px 4px;font-size:9px}.cal-month .cal-task-meta{display:none}.today-badge{width:18px;height:18px;font-size:10px}.cal-week{overflow-x:auto}.cal-week-col{min-width:42px;flex:1 0 42px}.cal-week-header{padding:var(--space-1) 2px}.cal-week-header .day-name{font-size:8px;text-transform:uppercase}.cal-week-header .day-number{font-size:var(--font-size-md);font-weight:700;margin-top:1px}.cal-week-body{min-height:200px}.cal-week .cal-task-card{padding:2px 3px;font-size:9px;border-left-width:3px}.cal-week .cal-task-meta{display:none}.cal-day-body{min-height:300px}.cal-sidebar{max-height:140px!important}.cal-sidebar-header{padding:var(--space-2) var(--space-3)}.cal-sidebar-header h3{font-size:11px}}@media(max-width:420px){.cal-sidebar{display:none!important}}@media(max-width:767px){.page-header{margin-bottom:var(--space-4)}.page-header h2{font-size:var(--font-size-xl)}.page-header-actions{align-items:flex-start;gap:var(--space-2)}}@media(min-width:768px)and (max-width:1100px){.main-content{padding:var(--space-6)}}@media(max-width:767px){.main-content{padding:var(--space-4);padding-bottom:calc(var(--space-4) + 70px)}}@media(max-width:767px){.stats-grid{grid-template-columns:repeat(2,1fr);gap:var(--space-3);margin-bottom:var(--space-6)}.stat-card{padding:var(--space-4)}.stat-card .stat-icon{font-size:1.25rem;margin-bottom:var(--space-2)}.stat-card .stat-value{font-size:var(--font-size-xl)}.stat-card .stat-label{font-size:10px}}@media(max-width:900px){.dashboard-grid{grid-template-columns:1fr;gap:var(--space-4)}}@media(max-width:767px){.task-item{padding:var(--space-3) var(--space-3);gap:var(--space-2)}}@media(max-width:767px){.filters-bar{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:var(--space-2);gap:var(--space-2);margin-bottom:var(--space-4)}.filters-bar::-webkit-scrollbar{display:none}.filters-bar .form-select{flex-shrink:0;font-size:13px;min-width:0}.filters-bar .btn{flex-shrink:0}}@media(max-width:480px){.page-header-actions>div:last-child{width:100%;justify-content:flex-start}.view-toggle{width:100%}.view-toggle button{flex:1;text-align:center}}@media(max-width:767px){.kanban-board{display:flex;overflow-x:auto;-webkit-overflow-scrolling:touch;gap:var(--space-3);padding-bottom:var(--space-3);scrollbar-width:none;grid-template-columns:unset}.kanban-board::-webkit-scrollbar{display:none}.kanban-column{min-width:260px;flex-shrink:0}}@media(max-width:767px){.empty-state{padding:var(--space-8) var(--space-4)}}@media(max-width:480px){.modal-body{padding:var(--space-4)}.modal-header{padding:var(--space-4) var(--space-4)}.modal-footer{padding:var(--space-3) var(--space-4)}}.modal-body .form-group:last-child{margin-bottom:0}.priority-badge{line-height:1.4;letter-spacing:.01em}@media(max-width:767px){.task-checkbox{width:22px;height:22px;flex-shrink:0}.task-checkbox.checked:after{font-size:12px}}.dashboard-section h3,.widget-wrapper h3{color:var(--text-primary)}.kanban-card{min-height:60px}.card:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}@media(max-width:767px){.btn-sm{padding:5px var(--space-3);font-size:var(--font-size-xs)}}@media(max-width:767px){.table-container{margin-left:calc(-1 * var(--space-1));margin-right:calc(-1 * var(--space-1))}}.quick-action-strip{margin-bottom:var(--space-4)!important}.form-label{font-weight:600;color:var(--text-secondary);letter-spacing:.01em}.form-textarea{min-height:90px;line-height:1.6}.dashboard-section{padding:var(--space-5)}.progress-bar{height:7px}.sidebar-link{padding:var(--space-2) var(--space-3);min-height:36px}.stat-card{border-radius:var(--border-radius-lg)}.stat-card--danger .stat-value{background:linear-gradient(135deg,var(--danger),#f97316);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}@media(max-width:767px){.tab-bar{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.tab-bar::-webkit-scrollbar{display:none}.tab-btn{flex-shrink:0;padding:var(--space-2) var(--space-4);font-size:var(--font-size-xs)}}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none!important}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow);outline:none}.link-badge{font-size:10px;padding:1px 7px}.quick-capture-wrapper+.quick-action-strip{margin-top:calc(-1 * var(--space-1))}@media(min-width:768px){.page-header-actions{align-items:center}}@media(max-width:767px){.desktop-only{display:none!important}}.kanban-column{background:var(--bg-secondary)}@media(max-width:480px){.modal-body>div[style*="display: flex"][style*=gap] button.btn-secondary{flex:1}}.filter-chip{min-height:32px;display:inline-flex;align-items:center}.card,.stat-card,.dashboard-section,.task-item,.kanban-card{transition:background var(--transition-base),border-color var(--transition-base),box-shadow var(--transition-base),transform var(--transition-fast)}body.modal-open .bottom-nav,body.modal-open .fab-container{display:none!important}.modal-body::-webkit-scrollbar{width:4px}.modal-body::-webkit-scrollbar-thumb{background:var(--border-hover);border-radius:4px}.page-header .day-pills-row{flex-wrap:wrap;row-gap:var(--space-1)}.badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:var(--border-radius-full);font-size:var(--font-size-xs);font-weight:600;white-space:nowrap}.badge-primary{background:var(--accent-subtle);color:var(--accent)}.badge-info{background:var(--info-bg);color:var(--info)}.badge-secondary{background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color)}.badge-warning{background:var(--warning-bg);color:var(--warning)}.badge-success{background:var(--success-bg);color:var(--success)}.badge-danger{background:var(--danger-bg);color:var(--danger)}.badge-new{background:var(--accent);color:#fff;font-size:9px;padding:1px 5px}.sidebar{height:100dvh}.notif-bell-btn{position:relative;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--border-radius);background:transparent;border:none;color:var(--text-secondary);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast);flex-shrink:0}.notif-bell-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.notif-bell-badge{position:absolute;top:2px;right:2px;background:var(--danger, #ef4444);color:#fff;border-radius:999px;font-size:10px;font-weight:700;min-width:16px;height:16px;display:flex;align-items:center;justify-content:center;padding:0 3px;line-height:1;border:2px solid var(--bg-primary);pointer-events:none}.notif-toast{position:absolute;top:44px;right:0;z-index:3000;background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color);border-radius:10px;padding:10px 14px;width:280px;font-size:12.5px;line-height:1.45;box-shadow:0 8px 32px #00000059;animation:slideDown .18s ease-out}.notif-toast-warn{border-color:var(--warning, #f59e0b);background:var(--bg-tertiary)}.notif-toast-info{border-color:var(--accent, #63C7A0);background:var(--bg-tertiary)}.notif-panel{position:fixed;bottom:16px;left:calc(var(--sidebar-width) + 8px);z-index:2000;width:min(380px,calc(100vw - 16px));background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:16px;box-shadow:0 20px 60px #00000073;overflow:hidden;display:flex;flex-direction:column;max-height:540px;animation:notifSlideUp .18s ease-out}@keyframes notifSlideUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes notifSlideDown{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.notif-panel-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px 12px;border-bottom:1px solid var(--border-color);flex-shrink:0;gap:8px}.notif-panel-title{font-weight:700;font-size:14px;color:var(--text-primary);letter-spacing:-.01em}.notif-count-pill{display:inline-flex;align-items:center;justify-content:center;background:var(--accent);color:#fff;border-radius:999px;font-size:11px;font-weight:700;min-width:20px;height:20px;padding:0 5px}.notif-push-label{font-size:11px;color:var(--text-tertiary);-webkit-user-select:none;user-select:none;letter-spacing:.02em;text-transform:uppercase;font-weight:600}.notif-close-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:var(--bg-tertiary);color:var(--text-secondary);border-radius:6px;cursor:pointer;transition:background var(--transition-fast);flex-shrink:0}.notif-close-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.notif-toggle-switch{width:40px;height:24px;border-radius:12px;border:none;background:var(--bg-tertiary);position:relative;cursor:pointer;transition:background .22s ease;padding:0;flex-shrink:0;outline:none}.notif-toggle-switch.is-on{background:var(--accent, #63C7A0)}.notif-toggle-switch:disabled{opacity:.45;cursor:not-allowed}.notif-toggle-thumb{position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:left .22s ease;box-shadow:0 1px 4px #0000004d;pointer-events:none}.notif-toggle-switch.is-on .notif-toggle-thumb{left:19px}.notif-list{overflow-y:auto;flex:1;-webkit-overflow-scrolling:touch}.notif-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center;gap:4px}.notif-empty-icon{width:48px;height:48px;border-radius:50%;background:var(--bg-tertiary);display:flex;align-items:center;justify-content:center;color:var(--text-tertiary);margin-bottom:8px}.notif-empty-title{font-weight:600;font-size:14px;color:var(--text-primary);margin:0}.notif-empty-sub{font-size:12px;color:var(--text-tertiary)}.notif-item{display:flex;align-items:flex-start;gap:10px;padding:11px 14px 11px 20px;border-bottom:1px solid var(--border-color);position:relative;transition:background .12s}.notif-item:last-child{border-bottom:none}.notif-item-clickable{cursor:pointer}.notif-item-clickable:hover{background:var(--bg-hover)}.notif-item-unread{background:#63c7a00f}.notif-unread-dot{position:absolute;left:7px;top:50%;transform:translateY(-50%);width:6px;height:6px;border-radius:50%;flex-shrink:0}.notif-icon-bubble{width:34px;height:34px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.notif-item-content{flex:1;min-width:0}.notif-item-title{font-size:13px;font-weight:500;line-height:1.35;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:2px}.notif-item-unread .notif-item-title{font-weight:600}.notif-item-body{font-size:12px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:2px}.notif-item-time{font-size:11px;color:var(--text-tertiary)}.notif-delete-btn{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border:none;background:transparent;color:var(--text-tertiary);cursor:pointer;border-radius:6px;transition:background var(--transition-fast),color var(--transition-fast);flex-shrink:0;opacity:0}.notif-item:hover .notif-delete-btn{opacity:1}.notif-delete-btn:hover{background:var(--danger-bg);color:var(--danger)}.notif-panel-footer{padding:8px 14px;border-top:1px solid var(--border-color);flex-shrink:0}.notif-clear-btn{width:100%;background:none;border:none;font-size:12px;color:var(--text-tertiary);cursor:pointer;padding:6px;border-radius:8px;transition:background var(--transition-fast),color var(--transition-fast);text-align:center}.notif-clear-btn:hover{background:var(--danger-bg);color:var(--danger)}@media(max-width:767px){.notif-panel{position:fixed;top:56px;left:8px;right:8px;width:auto;max-height:calc(100dvh - 128px);border-radius:16px;z-index:200;animation:notifSlideDown .18s ease-out;box-shadow:0 8px 32px #00000059}.notif-panel:before{display:none}.notif-panel-header{padding:14px 16px 12px}.notif-item{padding:12px 14px 12px 20px}.notif-delete-btn{opacity:1}.notif-toast{position:fixed;top:auto;bottom:calc(env(safe-area-inset-bottom,0px) + 72px);left:50%;right:auto;transform:translate(-50%);width:calc(100vw - 32px);text-align:center}}.bottom-nav{height:56px;padding-bottom:env(safe-area-inset-bottom,0px);min-height:calc(56px + env(safe-area-inset-bottom,0px));background:var(--bg-secondary);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-top:1px solid var(--border-color);box-shadow:0 -1px #17203305,0 -8px 24px #1720330a;align-items:flex-start!important}.bottom-nav-item{flex:1;height:56px;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:7px 0 5px;gap:3px;color:var(--text-tertiary);text-decoration:none;font-size:inherit;transition:color var(--transition-fast);position:relative;-webkit-tap-highlight-color:transparent}.bottom-nav-item.active{color:var(--accent)}.bottom-nav-item:not(.active):hover{color:var(--text-secondary)}.bottom-nav-icon{position:relative;display:flex;align-items:center;justify-content:center;width:48px;height:30px;border-radius:12px;transition:background var(--transition-fast),transform var(--transition-fast)}.bottom-nav-item:active .bottom-nav-icon{transform:scale(.92)}.bottom-nav-item.active .bottom-nav-icon{background:var(--accent-soft)}.bottom-nav-label{font-size:10px;font-weight:500;letter-spacing:.01em;line-height:1;margin-top:1px}.bottom-nav-item.active .bottom-nav-label{font-weight:600}.bottom-nav-item.active svg{stroke-width:2}.bottom-nav-active-pip{position:absolute;bottom:4px;left:50%;transform:translate(-50%);width:4px;height:4px;border-radius:2px;background:var(--accent)}.bottom-nav-badge{position:absolute;top:-2px;right:-6px;background:var(--danger);color:#fff;font-size:9px;font-weight:700;padding:2px 4px;border-radius:999px;min-width:16px;height:16px;display:flex;align-items:center;justify-content:center;border:2px solid var(--bg-secondary);line-height:1}.bottom-nav-fab-wrapper{flex:1;height:56px;display:flex;justify-content:center;align-items:center;position:relative;margin-top:-10px}.mobile-header{padding-top:env(safe-area-inset-top,0px);height:auto;min-height:calc(56px + env(safe-area-inset-top,0px));background:var(--bg-secondary);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-bottom:1px solid var(--border-color);box-shadow:0 1px #17203305;align-items:flex-end!important;padding-bottom:8px}.mobile-header-logo{display:flex;align-items:center;gap:8px;text-decoration:none}.mobile-header-logo-mark{width:30px;height:30px;border-radius:8px;background:linear-gradient(135deg,var(--accent),var(--accent-hover));display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0;box-shadow:0 1px 2px #1720331a}.mobile-header-wordmark{font-size:16px;font-weight:700;color:var(--text-primary);letter-spacing:-.02em}.mobile-header-actions{display:flex;align-items:center;gap:2px}.mobile-header .mobile-menu-btn{position:static!important;display:flex!important;align-items:center!important;justify-content:center!important;width:36px!important;height:36px!important;border-radius:var(--border-radius)!important;background:transparent!important;border:none!important;color:var(--text-secondary)!important;font-size:inherit!important;cursor:pointer;box-shadow:none!important;inset:auto!important;transition:background var(--transition-fast),color var(--transition-fast)!important}.mobile-header .mobile-menu-btn:hover{background:var(--bg-hover)!important;color:var(--text-primary)!important}@media(max-width:767px){.main-content{padding-bottom:var(--space-2)}.page-header{padding:var(--space-3) var(--space-3) 0;flex-wrap:wrap;gap:var(--space-2)}.page-header h2{font-size:1.3rem}.card-grid{grid-template-columns:1fr}.filters-bar{padding:var(--space-2) var(--space-3);gap:var(--space-2);scrollbar-width:none}.filters-bar::-webkit-scrollbar{display:none}.stats-grid{grid-template-columns:repeat(2,1fr);gap:var(--space-3)}.task-item{padding:var(--space-3) var(--space-3);min-height:52px}.task-checkbox{width:22px;height:22px;flex-shrink:0}.kanban-board{display:flex;overflow-x:auto;gap:var(--space-3);padding:var(--space-2) var(--space-3) var(--space-4);scrollbar-width:none;-webkit-overflow-scrolling:touch}.kanban-board::-webkit-scrollbar{display:none}.kanban-column{min-width:270px;max-width:270px;flex-shrink:0}.modal-header{padding:18px 18px 12px}.modal-body{padding:0 18px 16px}.modal-footer{padding:12px 18px;padding-bottom:calc(env(safe-area-inset-bottom,0px) + 12px)}}.notif-status-bar{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;padding:10px 14px;background:#ef44441a;border-bottom:1px solid rgba(239,68,68,.2);font-size:12px;line-height:1.45;color:var(--text-primary);flex-shrink:0}.notif-status-bar.ok{background:#10b9811a;border-bottom-color:#10b98133}.db-view-wrapper{border-radius:var(--border-radius-lg);border:1px solid var(--border-color);background:var(--bg-card);overflow:hidden}.db-table-container{overflow-x:auto;-webkit-overflow-scrolling:touch}.db-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.db-table thead tr{background:var(--bg-secondary);border-bottom:2px solid var(--border-color)}.db-table th{padding:var(--space-3) var(--space-4);text-align:left;font-size:var(--font-size-xs);font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--text-tertiary);white-space:nowrap}.db-table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-color);color:var(--text-primary);font-size:var(--font-size-sm);vertical-align:middle}.db-table tbody tr:last-child td{border-bottom:none}.db-table tbody tr.clickable-row{cursor:pointer;transition:background var(--transition-fast)}.db-table tbody tr.clickable-row:hover{background:var(--bg-hover)}.db-group-header td{background:var(--bg-secondary);padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border-color)}.db-group-title{font-size:var(--font-size-xs);font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary)}.db-group-count{margin-left:var(--space-2);font-size:var(--font-size-xs);background:var(--bg-hover);color:var(--text-tertiary);padding:1px 6px;border-radius:var(--border-radius-full)}.text-disabled{color:var(--text-tertiary)}@media(max-width:767px){.db-table th,.db-table td{padding:var(--space-2) var(--space-3);font-size:var(--font-size-xs)}}.p-1{padding:var(--space-1)}.p-2{padding:var(--space-2)}.p-3{padding:var(--space-3)}.p-4{padding:var(--space-4)}.p-8{padding:var(--space-8)}.p-12{padding:var(--space-12)}.px-2{padding-left:var(--space-2);padding-right:var(--space-2)}.px-3{padding-left:var(--space-3);padding-right:var(--space-3)}.px-4{padding-left:var(--space-4);padding-right:var(--space-4)}.py-1{padding-top:var(--space-1);padding-bottom:var(--space-1)}.py-2{padding-top:var(--space-2);padding-bottom:var(--space-2)}.py-3{padding-top:var(--space-3);padding-bottom:var(--space-3)}.pb-2{padding-bottom:var(--space-2)}.pb-4{padding-bottom:var(--space-4)}.pt-4{padding-top:var(--space-4)}.pt-6{padding-top:var(--space-6)}.pl-2{padding-left:var(--space-2)}.ml-2{margin-left:var(--space-2)}.ml-4{margin-left:var(--space-4)}.mr-2{margin-right:var(--space-2)}.space-y-2>*+*{margin-top:var(--space-2)}.space-y-4>*+*{margin-top:var(--space-4)}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.font-medium{font-weight:500}.font-bold{font-weight:700}.font-semibold{font-weight:600}.leading-none{line-height:1}.whitespace-nowrap{white-space:nowrap}.text-ellipsis{text-overflow:ellipsis}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.uppercase{text-transform:uppercase}.text-gray-400{color:#9ca3af}.text-gray-500{color:#6b7280}.text-gray-600{color:#4b5563}.text-gray-700{color:#374151}.text-red-500{color:#ef4444}.text-red-700{color:#b91c1c}.bg-white{background-color:var(--bg-secondary)}.bg-gray-100{background-color:var(--bg-tertiary)}.w-full{width:100%}.w-16{width:4rem}.h-full{height:100%}.min-w-0{min-width:0}.max-w-md{max-width:28rem}.flex-1{flex:1 1 0%}.flex-wrap{flex-wrap:wrap}.flex-col{flex-direction:column}.shrink-0{flex-shrink:0}.items-start{align-items:flex-start}.items-center{align-items:center}.items-end{align-items:flex-end}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-between{justify-content:space-between}.overflow-x-auto{overflow-x:auto;-webkit-overflow-scrolling:touch}.overflow-hidden{overflow:hidden}.border{border:1px solid var(--border-color)}.border-b{border-bottom:1px solid var(--border-color)}.border-b-2{border-bottom-width:2px;border-bottom-style:solid}.border-t{border-top:1px solid var(--border-color)}.border-dashed{border-style:dashed!important}.border-transparent{border-color:transparent}.border-collapse{border-collapse:collapse}.rounded{border-radius:var(--border-radius)}.rounded-lg{border-radius:var(--border-radius-lg)}.rounded-t-lg{border-top-left-radius:var(--border-radius-lg);border-top-right-radius:var(--border-radius-lg)}.shadow{box-shadow:var(--shadow-sm)}.shadow-sm{box-shadow:0 1px 3px #0000001a}.cursor-pointer{cursor:pointer}.transition-colors{transition:color var(--transition-fast),background var(--transition-fast)}.transition-transform{transition:transform var(--transition-fast)}.hover\:-translate-y-1:hover{transform:translateY(-2px)}.hover\:text-gray-700:hover{color:#374151}.hover\:text-red-700:hover{color:#b91c1c}.hover\:bg-gray-100:hover{background:var(--bg-tertiary)}.min-h-\[400px\]{min-height:400px}.max-w-\[200px\]{max-width:200px}.max-h-\[90vh\]{max-height:90vh}.gap-1{gap:var(--space-1)}.gap-4{gap:var(--space-4)}.w-full.text-left{width:100%;text-align:left}[class*="bg-[color"]{background:var(--bg-secondary)}@media(max-width:767px){.qc-shortcut-hint{display:none!important}}@media(max-width:767px){.react-flow__minimap{display:none!important}}@media(max-width:767px){.proj-toolbar{flex-direction:column;align-items:stretch;gap:var(--space-2);margin-bottom:var(--space-4)}.proj-views{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-shrink:unset;flex:unset}.proj-views::-webkit-scrollbar{display:none}.proj-filters{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;flex:unset;min-width:unset}.proj-view-btn,.proj-filter-btn{flex-shrink:0;white-space:nowrap;padding:var(--space-1) var(--space-3);font-size:11px}}.view-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg, 10px);margin-bottom:var(--space-3);flex-wrap:wrap}.view-toolbar .vt-left,.view-toolbar .vt-right{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.view-toolbar .vt-dropdown-container{position:relative}.view-toolbar .vt-dropdown{position:absolute;top:calc(100% + 4px);left:0;min-width:240px;max-width:360px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg, 10px);padding:var(--space-3);z-index:40;box-shadow:0 12px 32px #0000002e}.view-toolbar .vt-dropdown h4{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary);margin:0 0 var(--space-2) 0;font-weight:600}.view-toolbar .vt-menu-item{display:block;width:100%;text-align:left;padding:6px 10px;border:none;background:transparent;border-radius:6px;cursor:pointer;color:var(--text-primary);font-size:var(--font-size-sm)}.view-toolbar .vt-menu-item:hover{background:var(--bg-hover, var(--bg-tertiary))}.view-toolbar .vt-menu-item.active{background:var(--accent-soft);color:var(--accent);font-weight:600}.view-toolbar .vt-filter-row{display:flex;align-items:center;gap:6px;margin-bottom:6px;flex-wrap:wrap}.view-toolbar .vt-filter-row select,.view-toolbar .vt-filter-row input{padding:5px 8px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-secondary);color:var(--text-primary);font-size:var(--font-size-sm);min-width:0;flex:1}.view-toolbar .btn.active{background:var(--accent-soft);color:var(--accent)}@media(max-width:640px){.view-toolbar{padding:var(--space-2) var(--space-3)}.view-toolbar .vt-left,.view-toolbar .vt-right{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.view-toolbar .vt-left::-webkit-scrollbar,.view-toolbar .vt-right::-webkit-scrollbar{display:none}}.app-logo{display:inline-flex;align-items:center;-webkit-user-select:none;user-select:none}a:has(.app-logo),.app-logo a{text-decoration:none}.sidebar .app-logo span:last-child,.mobile-menu-drawer .app-logo span:last-child{color:var(--text-primary)}.auth-card .app-logo svg{box-shadow:0 8px 24px var(--accent-glow)}.mobile-header .app-logo span:last-child{font-size:16px;font-weight:700;letter-spacing:-.02em;color:var(--text-primary)}.links-tabs{display:flex;gap:3px;margin-bottom:var(--space-4);background:var(--bg-card);padding:3px;border-radius:12px;border:1px solid var(--border-color);overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.links-tabs::-webkit-scrollbar{display:none}.links-tab{flex:1;min-width:max-content;padding:7px 14px;border:none;background:transparent;color:var(--text-secondary);font-size:var(--font-size-sm);font-weight:500;letter-spacing:-.005em;cursor:pointer;border-radius:9px;font-family:var(--font-family);transition:background var(--transition-fast),color var(--transition-fast);white-space:nowrap;text-align:center}.links-tab:hover{color:var(--text-primary)}.links-tab.active{background:var(--bg-elevated);color:var(--accent);font-weight:600;box-shadow:0 1px 2px #1720330f}.link-status-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:999px;font-size:10px;font-weight:600;letter-spacing:.005em;white-space:nowrap;line-height:1.4}.link-status-badge--new{background:var(--accent-soft);color:var(--accent-hover)}.link-status-badge--to_review{background:var(--info-bg);color:var(--info)}.link-status-badge--reviewed{background:var(--success-bg);color:var(--success)}.link-status-badge--useful{background:var(--accent);color:#fff}.link-status-badge--archived{background:var(--bg-tertiary);color:var(--text-tertiary);border:1px solid var(--border-color)}.link-status-badge--discarded{background:var(--danger-bg);color:var(--danger)}.link-actions{display:flex;gap:3px;flex-shrink:0;align-self:flex-start}.link-action-btn{background:transparent;border:1px solid transparent;color:var(--text-tertiary);padding:4px 8px;border-radius:7px;cursor:pointer;font-size:13px;font-family:var(--font-family);display:inline-flex;align-items:center;justify-content:center;min-width:28px;min-height:28px;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast)}.link-action-btn:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.link-action-btn--success:hover:not(:disabled){background:var(--success-bg);color:var(--success);border-color:#3aa66a4d}.link-action-btn--accent:hover:not(:disabled){background:var(--accent-soft);color:var(--accent-hover);border-color:#63c7a04d}.link-action-btn--neutral:hover:not(:disabled){background:var(--bg-secondary);color:var(--text-secondary);border-color:var(--border-hover)}.link-action-btn--danger:hover:not(:disabled){background:var(--danger-bg);color:var(--danger);border-color:#d04c4c4d}.link-action-btn:disabled{opacity:.35;cursor:not-allowed}.link-dates{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px;font-size:10px;color:var(--text-tertiary);font-variant-numeric:tabular-nums}.link-dates span{display:inline-flex;align-items:center;gap:3px;white-space:nowrap}@media(max-width:480px){.links-tab{padding:6px 10px;font-size:12px}.link-actions{gap:2px}.link-action-btn{min-width:26px;min-height:26px;padding:3px 6px}}.links-folder-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--space-3)}.links-folder-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);padding:var(--space-4);display:flex;align-items:center;gap:var(--space-3);cursor:pointer;box-shadow:var(--shadow-sm);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);position:relative}.links-folder-card:hover{border-color:var(--border-hover);box-shadow:var(--shadow-md)}.links-folder-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.links-folder-card-icon{flex-shrink:0;width:40px;height:40px;border-radius:10px;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;font-size:18px}.links-folder-card-body{flex:1;min-width:0}.links-folder-card-name{font-size:var(--font-size-sm);font-weight:600;color:var(--text-primary);letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.links-folder-card-count{font-size:11px;color:var(--text-tertiary);margin-top:2px}.links-folder-card-actions{display:flex;gap:2px;flex-shrink:0;opacity:0;transition:opacity var(--transition-fast)}.links-folder-card:hover .links-folder-card-actions,.links-folder-card:focus-within .links-folder-card-actions{opacity:1}@media(hover:none){.links-folder-card-actions{opacity:1}}.links-folder-empty{background:var(--bg-card);border:1px dashed var(--border-color);border-radius:var(--border-radius-lg)}.links-folder-back{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);flex-wrap:wrap}.links-folder-back-name{font-size:var(--font-size-sm);font-weight:600;color:var(--text-primary);letter-spacing:-.01em}.link-action-btn--info:hover:not(:disabled){background:var(--info-bg);color:var(--info);border-color:#4d7ac04d}@media(max-width:480px){.links-folder-grid{grid-template-columns:1fr}.links-folder-card{padding:var(--space-3)}}.link-folder-inline{display:inline-flex;align-items:center;gap:6px;margin-top:8px;font-size:11px;color:var(--text-tertiary);flex-wrap:wrap}.link-folder-label{color:var(--text-tertiary);font-weight:500;white-space:nowrap}.link-folder-select{padding:3px 24px 3px 9px;font-size:11px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--border-radius-sm);color:var(--text-secondary);font-family:var(--font-family);cursor:pointer;transition:border-color var(--transition-fast),background var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-fast);appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='10' fill='%239AA3B2' viewBox='0 0 16 16'><path d='M8 11L3 6h10l-5 5z'/></svg>");background-repeat:no-repeat;background-position:right 6px center;max-width:220px;text-overflow:ellipsis;line-height:1.4;letter-spacing:-.005em}.link-folder-select:hover{border-color:var(--border-hover);color:var(--text-primary)}.link-folder-select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow);color:var(--text-primary)}@media(max-width:480px){.link-folder-inline{width:100%}.link-folder-select{max-width:none;flex:1;min-width:0}}.admin-status-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;font-size:10px;font-weight:600;letter-spacing:.005em;white-space:nowrap;line-height:1.4}.admin-status-badge--new{background:var(--accent-soft);color:var(--accent-hover)}.admin-status-badge--to_review{background:var(--info-bg);color:var(--info)}.admin-status-badge--reviewed{background:var(--success-bg);color:var(--success)}.admin-status-badge--useful{background:var(--accent);color:#fff}.admin-status-badge--archived{background:var(--bg-tertiary);color:var(--text-tertiary);border:1px solid var(--border-color)}.admin-status-badge--discarded{background:var(--danger-bg);color:var(--danger)}.admin-folder-chip{display:inline-flex;align-items:center;gap:4px;margin-top:3px;padding:1px 8px;border-radius:999px;background:var(--accent-softer);color:var(--text-secondary);border:1px solid var(--border-color);font-size:11px;font-weight:500;max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-notes-preview{font-size:11px;color:var(--text-tertiary);font-style:italic;margin-top:3px;max-width:400px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:2px 7px;background:var(--bg-secondary);border-radius:var(--border-radius-sm);display:inline-block}.admin-field-readonly{background:var(--bg-secondary);color:var(--text-tertiary);cursor:not-allowed}@media(max-width:480px){.admin-folder-chip,.admin-notes-preview{max-width:100%}}.admin-link-filters{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:flex-end;padding:10px 12px;margin-bottom:var(--space-4);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm)}.admin-link-filter{display:flex;flex-direction:column;gap:3px;min-width:140px;flex:0 1 auto}.admin-link-filter-label{font-size:10px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.06em}.admin-link-filter-select{padding:6px 28px 6px 10px;font-size:12px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius-sm);color:var(--text-primary);font-family:var(--font-family);cursor:pointer;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='10' fill='%239AA3B2' viewBox='0 0 16 16'><path d='M8 11L3 6h10l-5 5z'/></svg>");background-repeat:no-repeat;background-position:right 8px center;transition:border-color var(--transition-fast),background var(--transition-fast),box-shadow var(--transition-fast);letter-spacing:-.005em;line-height:1.4}.admin-link-filter-select:hover{border-color:var(--border-hover)}.admin-link-filter-select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.admin-link-filter-summary{margin-left:auto;font-size:11px;color:var(--text-tertiary);align-self:flex-end;white-space:nowrap}.admin-link-filter-summary strong{color:var(--text-primary);font-weight:600}@media(max-width:480px){.admin-link-filters{flex-direction:column;align-items:stretch}.admin-link-filter{min-width:0}.admin-link-filter-summary{margin-left:0;text-align:right}}.superadmin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-6);flex-wrap:wrap;gap:var(--space-3)}.superadmin-header h2{font-size:var(--font-size-2xl);font-weight:700;letter-spacing:-.025em;line-height:1.15;color:var(--text-primary);margin:0}.superadmin-header p{color:var(--text-secondary);font-size:var(--font-size-sm);margin:4px 0 0;letter-spacing:-.005em}.superadmin-tabs{display:flex;gap:2px;margin-bottom:var(--space-5);background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;padding:3px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.superadmin-tabs::-webkit-scrollbar{display:none}.superadmin-tab{padding:8px 14px;background:transparent;border:none;cursor:pointer;color:var(--text-secondary);font-weight:500;font-size:13px;letter-spacing:-.005em;white-space:nowrap;flex-shrink:0;border-radius:9px;font-family:var(--font-family);transition:background var(--transition-fast),color var(--transition-fast)}.superadmin-tab:hover{color:var(--text-primary)}.superadmin-tab.active{background:var(--bg-elevated);color:var(--accent);font-weight:600;box-shadow:0 1px 2px #1720330f}.superadmin-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:var(--space-3);margin-bottom:var(--space-6)}.superadmin-kpi-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);padding:var(--space-4);text-align:center;box-shadow:var(--shadow-sm);transition:border-color var(--transition-base),box-shadow var(--transition-base)}.superadmin-kpi-card:hover{border-color:var(--border-hover);box-shadow:var(--shadow-md)}.superadmin-kpi-card .kpi-icon{font-size:22px;margin-bottom:4px}.superadmin-kpi-card .kpi-value{font-size:24px;font-weight:700;letter-spacing:-.025em;font-variant-numeric:tabular-nums;line-height:1.1}.superadmin-kpi-card .kpi-label{font-size:10px;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.06em;margin-top:4px;font-weight:600}.admin-warning-banner{margin-bottom:var(--space-4);padding:12px 14px;background:var(--warning-bg);border:1px solid rgba(216,155,75,.35);border-radius:var(--border-radius-lg);font-size:13px;color:var(--text-primary);letter-spacing:-.005em;line-height:1.5}.admin-warning-banner strong{color:var(--warning);font-weight:700}.admin-entity-tabs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:var(--space-4);padding-bottom:var(--space-2);border-bottom:1px solid var(--border-color)}.admin-entity-tab{padding:6px 12px;font-size:12px;font-weight:600;font-family:var(--font-family);letter-spacing:-.005em;background:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--border-color);border-radius:7px;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast);white-space:nowrap}.admin-entity-tab:hover{border-color:var(--border-hover);color:var(--text-primary)}.admin-entity-tab.active{background:var(--accent);color:#fff;border-color:var(--accent)}.admin-toolbar{display:flex;gap:var(--space-3);flex-wrap:wrap;margin-bottom:var(--space-4);align-items:center}@media(max-width:480px){.superadmin-tab{padding:6px 10px;font-size:12px}.superadmin-kpi-card{padding:var(--space-3)}.superadmin-kpi-card .kpi-value{font-size:20px}}.superadmin-search-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 10px 6px 8px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;color:var(--text-secondary);font-family:var(--font-family);font-size:13px;font-weight:500;letter-spacing:-.005em;cursor:pointer;transition:border-color var(--transition-fast),background var(--transition-fast),color var(--transition-fast)}.superadmin-search-btn:hover{border-color:var(--border-hover);color:var(--text-primary)}.superadmin-search-kbd{display:inline-flex;align-items:center;justify-content:center;padding:2px 6px;border-radius:5px;background:var(--bg-secondary);border:1px solid var(--border-color);font-size:10px;color:var(--text-tertiary);font-weight:500;margin-left:4px;font-family:var(--font-family)}.superadmin-search-overlay{position:fixed;inset:0;background:#0f172a73;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:9999;display:flex;justify-content:center;align-items:flex-start;padding:12vh var(--space-4) 0;animation:fadeIn .15s ease-out}.superadmin-search-modal{width:100%;max-width:600px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--border-radius-2xl);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;max-height:70vh;overflow:hidden;animation:slideUp .18s cubic-bezier(.4,0,.2,1)}.superadmin-search-input-wrap{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--border-color);flex-shrink:0}.superadmin-search-input{flex:1;border:none;outline:none;background:transparent;color:var(--text-primary);font-family:var(--font-family);font-size:16px;letter-spacing:-.01em;min-width:0}.superadmin-search-input::placeholder{color:var(--text-tertiary)}.superadmin-search-close{flex-shrink:0;padding:3px 8px;border-radius:6px;background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-tertiary);font-size:11px;font-weight:500;cursor:pointer;font-family:var(--font-family);transition:background var(--transition-fast),color var(--transition-fast)}.superadmin-search-close:hover{background:var(--bg-hover);color:var(--text-primary)}.superadmin-search-groups{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:8px}.superadmin-search-group{margin-bottom:8px}.superadmin-search-group:last-child{margin-bottom:0}.superadmin-search-group-title{padding:6px 10px 4px;font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary);font-weight:600}.superadmin-search-result{display:flex;align-items:center;gap:12px;width:100%;padding:9px 12px;background:transparent;border:1px solid transparent;border-radius:10px;cursor:pointer;text-align:left;font-family:var(--font-family);transition:background var(--transition-fast),border-color var(--transition-fast)}.superadmin-search-result.is-selected,.superadmin-search-result:hover{background:var(--accent-soft);border-color:#63c7a040}.superadmin-search-result-main{flex:1;min-width:0}.superadmin-search-result-primary{font-size:14px;font-weight:600;color:var(--text-primary);letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.superadmin-search-result-secondary{font-size:12px;color:var(--text-tertiary);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.superadmin-search-result-meta{display:flex;align-items:center;gap:8px;flex-shrink:0}.superadmin-search-result-meta-text{font-size:11px;color:var(--text-tertiary);white-space:nowrap}.superadmin-search-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;background:var(--bg-secondary);color:var(--text-secondary);font-size:10px;font-weight:600;letter-spacing:.005em;white-space:nowrap;border:1px solid var(--border-color)}.superadmin-search-hint{padding:16px 18px 18px;color:var(--text-secondary)}.superadmin-search-hint p{font-size:13px;margin:0 0 8px}.superadmin-search-hint ul{list-style:none;padding:0;margin:0 0 12px}.superadmin-search-hint li{font-size:12px;padding:3px 0;color:var(--text-secondary)}.superadmin-search-hint-tip{font-size:11px;color:var(--text-tertiary);letter-spacing:.01em}.superadmin-search-hint-tip kbd{display:inline-block;padding:1px 5px;border-radius:4px;background:var(--bg-secondary);border:1px solid var(--border-color);font-size:10px;font-family:var(--font-family)}.superadmin-search-empty{padding:28px 20px;text-align:center;color:var(--text-tertiary);font-size:13px}.superadmin-search-empty p{margin:0}@media(max-width:480px){.superadmin-search-overlay{padding-top:6vh;padding-left:var(--space-3);padding-right:var(--space-3)}.superadmin-search-modal{max-height:80vh}.superadmin-search-btn span:not(.superadmin-search-kbd){display:none}.superadmin-search-kbd{display:none}}.superadmin-drawer-overlay{position:fixed;inset:0;background:#0f172a73;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:9998;display:flex;justify-content:flex-end;animation:fadeIn .15s ease-out}.superadmin-user-drawer{width:100%;max-width:520px;height:100%;background:var(--bg-card);border-left:1px solid var(--border-color);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;overflow:hidden;animation:drawerSlideIn .22s cubic-bezier(.4,0,.2,1)}@keyframes drawerSlideIn{0%{transform:translate(40px);opacity:0}to{transform:translate(0);opacity:1}}.user-drawer-header{flex-shrink:0;padding:var(--space-5);border-bottom:1px solid var(--border-color);background:var(--bg-secondary)}.user-drawer-header-top{display:flex;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-4)}.user-drawer-avatar{flex-shrink:0;width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700;letter-spacing:-.01em}.user-drawer-title{flex:1;min-width:0}.user-drawer-title h3{font-size:17px;font-weight:700;letter-spacing:-.02em;color:var(--text-primary);margin:0 0 2px;line-height:1.3}.user-drawer-email{font-size:13px;color:var(--text-secondary);margin:0;word-break:break-all}.user-drawer-meta-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.user-drawer-badge{display:inline-flex;align-items:center;gap:3px;padding:2px 9px;border-radius:999px;background:var(--bg-card);color:var(--text-secondary);font-size:11px;font-weight:600;letter-spacing:.005em;border:1px solid var(--border-color);white-space:nowrap}.user-drawer-badge.is-active{background:var(--success-bg);color:var(--success);border-color:#3aa66a4d}.user-drawer-badge.is-suspended{background:var(--danger-bg);color:var(--danger);border-color:#d04c4c4d}.user-drawer-badge.is-self{background:var(--info-bg);color:var(--info);border-color:#4d7ac04d}.user-drawer-badge--neutral{background:var(--bg-card);color:var(--text-secondary)}.user-drawer-close{flex-shrink:0;width:32px;height:32px;border-radius:8px;border:1px solid transparent;background:transparent;color:var(--text-tertiary);font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-family:var(--font-family);transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast)}.user-drawer-close:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--border-color)}.user-drawer-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px 16px;margin:0;padding:0}.user-drawer-meta div{font-size:11px}.user-drawer-meta dt{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.06em;font-weight:600;margin-bottom:2px}.user-drawer-meta dd{color:var(--text-primary);margin:0;font-size:12px;word-break:break-word}.user-drawer-mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px!important;color:var(--text-tertiary)!important}.user-drawer-body{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-5)}.user-drawer-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);padding:var(--space-4)}.user-drawer-section-title{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-tertiary);margin:0 0 var(--space-3)}.user-drawer-section-count{font-weight:500;color:var(--text-tertiary);text-transform:none;letter-spacing:0}.user-drawer-subtitle{font-size:11px;font-weight:600;color:var(--text-secondary);margin-bottom:6px;letter-spacing:-.005em}.user-drawer-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:8px}.user-drawer-kpi{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--border-radius);padding:10px 8px;text-align:center}.user-drawer-kpi-value{font-size:20px;font-weight:700;letter-spacing:-.025em;color:var(--text-primary);line-height:1.1;font-variant-numeric:tabular-nums}.user-drawer-kpi-label{font-size:10px;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;font-weight:600;margin-top:3px}.user-drawer-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:4px}.user-drawer-list-item{display:flex;align-items:center;gap:10px;padding:8px 10px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px}.user-drawer-list-item--audit{background:var(--bg-card)}.user-drawer-list-icon{flex-shrink:0;font-size:16px}.user-drawer-list-main{flex:1;min-width:0}.user-drawer-list-primary{font-size:13px;font-weight:600;color:var(--text-primary);letter-spacing:-.005em;line-height:1.3;text-transform:capitalize}.user-drawer-list-secondary{font-size:11px;color:var(--text-tertiary);margin-top:2px}.user-drawer-subgrid{display:grid;grid-template-columns:1fr;gap:var(--space-3)}@media(min-width:640px){.user-drawer-subgrid{grid-template-columns:1fr 1fr}}.user-drawer-empty{background:var(--bg-card);border:1px dashed var(--border-color);border-radius:var(--border-radius);padding:12px 14px;text-align:center;color:var(--text-tertiary)}.user-drawer-empty p{margin:0;font-size:12px}.user-drawer-empty p+p{margin-top:4px}.user-drawer-empty-tip{font-size:11px!important;color:var(--text-tertiary);font-style:italic}.user-drawer-empty--small{padding:8px 10px}.user-drawer-self-warning{font-size:11px;color:var(--warning);background:var(--warning-bg);border:1px solid rgba(216,155,75,.3);border-radius:var(--border-radius-sm);padding:8px 10px;margin:0 0 var(--space-3)}.user-drawer-actions{display:flex;flex-direction:column;gap:var(--space-3)}.user-drawer-action-row{display:flex;align-items:center;gap:8px}.user-drawer-action-label{font-size:11px;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;font-weight:600;min-width:90px}.user-drawer-action-buttons{display:flex;flex-wrap:wrap;gap:6px}.user-drawer-danger-zone{margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px dashed var(--border-color)}.user-drawer-danger-title{font-size:11px;font-weight:700;color:var(--danger);text-transform:uppercase;letter-spacing:.06em;margin-bottom:4px}.user-drawer-danger-text{font-size:11px;color:var(--text-tertiary);margin:0 0 8px;line-height:1.5}@media(max-width:640px){.superadmin-user-drawer{max-width:100%}.user-drawer-header{padding:var(--space-4)}.user-drawer-body{padding:var(--space-4);gap:var(--space-4)}}.workspace-drawer-icon{flex-shrink:0;width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:26px;background:var(--accent-soft);color:var(--accent);box-shadow:0 1px 2px #1720330f}.workspace-drawer-signals{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:4px}.workspace-drawer-signal{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:var(--border-radius);background:var(--bg-card);border:1px solid var(--border-color);font-size:12px;color:var(--text-primary);letter-spacing:-.005em;line-height:1.4}.workspace-drawer-signal--danger{background:var(--danger-bg);border-color:#d04c4c4d;color:var(--danger);font-weight:600}.workspace-drawer-signal--warning{background:var(--warning-bg);border-color:#d89b4b4d;color:var(--warning);font-weight:600}.workspace-drawer-signal--info{background:var(--info-bg);border-color:#4d7ac04d;color:var(--info)}.workspace-drawer-actions{display:flex;flex-wrap:wrap;gap:8px}.workspace-drawer-actions .btn{flex:1 1 auto;min-width:180px;justify-content:center}.superadmin-health{display:flex;flex-direction:column;gap:var(--space-5)}.health-intro h3{font-size:var(--font-size-xl);font-weight:700;letter-spacing:-.02em;color:var(--text-primary);margin:0 0 6px}.health-intro p{font-size:13px;color:var(--text-secondary);margin:0;line-height:1.5;letter-spacing:-.005em}.health-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--space-3)}.health-summary-card{padding:var(--space-4);border-radius:var(--border-radius-lg);background:var(--bg-card);border:1px solid var(--border-color);text-align:center;box-shadow:var(--shadow-sm)}.health-summary-card-value{font-size:28px;font-weight:700;letter-spacing:-.025em;font-variant-numeric:tabular-nums;line-height:1.1}.health-summary-card-label{font-size:11px;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.06em;font-weight:600;margin-top:4px}.health-summary-card--critical{background:var(--danger-bg);border-color:#d04c4c4d}.health-summary-card--critical .health-summary-card-value{color:var(--danger)}.health-summary-card--warning{background:var(--warning-bg);border-color:#d89b4b4d}.health-summary-card--warning .health-summary-card-value{color:var(--warning)}.health-summary-card--info{background:var(--info-bg);border-color:#4d7ac047}.health-summary-card--info .health-summary-card-value{color:var(--info)}.health-summary-card--ok{background:var(--success-bg);border-color:#3aa66a47}.health-summary-card--ok .health-summary-card-value{color:var(--success)}.health-summary-card--pending{background:var(--bg-secondary);border-color:var(--border-color)}.health-summary-card--pending .health-summary-card-value{color:var(--text-tertiary)}.health-group{display:flex;flex-direction:column;gap:var(--space-3)}.health-group-title{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-tertiary);margin:0;padding-bottom:4px;border-bottom:1px solid var(--border-color)}.health-group-title--critical{color:var(--danger)}.health-group-title--warning{color:var(--warning)}.health-group-title--info{color:var(--info)}.health-group-title--pending{color:var(--text-tertiary)}.health-check-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:var(--space-3)}.health-check-card{background:var(--bg-card);border:1px solid var(--border-color);border-left-width:4px;border-radius:var(--border-radius-lg);padding:var(--space-4);display:flex;flex-direction:column;gap:8px;box-shadow:var(--shadow-sm)}.health-check-card--critical{border-left-color:var(--danger)}.health-check-card--warning{border-left-color:var(--warning)}.health-check-card--info{border-left-color:var(--info)}.health-check-card--pending{border-left-color:var(--text-tertiary);border-style:dashed}.health-check-card--ok{border-left-color:var(--success)}.health-check-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.health-check-title{font-size:14px;font-weight:700;color:var(--text-primary);letter-spacing:-.01em;flex:1;min-width:0}.health-check-count{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;min-width:28px;padding:2px 10px;border-radius:999px;background:var(--bg-secondary);color:var(--text-secondary);font-size:12px;font-weight:700;font-variant-numeric:tabular-nums}.health-check-card--critical .health-check-count{background:var(--danger-bg);color:var(--danger)}.health-check-card--warning .health-check-count{background:var(--warning-bg);color:var(--warning)}.health-check-card--info .health-check-count{background:var(--info-bg);color:var(--info)}.health-check-description{font-size:12px;color:var(--text-secondary);margin:0;line-height:1.5;letter-spacing:-.005em}.health-check-items{list-style:none;padding:0;margin:4px 0 0;display:flex;flex-direction:column;gap:4px}.health-check-item{display:flex;align-items:center;gap:8px;padding:6px 10px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius)}.health-check-item-main{flex:1;min-width:0}.health-check-item-primary{font-size:12px;font-weight:600;color:var(--text-primary);letter-spacing:-.005em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-transform:capitalize}.health-check-item-secondary{font-size:11px;color:var(--text-tertiary);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.health-check-actions{margin-top:4px;display:flex;gap:6px;flex-wrap:wrap}.health-ok-details{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);padding:10px 14px}.health-ok-details summary{cursor:pointer;font-size:12px;font-weight:600;color:var(--success);letter-spacing:-.005em;list-style:none}.health-ok-details summary::-webkit-details-marker{display:none}.health-ok-details summary:before{content:"▸ ";display:inline-block;margin-right:4px;transition:transform var(--transition-fast)}.health-ok-details[open] summary:before{transform:rotate(90deg)}.health-ok-list{list-style:none;padding:0;margin:8px 0 0;display:flex;flex-direction:column;gap:4px}.health-ok-list li{font-size:12px;color:var(--text-secondary);padding:3px 0;letter-spacing:-.005em}.health-ok-list li:before{content:"✓";color:var(--success);font-weight:700;margin-right:6px}@media(max-width:480px){.health-summary-grid{grid-template-columns:repeat(2,1fr)}.health-summary-card{padding:var(--space-3)}.health-summary-card-value{font-size:22px}.health-check-list{grid-template-columns:1fr}}.audit-panel{display:flex;flex-direction:column;gap:var(--space-4)}.audit-migration-warning{padding:14px 16px;border-radius:var(--border-radius-lg);background:var(--warning-bg);border:1px solid rgba(216,155,75,.3);font-size:13px;color:var(--text-primary);letter-spacing:-.005em;line-height:1.5}.audit-migration-warning strong{color:var(--warning)}.audit-migration-warning code{background:var(--bg-card);padding:1px 6px;border-radius:var(--border-radius-sm);font-size:12px;color:var(--warning)}.audit-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--space-3)}.audit-summary-card{padding:var(--space-3) var(--space-4);border-radius:var(--border-radius-lg);background:var(--bg-card);border:1px solid var(--border-color);text-align:center;box-shadow:var(--shadow-sm)}.audit-summary-card-value{font-size:24px;font-weight:700;letter-spacing:-.025em;font-variant-numeric:tabular-nums;line-height:1.1;color:var(--text-primary)}.audit-summary-card-label{font-size:10px;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.06em;font-weight:600;margin-top:4px}.audit-summary-card--critical{background:var(--danger-bg);border-color:#d04c4c4d}.audit-summary-card--critical .audit-summary-card-value{color:var(--danger)}.audit-summary-card--warning{background:var(--warning-bg);border-color:#d89b4b4d}.audit-summary-card--warning .audit-summary-card-value{color:var(--warning)}.audit-summary-card--info{background:var(--info-bg);border-color:#4d7ac047}.audit-summary-card--info .audit-summary-card-value{color:var(--info)}.audit-filters{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:flex-end;padding:10px 12px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm)}.audit-filter{display:flex;flex-direction:column;gap:3px;min-width:130px;flex:0 1 auto}.audit-filter-label{font-size:10px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.06em}.audit-filter-select{padding:6px 28px 6px 10px;font-size:12px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius-sm);color:var(--text-primary);font-family:var(--font-family);cursor:pointer;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='10' fill='%239AA3B2' viewBox='0 0 16 16'><path d='M8 11L3 6h10l-5 5z'/></svg>");background-repeat:no-repeat;background-position:right 8px center;transition:border-color var(--transition-fast),box-shadow var(--transition-fast);letter-spacing:-.005em;line-height:1.4}.audit-filter-select:hover{border-color:var(--border-hover)}.audit-filter-select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.audit-filter-summary{font-size:12px;color:var(--text-tertiary);padding:0 4px}.audit-filter-summary strong{color:var(--text-primary);font-weight:600}.audit-timeline{display:flex;flex-direction:column;gap:6px}.audit-event-card{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;background:var(--bg-card);border:1px solid var(--border-color);border-left-width:4px;border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm);transition:border-color var(--transition-fast)}.audit-event-card:hover{border-color:var(--border-hover)}.audit-event-card--critical{border-left-color:var(--danger)}.audit-event-card--warning{border-left-color:var(--warning)}.audit-event-card--info{border-left-color:var(--info)}.audit-event-card--success{border-left-color:var(--success)}.audit-event-card--neutral{border-left-color:var(--text-tertiary)}.audit-event-icon{flex-shrink:0;font-size:18px;margin-top:1px}.audit-event-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.audit-event-header{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.audit-event-title{font-size:13px;font-weight:700;color:var(--text-primary);letter-spacing:-.005em;text-transform:capitalize}.audit-event-sev{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:1px 8px;border-radius:999px}.audit-event-sev--critical{background:var(--danger-bg);color:var(--danger)}.audit-event-sev--warning{background:var(--warning-bg);color:var(--warning)}.audit-event-sev--info{background:var(--info-bg);color:var(--info)}.audit-event-sev--success{background:var(--success-bg);color:var(--success)}.audit-event-sev--neutral{background:var(--bg-secondary);color:var(--text-tertiary);border:1px solid var(--border-color)}.audit-event-entity{font-size:10px;font-weight:600;color:var(--text-secondary);background:var(--bg-secondary);padding:1px 7px;border-radius:999px;border:1px solid var(--border-color);font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.audit-event-meta{font-size:12px;color:var(--text-tertiary);display:flex;align-items:center;gap:4px;flex-wrap:wrap;letter-spacing:-.005em;line-height:1.5}.audit-event-meta strong{color:var(--text-secondary);font-weight:600}.audit-event-time{color:var(--text-tertiary);white-space:nowrap}.audit-event-id{background:var(--bg-secondary);padding:1px 5px;border-radius:4px;font-size:11px;color:var(--text-tertiary);font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.audit-event-ws{font-size:11px;color:var(--text-secondary);background:var(--accent-soft);padding:1px 8px;border-radius:999px;border:1px solid rgba(99,199,160,.3)}.audit-event-metadata-preview{font-size:11px;color:var(--text-tertiary);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;padding:4px 8px;background:var(--bg-secondary);border-radius:var(--border-radius-sm);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:-.005em}.audit-event-details-toggle{align-self:flex-start;background:transparent;border:none;color:var(--accent);font-size:11px;font-weight:600;cursor:pointer;padding:2px 0;font-family:var(--font-family)}.audit-event-details-toggle:hover{color:var(--accent-hover);text-decoration:underline}.audit-event-metadata-full{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius-sm);padding:10px 12px;margin:4px 0 0;font-size:11px;color:var(--text-secondary);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;overflow-x:auto;line-height:1.5;max-height:240px;overflow-y:auto}.audit-event-actions{margin-top:4px;display:flex;gap:6px}.audit-empty{text-align:center;padding:var(--space-8);background:var(--bg-card);border:1px dashed var(--border-color);border-radius:var(--border-radius-lg)}.audit-empty .empty-icon{font-size:32px;margin-bottom:8px;opacity:.5}.audit-empty h3{font-size:14px;margin:0 0 4px;color:var(--text-primary)}.audit-empty p{font-size:12px;color:var(--text-tertiary);margin:0}@media(max-width:480px){.audit-summary-grid{grid-template-columns:repeat(2,1fr)}.audit-summary-card-value{font-size:20px}.audit-filters{flex-direction:column;align-items:stretch}.audit-filter{min-width:0}.audit-event-card{flex-direction:column;gap:8px}}.invitations-panel{display:flex;flex-direction:column;gap:var(--space-4)}.invitations-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--space-3)}.invitations-summary-card{padding:var(--space-3) var(--space-4);border-radius:var(--border-radius-lg);background:var(--bg-card);border:1px solid var(--border-color);text-align:center;box-shadow:var(--shadow-sm)}.invitations-summary-card-value{font-size:24px;font-weight:700;letter-spacing:-.025em;font-variant-numeric:tabular-nums;line-height:1.1;color:var(--text-primary)}.invitations-summary-card-label{font-size:10px;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.06em;font-weight:600;margin-top:4px}.invitations-summary-card--info{background:var(--info-bg);border-color:#4d7ac047}.invitations-summary-card--info .invitations-summary-card-value{color:var(--info)}.invitations-summary-card--warning{background:var(--warning-bg);border-color:#d89b4b4d}.invitations-summary-card--warning .invitations-summary-card-value{color:var(--warning)}.invitations-summary-card--critical{background:var(--danger-bg);border-color:#d04c4c4d}.invitations-summary-card--critical .invitations-summary-card-value{color:var(--danger)}.invitations-summary-card--success{background:var(--success-bg);border-color:#3aa66a47}.invitations-summary-card--success .invitations-summary-card-value{color:var(--success)}.invitations-filters{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:flex-end;padding:10px 12px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm)}.invitations-search-input{min-width:240px;flex:1 1 280px;max-width:420px;font-size:13px}.invitations-filter{display:flex;flex-direction:column;gap:3px;min-width:130px;flex:0 1 auto}.invitations-filter-label{font-size:10px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.06em}.invitations-filter-select{padding:6px 28px 6px 10px;font-size:12px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius-sm);color:var(--text-primary);font-family:var(--font-family);cursor:pointer;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='10' fill='%239AA3B2' viewBox='0 0 16 16'><path d='M8 11L3 6h10l-5 5z'/></svg>");background-repeat:no-repeat;background-position:right 8px center;transition:border-color var(--transition-fast),box-shadow var(--transition-fast);letter-spacing:-.005em;line-height:1.4}.invitations-filter-select:hover{border-color:var(--border-hover)}.invitations-filter-select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.invitations-filter-summary{font-size:12px;color:var(--text-tertiary);padding:0 4px}.invitations-filter-summary strong{color:var(--text-primary);font-weight:600}.invitations-list{display:flex;flex-direction:column;gap:var(--space-3)}.invitation-card{background:var(--bg-card);border:1px solid var(--border-color);border-left-width:4px;border-left-color:var(--border-color);border-radius:var(--border-radius-lg);padding:14px 16px;display:flex;flex-direction:column;gap:8px;box-shadow:var(--shadow-sm);transition:border-color var(--transition-fast)}.invitation-card:hover{border-color:var(--border-hover)}.invitation-card--warning{border-left-color:var(--warning)}.invitation-card--danger{border-left-color:var(--danger);background:var(--danger-bg)}.invitation-header{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.invitation-email{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:700;color:var(--text-primary);letter-spacing:-.01em;word-break:break-all;min-width:0;flex:1}.invitation-icon{font-size:16px;flex-shrink:0}.invitation-badges{display:inline-flex;flex-wrap:wrap;gap:6px;flex-shrink:0}.invitation-status-badge{display:inline-flex;align-items:center;padding:2px 9px;border-radius:999px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;white-space:nowrap}.invitation-status-badge--pending{background:var(--info-bg);color:var(--info)}.invitation-status-badge--accepted{background:var(--success-bg);color:var(--success)}.invitation-status-badge--expired{background:var(--bg-tertiary);color:var(--text-tertiary);border:1px solid var(--border-color)}.invitation-status-badge--cancelled{background:var(--bg-secondary);color:var(--text-tertiary);border:1px solid var(--border-color)}.invitation-status-badge--zombie{background:var(--danger);color:#fff}.invitation-status-badge--unknown{background:var(--bg-secondary);color:var(--text-tertiary);border:1px solid var(--border-color)}.invitation-role-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;background:var(--bg-secondary);border:1px solid var(--border-color);font-size:10px;color:var(--text-secondary);font-weight:600;text-transform:capitalize}.invitation-soon-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;background:var(--warning-bg);color:var(--warning);border:1px solid rgba(216,155,75,.3);font-size:10px;font-weight:700;letter-spacing:.005em;white-space:nowrap}.invitation-meta{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:12px;color:var(--text-secondary);letter-spacing:-.005em;line-height:1.5}.invitation-meta-item{display:inline-flex;align-items:center;gap:4px}.invitation-meta-item strong{color:var(--text-primary);font-weight:600}.invitation-meta-item--mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;color:var(--text-tertiary)}.invitation-zombie-note{font-size:11px;color:var(--text-primary);background:var(--danger-bg);border:1px solid rgba(208,76,76,.3);border-radius:var(--border-radius-sm);padding:8px 10px;line-height:1.5}.invitation-zombie-note strong{color:var(--danger);font-weight:700}.invitation-footer{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;padding-top:6px;border-top:1px dashed var(--border-color)}.invitation-token-preview{font-size:11px;color:var(--text-tertiary);letter-spacing:.005em}.invitation-token-preview code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:var(--bg-secondary);border:1px solid var(--border-color);padding:1px 6px;border-radius:4px;color:var(--text-secondary);font-size:11px}.invitation-actions{display:flex;gap:6px;flex-wrap:wrap}.invitation-empty{text-align:center;padding:var(--space-8);background:var(--bg-card);border:1px dashed var(--border-color);border-radius:var(--border-radius-lg)}.invitation-empty .empty-icon{font-size:32px;margin-bottom:8px;opacity:.5}.invitation-empty h3{font-size:14px;margin:0 0 4px;color:var(--text-primary)}.invitation-empty p{font-size:12px;color:var(--text-tertiary);margin:0}@media(max-width:480px){.invitations-summary-grid{grid-template-columns:repeat(2,1fr)}.invitations-summary-card-value{font-size:20px}.invitations-filters{flex-direction:column;align-items:stretch}.invitations-filter{min-width:0}.invitations-search-input{min-width:0;max-width:100%}.invitation-header,.invitation-footer{flex-direction:column;align-items:flex-start}}.notes-view-tabs{display:flex;gap:4px;padding:4px;margin:0 0 12px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius);width:fit-content;box-shadow:var(--shadow-sm)}.notes-view-tab{appearance:none;background:transparent;border:none;padding:6px 14px;font-size:13px;font-weight:600;color:var(--text-secondary);border-radius:8px;cursor:pointer;transition:background .15s ease,color .15s ease,transform .1s ease}.notes-view-tab:hover{color:var(--text-primary);background:var(--bg-card)}.notes-view-tab.is-active{background:var(--bg-card);color:var(--accent);box-shadow:var(--shadow-sm)}.note-status-badge{display:inline-flex;align-items:center;font-size:10px;font-weight:700;letter-spacing:.03em;padding:2px 8px;border-radius:999px;line-height:1.4;border:1px solid transparent;white-space:nowrap}.note-status-badge--active{color:var(--success);background:var(--success-bg);border-color:var(--success-bg)}.note-status-badge--archived{color:var(--text-secondary);background:var(--bg-secondary);border-color:var(--border-color)}.note-status-badge--discarded{color:var(--danger);background:var(--danger-bg);border-color:var(--danger-bg)}.note-status-actions{display:inline-flex;gap:4px}.note-status-button{appearance:none;background:var(--bg-card);color:var(--text-secondary);border:1px solid var(--border-color);padding:3px 10px;font-size:11px;font-weight:600;border-radius:8px;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.note-status-button:hover{color:var(--text-primary);background:var(--bg-elevated);border-color:var(--border-hover)}.note-status-button--danger{color:var(--danger);border-color:var(--danger-bg)}.note-status-button--danger:hover{background:var(--danger-bg);color:var(--danger);border-color:var(--danger)}.note-archived-meta{display:inline-flex;align-items:center;font-size:11px;font-weight:500;color:var(--text-tertiary);padding:4px 10px;background:var(--bg-secondary);border:1px dashed var(--border-color);border-radius:8px;width:fit-content}@media(max-width:640px){.notes-view-tabs{width:100%;justify-content:space-between}.notes-view-tab{flex:1;text-align:center;padding:6px 10px}.note-status-actions{flex-wrap:wrap}}.notes-folder-section{border-bottom:1px solid var(--border-color);background:var(--bg-secondary)}.notes-folder-header{appearance:none;background:transparent;border:none;width:100%;display:flex;align-items:center;justify-content:space-between;padding:10px 12px 6px;cursor:pointer;color:var(--text-secondary);font-family:inherit}.notes-folder-header:hover{color:var(--text-primary)}.notes-folder-add{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:6px;font-size:14px;line-height:1;color:var(--text-secondary);background:var(--bg-card);border:1px solid var(--border-color);cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.notes-folder-add:hover{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}.notes-folder-list{display:flex;flex-direction:column;gap:2px;padding:4px 8px 10px}.notes-folder-empty{font-size:11px;color:var(--text-tertiary);padding:8px 6px 2px;font-style:italic}.notes-folder-item{display:flex;align-items:center;gap:6px;padding:5px 8px;border-radius:8px;cursor:pointer;background:transparent;border:1px solid transparent;text-align:left;width:100%;font-family:inherit;color:var(--text-primary);transition:background .15s ease,border-color .15s ease,color .15s ease}.notes-folder-item:hover{background:var(--bg-card);border-color:var(--border-color)}.notes-folder-item.is-active{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.notes-folder-item-main{appearance:none;background:transparent;border:none;cursor:pointer;display:flex;align-items:center;gap:6px;padding:0;flex:1;min-width:0;font-family:inherit;color:inherit;text-align:left}.notes-folder-icon{font-size:13px;flex-shrink:0}.notes-folder-name{font-size:12px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notes-folder-count{font-size:10px;color:var(--text-tertiary);background:var(--bg-tertiary);padding:1px 6px;border-radius:10px;flex-shrink:0}.notes-folder-actions{display:none;gap:2px;flex-shrink:0}.notes-folder-item:hover .notes-folder-actions,.notes-folder-item.is-active .notes-folder-actions{display:inline-flex}.notes-folder-actions button{appearance:none;background:transparent;border:none;cursor:pointer;padding:2px 4px;font-size:11px;color:var(--text-tertiary);border-radius:4px;line-height:1}.notes-folder-actions button:hover{background:var(--bg-elevated);color:var(--text-primary)}.note-folder-chip{display:inline-flex;align-items:center;gap:3px;font-size:10px;font-weight:600;padding:1px 7px;border-radius:8px;background:var(--accent-softer);color:var(--accent);border:1px solid transparent;white-space:nowrap}.note-folder-inline{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--border-radius);align-self:flex-start;box-shadow:var(--shadow-sm)}.note-folder-inline-label{font-size:11px;font-weight:700;color:var(--text-tertiary);letter-spacing:.03em}.note-folder-select{font-size:12px!important;padding:3px 8px!important;min-width:140px}.notes-folder-modal-backdrop{position:fixed;inset:0;background:#00000073;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px}.notes-folder-modal{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);padding:22px;width:100%;max-width:380px;box-shadow:var(--shadow-md, 0 8px 30px rgba(0,0,0,.15));display:flex;flex-direction:column}.notes-folder-modal-title{font-size:16px;font-weight:700;color:var(--text-primary);margin-bottom:14px}@media(max-width:640px){.note-folder-inline{width:100%}.note-folder-select{flex:1;min-width:0}}.notes-tags-list{display:flex;flex-wrap:wrap;gap:4px;padding:4px 10px 10px}.notes-tag-filter{appearance:none;background:var(--bg-card);color:var(--text-secondary);border:1px solid var(--border-color);font-size:11px;font-weight:600;padding:3px 9px;border-radius:999px;cursor:pointer;font-family:inherit;transition:background .15s ease,color .15s ease,border-color .15s ease}.notes-tag-filter:hover{background:var(--bg-elevated);color:var(--text-primary);border-color:var(--border-hover)}.notes-tag-filter.is-active{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}.note-tags{display:inline-flex;gap:3px;flex-wrap:wrap}.note-tag-chip{display:inline-flex;align-items:center;font-size:10px;font-weight:600;padding:1px 7px;border-radius:8px;background:var(--accent-softer);color:var(--accent);border:1px solid transparent;white-space:nowrap;line-height:1.4}.note-tag-chip--more{background:var(--bg-tertiary);color:var(--text-tertiary)}.notes-tags-section{display:flex;flex-direction:column;gap:8px;padding:12px 14px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--border-radius);box-shadow:var(--shadow-sm)}.notes-tags-header{font-size:11px;font-weight:700;color:var(--text-tertiary);letter-spacing:.06em;text-transform:uppercase}.note-tag-input-row{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.note-tag-chip--editable{background:var(--accent-soft);color:var(--accent);padding:2px 4px 2px 9px;gap:4px;font-size:11px;border-radius:999px}.note-tag-remove{appearance:none;background:transparent;border:none;cursor:pointer;color:var(--accent);font-size:14px;line-height:1;padding:0 4px;border-radius:999px;transition:background .15s ease}.note-tag-remove:hover{background:var(--danger-bg);color:var(--danger)}.note-tag-input{appearance:none;background:transparent;border:none;outline:none;font-family:inherit;font-size:12px;color:var(--text-primary);flex:1;min-width:120px;padding:4px 6px}.note-tag-input::placeholder{color:var(--text-tertiary)}.note-tag-input:disabled{color:var(--text-tertiary)}.note-tag-suggestions{display:flex;flex-wrap:wrap;gap:4px;padding-top:4px;border-top:1px dashed var(--border-color)}.note-tag-suggestion{appearance:none;background:var(--bg-secondary);border:1px solid var(--border-color);font-size:11px;font-weight:600;color:var(--text-secondary);padding:2px 8px;border-radius:999px;cursor:pointer;font-family:inherit;transition:background .15s ease,color .15s ease,border-color .15s ease}.note-tag-suggestion:hover{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}@media(max-width:640px){.notes-tag-filter{font-size:10px;padding:3px 7px}}.admin-note-status-badge{display:inline-block;font-size:10px;font-weight:700;letter-spacing:.03em;padding:2px 8px;border-radius:999px;white-space:nowrap;line-height:1.4;border:1px solid transparent}.admin-note-status-badge--active{color:var(--success);background:var(--success-bg);border-color:var(--success-bg)}.admin-note-status-badge--archived{color:var(--text-secondary);background:var(--bg-secondary);border-color:var(--border-color)}.admin-note-status-badge--discarded{color:var(--danger);background:var(--danger-bg);border-color:var(--danger-bg)}.admin-note-tags{display:inline-flex;flex-wrap:wrap;gap:3px;margin-top:4px}.admin-note-tag{display:inline-flex;align-items:center;font-size:10px;font-weight:600;padding:1px 7px;border-radius:8px;background:var(--accent-softer);color:var(--accent);white-space:nowrap;line-height:1.4}.admin-note-tag--more{background:var(--bg-tertiary);color:var(--text-tertiary)}.admin-note-pinned{display:inline-flex;align-items:center;font-size:12px;color:var(--warning);line-height:1}.admin-note-color-dot{display:inline-block;width:10px;height:10px;border-radius:999px;border:1px solid var(--border-color)}.admin-note-color-dot--yellow{background:#fde047}.admin-note-color-dot--blue{background:#93c5fd}.admin-note-color-dot--green{background:#86efac}.admin-note-color-dot--pink{background:#f9a8d4}.admin-note-color-dot--purple{background:#c4b5fd}.invitation-action-btn{appearance:none;font-family:inherit;font-size:11px;font-weight:600;padding:5px 11px;border-radius:var(--border-radius);border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-secondary);cursor:pointer;display:inline-flex;align-items:center;gap:5px;transition:background .15s ease,color .15s ease,border-color .15s ease,transform .1s ease;white-space:nowrap}.invitation-action-btn:hover{background:var(--bg-elevated);color:var(--text-primary);border-color:var(--border-hover)}.invitation-action-btn:active{transform:translateY(1px)}.invitation-action-btn--primary{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}.invitation-action-btn--primary:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.invitation-action-btn--primary.is-copied{background:var(--success-bg);color:var(--success);border-color:var(--success)}.invitation-action-btn--ghost{color:var(--accent);border-color:var(--border-color)}.invitation-action-btn--ghost:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.invitation-details{margin-top:10px;padding:12px 14px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius);box-shadow:var(--shadow-sm)}.invitation-details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px 18px}.invitation-detail-row{display:flex;flex-direction:column;gap:2px;font-size:12px;min-width:0}.invitation-detail-label{font-size:10px;font-weight:700;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.06em}.invitation-detail-value{color:var(--text-primary);word-break:break-word}.invitation-detail-value--mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;color:var(--text-secondary);background:var(--bg-card);padding:2px 6px;border-radius:6px;border:1px solid var(--border-color);word-break:break-all}.invitation-detail-note{margin-top:10px;padding:8px 12px;background:var(--warning-bg);color:var(--warning);border-left:3px solid var(--warning);border-radius:6px;font-size:11px;line-height:1.5}@media(max-width:640px){.invitation-action-btn{font-size:10px;padding:4px 8px}.invitation-details-grid{grid-template-columns:1fr}}.invitation-action-btn--danger{background:var(--bg-card);color:var(--danger);border-color:var(--danger-bg)}.invitation-action-btn--danger:hover{background:var(--danger-bg);color:var(--danger);border-color:var(--danger)}.invitation-action-btn--danger:disabled,.invitation-action-btn.is-loading{opacity:.6;cursor:progress}.invitation-error{margin-top:10px;padding:8px 12px;background:var(--danger-bg);color:var(--danger);border-left:3px solid var(--danger);border-radius:6px;font-size:11px;line-height:1.5}.invitation-action-btn--info{background:var(--bg-card);color:var(--info, var(--accent));border-color:var(--info-bg, var(--accent-soft))}.invitation-action-btn--info:hover{background:var(--info-bg, var(--accent-soft));color:var(--info, var(--accent));border-color:var(--info, var(--accent))}.invitation-action-btn--info:disabled{opacity:.6;cursor:progress}.invitation-action-btn.is-success,.invitation-action-btn.is-success:hover{background:var(--success-bg);color:var(--success);border-color:var(--success)}.notes-panel-search{width:100%;background:var(--bg-secondary);border:1px solid var(--border-color)}.notes-panel-filters{display:flex;gap:6px;align-items:stretch}.notes-panel-select{flex:1;font-size:11px!important;padding:5px 8px!important;background:var(--bg-primary);min-width:0}.notes-panel-item{padding:12px 16px;border-bottom:1px solid var(--border-color);cursor:pointer;transition:background .15s ease}.notes-panel-item:hover{background:var(--bg-secondary)}.notes-panel-quick-meta{display:flex;flex-wrap:wrap;gap:4px;align-items:center;margin-top:4px}.notes-panel-folder-chip{display:inline-flex;align-items:center;gap:3px;font-size:10px;font-weight:600;padding:1px 7px;border-radius:8px;background:var(--accent-softer);color:var(--accent);white-space:nowrap;line-height:1.4}.notes-panel-tags{display:inline-flex;flex-wrap:wrap;gap:3px}.notes-panel-tag{display:inline-flex;align-items:center;font-size:10px;font-weight:600;padding:1px 6px;border-radius:8px;background:var(--accent-soft);color:var(--accent);white-space:nowrap;line-height:1.4}.notes-panel-tag--more{background:var(--bg-tertiary);color:var(--text-tertiary)}.notes-panel-status-badge{display:inline-block;font-size:9px;font-weight:700;letter-spacing:.04em;padding:1px 7px;border-radius:999px;text-transform:uppercase;white-space:nowrap;line-height:1.4;border:1px solid transparent}.notes-panel-status-badge--archived{color:var(--text-secondary);background:var(--bg-secondary);border-color:var(--border-color)}.notes-panel-status-badge--discarded{color:var(--danger);background:var(--danger-bg);border-color:var(--danger-bg)}.notes-panel-actions{display:flex;gap:6px;margin-top:6px}.notes-panel-action-btn{appearance:none;font-family:inherit;font-size:10px;font-weight:600;padding:3px 8px;border-radius:6px;border:1px solid var(--border-color);background:var(--bg-card);color:var(--accent);cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.notes-panel-action-btn:hover{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}.notes-panel-action-btn:disabled{opacity:.6;cursor:progress}.notes-panel-action-btn--ghost{color:var(--text-secondary)}.notes-panel-action-btn--ghost:hover{background:var(--bg-elevated);color:var(--text-primary);border-color:var(--border-hover)}.notes-panel-empty{padding:32px 16px;text-align:center;color:var(--text-tertiary);font-size:13px}.notes-panel-error{margin-top:6px;padding:6px 8px;background:var(--danger-bg);color:var(--danger);border-left:3px solid var(--danger);border-radius:6px;font-size:10px}.linked-note-create-form{padding:10px;margin-bottom:8px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius);box-shadow:var(--shadow-sm)}.linked-note-form-row{display:flex;gap:6px;align-items:stretch}.linked-note-select{flex:1;font-size:11px!important;padding:5px 8px!important;min-width:0}.linked-note-card{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;cursor:pointer;transition:background .12s ease,border-color .12s ease,transform .12s ease}.linked-note-card:hover{background:var(--bg-tertiary);border-color:var(--accent)}.linked-note-quick-meta{display:flex;flex-wrap:wrap;gap:4px;align-items:center;margin-top:4px}.linked-note-folder-chip{display:inline-flex;align-items:center;gap:3px;font-size:10px;font-weight:600;padding:1px 7px;border-radius:8px;background:var(--accent-softer);color:var(--accent);white-space:nowrap;line-height:1.4}.linked-note-tags{display:inline-flex;flex-wrap:wrap;gap:3px}.linked-note-tag{display:inline-flex;align-items:center;font-size:10px;font-weight:600;padding:1px 6px;border-radius:8px;background:var(--accent-soft);color:var(--accent);white-space:nowrap;line-height:1.4}.linked-note-tag--more{background:var(--bg-tertiary);color:var(--text-tertiary)}.linked-note-status-badge{display:inline-block;font-size:9px;font-weight:700;letter-spacing:.04em;padding:1px 7px;border-radius:999px;text-transform:uppercase;white-space:nowrap;line-height:1.4;border:1px solid transparent}.linked-note-status-badge--archived{color:var(--text-secondary);background:var(--bg-secondary);border-color:var(--border-color)}.linked-note-status-badge--discarded{color:var(--danger);background:var(--danger-bg);border-color:var(--danger-bg)}.linked-note-actions{display:flex;gap:4px;align-self:flex-start}.linked-note-action-btn{appearance:none;background:transparent;border:1px solid transparent;cursor:pointer;font-size:14px;color:var(--text-tertiary);padding:2px 6px;border-radius:6px;line-height:1;transition:background .12s ease,color .12s ease,border-color .12s ease}.linked-note-action-btn:hover{background:var(--bg-card);color:var(--text-primary);border-color:var(--border-color)}.linked-note-action-btn:disabled{opacity:.6;cursor:progress}.linked-note-action-btn--danger:hover{background:var(--danger-bg);color:var(--danger);border-color:var(--danger)}.linked-note-error{margin-top:6px;padding:4px 8px;background:var(--danger-bg);color:var(--danger);border-left:3px solid var(--danger);border-radius:6px;font-size:10px}.dashboard-day-summary{font-size:var(--font-size-sm);font-weight:500;color:var(--text-secondary);margin-bottom:var(--space-3)}.dashboard-attention{margin-bottom:var(--space-4)}.dashboard-attention-header{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-tertiary);margin-bottom:var(--space-2);padding-left:2px}.dashboard-attention-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-3)}.dashboard-attention-card{display:flex;flex-direction:column;gap:4px;padding:12px 14px;border-radius:var(--border-radius-lg, 14px);border:1px solid var(--border-color);background:var(--bg-card);box-shadow:var(--shadow-sm);text-decoration:none;color:inherit;border-left-width:3px;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease;cursor:pointer}.dashboard-attention-card:hover{transform:translateY(-1px);box-shadow:var(--shadow-md, var(--shadow-sm));border-color:var(--border-hover)}.dashboard-attention-card--danger{border-left-color:var(--danger);background:linear-gradient(180deg,var(--danger-bg) 0%,var(--bg-card) 60%)}.dashboard-attention-card--warning{border-left-color:var(--warning);background:linear-gradient(180deg,var(--warning-bg) 0%,var(--bg-card) 60%)}.dashboard-attention-card--info{border-left-color:var(--info, var(--accent));background:linear-gradient(180deg,var(--info-bg, var(--accent-soft)) 0%,var(--bg-card) 60%)}.dashboard-attention-card--success{border-left-color:var(--success);background:linear-gradient(180deg,var(--success-bg) 0%,var(--bg-card) 60%)}.dashboard-attention-title{font-size:13px;font-weight:700;color:var(--text-primary);display:flex;align-items:center;gap:6px}.dashboard-attention-text{font-size:11px;color:var(--text-secondary);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.dashboard-attention-action{margin-top:4px;font-size:11px;font-weight:700;color:var(--accent);letter-spacing:.02em}@media(max-width:640px){.dashboard-attention-grid{grid-template-columns:1fr}}.dashboard-week-plan{margin-bottom:var(--space-4)}.dashboard-week-header{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-tertiary);margin-bottom:var(--space-2);padding-left:2px}.dashboard-week-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:var(--space-2)}.dashboard-week-day{display:flex;flex-direction:column;gap:2px;padding:10px 10px 12px;border-radius:var(--border-radius);border:1px solid var(--border-color);background:var(--bg-card);box-shadow:var(--shadow-sm);text-decoration:none;color:inherit;min-height:100px;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease,background .15s ease;border-top-width:3px}.dashboard-week-day:hover{transform:translateY(-1px);box-shadow:var(--shadow-md, var(--shadow-sm));border-color:var(--border-hover)}.dashboard-week-day--empty{cursor:default;background:var(--bg-secondary);border-top-color:var(--border-color)}.dashboard-week-day--empty:hover{transform:none;box-shadow:var(--shadow-sm);border-color:var(--border-color)}.dashboard-week-day--info{border-top-color:var(--info, var(--accent));background:linear-gradient(180deg,var(--info-bg, var(--accent-soft)) 0%,var(--bg-card) 35%)}.dashboard-week-day--warning{border-top-color:var(--warning);background:linear-gradient(180deg,var(--warning-bg) 0%,var(--bg-card) 35%)}.dashboard-week-day--danger{border-top-color:var(--danger);background:linear-gradient(180deg,var(--danger-bg) 0%,var(--bg-card) 35%)}.dashboard-week-day-label{font-size:11px;font-weight:700;letter-spacing:.03em;color:var(--text-primary);text-transform:uppercase}.dashboard-week-day-date{font-size:10px;color:var(--text-tertiary);margin-bottom:4px}.dashboard-week-day-count{font-size:18px;font-weight:700;color:var(--text-primary);line-height:1;margin-bottom:4px}.dashboard-week-day--empty .dashboard-week-day-count{color:var(--text-tertiary);font-weight:500}.dashboard-week-day-preview{display:flex;flex-direction:column;gap:2px;margin-top:auto}.dashboard-week-task-preview{font-size:10px;color:var(--text-secondary);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-week-task-preview--more{color:var(--text-tertiary);font-weight:600}.dashboard-week-empty{padding:24px;text-align:center;font-size:13px;color:var(--text-tertiary);background:var(--bg-secondary);border:1px dashed var(--border-color);border-radius:var(--border-radius)}@media(max-width:900px){.dashboard-week-grid{grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:minmax(120px,1fr);overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:4px}.dashboard-week-day{scroll-snap-align:start;min-height:110px}}.dashboard-focus{margin-bottom:var(--space-4)}.dashboard-focus-header{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-tertiary);margin-bottom:var(--space-2);padding-left:2px}.dashboard-focus-grid{display:grid;grid-template-columns:1fr 260px;gap:var(--space-3);align-items:stretch}.dashboard-focus-main{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-3)}.dashboard-focus-task,.dashboard-focus-okr{display:flex;flex-direction:column;gap:4px;padding:12px 14px;border-radius:var(--border-radius-lg, 14px);border:1px solid var(--border-color);background:var(--bg-card);box-shadow:var(--shadow-sm);text-decoration:none;color:inherit;border-left-width:3px;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease;cursor:pointer;min-height:110px}.dashboard-focus-task:hover,.dashboard-focus-okr:hover{transform:translateY(-1px);box-shadow:var(--shadow-md, var(--shadow-sm));border-color:var(--border-hover)}.dashboard-focus-task--danger{border-left-color:var(--danger);background:linear-gradient(180deg,var(--danger-bg) 0%,var(--bg-card) 50%)}.dashboard-focus-task--warning{border-left-color:var(--warning);background:linear-gradient(180deg,var(--warning-bg) 0%,var(--bg-card) 50%)}.dashboard-focus-task--info{border-left-color:var(--info, var(--accent));background:linear-gradient(180deg,var(--info-bg, var(--accent-soft)) 0%,var(--bg-card) 50%)}.dashboard-focus-task-title{font-size:13px;font-weight:700;color:var(--text-primary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}.dashboard-focus-task-meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:2px}.dashboard-focus-badge{font-size:10px;font-weight:700;letter-spacing:.03em;padding:1px 7px;border-radius:999px;text-transform:uppercase;white-space:nowrap;line-height:1.4;border:1px solid transparent}.dashboard-focus-badge--danger{color:var(--danger);background:var(--danger-bg);border-color:var(--danger-bg)}.dashboard-focus-badge--warning{color:var(--warning);background:var(--warning-bg);border-color:var(--warning-bg)}.dashboard-focus-badge--info{color:var(--info, var(--accent));background:var(--info-bg, var(--accent-soft));border-color:var(--info-bg, var(--accent-soft))}.dashboard-focus-action{margin-top:auto;font-size:11px;font-weight:700;color:var(--accent);letter-spacing:.02em}.dashboard-focus-okr{border-left-color:var(--accent);background:linear-gradient(180deg,var(--accent-soft) 0%,var(--bg-card) 50%)}.dashboard-focus-empty{padding:18px 22px;text-align:center;font-size:13px;color:var(--text-secondary);background:var(--success-bg);border:1px dashed var(--success);border-radius:var(--border-radius);grid-column:1 / -1}@media(max-width:900px){.dashboard-focus-grid{grid-template-columns:1fr}}@media(max-width:640px){.dashboard-focus-main{grid-template-columns:1fr}}.dashboard-day-summary{margin-bottom:var(--space-2);font-size:12px}.dashboard-attention,.dashboard-focus,.dashboard-week-plan{margin-bottom:var(--space-3)}.dashboard-attention-header,.dashboard-focus-header,.dashboard-week-header{font-size:10px;margin-bottom:6px;opacity:.85}.dashboard-attention-grid{gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.dashboard-attention-card{padding:9px 12px;gap:2px;border-radius:var(--border-radius)}.dashboard-attention-title{font-size:12px}.dashboard-attention-text{font-size:10px;-webkit-line-clamp:1;line-clamp:1}.dashboard-attention-action{font-size:10px;margin-top:2px}.dashboard-focus-grid{gap:var(--space-2);grid-template-columns:1fr 220px}.dashboard-focus-main{gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.dashboard-focus-task,.dashboard-focus-okr{padding:10px 12px;min-height:88px;border-radius:var(--border-radius);gap:3px}.dashboard-focus-task-title{font-size:12px}.dashboard-focus-task-meta{gap:4px}.dashboard-focus-badge{font-size:9px;padding:1px 6px}.dashboard-focus-action{font-size:10px}.dashboard-focus-empty{padding:12px 16px;font-size:12px}.dashboard-week-grid{gap:6px}.dashboard-week-day{padding:8px 8px 10px;min-height:82px;border-top-width:2px}.dashboard-week-day-label{font-size:10px}.dashboard-week-day-date{font-size:9px;margin-bottom:2px}.dashboard-week-day-count{font-size:16px;margin-bottom:2px}.dashboard-week-task-preview{font-size:9px;line-height:1.25}.dashboard-week-empty{padding:14px;font-size:12px}@media(max-width:640px){.dashboard-attention,.dashboard-focus,.dashboard-week-plan{margin-bottom:var(--space-2)}.dashboard-attention-card{padding:8px 10px}.dashboard-attention-text{-webkit-line-clamp:2;line-clamp:2}.dashboard-focus-task,.dashboard-focus-okr{min-height:78px;padding:9px 11px}.dashboard-week-day{min-height:76px;padding:7px 7px 9px}.dashboard-focus-grid{gap:6px}}@media(max-width:640px){.page-header .day-pills-row,.quick-action-strip{display:none!important}.stat-card{padding:var(--space-3) var(--space-4)}.stat-card .stat-value{background:none;-webkit-background-clip:initial;background-clip:initial;-webkit-text-fill-color:var(--text-primary);color:var(--text-primary);font-size:1.5rem;line-height:1.1}.stat-card .stat-icon{font-size:1.15rem;margin-bottom:var(--space-1)}.page-header h2{font-size:1.15rem!important;margin-bottom:2px}.page-header>div>p{font-size:11px;margin-bottom:var(--space-1)}.dashboard-day-summary{font-size:12px;margin-bottom:var(--space-2)}.dashboard-week-grid{scroll-snap-type:none;grid-auto-columns:minmax(78px,1fr);gap:4px}.dashboard-week-day{min-height:64px;padding:6px 6px 8px;scroll-snap-align:none}.dashboard-week-day-preview{display:none}.dashboard-week-day-count{font-size:15px;margin-bottom:0}}.mytasks-filters{padding:var(--space-3) var(--space-4);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--border-radius);box-shadow:var(--shadow-sm);margin:0 var(--space-4) var(--space-3);display:flex;flex-direction:column;gap:8px}.mytasks-filter-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.mytasks-filter-row--search{gap:0}.mytasks-search{flex:1;min-width:200px;font-size:13px;padding:7px 12px;background:var(--bg-secondary);border:1px solid var(--border-color)}.mytasks-search:focus{background:var(--bg-elevated);border-color:var(--accent)}.mytasks-filter-select{font-size:12px!important;padding:5px 10px!important;background:var(--bg-secondary);border:1px solid var(--border-color);min-width:0;flex:1 1 130px;max-width:240px}.mytasks-filter-select:focus{border-color:var(--accent)}.mytasks-clear-filters{appearance:none;font-family:inherit;font-size:11px;font-weight:600;padding:5px 11px;background:transparent;color:var(--text-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius);cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease;flex-shrink:0}.mytasks-clear-filters:hover{background:var(--bg-elevated);color:var(--text-primary);border-color:var(--border-hover)}.mytasks-filter-summary{font-size:11px;color:var(--text-tertiary);padding:2px 2px 0}.mytasks-filter-summary strong{color:var(--text-secondary);font-weight:700}@media(max-width:640px){.mytasks-filters{margin:0 var(--space-3) var(--space-3);padding:10px 12px}.mytasks-filter-select{flex:1 1 calc(50% - 4px);max-width:none}.mytasks-clear-filters{flex:1 1 100%;text-align:center}}.calendar-assignee-filter{min-width:0}.calendar-task-assignees{display:inline-flex;align-items:center;gap:0;margin-top:2px;flex-shrink:0}.calendar-task-avatar{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;border-radius:50%;font-size:8px;font-weight:700;color:#fff;line-height:1;border:1px solid var(--bg-card);object-fit:cover;flex-shrink:0;-webkit-user-select:none;user-select:none}.calendar-task-avatar+.calendar-task-avatar{margin-left:-4px}.calendar-task-avatar-more{display:inline-flex;align-items:center;justify-content:center;height:14px;min-width:14px;margin-left:-4px;padding:0 3px;border-radius:7px;background:var(--bg-tertiary);color:var(--text-tertiary);font-size:8px;font-weight:700;border:1px solid var(--bg-card);line-height:1}.confirm-dialog-overlay{position:fixed;inset:0;background:#0000008c;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:1300;display:flex;align-items:center;justify-content:center;padding:20px;animation:confirmDialogFadeIn .12s ease-out}@keyframes confirmDialogFadeIn{0%{opacity:0}to{opacity:1}}.confirm-dialog{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--border-radius-lg, 14px);box-shadow:var(--shadow-md, 0 8px 30px rgba(0, 0, 0, .2));padding:22px 22px 18px;width:100%;max-width:440px;display:flex;flex-direction:column;gap:14px;animation:confirmDialogSlideIn .16s cubic-bezier(.4,0,.2,1)}@keyframes confirmDialogSlideIn{0%{transform:translateY(8px) scale(.98);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.confirm-dialog--danger{border-top:4px solid var(--danger)}.confirm-dialog--warning{border-top:4px solid var(--warning)}.confirm-dialog--default{border-top:4px solid var(--accent)}.confirm-dialog-header{display:flex;align-items:center;gap:10px}.confirm-dialog-icon{font-size:18px;line-height:1;flex-shrink:0}.confirm-dialog-title{margin:0;font-size:15px;font-weight:700;color:var(--text-primary)}.confirm-dialog-description{font-size:13px;line-height:1.55;color:var(--text-secondary);white-space:pre-wrap;word-break:break-word}.confirm-dialog-require{display:flex;flex-direction:column;gap:6px;padding:10px 12px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius)}.confirm-dialog-require-label{font-size:11px;font-weight:600;color:var(--text-tertiary);letter-spacing:.02em}.confirm-dialog-require-label code{background:var(--bg-elevated);color:var(--danger);padding:1px 6px;border-radius:4px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;font-weight:700;letter-spacing:.04em}.confirm-dialog-require-input{appearance:none;font-family:inherit;font-size:13px;padding:6px 10px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);outline:none;transition:border-color .15s ease}.confirm-dialog-require-input:focus{border-color:var(--accent)}.confirm-dialog-require-input:disabled{opacity:.6;cursor:not-allowed}.confirm-dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}.confirm-dialog-btn{appearance:none;font-family:inherit;font-size:13px;font-weight:600;padding:7px 14px;border-radius:var(--border-radius);border:1px solid var(--border-color);background:transparent;color:var(--text-primary);cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease,transform .1s ease;min-width:92px}.confirm-dialog-btn:active{transform:translateY(1px)}.confirm-dialog-btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.confirm-dialog-btn--cancel{background:var(--bg-elevated);color:var(--text-secondary)}.confirm-dialog-btn--cancel:hover:not(:disabled){background:var(--bg-card);color:var(--text-primary)}.confirm-dialog-btn--confirm.confirm-dialog-btn--danger{background:var(--danger);color:#fff;border-color:var(--danger)}.confirm-dialog-btn--confirm.confirm-dialog-btn--danger:hover:not(:disabled){filter:brightness(.94)}.confirm-dialog-btn--confirm.confirm-dialog-btn--warning{background:var(--warning);color:#fff;border-color:var(--warning)}.confirm-dialog-btn--confirm.confirm-dialog-btn--warning:hover:not(:disabled){filter:brightness(.94)}.confirm-dialog-btn--confirm.confirm-dialog-btn--default{background:var(--accent);color:#fff;border-color:var(--accent)}.confirm-dialog-btn--confirm.confirm-dialog-btn--default:hover:not(:disabled){filter:brightness(.94)}@media(max-width:480px){.confirm-dialog-overlay{padding:12px}.confirm-dialog{padding:18px 16px 14px;max-width:100%}.confirm-dialog-actions{flex-direction:column-reverse}.confirm-dialog-btn{width:100%;min-width:0}}.proj-overview{display:flex;flex-direction:column;gap:var(--space-4)}.proj-overview-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-3)}.po-kpi{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;padding:14px 16px;display:flex;flex-direction:column;gap:4px}.po-kpi-num{font-size:28px;font-weight:800;line-height:1}.po-kpi-label{font-size:12px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;font-weight:600}.po-kpi-label span{font-size:14px;margin-right:4px}.po-progress{display:flex;align-items:center;gap:12px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;padding:10px 14px}.po-progress-bar{flex:1;height:8px;background:var(--bg-tertiary);border-radius:4px;overflow:hidden}.po-progress-fill{height:100%;background:var(--accent);transition:width .3s}.po-progress-label{font-size:12px;color:var(--text-secondary);font-weight:600;white-space:nowrap}.po-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.po-grid>.po-block:last-child{grid-column:1 / -1}.po-block{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;padding:14px 16px;display:flex;flex-direction:column;gap:10px;min-height:140px}.po-block-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.po-block-head h4{font-size:13px;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;margin:0}.po-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:6px;color:var(--text-tertiary);padding:8px 4px}.po-empty-icon{font-size:28px;opacity:.7}.po-empty p{margin:0;font-size:13px;color:var(--text-secondary)}.po-task-list,.po-res-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.po-task,.po-res{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:8px;background:var(--bg-tertiary);border:1px solid transparent;cursor:pointer;transition:background .15s,border-color .15s}.po-task:hover,.po-res:hover{background:var(--bg-primary);border-color:var(--border-color)}.po-task-title,.po-res-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500}.po-task-due,.po-res-meta{font-size:11px;color:var(--text-tertiary);white-space:nowrap}.po-task-overdue .po-task-due{color:var(--color-danger, #ef4444);font-weight:600}.po-res-icon{font-size:14px;flex-shrink:0}.po-people{display:flex;flex-wrap:wrap;gap:8px}.po-person{display:inline-flex;align-items:center;gap:6px;padding:4px 10px 4px 4px;border-radius:999px;background:var(--bg-tertiary);border:1px solid var(--border-color);font-size:12px}.po-person-more{align-self:center;font-size:12px;color:var(--text-secondary);font-weight:600;padding:4px 10px;border-radius:999px;background:var(--bg-tertiary);border:1px solid var(--border-color)}.po-access-badge{font-size:11px;padding:2px 8px;border-radius:999px;background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-secondary)}@media(max-width:768px){.proj-overview-kpis{grid-template-columns:repeat(2,1fr)}.po-grid{grid-template-columns:1fr}.po-kpi-num{font-size:24px}}.proj-notes{display:flex;flex-direction:column;gap:var(--space-4)}.pn-quick-add{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;padding:14px 16px;display:flex;flex-direction:column;gap:10px}.pn-quick-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.pn-hint{font-size:12px;color:var(--text-tertiary)}.pn-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.pn-item{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;padding:12px 14px;display:flex;flex-direction:column;gap:8px;transition:border-color .15s}.pn-item:hover{border-color:var(--accent)}.pn-item-editing{border-color:var(--accent);background:var(--bg-primary)}.pn-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.pn-title{font-size:14px;font-weight:700;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.pn-meta{font-size:11px;color:var(--text-tertiary);white-space:nowrap}.pn-content{margin:0;font-family:inherit;font-size:13px;line-height:1.55;color:var(--text-secondary);white-space:pre-wrap;word-wrap:break-word;max-height:240px;overflow:hidden}.pn-actions{display:flex;gap:6px;border-top:1px dashed var(--border-color);padding-top:8px}.pn-edit-actions{display:flex;gap:8px;justify-content:flex-end}.pn-danger:hover{color:var(--color-danger, #ef4444)}@media(max-width:768px){.pn-quick-actions{flex-direction:column;align-items:stretch}.pn-hint{text-align:center}}.proj-timeline-tab{display:flex;flex-direction:column;gap:var(--space-4)}.ptt-board-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;padding:12px 16px}.ptt-board-head h4{margin:0;font-size:15px;font-weight:700}.ptt-board-dates{margin:4px 0 0;font-size:12px;color:var(--text-tertiary)}.ptt-quick-add{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;padding:14px 16px;display:flex;flex-direction:column;gap:10px}.ptt-quick-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px}.ptt-field{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--text-secondary)}.ptt-field span{font-weight:600}.ptt-list{list-style:none;margin:0;padding:0 0 0 24px;position:relative;display:flex;flex-direction:column;gap:10px}.ptt-list:before{content:"";position:absolute;left:8px;top:8px;bottom:8px;width:2px;background:var(--border-color);border-radius:1px}.ptt-item{position:relative;display:flex;gap:12px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;padding:10px 14px}.ptt-item.ptt-status-done{opacity:.7}.ptt-item.ptt-status-cancelled{opacity:.55}.ptt-dot{position:absolute;left:-24px;top:50%;transform:translateY(-50%);width:20px;height:20px;border-radius:50%;background:var(--bg-primary);border:2px solid var(--accent);display:flex;align-items:center;justify-content:center;font-size:11px}.ptt-status-done .ptt-dot{border-color:var(--success)}.ptt-status-cancelled .ptt-dot{border-color:var(--text-tertiary)}.ptt-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.ptt-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.ptt-title{font-weight:700;font-size:14px;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ptt-date{font-size:11px;color:var(--text-tertiary);white-space:nowrap}.ptt-desc{margin:0;font-size:13px;color:var(--text-secondary);white-space:pre-wrap;word-wrap:break-word;line-height:1.55}@media(max-width:768px){.ptt-quick-row{grid-template-columns:1fr}.ptt-board-head{flex-direction:column}}:root{--motion-fast: .14s;--motion-normal: .24s;--motion-slow: .36s;--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-soft: cubic-bezier(.4, 0, .2, 1)}@keyframes appFadeIn{0%{opacity:0}to{opacity:1}}@keyframes appSlideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes appScaleIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes appPanelEnter{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}@keyframes appModalIn{0%{opacity:0;transform:translateY(8px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes appGlowSuccess{0%{box-shadow:0 0 #22c55e00}30%{box-shadow:0 0 0 3px #22c55e73,0 0 16px #22c55e66}to{box-shadow:0 0 #22c55e00}}.app-fade-in{animation:appFadeIn var(--motion-normal) var(--ease-out) both}.app-slide-up{animation:appSlideUp var(--motion-normal) var(--ease-out) both}.app-scale-in{animation:appScaleIn var(--motion-normal) var(--ease-out) both}.app-panel-enter{animation:appPanelEnter var(--motion-normal) var(--ease-out) both}.app-glow-success{animation:appGlowSuccess 1.6s var(--ease-soft)}.app-soft-hover{transition:transform var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out)}@media(hover:hover){.app-soft-hover:hover{transform:translateY(-2px);box-shadow:0 8px 22px #0000001a}}.btn{transition:transform var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out),background-color var(--motion-fast) var(--ease-soft),border-color var(--motion-fast) var(--ease-soft),color var(--motion-fast) var(--ease-soft)}.btn:active:not(:disabled){transform:translateY(1px) scale(.985)}.modal{animation:appModalIn var(--motion-normal) var(--ease-out) both}@media(hover:hover){.stat-card,.dashboard-attention-card{transition:transform var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out)}.stat-card:hover,.dashboard-attention-card:hover{transform:translateY(-2px);box-shadow:0 8px 22px #0000001a}}@media(prefers-reduced-motion:reduce){.app-fade-in,.app-slide-up,.app-scale-in,.app-panel-enter,.app-glow-success,.modal{animation:none!important}.app-soft-hover,.btn{transition:none!important}.app-soft-hover:hover,.stat-card:hover,.dashboard-attention-card:hover,.btn:active:not(:disabled){transform:none!important}}.mobile-menu-drawer .mobile-menu-content{overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;padding-bottom:var(--space-3, 12px)}.mobile-menu-drawer .mobile-group+.mobile-group{border-top:1px solid var(--border-color);margin-top:4px;padding-top:4px}.mobile-menu-drawer .mobile-group-toggle{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:44px;padding:8px var(--space-4, 16px);background:none;border:none;cursor:pointer;text-align:left;color:var(--text-secondary);transition:color .16s ease,background .16s ease}.mobile-menu-drawer .mobile-group-toggle:active{background:var(--bg-tertiary)}.mobile-menu-drawer .mobile-group-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;border-radius:8px}.mobile-menu-drawer .mobile-group-title{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-tertiary)}.mobile-menu-drawer .mobile-group-toggle:active .mobile-group-title{color:var(--text-secondary)}.mobile-menu-drawer .mobile-group-chevron{flex-shrink:0;color:var(--text-tertiary);transition:transform .2s cubic-bezier(.4,0,.2,1)}.mobile-menu-drawer .mobile-group.is-collapsed .mobile-group-chevron{transform:rotate(-90deg)}.mobile-menu-drawer .mobile-group.is-open>.sidebar-link{animation:mmFadeIn .2s ease both}@keyframes mmFadeIn{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:none}}.mobile-menu-drawer .sidebar-link{min-height:44px;padding:10px var(--space-4, 16px);margin:1px var(--space-2, 8px);border-radius:10px;gap:12px}.mobile-menu-drawer .sidebar-link>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-menu-drawer .sidebar-link .link-icon{flex-shrink:0}.mobile-menu-drawer .sidebar-link.active{background:var(--accent-soft, rgba(99, 199, 160, .12));color:var(--text-primary);font-weight:600;box-shadow:inset 3px 0 0 var(--accent)}.mobile-menu-drawer .mobile-menu-footer{padding:10px var(--space-4, 16px)}@media(prefers-reduced-motion:reduce){.mobile-menu-drawer .mobile-group-chevron,.mobile-menu-drawer .mobile-group-toggle,.mobile-menu-drawer .mobile-group.is-open>.sidebar-link{transition:none;animation:none}}.dash-section{margin-bottom:var(--space-5, 20px)}.dash-section-head{display:flex;align-items:center;gap:10px;width:100%;padding:8px 2px;margin:0;background:none;border:none;border-bottom:1px solid var(--border-color);cursor:pointer;text-align:left;color:var(--text-secondary);transition:color .18s ease,border-color .18s ease}.dash-section-head:hover{color:var(--text-primary)}.dash-section-head:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}.dash-section-head[disabled]{cursor:default;opacity:1}.dash-section-title{flex:1;font-size:12px;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.dash-section-hint{font-size:11px;font-weight:500;color:var(--text-tertiary);letter-spacing:.01em;text-transform:none}.dash-section-chevron{width:16px;height:16px;flex-shrink:0;color:var(--text-tertiary);transition:transform .22s cubic-bezier(.4,0,.2,1)}.dash-section.is-collapsed .dash-section-chevron{transform:rotate(-90deg)}.dash-section-body{padding-top:var(--space-4, 16px);animation:dashSectionIn .26s cubic-bezier(.4,0,.2,1) both}@keyframes dashSectionIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.dash-actions{margin-bottom:var(--space-5, 20px)}.dashboard-quick-nav .btn{transition:background .16s ease,border-color .16s ease,transform .12s ease}.dashboard-quick-nav .btn:hover{transform:translateY(-1px);border-color:var(--accent)!important}.dash-section-body .dashboard-section,.dash-section-body .stats-grid .stat-card{transition:box-shadow .18s ease,transform .12s ease,border-color .18s ease}@media(prefers-reduced-motion:reduce){.dash-section-body{animation:none}.dash-section-chevron,.dashboard-quick-nav .btn,.dash-section-body .dashboard-section,.dash-section-body .stats-grid .stat-card{transition:none}}@media(max-width:768px){.dash-section{margin-bottom:var(--space-4, 16px)}.dash-section-head{padding:10px 2px}.dash-section-body{padding-top:var(--space-3, 12px)}.dash-section-hint{display:none}.dashboard-quick-nav{overflow-x:visible}}.widget-bar{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-height:24px;margin-bottom:4px}.widget-bar.is-collapsed{justify-content:space-between;min-height:44px;padding:8px 14px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius, 10px);margin-bottom:0;transition:border-color .16s ease,background .16s ease}.widget-bar.is-collapsed:hover{border-color:var(--accent)}.widget-bar-title{flex:1;min-width:0;font-size:13px;font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.widget-bar-toggle{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;background:none;border:none;border-radius:8px;cursor:pointer;color:var(--text-tertiary);opacity:.6;transition:color .16s ease,background .16s ease,opacity .16s ease}.widget-bar-toggle:hover{color:var(--text-primary);background:var(--bg-tertiary);opacity:1}.widget-bar-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px;opacity:1}.widget-bar.is-collapsed .widget-bar-toggle{opacity:.9}.widget-bar-chevron{width:16px;height:16px;transition:transform .22s cubic-bezier(.4,0,.2,1)}.widget-bar.is-collapsed .widget-bar-chevron{transform:rotate(-90deg)}@media(prefers-reduced-motion:reduce){.widget-bar-chevron,.widget-bar-toggle,.widget-bar.is-collapsed{transition:none}}@media(max-width:768px){.widget-bar-toggle{width:38px;height:38px;opacity:.8}.widget-bar.is-collapsed{min-height:48px}}.dash-epic{position:relative;margin:4px 0 18px;padding:16px 18px;border-radius:14px;background:var(--card-bg, #fff);border:1px solid var(--border-color, #e6e6e9);box-shadow:0 1px 2px #00000008}.dash-epic-label{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted, #8a8a90);margin-bottom:6px}.dash-epic-quote{margin:0;font-size:17px;line-height:1.4;font-weight:500;color:var(--text-color, #1c1c1e);letter-spacing:-.01em}.dash-epic-more{position:absolute;top:14px;right:14px;background:transparent;border:none;padding:4px 6px;font-size:12px;font-weight:500;color:var(--text-muted, #8a8a90);cursor:pointer;border-radius:8px;transition:color .15s ease,background .15s ease}.dash-epic-more:hover{color:var(--accent, #4a6cf7);background:var(--hover-bg, rgba(0,0,0,.04))}@media(max-width:640px){.dash-epic{padding:14px;margin:2px 0 14px}.dash-epic-quote{font-size:15px}.dash-epic-more{position:static;display:inline-block;margin-top:8px;padding:4px 0}}.dash-qa-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;margin-bottom:var(--space-3)}.dash-qa-head-text h3{margin:0;font-size:var(--font-size-base, 15px)}.dash-qa-head-text p{margin:2px 0 0;font-size:var(--font-size-xs, 12px);color:var(--text-tertiary)}.dash-qa-new{flex-shrink:0;border-radius:999px;font-size:var(--font-size-sm, 13px);min-height:38px;padding:8px 16px}.dash-qa-controls{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;margin-bottom:var(--space-3)}.dash-qa-search{flex:1 1 200px;min-width:0;min-height:38px;padding:8px 12px;border-radius:10px;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);font-size:var(--font-size-sm, 13px)}.dash-qa-chips{display:flex;flex-wrap:wrap;gap:6px}.dash-qa-chip{min-height:34px;padding:5px 12px;border-radius:999px;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-secondary);font-size:var(--font-size-xs, 12px);cursor:pointer;white-space:nowrap;transition:background .15s,color .15s,border-color .15s}.dash-qa-chip:hover{background:var(--hover-bg, rgba(0,0,0,.04))}.dash-qa-chip.is-active{background:var(--accent, #4a6cf7);color:#fff;border-color:var(--accent, #4a6cf7)}.dash-qa-grid{display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}.dash-qa-card{position:relative;display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:14px;background:var(--bg-secondary);border:1px solid var(--border-color);text-decoration:none;color:inherit;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease}.dash-qa-card:hover{transform:translateY(-1px);border-color:var(--accent, #4a6cf7);box-shadow:0 6px 18px #00000014}.dash-qa-card-icon{flex-shrink:0;width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:20px;background:var(--bg-tertiary);overflow:hidden}.dash-qa-card-body{flex:1;min-width:0}.dash-qa-card-title{font-size:var(--font-size-sm, 13px);font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dash-qa-card-cat{display:inline-block;margin-top:4px;padding:1px 8px;border-radius:999px;font-size:10px;font-weight:600;color:var(--text-secondary);background:var(--bg-tertiary);border:1px solid var(--border-color)}.dash-qa-card-desc{margin:6px 0 0;font-size:var(--font-size-xs, 12px);color:var(--text-tertiary);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.dash-qa-card-host{margin-top:6px;font-size:10px;color:var(--text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dash-qa-fav{position:absolute;top:8px;right:8px;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;cursor:pointer;font-size:16px;line-height:1;color:var(--text-tertiary);border-radius:8px}.dash-qa-fav:hover{background:var(--hover-bg, rgba(0,0,0,.06))}.dash-qa-fav.is-on{color:#f5b301}.dash-qa-actions{display:flex;gap:4px;margin-top:8px}.dash-qa-act{min-height:32px;padding:4px 10px;border-radius:8px;border:1px solid var(--border-color);background:var(--bg-primary, transparent);color:var(--text-secondary);font-size:11px;cursor:pointer}.dash-qa-act:hover{background:var(--hover-bg, rgba(0,0,0,.04))}.dash-qa-act.is-danger{color:var(--danger, #ef4444)}.dash-qa-empty{text-align:center;padding:22px 16px;border-radius:14px;background:var(--bg-secondary);border:1px dashed var(--border-color)}.dash-qa-empty p{margin:0 0 12px;font-size:var(--font-size-sm, 13px);color:var(--text-tertiary)}.dash-qa-form{display:flex;flex-direction:column;gap:var(--space-3)}.dash-qa-field{display:flex;flex-direction:column;gap:4px}.dash-qa-field>span{font-size:var(--font-size-xs, 12px);font-weight:600;color:var(--text-secondary)}.dash-qa-field input,.dash-qa-field textarea{min-height:38px;padding:8px 12px;border-radius:10px;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);font-size:var(--font-size-sm, 14px);width:100%}.dash-qa-field textarea{min-height:64px;resize:vertical}.dash-qa-field-row{display:flex;gap:var(--space-3)}.dash-qa-field-row .dash-qa-field{flex:1;min-width:0}.dash-qa-checkbox{display:flex;align-items:center;gap:8px;font-size:var(--font-size-sm, 13px);cursor:pointer}.dash-qa-checkbox input{width:18px;height:18px}.dash-qa-form-error{margin:0;color:var(--danger, #ef4444);font-size:var(--font-size-xs, 12px)}.dash-qa-toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%);z-index:1200;padding:10px 18px;border-radius:10px;font-size:var(--font-size-sm, 13px);color:#fff;box-shadow:0 8px 24px #0000002e}.dash-qa-toast-success{background:var(--success, #22c55e)}.dash-qa-toast-error{background:var(--danger, #ef4444)}@media(max-width:640px){.dash-qa-grid{grid-template-columns:1fr}.dash-qa-new{width:100%}.dash-qa-field-row{flex-direction:column;gap:var(--space-3)}.dash-qa-search{flex:1 1 100%}}.dash-mini-label{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-tertiary);margin:var(--space-3) 0 6px}.dash-create .quick-action-strip{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--space-2);margin-bottom:var(--space-2)}.dash-create .quick-action-btn{padding:8px 12px;font-size:var(--font-size-xs, 12px);border-radius:var(--border-radius, 10px);box-shadow:none;gap:8px;min-height:40px}.dash-create .quick-action-btn .qa-icon{width:26px;height:26px;font-size:1rem}@media(max-width:640px){.dash-create .quick-action-strip{grid-template-columns:repeat(2,1fr)}}.dash-modular-grid{display:flex;flex-wrap:wrap;gap:var(--space-4);align-items:flex-start}.dashboard-widget{min-width:0;box-sizing:border-box;flex:1 1 100%}.dashboard-widget--wide{flex:1 1 100%}.dashboard-widget--normal{flex:1 1 calc(50% - var(--space-4))}.dashboard-widget--compact{flex:1 1 calc(33.333% - var(--space-4))}.dashboard-widget:empty{display:none}.dashboard-widget--unknown .dashboard-widget-fallback{padding:12px 14px;border-radius:12px;background:var(--bg-secondary);border:1px dashed var(--border-color);color:var(--text-tertiary);font-size:var(--font-size-xs, 12px)}@media(max-width:768px){.dash-modular-grid{gap:var(--space-3)}.dashboard-widget,.dashboard-widget--wide,.dashboard-widget--normal,.dashboard-widget--compact{flex:1 1 100%}}.dash-customize-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;margin:0 0 var(--space-4);padding:12px 16px;border-radius:14px;background:var(--accent-soft, rgba(74,108,247,.08));border:1px solid var(--accent, #4a6cf7)}.dash-customize-bar-text{display:flex;flex-direction:column;gap:2px;min-width:0}.dash-customize-bar-text strong{font-size:var(--font-size-sm, 13px)}.dash-customize-bar-text span{font-size:var(--font-size-xs, 12px);color:var(--text-secondary)}.dash-customize-warn{color:var(--danger, #ef4444)!important}.dash-customize-warn code{font-size:11px}.dash-customize-bar-actions{display:flex;gap:var(--space-2);flex-shrink:0;flex-wrap:wrap}.dash-customize-btn{min-height:38px}.dashboard-widget.is-editing{outline:1px dashed var(--accent, #4a6cf7);outline-offset:2px;border-radius:14px}.dash-modular-grid.is-customizing .dashboard-widget:empty{display:block}.dw-edit-bar{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-bottom:var(--space-2);padding:6px 8px;border-radius:10px;background:var(--bg-tertiary);border:1px solid var(--border-color)}.dw-edit-title{font-size:11px;font-weight:700;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1}.dw-edit-controls{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.dw-ctrl{min-width:38px;min-height:38px;padding:0 10px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border-color);background:var(--bg-primary, #fff);color:var(--text-secondary);border-radius:8px;cursor:pointer;font-size:12px;line-height:1}.dw-ctrl:hover:not(:disabled){background:var(--hover-bg, rgba(0,0,0,.04))}.dw-ctrl:disabled{opacity:.35;cursor:not-allowed}.dw-hide{color:var(--danger, #ef4444);font-weight:600}.dw-size{display:inline-flex;border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.dw-size-btn{min-width:38px;min-height:38px;padding:0 8px;border:none;background:var(--bg-primary, #fff);color:var(--text-secondary);cursor:pointer;font-size:12px;font-weight:700;border-right:1px solid var(--border-color)}.dw-size-btn:last-child{border-right:none}.dw-size-btn.is-active{background:var(--accent, #4a6cf7);color:#fff}.dash-hidden-panel{margin-top:var(--space-4);padding:14px 16px;border-radius:14px;background:var(--bg-secondary);border:1px dashed var(--border-color)}.dash-hidden-head{font-size:var(--font-size-sm, 13px);font-weight:700;margin-bottom:10px}.dash-hidden-list{display:flex;flex-wrap:wrap;gap:8px}.dash-hidden-item{display:flex;align-items:center;gap:8px;padding:6px 8px 6px 12px;border-radius:999px;background:var(--bg-primary, var(--bg-tertiary));border:1px solid var(--border-color)}.dash-hidden-title{font-size:var(--font-size-xs, 12px);color:var(--text-secondary);white-space:nowrap}.dash-hidden-show{min-height:34px}.dash-save-flash{position:fixed;left:50%;bottom:24px;transform:translate(-50%);z-index:1200;padding:9px 16px;border-radius:10px;font-size:var(--font-size-sm, 13px);color:#fff;box-shadow:0 8px 24px #0000002e}.dash-save-flash--success{background:var(--success, #22c55e)}.dash-save-flash--error{background:var(--danger, #ef4444)}@media(max-width:768px){.dash-customize-bar{flex-direction:column;align-items:stretch}.dash-customize-bar-actions{justify-content:stretch}.dash-customize-btn{flex:1}.dw-edit-controls{width:100%;justify-content:flex-start}}.dwlib{display:flex;flex-direction:column;gap:var(--space-3)}.dwlib-intro{margin:0;font-size:var(--font-size-sm, 13px);color:var(--text-secondary)}.dwlib-warn{margin:0;font-size:var(--font-size-xs, 12px);color:var(--danger, #ef4444)}.dwlib-warn code{font-size:11px}.dwlib-search{width:100%;min-height:40px;padding:8px 12px;border-radius:10px;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);font-size:var(--font-size-sm, 14px)}.dwlib-cats{display:flex;flex-wrap:wrap;gap:6px}.dwlib-cat{min-height:34px;padding:5px 12px;border-radius:999px;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-secondary);font-size:var(--font-size-xs, 12px);cursor:pointer;white-space:nowrap}.dwlib-cat.is-active{background:var(--accent, #4a6cf7);color:#fff;border-color:var(--accent, #4a6cf7)}.dwlib-group-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-tertiary);margin:var(--space-2) 0 8px}.dwlib-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px}.dwlib-card{display:flex;align-items:flex-start;gap:10px;padding:12px;border-radius:12px;background:var(--bg-secondary);border:1px solid var(--border-color)}.dwlib-card.is-added{opacity:.72}.dwlib-card-icon{flex-shrink:0;width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:20px;background:var(--bg-tertiary)}.dwlib-card-body{flex:1;min-width:0}.dwlib-card-title{font-size:var(--font-size-sm, 13px);font-weight:600;color:var(--text-primary)}.dwlib-card-desc{margin-top:2px;font-size:var(--font-size-xs, 12px);color:var(--text-tertiary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.dwlib-card-meta{margin-top:6px;font-size:10px;color:var(--text-tertiary)}.dwlib-add{flex-shrink:0;min-height:38px;white-space:nowrap}.dwlib-empty{font-size:var(--font-size-sm, 13px);color:var(--text-tertiary)}@media(max-width:640px){.dwlib-grid{grid-template-columns:1fr}}.dash-qa-warn{margin:0 0 var(--space-3);padding:10px 14px;border-radius:10px;font-size:var(--font-size-sm, 13px);color:var(--text-primary);background:var(--warning-soft, rgba(216,155,75,.12));border:1px solid var(--warning, #d89b4b)}.dash-actions{margin-bottom:var(--space-4)}.dash-modular-grid,.dash-modular-grid .dashboard-widget{max-width:100%}.mmp-overlay{position:fixed;inset:0;z-index:9500;background:#00000061;display:flex;justify-content:flex-end;animation:mmp-fade-in .18s ease-out}.mmp-panel{width:380px;max-width:92vw;height:100%;background:var(--bg-primary, #fff);border-left:1px solid var(--border-color);box-shadow:-8px 0 32px #00000038;display:flex;flex-direction:column;animation:mmp-slide-in .26s cubic-bezier(.22,1,.36,1)}@keyframes mmp-fade-in{0%{opacity:0}to{opacity:1}}@keyframes mmp-slide-in{0%{transform:translate(24px);opacity:.4}to{transform:translate(0);opacity:1}}.mmp-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--border-color);flex-shrink:0}.mmp-eyebrow{font-size:12px;font-weight:700;color:var(--text-secondary);letter-spacing:.02em}.mmp-close{border:none;background:transparent;cursor:pointer;font-size:16px;color:var(--text-tertiary);width:34px;height:34px;border-radius:8px}.mmp-close:hover{background:var(--hover-bg, rgba(0,0,0,.05))}.mmp-body{flex:1;overflow-y:auto;padding:18px 16px}.mmp-muted{color:var(--text-tertiary);font-size:13px}.mmp-title{margin:0 0 4px;font-size:18px;color:var(--text-primary)}.mmp-project{font-size:12px;color:var(--text-secondary);margin-bottom:14px}.mmp-stats{display:flex;gap:10px;margin:12px 0}.mmp-stat{flex:1;text-align:center;padding:12px 8px;border-radius:12px;background:var(--bg-secondary);border:1px solid var(--border-color)}.mmp-stat-num{display:block;font-size:22px;font-weight:800;color:var(--text-primary)}.mmp-stat-lbl{display:block;font-size:11px;color:var(--text-tertiary);margin-top:2px}.mmp-updated{font-size:11px;color:var(--text-tertiary);margin:8px 0 0}.mmp-nodes{margin-top:16px}.mmp-nodes-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-tertiary);margin-bottom:8px}.mmp-nodes ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px}.mmp-nodes li{font-size:13px;color:var(--text-primary);padding:8px 10px;border-radius:8px;background:var(--bg-secondary);border:1px solid var(--border-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mmp-unavailable{text-align:center;padding:24px 8px}.mmp-unavailable-icon{font-size:34px;margin-bottom:8px}.mmp-unavailable h4{margin:0 0 6px;font-size:15px;color:var(--text-primary)}.mmp-foot{display:flex;gap:8px;padding:12px 16px;border-top:1px solid var(--border-color);flex-shrink:0}.mmp-foot .btn{flex:1;min-height:40px}.mm-entering-map{animation:mmp-enter-map .35s ease forwards}@keyframes mmp-enter-map{0%{opacity:1;transform:scale(1)}60%{opacity:.25;transform:scale(.985)}to{opacity:0;transform:scale(.97)}}@media(max-width:640px){.mmp-overlay{justify-content:stretch}.mmp-panel{width:100%;max-width:100%;animation:mmp-slide-up .26s cubic-bezier(.22,1,.36,1)}@keyframes mmp-slide-up{0%{transform:translateY(24px);opacity:.4}to{transform:translateY(0);opacity:1}}}@media(prefers-reduced-motion:reduce){.mmp-overlay,.mmp-panel,.mm-entering-map{animation:none!important}}.mmpick{display:flex;flex-direction:column;gap:12px}.mmpick-search{width:100%;min-height:40px;padding:8px 12px;border-radius:10px;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);font-size:14px}.mmpick-empty{font-size:13px;color:var(--text-tertiary)}.mmpick-list{display:flex;flex-direction:column;gap:8px;max-height:50vh;overflow-y:auto}.mmpick-item{display:flex;align-items:center;gap:10px;text-align:left;padding:10px 12px;border-radius:12px;cursor:pointer;background:var(--bg-secondary);border:1px solid var(--border-color)}.mmpick-item:hover{border-color:var(--accent, #4a6cf7)}.mmpick-item-icon{font-size:20px;flex-shrink:0}.mmpick-item-body{flex:1;min-width:0;display:flex;flex-direction:column}.mmpick-item-title{font-size:14px;font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mmpick-item-meta{font-size:12px;color:var(--text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mmpick-item-add{font-size:12px;font-weight:700;color:var(--accent, #4a6cf7);flex-shrink:0;white-space:nowrap}.mmrel-panel{position:fixed;top:70px;right:16px;z-index:120;width:320px;max-width:92vw;max-height:72vh;overflow-y:auto;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:14px;box-shadow:0 10px 32px #00000038;padding:14px;animation:mmrel-in .22s cubic-bezier(.22,1,.36,1)}@keyframes mmrel-in{0%{opacity:0;transform:translateY(-8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.mmrel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.mmrel-head strong{font-size:14px}.mmrel-close{border:none;background:transparent;cursor:pointer;font-size:14px;color:var(--text-tertiary);width:30px;height:30px;border-radius:8px}.mmrel-close:hover{background:var(--hover-bg, rgba(0,0,0,.05))}.mmrel-body{display:flex;flex-direction:column;gap:16px}.mmrel-section{display:flex;flex-direction:column;gap:8px}.mmrel-section-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-tertiary)}.mmrel-card{display:flex;align-items:center;gap:10px;text-align:left;width:100%;padding:10px 12px;border-radius:10px;cursor:pointer;background:var(--bg-primary, var(--bg-tertiary));border:1px solid var(--border-color);transition:border-color .15s ease,transform .12s ease,box-shadow .15s ease}.mmrel-card:hover:not(:disabled){border-color:var(--accent, #4a6cf7);transform:translateY(-1px);box-shadow:0 4px 14px #0000001a}.mmrel-card.is-unavailable{opacity:.6;cursor:not-allowed}.mmrel-card-icon{font-size:18px;flex-shrink:0}.mmrel-card-body{flex:1;min-width:0;display:flex;flex-direction:column}.mmrel-card-title{font-size:13px;font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mmrel-card-meta{font-size:11px;color:var(--text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mmrel-card-go{font-size:11px;font-weight:700;color:var(--accent, #4a6cf7);flex-shrink:0;white-space:nowrap}.mmrel-empty{text-align:center;padding:22px 10px}.mmrel-empty-icon{font-size:30px;margin-bottom:8px}.mmrel-empty p{margin:0 0 4px;font-size:13px;color:var(--text-primary);font-weight:600}.mmrel-empty-hint{font-size:12px;color:var(--text-tertiary)}@media(max-width:640px){.mmrel-panel{inset:auto 8px 12px;width:auto;max-width:none;max-height:60vh}}.mmp-summary{position:relative;height:92px;margin:14px 0 4px;border-radius:12px;overflow:hidden;background:linear-gradient(135deg,#8b5cf61a,#4a6cf714);border:1px solid var(--border-color)}.mmp-summary-svg{position:absolute;inset:0;width:100%;height:100%}.mmp-summary-count{position:absolute;right:8px;bottom:6px;font-size:10px;font-weight:700;color:var(--text-secondary);background:var(--bg-primary, #fff);border:1px solid var(--border-color);border-radius:999px;padding:2px 8px}.mmp-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.mmp-chip{font-size:11px;padding:3px 9px;border-radius:999px;background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-secondary);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mm-portal-open{transition:background .15s ease,box-shadow .15s ease,transform .12s ease}.mm-portal-open:hover{background:#8b5cf638!important;box-shadow:0 2px 10px #8b5cf64d;transform:translateY(-1px)}.mm-portal-open:focus-visible{outline:2px solid #a78bfa;outline-offset:2px}.mm-node-highlight{animation:mm-node-glow 2.4s ease-in-out;border-radius:16px}@keyframes mm-node-glow{0%{box-shadow:0 0 #a78bfa00}20%{box-shadow:0 0 0 4px #a78bfa8c,0 0 22px #a78bfa80}60%{box-shadow:0 0 0 4px #a78bfa73,0 0 18px #a78bfa66}to{box-shadow:0 0 #a78bfa00}}@media(prefers-reduced-motion:reduce){.mmrel-panel,.mm-node-highlight{animation:none!important}.mm-portal-open{transition:none}}.react-flow{direction:ltr;--xy-edge-stroke-default: #b1b1b7;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #555;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(255, 255, 255, .5);--xy-minimap-background-color-default: #fff;--xy-minimap-mask-background-color-default: rgba(240, 240, 240, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #e2e2e2;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: transparent;--xy-background-pattern-dots-color-default: #91919a;--xy-background-pattern-lines-color-default: #eee;--xy-background-pattern-cross-color-default: #e2e2e2;background-color:var(--xy-background-color, var(--xy-background-color-default));--xy-node-color-default: inherit;--xy-node-border-default: 1px solid #1a192b;--xy-node-background-color-default: #fff;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(0, 0, 0, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #1a192b;--xy-node-border-radius-default: 3px;--xy-handle-background-color-default: #1a192b;--xy-handle-border-color-default: #fff;--xy-selection-background-color-default: rgba(0, 89, 220, .08);--xy-selection-border-default: 1px dotted rgba(0, 89, 220, .8);--xy-controls-button-background-color-default: #fefefe;--xy-controls-button-background-color-hover-default: #f4f4f4;--xy-controls-button-color-default: inherit;--xy-controls-button-color-hover-default: inherit;--xy-controls-button-border-color-default: #eee;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #ffffff;--xy-edge-label-color-default: inherit;--xy-resize-background-color-default: #3367d9}.react-flow.dark{--xy-edge-stroke-default: #3e3e3e;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #727272;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(150, 150, 150, .25);--xy-minimap-background-color-default: #141414;--xy-minimap-mask-background-color-default: rgba(60, 60, 60, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #2b2b2b;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: #141414;--xy-background-pattern-dots-color-default: #777;--xy-background-pattern-lines-color-default: #777;--xy-background-pattern-cross-color-default: #777;--xy-node-color-default: #f8f8f8;--xy-node-border-default: 1px solid #3c3c3c;--xy-node-background-color-default: #1e1e1e;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(255, 255, 255, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #999;--xy-handle-background-color-default: #bebebe;--xy-handle-border-color-default: #1e1e1e;--xy-selection-background-color-default: rgba(200, 200, 220, .08);--xy-selection-border-default: 1px dotted rgba(200, 200, 220, .8);--xy-controls-button-background-color-default: #2b2b2b;--xy-controls-button-background-color-hover-default: #3e3e3e;--xy-controls-button-color-default: #f8f8f8;--xy-controls-button-color-hover-default: #fff;--xy-controls-button-border-color-default: #5b5b5b;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #141414;--xy-edge-label-color-default: #f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props, var(--xy-background-color, var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{position:absolute;width:100%;height:100%;top:0;left:0}.react-flow__pane{z-index:1}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width, var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke, var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width, var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{overflow:visible;position:absolute;pointer-events:none}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected, var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}svg.react-flow__connectionline{z-index:1001;overflow:visible;position:absolute}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;background-color:var(--xy-handle-background-color, var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color, var(--xy-handle-border-color-default));border-radius:100%}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:0;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{position:absolute;z-index:5;margin:15px}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px) translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px) translateY(-50%)}.react-flow__attribution{font-size:10px;background:var(--xy-attribution-background-color, var(--xy-attribution-background-color-default));padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;left:0;top:0}.react-flow__viewport-portal{position:absolute;width:100%;height:100%;left:0;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__minimap{background:var( --xy-minimap-background-color-props, var(--xy-minimap-background-color, var(--xy-minimap-background-color-default)) )}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var( --xy-minimap-mask-background-color-props, var(--xy-minimap-mask-background-color, var(--xy-minimap-mask-background-color-default)) );stroke:var( --xy-minimap-mask-stroke-color-props, var(--xy-minimap-mask-stroke-color, var(--xy-minimap-mask-stroke-color-default)) );stroke-width:var( --xy-minimap-mask-stroke-width-props, var(--xy-minimap-mask-stroke-width, var(--xy-minimap-mask-stroke-width-default)) )}.react-flow__minimap-node{fill:var( --xy-minimap-node-background-color-props, var(--xy-minimap-node-background-color, var(--xy-minimap-node-background-color-default)) );stroke:var( --xy-minimap-node-stroke-color-props, var(--xy-minimap-node-stroke-color, var(--xy-minimap-node-stroke-color-default)) );stroke-width:var( --xy-minimap-node-stroke-width-props, var(--xy-minimap-node-stroke-width, var(--xy-minimap-node-stroke-width-default)) )}.react-flow__background-pattern.dots{fill:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-dots-color-default)) )}.react-flow__background-pattern.lines{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-lines-color-default)) )}.react-flow__background-pattern.cross{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-cross-color-default)) )}.react-flow__controls{display:flex;flex-direction:column;box-shadow:var(--xy-controls-box-shadow, var(--xy-controls-box-shadow-default))}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{display:flex;justify-content:center;align-items:center;height:26px;width:26px;padding:4px;border:none;background:var(--xy-controls-button-background-color, var(--xy-controls-button-background-color-default));border-bottom:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) );color:var( --xy-controls-button-color-props, var(--xy-controls-button-color, var(--xy-controls-button-color-default)) );cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px;fill:currentColor}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{padding:10px;border-radius:var(--xy-node-border-radius, var(--xy-node-border-radius-default));width:150px;font-size:12px;color:var(--xy-node-color, var(--xy-node-color-default));text-align:center;border:var(--xy-node-border, var(--xy-node-border-default));background-color:var(--xy-node-background-color, var(--xy-node-background-color-default))}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover, var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected, var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color, var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color, var(--xy-selection-background-color-default));border:var(--xy-selection-border, var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var( --xy-controls-button-background-color-hover-props, var(--xy-controls-button-background-color-hover, var(--xy-controls-button-background-color-hover-default)) );color:var( --xy-controls-button-color-hover-props, var(--xy-controls-button-color-hover, var(--xy-controls-button-color-hover-default)) )}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) )}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{width:5px;height:5px;border:1px solid #fff;border-radius:1px;background-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));translate:-50% -50%}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));border-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color, var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color, var(--xy-edge-label-color-default))}.eq-page{max-width:1000px;margin:0 auto;padding:16px 16px 96px}.eq-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:16px}.eq-header-text h1{margin:0 0 4px;font-size:24px;font-weight:700;letter-spacing:-.02em;color:var(--text-color, #1c1c1e)}.eq-header-text p{margin:0;font-size:14px;color:var(--text-muted, #8a8a90);max-width:52ch}.eq-new-btn{flex-shrink:0;white-space:nowrap}.eq-featured{margin:0 0 18px;padding:18px 20px;border-radius:16px;background:var(--accent-soft, rgba(74,108,247,.08));border:1px solid var(--border-color, #e6e6e9)}.eq-featured-label{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--accent, #4a6cf7);margin-bottom:8px}.eq-featured-text{margin:0;font-size:19px;line-height:1.4;font-weight:600;letter-spacing:-.01em;color:var(--text-color, #1c1c1e)}.eq-featured-meta{margin-top:8px;display:flex;gap:10px;flex-wrap:wrap;font-size:13px;color:var(--text-muted, #8a8a90)}.eq-featured-source{font-style:italic}.eq-featured-hint{font-size:12px}.eq-controls{display:flex;flex-direction:column;gap:10px;margin-bottom:18px}.eq-search{width:100%;padding:12px 14px;border-radius:12px;border:1px solid var(--border-color, #e6e6e9);background:var(--input-bg, #fff);color:var(--text-color, #1c1c1e);font-size:15px}.eq-filters{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.eq-chip{padding:8px 14px;border-radius:999px;border:1px solid var(--border-color, #e6e6e9);background:var(--card-bg, #fff);color:var(--text-color, #1c1c1e);font-size:13px;font-weight:500;cursor:pointer;min-height:38px;transition:background .15s ease,color .15s ease,border-color .15s ease}.eq-chip.is-active{background:var(--accent, #4a6cf7);border-color:var(--accent, #4a6cf7);color:#fff}.eq-cat-select{padding:8px 12px;border-radius:999px;border:1px solid var(--border-color, #e6e6e9);background:var(--card-bg, #fff);color:var(--text-color, #1c1c1e);font-size:13px;min-height:38px}.eq-grid{display:grid;grid-template-columns:1fr;gap:12px}.eq-card{display:flex;flex-direction:column;padding:16px;border-radius:14px;background:var(--card-bg, #fff);border:1px solid var(--border-color, #e6e6e9);box-shadow:0 1px 2px #00000008}.eq-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:24px;margin-bottom:6px}.eq-badge{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:3px 9px;border-radius:999px;background:var(--bg-tertiary, #f1f1f4);color:var(--text-muted, #6a6a70)}.eq-fav{margin-left:auto;background:transparent;border:none;font-size:20px;line-height:1;color:#d0d0d4;cursor:pointer;padding:4px;border-radius:8px}.eq-fav.is-on{color:#f5a623}.eq-card-text{margin:0;font-size:16px;line-height:1.45;font-weight:500;color:var(--text-color, #1c1c1e)}.eq-card-meta{margin-top:8px;display:flex;gap:10px;flex-wrap:wrap;font-size:12px;color:var(--text-muted, #8a8a90)}.eq-card-source{font-style:italic}.eq-card-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:12px;padding-top:10px;border-top:1px solid var(--border-color, #eee)}.eq-act{font-size:13px;padding:8px 12px;min-height:40px}.eq-danger{color:var(--danger, #e5484d)}.eq-empty{text-align:center;padding:48px 20px;border-radius:16px;border:1px dashed var(--border-color, #e6e6e9);color:var(--text-muted, #8a8a90)}.eq-empty h3{margin:0 0 6px;color:var(--text-color, #1c1c1e);font-size:18px}.eq-empty p{margin:0 0 16px;font-size:14px}.eq-form{display:flex;flex-direction:column;gap:14px}.eq-field{display:flex;flex-direction:column;gap:6px}.eq-field>span{font-size:13px;font-weight:600;color:var(--text-color, #1c1c1e)}.eq-field textarea,.eq-field input,.eq-field select{width:100%;padding:11px 12px;border-radius:10px;border:1px solid var(--border-color, #e6e6e9);background:var(--input-bg, #fff);color:var(--text-color, #1c1c1e);font-size:15px;font-family:inherit}.eq-field textarea{resize:vertical;min-height:96px}.eq-field-row{display:flex;gap:12px}.eq-field-row .eq-field{flex:1}.eq-checkbox{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--text-color, #1c1c1e);cursor:pointer}.eq-checkbox input{width:18px;height:18px}.eq-form-error{margin:0;color:var(--danger, #e5484d);font-size:13px}.eq-toast{position:fixed;left:50%;bottom:84px;transform:translate(-50%);padding:10px 18px;border-radius:999px;font-size:14px;font-weight:500;color:#fff;z-index:9999;box-shadow:0 4px 16px #0000002e}.eq-toast-success{background:#1f9d55}.eq-toast-error{background:#e5484d}@media(min-width:768px){.eq-grid{grid-template-columns:1fr 1fr}.eq-controls{flex-direction:row;align-items:center}.eq-search{max-width:360px}.eq-filters{margin-left:auto}}@media(max-width:480px){.eq-header-text h1{font-size:21px}.eq-featured-text{font-size:17px}.eq-new-btn{width:100%}.eq-field-row{flex-direction:column;gap:14px}}
