:root{--sidebar-width: 250px;--topbar-height: 60px;--body-bg: #f1f5f9;--surface-bg: #fff;--surface-alt-bg: #f8fafc;--hover-bg: #f8fafc;--inline-edit-hover: #eff6ff;--text-primary: #1e293b;--text-secondary: #475569;--text-muted: #64748b;--text-subtle: #94a3b8;--border-color: #e2e8f0;--card-shadow-hover: rgba(0,0,0,.08);--deal-card-shadow: rgba(0,0,0,.1);--dropdown-shadow: rgba(0,0,0,.15);--accent-color: #3b82f6;--success-color: #059669;--sidebar-bg: #1e293b;--sidebar-hover: #334155;--sidebar-active: #3b82f6;--sidebar-text: #cbd5e1;--sidebar-text-muted: #94a3b8;--sidebar-section-text: #64748b;--sidebar-border: #334155;--login-card-bg: #fff;--login-title-color: #1e293b;--login-card-shadow: rgba(0,0,0,.3);--topbar-bg: #fff;--topbar-border: #e2e8f0;--focus-ring: rgba(13,110,253,.25);--focus-border: #86b7fe;--avatar-hover-bg: #eff6ff;--avatar-hover-border: #93c5fd}[data-bs-theme=dark]{--body-bg: #0f172a;--surface-bg: #1e293b;--surface-alt-bg: #1e293b;--hover-bg: #334155;--inline-edit-hover: rgba(59,130,246,.1);--text-primary: #e2e8f0;--text-secondary: #cbd5e1;--text-muted: #94a3b8;--text-subtle: #64748b;--border-color: #334155;--card-shadow-hover: rgba(0,0,0,.3);--deal-card-shadow: rgba(0,0,0,.3);--dropdown-shadow: rgba(0,0,0,.4);--accent-color: #60a5fa;--success-color: #34d399;--sidebar-bg: #0b1121;--sidebar-hover: #1e293b;--sidebar-text: #94a3b8;--sidebar-text-muted: #64748b;--sidebar-section-text: #475569;--sidebar-border: #1e293b;--login-card-bg: #1e293b;--login-title-color: #e2e8f0;--login-card-shadow: rgba(0,0,0,.5);--focus-ring: rgba(96,165,250,.25);--focus-border: #3b82f6;--avatar-hover-bg: rgba(59,130,246,.1);--avatar-hover-border: #3b82f6;--topbar-bg: #111827;--topbar-border: #1e293b}*{box-sizing:border-box}.skip-nav{position:absolute;top:-100%;left:1rem;z-index:10000;padding:.75rem 1.5rem;background:var(--accent-color);color:#fff;border-radius:0 0 8px 8px;text-decoration:none;font-weight:600;transition:top .2s}.skip-nav:focus{top:0;color:#fff}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--body-bg)!important;margin:0;min-height:100vh}.login-wrapper{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1e293b,#334155)}.login-card{width:100%;max-width:420px;padding:2.5rem;background:var(--login-card-bg);border-radius:12px;box-shadow:0 20px 60px var(--login-card-shadow)}.login-card h2{text-align:center;margin-bottom:1.5rem;color:var(--login-title-color)}.app-wrapper{display:flex;min-height:100vh}.sidebar{width:var(--sidebar-width);background:var(--sidebar-bg);color:var(--sidebar-text);position:fixed;top:0;left:0;height:100vh;z-index:1040;display:flex;flex-direction:column;transition:width .2s ease;overflow:hidden}.sidebar-brand{padding:.875rem 1.25rem;color:#fff;border-bottom:1px solid var(--sidebar-border);display:flex;align-items:center;gap:.625rem;min-height:52px;flex-shrink:0}.sidebar-nav{padding:.5rem 0;flex:1;overflow-y:auto;overflow-x:hidden}.sidebar-nav .nav-item{padding:.5rem 1.25rem;display:flex;align-items:center;gap:.75rem;color:var(--sidebar-text-muted);text-decoration:none;cursor:pointer;transition:background .15s,color .15s;font-size:.875rem;white-space:nowrap;position:relative;border:none;background:none;width:100%;text-align:left}.sidebar-nav .nav-item:hover{background:var(--sidebar-hover);color:#fff}.sidebar-nav .nav-item.active{background:var(--sidebar-active);color:#fff}.sidebar-nav .nav-item i{width:20px;text-align:center;font-size:1.05rem;flex-shrink:0}.sidebar-section{padding:.875rem 1.25rem .375rem;font-size:.65rem;text-transform:uppercase;letter-spacing:.1em;color:var(--sidebar-section-text);font-weight:600}.sidebar-footer{border-top:1px solid var(--sidebar-border);padding:.375rem 0;flex-shrink:0}.sidebar-footer .nav-item{color:var(--sidebar-text-muted);font-size:.8rem}.sidebar-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:1039;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}body.sidebar-collapsed .sidebar{width:64px}body.sidebar-collapsed .sidebar-label{display:none!important}body.sidebar-collapsed .sidebar-brand{padding:.875rem;justify-content:center}body.sidebar-collapsed .sidebar-nav .nav-item{padding:.625rem;justify-content:center}body.sidebar-collapsed .sidebar-section{padding:.5rem .75rem}body.sidebar-collapsed .sidebar-section:after{content:"";display:block;height:1px;background:var(--sidebar-border)}body.sidebar-collapsed .main-content{margin-left:64px}body.sidebar-collapsed .sidebar .nav-item:hover:after{content:attr(data-title);position:absolute;left:100%;top:50%;transform:translateY(-50%);background:var(--sidebar-bg);color:#fff;padding:4px 12px;border-radius:4px;font-size:.8rem;white-space:nowrap;z-index:10000;margin-left:8px;pointer-events:none;box-shadow:0 2px 8px #0003}.main-content{margin-left:var(--sidebar-width);flex:1;min-height:100vh;transition:margin-left .2s ease;overflow-x:hidden}.topbar{height:var(--topbar-height);background:var(--topbar-bg);border-bottom:1px solid var(--topbar-border);display:flex;align-items:center;justify-content:space-between;padding:0 1rem;position:sticky;top:0;z-index:999}.stat-card{background:var(--surface-bg);border-radius:10px;padding:1.25rem;border:1px solid var(--border-color);transition:box-shadow .2s}.stat-card:hover{box-shadow:0 4px 12px var(--card-shadow-hover)}.stat-card .stat-icon{width:48px;height:48px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.25rem;color:#fff}.stat-card .stat-value{font-size:1.75rem;font-weight:700;color:var(--text-primary)}.stat-card .stat-label{font-size:.85rem;color:var(--text-muted)}.table-wrapper{background:var(--surface-bg);border-radius:10px;border:1px solid var(--border-color);overflow:hidden}.table-wrapper .table{margin-bottom:0}.table-wrapper .table th{background:var(--surface-alt-bg);border-bottom:2px solid var(--border-color);font-weight:600;font-size:.85rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;padding:.75rem 1rem}.table-wrapper .table td{padding:.75rem 1rem;vertical-align:middle;font-size:.925rem}.table-wrapper .table tbody tr:hover{background:var(--hover-bg)}[id$=-table-wrap] .table-responsive{overflow-y:auto}[id$=-table-wrap] .table thead th{position:sticky;top:0;z-index:20;box-shadow:inset 0 -1px 0 var(--border-color)}.card .table thead th{background:var(--surface-alt-bg);color:var(--text-secondary);border-bottom-color:var(--border-color)}.card .table tbody tr:hover{background:var(--hover-bg)}.card .table{--bs-table-bg: transparent}#quota-table thead th,#quota-table tfoot th{background:var(--surface-alt-bg);color:var(--text-secondary)}#quota-table thead th.quota-total-col,#quota-table tfoot th.quota-total-col{background:var(--hover-bg)}#quota-table tbody td.quota-sticky{background:var(--surface-bg)}#quota-table tbody td.quota-total-col{background:var(--hover-bg)}.pipeline-board{display:flex;gap:1rem;overflow-x:auto;padding-bottom:1rem}.pipeline-column{min-width:280px;max-width:320px;flex:1;background:var(--surface-alt-bg);border-radius:10px;border:1px solid var(--border-color)}.pipeline-column-header{padding:.75rem 1rem;font-weight:600;font-size:.9rem;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center}.pipeline-column-body{padding:.75rem;min-height:100px}.pipeline-card{cursor:pointer}.pipeline-card:focus{outline:2px solid var(--accent-color);outline-offset:1px;box-shadow:0 2px 8px var(--deal-card-shadow)}.pipeline-col-total{font-weight:600}.deal-card{background:var(--surface-bg);border-radius:8px;padding:.75rem;margin-bottom:.5rem;border:1px solid var(--border-color);cursor:pointer;transition:box-shadow .2s}.deal-card:hover{box-shadow:0 2px 8px var(--deal-card-shadow)}.deal-card .deal-title{font-weight:600;font-size:.9rem;color:var(--text-primary)}.deal-card .deal-value{font-size:.85rem;color:var(--success-color);font-weight:600}.deal-card .deal-meta{font-size:.8rem;color:var(--text-muted);margin-top:.25rem}.badge-status{padding:.25rem .6rem;border-radius:20px;font-size:.75rem;font-weight:600}.badge-lead{background:#dbeafe;color:#1d4ed8}.badge-prospect{background:#fef3c7;color:#b45309}.badge-customer,.badge-active{background:#d1fae5;color:#065f46}.badge-inactive,.badge-priority-low{background:#f1f5f9;color:#64748b}.badge-priority-medium{background:#dbeafe;color:#1d4ed8}.badge-priority-high{background:#fef3c7;color:#b45309}.badge-priority-urgent{background:#fee2e2;color:#dc2626}[data-bs-theme=dark] .badge-lead{background:#3b82f633;color:#93c5fd}[data-bs-theme=dark] .badge-prospect{background:#f59e0b33;color:#fcd34d}[data-bs-theme=dark] .badge-customer,[data-bs-theme=dark] .badge-active{background:#10b98133;color:#6ee7b7}[data-bs-theme=dark] .badge-inactive,[data-bs-theme=dark] .badge-priority-low{background:#64748b33;color:#94a3b8}[data-bs-theme=dark] .badge-priority-medium{background:#3b82f633;color:#93c5fd}[data-bs-theme=dark] .badge-priority-high{background:#f59e0b33;color:#fcd34d}[data-bs-theme=dark] .badge-priority-urgent{background:#ef444433;color:#fca5a5}[data-bs-theme=dark] .btn-primary{--bs-btn-bg: #2563eb;--bs-btn-border-color: #2563eb;--bs-btn-hover-bg: #1d4ed8;--bs-btn-hover-border-color: #1d4ed8;--bs-btn-active-bg: #1e40af;--bs-btn-active-border-color: #1e40af}[data-bs-theme=dark] .btn-outline-primary{--bs-btn-color: #60a5fa;--bs-btn-border-color: #3b82f6;--bs-btn-hover-bg: #2563eb;--bs-btn-hover-border-color: #2563eb;--bs-btn-hover-color: #fff;--bs-btn-active-bg: #1d4ed8;--bs-btn-active-border-color: #1d4ed8;--bs-btn-active-color: #fff}[data-bs-theme=dark] .navbar.bg-primary{background:#1e293b!important;border-bottom:1px solid #334155}[data-bs-theme=dark] .bg-light{background-color:#ffffff0d!important}.server-stat-card{box-shadow:0 1px 3px #0000001a}.server-chart-wrap{background:#1a1a2e;border-radius:10px;padding:.75rem 1rem .5rem}.server-chart-wrap canvas{width:100%;display:block}.server-pulse-dot{width:8px;height:8px;background:#22c55e;border-radius:50%;display:inline-block;animation:server-pulse 2s ease-in-out infinite}@keyframes server-pulse{0%,to{opacity:1;box-shadow:0 0 #22c55e66}50%{opacity:.6;box-shadow:0 0 0 6px #22c55e00}}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background:var(--border-color);border:1px solid var(--border-color);border-radius:10px;overflow:hidden}.calendar-header{background:var(--surface-alt-bg);padding:.5rem;text-align:center;font-weight:600;font-size:.8rem;color:var(--text-secondary)}.calendar-day{background:var(--surface-bg);min-height:100px;padding:.5rem}.calendar-day.other-month{background:var(--surface-alt-bg);opacity:.5}.calendar-day.today{background:var(--inline-edit-hover)}.calendar-day .day-number{font-size:.85rem;font-weight:600;color:var(--text-secondary)}.calendar-day .task-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin:1px}.modal-header{border-bottom:1px solid var(--border-color)}.modal-footer{border-top:1px solid var(--border-color)}@media(max-width:991.98px){.sidebar{width:var(--sidebar-width);transform:translate(-100%)}body.sidebar-open .sidebar{transform:translate(0)}body.sidebar-open .sidebar-overlay{display:block}.main-content,body.sidebar-collapsed .main-content{margin-left:0!important}body.sidebar-collapsed .sidebar{width:var(--sidebar-width)}}@media(max-width:768px){.pipeline-board{flex-direction:column}.pipeline-column{max-width:100%;min-width:auto}}.cursor-pointer{cursor:pointer}.text-truncate-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}#filePreviewModal{z-index:1060}#filePreviewModal .modal-body{height:calc(100vh - 52px)}#filePreviewModal .modal-body iframe{width:100%;height:100%;border:none}#filePreviewModal .modal-body img{max-width:100%;height:auto}.file-preview-spreadsheet table{width:100%;border-collapse:collapse;font-size:.85rem;background:var(--surface-bg)}.file-preview-spreadsheet table td,.file-preview-spreadsheet table th{border:1px solid var(--border-color);padding:.35rem .6rem;white-space:nowrap;max-width:300px;overflow:hidden;text-overflow:ellipsis}.file-preview-spreadsheet table tr:first-child td,.file-preview-spreadsheet table th{background:var(--surface-alt-bg);font-weight:600;color:var(--text-secondary);position:sticky;top:0}.file-preview-docx img{max-width:100%;height:auto}.file-preview-docx table{border-collapse:collapse;width:100%;margin:1rem 0}.file-preview-docx table td,.file-preview-docx table th{border:1px solid var(--border-color);padding:.5rem}.file-preview-link{text-decoration:none}.file-preview-link:hover{text-decoration:underline}.file-upload-zone{border:2px dashed transparent;border-radius:6px;padding:6px;transition:border-color .15s,background-color .15s}.file-upload-zone.file-drop-active{border-color:var(--bs-primary);background-color:rgba(var(--bs-primary-rgb),.06)}#company-tab-related .list-group-item,#contact-tab-related .list-group-item{cursor:pointer}.contact-info-company-link,.deal-info-company-link,.deal-info-contact-link{text-decoration:none;font-weight:600}.contact-info-company-link:hover,.deal-info-company-link:hover,.deal-info-contact-link:hover{text-decoration:underline}.entity-name-link{color:var(--text-primary);cursor:pointer}.entity-name-link:hover{color:var(--accent-color)}.inline-editable{cursor:pointer;position:relative}.inline-editable:hover{background:var(--inline-edit-hover)!important}.inline-edit-dropdown{box-shadow:0 4px 16px var(--dropdown-shadow);border-radius:8px;border:1px solid var(--border-color)}.inline-edit-dropdown .dropdown-item{font-size:.9rem;padding:.4rem 1rem}.inline-edit-dropdown .dropdown-item.active{background:var(--accent-color);color:#fff}.inline-edit-dropdown .dropdown-item:hover:not(.active),.inline-edit-dropdown .dropdown-item.focus:not(.active){background:var(--hover-bg)}.inline-edit-dropdown .dropdown-item:focus-visible{outline:2px solid var(--accent-color);outline-offset:-2px}.avatar-option{cursor:pointer;transition:border-color .2s,transform .15s,background .2s}.avatar-option:hover{border-color:var(--avatar-hover-border)!important;transform:scale(1.08);background:var(--avatar-hover-bg)}#nav-user-avatar{transition:transform .2s}.nav-item.dropdown:hover #nav-user-avatar{transform:scale(1.1)}#profile-avatar-preview{transition:border-color .3s}#profile-avatar-preview:hover{border-color:var(--accent-color)!important}.ce-search:empty:before{content:attr(data-placeholder);color:var(--text-muted);pointer-events:none}.ce-search:focus{outline:none;box-shadow:0 0 0 .25rem var(--focus-ring);border-color:var(--focus-border)}.ce-search br{display:none}@media(min-width:992px){#companyDetailModal .nav-tabs,#contactDetailModal .nav-tabs,#dealDetailModal .nav-tabs,#leadDetailModal .nav-tabs{display:none!important}#companyDetailModal .tab-content,#contactDetailModal .tab-content,#dealDetailModal .tab-content,#leadDetailModal .tab-content{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}#companyDetailModal .tab-content>.tab-pane,#contactDetailModal .tab-content>.tab-pane,#dealDetailModal .tab-content>.tab-pane,#leadDetailModal .tab-content>.tab-pane{display:block!important;opacity:1!important;position:relative;border:1px solid var(--border-color);border-radius:8px;padding:1rem;background:var(--surface-bg)}#company-tab-info,#company-tab-related,#company-tab-contracts,#company-tab-activity,#contact-tab-info,#contact-tab-related,#contact-tab-activity,#contact-tab-email,#deal-tab-info,#deal-tab-contracts,#deal-tab-activity,#deal-tab-timeline,#lead-tab-info,#lead-tab-activity,#lead-tab-email{grid-column:1 / -1}#companyDetailModal .tab-content>.tab-pane:before,#contactDetailModal .tab-content>.tab-pane:before,#dealDetailModal .tab-content>.tab-pane:before,#leadDetailModal .tab-content>.tab-pane:before{display:block;font-weight:600;font-size:1rem;color:var(--text-primary);margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:2px solid var(--border-color)}#company-tab-info:before{content:"Company Information"}#company-tab-related:before{content:"Related Contacts & Deals"}#company-tab-notes:before{content:"Notes"}#company-tab-tasks:before{content:"Tasks"}#company-tab-files:before{content:"Files"}#company-tab-contracts:before{content:"Contracts"}#company-tab-activity:before{content:"Activity Log"}#contact-tab-info:before{content:"Contact Information"}#contact-tab-related:before{content:"Related Companies & Deals"}#contact-tab-notes:before{content:"Notes"}#contact-tab-tasks:before{content:"Tasks"}#contact-tab-files:before{content:"Files"}#contact-tab-activity:before{content:"Activity Log"}#contact-tab-email:before{content:"Email History"}#deal-tab-info:before{content:"Deal Information"}#deal-tab-notes:before{content:"Notes"}#deal-tab-tasks:before{content:"Tasks"}#deal-tab-files:before{content:"Files"}#deal-tab-quotes:before{content:"Quotes"}#deal-tab-contracts:before{content:"Contracts"}#deal-tab-activity:before{content:"Activity Log"}#deal-tab-timeline:before{content:"Timeline"}#lead-tab-info:before{content:"Lead Information"}#lead-tab-notes:before{content:"Notes"}#lead-tab-tasks:before{content:"Tasks"}#lead-tab-files:before{content:"Files"}#lead-tab-activity:before{content:"Activity Log"}#lead-tab-email:before{content:"Email History"}#companyDetailModal .modal-body,#contactDetailModal .modal-body,#dealDetailModal .modal-body,#leadDetailModal .modal-body{max-height:calc(100vh - 140px);overflow-y:auto}}.table th.text-center:last-child,.table td.text-center:last-child{white-space:nowrap}.brand-color{color:#2563eb}[data-bs-theme=dark] .brand-color{color:#60a5fa}.brand-gradient-btn{background:linear-gradient(135deg,#2563eb,#3b82f6);color:#fff;font-weight:600;border:none}.brand-gradient-btn:hover{color:#fff;opacity:.9}.email-quoted-text{border-left:3px solid var(--border-color);padding-left:10px;margin:0;color:var(--text-muted)}.notification-dropdown-bg{background:var(--surface-bg);border:1px solid var(--border-color)}.theme-option-card{cursor:pointer;transition:border-color .2s,transform .15s}.theme-option-card:hover{transform:translateY(-2px);border-color:var(--accent-color)!important}.theme-option-card.selected{border-color:var(--accent-color)!important;border-width:2px}.kb-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:flex;align-items:flex-start;justify-content:center;padding-top:15vh;opacity:0;transition:opacity .15s ease;pointer-events:none}.kb-overlay.open{opacity:1;pointer-events:auto}.kb-overlay-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.kb-key{display:inline-block;padding:.15rem .45rem;font-size:.75rem;font-family:Inter,sans-serif;background:var(--surface-alt-bg);border:1px solid var(--border-color);border-radius:4px;color:var(--text-muted);line-height:1.4;white-space:nowrap}.kb-key-sm{display:inline-block;padding:.1rem .3rem;font-size:.65rem;font-family:Inter,sans-serif;background:var(--surface-alt-bg);border:1px solid var(--border-color);border-radius:3px;color:var(--text-muted);line-height:1.3;white-space:nowrap}.kb-help-card{position:relative;z-index:1;background:var(--surface-bg);border:1px solid var(--border-color);border-radius:12px;padding:1.5rem;width:100%;max-width:600px;box-shadow:0 20px 60px #0000004d;transform:scale(.95) translateY(-10px);transition:transform .15s ease}.kb-overlay.open .kb-help-card{transform:scale(1) translateY(0)}.cmd-palette-card{position:relative;z-index:1;background:var(--surface-bg);border:1px solid var(--border-color);border-radius:12px;width:100%;max-width:560px;box-shadow:0 20px 60px #0000004d;overflow:hidden;transform:scale(.95) translateY(-10px);transition:transform .15s ease}.kb-overlay.open .cmd-palette-card{transform:scale(1) translateY(0)}.cmd-palette-input-wrap{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-bottom:1px solid var(--border-color)}.cmd-palette-input{flex:1;border:none;outline:none;background:transparent;font-size:1rem;color:var(--text-primary);font-family:Inter,sans-serif}.cmd-palette-input::placeholder{color:var(--text-subtle)}.cmd-palette-list{max-height:340px;overflow-y:auto;padding:.5rem 0}.cmd-palette-group{padding:.5rem 1rem .25rem;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-subtle)}.cmd-palette-item{display:flex;align-items:center;justify-content:space-between;padding:.5rem 1rem;cursor:pointer;color:var(--text-primary);font-size:.9rem;transition:background .1s}.cmd-palette-item:hover,.cmd-palette-item.active{background:var(--hover-bg)}.cmd-palette-item.active{background:var(--inline-edit-hover)}.cmd-palette-empty{padding:2rem 1rem;text-align:center;color:var(--text-muted);font-size:.9rem}.cmd-palette-footer{display:flex;gap:1rem;padding:.5rem 1rem;border-top:1px solid var(--border-color);font-size:.75rem;color:var(--text-subtle)}.kb-row-selected{outline:2px solid var(--accent-color);outline-offset:-2px;background:var(--inline-edit-hover)!important}.skel-line{height:14px;border-radius:4px;background:var(--border-color);opacity:0;animation:skel-fade-in .2s .15s ease forwards}.skel-circle{border-radius:50%;background:var(--border-color);flex-shrink:0;opacity:0;animation:skel-fade-in .2s .15s ease forwards}.skel-shimmer{position:relative;overflow:hidden}.skel-shimmer:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent 0%,var(--surface-bg) 50%,transparent 100%);opacity:0;animation:skel-shimmer-fade .2s .15s ease forwards,skel-sweep 1.5s ease-in-out .15s infinite}@keyframes skel-sweep{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes skel-fade-in{to{opacity:1}}@keyframes skel-shimmer-fade{to{opacity:.5}}table .skel-shimmer td{position:relative}.empty-state-icon{width:72px;height:72px;border-radius:50%;background:var(--bs-primary-bg-subtle, #cfe2ff);display:inline-flex;align-items:center;justify-content:center}.empty-state-icon i{font-size:2rem;color:var(--bs-primary, #0d6efd)}.bulk-bar{transition:all .15s ease}.bulk-bar .btn-group-sm>.btn,.bulk-bar .btn-sm{font-size:.8rem}th .form-check-input,td .form-check-input{margin:0;vertical-align:middle;cursor:pointer}tr:has(.bulk-select-item:checked){background-color:var(--bs-primary-bg-subtle)!important}.content-area,.container-fluid.py-4{animation:page-fade-in .15s ease-out}@keyframes page-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.btn:active:not(:disabled){transform:scale(.97)}.btn{transition:background .15s,border-color .15s,box-shadow .15s,transform .1s}.table tbody tr{transition:background .12s ease}.inline-editable{transition:background .15s ease}@keyframes inline-flash{0%{background:var(--bs-success-bg-subtle, #d1fae5)}to{background:transparent}}.inline-updated{animation:inline-flash .6s ease-out}.stat-card{transition:box-shadow .2s,transform .2s}.stat-card:hover{transform:translateY(-2px)}.pipeline-card{transition:box-shadow .15s,transform .15s}.pipeline-card:hover{transform:translateY(-1px);box-shadow:0 4px 12px var(--deal-card-shadow)}.pipeline-card:active{transform:translateY(0)}.form-check-input{transition:background-color .15s,border-color .15s,box-shadow .15s,transform .1s}.form-check-input:checked{transform:scale(1.1)}.sortable-col{transition:background .12s ease,color .12s ease}.card .table thead th.sortable-col:hover{background:#edf2f7!important;color:var(--text-primary)}[data-bs-theme=dark] .card .table thead th.sortable-col:hover{background:#334155!important}.entity-name-link{transition:color .12s ease}.toast-container .toast{animation:toast-slide-in .25s ease-out}@keyframes toast-slide-in{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}.sidebar .nav-link{transition:background .15s ease,color .15s ease,padding-left .15s ease}.sidebar .nav-link:hover,.sidebar .nav-link.active{padding-left:calc(.75rem + 3px)}body.sidebar-collapsed .sidebar .nav-link:hover,body.sidebar-collapsed .sidebar .nav-link.active{padding-left:.75rem}.bulk-bar:not(.d-none){animation:bulk-bar-in .2s ease-out}@keyframes bulk-bar-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.modal-content{max-height:calc(100vh - 3.5rem);display:flex;flex-direction:column}.modal .modal-body{overflow-y:auto;flex:1 1 auto}.modal.fade .modal-dialog{transition:transform .2s ease-out,opacity .2s ease-out}.inline-edit-dropdown{animation:dropdown-pop .12s ease-out}@keyframes dropdown-pop{0%{opacity:0;transform:translateY(-4px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.inline-editable .badge{transition:transform .12s ease}.inline-editable:hover .badge{transform:scale(1.05)}
