@charset "UTF-8";.page{max-width:1400px;margin:0 auto}.page.narrow{max-width:1200px}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px}.page-header .header-left{display:flex;align-items:flex-start;gap:12px}.page-header .back-btn{margin-top:4px;color:#64748b}.page-header .back-btn:hover{color:#1e293b}.page-header .breadcrumb{display:flex;align-items:center;gap:4px;margin-bottom:8px;font-size:13px;color:#94a3b8}.page-header .breadcrumb .breadcrumb-link{color:#3b82f6;text-decoration:none}.page-header .breadcrumb .breadcrumb-link:hover{text-decoration:underline}.page-header .breadcrumb mat-icon{font-size:16px;width:16px;height:16px}.page-header .page-title{font-size:26px;font-weight:700;color:#1e293b;margin:0 0 4px}.page-header .page-title.mono{font-family:monospace}.page-header .page-subtitle{font-size:14px;color:#64748b;margin:0}.page-header .page-subtitle.mono{font-family:monospace}.loading-container{display:flex;justify-content:center;padding:60px 0}.loading-container.small{padding:40px 0}.empty-state,.error-container{display:flex;flex-direction:column;align-items:center;padding:48px 24px;color:#94a3b8}.empty-state mat-icon,.error-container mat-icon{font-size:48px;width:48px;height:48px;margin-bottom:12px}.empty-state p,.error-container p{font-size:16px;font-weight:600;margin:0 0 4px;color:#64748b}.empty-state span,.error-container span{font-size:13px}.empty-state button,.error-container button{margin-top:12px}.notice{display:flex;align-items:flex-start;gap:10px;padding:12px 16px;margin-bottom:16px;border-radius:12px;background:#eff6ff;border:1px solid #bfdbfe;color:#1e40af;font-size:13px}.notice mat-icon{font-size:20px;width:20px;height:20px;flex-shrink:0;color:#3b82f6}.notice.inline{margin:0 0 12px}@media(max-width:768px){.page-header .page-title{font-size:22px}}.filter-card{border-radius:14px!important;margin-bottom:16px;padding:16px 20px 8px!important;border:1px solid #e2e8f0!important}.filters-row{display:flex;gap:12px;align-items:flex-start;flex-wrap:wrap}.filters-row .search-field{flex:1;min-width:180px}.filters-row .select-field{min-width:160px}.filters-row .date-range-field{min-width:230px;flex:1}.filters-row .small-field{min-width:110px;max-width:140px}.filters-row .apply-btn{height:56px;border-radius:10px!important;background:linear-gradient(135deg,#3b82f6,#2563eb)!important;color:#fff!important;font-weight:600;border:none!important}.filters-row .toggle-filters-btn{height:56px;width:56px;color:#64748b}.filters-row .clear-btn{height:56px;border-radius:10px;color:#64748b}.filters-row .check-field{align-self:center;margin-bottom:20px}.advanced-filters{padding-top:4px;animation:slideDown .2s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.active-filters{display:flex;flex-wrap:wrap;gap:6px;padding-bottom:8px}.filter-chip{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:8px;font-size:11px;font-weight:500;background:#f1f5f9;color:#475569}.filter-chip mat-icon{font-size:14px;width:14px;height:14px}.filter-chip.date{background:#eff6ff;color:#2563eb}.filter-chip.red{background:#fef2f2;color:#dc2626}.filter-chip.amber{background:#fef3c7;color:#b45309}.filter-chip.purple{background:#fdf4ff;color:#c026d3}.option-count{font-size:11px;color:#64748b;margin-left:6px}@media(max-width:768px){.filters-row{flex-direction:column}.filters-row .search-field,.filters-row .select-field,.filters-row .date-range-field,.filters-row .small-field{width:100%;min-width:auto;max-width:none}.filters-row .apply-btn,.filters-row .clear-btn{width:100%;height:44px}}.results-info{display:flex;align-items:center;justify-content:space-between;font-size:13px;color:#64748b;margin-bottom:12px}.results-info .results-actions{display:flex;align-items:center;gap:8px}.export-btn{display:flex;align-items:center;gap:6px;border-radius:8px!important;font-size:12px;font-weight:600;color:#059669!important;border-color:#059669!important;height:34px;padding:0 14px!important}.export-btn mat-icon{font-size:16px;width:16px;height:16px}.export-btn:hover:not([disabled]){background:#ecfdf5!important}.export-btn[disabled]{opacity:.5}.table-card{border-radius:14px!important;overflow:hidden;border:1px solid #e2e8f0!important}.table-responsive{overflow-x:auto}.data-table{width:100%}.data-table th{font-weight:600;color:#475569;font-size:12px;background:#f8fafc;white-space:nowrap}.data-table td{font-size:13px;color:#334155}.data-table.nowrap td{white-space:nowrap}.data-table .num{text-align:right;font-variant-numeric:tabular-nums}.clickable-row{cursor:pointer;transition:background .15s ease}.clickable-row:hover td{background:#f0f9ff!important}.paginator-wrapper{display:flex;align-items:center;border-top:1px solid #f1f5f9}.paginator-wrapper mat-paginator{flex:1;border-top:none}.page-size-control{display:flex;align-items:center;gap:10px;padding:0 16px;flex-shrink:0;border-right:1px solid #f1f5f9;height:56px}.page-size-control .page-size-label{font-size:12px;color:#64748b;white-space:nowrap}.page-size-control .page-size-select{width:80px;font-size:13px;font-weight:600;color:#1e293b}.totals-bar{display:flex;flex-wrap:wrap;gap:24px;padding:12px 16px;border-bottom:1px solid #f1f5f9;font-size:13px;color:#64748b}.totals-bar strong{color:#1e293b;font-variant-numeric:tabular-nums}.entry-no{font-weight:600;color:#1e293b;font-family:monospace;font-size:12px}.cust-ref{font-family:monospace;font-size:12px;color:#475569}.broker-name{font-weight:500;color:#1e293b;font-size:13px}.code-badge{display:inline-flex;margin-left:6px;padding:1px 5px;border-radius:4px;background:#f1f5f9;color:#64748b;font-size:10px;font-family:monospace;font-weight:600}.no-status{color:#cbd5e1}.elapsed-pending{font-style:italic;color:#b45309}.duty-lines-header{color:#dc2626!important}.duty-lines-cell{text-align:center}.duty-lines-badge{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:24px;padding:0 8px;border-radius:6px;font-size:12px;font-weight:700;font-family:monospace;background:#fef2f2;color:#dc2626}.badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:6px;font-size:11px;font-weight:600;white-space:nowrap;background:#f1f5f9;color:#64748b}.badge mat-icon{font-size:14px;width:14px;height:14px}.badge.green{background:#ecfdf5;color:#059669}.badge.red{background:#fef2f2;color:#dc2626}.badge.amber{background:#fef3c7;color:#b45309}.badge.blue{background:#eff6ff;color:#2563eb}.badge.indigo{background:#eef2ff;color:#4338ca}.badge.purple{background:#fdf4ff;color:#c026d3}.badge.grey{background:#f8fafc;color:#94a3b8}.badge.mono{font-family:monospace}.detail-tabs .tab-icon{margin-right:6px;font-size:18px;width:18px;height:18px}.tab-content{padding:24px 0}.detail-card{border-radius:14px!important;padding:20px 24px!important;margin-bottom:16px;border:1px solid #e2e8f0!important}.section-title{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:#475569;margin:0 0 16px;text-transform:uppercase;letter-spacing:.3px}.section-title mat-icon{font-size:18px;width:18px;height:18px;color:#3b82f6}.detail-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}.detail-item.full-width{grid-column:1/-1}.detail-item .detail-label{display:block;font-size:11px;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.3px;margin-bottom:4px}.detail-item .detail-value{font-size:14px;color:#1e293b;font-weight:500}.detail-item .detail-value.mono{font-family:monospace;font-size:13px}.detail-item .detail-value.empty{color:#cbd5e1;font-weight:400}.detail-item .detail-note{display:block;font-size:11px;color:#94a3b8;margin-top:2px}.status-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}.status-card{padding:12px;border-radius:10px;background:#f8fafc;border:1px solid #e2e8f0;text-align:center}.status-card.active{border-color:#3b82f6;background:#eff6ff}.status-card.green{border-color:#10b981;background:#ecfdf5}.status-card.red{border-color:#ef4444;background:#fef2f2}.status-card .status-label{display:block;font-size:10px;font-weight:700;color:#94a3b8;text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}.status-card .status-code{display:block;font-size:18px;font-weight:700;color:#1e293b;font-family:monospace}.status-card .status-desc{display:block;font-size:11px;color:#64748b;margin-top:2px}.status-card .status-date{display:block;font-size:10px;color:#94a3b8;margin-top:4px}.status-card .status-none{font-size:14px;color:#cbd5e1;font-weight:600}.history-timeline{padding:8px 0}.timeline-item{display:flex;gap:16px;position:relative;padding-bottom:20px}.timeline-item:not(:last-child):before{content:"";position:absolute;left:7px;top:18px;bottom:0;width:2px;background:#e2e8f0}.timeline-item.first .timeline-content{background:#eff6ff;border-color:#bfdbfe}.timeline-dot{width:16px;height:16px;border-radius:50%;background:#e2e8f0;border:3px solid white;box-shadow:0 0 0 2px #e2e8f0;flex-shrink:0;margin-top:2px}.timeline-dot.first{background:#3b82f6;box-shadow:0 0 0 2px #3b82f6}.timeline-content{flex:1;padding:14px 18px;border-radius:12px;background:#f8fafc;border:1px solid #e2e8f0}.timeline-header{display:flex;align-items:center;gap:8px;margin-bottom:10px;flex-wrap:wrap}.timeline-header .timeline-date{font-size:13px;font-weight:600;color:#1e293b}.timeline-header .current-badge{font-size:10px;padding:2px 8px;border-radius:10px;background:#3b82f6;color:#fff;font-weight:600}.timeline-header .timeline-id{font-size:11px;color:#94a3b8;font-family:monospace;margin-left:auto}.timeline-details{display:flex;flex-wrap:wrap;gap:6px}.timeline-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:6px;background:#f1f5f9;font-size:11px}.timeline-chip .chip-label{font-weight:700;color:#94a3b8;font-size:10px;text-transform:uppercase}.timeline-chip .chip-value{font-weight:600;color:#334155;font-size:11px}.timeline-chip.green{background:#ecfdf5}.timeline-chip.green .chip-label{color:#059669}.timeline-chip.green .chip-value{color:#065f46}.timeline-chip.red{background:#fef2f2}.timeline-chip.red .chip-label{color:#dc2626}.timeline-chip.red .chip-value{color:#991b1b}.call-list{display:flex;flex-direction:column;gap:10px}.call-card{border-radius:12px!important;padding:14px 18px!important;border:1px solid #e2e8f0!important;transition:border-color .15s}.call-card:hover{border-color:#cbd5e1!important}.call-header{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer}.call-header-left,.call-header-right{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.call-header-right{flex-shrink:0}.call-meta{font-size:12px;color:#64748b;font-family:monospace;white-space:nowrap}.call-date{font-size:12px;color:#94a3b8;white-space:nowrap}.call-route{margin-top:6px;font-size:12px;font-family:monospace;color:#64748b}.expand-icon{font-size:20px;width:20px;height:20px;color:#94a3b8;transition:transform .2s}.expand-icon.expanded{transform:rotate(180deg)}.call-body-container{margin-top:12px;border-radius:8px;border:1px solid #e2e8f0;overflow:hidden}.call-body-header{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:#f1f5f9;border-bottom:1px solid #e2e8f0;font-size:11px;font-weight:600;color:#475569;text-transform:uppercase;letter-spacing:.3px}.call-body{margin:0;padding:12px;background:#f8fafc;font-size:12px;font-family:SF Mono,Fira Code,Cascadia Code,monospace;color:#334155;white-space:pre-wrap;word-break:break-word;max-height:480px;overflow-y:auto;line-height:1.6}@media(max-width:768px){.detail-grid{grid-template-columns:1fr}.status-grid{grid-template-columns:repeat(2,1fr)}}.dashboard-page .filters-row .date-field-toggle-wrapper{display:flex;align-items:center;align-self:center;margin-bottom:20px}.dashboard-page .filters-row .date-field-toggle{border-radius:10px!important;border:1px solid #e2e8f0!important;overflow:hidden}.dashboard-page .filters-row .date-field-toggle mat-button-toggle{font-size:12px;font-weight:500}.dashboard-page a.summary-card,.dashboard-page a.stat-item{color:inherit;text-decoration:none}.dashboard-page .summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:32px}.dashboard-page .summary-card{display:flex;align-items:center;gap:16px;padding:20px;border-radius:16px;background:#fff;border:1px solid #e2e8f0;transition:all .2s ease}.dashboard-page .summary-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000000f}.dashboard-page .summary-card.clickable{cursor:pointer}.dashboard-page .summary-card.clickable .card-arrow{opacity:0;transition:all .15s ease;color:#cbd5e1;font-size:20px;width:20px;height:20px;flex-shrink:0}.dashboard-page .summary-card.clickable:hover .card-arrow{opacity:1;transform:translate(2px)}.dashboard-page .summary-card .summary-info{flex:1;min-width:0}.dashboard-page .summary-card .summary-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.dashboard-page .summary-card .summary-icon mat-icon{font-size:24px;width:24px;height:24px}.dashboard-page .summary-card .summary-info{display:flex;flex-direction:column}.dashboard-page .summary-card .summary-info .summary-value{font-size:24px;font-weight:700;color:#1e293b}.dashboard-page .summary-card .summary-info .summary-label{font-size:12px;color:#64748b;white-space:nowrap}.dashboard-page .summary-card.summary-entries .summary-icon{background:#eff6ff}.dashboard-page .summary-card.summary-entries .summary-icon mat-icon{color:#3b82f6}.dashboard-page .summary-card.summary-duties .summary-icon{background:#f0fdf4}.dashboard-page .summary-card.summary-duties .summary-icon mat-icon{color:#22c55e}.dashboard-page .summary-card.summary-no-entry .summary-icon{background:#fffbeb}.dashboard-page .summary-card.summary-no-entry .summary-icon mat-icon{color:#f59e0b}.dashboard-page .summary-card.summary-no-duty .summary-icon{background:#fef2f2}.dashboard-page .summary-card.summary-no-duty .summary-icon mat-icon{color:#ef4444}.dashboard-page .summary-card.summary-with-duty .summary-icon{background:#ecfdf5}.dashboard-page .summary-card.summary-with-duty .summary-icon mat-icon{color:#059669}.dashboard-page .summary-card.summary-percent .summary-icon{background:#f5f3ff}.dashboard-page .summary-card.summary-percent .summary-icon mat-icon{color:#7c3aed}.dashboard-page .summary-card.summary-synced .summary-icon{background:#ecfdf5}.dashboard-page .summary-card.summary-synced .summary-icon mat-icon{color:#059669}.dashboard-page .summary-card.summary-failed .summary-icon{background:#fef2f2}.dashboard-page .summary-card.summary-failed .summary-icon mat-icon{color:#dc2626}.dashboard-page .summary-card.summary-not-synced .summary-icon{background:#f8fafc}.dashboard-page .summary-card.summary-not-synced .summary-icon mat-icon{color:#94a3b8}.dashboard-page .summary-card.summary-rotations .summary-icon{background:#eef2ff}.dashboard-page .summary-card.summary-rotations .summary-icon mat-icon{color:#6366f1}.dashboard-page .summary-card.summary-rotations-no-entry .summary-icon{background:#fff7ed}.dashboard-page .summary-card.summary-rotations-no-entry .summary-icon mat-icon{color:#ea580c}.dashboard-page .summary-card.summary-date-mismatch .summary-icon{background:#fdf4ff}.dashboard-page .summary-card.summary-date-mismatch .summary-icon mat-icon{color:#c026d3}.dashboard-page .section-title{font-size:18px;font-weight:600;color:#1e293b;margin:0 0 16px}.dashboard-page .broker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(480px,1fr));gap:20px}.dashboard-page .broker-card{border-radius:16px!important;overflow:hidden;transition:all .2s ease;border:1px solid #e2e8f0!important}.dashboard-page .broker-card:hover{box-shadow:0 8px 24px #00000014!important;transform:translateY(-2px)}.dashboard-page .broker-header{display:flex;align-items:center;gap:14px;padding:20px 20px 16px}.dashboard-page .broker-header .broker-avatar{width:44px;height:44px;border-radius:12px;background:linear-gradient(135deg,#3b82f6,#8b5cf6);color:#fff;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;flex-shrink:0}.dashboard-page .broker-header .broker-info{display:flex;flex-direction:column}.dashboard-page .broker-header .broker-info .broker-name{font-size:16px;font-weight:600;color:#1e293b;margin:0}.dashboard-page .broker-header .broker-info .broker-code{font-size:12px;color:#94a3b8;font-family:monospace}.dashboard-page .broker-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#f1f5f9;border-top:1px solid #f1f5f9}.dashboard-page .stat-item{display:flex;align-items:center;gap:10px;padding:14px 16px;background:#fff;cursor:pointer;transition:all .15s ease}.dashboard-page .stat-item:hover{background:#f8fafc}.dashboard-page .stat-item:hover .stat-arrow{opacity:1;transform:translate(2px)}.dashboard-page .stat-item .stat-icon-wrapper{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.dashboard-page .stat-item .stat-icon-wrapper mat-icon{font-size:16px;width:16px;height:16px}.dashboard-page .stat-item .stat-icon-wrapper.entries-bg{background:#eff6ff}.dashboard-page .stat-item .stat-icon-wrapper.entries-bg mat-icon{color:#3b82f6}.dashboard-page .stat-item .stat-icon-wrapper.duties-bg{background:#f0fdf4}.dashboard-page .stat-item .stat-icon-wrapper.duties-bg mat-icon{color:#22c55e}.dashboard-page .stat-item .stat-icon-wrapper.warning-bg{background:#fffbeb}.dashboard-page .stat-item .stat-icon-wrapper.warning-bg mat-icon{color:#f59e0b}.dashboard-page .stat-item .stat-icon-wrapper.danger-bg{background:#fef2f2}.dashboard-page .stat-item .stat-icon-wrapper.danger-bg mat-icon{color:#ef4444}.dashboard-page .stat-item .stat-icon-wrapper.success-bg{background:#ecfdf5}.dashboard-page .stat-item .stat-icon-wrapper.success-bg mat-icon{color:#059669}.dashboard-page .stat-item .stat-icon-wrapper.percent-bg{background:#f5f3ff}.dashboard-page .stat-item .stat-icon-wrapper.percent-bg mat-icon{color:#7c3aed}.dashboard-page .stat-item .stat-icon-wrapper.synced-bg{background:#ecfdf5}.dashboard-page .stat-item .stat-icon-wrapper.synced-bg mat-icon{color:#059669}.dashboard-page .stat-item .stat-icon-wrapper.failed-bg{background:#fef2f2}.dashboard-page .stat-item .stat-icon-wrapper.failed-bg mat-icon{color:#dc2626}.dashboard-page .stat-item .stat-icon-wrapper.not-synced-bg{background:#f8fafc}.dashboard-page .stat-item .stat-icon-wrapper.not-synced-bg mat-icon{color:#94a3b8}.dashboard-page .stat-item .stat-icon-wrapper.rotations-bg{background:#eef2ff}.dashboard-page .stat-item .stat-icon-wrapper.rotations-bg mat-icon{color:#6366f1}.dashboard-page .stat-item .stat-icon-wrapper.rotations-no-entry-bg{background:#fff7ed}.dashboard-page .stat-item .stat-icon-wrapper.rotations-no-entry-bg mat-icon{color:#ea580c}.dashboard-page .stat-item .stat-icon-wrapper.date-mismatch-bg{background:#fdf4ff}.dashboard-page .stat-item .stat-icon-wrapper.date-mismatch-bg mat-icon{color:#c026d3}.dashboard-page .stat-item .stat-details{display:flex;flex-direction:column;flex:1;min-width:0}.dashboard-page .stat-item .stat-details .stat-value{font-size:18px;font-weight:700;color:#1e293b}.dashboard-page .stat-item .stat-details .stat-label{font-size:11px;color:#94a3b8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-page .stat-item .stat-arrow{font-size:18px;width:18px;height:18px;color:#cbd5e1;opacity:0;transition:all .15s ease}@media(max-width:1024px){.dashboard-page .summary-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.dashboard-page .broker-stats{grid-template-columns:repeat(2,1fr)}.dashboard-page .summary-grid{grid-template-columns:repeat(2,1fr);gap:12px}.dashboard-page .summary-card{padding:16px}.dashboard-page .summary-card .summary-info .summary-value{font-size:20px}.dashboard-page .broker-grid{grid-template-columns:1fr}.dashboard-page .page-header .page-title{font-size:22px}}@media(max-width:480px){.dashboard-page .summary-grid{grid-template-columns:1fr}.dashboard-page .filters-row .date-field{max-width:none}.dashboard-page .filters-row .apply-btn{width:100%;height:44px}}.dashboard-page .funnel-section-title{display:flex;align-items:center;gap:8px;margin-top:12px}.dashboard-page .funnel-section-title mat-icon{color:#6366f1;font-size:22px;width:22px;height:22px}.dashboard-page .funnel-card{border-radius:16px!important;border:1px solid #e2e8f0!important;padding:24px!important;background:linear-gradient(180deg,#fafbff,#fff);margin-bottom:28px}.dashboard-page .funnel-a-row{display:flex;align-items:stretch;gap:8px;flex-wrap:nowrap}.dashboard-page .funnel-a-stage{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;padding:18px 12px;border-radius:14px;background:#fff;border:1px solid #e2e8f0;border-top:4px solid var(--stage-color, #6366f1);box-shadow:0 1px 3px #0000000a;text-align:center;min-width:0;transition:transform .15s ease,box-shadow .15s ease}.dashboard-page .funnel-a-stage:hover{transform:translateY(-2px);box-shadow:0 6px 14px #00000014}.dashboard-page .funnel-a-stage .funnel-a-icon{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--stage-color) 12%,white)}.dashboard-page .funnel-a-stage .funnel-a-icon mat-icon{font-size:20px;width:20px;height:20px;color:var(--stage-color)}.dashboard-page .funnel-a-stage .funnel-a-percent{font-size:26px;font-weight:800;color:var(--stage-color);line-height:1.1}.dashboard-page .funnel-a-stage .funnel-a-label{font-size:12px;font-weight:600;color:#334155;line-height:1.3;word-break:break-word;hyphens:auto}.dashboard-page .funnel-a-stage .funnel-a-ratio{font-size:11px;color:#94a3b8;font-family:ui-monospace,monospace}.dashboard-page .funnel-a-arrow{display:flex;align-items:center;color:#cbd5e1}.dashboard-page .funnel-a-arrow mat-icon{font-size:28px;width:28px;height:28px}.dashboard-page .funnel-a-row-compact{gap:4px}.dashboard-page .funnel-a-row-compact .funnel-a-stage{padding:10px 6px;gap:4px;border-top-width:3px}.dashboard-page .funnel-a-row-compact .funnel-a-stage .funnel-a-icon{width:26px;height:26px;border-radius:7px}.dashboard-page .funnel-a-row-compact .funnel-a-stage .funnel-a-icon mat-icon{font-size:15px;width:15px;height:15px}.dashboard-page .funnel-a-row-compact .funnel-a-stage .funnel-a-percent{font-size:16px}.dashboard-page .funnel-a-row-compact .funnel-a-stage .funnel-a-label{font-size:11px;line-height:1.25}.dashboard-page .funnel-a-row-compact .funnel-a-arrow mat-icon{font-size:18px;width:18px;height:18px}.dashboard-page .broker-funnel{padding:14px 16px 18px;border-top:1px solid #f1f5f9;background:#fafbff}@media(max-width:1024px){.dashboard-page .funnel-a-row{flex-wrap:wrap}.dashboard-page .funnel-a-stage{flex:1 1 calc(50% - 12px);min-width:140px}}@media(max-width:640px){.dashboard-page .funnel-a-arrow{display:none}.dashboard-page .funnel-a-stage{flex:1 1 100%}}.dashboard-page .summary-card.no-data,.dashboard-page .stat-item.no-data,.dashboard-page .funnel-a-stage.no-data{opacity:.55;cursor:default}.dashboard-page .summary-card.no-data:hover,.dashboard-page .stat-item.no-data:hover,.dashboard-page .funnel-a-stage.no-data:hover{transform:none;box-shadow:none}.dashboard-page .summary-card .summary-info .summary-note{font-size:11px;color:#94a3b8}.dashboard-page .stat-item:not(.clickable){cursor:default}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;background:linear-gradient(135deg,#0f172a,#1e293b,#0f172a)}.login-bg{position:absolute;inset:0;overflow:hidden}.login-bg .bg-shape{position:absolute;border-radius:50%;opacity:.07;animation:float 20s ease-in-out infinite}.login-bg .bg-shape-1{width:600px;height:600px;background:#3b82f6;top:-200px;right:-100px;animation-delay:0s}.login-bg .bg-shape-2{width:400px;height:400px;background:#8b5cf6;bottom:-150px;left:-100px;animation-delay:-7s}.login-bg .bg-shape-3{width:300px;height:300px;background:#06b6d4;top:50%;left:50%;transform:translate(-50%,-50%);animation-delay:-14s}@keyframes float{0%,to{transform:translateY(0) rotate(0)}33%{transform:translateY(-30px) rotate(5deg)}66%{transform:translateY(20px) rotate(-3deg)}}.login-card-wrapper{position:relative;z-index:1;width:100%;max-width:420px;padding:24px}.brand-section{text-align:center;margin-bottom:32px}.brand-section .brand-icon{width:80px;height:80px;border-radius:20px;display:flex;align-items:center;justify-content:center;margin:0 auto 16px;overflow:hidden}.brand-section .brand-icon .brand-logo-img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 4px 16px rgba(59,130,246,.3))}.brand-section .brand-title{font-size:28px;font-weight:700;color:#fff;margin:0 0 4px;letter-spacing:-.5px}.brand-section .brand-subtitle{font-size:14px;color:#fff9;margin:0}.login-card{border-radius:20px!important;background:#fffffff2!important;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 20px 60px #0000004d!important;border:1px solid rgba(255,255,255,.2)!important}.login-card mat-card-content{padding:32px!important}.login-title{font-size:22px;font-weight:600;color:#1e293b;margin:0 0 4px}.login-subtitle{font-size:14px;color:#64748b;margin:0 0 24px}.error-banner{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;margin-bottom:20px;color:#dc2626;font-size:13px}.error-banner mat-icon{font-size:18px;width:18px;height:18px}.success-banner{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:10px;margin-bottom:20px;color:#16a34a;font-size:13px}.success-banner mat-icon{font-size:18px;width:18px;height:18px;flex-shrink:0}.login-form{display:flex;flex-direction:column;gap:4px}.login-form .full-width{width:100%}.login-btn{width:100%;height:48px;border-radius:12px!important;font-size:15px!important;font-weight:600!important;letter-spacing:.3px;background:linear-gradient(135deg,#3b82f6,#2563eb)!important;color:#fff!important;margin-top:8px;transition:all .2s ease}.login-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 16px #2563eb66}.login-btn:disabled{opacity:.7}.login-btn mat-spinner{margin:0 auto}@media(max-width:480px){.login-card-wrapper{padding:16px}.login-card mat-card-content{padding:24px!important}.brand-section .brand-icon{width:64px;height:64px}}.login-help{margin:16px 0 0;text-align:center;font-size:13px;color:#64748b}.account-line{display:flex;align-items:center;gap:8px;padding:10px 14px;margin-bottom:20px;border-radius:10px;background:#f1f5f9;color:#334155;font-size:13px}.account-line mat-icon{font-size:18px;width:18px;height:18px;color:#64748b}.password-hint{margin:-4px 0 8px;font-size:12px;color:#64748b}html{--mat-sys-background: light-dark(#faf9fd, #121316);--mat-sys-error: light-dark(#ba1a1a, #ffb4ab);--mat-sys-error-container: light-dark(#ffdad6, #93000a);--mat-sys-inverse-on-surface: light-dark(#f2f0f4, #2f3033);--mat-sys-inverse-primary: light-dark(#abc7ff, #005cbb);--mat-sys-inverse-surface: light-dark(#2f3033, #e3e2e6);--mat-sys-on-background: light-dark(#1a1b1f, #e3e2e6);--mat-sys-on-error: light-dark(#ffffff, #690005);--mat-sys-on-error-container: light-dark(#93000a, #ffdad6);--mat-sys-on-primary: light-dark(#ffffff, #002f65);--mat-sys-on-primary-container: light-dark(#00458f, #d7e3ff);--mat-sys-on-primary-fixed: light-dark(#001b3f, #001b3f);--mat-sys-on-primary-fixed-variant: light-dark(#00458f, #00458f);--mat-sys-on-secondary: light-dark(#ffffff, #283041);--mat-sys-on-secondary-container: light-dark(#3e4759, #dae2f9);--mat-sys-on-secondary-fixed: light-dark(#131c2b, #131c2b);--mat-sys-on-secondary-fixed-variant: light-dark(#3e4759, #3e4759);--mat-sys-on-surface: light-dark(#1a1b1f, #e3e2e6);--mat-sys-on-surface-variant: light-dark(#44474e, #e0e2ec);--mat-sys-on-tertiary: light-dark(#ffffff, #0001ac);--mat-sys-on-tertiary-container: light-dark(#0000ef, #e0e0ff);--mat-sys-on-tertiary-fixed: light-dark(#00006e, #00006e);--mat-sys-on-tertiary-fixed-variant: light-dark(#0000ef, #0000ef);--mat-sys-outline: light-dark(#74777f, #8e9099);--mat-sys-outline-variant: light-dark(#c4c6d0, #44474e);--mat-sys-primary: light-dark(#005cbb, #abc7ff);--mat-sys-primary-container: light-dark(#d7e3ff, #00458f);--mat-sys-primary-fixed: light-dark(#d7e3ff, #d7e3ff);--mat-sys-primary-fixed-dim: light-dark(#abc7ff, #abc7ff);--mat-sys-scrim: light-dark(#000000, #000000);--mat-sys-secondary: light-dark(#565e71, #bec6dc);--mat-sys-secondary-container: light-dark(#dae2f9, #3e4759);--mat-sys-secondary-fixed: light-dark(#dae2f9, #dae2f9);--mat-sys-secondary-fixed-dim: light-dark(#bec6dc, #bec6dc);--mat-sys-shadow: light-dark(#000000, #000000);--mat-sys-surface: light-dark(#faf9fd, #121316);--mat-sys-surface-bright: light-dark(#faf9fd, #38393c);--mat-sys-surface-container: light-dark(#efedf0, #1f2022);--mat-sys-surface-container-high: light-dark(#e9e7eb, #292a2c);--mat-sys-surface-container-highest: light-dark(#e3e2e6, #343537);--mat-sys-surface-container-low: light-dark(#f4f3f6, #1a1b1f);--mat-sys-surface-container-lowest: light-dark(#ffffff, #0d0e11);--mat-sys-surface-dim: light-dark(#dbd9dd, #121316);--mat-sys-surface-tint: light-dark(#005cbb, #abc7ff);--mat-sys-surface-variant: light-dark(#e0e2ec, #44474e);--mat-sys-tertiary: light-dark(#343dff, #bec2ff);--mat-sys-tertiary-container: light-dark(#e0e0ff, #0000ef);--mat-sys-tertiary-fixed: light-dark(#e0e0ff, #e0e0ff);--mat-sys-tertiary-fixed-dim: light-dark(#bec2ff, #bec2ff);--mat-sys-neutral-variant20: #2d3038;--mat-sys-neutral10: #1a1b1f;--mat-sys-level0: 0px 0px 0px 0px rgba(0, 0, 0, .2), 0px 0px 0px 0px rgba(0, 0, 0, .14), 0px 0px 0px 0px rgba(0, 0, 0, .12);--mat-sys-level1: 0px 2px 1px -1px rgba(0, 0, 0, .2), 0px 1px 1px 0px rgba(0, 0, 0, .14), 0px 1px 3px 0px rgba(0, 0, 0, .12);--mat-sys-level2: 0px 3px 3px -2px rgba(0, 0, 0, .2), 0px 3px 4px 0px rgba(0, 0, 0, .14), 0px 1px 8px 0px rgba(0, 0, 0, .12);--mat-sys-level3: 0px 3px 5px -1px rgba(0, 0, 0, .2), 0px 6px 10px 0px rgba(0, 0, 0, .14), 0px 1px 18px 0px rgba(0, 0, 0, .12);--mat-sys-level4: 0px 5px 5px -3px rgba(0, 0, 0, .2), 0px 8px 10px 1px rgba(0, 0, 0, .14), 0px 3px 14px 2px rgba(0, 0, 0, .12);--mat-sys-level5: 0px 7px 8px -4px rgba(0, 0, 0, .2), 0px 12px 17px 2px rgba(0, 0, 0, .14), 0px 5px 22px 4px rgba(0, 0, 0, .12);--mat-sys-body-large: 400 1rem / 1.5rem Roboto;--mat-sys-body-large-font: Roboto;--mat-sys-body-large-line-height: 1.5rem;--mat-sys-body-large-size: 1rem;--mat-sys-body-large-tracking: .031rem;--mat-sys-body-large-weight: 400;--mat-sys-body-medium: 400 .875rem / 1.25rem Roboto;--mat-sys-body-medium-font: Roboto;--mat-sys-body-medium-line-height: 1.25rem;--mat-sys-body-medium-size: .875rem;--mat-sys-body-medium-tracking: .016rem;--mat-sys-body-medium-weight: 400;--mat-sys-body-small: 400 .75rem / 1rem Roboto;--mat-sys-body-small-font: Roboto;--mat-sys-body-small-line-height: 1rem;--mat-sys-body-small-size: .75rem;--mat-sys-body-small-tracking: .025rem;--mat-sys-body-small-weight: 400;--mat-sys-display-large: 400 3.562rem / 4rem Roboto;--mat-sys-display-large-font: Roboto;--mat-sys-display-large-line-height: 4rem;--mat-sys-display-large-size: 3.562rem;--mat-sys-display-large-tracking: -.016rem;--mat-sys-display-large-weight: 400;--mat-sys-display-medium: 400 2.812rem / 3.25rem Roboto;--mat-sys-display-medium-font: Roboto;--mat-sys-display-medium-line-height: 3.25rem;--mat-sys-display-medium-size: 2.812rem;--mat-sys-display-medium-tracking: 0;--mat-sys-display-medium-weight: 400;--mat-sys-display-small: 400 2.25rem / 2.75rem Roboto;--mat-sys-display-small-font: Roboto;--mat-sys-display-small-line-height: 2.75rem;--mat-sys-display-small-size: 2.25rem;--mat-sys-display-small-tracking: 0;--mat-sys-display-small-weight: 400;--mat-sys-headline-large: 400 2rem / 2.5rem Roboto;--mat-sys-headline-large-font: Roboto;--mat-sys-headline-large-line-height: 2.5rem;--mat-sys-headline-large-size: 2rem;--mat-sys-headline-large-tracking: 0;--mat-sys-headline-large-weight: 400;--mat-sys-headline-medium: 400 1.75rem / 2.25rem Roboto;--mat-sys-headline-medium-font: Roboto;--mat-sys-headline-medium-line-height: 2.25rem;--mat-sys-headline-medium-size: 1.75rem;--mat-sys-headline-medium-tracking: 0;--mat-sys-headline-medium-weight: 400;--mat-sys-headline-small: 400 1.5rem / 2rem Roboto;--mat-sys-headline-small-font: Roboto;--mat-sys-headline-small-line-height: 2rem;--mat-sys-headline-small-size: 1.5rem;--mat-sys-headline-small-tracking: 0;--mat-sys-headline-small-weight: 400;--mat-sys-label-large: 500 .875rem / 1.25rem Roboto;--mat-sys-label-large-font: Roboto;--mat-sys-label-large-line-height: 1.25rem;--mat-sys-label-large-size: .875rem;--mat-sys-label-large-tracking: .006rem;--mat-sys-label-large-weight: 500;--mat-sys-label-large-weight-prominent: 700;--mat-sys-label-medium: 500 .75rem / 1rem Roboto;--mat-sys-label-medium-font: Roboto;--mat-sys-label-medium-line-height: 1rem;--mat-sys-label-medium-size: .75rem;--mat-sys-label-medium-tracking: .031rem;--mat-sys-label-medium-weight: 500;--mat-sys-label-medium-weight-prominent: 700;--mat-sys-label-small: 500 .688rem / 1rem Roboto;--mat-sys-label-small-font: Roboto;--mat-sys-label-small-line-height: 1rem;--mat-sys-label-small-size: .688rem;--mat-sys-label-small-tracking: .031rem;--mat-sys-label-small-weight: 500;--mat-sys-title-large: 400 1.375rem / 1.75rem Roboto;--mat-sys-title-large-font: Roboto;--mat-sys-title-large-line-height: 1.75rem;--mat-sys-title-large-size: 1.375rem;--mat-sys-title-large-tracking: 0;--mat-sys-title-large-weight: 400;--mat-sys-title-medium: 500 1rem / 1.5rem Roboto;--mat-sys-title-medium-font: Roboto;--mat-sys-title-medium-line-height: 1.5rem;--mat-sys-title-medium-size: 1rem;--mat-sys-title-medium-tracking: .009rem;--mat-sys-title-medium-weight: 500;--mat-sys-title-small: 500 .875rem / 1.25rem Roboto;--mat-sys-title-small-font: Roboto;--mat-sys-title-small-line-height: 1.25rem;--mat-sys-title-small-size: .875rem;--mat-sys-title-small-tracking: .006rem;--mat-sys-title-small-weight: 500;--mat-sys-corner-extra-large: 28px;--mat-sys-corner-extra-large-top: 28px 28px 0 0;--mat-sys-corner-extra-small: 4px;--mat-sys-corner-extra-small-top: 4px 4px 0 0;--mat-sys-corner-full: 9999px;--mat-sys-corner-large: 16px;--mat-sys-corner-large-end: 0 16px 16px 0;--mat-sys-corner-large-start: 16px 0 0 16px;--mat-sys-corner-large-top: 16px 16px 0 0;--mat-sys-corner-medium: 12px;--mat-sys-corner-none: 0;--mat-sys-corner-small: 8px;--mat-sys-dragged-state-layer-opacity: .16;--mat-sys-focus-state-layer-opacity: .12;--mat-sys-hover-state-layer-opacity: .08;--mat-sys-pressed-state-layer-opacity: .12}*{box-sizing:border-box}html,body{height:100%;margin:0;padding:0}body{color-scheme:light;background-color:#f1f5f9;color:#1e293b;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}.mat-mdc-card{box-shadow:none!important}.mat-mdc-table .mat-mdc-header-row,.mat-mdc-table .mat-mdc-row:hover{background:#f8fafc}.mat-mdc-form-field .mdc-text-field--outlined{border-radius:10px!important}.mat-mdc-paginator{background:transparent!important;border-top:1px solid #f1f5f9}.mat-mdc-tab-header{border-bottom:1px solid #e2e8f0}::selection{background:#3b82f633;color:#1e293b}a{color:#3b82f6;text-decoration:none}a:hover{text-decoration:underline}.snackbar-error{--mat-snack-bar-container-color: #dc2626;--mat-snack-bar-supporting-text-color: white;--mat-snack-bar-button-color: white}
