:root,:root[data-theme=dark]{--bg:#0d0f14;--surface:#161922;--surface-2:#1e2230;--border:#2a2f3e;--text:#e8eaf0;--text-muted:#7a8099;--primary:#6c63ff;--primary-hover:#5a52e0;--primary-soft:rgba(99,102,241,.15);--primary-text:#818cf8;--primary-grad:linear-gradient(90deg,#6366f1,#818cf8);--danger:#e05252;--danger-soft:rgba(239,68,68,.15);--success:#4caf7d;--success-soft:rgba(16,185,129,.15);--priority-high:#e05252;--priority-medium:#e09352;--priority-low:#4caf7d;--sidebar-bg:#0f1117;--auth-gradient:#1a1a3e;--toast-succ-bg:#065f46;--toast-succ-txt:#d1fae5;--toast-err-bg:#7f1d1d;--toast-err-txt:#fca5a5;--radius:10px;--radius-sm:6px;--shadow:0 4px 24px rgba(0,0,0,.4);--shadow-sm:0 2px 8px rgba(0,0,0,.25)}@media (prefers-color-scheme:light){:root:not([data-theme=dark]){--bg:#f3f4f8;--surface:#fff;--surface-2:#f9fafb;--border:#e5e7eb;--text:#111827;--text-muted:#6b7280;--primary:#4f46e5;--primary-hover:#4338ca;--primary-soft:rgba(79,70,229,.1);--primary-text:#4338ca;--primary-grad:linear-gradient(90deg,#4f46e5,#6366f1);--danger:#dc2626;--danger-soft:rgba(220,38,38,.1);--success:#10b981;--success-soft:rgba(16,185,129,.1);--priority-high:#ef4444;--priority-medium:#f59e0b;--priority-low:#10b981;--sidebar-bg:#fff;--auth-gradient:#e0e7ff;--toast-succ-bg:#d1fae5;--toast-succ-txt:#065f46;--toast-err-bg:#fee2e2;--toast-err-txt:#991b1b;--shadow:0 4px 24px rgba(0,0,0,.06);--shadow-sm:0 2px 8px rgba(0,0,0,.04)}}:root[data-theme=light]{--bg:#f3f4f8;--surface:#fff;--surface-2:#f9fafb;--border:#e5e7eb;--text:#111827;--text-muted:#6b7280;--primary:#4f46e5;--primary-hover:#4338ca;--primary-soft:rgba(79,70,229,.1);--primary-text:#4338ca;--primary-grad:linear-gradient(90deg,#4f46e5,#6366f1);--danger:#dc2626;--danger-soft:rgba(220,38,38,.1);--success:#10b981;--success-soft:rgba(16,185,129,.1);--priority-high:#ef4444;--priority-medium:#f59e0b;--priority-low:#10b981;--sidebar-bg:#fff;--auth-gradient:#e0e7ff;--toast-succ-bg:#d1fae5;--toast-succ-txt:#065f46;--toast-err-bg:#fee2e2;--toast-err-txt:#991b1b;--shadow:0 4px 24px rgba(0,0,0,.06);--shadow-sm:0 2px 8px rgba(0,0,0,.04)}.icon{font-family:Material Symbols Rounded,sans-serif;font-weight:400;font-style:normal;font-size:20px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-smoothing:antialiased;font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 20;-webkit-user-select:none;-moz-user-select:none;user-select:none;flex-shrink:0}.icon-filled{font-variation-settings:"FILL" 1,"wght" 400,"GRAD" 0,"opsz" 20}.icon-sm{font-size:16px}.icon-md{font-size:20px}.icon-lg{font-size:24px}.icon-xl{font-size:32px}*,:after,:before{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,system-ui,sans-serif;background:var(--bg);color:var(--text);min-height:100vh;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at 55% 15%,var(--auth-gradient) 0,var(--bg) 65%);padding:24px}.auth-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:40px;width:100%;max-width:420px;box-shadow:var(--shadow)}.auth-logo{font-size:2rem;color:var(--primary);text-align:center;margin-bottom:12px}.auth-title{font-size:1.5rem;font-weight:700;text-align:center}.auth-subtitle{color:var(--text-muted);text-align:center;margin-top:4px;font-size:.9rem}.auth-form{gap:16px;margin-top:28px}.auth-form,.auth-form label{display:flex;flex-direction:column}.auth-form label{gap:6px;font-size:.83rem;color:var(--text-muted);font-weight:500}.auth-footer{text-align:center;color:var(--text-muted);font-size:.85rem;margin-top:20px}.auth-footer a{color:var(--primary);font-weight:500}.auth-footer a:hover{text-decoration:underline}.input-hint{font-size:.75rem;margin-top:2px}input,select,textarea{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 14px;color:var(--text);font-size:.9rem;width:100%;transition:border-color .15s;font-family:inherit}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary)}textarea{resize:vertical}.btn-primary{background:var(--primary);color:#fff;border:none;border-radius:var(--radius-sm);padding:11px 20px;font-weight:600;cursor:pointer;font-size:.9rem;transition:background .15s,transform .1s;width:100%}.btn-primary:hover:not(:disabled){background:var(--primary-hover);transform:translateY(-1px)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-ghost{background:transparent;color:var(--text-muted);border:1px solid var(--border);border-radius:var(--radius-sm);padding:8px 16px;cursor:pointer;transition:color .15s,border-color .15s;font-size:.85rem}.btn-ghost:hover{color:var(--text);border-color:var(--text-muted)}.btn-danger{background:transparent;color:var(--danger);border:1px solid transparent;border-radius:var(--radius-sm);padding:6px 10px}.btn-danger:hover{background:rgba(224,82,82,.12)}.btn-sm{padding:5px 10px}.divider{display:flex;align-items:center;gap:12px;color:var(--text-muted);font-size:.8rem;margin:16px 0}.divider:after,.divider:before{content:"";flex:1 1;height:1px;background:var(--border)}.btn-google{display:flex;align-items:center;justify-content:center;gap:10px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px;color:var(--text);font-weight:500;font-size:.9rem;transition:background .15s;cursor:pointer}.btn-google:hover{background:var(--border)}.error-banner{background:rgba(224,82,82,.1);border:1px solid rgba(224,82,82,.4);color:var(--danger);border-radius:var(--radius-sm);padding:10px 14px;font-size:.85rem;margin-top:12px}.app-layout{display:flex;flex-direction:column;min-height:100vh}.navbar{justify-content:space-between;padding:0 32px;height:60px;background:var(--surface);border-bottom:1px solid var(--border);position:-webkit-sticky;position:sticky;top:0;z-index:100}.navbar,.navbar__brand{display:flex;align-items:center}.navbar__brand{gap:10px}.brand-icon{color:var(--primary);font-size:1.1rem}.brand-name{font-weight:700;font-size:.95rem}.role-badge{background:rgba(108,99,255,.15);color:var(--primary);border-radius:20px;padding:2px 10px;font-size:.7rem;font-weight:600;letter-spacing:.04em}.navbar__links{display:flex;gap:4px}.nav-link{padding:6px 14px;border-radius:var(--radius-sm);color:var(--text-muted);font-size:.875rem;transition:color .15s,background .15s}.nav-link.active,.nav-link:hover{color:var(--text);background:var(--surface-2)}.navbar__user{display:flex;align-items:center;gap:12px}.user-email{color:var(--text-muted);font-size:.82rem;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.board-container{padding:28px 32px;flex:1 1}.board-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.board-header h2{font-size:1.25rem;font-weight:700}.board-sub{color:var(--text-muted);font-size:.82rem;margin-top:2px}.board-header .btn-primary{width:auto}.kanban-board{grid-gap:20px;gap:20px}.kanban-column{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px;min-height:300px}.column-header{display:flex;align-items:center;justify-content:space-between;font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);margin-bottom:14px}.count{background:var(--surface-2);border-radius:20px;padding:2px 8px;font-size:.72rem}.column-cards{display:flex;flex-direction:column;gap:10px}.empty-col{color:var(--text-muted);font-size:.82rem;text-align:center;padding:20px 0}.task-card{background:var(--surface-2);border-radius:var(--radius-sm);padding:14px;transition:transform .15s,box-shadow .15s}.task-card:hover{box-shadow:var(--shadow-sm)}.task-card__header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.priority-badge{border-radius:4px;padding:2px 7px;font-size:.67rem;font-weight:700;color:#fff;letter-spacing:.04em}.due-chip{font-size:.72rem;color:var(--text-muted);margin-left:auto}.task-card__title{font-size:.875rem;font-weight:600;margin-bottom:6px;line-height:1.4}.task-card__desc{font-size:.78rem;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.task-card__assignee,.task-card__desc{color:var(--text-muted);margin-bottom:10px}.task-card__assignee{font-size:.75rem;display:flex;align-items:center;gap:5px}.assignee-dot{width:6px;height:6px;background:var(--primary);border-radius:50%}.task-card__actions{display:flex;justify-content:flex-end;gap:6px}.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.65);display:flex;align-items:center;justify-content:center;z-index:200;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:20px}.modal-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);width:100%;max-width:520px;box-shadow:var(--shadow);animation:modal-in .2s ease}@keyframes modal-in{0%{opacity:0;transform:scale(.96) translateY(8px)}to{opacity:1;transform:none}}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--border)}.modal-header h2{font-size:1rem;font-weight:700}.modal-body{padding:24px;gap:16px}.modal-body,.modal-body label{display:flex;flex-direction:column}.modal-body label{gap:6px;font-size:.83rem;color:var(--text-muted);font-weight:500}.modal-footer{padding:16px 24px;border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:10px}.modal-footer .btn-primary{width:auto}.form-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.loading-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1 1;gap:12px;color:var(--text-muted)}.spinner{width:28px;height:28px;border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.audit-layout{display:grid;grid-template-columns:260px 1fr;grid-gap:20px;gap:20px;height:calc(100vh - 160px)}.audit-task-list{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px;overflow-y:auto;display:flex;flex-direction:column;gap:6px}.section-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);margin-bottom:8px;font-weight:600}.audit-task-btn{background:transparent;border:1px solid var(--border);border-radius:var(--radius-sm);padding:9px 12px;color:var(--text-muted);text-align:left;cursor:pointer;font-size:.85rem;transition:all .15s}.audit-task-btn.active,.audit-task-btn:hover{background:var(--surface-2);color:var(--text);border-color:var(--primary)}.audit-log-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px;overflow-y:auto;display:flex;flex-direction:column;gap:16px}.audit-entry{border:1px solid var(--border);border-radius:var(--radius-sm);padding:14px}.audit-entry__header{display:flex;align-items:center;gap:10px;margin-bottom:10px;flex-wrap:wrap}.action-badge{border-radius:4px;padding:2px 8px;font-size:.7rem;font-weight:700;letter-spacing:.04em}.action-created{background:rgba(76,175,125,.15);color:var(--success)}.action-updated{background:rgba(108,99,255,.15);color:var(--primary)}.action-deleted{background:rgba(224,82,82,.15);color:var(--danger)}.audit-diff{margin-top:8px}.diff-label{font-size:.7rem;font-weight:600;padding:1px 6px;border-radius:3px;margin-bottom:4px}.diff-label.old{background:rgba(224,82,82,.15);color:var(--danger)}.diff-label.new{background:rgba(76,175,125,.15);color:var(--success)}.audit-diff pre{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px;font-size:.75rem;color:var(--text-muted);overflow-x:auto}.members-layout{display:grid;grid-template-columns:1fr 360px;grid-gap:24px;gap:24px;align-items:start}.members-list{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px;display:flex;flex-direction:column;gap:12px}.member-row{display:flex;align-items:center;gap:14px;padding:12px;background:var(--surface-2);border-radius:var(--radius-sm);border:1px solid var(--border)}.role-chip{margin-left:auto;padding:3px 10px;font-weight:600;flex-shrink:0}.role-chip.role-admin{background:rgba(108,99,255,.15);color:var(--primary)}.add-member-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:24px}.add-member-card h3{font-size:1rem;font-weight:700;margin-bottom:20px}.add-member-card .auth-form{margin-top:0}.text-muted{color:var(--text-muted);font-size:.85rem}.kpi-strip{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:16px;gap:16px;margin-bottom:28px}.kpi-card{display:flex;flex-direction:column;gap:4px}.kpi-value{font-size:2rem}.kpi-label{font-size:.78rem;font-weight:500;letter-spacing:.05em}.kpi-blue{color:#6366f1}.kpi-green{color:#10b981}.kpi-red{color:#ef4444}.kanban-column{border-top:3px solid transparent}.column-header .count{color:#fff;border-radius:12px;padding:1px 8px;font-size:.72rem;font-weight:700}:root{--sb-w:240px;--sb-collapsed:64px}.app-shell{background:var(--bg)}.app-shell,.sidebar{display:flex;min-height:100vh}.sidebar{width:var(--sb-w);background:var(--sidebar-bg);border-right:1px solid var(--border);flex-direction:column;transition:width .2s ease;flex-shrink:0;position:-webkit-sticky;position:sticky;top:0;height:100vh;overflow:hidden}.sidebar.collapsed{width:var(--sb-collapsed)}.app-main{flex:1 1;display:flex;flex-direction:column;min-width:0}.app-content{flex:1 1;overflow-y:auto;padding:32px}.top-header{justify-content:space-between;padding:8px 24px;background:var(--surface);border-bottom:1px solid var(--border);position:-webkit-sticky;position:sticky;top:0;z-index:100;height:56px}.th-left,.th-right,.top-header{display:flex;align-items:center}.th-left,.th-right{gap:16px}.th-search-btn{background:var(--bg);border:1px solid var(--border);color:var(--text-muted);border-radius:8px;padding:6px 12px;display:flex;align-items:center;gap:8px;cursor:pointer;font-size:.85rem;transition:all .15s}.th-search-btn:hover{border-color:var(--primary);color:var(--text)}.th-search-btn kbd{margin-left:40px;font-size:.7rem;background:var(--surface);padding:2px 4px;border-radius:4px;border:1px solid var(--border)}.th-divider{width:1px;height:24px;background:var(--border)}.th-bell-btn{position:relative}.th-bell-badge{position:absolute;top:4px;right:4px;width:6px;height:6px;background:var(--danger);border-radius:50%;border:1.5px solid var(--surface)}.th-profile-wrap{position:relative}.th-profile-btn{background:none;border:none;padding:0;cursor:pointer;border-radius:50%;transition:transform .15s,box-shadow .15s;outline:2px solid transparent;outline-offset:2px}.th-profile-btn:hover{transform:scale(1.05)}.th-profile-btn:focus-visible{outline-color:var(--primary)}.th-avatar{width:28px;height:28px;font-size:.8rem;box-shadow:0 2px 8px rgba(108,99,255,.25)}.th-avatar,.th-avatar-lg{border-radius:50%;background:linear-gradient(135deg,var(--primary),#8e84ff);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700}.th-avatar-lg{width:36px;height:36px;font-size:1rem;flex-shrink:0;box-shadow:0 4px 12px rgba(108,99,255,.3)}.th-profile-dropdown{position:absolute;top:calc(100% + 16px);right:0;background:var(--surface);border:1px solid var(--border);border-radius:16px;min-width:280px;box-shadow:0 12px 32px rgba(0,0,0,.15);z-index:200;animation:dropdown-fade .2s cubic-bezier(.16,1,.3,1);overflow:hidden;display:flex;flex-direction:column}@keyframes dropdown-fade{0%{opacity:0;transform:translateY(-10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.th-dropdown-header{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--surface-2)}.th-dropdown-info{display:flex;flex-direction:column;overflow:hidden;gap:2px}.th-name{font-size:.95rem;font-weight:800;color:var(--text)}.th-email,.th-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}.th-email{font-size:.75rem;color:var(--text-muted);margin-bottom:4px}.th-role-badge{align-self:flex-start;font-size:.5rem;font-weight:800;background:var(--primary-soft);color:var(--primary);padding:2px 6px;border-radius:6px;text-transform:uppercase;letter-spacing:.05em;border:1px solid rgba(108,99,255,.2)}.th-dropdown-divider{height:1px;background:var(--border);margin:0}.th-dropdown-body{padding:8px;display:flex;flex-direction:column;gap:2px}.th-dropdown-item{display:flex;align-items:center;gap:12px;width:100%;padding:10px 12px;background:none;border:none;text-align:left;font-size:.875rem;font-weight:500;color:var(--text);border-radius:8px;cursor:pointer;transition:all .15s}.th-dropdown-item:hover{background:var(--surface-2);color:var(--primary)}.th-dropdown-item .icon{font-size:1.1rem;color:var(--text-muted);transition:color .15s}.th-dropdown-item:hover .icon{color:var(--primary)}.th-shortcut{margin-left:auto;font-size:.65rem;background:var(--surface);border:1px solid var(--border);border-radius:4px;padding:2px 5px;color:var(--text-muted);font-family:monospace;letter-spacing:1px}.th-theme-section{padding:12px 16px;display:flex;flex-direction:column;gap:8px}.th-section-label{font-size:.65rem;font-weight:800;color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase}.th-theme-toggle{display:flex;background:var(--surface-2);border-radius:8px;padding:4px;border:1px solid var(--border)}.th-theme-btn{flex:1 1;display:flex;align-items:center;justify-content:center;gap:6px;padding:6px 0;background:none;border:none;font-size:.75rem;font-weight:600;color:var(--text-muted);border-radius:6px;cursor:pointer;transition:all .15s}.th-theme-btn:hover{color:var(--text)}.th-theme-btn.active{background:var(--surface);color:var(--text);box-shadow:0 2px 6px rgba(0,0,0,.1)}.th-theme-btn .icon{font-size:.9rem}.th-dropdown-footer{padding:8px;background:var(--surface);border-radius:0 0 16px 16px}.th-logout-item,.th-logout-item .icon,.th-logout-item:hover{color:var(--danger)!important}.th-logout-item:hover{background:rgba(224,82,82,.1)!important}.th-logout-item:hover .icon{color:var(--danger)!important}.th-icon-btn{background:none;border:none;color:var(--text-muted);padding:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:6px}.th-icon-btn:hover{background:var(--surface-2);color:var(--text)}.sb-top{padding:16px 12px 8px;border-bottom:1px solid var(--border)}.sb-brand{display:flex;align-items:center;gap:8px;margin-bottom:8px}.sb-logo{font-size:1.25rem;color:var(--primary);flex-shrink:0}.sb-title{font-weight:800;font-size:1rem;white-space:nowrap;overflow:hidden}.sb-collapse{margin-left:auto;background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:1.1rem;padding:2px 6px;border-radius:4px;flex-shrink:0}.sb-collapse:hover{background:var(--surface-2)}.sb-org{display:flex;align-items:center;gap:8px;padding:6px 4px}.sb-org-name{font-size:.8rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sb-role-badge{margin-left:auto;font-size:.65rem;font-weight:700;background:var(--primary-soft);color:var(--primary-text);padding:2px 7px;border-radius:10px;flex-shrink:0}.sb-nav{flex:1 1;padding:8px;display:flex;flex-direction:column;gap:2px;overflow-y:auto}.sb-section-label{font-size:.65rem;font-weight:700;color:var(--text-muted);letter-spacing:.08em;padding:10px 8px 4px;text-transform:uppercase}.sb-link{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:6px;color:var(--text-muted);text-decoration:none;font-size:.875rem;font-weight:500;background:none;border:none;cursor:pointer;width:100%;text-align:left;transition:background .15s,color .15s;white-space:nowrap}.sb-link:hover{background:var(--surface-2);color:var(--text)}.sb-link.active{background:var(--primary-soft);color:var(--primary-text)}.sb-icon{font-size:1rem;flex-shrink:0;width:20px;text-align:center}.sb-bottom{padding:8px 8px 16px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:4px}.sb-email{font-size:.75rem;color:var(--text-muted);padding:4px 10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sb-cmd kbd{font-size:.65rem;background:var(--surface-2);border:1px solid var(--border);border-radius:3px;padding:1px 4px;margin-left:auto}.page{padding:32px;max-width:1400px}.page-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:28px;gap:16px}.page-title{font-size:1.5rem;font-weight:800;color:var(--text);margin:0}.page-sub{font-size:.875rem;color:var(--text-muted);margin:4px 0 0}.page-back{display:flex;flex-direction:column;gap:4px}.back-link{font-size:.8rem;color:var(--text-muted);text-decoration:none}.back-link:hover{color:var(--primary)}.kpi-row{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:16px;gap:16px;margin-bottom:28px}.kpi-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px 24px}.kpi-value{display:block;font-size:2.2rem;font-weight:800;line-height:1;color:var(--text)}.kpi-label{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;margin-top:4px}.kpi-label,.kpi-sub{display:block;color:var(--text-muted)}.kpi-sub{font-size:.75rem;margin-top:2px}.kpi-green{color:#10b981!important}.kpi-red{color:#ef4444!important}.kpi-blue{color:#6366f1!important}.widget-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px;margin-bottom:16px}.widget{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px 24px;margin-bottom:16px}.widget-title{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:14px}.widget-stat{font-size:.875rem;color:var(--text-muted);margin-top:8px}.prog-bar-wrap{height:8px;background:var(--surface-2);border-radius:4px;overflow:hidden}.prog-bar{height:100%;background:var(--primary-grad);border-radius:4px;transition:width .6s ease}.bar-row{display:flex;align-items:center;gap:10px;margin-bottom:10px}.bar-label{font-size:.75rem;color:var(--text-muted);width:90px;flex-shrink:0}.bar-track{flex:1 1;height:6px;background:var(--surface-2);border-radius:3px;overflow:hidden}.bar-fill{height:100%;border-radius:3px;transition:width .6s ease}.bar-count{font-size:.8rem;font-weight:600;width:30px;text-align:right}.feed-widget{margin-bottom:16px}.feed-row{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--border)}.feed-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.dot-created{background:#10b981}.dot-updated{background:#6366f1}.dot-deleted{background:#ef4444}.feed-text{flex:1 1;font-size:.85rem}.feed-time{font-size:.75rem;color:var(--text-muted);flex-shrink:0}.feed-more{display:flex;align-items:center;justify-content:flex-end;gap:4px;font-size:.8rem;color:var(--primary);margin-top:16px;text-decoration:none;font-weight:600}.feed-more:hover{text-decoration:underline}.feed-row-enhanced{display:flex;align-items:flex-start;gap:14px;padding:12px 0;border-bottom:1px solid var(--border);transition:background .15s}.feed-row-enhanced:last-child{border-bottom:none}.feed-row-enhanced:hover{background:var(--surface-2);border-radius:8px;padding-left:8px;padding-right:8px;margin:0 -8px}.feed-avatar{width:32px;height:32px;border-radius:50%;background:var(--surface-2);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.85rem;color:var(--text);flex-shrink:0}.feed-content-enhanced{flex:1 1;display:flex;flex-direction:column;gap:4px;min-width:0}.feed-text-enhanced{font-size:.85rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.feed-user{font-weight:600;color:var(--text)}.feed-task{color:var(--text);font-weight:500}.feed-time-enhanced{font-size:.75rem;color:var(--text-muted)}.kanban-board{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:24px;gap:24px;align-items:start}.kanban-col{background:var(--surface);border-radius:12px;display:flex;flex-direction:column;gap:12px;min-height:400px;border:1px solid var(--border);box-shadow:0 4px 12px rgba(0,0,0,.05);overflow:hidden}.kanban-col-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border);background:var(--surface-2)}.kanban-col-header-left{display:flex;align-items:center;gap:10px}.col-label{font-size:.9rem;font-weight:700;color:var(--text)}.col-badge{border-radius:20px;padding:2px 10px;font-size:.75rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.kanban-cards-container{padding:16px;display:flex;flex-direction:column;gap:12px;flex:1 1}.task-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:16px;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px rgba(0,0,0,.04)}.task-card:hover{border-color:var(--primary);box-shadow:0 8px 24px rgba(0,0,0,.12);transform:translateY(-2px)}.tc-header{justify-content:space-between;margin-bottom:12px}.tc-header,.tc-priority{display:flex;align-items:center}.tc-priority{gap:4px;font-size:.7rem;font-weight:700;padding:4px 8px;border-radius:6px;background:var(--surface-2)}.tc-actions{display:flex;gap:4px;opacity:0;transition:opacity .2s}.task-card:hover .tc-actions{opacity:1}.tc-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:4px;border-radius:6px;font-size:.9rem;display:flex;align-items:center;justify-content:center;transition:all .15s}.tc-btn:hover{background:var(--surface-2);color:var(--text)}.tc-del:hover{background:rgba(239,68,68,.1);color:#ef4444}.tc-title{background:none;border:none;text-align:left;font-size:.95rem;font-weight:600;color:var(--text);cursor:pointer;padding:0;margin-bottom:8px;line-height:1.4;display:block;width:100%;transition:color .15s}.tc-title:hover{color:var(--primary)}.tc-desc{font-size:.8rem;color:var(--text-muted);margin:0 0 16px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.tc-footer{justify-content:space-between;font-size:.75rem;color:var(--text-muted);padding-top:12px;border-top:1px dashed var(--border)}.tc-assignee,.tc-footer{display:flex;align-items:center}.tc-assignee{gap:6px;font-weight:500;min-width:0;flex:1 1;margin-right:8px}.tc-assignee-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.tc-avatar{width:24px;height:24px;border-radius:50%;border:1px solid var(--border);justify-content:center;font-weight:700;font-size:.7rem;color:var(--text)}.tc-avatar,.tc-due{background:var(--surface-2);display:flex;align-items:center;flex-shrink:0}.tc-due{gap:4px;font-weight:500;padding:4px 8px;border-radius:6px}.tc-due.overdue{background:rgba(239,68,68,.1);color:#ef4444}.add-task-btn{display:flex;align-items:center;justify-content:center;gap:6px;padding:12px;margin:0 16px 16px;border-radius:8px;font-size:.85rem;font-weight:600;background:transparent;transition:all .2s ease}.add-task-btn:hover{border-color:var(--primary);border-style:solid}.feed-action-icon{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.feed-action-icon .icon{font-size:14px}.bg-created{background:rgba(16,185,129,.1);color:#10b981}.bg-updated{background:rgba(99,102,241,.1);color:#6366f1}.bg-deleted{background:rgba(239,68,68,.1);color:#ef4444}.my-task-card{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--surface);border:1px solid var(--border);border-radius:8px;margin-bottom:8px;transition:all .2s ease;text-decoration:none}.my-task-card:hover{border-color:var(--primary);box-shadow:0 4px 12px rgba(0,0,0,.15);transform:translateY(-1px)}.my-task-card:last-child{margin-bottom:0}.my-task-card-left{display:flex;align-items:center;gap:14px;flex:1 1;min-width:0}.my-task-status-icon{display:flex;align-items:center;justify-content:center;color:var(--text-muted)}.my-task-card-info{display:flex;flex-direction:column;gap:6px;flex:1 1;min-width:0}.my-task-card-title{font-size:.9rem;font-weight:600;color:var(--text);text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.my-task-card-title:hover{color:var(--primary)}.my-task-card-meta{display:flex;align-items:center;gap:16px}.my-task-card-due,.my-task-card-pri{display:flex;align-items:center;font-size:.75rem;font-weight:600}.my-task-card-due{color:var(--text-muted);font-weight:500}.my-task-card-due.overdue{color:#ef4444;font-weight:700}.my-task-card-arrow{color:var(--text-muted);display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;transition:background .15s}.my-task-card:hover .my-task-card-arrow{background:var(--surface-2);color:var(--primary)}.add-task-btn{display:block;text-align:center;padding:8px;border-radius:6px;font-size:.8rem;color:var(--text-muted);text-decoration:none;border:1px dashed var(--border);margin-top:4px;transition:background .15s}.add-task-btn:hover{background:var(--surface-2);color:var(--primary)}.empty-col-msg{text-align:center;font-size:.8rem;color:var(--text-muted);padding:24px 0}.view-tabs{display:flex;gap:4px;margin-bottom:16px}.view-tab{padding:6px 14px;border-radius:6px;font-size:.8rem;font-weight:600;color:var(--text-muted);background:none;border:1px solid var(--border);cursor:pointer;text-decoration:none;transition:background .15s}.view-tab.active,.view-tab:hover{background:var(--primary);color:#fff;border-color:var(--primary)}.filter-bar{display:flex;gap:10px;margin-bottom:20px;flex-wrap:wrap}.filter-sel{border:1px solid var(--border);color:var(--text);border-radius:6px;padding:6px 10px;font-size:.8rem;cursor:pointer}.ctx-menu,.filter-sel{background:var(--surface)}.ctx-menu{position:fixed;z-index:1000;border:1px solid var(--border);border-radius:8px;padding:4px;min-width:160px;box-shadow:0 8px 32px rgba(0,0,0,.4)}.ctx-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;background:none;border:none;color:var(--text);font-size:.85rem;cursor:pointer;border-radius:6px;text-align:left}.ctx-item:hover{background:var(--surface-2)}.ctx-item.ctx-danger:hover{background:rgba(239,68,68,.1);color:#ef4444}.ctx-divider{height:1px;background:var(--border);margin:4px 0}.drawer-overlay{display:flex;justify-content:flex-end}.drawer{height:100%;padding:28px;overflow-y:auto;animation:slideIn .2s ease}.drawer-header{margin-bottom:16px}.drawer-title{font-size:1.1rem}.drawer-badges{display:flex;gap:8px;margin-bottom:14px}.badge{font-size:.75rem;font-weight:600;padding:4px 10px;border-radius:20px;background:var(--surface-2);border:1px solid var(--border)}.drawer-desc{font-size:.875rem;color:var(--text-muted);line-height:1.6;margin-bottom:16px}.drawer-meta{display:flex;flex-direction:column;gap:6px;font-size:.8rem;color:var(--text-muted);margin-bottom:24px}.drawer-footer{gap:12px;margin-top:auto}.confirm-overlay{position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:600;display:flex;align-items:center;justify-content:center}.confirm-box{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:28px;max-width:360px;width:90%;box-shadow:0 20px 60px rgba(0,0,0,.5)}.confirm-box p{margin:0 0 8px;font-weight:600}.confirm-sub{font-size:.8rem;color:var(--text-muted)!important;font-weight:400!important}.confirm-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px}.list-table{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.list-header,.list-row{display:grid;grid-template-columns:30px 1fr 110px 120px 100px 90px;grid-gap:12px;gap:12px;padding:12px 20px;align-items:center}.list-header{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);background:var(--surface-2)}.list-header,.list-row{border-bottom:1px solid var(--border)}.list-row{font-size:.875rem;transition:background .1s}.list-row:hover{background:var(--surface-2)}.list-row:last-child{border-bottom:none}.lt-title{display:flex;align-items:center;gap:10px}.lt-check{accent-color:var(--primary)}.lt-link{color:var(--text);text-decoration:none;font-weight:500}.lt-link:hover{color:var(--primary)}.lt-col{font-size:.82rem}.lt-acts{display:flex;gap:6px}.pri-dot{margin-right:2px}.status-chip{padding:3px 8px;border-radius:10px;font-size:.7rem;font-weight:700}.act-btn{background:none;border:1px solid var(--border);border-radius:5px;padding:4px 8px;cursor:pointer;font-size:.8rem;color:var(--text-muted)}.act-btn:hover{background:var(--surface-2)}.act-btn.danger:hover{color:#ef4444;border-color:#ef4444}.overdue{color:#ef4444!important}.pagination{display:flex;align-items:center;gap:6px;padding:16px 20px;border-top:1px solid var(--border)}.pg-btn{padding:6px 12px;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text);cursor:pointer;font-size:.8rem;transition:background .15s}.pg-btn.active,.pg-btn:hover:not(:disabled){background:var(--primary);color:#fff;border-color:var(--primary)}.pg-btn:disabled{opacity:.4;cursor:not-allowed}.task-form{max-width:100%;overflow-x:hidden}.task-form-grid{display:grid;grid-template-columns:1fr 320px;grid-gap:24px;gap:24px;align-items:start}.task-form-main,.task-form-side{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:28px}.form-section-title{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:18px}.form-label{display:flex;flex-direction:column;gap:6px;font-size:.82rem;font-weight:600;color:var(--text-muted);margin-bottom:16px}.form-input{background:var(--surface-2);border:1px solid var(--border);border-radius:6px;padding:10px 12px;color:var(--text);font-size:.9rem;font-family:inherit;transition:border-color .15s}.form-input:focus{outline:none;border-color:var(--primary)}.form-input:disabled{opacity:.5}.form-textarea{background:var(--surface-2);border:1px solid var(--border);border-radius:6px;padding:10px 12px;color:var(--text);font-size:.9rem;font-family:inherit;resize:vertical;transition:border-color .15s}.form-textarea:focus{outline:none;border-color:var(--primary)}.form-select{background:var(--surface-2);border:1px solid var(--border);border-radius:6px;padding:10px 12px;color:var(--text);font-size:.9rem;cursor:pointer}.form-actions{display:flex;gap:12px;align-items:center;justify-content:flex-end}.version-info{font-size:.75rem;color:var(--text-muted);margin-top:16px;padding:8px 12px;background:var(--surface-2);border-radius:6px}.input-hint{font-weight:400}.activity-log{display:flex;flex-direction:column;gap:2px}.activity-row{padding:8px 0}.act-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;margin-top:5px}.act-created{background:#10b981}.act-updated{background:#6366f1}.act-deleted{background:#ef4444}.act-who{font-weight:600;font-size:.82rem}.act-what{font-size:.82rem}.act-time,.act-what{color:var(--text-muted)}.act-time{font-size:.75rem}.act-all-link{font-size:.78rem;color:var(--primary);text-decoration:none;display:block;margin-top:10px}.audit-table{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.audit-header{display:grid;grid-template-columns:24px 140px 160px 80px 180px 100px;grid-gap:12px;gap:12px;padding:10px 20px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);background:var(--surface-2)}.audit-entry,.audit-header{border-bottom:1px solid var(--border)}.audit-entry:last-child{border-bottom:none}.audit-row{display:grid;grid-template-columns:24px 140px 160px 80px 180px 100px;grid-gap:12px;gap:12px;padding:12px 20px;align-items:center;cursor:pointer;font-size:.82rem;transition:background .1s}.audit-row:hover{background:var(--surface-2)}.audit-expand{font-size:.7rem}.audit-expand,.audit-time{color:var(--text-muted)}.audit-user{font-weight:600}.audit-action{font-weight:700}.audit-task{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.audit-ip,.audit-task{color:var(--text-muted)}.audit-ip{font-size:.72rem}.audit-diff{background:var(--surface-2);padding:16px 20px;border-top:1px solid var(--border)}.diff-cols{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}.diff-col pre{background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:10px;font-size:.72rem;color:var(--text-muted);overflow-x:auto;margin:6px 0 0}.diff-label{display:inline-block;font-size:.68rem;font-weight:700;padding:2px 8px;border-radius:4px}.diff-label.old{background:rgba(239,68,68,.15);color:#ef4444}.diff-label.new{background:rgba(16,185,129,.15);color:#10b981}.audit-ua{font-size:.72rem;color:var(--text-muted);margin-top:8px}.members-table{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:visible}.members-header{padding:10px 20px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);background:var(--surface-2);border-radius:calc(var(--radius) - 1px) calc(var(--radius) - 1px) 0 0}.member-row-full,.members-header{display:grid;grid-template-columns:1fr 140px 80px 100px;grid-gap:16px;gap:16px;border-bottom:1px solid var(--border)}.member-row-full{padding:14px 20px;align-items:center;transition:background .1s}.member-row-full:hover{background:var(--surface-2)}.member-row-full:last-child{border-bottom:none;border-radius:0 0 calc(var(--radius) - 1px) calc(var(--radius) - 1px)}.member-avatar{width:36px;height:36px;border-radius:50%;background:var(--primary);color:#fff;justify-content:center;font-weight:700;font-size:.9rem;flex-shrink:0}.member-avatar,.member-info{display:flex;align-items:center}.member-info{gap:12px}.member-email{font-size:.875rem;font-weight:500}.member-role-wrap{position:relative}.role-btn{background:none;border:none;cursor:pointer;padding:0}.role-chip{padding:4px 10px;border-radius:20px;font-size:.72rem;font-weight:700;display:inline-flex;align-items:center;gap:4px}.role-chip.role-admin{background:var(--primary-soft);color:var(--primary-text)}.role-chip.role-member{background:rgba(122,128,153,.15);color:var(--text-muted)}.role-dropdown{position:absolute;top:calc(100% + 6px);left:0;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:4px;min-width:140px;z-index:100;box-shadow:0 8px 32px rgba(0,0,0,.4)}.role-opt{display:block;width:100%;padding:8px 12px;background:none;border:none;color:var(--text);font-size:.85rem;cursor:pointer;border-radius:6px;text-align:left}.role-opt:hover{background:var(--surface-2)}.role-opt.danger:hover{color:#ef4444}.segmented-control{display:flex;background:var(--surface-2);border-radius:8px;padding:4px;border:1px solid var(--border);width:100%}.segment-btn{flex:1 1;display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 0;background:none;border:none;font-size:.8rem;font-weight:600;color:var(--text-muted);border-radius:6px;cursor:pointer;transition:all .15s}.segment-btn:hover{color:var(--text)}.segment-btn.active{background:var(--surface);color:var(--text);box-shadow:0 2px 6px rgba(0,0,0,.1)}.settings-grid{display:grid;grid-template-columns:200px 1fr;grid-gap:24px;gap:24px;align-items:start}.settings-tabs{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column}.settings-tab{padding:12px 16px;background:none;border:none;text-align:left;cursor:pointer;font-size:.875rem;color:var(--text-muted);border-bottom:1px solid var(--border);transition:background .1s}.settings-tab:last-child{border-bottom:none}.settings-tab:hover{background:var(--surface-2)}.settings-tab.active{color:var(--primary);background:rgba(99,102,241,.1)}.settings-content{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:28px}.settings-section-title{font-size:1rem;font-weight:700;margin:0 0 20px}.security-item{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--border);font-size:.875rem}.security-val{font-weight:600}.sec-on{color:#10b981}.plan-row{display:flex;align-items:center;gap:12px}.plan-chip{background:var(--primary-soft);color:var(--primary-text);padding:4px 12px;border-radius:20px;font-size:.8rem;font-weight:700}.danger-box{border:1px solid rgba(239,68,68,.3);border-radius:var(--radius);padding:20px;background:rgba(239,68,68,.05)}.danger-box h3{color:#ef4444;margin:0 0 8px;font-size:.95rem}.danger-box p{font-size:.85rem;color:var(--text-muted);margin:0 0 16px}.cmd-overlay{position:fixed;inset:0;background:rgba(0,0,0,.7);z-index:900;display:flex;align-items:flex-start;justify-content:center;padding-top:80px}.cmd-box{background:var(--surface);border:1px solid var(--border);border-radius:12px;width:520px;max-width:92vw;overflow:hidden;box-shadow:0 24px 64px rgba(0,0,0,.6)}.cmd-search-row{display:flex;align-items:center;gap:12px;padding:16px 20px}.cmd-search-icon{font-size:1.1rem;color:var(--text-muted)}.cmd-input{flex:1 1;background:none;border:none;color:var(--text);font-size:1rem;font-family:inherit}.cmd-input:focus{outline:none}.cmd-divider{height:1px;background:var(--border)}.cmd-section-label{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);padding:10px 20px 4px}.cmd-item{display:flex;align-items:center;gap:12px;width:100%;padding:10px 20px;background:none;border:none;color:var(--text);cursor:pointer;text-align:left;font-size:.9rem;transition:background .1s}.cmd-item:hover{background:var(--surface-2)}.cmd-item-icon{font-size:1rem;width:20px;text-align:center}.cmd-item-label{flex:1 1}.cmd-shortcut{font-size:.68rem;background:var(--surface-2);border:1px solid var(--border);border-radius:4px;padding:2px 6px}.toast-stack{position:fixed;bottom:24px;right:24px;display:flex;flex-direction:column;gap:8px;z-index:1000}.toast{display:flex;align-items:center;gap:10px;padding:12px 18px;border-radius:8px;font-size:.875rem;font-weight:500;box-shadow:0 8px 24px rgba(0,0,0,.4);animation:slideUp .2s ease}@keyframes slideUp{0%{transform:translateY(10px);opacity:0}to{transform:translateY(0);opacity:1}}.toast-success{background:var(--toast-succ-bg);border:1px solid var(--success);color:var(--toast-succ-txt)}.toast-error{background:var(--toast-err-bg);border:1px solid var(--danger);color:var(--toast-err-txt)}.toast-warn{background:var(--priority-medium);border:1px solid var(--priority-medium);color:#fff}.toast-icon{font-size:1rem}.board-skeleton,.skeleton-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:16px;gap:16px}.board-skeleton{grid-template-columns:repeat(3,1fr)}.skeleton-card,.skeleton-col{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px;height:120px}.skeleton-header,.skeleton-task-card{background:var(--surface-2);border-radius:6px;height:20px;margin-bottom:10px;animation:shimmer 1.5s infinite}.skeleton-task-card{height:80px;margin-bottom:8px}@keyframes shimmer{0%,to{opacity:.5}50%{opacity:1}}.skeleton-row{opacity:.5}.sk-line{background:var(--surface-2);border-radius:4px;height:14px;animation:shimmer 1.5s infinite}.sk-sm{width:60%}.skeleton-detail{padding:32px;gap:16px}.empty-state,.skeleton-detail{display:flex;flex-direction:column}.empty-state{align-items:center;justify-content:center;padding:64px 32px;gap:12px}.empty-icon{font-size:2rem}.empty-state p{color:var(--text-muted);font-size:.9rem;margin:0}.error-state{display:flex;align-items:center;gap:12px;padding:16px;background:var(--danger-soft);border:1px solid var(--danger);border-radius:var(--radius);color:var(--danger);margin-bottom:16px}.error-state button{margin-left:auto;background:none;border:1px solid var(--danger);color:var(--danger);border-radius:6px;padding:4px 12px;cursor:pointer}.access-denied{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px;gap:12px;text-align:center}.access-icon{font-size:3rem}.access-denied h2{margin:0;font-size:1.25rem}.access-denied p{color:var(--text-muted);margin:0}.btn-danger{background:var(--toast-err-bg);border:1px solid var(--danger);color:var(--toast-err-txt);border-radius:6px;padding:8px 16px;cursor:pointer;font-size:.85rem;font-weight:600;transition:background .15s}.btn-danger:hover{background:var(--danger);color:#fff}.btn-sm{padding:4px 10px;font-size:.78rem}.page-loading{display:flex;flex-direction:column;gap:20px;padding:32px}.cal-nav{display:flex;align-items:center;gap:12px;margin-bottom:20px}.cal-month-label{font-weight:800;min-width:200px;text-align:center}.cal-month-label,.cal-nav-btn{font-size:1.1rem;color:var(--text)}.cal-nav-btn{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:6px 14px;cursor:pointer;font-weight:700;transition:background .15s}.cal-nav-btn:hover{background:var(--surface-2)}.cal-today-btn{background:var(--primary-soft);border:1px solid var(--primary-soft);color:var(--primary-text);border-radius:8px;padding:6px 14px;cursor:pointer;font-size:.8rem;font-weight:700;margin-left:8px;transition:background .15s}.cal-today-btn:hover{background:rgba(99,102,241,.2)}.cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:1px;gap:1px;background:var(--border);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.cal-day-header{background:var(--surface-2);padding:8px 0;text-align:center;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted)}.cal-cell{background:var(--surface);min-height:110px;padding:8px;cursor:pointer;transition:background .1s;display:flex;flex-direction:column;gap:4px;min-width:0;overflow:hidden}.cal-cell:hover{background:var(--surface-2)}.cal-empty{cursor:default}.cal-empty,.cal-empty:hover{background:var(--bg)}.skeleton-cell{background:var(--surface);min-height:110px;padding:8px;display:flex;flex-direction:column;gap:6px}.cal-today{background:rgba(99,102,241,.07);outline:2px solid rgba(99,102,241,.4);outline-offset:-2px}.cal-selected{background:rgba(99,102,241,.12)}.cal-day-num{font-size:.8rem;font-weight:700;color:var(--text-muted);display:block;margin-bottom:2px}.today-num{background:var(--primary);color:#fff;border-radius:50%;width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;font-size:.75rem}.cal-chips{display:flex;flex-direction:column;gap:3px}.cal-chip{font-size:.68rem;font-weight:500;background:var(--surface-2);border-radius:3px;padding:2px 6px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-left:3px solid var(--primary)}.cal-chip-more{color:var(--text-muted);border-left-color:var(--border);font-style:italic}.drawer-overlay{position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:500}.drawer{position:fixed;top:0;right:0;width:420px;height:100vh;background:var(--surface);border-left:1px solid var(--border);display:flex;flex-direction:column;z-index:501;animation:slideIn .22s ease;overflow:hidden}@keyframes slideIn{0%{transform:translateX(100%)}to{transform:translateX(0)}}.drawer-header{display:flex;align-items:flex-start;justify-content:space-between;padding:24px 24px 16px;border-bottom:1px solid var(--border)}.drawer-title{font-size:1rem;font-weight:700;margin:0;line-height:1.3}.drawer-close{background:none;font-size:1rem;padding:4px 8px;border-radius:4px}.drawer-close:hover{background:var(--surface-2);color:var(--text)}.drawer-body{padding:20px 24px}.drawer-footer .btn-primary{display:flex;align-items:center;justify-content:center}.drawer-task-list{display:flex;flex-direction:column;gap:12px}.drawer-task-item{background:var(--surface-2);border:1px solid var(--border);border-radius:8px;padding:14px;display:flex;flex-direction:column;gap:8px}.dti-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.dti-title{font-size:.9rem;font-weight:600;line-height:1.4}.dti-desc{font-size:.8rem;color:var(--text-muted);line-height:1.5;margin:0}.dti-meta{display:flex;align-items:center;gap:10px}.dti-edit{font-size:.78rem;padding:4px 10px;align-self:flex-start}.mobile-header,.mobile-overlay{display:none}.mobile-only{display:none!important}@media (max-width:1024px){.kanban-board,.kpi-row{grid-template-columns:repeat(2,1fr)}.form-row,.widget-row{grid-template-columns:1fr}}@media (max-width:900px){.task-form-grid{grid-template-columns:1fr;gap:16px}}@media (max-width:768px){:root{--sb-w:0px}.desktop-only{display:none!important}.mobile-only{display:flex!important}.sidebar{position:fixed;left:-280px;top:0;bottom:0;z-index:1000;width:280px;transition:left .3s cubic-bezier(.4,0,.2,1)}.sidebar.mobile-open{left:0;box-shadow:4px 0 24px rgba(0,0,0,.5)}.mobile-overlay{display:block;position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:999;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.top-header{padding:12px 16px}.mobile-brand{gap:8px;font-size:1.1rem}.mobile-brand,.mobile-menu-btn{display:flex;align-items:center}.mobile-menu-btn{background:none;border:none;color:var(--text);cursor:pointer;padding:4px;justify-content:center}.app-content,.page{padding:16px}.page-header{flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:16px}.page-header .btn-primary{width:100%;justify-content:center;padding:8px;font-size:.85rem}.view-tabs{margin-bottom:12px}.view-tab{padding:4px 10px;font-size:.75rem}.filter-bar{margin-bottom:16px;gap:8px}.filter-sel{padding:6px 10px;font-size:.75rem;flex:1 1;min-width:100%}.kpi-row{grid-template-columns:repeat(2,1fr);gap:12px}.kpi-card{padding:16px}.kanban-board{display:flex!important;flex-direction:column;gap:24px;width:100%;padding:0 0 24px;margin:0}.kanban-col{width:100%;min-height:auto;border-radius:12px}.audit-layout{grid-template-columns:1fr;height:auto;display:flex;flex-direction:column}.audit-header{display:none}.audit-table{border:none;background:transparent}.audit-entry{background:var(--surface);border:1px solid var(--border);border-radius:12px;margin-bottom:8px}.audit-entry:last-child{border-bottom:1px solid var(--border);margin-bottom:0}.audit-row{display:grid;grid-template-columns:24px 1fr auto;grid-template-areas:"icon user time" "icon action action" "icon task task";grid-gap:4px 10px;gap:4px 10px;padding:14px 16px;align-items:start}.audit-expand{grid-area:icon;margin-top:2px}.audit-time{grid-area:time;font-size:.65rem}.audit-user{grid-area:user;font-size:.8rem;font-weight:700;color:var(--text)}.audit-action{grid-area:action;font-size:.75rem;letter-spacing:.05em}.audit-task{grid-area:task;font-size:.75rem;white-space:normal;line-height:1.4;color:var(--text-muted)}.audit-ip{display:none}.audit-diff{padding:12px 16px;border-top:1px dashed var(--border)}.audit-diff .diff-cols{display:flex;flex-direction:column;gap:8px}.list-table-wrap{overflow-x:auto;padding-bottom:16px}.list-table{min-width:800px}.my-task-card{flex-direction:column;align-items:flex-start;gap:12px;position:relative}.my-task-card-arrow{position:absolute;right:16px;top:16px}.modal-card{max-width:100%;border-radius:12px 12px 0 0;position:absolute;bottom:0;animation:modal-up .3s ease}@keyframes modal-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.modal-overlay{padding:0;align-items:flex-end}.cal-nav{margin-bottom:16px}.cal-month-label{font-size:1rem;min-width:auto}.cal-day-header{padding:4px 0;font-size:.55rem;letter-spacing:0}.cal-cell{padding:4px;min-height:80px;gap:2px}.cal-day-num{font-size:.7rem}.cal-chip{padding:2px 4px;font-size:.55rem;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;word-break:break-word;line-height:1.1}.drawer{top:auto;bottom:0;right:0;left:0;width:100%;height:auto;max-height:85vh;border-left:none;border-top:1px solid var(--border);border-radius:20px 20px 0 0;animation:slideUp .3s cubic-bezier(.16,1,.3,1)}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.drawer-header{padding:20px 20px 12px}.drawer-body{padding:16px 20px}.drawer-footer{padding:16px 20px max(16px,env(safe-area-inset-bottom))}.drawer-task-item{padding:12px;gap:6px}.dti-title{font-size:.85rem}.dti-desc{font-size:.75rem}.members-header{grid-template-columns:1fr 85px 0 70px;padding:10px 12px;gap:8px;font-size:.6rem}.members-header span:nth-child(3){display:none}.member-row-full{grid-template-columns:1fr 85px 0 70px;padding:12px;gap:8px}.member-row-full>:nth-child(3){display:none}.member-avatar{width:32px;height:32px;font-size:.8rem}.member-email{font-size:.75rem;word-break:break-all}.role-chip{font-size:.65rem;padding:2px 6px}.settings-grid{grid-template-columns:1fr;gap:16px}.settings-tabs{flex-direction:row;overflow-x:auto;border:none;background:transparent;border-radius:0;padding-bottom:0;border-bottom:1px solid var(--border)}.settings-tabs::-webkit-scrollbar{display:none}.settings-tab{padding:10px 16px;font-size:.8rem;border-bottom:2px solid transparent!important;white-space:nowrap;font-weight:600;color:var(--text-muted)}.settings-tab.active{border-bottom-color:var(--primary)!important;background:transparent;color:var(--text)}.settings-content{padding:20px;border-radius:12px}.task-form-grid{grid-template-columns:1fr;gap:16px}.task-form-main,.task-form-side{padding:20px 16px;border-radius:12px}.task-form-side .form-label{margin-bottom:12px}.form-input,.form-select,.form-textarea{width:100%;box-sizing:border-box;font-size:1rem}.form-textarea{min-height:100px}.form-actions{flex-direction:column-reverse;gap:10px}.form-actions .btn-danger,.form-actions .btn-ghost,.form-actions .btn-primary{width:100%;justify-content:center;padding:12px;font-size:.9rem}.page-back{display:flex;flex-direction:column;gap:4px}.page-back .page-title{font-size:1.4rem;margin:0}.back-link{font-size:.8rem}.activity-log{max-height:200px;overflow-y:auto}.act-time{display:none}.version-info{font-size:.7rem}}.auth-split{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.auth-left{background:linear-gradient(145deg,#0f0c29,#1a1a5c 45%,#24243e);display:flex;flex-direction:column;justify-content:space-between;padding:48px;position:relative;overflow:hidden}.auth-left:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 20% 30%,rgba(99,102,241,.25) 0,transparent 55%),radial-gradient(ellipse at 80% 80%,rgba(139,92,246,.2) 0,transparent 50%)}.auth-left-brand{display:flex;align-items:center;gap:12px;z-index:1}.auth-brand-icon{width:40px;height:40px;border-radius:10px;background:linear-gradient(135deg,#6366f1,#8b5cf6);display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px rgba(99,102,241,.4)}.auth-brand-name{font-size:1.1rem;font-weight:800;color:#fff}.auth-left-content{z-index:1}.auth-left-headline{font-size:2.4rem;font-weight:800;color:#fff;line-height:1.2;margin-bottom:16px}.auth-left-headline span{background:linear-gradient(90deg,#818cf8,#c084fc);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.auth-left-sub{font-size:.95rem;color:hsla(0,0%,100%,.5);line-height:1.6;max-width:340px}.auth-features{display:flex;flex-direction:column;gap:14px;margin-top:32px}.auth-feature{display:flex;align-items:flex-start;gap:12px}.auth-feature-icon{width:36px;height:36px;border-radius:8px;flex-shrink:0;background:hsla(0,0%,100%,.08);border:1px solid hsla(0,0%,100%,.12);display:flex;align-items:center;justify-content:center}.auth-feature-icon .icon{font-size:18px;color:#818cf8}.auth-feature-text{display:flex;flex-direction:column;gap:2px}.auth-feature-title{font-size:.875rem;font-weight:600;color:#fff}.auth-feature-desc{font-size:.78rem;color:hsla(0,0%,100%,.4)}.auth-left-footer{z-index:1}.auth-stats{display:flex;gap:32px}.auth-stat-value{font-size:1.5rem;font-weight:800;color:#fff}.auth-stat-label{font-size:.75rem;color:hsla(0,0%,100%,.4);margin-top:2px}.auth-deco{position:absolute;top:38%;right:-50px;background:hsla(0,0%,100%,.05);border:1px solid hsla(0,0%,100%,.1);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:16px;padding:20px;width:190px;animation:float 6s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}.auth-deco-row{display:flex;align-items:center;gap:8px;margin-bottom:10px}.auth-deco-dot{width:8px;height:8px;border-radius:50%}.auth-deco-line{height:6px;border-radius:3px;background:hsla(0,0%,100%,.15);flex:1 1}.auth-deco-line.short{flex:0.6 1}.auth-deco-bar{height:32px;border-radius:8px;background:rgba(99,102,241,.25);margin-top:8px;display:flex;align-items:center;justify-content:center}.auth-deco-bar .icon{font-size:16px;color:#818cf8}.auth-right{background:var(--bg);display:flex;align-items:center;justify-content:center;padding:48px 40px}.auth-form-wrap{width:100%;max-width:420px}.auth-form-header{margin-bottom:32px}.auth-form-title{font-size:1.75rem;font-weight:800;color:var(--text);margin-bottom:6px}.auth-form-sub{font-size:.9rem;color:var(--text-muted)}.auth-form-sub a{color:var(--primary);font-weight:600}.auth-form-sub a:hover{text-decoration:underline}.slug-bar{display:flex;align-items:center;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;transition:border-color .15s}.slug-bar:focus-within{border-color:var(--primary)}.slug-prefix{padding:10px 12px;background:var(--surface);border-right:1px solid var(--border);font-size:.8rem;color:var(--text-muted);white-space:nowrap;flex-shrink:0}.slug-bar input{border:none!important;background:transparent;border-radius:0!important;flex:1 1;padding:10px 12px;font-family:JetBrains Mono,Fira Code,Courier New,monospace;font-size:.9rem}.slug-bar input:focus{outline:none;border-color:transparent!important}.slug-preview{display:flex;align-items:center;gap:6px;padding:5px 10px;background:var(--primary-soft);border:1px solid rgba(99,102,241,.2);border-radius:var(--radius-sm);font-size:.76rem;color:var(--primary-text);margin-top:6px;overflow:hidden}.slug-preview .icon{font-size:13px;flex-shrink:0}.slug-preview-text{font-family:monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.field-group{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.field-label{font-size:.82rem;font-weight:600;color:var(--text-muted);display:flex;align-items:center;justify-content:space-between}.field-label-right{font-size:.78rem;font-weight:400;color:var(--primary);cursor:pointer}.field-label-right:hover{text-decoration:underline}.pw-wrap input{padding-right:44px;width:100%}.pw-toggle{padding:4px;border-radius:4px}.pw-toggle .icon{font-size:18px}.pw-strength{margin-top:6px}.pw-strength-bars{display:flex;gap:4px;margin-bottom:4px}.pw-strength-bar{flex:1 1;height:3px;border-radius:2px;background:var(--border);transition:background .25s ease}.pw-strength-bar.active-weak{background:#ef4444}.pw-strength-bar.active-fair{background:#f59e0b}.pw-strength-bar.active-strong{background:#10b981}.pw-strength-label{font-size:.72rem;color:var(--text-muted)}.pw-strength-label.weak{color:#ef4444}.pw-strength-label.fair{color:#f59e0b}.pw-strength-label.strong{color:#10b981}.auth-submit{width:100%;padding:12px;font-size:.95rem;font-weight:700;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:opacity .15s,transform .1s,box-shadow .2s;box-shadow:0 4px 16px rgba(99,102,241,.35);display:flex;align-items:center;justify-content:center;gap:8px;margin-top:8px}.auth-submit:hover:not(:disabled){opacity:.92;transform:translateY(-1px);box-shadow:0 6px 20px rgba(99,102,241,.45)}.auth-submit:active:not(:disabled){transform:translateY(0)}.auth-submit:disabled{opacity:.5;cursor:not-allowed}.auth-google-btn{width:100%;padding:11px;font-size:.9rem;font-weight:600;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;transition:background .15s,border-color .15s;margin-bottom:16px}.auth-google-btn:hover{background:var(--surface-2);border-color:var(--text-muted)}.auth-divider{display:flex;align-items:center;gap:12px;color:var(--text-muted);font-size:.78rem;margin-bottom:16px}.auth-divider:after,.auth-divider:before{content:"";flex:1 1;height:1px;background:var(--border)}.auth-error{display:flex;align-items:center;gap:8px;background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.3);color:#ef4444;border-radius:var(--radius-sm);padding:10px 14px;font-size:.85rem;margin-bottom:16px;animation:shake .3s ease}@keyframes shake{0%,to{transform:translateX(0)}20%,60%{transform:translateX(-4px)}40%,80%{transform:translateX(4px)}}.auth-error .icon{font-size:16px;flex-shrink:0}.terms-row{display:flex;align-items:flex-start;gap:10px;font-size:.8rem;color:var(--text-muted);margin-bottom:4px}.terms-row input[type=checkbox]{width:16px;height:16px;flex-shrink:0;margin-top:1px;accent-color:var(--primary);cursor:pointer}.terms-row a{color:var(--primary)}.auth-switch{text-align:center;margin-top:24px;font-size:.85rem;color:var(--text-muted)}.auth-switch a{color:var(--primary);font-weight:600}.auth-switch a:hover{text-decoration:underline}.btn-spinner{width:16px;height:16px;border:2px solid hsla(0,0%,100%,.35);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}.input-icon-wrap{position:relative;display:flex;align-items:center}.input-icon-wrap .icon{position:absolute;left:12px;font-size:18px;color:var(--text-muted);pointer-events:none}.input-icon-wrap input{padding-left:40px}@media (max-width:768px){.auth-split{grid-template-columns:1fr}.auth-left{display:none}.auth-right{align-items:flex-start;padding:48px 20px 32px}.auth-form-wrap{max-width:100%}.auth-form-title{font-size:1.5rem}}.slug-bar-ok{border-color:#10b981!important}.slug-bar-taken{border-color:#ef4444!important}.slug-bar-icon{justify-content:center;padding:0 10px;flex-shrink:0}.slug-bar-icon,.slug-status{display:flex;align-items:center}.slug-status{gap:6px;font-size:.78rem;font-weight:500;padding:5px 10px;border-radius:var(--radius-sm);margin-top:6px;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.slug-status .icon{font-size:14px;flex-shrink:0}.slug-status.checking{background:rgba(99,102,241,.08);color:var(--primary-text);border:1px solid rgba(99,102,241,.15)}.slug-status.available{background:rgba(16,185,129,.1);color:#10b981;border:1px solid rgba(16,185,129,.25)}.slug-status.taken{background:rgba(239,68,68,.1);color:#ef4444;border:1px solid rgba(239,68,68,.25)}.slug-status.invalid{background:rgba(245,158,11,.1);color:#f59e0b;border:1px solid rgba(245,158,11,.25)}.slug-status-spinner{display:inline-block;width:12px;height:12px;flex-shrink:0;border:2px solid;border-top:2px solid transparent;border-radius:50%;animation:spin .6s linear infinite;opacity:.7}.settings-banner{display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:8px;font-size:.85rem;font-weight:500;margin-bottom:16px;animation:fadeIn .2s ease}.settings-banner-success{background:rgba(16,185,129,.1);border:1px solid rgba(16,185,129,.3);color:#10b981}.settings-banner-error{background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.3);color:#ef4444}.settings-divider{height:1px;background:var(--border);margin:24px 0}.settings-subsection-title{font-size:.875rem;font-weight:700;color:var(--text);margin:0 0 16px}.settings-loading{display:flex;align-items:center;justify-content:center;padding:40px}.input-error{border-color:#ef4444!important}.input-hint-error{color:#ef4444!important}.security-label{display:flex;align-items:center;font-size:.875rem}.danger-box-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.danger-box-header h3{margin:0;font-size:.95rem;color:#ef4444}.drawer-body{padding:0 24px;overflow-y:auto;flex:1 1}.drawer-footer{display:flex;gap:10px;padding:16px 24px;border-top:1px solid var(--border);background:var(--surface);flex-shrink:0}.drawer-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:transparent;border-radius:6px;cursor:pointer;color:var(--text-muted);transition:background .15s}.drawer-close:hover{background:var(--border)}.pw-wrap{position:relative;display:flex;align-items:center}.pw-wrap .form-input{padding-right:40px}.pw-toggle{position:absolute;right:10px;background:none;border:none;cursor:pointer;color:var(--text-muted);display:flex;align-items:center;transition:color .15s}.member-name,.pw-toggle:hover{color:var(--text)}.member-name{font-size:.875rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.input-hint{display:block;font-size:.72rem;color:var(--text-muted);margin-top:4px;line-height:1.4}@keyframes sk-shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}.sk{background:linear-gradient(90deg,var(--surface-2) 25%,color-mix(in srgb,var(--surface-2) 60%,var(--surface)) 50%,var(--surface-2) 75%);background-size:800px 100%;animation:sk-shimmer 1.6s linear infinite;border-radius:4px}.sk-h12{height:12px}.sk-h14{height:14px}.sk-h16{height:16px}.sk-h18{height:18px}.sk-h20{height:20px}.sk-h24{height:24px}.sk-h28{height:28px}.sk-h32{height:32px}.sk-h36{height:36px}.sk-h40{height:40px}.sk-h48{height:48px}.sk-h64{height:64px}.sk-h80{height:80px}.sk-h100{height:100px}.sk-h120{height:120px}.sk-h160{height:160px}.sk-h200{height:200px}.sk-w20{width:20%}.sk-w30{width:30%}.sk-w40{width:40%}.sk-w50{width:50%}.sk-w60{width:60%}.sk-w70{width:70%}.sk-w80{width:80%}.sk-w100{width:100%}.sk-circle{border-radius:50%}.sk-r8{border-radius:8px}.sk-r12{border-radius:12px}.sk-page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.sk-page-header-left{display:flex;flex-direction:column;gap:8px}.sk-btn{border-radius:8px}.sk-dashboard{display:flex;flex-direction:column;gap:24px}.sk-kpi-row{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:16px;gap:16px}.sk-kpi-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px;display:flex;flex-direction:column;gap:10px}.sk-widget-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}.sk-widget{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px;display:flex;flex-direction:column;gap:14px}.sk-bar-row{display:flex;align-items:center;gap:10px}.sk-bar-track{flex:1 1;height:8px;border-radius:4px}.sk-feed-row{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--border)}.sk-feed-avatar{width:36px;height:36px;flex-shrink:0;border-radius:50%}.sk-my-task-row{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid var(--border);border-radius:10px;margin-bottom:8px}.sk-board-page{display:flex;flex-direction:column;gap:16px}.sk-view-tabs{display:flex;gap:8px}.sk-tab{width:80px;height:32px;border-radius:8px}.sk-filter-bar{display:flex;gap:12px}.sk-filter{flex:1 1;height:36px;border-radius:8px}.sk-kanban{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:20px;gap:20px;align-items:start}.sk-kanban-col{background:var(--surface);border-radius:var(--radius);border:1px solid var(--border);border-top:4px solid var(--border);padding:16px;display:flex;flex-direction:column;gap:12px}.sk-col-header{display:flex;align-items:center;gap:10px;margin-bottom:4px}.sk-col-badge{width:28px;height:20px;border-radius:10px}.sk-task-card{background:var(--surface-2);border:1px solid var(--border);border-radius:10px;padding:14px;display:flex;flex-direction:column;gap:10px}.sk-task-footer{display:flex;align-items:center;justify-content:space-between}.sk-avatar-sm{width:24px;height:24px;border-radius:50%}.sk-add-task{height:36px;border-radius:8px;margin-top:4px}.sk-list-page{display:flex;flex-direction:column;gap:16px}.sk-list-table{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.sk-list-header{padding:10px 20px;background:var(--surface-2)}.sk-list-header,.sk-list-row{display:grid;grid-template-columns:24px 1fr 100px 120px 80px 80px;grid-gap:12px;gap:12px;border-bottom:1px solid var(--border)}.sk-list-row{padding:14px 20px;align-items:center}.sk-list-row:last-child{border-bottom:none}.sk-check{width:18px;height:18px;border-radius:4px;flex-shrink:0}.sk-calendar-page{display:flex;flex-direction:column;gap:16px}.sk-cal-nav{display:flex;align-items:center;gap:12px;margin-bottom:4px}.sk-cal-nav-btn{width:44px;height:36px;border-radius:8px}.sk-cal-label{width:180px;height:28px;border-radius:8px}.sk-cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:1px;gap:1px;background:var(--border);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.sk-cal-day-header{background:var(--surface-2);height:34px}.sk-cal-cell{background:var(--surface);min-height:110px;padding:8px;display:flex;flex-direction:column;gap:6px}.sk-cal-num{width:22px;height:22px;border-radius:50%}.sk-cal-chip{height:20px;border-radius:4px}.sk-members-page{display:flex;flex-direction:column;gap:16px}.sk-members-table{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.sk-members-header{padding:10px 20px;background:var(--surface-2)}.sk-member-row,.sk-members-header{display:grid;grid-template-columns:1fr 140px 100px 100px;grid-gap:16px;gap:16px;border-bottom:1px solid var(--border)}.sk-member-row{padding:16px 20px;align-items:center}.sk-member-row:last-child{border-bottom:none}.sk-member-info{display:flex;align-items:center;gap:12px}.sk-avatar{width:38px;height:38px;border-radius:50%;flex-shrink:0}.sk-role-chip{height:26px;width:80px;border-radius:12px}.sk-action-btn{height:30px;width:72px;border-radius:6px}.sk-audit-page{display:flex;flex-direction:column;gap:16px}.sk-audit-table{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.sk-audit-header{padding:10px 20px;background:var(--surface-2)}.sk-audit-header,.sk-audit-row{display:grid;grid-template-columns:24px 140px 160px 80px 180px 100px;grid-gap:12px;gap:12px;border-bottom:1px solid var(--border)}.sk-audit-row{padding:14px 20px;align-items:center}.sk-audit-row:last-child{border-bottom:none}.sk-expand{width:16px;height:16px;border-radius:3px}.sk-action-badge{height:20px;width:70px;border-radius:4px}.sk-settings-page{display:flex;flex-direction:column;gap:20px}.sk-settings-tabs{display:flex;gap:4px}.sk-settings-tab{height:40px;border-radius:8px}.sk-settings-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:28px;display:flex;flex-direction:column;gap:20px}.sk-settings-field{display:flex;flex-direction:column;gap:8px}.sk-settings-input{height:42px;border-radius:8px}.sk-settings-grid{display:grid;grid-template-columns:var(--settings-sidebar,200px) 1fr;grid-gap:24px;gap:24px}.sk-task-form{display:grid;grid-template-columns:1fr 320px;grid-gap:24px;gap:24px;align-items:start}.sk-task-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:28px;gap:18px}.sk-form-field,.sk-task-panel{display:flex;flex-direction:column}.sk-form-field{gap:8px}.sk-form-input{height:42px;border-radius:8px}.sk-form-textarea{height:120px;border-radius:8px}.sk-form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:8px}.sk-form-btn{height:40px;border-radius:8px}@media (max-width:900px){.sk-kanban,.sk-task-form,.sk-widget-row{grid-template-columns:1fr}.sk-kpi-row{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.sk-kpi-row{grid-template-columns:repeat(2,1fr);gap:12px}.sk-kanban{grid-template-columns:1fr;gap:16px}.sk-list-header{display:none}.sk-list-row{grid-template-columns:24px 1fr 80px 60px}.sk-audit-header,.sk-list-row>:nth-child(4),.sk-list-row>:nth-child(5){display:none}.sk-audit-row{grid-template-columns:20px 1fr auto}.sk-audit-row>:nth-child(n+4),.sk-members-header{display:none}.sk-member-row{grid-template-columns:1fr 80px 72px}.sk-member-row>:nth-child(3){display:none}.sk-settings-grid{grid-template-columns:1fr}.sk-cal-cell{min-height:80px}}.unsaved-badge{display:inline-flex;align-items:center;gap:4px;margin-left:12px;font-size:.72rem;font-weight:600;letter-spacing:.03em;background:rgba(245,158,11,.12);border:1px solid rgba(245,158,11,.3);border-radius:20px;padding:2px 10px;vertical-align:middle}.unsaved-badge,.unsaved-badge .icon{color:var(--priority-medium,#f59e0b)}.unsaved-badge .icon{font-size:8px!important}.input-error{border-color:var(--danger)!important;box-shadow:0 0 0 3px rgba(239,68,68,.12)!important}.field-error{display:block;margin-top:4px;font-size:.78rem;color:var(--danger);font-weight:500}.desc-history-toggle{display:inline-flex;align-items:center;gap:4px;background:var(--surface-2);border:1px solid var(--border);color:var(--text-muted);border-radius:6px;padding:3px 10px;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .15s}.desc-history-toggle:hover{background:var(--primary-soft);color:var(--primary-text);border-color:var(--primary-soft)}.desc-history-toggle .icon{font-size:14px!important}.desc-history-panel{margin-top:12px;border:1px solid var(--border);border-radius:10px;overflow:hidden;background:var(--surface-2)}.desc-history-title{align-items:center;gap:6px;padding:10px 14px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);background:var(--surface)}.desc-history-title,.desc-version-row{display:flex;border-bottom:1px solid var(--border)}.desc-version-row{padding:14px;flex-direction:column;gap:8px;transition:background .1s}.desc-version-row:last-child{border-bottom:none}.desc-version-current{background:rgba(99,102,241,.04)}.desc-version-header{display:flex;align-items:center;gap:8px}.desc-version-badge{font-size:.7rem;font-weight:800;padding:2px 8px;border-radius:10px;background:var(--surface);border:1px solid var(--border);color:var(--text-muted)}.desc-version-current .desc-version-badge{background:var(--primary);color:#fff;border-color:var(--primary)}.desc-version-current-label{font-size:.68rem;font-weight:700;color:var(--primary);background:var(--primary-soft);border-radius:8px;padding:2px 8px}.desc-version-meta{font-size:.72rem;color:var(--text-muted);margin-left:auto}.desc-version-content{font-size:.82rem;color:var(--text);line-height:1.55;white-space:pre-wrap;word-break:break-word;background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:10px 12px;max-height:120px;overflow-y:auto}.desc-restore-btn{display:inline-flex;align-items:center;gap:4px;align-self:flex-start;font-size:.75rem;font-weight:600;color:var(--primary-text);background:var(--primary-soft);border:1px solid transparent;border-radius:6px;padding:4px 10px;cursor:pointer;transition:all .15s}.desc-restore-btn:hover{background:var(--primary);color:#fff}.desc-restore-btn .icon{font-size:14px!important}.activity-row{display:flex;gap:10px;padding:10px 0;border-bottom:1px solid var(--border);align-items:flex-start}.activity-row:last-of-type{border-bottom:none}.act-header{display:flex;align-items:center;flex-wrap:wrap;gap:2px}.act-changes{margin:6px 0 0}.act-change-line{align-items:center;color:var(--text-muted);padding:3px 8px;border-radius:5px}.btn-primary:disabled:not([aria-busy]){opacity:.45;cursor:not-allowed}.act-accordion{border-bottom:1px solid var(--border)}.act-accordion:last-of-type{border-bottom:none}.act-accordion-header{display:flex;align-items:center;gap:10px;padding:10px 4px;border-radius:7px;transition:background .12s}.act-accordion-header.act-clickable{cursor:pointer}.act-accordion-header.act-clickable:hover{background:var(--surface-2)}.act-chevron{margin-left:auto;font-size:18px!important;color:var(--text-muted);transition:transform .2s cubic-bezier(.4,0,.2,1);flex-shrink:0}.act-chevron-open{transform:rotate(180deg)}.act-changes{margin:0 0 10px 34px;padding:0;list-style:none;display:flex;flex-direction:column;gap:4px}.act-change-line{display:flex;align-items:flex-start;gap:6px;font-size:.78rem;color:var(--text);padding:5px 10px;border-radius:6px;background:var(--surface-2);border:1px solid var(--border);line-height:1.4}.act-change-icon{font-size:12px!important;color:var(--primary);flex-shrink:0;margin-top:1px}.activity-row{display:none}