@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";:root{--primary-blue:#3d7abf;--primary-blue-dark:#2d5f96;--primary-blue-light:#e8f1fa;--accent-orange:#e97a2b;--accent-orange-light:#fef0e6;--bg-white:#fff;--bg-light:#f8f9fa;--bg-sidebar:#f4f6f9;--bg-sidebar-hover:#e8eef6;--text-dark:#1a1a2e;--text-muted:#6c757d;--text-sidebar:#4a5568;--success:#28a745;--warning:#ffc107;--danger:#dc3545;--border:#e2e8f0;--shadow:0 1px 3px #00000014, 0 1px 2px #0000000f;--shadow-md:0 4px 12px #0000001a;--radius:8px;--sidebar-width:260px;--header-height:64px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{background:var(--bg-light);color:var(--text-dark);-webkit-font-smoothing:antialiased;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;line-height:1.5}button,input,select,textarea{font-family:inherit;font-size:inherit}button{cursor:pointer;background:0 0;border:none}a{color:var(--primary-blue);text-decoration:none}.btn{border-radius:var(--radius);white-space:nowrap;align-items:center;gap:6px;padding:8px 16px;font-size:14px;font-weight:500;transition:all .15s;display:inline-flex}.btn-primary{background:var(--primary-blue);color:#fff}.btn-primary:hover{background:var(--primary-blue-dark)}.btn-orange{background:var(--accent-orange);color:#fff}.btn-orange:hover{background:#d46a1f}.btn-kiara{color:#fff;white-space:nowrap;background:linear-gradient(135deg,#6b5ce7 0%,#8a3ffc 100%);border:none;flex-shrink:0}.btn-kiara:hover:not(:disabled){background:linear-gradient(135deg,#5a4bd6 0%,#7a2ee8 100%)}.btn-kiara:disabled{opacity:.65;cursor:not-allowed}.kiara-page{max-width:960px}.kiara-header{align-items:center;gap:12px;margin-bottom:20px;display:flex}.kiara-title{align-items:center;gap:8px;margin:0;font-size:22px;font-weight:700;display:flex}.kiara-badge{color:#6b5ce7;letter-spacing:.02em;background:#efeaff;border-radius:999px;align-items:center;padding:4px 10px;font-size:11px;font-weight:700;display:inline-flex}.kiara-card{border:1px solid var(--border);background:#fff;border-radius:12px;margin-bottom:14px;padding:18px 20px}.kiara-card-row{justify-content:space-between;align-items:center;gap:20px;display:flex}.kiara-card-copy{min-width:0}.kiara-card-title{color:var(--text);margin-bottom:6px;font-size:16px;font-weight:700}.kiara-card-desc{color:var(--text-muted);margin:0;font-size:13px;line-height:1.45}.kiara-textarea{resize:vertical;min-height:140px;margin-top:12px}.kiara-actions{justify-content:flex-end;margin-top:12px;display:flex}.kiara-result{border-top:1px solid var(--border);margin-top:16px;padding-top:16px}.kiara-section-label{margin:14px 0 8px;font-size:13px;font-weight:700}.kiara-list{margin:0 0 8px;padding-left:18px;font-size:13px}.kiara-list li{margin-bottom:6px}.kiara-win-row{border-bottom:1px solid var(--border);cursor:pointer;justify-content:space-between;align-items:center;padding:8px 0;font-size:13px;display:flex}.kiara-win-row:hover{color:var(--primary-blue)}@media (width<=720px){.kiara-card-row{flex-direction:column;align-items:stretch}.kiara-card-row .btn-kiara{align-self:flex-end}}.btn-outline{border:1px solid var(--border);color:var(--text-dark);background:#fff}.btn-outline:hover{border-color:var(--primary-blue);color:var(--primary-blue)}.btn-danger{background:var(--danger);color:#fff}.btn-sm{padding:4px 10px;font-size:12px}.btn-ghost{color:var(--text-muted);padding:6px 10px}.btn-ghost:hover{background:var(--bg-light);color:var(--text-dark)}.form-group{margin-bottom:14px}.form-group label{color:var(--text-muted);margin-bottom:4px;font-size:13px;font-weight:500;display:block}.form-control{border:1px solid var(--border);border-radius:var(--radius);width:100%;color:var(--text-dark);background:#fff;outline:none;padding:8px 12px;transition:border-color .15s}.form-control:focus{border-color:var(--primary-blue);box-shadow:0 0 0 3px #3d7abf26}.input-with-prefix{align-items:center;display:flex;position:relative}.input-with-prefix .input-prefix{color:var(--text-muted);pointer-events:none;z-index:1;font-weight:600;position:absolute;left:12px}.input-with-prefix .input-prefixed{padding-left:28px}.modal-wide{width:min(720px,94vw);max-width:720px}.tech-progress-edit{grid-template-columns:1fr 72px;align-items:center;gap:10px;display:grid}.tech-progress-number{text-align:center}.attachment-row-actions{flex-shrink:0;align-items:center;gap:6px;display:flex}.attachment-row-actions .btn.is-disabled,.attachment-row-actions a.is-disabled{opacity:.45;pointer-events:none}.tl-workload-name-btn{font:inherit;color:var(--primary-blue);cursor:pointer;text-align:left;background:0 0;border:none;padding:0;font-weight:600}.tl-workload-name-btn:hover{text-decoration:underline}.tl-tech-summary-list{flex-direction:column;gap:8px;max-height:420px;display:flex;overflow:auto}.tl-tech-summary-row{text-align:left;border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;background:#fff;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:12px;display:flex}.tl-tech-summary-row:hover{border-color:var(--primary-blue)}.form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.form-row-3{grid-template-columns:1fr 1fr 1fr;gap:12px;display:grid}.card{border-radius:var(--radius);border:1px solid var(--border);box-shadow:var(--shadow);background:#fff;padding:20px}.card-title{color:var(--text-dark);margin-bottom:12px;font-size:15px;font-weight:600}.badge{text-transform:uppercase;letter-spacing:.3px;border-radius:4px;align-items:center;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}.badge-blue{background:var(--primary-blue-light);color:var(--primary-blue)}.badge-orange{background:var(--accent-orange-light);color:var(--accent-orange)}.badge-green{color:var(--success);background:#e6f4ea}.badge-red{color:var(--danger);background:#fde8e8}.badge-yellow{color:#b8860b;background:#fff8e1}.badge-gray{color:var(--text-muted);background:#f1f3f5}.priority-dot{border-radius:50%;width:8px;height:8px;display:inline-block}.priority-low{background:#6c757d}.priority-medium{background:#ffc107}.priority-high{background:#e97a2b}.priority-critical{background:#dc3545}.table-wrap{overflow-x:auto}table.data-table{border-collapse:collapse;width:100%;font-size:13px}table.data-table th{text-align:left;color:var(--text-muted);border-bottom:2px solid var(--border);white-space:nowrap;background:var(--bg-light);padding:10px 12px;font-weight:600}table.data-table td{border-bottom:1px solid var(--border);vertical-align:middle;padding:10px 12px}table.data-table tr:hover td{background:#f8fbff}table.data-table tr.clickable{cursor:pointer}.tabs{border-bottom:2px solid var(--border);gap:0;margin-bottom:20px;display:flex;overflow-x:auto}.tab{color:var(--text-muted);white-space:nowrap;border-bottom:2px solid #0000;margin-bottom:-2px;padding:10px 16px;font-size:13px;font-weight:500;transition:all .15s}.tab:hover{color:var(--primary-blue)}.tab.active{color:var(--primary-blue);border-bottom-color:var(--primary-blue)}.modal-overlay{z-index:1000;background:#00000073;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{width:100%;max-width:520px;max-height:90vh;box-shadow:var(--shadow-md);background:#fff;border-radius:12px;padding:24px;overflow-y:auto}.modal-lg{max-width:720px}.modal-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.modal-header h3{font-size:18px;font-weight:600}.modal-close{color:var(--text-muted);font-size:22px;line-height:1}.modal-actions{justify-content:flex-end;gap:8px;margin-top:20px;display:flex}.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:24px;display:grid}.kpi-card{border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;box-shadow:var(--shadow);background:#fff;padding:18px;transition:all .15s}.kpi-card:hover{border-color:var(--primary-blue);box-shadow:var(--shadow-md);transform:translateY(-1px)}.kpi-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.4px;font-size:12px;font-weight:500}.kpi-value{color:var(--text-dark);margin-top:4px;font-size:28px;font-weight:700}.kpi-card.accent .kpi-value{color:var(--primary-blue)}.kpi-card.orange .kpi-value{color:var(--accent-orange)}.kpi-card.danger .kpi-value{color:var(--danger)}.charts-grid{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:24px;display:grid}.chart-card{border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);background:#fff;min-height:320px;padding:16px}.empty-state{text-align:center;color:var(--text-muted);padding:40px 20px}.empty-state p{margin-top:8px;font-size:14px}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.page-header h1{font-size:22px;font-weight:700}.page-header .subtitle{color:var(--text-muted);margin-top:2px;font-size:13px}.toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;display:flex}.toolbar .search-input{flex:1;min-width:200px;max-width:320px}.deals-page{flex-direction:column;gap:10px;display:flex}.deals-toolbar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.deals-search-wrap{flex:1;min-width:180px;max-width:280px;position:relative}.deals-search-icon{opacity:.55;pointer-events:none;font-size:12px;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.deals-search{border-radius:20px!important;padding-left:34px!important}.deals-filter{width:auto;min-width:130px;border-radius:8px!important}.deals-count{color:var(--text-muted);margin:2px 0 6px;font-size:13px}.deal-card-list{flex-direction:column;gap:10px;display:flex}.deal-card{text-align:left;border:1px solid var(--border);width:100%;box-shadow:var(--shadow);background:#fff;border-radius:10px;grid-template-columns:minmax(180px,1.4fr) 90px minmax(120px,1fr) 90px 110px;align-items:center;gap:12px;padding:14px 16px 14px 18px;transition:box-shadow .15s,transform .15s;display:grid;position:relative}.deal-card:before{content:"";background:var(--accent-orange);border-radius:0 3px 3px 0;width:4px;position:absolute;top:10px;bottom:10px;left:0}.deal-card.accent-critical:before,.deal-card.accent-lost:before{background:#dc3545}.deal-card:hover{transform:translateY(-1px);box-shadow:0 4px 14px #3d7abf24}.deal-card-title{color:var(--text);margin-bottom:2px;font-size:15px;font-weight:700}.deal-card-sub{color:var(--text-muted);font-size:12px}.deal-card-value{text-align:left}.deal-card-amount{color:#1f8f4e;font-size:15px;font-weight:700}.deal-card-owner{color:var(--text-muted);margin-top:2px;font-size:12px}.deal-stage-badge,.deal-priority-badge{white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;padding:4px 10px;font-size:11px;font-weight:600;display:inline-flex}.deal-stage-default{color:#3d7abf;background:#eef3fb}.deal-stage-new{color:#2b6cb0;background:#e8f0fe}.deal-stage-poc{color:#7c3aed;background:#f3e8ff}.deal-stage-fr{color:#4f46e5;background:#eef2ff}.deal-stage-commercial{color:#c05621;background:#fff4e8}.deal-stage-won{color:#1f8f4e;background:#e8f8ef}.deal-stage-lost,.deal-priority-badge.priority-critical{color:#c53030;background:#fdeeee}.deal-priority-badge.priority-high{color:#c05621;background:#fff4e8}.deal-priority-badge.priority-medium{color:#b7791f;background:#fffbeb}.deal-priority-badge.priority-low{color:#64748b;background:#f1f5f9}.deal-health{color:var(--text-muted);justify-self:end;align-items:center;gap:6px;font-size:12px;font-weight:600;display:inline-flex}.deal-health-dot{background:#94a3b8;border-radius:50%;width:8px;height:8px}.deal-health.tone-good{color:#1f8f4e}.deal-health.tone-good .deal-health-dot{background:#22c55e}.deal-health.tone-warn{color:#c05621}.deal-health.tone-warn .deal-health-dot{background:#f59e0b}.deal-health.tone-bad{color:#c53030}.deal-health.tone-bad .deal-health-dot{background:#ef4444}@media (width<=900px){.deal-card{grid-template-columns:1fr 1fr;grid-template-areas:"main value""stage priority""health health"}.deal-card-main{grid-area:main}.deal-card-value{text-align:right;grid-area:value}.deal-stage-badge{grid-area:stage;justify-self:start}.deal-priority-badge{grid-area:priority;justify-self:end}.deal-health{grid-area:health;justify-self:start}}.avatar{background:var(--primary-blue);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:13px;font-weight:600;display:flex}.avatar-sm{width:28px;height:28px;font-size:11px}.avatar-lg{width:48px;height:48px;font-size:16px}.alert-banner{background:var(--primary-blue-light);border-radius:var(--radius);cursor:pointer;color:var(--primary-blue-dark);border:1px solid #b8d4f0;justify-content:space-between;align-items:center;margin-bottom:16px;padding:12px 16px;font-size:14px;font-weight:500;display:flex}.alert-banner.danger{color:var(--danger);background:#fde8e8;border-color:#f5c2c2}.alert-banner.warning{color:#b8860b;background:#fff8e1;border-color:#ffe082}.app-layout{background:#f0f2f5;height:100%;display:flex}.sidebar{width:var(--sidebar-width);background:var(--bg-sidebar);color:var(--text-sidebar);z-index:100;border-right:1px solid var(--border);flex-direction:column;flex-shrink:0;transition:transform .25s;display:flex}.sidebar-brand{border-bottom:1px solid var(--border);background:0 0;justify-content:flex-start;align-items:center;padding:18px 16px 16px;display:flex}.sidebar-logo-img{object-fit:contain;object-position:left center;background:0 0;width:100%;max-width:180px;height:auto;display:block}.sidebar-brand .logo{color:#1a2b4a;letter-spacing:-.5px;font-size:20px;font-weight:800}.sidebar-brand .logo span{color:var(--accent-orange)}.sidebar-brand .tagline{text-transform:uppercase;letter-spacing:1.2px;color:var(--text-muted);margin-top:4px;font-size:10px;font-weight:600}.sidebar-nav{flex:1;padding:12px 10px;overflow-y:auto}.nav-item{color:var(--text-sidebar);text-align:left;border-radius:8px;align-items:center;gap:10px;width:100%;margin-bottom:2px;padding:10px 14px;font-size:13px;font-weight:500;transition:all .15s;display:flex;position:relative}.nav-item:hover{background:var(--bg-sidebar-hover);color:var(--text-dark)}.nav-item.active{background:var(--primary-blue-light);color:var(--primary-blue);box-shadow:inset 3px 0 0 var(--primary-blue);border-right:none;font-weight:600}.nav-item .nav-icon{text-align:center;width:22px;font-size:15px}.nav-badge{background:var(--accent-orange);color:#fff;text-align:center;border-radius:10px;min-width:18px;margin-left:auto;padding:1px 6px;font-size:10px;font-weight:700}.sidebar-footer{border-top:1px solid var(--border);align-items:center;gap:8px;padding:14px 12px;display:flex}.sidebar-footer .user-info{flex:1;min-width:0}.sidebar-footer .user-name{color:var(--text-dark);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.sidebar-footer .user-role{color:var(--text-muted);font-size:11px}.sidebar-icon-btn{color:var(--text-muted);font-size:14px;padding:4px!important}.role-chip{background:var(--primary-blue-light);color:var(--primary-blue);border-radius:16px;padding:6px 12px;font-size:12px;font-weight:600}.main-area{flex-direction:column;flex:1;min-width:0;height:100%;display:flex}.header{height:var(--header-height);border-bottom:1px solid var(--border);background:#fff;flex-shrink:0;align-items:center;gap:16px;padding:0 24px;display:flex}.header-title{color:var(--text-dark);font-size:16px;font-weight:600}.header-search{flex:1;max-width:400px}.header-search input{border:1px solid var(--border);background:var(--bg-light);border-radius:20px;outline:none;width:100%;padding:8px 14px 8px 36px;font-size:13px}.header-search{position:relative}.header-search .search-icon{color:var(--text-muted);font-size:14px;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.header-actions{align-items:center;gap:12px;margin-left:auto;display:flex}.content{flex:1;padding:24px;overflow-y:auto}.mobile-menu-btn{color:var(--text-dark);margin-right:4px;font-size:22px;display:block}.sidebar-overlay{display:none}@media (width<=900px){.sidebar{position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.sidebar-overlay{z-index:99;background:#0006;display:block;position:fixed;inset:0}.mobile-menu-btn{display:block}.charts-grid,.form-row,.form-row-3{grid-template-columns:1fr}}.login-screen{background:radial-gradient(#eef4fb 0%,#dce8f5 45%,#c9daf0 100%);flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:100%;padding:32px 20px;display:flex}.login-brand{text-align:center;background:0 0;margin-bottom:8px}.login-brand-main{justify-content:center;align-items:center;gap:18px;display:flex}.login-brand-icon{object-fit:contain;flex-shrink:0;width:88px;height:88px}.login-brand-sep{background:#1a2b4a;flex-shrink:0;width:1px;height:74px}.login-brand-wordmark{text-align:left;min-width:0}.login-brand-vickalp-row{align-items:center;gap:10px;margin-bottom:4px;display:flex}.login-brand-rule{background:#1a2b4a;flex:1;min-width:28px;height:1px}.login-brand-vickalp{color:#9b4d96;letter-spacing:.4px;white-space:nowrap;font-size:16px;font-weight:400}.login-brand-product{color:#1a2b4a;letter-spacing:-1px;font-size:54px;font-weight:800;line-height:1}.login-logo-img{object-fit:contain;filter:drop-shadow(0 8px 18px #2d5f961f);background:0 0;width:min(340px,86vw);height:auto;margin:0 auto 12px;display:block}.login-logo{color:#1a2b4a;letter-spacing:-1px;font-size:42px;font-weight:800;line-height:1.1}.login-logo span{color:var(--accent-orange)}.login-subtitle{letter-spacing:3px;color:#2d3a4f;text-transform:uppercase;margin-top:14px;font-size:12px;font-weight:600}.login-card{text-align:center;background:#fff;border-radius:16px;width:100%;max-width:560px;padding:28px 28px 24px;box-shadow:0 8px 32px #1a2b4a1f}.login-welcome{color:var(--text-dark);margin-bottom:4px;font-size:22px;font-weight:700}.login-hint{color:var(--text-muted);margin-bottom:20px;font-size:14px}.role-grid{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:18px;display:grid}.role-card{border:1.5px solid var(--border);text-align:center;cursor:pointer;background:#fff;border-radius:12px;min-height:130px;padding:16px 12px;transition:all .15s}.role-card:hover{border-color:var(--primary-blue);background:#f8fbff}.role-card.selected{border-color:var(--accent-orange);background:#fff8f3;box-shadow:0 0 0 3px #e97a2b2e}.role-icon{margin-bottom:8px;font-size:28px;line-height:1}.role-icon-img{object-fit:contain;width:48px;height:48px;margin:0 auto 8px;display:block}.role-name{color:var(--text-dark);margin-bottom:6px;font-size:15px;font-weight:700}.role-desc{color:var(--text-muted);font-size:11px;line-height:1.35}.select-user-block{text-align:left;margin-bottom:16px}.select-user-label{color:var(--text-dark);margin-bottom:8px;font-size:13px;font-weight:600}.select-user-list{flex-direction:column;gap:8px;display:flex}.select-user-card{border:1.5px solid var(--border);text-align:left;cursor:pointer;background:#f7f9fc;border-radius:10px;align-items:center;gap:12px;width:100%;padding:10px 12px;transition:all .15s;display:flex}.select-user-card:hover{border-color:var(--primary-blue)}.select-user-card.selected{border-color:var(--accent-orange);background:#fff8f3;box-shadow:0 0 0 2px #e97a2b26}.select-user-avatar{color:#fff;background:#9aa3ad;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:13px;font-weight:700;display:flex}.select-user-name{color:var(--text-dark);font-size:14px;font-weight:600}.select-user-email{color:var(--text-muted);font-size:12px}.login-as-btn{color:#fff;cursor:not-allowed;opacity:1;background:#c5ced9;border-radius:10px;width:100%;padding:12px 16px;font-size:15px;font-weight:600}.login-as-btn.ready{background:var(--primary-blue);cursor:pointer}.login-as-btn.ready:hover{background:var(--primary-blue-dark)}.login-as-btn:disabled{opacity:1}.login-tagline{color:#8a97a8;margin-top:4px;font-size:12px}.reset-demo-btn{color:var(--text-muted);background:#fff;border-radius:8px;padding:6px 14px;font-size:12px}.pin-input{letter-spacing:12px;text-align:center;font-size:28px;font-weight:600}.login-error{color:var(--danger);margin-bottom:10px;font-size:13px}@media (width<=560px){.role-grid{grid-template-columns:1fr 1fr}.login-brand-main{gap:12px}.login-brand-icon{width:64px;height:64px}.login-brand-sep{height:56px}.login-brand-product{font-size:40px}.login-brand-vickalp{font-size:14px}.login-subtitle{letter-spacing:2px;font-size:11px}.login-logo-img{width:min(260px,88vw)}.login-logo{font-size:32px}.login-card{padding:20px 16px}}.tech-dash-header{margin-bottom:14px}.tech-dash-title{align-items:center;gap:8px;margin:0;font-size:20px;font-weight:700;display:flex}.tl-panel{border:1px solid var(--border);box-shadow:var(--shadow);background:#fff;border-radius:12px;margin-bottom:14px;padding:16px}.tl-panel-orange{border-color:#e97a2b73;box-shadow:0 0 0 1px #e97a2b14}.tl-panel-red{border-color:#dc354566}.tl-panel-title{margin-bottom:12px;font-size:15px;font-weight:700}.tl-pending-card{background:#fffaf5;border:1px solid #e97a2b40;border-radius:10px;align-items:flex-start;gap:12px;padding:12px;display:flex}.tl-pending-avatar{color:#fff;background:#e97a2b;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:13px;font-weight:700;display:flex}.tl-pending-main{flex:1;min-width:0}.tl-pending-title{font-size:14px;font-weight:700}.tl-pending-meta,.tl-pending-req{color:var(--text-muted);margin-top:3px;font-size:12px}.tl-pending-req-label{color:var(--text-muted);margin-bottom:4px;font-weight:600;display:block}.tl-pending-req-body{border:1px solid var(--border,#dce5f0);max-height:120px;color:var(--text,#1a2b4a);background:#f8fbff;border-radius:6px;padding:6px 8px;font-size:12px;font-weight:400;overflow:auto}.tech-req-header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:4px;display:flex}.tech-req-edit{flex-direction:column;gap:10px;display:flex}.tech-req-actions{justify-content:flex-end;gap:8px;display:flex}.tl-pending-side{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:6px;display:flex}.tl-pending-ago{color:#dc3545;font-size:12px;font-weight:700}.tl-pending-due{color:var(--text-muted);font-size:12px}.tl-workload-banner{color:#92400e;background:#fff8eb;border:1px solid #f59e0b59;border-radius:8px;margin-bottom:12px;padding:10px 12px;font-size:13px}.tl-workload-list{flex-direction:column;gap:12px;display:flex}.tl-workload-row{border-bottom:1px solid #eef2f7;align-items:center;gap:12px;padding:10px 0;display:flex}.tl-workload-row:last-child{border-bottom:none}.tl-workload-avatar{background:var(--primary-blue);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:13px;font-weight:700;display:flex}.tl-workload-main{flex:1;min-width:0}.tl-workload-name{font-size:14px;font-weight:700}.tl-workload-stats{color:var(--text-muted);margin-top:2px;font-size:12px}.tl-workload-bar-wrap{align-items:center;gap:8px;margin-top:6px;display:flex}.tl-workload-bar{background:#e8eef5;border-radius:999px;flex:1;max-width:160px;height:8px;overflow:hidden}.tl-workload-bar-fill{background:#22c55e;border-radius:999px;height:100%}.tl-workload-level{color:#1f8f4e;font-size:12px;font-weight:600}.tl-workload-tags{flex-wrap:wrap;justify-content:flex-end;gap:6px;max-width:140px;display:flex}.tl-deal-chip{color:var(--primary-blue);white-space:nowrap;background:#3d7abf1a;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:600}.tl-sla-row{background:#fff5f5;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;padding:12px;display:flex}.tl-sla-config-grid{grid-template-columns:1fr 1fr;gap:8px 24px;display:grid}.tl-sla-config-row{background:#f5f7fa;border-radius:8px;justify-content:space-between;gap:12px;padding:8px 10px;font-size:13px;display:flex}.tl-sla-config-row strong{color:var(--primary-blue)}@media (width<=700px){.tl-pending-card{flex-wrap:wrap}.tl-sla-config-grid{grid-template-columns:1fr}}.tech-status-grid{grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:18px;display:grid}.tech-status-chip{border:1px solid var(--border);text-align:left;box-shadow:var(--shadow);background:#fff;border-radius:10px;padding:12px 14px;transition:border-color .15s,box-shadow .15s}.tech-status-chip.tone-blue{border-color:#3d7abf59}.tech-status-chip.tone-orange{border-color:#e97a2b73}.tech-status-chip.tone-green{border-color:#1f8f4e59}.tech-status-chip.has-items.tone-blue .tech-status-count,.tech-status-chip.has-items.tone-muted .tech-status-count{color:var(--primary-blue)}.tech-status-chip.has-items.tone-green .tech-status-count{color:#1f8f4e}.tech-status-chip.has-items.tone-orange .tech-status-count,.tech-status-chip.tone-orange .tech-status-label{color:var(--accent-orange)}.tech-status-chip.active{border-color:var(--primary-blue);box-shadow:0 0 0 2px #3d7abf40}.tech-status-label{color:var(--text-muted);margin-bottom:6px;font-size:12px;line-height:1.3}.tech-status-count{color:#94a3b8;font-size:22px;font-weight:700}.tech-status-chip.has-items .tech-status-count{color:var(--primary-blue)}.tech-task-list{flex-direction:column;gap:10px;display:flex}.tech-task-card{text-align:left;border:1px solid var(--border);width:100%;box-shadow:var(--shadow);background:#fff;border-radius:10px;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px 14px 18px;transition:box-shadow .15s,transform .15s;display:flex;position:relative}.tech-task-card:before{content:"";background:var(--accent-orange);border-radius:0 3px 3px 0;width:4px;position:absolute;top:10px;bottom:10px;left:0}.tech-task-card.accent-critical:before{background:#dc3545}.tech-task-card:hover{transform:translateY(-1px);box-shadow:0 4px 14px #3d7abf1f}.tech-task-contact{margin-bottom:4px;font-size:15px;font-weight:700}.tech-task-sub{color:var(--text-muted);font-size:12px}.tech-task-right{flex-direction:column;align-items:flex-end;gap:8px;min-width:200px;display:flex}.tech-task-due{color:var(--text-muted);font-size:12px}.tech-task-status{color:#7c3aed;background:#f3e8ff;border-radius:999px;padding:4px 10px;font-size:11px;font-weight:600;display:inline-flex}.tech-progress{align-items:center;gap:8px;width:100%;max-width:200px;display:flex}.tech-progress-track{background:#e8eef5;border-radius:999px;flex:1;height:8px;overflow:hidden}.tech-progress-fill{background:var(--primary-blue);border-radius:999px;height:100%}.tech-progress.tone-poc .tech-progress-fill{background:#7c3aed}.tech-progress.tone-done .tech-progress-fill{background:#22c55e}.tech-progress-label{color:var(--text-muted);text-align:right;min-width:36px;font-size:12px;font-weight:700}.tech-progress.tone-done .tech-progress-label{color:#1f8f4e}@media (width<=900px){.tech-status-grid{grid-template-columns:repeat(2,1fr)}.tech-task-card{flex-direction:column;align-items:flex-start}.tech-task-right{align-items:flex-start;width:100%}}.sales-queue-header{margin-bottom:14px}.sales-queue-title{align-items:center;gap:8px;margin:0;font-size:20px;font-weight:700;display:flex}.sales-queue-sub{color:var(--text-muted);margin-top:4px;font-size:13px}.sales-queue-chips{grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:16px;display:grid}.sales-queue-list{flex-direction:column;gap:12px;display:flex}.sales-queue-card{border:1px solid var(--border);box-shadow:var(--shadow);background:#fff;border-radius:10px;padding:14px 16px 14px 18px;position:relative}.sales-queue-card:before{content:"";background:var(--accent-orange);border-radius:0 3px 3px 0;width:4px;position:absolute;top:10px;bottom:10px;left:0}.sales-queue-card.accent-critical:before{background:#dc3545}.sales-queue-card-top{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.sales-queue-badges{flex-wrap:wrap;gap:8px;display:flex}.sales-queue-open{color:var(--text-muted);font-size:13px;font-weight:600}.sales-queue-open:hover{color:var(--primary-blue)}.sales-queue-main{text-align:left;width:100%;margin-bottom:8px;display:block}.sales-queue-contact{margin-bottom:2px;font-size:15px;font-weight:700}.sales-queue-deal-line{color:var(--text-muted);font-size:12px}.sales-queue-meta-row{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:10px;display:flex}.sales-queue-due,.sales-queue-from{color:var(--text-muted);font-size:12px}.sales-queue-detail{background:#f5f8fc;border-radius:8px;margin-bottom:10px;padding:10px 12px;font-size:13px}.sales-queue-reply{align-items:center;gap:8px;display:flex}.deal-detail-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:12px;display:flex}.deal-detail-header-left{align-items:flex-start;gap:10px;display:flex}.deal-detail-back{border:1px solid var(--border);width:36px;height:36px;color:var(--text);background:#fff;border-radius:8px;flex-shrink:0;font-size:16px}.deal-detail-back:hover{background:var(--bg-light)}.deal-detail-title{margin:0;font-size:22px;font-weight:700}.deal-detail-sub{color:var(--text-muted);margin-top:4px;font-size:13px}.deal-detail-header-right{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.deal-health-circle{color:#1f8f4e;background:#e8f8ef;border:2px solid #22c55e;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:12px;font-weight:700;display:inline-flex}.deal-health-circle.tone-warn{color:#c05621;background:#fff8eb;border-color:#f59e0b}.deal-health-circle.tone-bad{color:#c53030;background:#fdeeee;border-color:#ef4444}.deal-overview-layout{grid-template-columns:minmax(0,1.6fr) minmax(280px,.9fr);align-items:start;gap:16px;display:grid}.deal-overview-side{flex-direction:column;gap:16px;display:flex}.deal-info-grid{grid-template-columns:1fr 1fr;gap:10px 24px;display:grid}.deal-info-row{flex-direction:column;gap:2px;min-width:0;display:flex}.deal-info-row.deal-info-desc{grid-column:1/-1;margin-top:4px}.deal-info-label{color:var(--text-muted);font-size:12px}.deal-info-value{color:var(--text);word-break:break-word;font-size:14px;font-weight:600}.deal-info-value a{color:var(--accent);text-decoration:none}.deal-info-value a:hover{text-decoration:underline}.deal-description-body{border:1px solid var(--border,#dce5f0);background:#f8fbff;border-radius:8px;max-height:420px;padding:8px 10px;font-weight:400;overflow:auto}.rich-text-html{color:var(--text,#1a2b4a);word-break:break-word;font-size:14px;line-height:1.5}.rich-text-html p{margin:0 0 .6em}.rich-text-html p:last-child{margin-bottom:0}.rich-text-html ul,.rich-text-html ol{margin:.4em 0 .6em;padding-left:1.4em}.rich-text-html table{border-collapse:collapse;max-width:100%;margin:.5em 0}.rich-text-html td,.rich-text-html th{vertical-align:top;border:1px solid #ccc;padding:4px 8px}.rich-text-html a{color:var(--accent,#3d7abf)}.rich-text-html blockquote{color:#4a5a70;border-left:3px solid #c9daf0;margin:.5em 0;padding-left:12px}.rich-text-html img{max-width:100%;height:auto}.rich-text-editor{border:1px solid var(--border,#dce5f0);background:#fff;border-radius:10px;overflow:hidden}.rich-text-editor .tox-tinymce{border:none!important;border-radius:10px!important}.btn-outline-orange{color:var(--orange,#e97a2b);border:1.5px solid var(--orange,#e97a2b);background:#fff}.btn-outline-orange:hover{background:#e97a2b14}.btn-block{justify-content:center;width:100%}.stack-gap{flex-direction:column;gap:16px;display:flex}.tech-assignment-grid{grid-template-columns:1fr 1fr;gap:14px 40px;display:grid}.tech-assignment-row{flex-direction:column;gap:2px;min-width:0;display:flex}.tech-assignment-row.tech-assignment-req{grid-column:1/-1}.tech-priority{font-weight:700}.tech-priority-critical{color:#c53030}.tech-priority-high{color:#c05621}.tech-priority-medium{color:#b8860b}.tech-priority-low{color:#6c757d}.tech-assignment-progress{flex-direction:column;gap:6px;margin-bottom:4px;display:flex}.tech-assignment-progress .tech-progress-track,.tech-update-progress .tech-progress-track{background:#e8eef5;border-radius:999px;width:100%;height:10px;overflow:hidden}.tech-assignment-progress .tech-progress-fill,.tech-update-progress .tech-progress-fill{background:var(--primary-blue,#3d7abf);border-radius:999px;height:100%}.tech-assignment-progress-label{color:var(--text-muted);font-size:12px;font-weight:600}.tech-update-box{border:1px solid var(--border);background:#f8fafc;border-radius:10px;padding:14px}.tech-update-progress{flex-direction:column;gap:6px;margin-bottom:12px;display:flex}.tech-update-progress-label{color:var(--text);font-size:13px;font-weight:600}.tech-update-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.tech-update-select{flex:0 200px;min-width:160px}.tech-update-comment{flex:180px;min-width:140px}.tech-update-btn{white-space:nowrap;flex-shrink:0}.tech-reply-row{align-items:center;gap:10px;display:flex}.tech-reply-btn{white-space:nowrap;flex-shrink:0}.deal-timeline{flex-direction:column;gap:0;display:flex}.deal-timeline-item{gap:12px;min-height:64px;display:flex}.deal-timeline-rail{flex-shrink:0;justify-content:center;width:16px;display:flex;position:relative}.deal-timeline-rail:before{content:"";background:#d9e3ef;width:2px;position:absolute;top:10px;bottom:-4px}.deal-timeline-item:last-child .deal-timeline-rail:before{display:none}.deal-timeline-dot{background:var(--primary-blue,#3d7abf);z-index:1;border:2px solid #fff;border-radius:50%;width:10px;height:10px;margin-top:8px;box-shadow:0 0 0 2px #3d7abf59}.deal-timeline-body{flex:1;min-width:0;padding-bottom:16px}.deal-timeline-head{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:4px;display:flex}.deal-timeline-head .name{font-size:14px;font-weight:600}.deal-timeline-head .time{color:var(--text-muted);margin-left:auto;font-size:12px}.deal-timeline-text{color:var(--text);padding-left:2px}@media (width<=900px){.deal-overview-layout,.deal-info-grid,.tech-assignment-grid{grid-template-columns:1fr}}.approval-submit-card{background:#f8fbff;border:1px solid #3d7abf40;border-radius:12px;padding:16px}.approval-submit-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.approval-type-select{flex-shrink:0;width:180px}.approval-doc-select{flex:1;min-width:200px}.approval-submit-row .btn:disabled{opacity:.55;cursor:not-allowed}.approval-upload-row{align-items:center;gap:10px;margin-top:12px;display:flex}.approval-flow-note{color:var(--text-muted);margin-top:12px;font-size:12px;line-height:1.45}.sla-tracking-list{flex-direction:column;gap:8px;display:flex}.sla-tracking-row{background:#f5f7fa;border-radius:10px;align-items:center;gap:12px;padding:12px 14px;display:flex}.sla-tracking-dot{background:#22c55e;border-radius:50%;flex-shrink:0;width:10px;height:10px}.sla-tracking-dot.tone-warning{background:#f59e0b}.sla-tracking-dot.tone-breach{background:#ef4444}.sla-tracking-stage{color:var(--text);flex:1;font-size:14px;font-weight:600}.sla-tracking-meta{color:var(--text-muted);white-space:nowrap;align-items:center;gap:12px;font-size:13px;display:flex}.sla-tracking-user{text-align:right;min-width:90px}.approval-doc-card{background:#f8fbff;border:1px solid #3d7abf40;border-radius:12px;margin-bottom:14px;padding:16px}.approval-doc-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.approval-doc-title-row{align-items:flex-start;gap:10px;display:flex}.approval-doc-icon{font-size:22px}.approval-doc-name{font-size:14px;font-weight:700}.approval-file-box{background:#fff;border:1px solid #3d7abf59;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;padding:12px 14px;display:flex}.approval-file-link{color:var(--primary-blue);margin-bottom:2px;font-weight:600}.approval-stepper{justify-content:center;align-items:flex-start;gap:0;margin:8px 0 14px;display:flex}.approval-step-wrap{align-items:flex-start;display:flex}.approval-step-line{background:#dbe4f0;border-radius:2px;width:64px;height:3px;margin-top:16px;margin-left:8px;margin-right:8px}.approval-step-line.done{background:#22c55e}.approval-step-node{text-align:center;min-width:90px}.approval-step-circle{width:34px;height:34px;color:var(--text-muted);background:#e8eef5;border:2px solid #d0dae8;border-radius:50%;justify-content:center;align-items:center;margin:0 auto 6px;font-weight:700;display:flex}.approval-step-node.done .approval-step-circle{color:#fff;background:#22c55e;border-color:#16a34a}.approval-step-node.rejected .approval-step-circle{color:#fff;background:#ef4444;border-color:#dc2626}.approval-step-node.active .approval-step-circle{background:var(--primary-blue);border-color:var(--primary-blue);color:#fff}.approval-step-role{font-size:12px;font-weight:700}.approval-step-user,.approval-step-date{color:var(--text-muted);font-size:11px}.approval-success-banner{color:#1f8f4e;text-align:center;background:#e8f8ef;border-radius:8px;padding:10px 12px;font-size:13px;font-weight:600}.approval-comment{background:#fff;border-radius:8px;margin-top:10px;padding:8px 10px;font-size:13px}@media (width<=900px){.sales-queue-chips{grid-template-columns:repeat(2,1fr)}.deal-detail-header{flex-direction:column}}.reports-title{align-items:center;gap:8px;margin:0 0 16px;font-size:20px;font-weight:700;display:flex}.reports-kpi-grid{grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:14px;display:grid}.reports-kpi{border:1px solid var(--border);box-shadow:var(--shadow);background:#fff;border-radius:10px;padding:14px 16px}.reports-kpi-label{color:var(--text-muted);margin-bottom:6px;font-size:12px}.reports-kpi-value{color:var(--text);font-size:22px;font-weight:700}.reports-kpi.tone-purple .reports-kpi-value{color:#6b5b95}.reports-kpi.tone-green .reports-kpi-value{color:#1f8f4e}.reports-kpi.tone-orange .reports-kpi-value{color:var(--accent-orange)}.reports-tech-card{border:1px solid var(--border);box-shadow:var(--shadow);background:#fff;border-radius:10px;margin-bottom:14px;padding:14px 16px}.reports-tech-list{flex-direction:column;gap:12px;margin-top:8px;display:flex}.reports-tech-row{grid-template-columns:70px 1fr 70px;align-items:center;gap:12px;display:grid}.reports-tech-name{font-size:13px;font-weight:600}.reports-tech-bar-track{background:#e8eef5;border-radius:999px;height:10px;overflow:hidden}.reports-tech-bar-fill{background:#28a745;border-radius:999px;min-width:0;height:100%}.reports-tech-count{color:var(--text-muted);text-align:right;font-size:12px}.reports-charts-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}@media (width<=900px){.reports-kpi-grid{grid-template-columns:1fr 1fr}.reports-charts-grid{grid-template-columns:1fr}}.team-mgmt-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.team-mgmt-title{color:var(--primary-blue);align-items:center;gap:8px;margin:0;font-size:18px;font-weight:700;display:flex}.team-user-list{flex-direction:column;gap:10px;display:flex}.team-user-row{border:1px solid var(--border);background:#fafbfd;border-radius:10px;grid-template-columns:auto 1fr auto auto auto;align-items:center;gap:14px;padding:12px 14px;display:grid}.team-user-row.inactive{opacity:.55}.team-user-name{font-size:14px;font-weight:700}.team-user-email{color:var(--text-muted);margin-top:2px;font-size:12px}.team-user-stats{color:var(--text-muted);white-space:nowrap;gap:14px;font-size:12px;display:flex}.team-user-stats .stat-active{color:var(--primary-blue);margin-right:2px;font-size:14px}.team-user-stats .stat-done{color:#1f8f4e;margin-right:2px;font-size:14px}.team-user-actions{gap:6px;display:flex}.team-icon-btn{border:1px solid var(--border);background:#fff;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;font-size:13px;display:inline-flex}.team-icon-btn.edit:hover,.team-icon-btn.pin:hover{background:#fff8e6;border-color:#f0c14b}.team-icon-btn.disable:hover{background:#fdeeee;border-color:#ef4444}@media (width<=800px){.team-user-row{grid-template-columns:auto 1fr;grid-template-areas:"avatar info""stats stats""role actions"}.team-user-row .avatar{grid-area:avatar}.team-user-info{grid-area:info}.team-user-stats{grid-area:stats}.team-user-actions{grid-area:actions;justify-self:end}}.kanban-page-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px;display:flex}.kanban-page-title{align-items:center;gap:8px;margin:0;font-size:20px;font-weight:700;display:flex}.kanban-page-sub{color:var(--text-muted);margin-top:4px;font-size:13px}.kanban-empty-toggle{color:var(--text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;align-items:center;gap:8px;font-size:13px;display:inline-flex}.kanban-board{gap:14px;min-height:500px;padding-bottom:16px;display:flex;overflow-x:auto}.kanban-column{border:1px solid var(--border);background:#f7f9fc;border-radius:12px;flex-direction:column;flex-shrink:0;min-width:250px;max-width:270px;display:flex}.kanban-column.drag-over{border-color:var(--primary-blue);background:var(--primary-blue-light)}.kanban-header{border-bottom:1px solid var(--border);padding:12px 14px 10px}.kanban-header-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.kanban-stage-name{color:var(--primary-blue);font-size:13px;font-weight:700}.kanban-count{color:#fff;background:#6b5b95;border-radius:999px;justify-content:center;align-items:center;min-width:22px;height:22px;padding:0 6px;font-size:11px;font-weight:700;display:inline-flex}.kanban-stage-total{color:var(--text-muted);margin-top:4px;font-size:12px}.kanban-cards{flex-direction:column;flex:1;gap:8px;min-height:80px;padding:10px;display:flex}.kanban-card{border:1px solid var(--border);cursor:grab;background:#fff;border-radius:10px;padding:12px 12px 10px 14px;transition:box-shadow .15s,transform .15s;position:relative;box-shadow:0 1px 2px #1018280a}.kanban-card:before{content:"";background:var(--primary-blue);border-radius:0 2px 2px 0;width:3px;position:absolute;top:8px;bottom:8px;left:0}.kanban-card.accent-high:before{background:var(--accent-orange)}.kanban-card.accent-critical:before{background:#dc3545}.kanban-card:hover{transform:translateY(-1px);box-shadow:0 4px 12px #3d7abf1f}.kanban-card:active{cursor:grabbing}.kanban-card-title{color:var(--text);margin-bottom:2px;font-size:13px;font-weight:700}.kanban-card-contact{color:var(--text-muted);margin-bottom:8px;font-size:12px}.kanban-card-value{color:#1f8f4e;margin-bottom:10px;font-size:14px;font-weight:700}.kanban-card-footer{justify-content:space-between;align-items:center;gap:8px;display:flex}.kanban-card-owner{color:var(--text-muted);margin-top:0;font-size:12px}.kanban-card-health{color:var(--text-muted);align-items:center;gap:5px;margin-top:8px;font-size:12px;font-weight:600;display:inline-flex}.kanban-card-health.tone-good{color:#1f8f4e}.kanban-card-health.tone-warn{color:#c05621}.kanban-card-health.tone-bad{color:#c53030}.kanban-card-company{color:var(--text-muted);margin-bottom:8px;font-size:12px}.kanban-card-meta{justify-content:space-between;align-items:center;font-size:12px;display:flex}.vyxel-fab{z-index:900;color:#fff;background:#6b5ce7;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:0;width:58px;height:58px;padding:0;font-size:11px;font-weight:600;line-height:1.1;display:flex;position:fixed;bottom:24px;right:24px;box-shadow:0 4px 20px #6b5ce773}.vyxel-fab span:first-child{font-size:20px}.vyxel-fab:hover{background:#5a4bd6;transform:translateY(-2px)}.vyxel-ask-label{color:var(--text-dark);box-shadow:var(--shadow-md);z-index:900;border:1px solid var(--border);background:#fff;border-radius:16px;padding:6px 12px;font-size:12px;font-weight:600;position:fixed;bottom:40px;right:92px}.dash-panel{border:1px solid var(--border);box-shadow:var(--shadow);background:#fff;border-radius:10px;padding:14px 16px}.dash-panel-orange{border-left:4px solid var(--accent-orange)}.dash-panel-important{border:1px solid #e97a2b59;border-top:3px solid var(--accent-orange);background:linear-gradient(#fff8f2 0%,#fff 48%)}.dash-panel-red{border-left:4px solid var(--danger)}.dash-panel-title{margin-bottom:10px;font-size:14px;font-weight:700}.dash-panel-title-orange{color:var(--accent-orange)}.dash-notif-row{text-align:left;border-radius:6px;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:10px 8px;display:flex}.dash-notif-row:hover{background:#e97a2b14}.dash-notif-icon{border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:14px;display:inline-flex}.dash-notif-icon.tone-green{background:#eef6ee}.dash-notif-icon.tone-blue{background:#eef3fb}.dash-notif-icon.tone-red{background:#fdeeee}.dash-notif-icon.tone-orange{background:#fff3e8}.dash-notif-main{flex:1;min-width:0;font-size:13px}.dash-notif-date{color:var(--text-muted);flex-shrink:0;font-size:12px}.dash-notif-empty{color:var(--text-muted);padding:8px;font-size:13px}.kpi-grid-ref{grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px;display:grid}.kpi-card-ref{border:1px solid var(--border);text-align:left;box-shadow:var(--shadow);border-left:4px solid var(--primary-blue);background:#fff;border-radius:10px;padding:14px 16px;transition:box-shadow .15s,transform .15s;position:relative}.kpi-card-ref:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.kpi-card-ref.accent-blue{border-left-color:#3d7abf}.kpi-card-ref.accent-cyan{border-left-color:#17a2b8}.kpi-card-ref.accent-orange{border-left-color:#e97a2b}.kpi-card-ref.accent-purple{border-left-color:#6b5ce7}.kpi-card-ref.accent-red{border-left-color:#dc3545}.kpi-card-ref.accent-green{border-left-color:#28a745}.kpi-ref-icon{opacity:.9;font-size:18px;line-height:1;position:absolute;top:12px;right:12px}.kpi-ref-label{color:var(--text-muted);padding-right:28px;font-size:12px;font-weight:500}.kpi-ref-value{color:#5b4fc7;margin:4px 0;font-size:28px;font-weight:700}.kpi-ref-link{color:var(--primary-blue);font-size:11px;font-weight:500}.sla-breach-card{background:#fde8e8;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;padding:12px 14px;display:flex}@media (width<=900px){.kpi-grid-ref{grid-template-columns:1fr 1fr}}@media (width<=560px){.kpi-grid-ref{grid-template-columns:1fr}}.vyxel-panel{z-index:900;border:1px solid var(--border);background:#fff;border-radius:16px;flex-direction:column;width:360px;max-height:520px;display:flex;position:fixed;bottom:80px;right:24px;overflow:hidden;box-shadow:0 8px 40px #0003}.vyxel-header{background:var(--primary-blue);color:#fff;justify-content:space-between;align-items:center;padding:14px 16px;font-weight:600;display:flex}.vyxel-messages{flex-direction:column;flex:1;gap:10px;min-height:280px;max-height:360px;padding:16px;display:flex;overflow-y:auto}.vyxel-msg{border-radius:12px;max-width:85%;padding:10px 14px;font-size:13px;line-height:1.4}.vyxel-msg.bot{background:var(--bg-light);border-bottom-left-radius:4px;align-self:flex-start}.vyxel-msg.user{background:var(--primary-blue);color:#fff;border-bottom-right-radius:4px;align-self:flex-end}.vyxel-input-row{border-top:1px solid var(--border);gap:8px;padding:12px;display:flex}.vyxel-input-row input{border:1px solid var(--border);border-radius:20px;outline:none;flex:1;padding:8px 12px;font-size:13px}.stepper{gap:0;margin-bottom:20px;display:flex}.step{text-align:center;flex:1;padding:8px;position:relative}.step:before{content:"";background:var(--border);width:28px;height:28px;color:var(--text-muted);border-radius:50%;margin:0 auto 6px;font-size:12px;font-weight:700;line-height:28px;display:block}.step:first-child:before{content:"1"}.step:nth-child(2):before{content:"2"}.step.done:before{background:var(--success);color:#fff}.step.active:before{background:var(--primary-blue);color:#fff}.step.rejected:before{background:var(--danger);color:#fff}.step-label{color:var(--text-muted);font-size:12px;font-weight:500}.step.active .step-label,.step.done .step-label{color:var(--text-dark)}.comment-thread{flex-direction:column;gap:12px;display:flex}.comment-item{gap:10px;display:flex}.comment-body{background:var(--bg-light);border-radius:var(--radius);flex:1;padding:10px 14px}.comment-meta{align-items:center;gap:8px;margin-bottom:4px;font-size:12px;display:flex}.comment-meta .name{color:var(--text-dark);font-weight:600}.comment-meta .time{color:var(--text-muted)}.comment-replies{flex-direction:column;gap:8px;margin-top:8px;margin-left:40px;display:flex}.settings-panel{top:var(--header-height);border:1px solid var(--border);width:300px;box-shadow:var(--shadow-md);z-index:200;background:#fff;border-radius:12px;padding:20px;position:absolute;right:16px}.drop-zone{border:2px dashed var(--border);border-radius:var(--radius);text-align:center;color:var(--text-muted);cursor:pointer;padding:32px;transition:all .15s}.drop-zone.drag-over{border-color:var(--primary-blue);background:var(--primary-blue-light);color:var(--primary-blue)}.drop-zone p{margin-top:6px;font-size:13px}.attachments-panel{flex-direction:column;gap:14px;display:flex}.attachments-title{color:var(--text);align-items:center;gap:8px;font-size:16px;font-weight:700;display:flex}.attachments-dropzone{text-align:center;color:var(--text-muted);cursor:pointer;background:#fafbfd;border:2px dashed #c9d5e4;border-radius:12px;padding:28px 20px 20px;transition:all .15s}.attachments-dropzone.drag-over{border-color:var(--primary-blue);color:var(--primary-blue);background:#3d7abf0f}.attachments-drop-icon{margin-bottom:8px;font-size:28px;line-height:1}.attachments-drop-main{color:var(--text);margin:0;font-size:14px;font-weight:600}.attachments-drop-sub{color:var(--text-muted);margin:6px 0 0;font-size:12px}.attachments-category-picker{color:var(--text-muted);align-items:center;gap:8px;margin-top:14px;font-size:13px;display:inline-flex}.attachments-category-picker .form-control{width:auto;min-width:140px;display:inline-block}.attachments-filters{flex-wrap:wrap;gap:8px;display:flex}.attachments-filter-pill{border:1px solid var(--border);color:var(--text-muted);cursor:pointer;background:#fff;border-radius:999px;padding:6px 14px;font-size:13px;font-weight:600}.attachments-filter-pill.active{background:var(--primary-blue,#3d7abf);border-color:var(--primary-blue,#3d7abf);color:#fff}.attachments-list{flex-direction:column;gap:10px;display:flex}.attachment-row{border:1px solid var(--border);background:#fff;border-radius:10px;align-items:center;gap:12px;padding:12px 14px;display:flex}.attachment-row-icon{flex-shrink:0;font-size:22px}.attachment-row-main{flex:1;min-width:0}.attachment-row-name{color:var(--text);font-size:14px;font-weight:700}.attachment-row-meta{color:var(--text-muted);margin-top:2px;font-size:12px}.attachment-cat-label{flex-shrink:0;font-size:13px;font-weight:700}.attachment-cat-label.cat-architecture,.attachment-cat-label.cat-technical{color:#7c3aed}.attachment-cat-label.cat-proposal{color:var(--primary-blue,#3d7abf)}.attachment-cat-label.cat-contract{color:#0f766e}.attachment-cat-label.cat-other,.attachment-cat-label.cat-meeting_notes{color:var(--text-muted)}.attachment-delete{color:#e11d48;cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:0 4px;font-size:22px;line-height:1}.attachment-delete:hover{color:#be123c}.text-muted{color:var(--text-muted)}.text-sm{font-size:13px}.mt-8{margin-top:8px}.mt-12{margin-top:12px}.mt-16{margin-top:16px}.mb-12{margin-bottom:12px}.mb-16{margin-bottom:16px}.flex{display:flex}.flex-between{justify-content:space-between;align-items:center;display:flex}.gap-8{gap:8px}.gap-12{gap:12px}.notif-page-header{align-items:center}.notif-title-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.notif-title-row h1{align-items:center;gap:8px;margin:0;display:flex}.notif-new-badge{color:#fff;background:#dc3545;border-radius:999px;align-items:center;padding:3px 10px;font-size:12px;font-weight:700;display:inline-flex}.notif-header-actions{flex-wrap:wrap;gap:8px;display:flex}.notif-btn-mark:disabled,.notif-btn-clear:disabled{opacity:.45;cursor:not-allowed}.notif-btn-clear{color:#c0392b;background:#fff;border:1px solid #e0a0a0;border-radius:8px;padding:8px 14px;font-weight:600}.notif-btn-clear:hover:not(:disabled){background:#fff5f5;border-color:#c0392b}.notif-clear-confirm{color:#842029;background:#fdecea;border:1px solid #f5c2c0;border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;padding:12px 14px;font-size:13px;font-weight:600;display:flex}.notif-clear-actions{gap:8px;display:flex}.notif-btn-clear-yes{color:#fff;background:#dc3545;border:none;border-radius:8px;font-weight:600}.notif-btn-clear-yes:hover{background:#bb2d3b}.notif-filters{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.notif-filter{color:var(--text-muted);border:1px solid var(--border);background:#fff;border-radius:999px;align-items:center;gap:6px;padding:7px 14px;font-size:13px;font-weight:600;transition:all .15s;display:inline-flex}.notif-filter-icon{font-size:11px;line-height:1}.notif-filter:hover{color:var(--primary-blue);border-color:#c8d7eb}.notif-filter.active{color:#fff;background:var(--primary-blue);border-color:var(--primary-blue)}.notif-summary-grid{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px;display:grid}.notif-summary-card{border:1px solid var(--border);background:#fff;border-left-width:4px;border-radius:10px;padding:12px 14px}.notif-summary-card.accent-blue{border-left-color:#3d7abf}.notif-summary-card.accent-purple{border-left-color:#7b6fd6}.notif-summary-card.accent-red{border-left-color:#dc3545}.notif-summary-label{color:var(--text-muted);margin-bottom:4px;font-size:12px;font-weight:600}.notif-summary-value{color:var(--text);font-size:28px;font-weight:700;line-height:1.1}.notif-list{flex-direction:column;gap:10px;display:flex}.notif-row{text-align:left;border:1px solid var(--border);cursor:pointer;background:#fff;border-radius:10px;align-items:flex-start;gap:14px;width:100%;padding:14px 16px;transition:background .15s,border-color .15s;display:flex}.notif-row.unread{background:#fffaf5;border-color:#f0b27a}.notif-row:hover{background:#f8fbff;border-color:#c8d7eb}.notif-row-icon{color:#495057;background:#f1f3f5;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:15px;font-weight:700;display:inline-flex}.notif-row-icon.tone-orange{color:#e97a2b;background:#fff1e6}.notif-row-icon.tone-green{color:#28a745;background:#e8f6ee}.notif-row-icon.tone-blue{color:#3d7abf;background:#eaf2fb}.notif-row-icon.tone-red{color:#dc3545;background:#fdecea}.notif-row-icon.tone-gray{color:#495057;background:#f1f3f5}.notif-row-body{flex:1;min-width:0}.notif-row-title{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:4px;display:flex}.notif-row-title strong{color:var(--text);font-size:14px}.notif-type-badge{border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-flex}.notif-type-badge.tone-purple{color:#6f42c1;background:#efeafc}.notif-type-badge.tone-orange{color:#e97a2b;background:#fff1e6}.notif-type-badge.tone-blue{color:#3d7abf;background:#eaf2fb}.notif-type-badge.tone-red{color:#dc3545;background:#fdecea}.notif-row-msg{color:var(--text-muted);font-size:13px}.notif-row-meta{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:8px;display:flex}.notif-row-time{color:var(--text-muted);white-space:nowrap;font-size:12px}.notif-unread-dot{background:#e97a2b;border-radius:50%;width:8px;height:8px}@media (width<=900px){.notif-summary-grid{grid-template-columns:repeat(2,1fr)}}.audit-list{flex-direction:column;gap:10px;display:flex}.audit-row{text-align:left;border:1px solid var(--border);cursor:pointer;background:#fff;border-radius:10px;align-items:flex-start;gap:14px;width:100%;padding:14px 16px;transition:background .15s,border-color .15s;display:flex}.audit-row:hover{background:#f8fbff;border-color:#c8d7eb}.audit-icon{background:#f3f5f8;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:16px;display:inline-flex}.audit-icon.tone-blue{background:#eef3fb}.audit-icon.tone-orange{background:#fff3e8}.audit-icon.tone-red{background:#fdeeee}.audit-icon.tone-green{background:#eef6ee}.audit-icon.tone-gray{background:#f3f5f8}.audit-body{flex:1;min-width:0}.audit-action{color:var(--text);margin-bottom:2px;font-size:14px;font-weight:700}.audit-details{color:var(--text-muted);font-size:13px;line-height:1.35}.audit-time{color:var(--text-muted);white-space:nowrap;flex-shrink:0;padding-top:2px;font-size:12px}@media (width<=640px){.audit-row{flex-wrap:wrap}.audit-time{width:100%;padding-top:0;padding-left:50px}}.error-boundary{text-align:center;padding:40px}.error-boundary h2{color:var(--danger);margin-bottom:12px}
